Update GStreamer
authorThibault Saunier <tsaunier@igalia.com>
Wed, 17 Jun 2020 18:36:28 +0000 (14:36 -0400)
committerThibault Saunier <tsaunier@igalia.com>
Thu, 18 Jun 2020 01:16:40 +0000 (21:16 -0400)
106 files changed:
girs/Gst-1.0.gir
girs/GstApp-1.0.gir
girs/GstAudio-1.0.gir
girs/GstBase-1.0.gir
girs/GstController-1.0.gir
girs/GstNet-1.0.gir
girs/GstPbutils-1.0.gir
girs/GstRtp-1.0.gir
girs/GstRtsp-1.0.gir
girs/GstSdp-1.0.gir
girs/GstTag-1.0.gir
girs/GstVideo-1.0.gir
girs/GstWebRTC-1.0.gir
sources/generated/Gst.Audio/AudioDecoder.cs
sources/generated/Gst.Audio/AudioEncoder.cs
sources/generated/Gst.Audio/AudioSink.cs
sources/generated/Gst.Audio/AudioSinkClassExtension.cs [new file with mode: 0644]
sources/generated/Gst.Audio/Constants.cs
sources/generated/Gst.Audio/Global.cs
sources/generated/Gst.Base/Aggregator.cs
sources/generated/Gst.Base/AggregatorStartTimeSelection.cs [new file with mode: 0644]
sources/generated/Gst.Base/BaseSink.cs
sources/generated/Gst.Base/BaseSrc.cs
sources/generated/Gst.Base/BaseTransform.cs
sources/generated/Gst.Controller/ProxyControlBinding.cs
sources/generated/Gst.Net/Global.cs
sources/generated/Gst.PbUtils/EncodingProfile.cs
sources/generated/Gst.Rtp/RTCPFBType.cs
sources/generated/Gst.Rtp/RTPBaseDepayload.cs
sources/generated/Gst.Rtp/RTPBasePayload.cs
sources/generated/Gst.Rtsp/RTSPConnection.cs
sources/generated/Gst.Rtsp/RTSPUrl.cs
sources/generated/Gst.Rtsp/RTSPWatch.cs
sources/generated/Gst.Tags/Constants.cs
sources/generated/Gst.Video/Constants.cs
sources/generated/Gst.Video/Global.cs
sources/generated/Gst.Video/INavigation.cs
sources/generated/Gst.Video/NavigationAdapter.cs
sources/generated/Gst.Video/NavigationEventType.cs
sources/generated/Gst.Video/VideoAFDMeta.cs [new file with mode: 0644]
sources/generated/Gst.Video/VideoAFDSpec.cs [new file with mode: 0644]
sources/generated/Gst.Video/VideoAFDValue.cs [new file with mode: 0644]
sources/generated/Gst.Video/VideoAffineTransformationMeta.cs
sources/generated/Gst.Video/VideoAggregatorPad.cs
sources/generated/Gst.Video/VideoAncillaryDID16.cs
sources/generated/Gst.Video/VideoBarMeta.cs [new file with mode: 0644]
sources/generated/Gst.Video/VideoBufferFlags.cs
sources/generated/Gst.Video/VideoContentLightLevel.cs [new file with mode: 0644]
sources/generated/Gst.Video/VideoDecoder.cs
sources/generated/Gst.Video/VideoEncoder.cs
sources/generated/Gst.Video/VideoFormat.cs
sources/generated/Gst.Video/VideoFormatInfo.cs
sources/generated/Gst.Video/VideoGLTextureUploadMeta.cs
sources/generated/Gst.Video/VideoInfo.cs
sources/generated/Gst.Video/VideoMasteringDisplayInfo.cs [new file with mode: 0644]
sources/generated/Gst.Video/VideoMasteringDisplayInfoCoordinates.cs [new file with mode: 0644]
sources/generated/Gst.Video/VideoMeta.cs
sources/generated/Gst.Video/VideoTimeCode.cs
sources/generated/Gst.Video/VideoTimeCodeFlags.cs
sources/generated/Gst.Video/VideoTransferFunction.cs
sources/generated/Gst.WebRTC/OnErrorEventHandler.cs [new file with mode: 0644]
sources/generated/Gst.WebRTC/OnMessageDataEventHandler.cs [new file with mode: 0644]
sources/generated/Gst.WebRTC/OnMessageStringEventHandler.cs [new file with mode: 0644]
sources/generated/Gst.WebRTC/SendDataEventHandler.cs [new file with mode: 0644]
sources/generated/Gst.WebRTC/SendStringEventHandler.cs [new file with mode: 0644]
sources/generated/Gst.WebRTC/WebRTCDataChannel.cs [new file with mode: 0644]
sources/generated/Gst.WebRTC/WebRTCRTPTransceiver.cs
sources/generated/Gst/Bin.cs
sources/generated/Gst/Buffer.cs
sources/generated/Gst/BufferList.cs
sources/generated/Gst/Caps.cs
sources/generated/Gst/ClockType.cs
sources/generated/Gst/Constants.cs
sources/generated/Gst/DateTime.cs
sources/generated/Gst/Debug.cs
sources/generated/Gst/DebugCategory.cs
sources/generated/Gst/Device.cs
sources/generated/Gst/Element.cs
sources/generated/Gst/Event.cs
sources/generated/Gst/EventType.cs
sources/generated/Gst/Global.cs
sources/generated/Gst/Memory.cs
sources/generated/Gst/Message.cs
sources/generated/Gst/MessageType.cs
sources/generated/Gst/Pad.cs
sources/generated/Gst/PadTemplate.cs
sources/generated/Gst/PluginAPIFlags.cs [new file with mode: 0644]
sources/generated/Gst/Promise.cs
sources/generated/Gst/Query.cs
sources/generated/Gst/Sample.cs
sources/generated/Gst/SeekFlags.cs
sources/generated/Gst/SegmentFlags.cs
sources/generated/Gst/StackTraceFlags.cs
sources/generated/Gst/Structure.cs
sources/generated/Gst/TagList.cs
sources/generated/Gst/Task.cs
sources/generated/Gst/Tracer.cs
sources/generated/Gst/ValueArray.cs
sources/generated/Gst/ValueList.cs
sources/generated/GtkSharp/ObjectManager.cs
sources/generated/gstreamer-sharp-abi.c
sources/generated/gstreamer-sharp-abi.cs
sources/generated/gstreamer-sharp-api.xml
sources/generated/meson.build
sources/gstreamer-sharp-api.raw
sources/gstreamer-sharp.metadata

index c58eaa5..41b2d8c 100644 (file)
@@ -17,24 +17,76 @@ and/or use gtk-doc annotations.  -->
              c:identifier-prefixes="Gst"
              c:symbol-prefixes="gst">
     <alias name="ClockID" c:type="GstClockID">
-      <doc xml:space="preserve">A datatype to hold the handle to an outstanding sync or async clock callback.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstclock.h"
+           line="61">A datatype to hold the handle to an outstanding sync or async clock callback.</doc>
+      <source-position filename="gst/gstclock.h" line="66"/>
       <type name="gpointer" c:type="gpointer"/>
     </alias>
     <alias name="ClockTime" c:type="GstClockTime">
-      <doc xml:space="preserve">A datatype to hold a time, measured in nanoseconds.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstclock.h"
+           line="41">A datatype to hold a time, measured in nanoseconds.</doc>
+      <source-position filename="gst/gstclock.h" line="46"/>
       <type name="guint64" c:type="guint64"/>
     </alias>
     <alias name="ClockTimeDiff" c:type="GstClockTimeDiff">
-      <doc xml:space="preserve">A datatype to hold a time difference, measured in nanoseconds.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstclock.h"
+           line="55">A datatype to hold a time difference, measured in nanoseconds.</doc>
+      <source-position filename="gst/gstclock.h" line="60"/>
       <type name="gint64" c:type="gint64"/>
     </alias>
     <alias name="ElementFactoryListType" c:type="GstElementFactoryListType">
+      <doc xml:space="preserve"
+           filename="gst/gstelementfactory.h"
+           line="124">A type defining the type of an element factory.</doc>
+      <source-position filename="gst/gstelementfactory.h" line="129"/>
       <type name="guint64" c:type="guint64"/>
     </alias>
+    <function-macro name="ALLOCATOR"
+                    c:identifier="GST_ALLOCATOR"
+                    introspectable="0">
+      <source-position filename="gst/gstallocator.h" line="38"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="ALLOCATOR_CAST"
+                    c:identifier="GST_ALLOCATOR_CAST"
+                    introspectable="0">
+      <source-position filename="gst/gstallocator.h" line="40"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="ALLOCATOR_CLASS"
+                    c:identifier="GST_ALLOCATOR_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gstallocator.h" line="39"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="ALLOCATOR_GET_CLASS"
+                    c:identifier="GST_ALLOCATOR_GET_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gstallocator.h" line="37"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
     <constant name="ALLOCATOR_SYSMEM"
               value="SystemMemory"
               c:type="GST_ALLOCATOR_SYSMEM">
-      <doc xml:space="preserve">The allocator name for the default system memory allocator</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstallocator.h"
+           line="58">The allocator name for the default system memory allocator</doc>
+      <source-position filename="gst/gstallocator.h" line="63"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <record name="AllocationParams"
@@ -42,34 +94,50 @@ and/or use gtk-doc annotations.  -->
             glib:type-name="GstAllocationParams"
             glib:get-type="gst_allocation_params_get_type"
             c:symbol-prefix="allocation_params">
-      <doc xml:space="preserve">Parameters to control the allocation of memory</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstallocator.h"
+           line="65">Parameters to control the allocation of memory</doc>
+      <source-position filename="gst/gstallocator.h" line="82"/>
       <field name="flags" writable="1">
-        <doc xml:space="preserve">flags to control allocation</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstallocator.h"
+             line="67">flags to control allocation</doc>
         <type name="MemoryFlags" c:type="GstMemoryFlags"/>
       </field>
       <field name="align" writable="1">
-        <doc xml:space="preserve">the desired alignment of the memory</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstallocator.h"
+             line="68">the desired alignment of the memory</doc>
         <type name="gsize" c:type="gsize"/>
       </field>
       <field name="prefix" writable="1">
-        <doc xml:space="preserve">the desired prefix</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstallocator.h"
+             line="69">the desired prefix</doc>
         <type name="gsize" c:type="gsize"/>
       </field>
       <field name="padding" writable="1">
-        <doc xml:space="preserve">the desired padding</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstallocator.h"
+             line="70">the desired padding</doc>
         <type name="gsize" c:type="gsize"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
       <method name="copy" c:identifier="gst_allocation_params_copy">
-        <doc xml:space="preserve">Create a copy of @params.
+        <doc xml:space="preserve"
+             filename="gst/gstallocator.c"
+             line="156">Create a copy of @params.
 
 Free-function: gst_allocation_params_free</doc>
+        <source-position filename="gst/gstallocator.h" line="175"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">a new ##GstAllocationParams, free with
+          <doc xml:space="preserve"
+               filename="gst/gstallocator.c"
+               line="164">a new ##GstAllocationParams, free with
 gst_allocation_params_free().</doc>
           <type name="AllocationParams" c:type="GstAllocationParams*"/>
         </return-value>
@@ -78,31 +146,43 @@ gst_allocation_params_free().</doc>
                               transfer-ownership="none"
                               nullable="1"
                               allow-none="1">
-            <doc xml:space="preserve">a #GstAllocationParams</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstallocator.c"
+                 line="158">a #GstAllocationParams</doc>
             <type name="AllocationParams" c:type="const GstAllocationParams*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="free" c:identifier="gst_allocation_params_free">
-        <doc xml:space="preserve">Free @params</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstallocator.c"
+             line="180">Free @params</doc>
+        <source-position filename="gst/gstallocator.h" line="178"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="params" transfer-ownership="full">
-            <doc xml:space="preserve">a #GstAllocationParams</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstallocator.c"
+                 line="182">a #GstAllocationParams</doc>
             <type name="AllocationParams" c:type="GstAllocationParams*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="init" c:identifier="gst_allocation_params_init">
-        <doc xml:space="preserve">Initialize @params to its default values</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstallocator.c"
+             line="142">Initialize @params to its default values</doc>
+        <source-position filename="gst/gstallocator.h" line="171"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="params" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAllocationParams</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstallocator.c"
+                 line="144">a #GstAllocationParams</doc>
             <type name="AllocationParams" c:type="GstAllocationParams*"/>
           </instance-parameter>
         </parameters>
@@ -116,7 +196,9 @@ gst_allocation_params_free().</doc>
            glib:type-name="GstAllocator"
            glib:get-type="gst_allocator_get_type"
            glib:type-struct="AllocatorClass">
-      <doc xml:space="preserve">Memory is usually created by allocators with a gst_allocator_alloc()
+      <doc xml:space="preserve"
+           filename="gst/gstallocator.c"
+           line="22">Memory is usually created by allocators with a gst_allocator_alloc()
 method call. When %NULL is used as the allocator, the default allocator will
 be used.
 
@@ -127,11 +209,17 @@ default allocator.
 
 New memory can be created with gst_memory_new_wrapped() that wraps the memory
 allocated elsewhere.</doc>
+      <source-position filename="gst/gstallocator.h" line="152"/>
       <function name="find" c:identifier="gst_allocator_find">
-        <doc xml:space="preserve">Find a previously registered allocator with @name. When @name is %NULL, the
+        <doc xml:space="preserve"
+             filename="gst/gstallocator.c"
+             line="216">Find a previously registered allocator with @name. When @name is %NULL, the
 default allocator will be returned.</doc>
+        <source-position filename="gst/gstallocator.h" line="163"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">a #GstAllocator or %NULL when
+          <doc xml:space="preserve"
+               filename="gst/gstallocator.c"
+               line="223">a #GstAllocator or %NULL when
 the allocator with @name was not registered. Use gst_object_unref()
 to release the allocator after usage.</doc>
           <type name="Allocator" c:type="GstAllocator*"/>
@@ -141,30 +229,41 @@ to release the allocator after usage.</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">the name of the allocator</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstallocator.c"
+                 line="218">the name of the allocator</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </function>
       <function name="register" c:identifier="gst_allocator_register">
-        <doc xml:space="preserve">Registers the memory @allocator with @name. This function takes ownership of
+        <doc xml:space="preserve"
+             filename="gst/gstallocator.c"
+             line="192">Registers the memory @allocator with @name. This function takes ownership of
 @allocator.</doc>
+        <source-position filename="gst/gstallocator.h" line="160"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <parameter name="name" transfer-ownership="none">
-            <doc xml:space="preserve">the name of the allocator</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstallocator.c"
+                 line="194">the name of the allocator</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="allocator" transfer-ownership="full">
-            <doc xml:space="preserve">#GstAllocator</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstallocator.c"
+                 line="195">#GstAllocator</doc>
             <type name="Allocator" c:type="GstAllocator*"/>
           </parameter>
         </parameters>
       </function>
       <virtual-method name="alloc" invoker="alloc">
-        <doc xml:space="preserve">Use @allocator to allocate a new memory block with memory that is at least
+        <doc xml:space="preserve"
+             filename="gst/gstallocator.c"
+             line="267">Use @allocator to allocate a new memory block with memory that is at least
 @size big.
 
 The optional @params can specify the prefix and padding for the memory. If
@@ -179,8 +278,11 @@ When @allocator is %NULL, the default allocator will be used.
 The alignment in @params is given as a bitmask so that @align + 1 equals
 the amount of bytes to align to. For example, to align to 8 bytes,
 use an alignment of 7.</doc>
+        <source-position filename="gst/gstallocator.h" line="146"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">a new #GstMemory.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstallocator.c"
+               line="289">a new #GstMemory.</doc>
           <type name="Memory" c:type="GstMemory*"/>
         </return-value>
         <parameters>
@@ -188,40 +290,55 @@ use an alignment of 7.</doc>
                               transfer-ownership="none"
                               nullable="1"
                               allow-none="1">
-            <doc xml:space="preserve">a #GstAllocator to use</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstallocator.c"
+                 line="269">a #GstAllocator to use</doc>
             <type name="Allocator" c:type="GstAllocator*"/>
           </instance-parameter>
           <parameter name="size" transfer-ownership="none">
-            <doc xml:space="preserve">size of the visible memory area</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstallocator.c"
+                 line="270">size of the visible memory area</doc>
             <type name="gsize" c:type="gsize"/>
           </parameter>
           <parameter name="params"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">optional parameters</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstallocator.c"
+                 line="271">optional parameters</doc>
             <type name="AllocationParams" c:type="GstAllocationParams*"/>
           </parameter>
         </parameters>
       </virtual-method>
       <virtual-method name="free" invoker="free">
-        <doc xml:space="preserve">Free @memory that was previously allocated with gst_allocator_alloc().</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstallocator.c"
+             line="317">Free @memory that was previously allocated with gst_allocator_alloc().</doc>
+        <source-position filename="gst/gstallocator.h" line="148"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="allocator" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAllocator to use</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstallocator.c"
+                 line="319">a #GstAllocator to use</doc>
             <type name="Allocator" c:type="GstAllocator*"/>
           </instance-parameter>
           <parameter name="memory" transfer-ownership="full">
-            <doc xml:space="preserve">the memory to free</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstallocator.c"
+                 line="320">the memory to free</doc>
             <type name="Memory" c:type="GstMemory*"/>
           </parameter>
         </parameters>
       </virtual-method>
       <method name="alloc" c:identifier="gst_allocator_alloc">
-        <doc xml:space="preserve">Use @allocator to allocate a new memory block with memory that is at least
+        <doc xml:space="preserve"
+             filename="gst/gstallocator.c"
+             line="267">Use @allocator to allocate a new memory block with memory that is at least
 @size big.
 
 The optional @params can specify the prefix and padding for the memory. If
@@ -236,8 +353,11 @@ When @allocator is %NULL, the default allocator will be used.
 The alignment in @params is given as a bitmask so that @align + 1 equals
 the amount of bytes to align to. For example, to align to 8 bytes,
 use an alignment of 7.</doc>
+        <source-position filename="gst/gstallocator.h" line="183"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">a new #GstMemory.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstallocator.c"
+               line="289">a new #GstMemory.</doc>
           <type name="Memory" c:type="GstMemory*"/>
         </return-value>
         <parameters>
@@ -245,46 +365,64 @@ use an alignment of 7.</doc>
                               transfer-ownership="none"
                               nullable="1"
                               allow-none="1">
-            <doc xml:space="preserve">a #GstAllocator to use</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstallocator.c"
+                 line="269">a #GstAllocator to use</doc>
             <type name="Allocator" c:type="GstAllocator*"/>
           </instance-parameter>
           <parameter name="size" transfer-ownership="none">
-            <doc xml:space="preserve">size of the visible memory area</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstallocator.c"
+                 line="270">size of the visible memory area</doc>
             <type name="gsize" c:type="gsize"/>
           </parameter>
           <parameter name="params"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">optional parameters</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstallocator.c"
+                 line="271">optional parameters</doc>
             <type name="AllocationParams" c:type="GstAllocationParams*"/>
           </parameter>
         </parameters>
       </method>
       <method name="free" c:identifier="gst_allocator_free">
-        <doc xml:space="preserve">Free @memory that was previously allocated with gst_allocator_alloc().</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstallocator.c"
+             line="317">Free @memory that was previously allocated with gst_allocator_alloc().</doc>
+        <source-position filename="gst/gstallocator.h" line="187"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="allocator" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAllocator to use</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstallocator.c"
+                 line="319">a #GstAllocator to use</doc>
             <type name="Allocator" c:type="GstAllocator*"/>
           </instance-parameter>
           <parameter name="memory" transfer-ownership="full">
-            <doc xml:space="preserve">the memory to free</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstallocator.c"
+                 line="320">the memory to free</doc>
             <type name="Memory" c:type="GstMemory*"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_default" c:identifier="gst_allocator_set_default">
-        <doc xml:space="preserve">Set the default allocator. This function takes ownership of @allocator.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstallocator.c"
+             line="245">Set the default allocator. This function takes ownership of @allocator.</doc>
+        <source-position filename="gst/gstallocator.h" line="166"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="allocator" transfer-ownership="full">
-            <doc xml:space="preserve">a #GstAllocator</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstallocator.c"
+                 line="247">a #GstAllocator</doc>
             <type name="Allocator" c:type="GstAllocator*"/>
           </instance-parameter>
         </parameters>
@@ -296,38 +434,52 @@ use an alignment of 7.</doc>
         <type name="utf8" c:type="const gchar*"/>
       </field>
       <field name="mem_map">
-        <doc xml:space="preserve">the implementation of the GstMemoryMapFunction</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstallocator.h"
+             line="99">the implementation of the GstMemoryMapFunction</doc>
         <type name="MemoryMapFunction" c:type="GstMemoryMapFunction"/>
       </field>
       <field name="mem_unmap">
-        <doc xml:space="preserve">the implementation of the GstMemoryUnmapFunction</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstallocator.h"
+             line="100">the implementation of the GstMemoryUnmapFunction</doc>
         <type name="MemoryUnmapFunction" c:type="GstMemoryUnmapFunction"/>
       </field>
       <field name="mem_copy">
-        <doc xml:space="preserve">the implementation of the GstMemoryCopyFunction</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstallocator.h"
+             line="101">the implementation of the GstMemoryCopyFunction</doc>
         <type name="MemoryCopyFunction" c:type="GstMemoryCopyFunction"/>
       </field>
       <field name="mem_share">
-        <doc xml:space="preserve">the implementation of the GstMemoryShareFunction</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstallocator.h"
+             line="102">the implementation of the GstMemoryShareFunction</doc>
         <type name="MemoryShareFunction" c:type="GstMemoryShareFunction"/>
       </field>
       <field name="mem_is_span">
-        <doc xml:space="preserve">the implementation of the GstMemoryIsSpanFunction</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstallocator.h"
+             line="103">the implementation of the GstMemoryIsSpanFunction</doc>
         <type name="MemoryIsSpanFunction" c:type="GstMemoryIsSpanFunction"/>
       </field>
       <field name="mem_map_full">
-        <doc xml:space="preserve">the implementation of the GstMemoryMapFullFunction.
-     Will be used instead of @mem_map if present. (Since 1.6)</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstallocator.h"
+             line="104">the implementation of the GstMemoryMapFullFunction.
+     Will be used instead of @mem_map if present. (Since: 1.6)</doc>
         <type name="MemoryMapFullFunction" c:type="GstMemoryMapFullFunction"/>
       </field>
       <field name="mem_unmap_full">
-        <doc xml:space="preserve">the implementation of the GstMemoryUnmapFullFunction.
-     Will be used instead of @mem_unmap if present. (Since 1.6)</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstallocator.h"
+             line="106">the implementation of the GstMemoryUnmapFullFunction.
+     Will be used instead of @mem_unmap if present. (Since: 1.6)</doc>
         <type name="MemoryUnmapFullFunction"
               c:type="GstMemoryUnmapFullFunction"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="2">
+        <array zero-terminated="0" fixed-size="2">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -338,15 +490,23 @@ use an alignment of 7.</doc>
     <record name="AllocatorClass"
             c:type="GstAllocatorClass"
             glib:is-gtype-struct-for="Allocator">
-      <doc xml:space="preserve">The #GstAllocator is used to create new memory.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstallocator.h"
+           line="134">The #GstAllocator is used to create new memory.</doc>
+      <source-position filename="gst/gstallocator.h" line="152"/>
       <field name="object_class">
-        <doc xml:space="preserve">Object parent class</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstallocator.h"
+             line="136">Object parent class</doc>
         <type name="ObjectClass" c:type="GstObjectClass"/>
       </field>
       <field name="alloc">
         <callback name="alloc">
+          <source-position filename="gst/gstallocator.h" line="146"/>
           <return-value transfer-ownership="full" nullable="1">
-            <doc xml:space="preserve">a new #GstMemory.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstallocator.c"
+                 line="289">a new #GstMemory.</doc>
             <type name="Memory" c:type="GstMemory*"/>
           </return-value>
           <parameters>
@@ -354,18 +514,24 @@ use an alignment of 7.</doc>
                        transfer-ownership="none"
                        nullable="1"
                        allow-none="1">
-              <doc xml:space="preserve">a #GstAllocator to use</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstallocator.c"
+                   line="269">a #GstAllocator to use</doc>
               <type name="Allocator" c:type="GstAllocator*"/>
             </parameter>
             <parameter name="size" transfer-ownership="none">
-              <doc xml:space="preserve">size of the visible memory area</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstallocator.c"
+                   line="270">size of the visible memory area</doc>
               <type name="gsize" c:type="gsize"/>
             </parameter>
             <parameter name="params"
                        transfer-ownership="none"
                        nullable="1"
                        allow-none="1">
-              <doc xml:space="preserve">optional parameters</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstallocator.c"
+                   line="271">optional parameters</doc>
               <type name="AllocationParams" c:type="GstAllocationParams*"/>
             </parameter>
           </parameters>
@@ -373,23 +539,28 @@ use an alignment of 7.</doc>
       </field>
       <field name="free">
         <callback name="free">
+          <source-position filename="gst/gstallocator.h" line="148"/>
           <return-value transfer-ownership="none">
             <type name="none" c:type="void"/>
           </return-value>
           <parameters>
             <parameter name="allocator" transfer-ownership="none">
-              <doc xml:space="preserve">a #GstAllocator to use</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstallocator.c"
+                   line="319">a #GstAllocator to use</doc>
               <type name="Allocator" c:type="GstAllocator*"/>
             </parameter>
             <parameter name="memory" transfer-ownership="full">
-              <doc xml:space="preserve">the memory to free</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstallocator.c"
+                   line="320">the memory to free</doc>
               <type name="Memory" c:type="GstMemory*"/>
             </parameter>
           </parameters>
         </callback>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -398,146 +569,690 @@ use an alignment of 7.</doc>
               glib:type-name="GstAllocatorFlags"
               glib:get-type="gst_allocator_flags_get_type"
               c:type="GstAllocatorFlags">
-      <doc xml:space="preserve">Flags for allocators.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstallocator.h"
+           line="84">Flags for allocators.</doc>
       <member name="custom_alloc"
               value="16"
               c:identifier="GST_ALLOCATOR_FLAG_CUSTOM_ALLOC"
               glib:nick="custom-alloc">
-        <doc xml:space="preserve">The allocator has a custom alloc function.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstallocator.h"
+             line="86">The allocator has a custom alloc function.</doc>
       </member>
       <member name="last"
               value="1048576"
               c:identifier="GST_ALLOCATOR_FLAG_LAST"
               glib:nick="last">
-        <doc xml:space="preserve">first flag that can be used for custom purposes</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstallocator.h"
+             line="87">first flag that can be used for custom purposes</doc>
       </member>
     </bitfield>
     <record name="AllocatorPrivate" c:type="GstAllocatorPrivate" disguised="1">
+      <source-position filename="gst/gstallocator.h" line="31"/>
     </record>
     <record name="AtomicQueue"
             c:type="GstAtomicQueue"
             glib:type-name="GstAtomicQueue"
             glib:get-type="gst_atomic_queue_get_type"
             c:symbol-prefix="atomic_queue">
-      <doc xml:space="preserve">The #GstAtomicQueue object implements a queue that can be used from multiple
+      <doc xml:space="preserve"
+           filename="gst/gstatomicqueue.c"
+           line="31">The #GstAtomicQueue object implements a queue that can be used from multiple
 threads without performing any blocking operations.</doc>
+      <source-position filename="gst/gstatomicqueue.h" line="41"/>
       <constructor name="new" c:identifier="gst_atomic_queue_new">
-        <doc xml:space="preserve">Create a new atomic queue instance. @initial_size will be rounded up to the
+        <doc xml:space="preserve"
+             filename="gst/gstatomicqueue.c"
+             line="146">Create a new atomic queue instance. @initial_size will be rounded up to the
 nearest power of 2 and used as the initial size of the queue.</doc>
+        <source-position filename="gst/gstatomicqueue.h" line="48"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new #GstAtomicQueue</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstatomicqueue.c"
+               line="153">a new #GstAtomicQueue</doc>
           <type name="AtomicQueue" c:type="GstAtomicQueue*"/>
         </return-value>
         <parameters>
           <parameter name="initial_size" transfer-ownership="none">
-            <doc xml:space="preserve">initial queue size</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstatomicqueue.c"
+                 line="148">initial queue size</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </constructor>
       <method name="length" c:identifier="gst_atomic_queue_length">
-        <doc xml:space="preserve">Get the amount of items in the queue.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the number of elements in the queue.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstatomicqueue.c"
+             line="391">Get the amount of items in the queue.</doc>
+        <source-position filename="gst/gstatomicqueue.h" line="66"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstatomicqueue.c"
+               line="397">the number of elements in the queue.</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="queue" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAtomicQueue</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstatomicqueue.c"
+                 line="393">a #GstAtomicQueue</doc>
             <type name="AtomicQueue" c:type="GstAtomicQueue*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="peek" c:identifier="gst_atomic_queue_peek">
-        <doc xml:space="preserve">Peek the head element of the queue without removing it from the queue.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstatomicqueue.c"
+             line="211">Peek the head element of the queue without removing it from the queue.</doc>
+        <source-position filename="gst/gstatomicqueue.h" line="63"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">the head element of @queue or
+          <doc xml:space="preserve"
+               filename="gst/gstatomicqueue.c"
+               line="217">the head element of @queue or
 %NULL when the queue is empty.</doc>
           <type name="gpointer" c:type="gpointer"/>
         </return-value>
         <parameters>
           <instance-parameter name="queue" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAtomicQueue</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstatomicqueue.c"
+                 line="213">a #GstAtomicQueue</doc>
             <type name="AtomicQueue" c:type="GstAtomicQueue*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="pop" c:identifier="gst_atomic_queue_pop">
-        <doc xml:space="preserve">Get the head element of the queue.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstatomicqueue.c"
+             line="261">Get the head element of the queue.</doc>
+        <source-position filename="gst/gstatomicqueue.h" line="60"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">the head element of @queue or %NULL when
+          <doc xml:space="preserve"
+               filename="gst/gstatomicqueue.c"
+               line="267">the head element of @queue or %NULL when
 the queue is empty.</doc>
           <type name="gpointer" c:type="gpointer"/>
         </return-value>
         <parameters>
           <instance-parameter name="queue" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAtomicQueue</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstatomicqueue.c"
+                 line="263">a #GstAtomicQueue</doc>
             <type name="AtomicQueue" c:type="GstAtomicQueue*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="push" c:identifier="gst_atomic_queue_push">
-        <doc xml:space="preserve">Append @data to the tail of the queue.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstatomicqueue.c"
+             line="330">Append @data to the tail of the queue.</doc>
+        <source-position filename="gst/gstatomicqueue.h" line="57"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="queue" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAtomicQueue</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstatomicqueue.c"
+                 line="332">a #GstAtomicQueue</doc>
             <type name="AtomicQueue" c:type="GstAtomicQueue*"/>
           </instance-parameter>
           <parameter name="data"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">the data</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstatomicqueue.c"
+                 line="333">the data</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
         </parameters>
       </method>
       <method name="ref" c:identifier="gst_atomic_queue_ref">
-        <doc xml:space="preserve">Increase the refcount of @queue.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstatomicqueue.c"
+             line="172">Increase the refcount of @queue.</doc>
+        <source-position filename="gst/gstatomicqueue.h" line="51"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="queue" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAtomicQueue</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstatomicqueue.c"
+                 line="174">a #GstAtomicQueue</doc>
             <type name="AtomicQueue" c:type="GstAtomicQueue*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="unref" c:identifier="gst_atomic_queue_unref">
-        <doc xml:space="preserve">Unref @queue and free the memory when the refcount reaches 0.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstatomicqueue.c"
+             line="196">Unref @queue and free the memory when the refcount reaches 0.</doc>
+        <source-position filename="gst/gstatomicqueue.h" line="54"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="queue" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAtomicQueue</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstatomicqueue.c"
+                 line="198">a #GstAtomicQueue</doc>
             <type name="AtomicQueue" c:type="GstAtomicQueue*"/>
           </instance-parameter>
         </parameters>
       </method>
     </record>
+    <function-macro name="BIN" c:identifier="GST_BIN" introspectable="0">
+      <source-position filename="gst/gstbin.h" line="37"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="BIN_CAST"
+                    c:identifier="GST_BIN_CAST"
+                    introspectable="0">
+      <source-position filename="gst/gstbin.h" line="39"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="BIN_CHILDREN"
+                    c:identifier="GST_BIN_CHILDREN"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstbin.h"
+           line="84">Gets the list with children in a bin.</doc>
+      <source-position filename="gst/gstbin.h" line="90"/>
+      <parameters>
+        <parameter name="bin">
+          <doc xml:space="preserve"
+               filename="gst/gstbin.h"
+               line="86">a #GstBin</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="BIN_CHILDREN_COOKIE"
+                    c:identifier="GST_BIN_CHILDREN_COOKIE"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstbin.h"
+           line="91">Gets the children cookie that watches the children list.</doc>
+      <source-position filename="gst/gstbin.h" line="97"/>
+      <parameters>
+        <parameter name="bin">
+          <doc xml:space="preserve"
+               filename="gst/gstbin.h"
+               line="93">a #GstBin</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="BIN_CLASS"
+                    c:identifier="GST_BIN_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gstbin.h" line="38"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="BIN_GET_CLASS"
+                    c:identifier="GST_BIN_GET_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gstbin.h" line="36"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="BIN_IS_NO_RESYNC"
+                    c:identifier="GST_BIN_IS_NO_RESYNC"
+                    version="1.0.5"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstbin.h"
+           line="62">Check if @bin will resync its state change when elements are added and
+removed.</doc>
+      <source-position filename="gst/gstbin.h" line="71"/>
+      <parameters>
+        <parameter name="bin">
+          <doc xml:space="preserve"
+               filename="gst/gstbin.h"
+               line="64">A #GstBin</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="BIN_NUMCHILDREN"
+                    c:identifier="GST_BIN_NUMCHILDREN"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstbin.h"
+           line="77">Gets the number of children in a bin.</doc>
+      <source-position filename="gst/gstbin.h" line="83"/>
+      <parameters>
+        <parameter name="bin">
+          <doc xml:space="preserve"
+               filename="gst/gstbin.h"
+               line="79">a #GstBin</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="BUFFER" c:identifier="GST_BUFFER" introspectable="0">
+      <source-position filename="gst/gstbuffer.h" line="44"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="BUFFER_CAST"
+                    c:identifier="GST_BUFFER_CAST"
+                    introspectable="0">
+      <source-position filename="gst/gstbuffer.h" line="43"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
     <constant name="BUFFER_COPY_ALL" value="15" c:type="GST_BUFFER_COPY_ALL">
-      <doc xml:space="preserve">Combination of all possible fields that can be copied with
+      <doc xml:space="preserve"
+           filename="gst/gstbuffer.h"
+           line="530">Combination of all possible fields that can be copied with
 gst_buffer_copy_into().</doc>
+      <source-position filename="gst/gstbuffer.h" line="535"/>
       <type name="BufferCopyFlags" c:type="GstBufferCopyFlags"/>
     </constant>
     <constant name="BUFFER_COPY_METADATA"
               value="7"
               c:type="GST_BUFFER_COPY_METADATA">
-      <doc xml:space="preserve">Combination of all possible metadata fields that can be copied with
+      <doc xml:space="preserve"
+           filename="gst/gstbuffer.h"
+           line="521">Combination of all possible metadata fields that can be copied with
 gst_buffer_copy_into().</doc>
+      <source-position filename="gst/gstbuffer.h" line="527"/>
       <type name="BufferCopyFlags" c:type="GstBufferCopyFlags"/>
     </constant>
+    <function-macro name="BUFFER_DTS"
+                    c:identifier="GST_BUFFER_DTS"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstbuffer.h"
+           line="89">The decoding timestamp (dts) in nanoseconds (as a #GstClockTime)
+of the data in the buffer. This is the timestamp when the media should be
+decoded or processed otherwise.
+Value will be %GST_CLOCK_TIME_NONE if the dts is unknown.</doc>
+      <source-position filename="gst/gstbuffer.h" line="98"/>
+      <parameters>
+        <parameter name="buf">
+          <doc xml:space="preserve"
+               filename="gst/gstbuffer.h"
+               line="91">a #GstBuffer.:</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="BUFFER_DTS_IS_VALID"
+                    c:identifier="GST_BUFFER_DTS_IS_VALID"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstbuffer.h"
+           line="153">Tests if the dts is known.</doc>
+      <source-position filename="gst/gstbuffer.h" line="159"/>
+      <parameters>
+        <parameter name="buffer">
+          <doc xml:space="preserve"
+               filename="gst/gstbuffer.h"
+               line="155">a #GstBuffer</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="BUFFER_DTS_OR_PTS"
+                    c:identifier="GST_BUFFER_DTS_OR_PTS"
+                    version="1.8"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstbuffer.h"
+           line="99">Returns the buffer decoding timestamp (dts) if valid, else the buffer
+presentation time (pts)</doc>
+      <source-position filename="gst/gstbuffer.h" line="108"/>
+      <parameters>
+        <parameter name="buf">
+          <doc xml:space="preserve"
+               filename="gst/gstbuffer.h"
+               line="101">a #GstBuffer.:</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="BUFFER_DURATION"
+                    c:identifier="GST_BUFFER_DURATION"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstbuffer.h"
+           line="109">The duration in nanoseconds (as a #GstClockTime) of the data in the buffer.
+Value will be %GST_CLOCK_TIME_NONE if the duration is unknown.</doc>
+      <source-position filename="gst/gstbuffer.h" line="116"/>
+      <parameters>
+        <parameter name="buf">
+          <doc xml:space="preserve"
+               filename="gst/gstbuffer.h"
+               line="111">a #GstBuffer.</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="BUFFER_DURATION_IS_VALID"
+                    c:identifier="GST_BUFFER_DURATION_IS_VALID"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstbuffer.h"
+           line="139">Tests if the duration is known.</doc>
+      <source-position filename="gst/gstbuffer.h" line="145"/>
+      <parameters>
+        <parameter name="buffer">
+          <doc xml:space="preserve"
+               filename="gst/gstbuffer.h"
+               line="141">a #GstBuffer</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="BUFFER_FLAGS"
+                    c:identifier="GST_BUFFER_FLAGS"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstbuffer.h"
+           line="46">A flags word containing #GstBufferFlags flags set on this buffer.</doc>
+      <source-position filename="gst/gstbuffer.h" line="52"/>
+      <parameters>
+        <parameter name="buf">
+          <doc xml:space="preserve"
+               filename="gst/gstbuffer.h"
+               line="48">a #GstBuffer.</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="BUFFER_FLAG_IS_SET"
+                    c:identifier="GST_BUFFER_FLAG_IS_SET"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstbuffer.h"
+           line="53">Gives the status of a specific flag on a buffer.</doc>
+      <source-position filename="gst/gstbuffer.h" line="60"/>
+      <parameters>
+        <parameter name="buf">
+          <doc xml:space="preserve"
+               filename="gst/gstbuffer.h"
+               line="55">a #GstBuffer.</doc>
+        </parameter>
+        <parameter name="flag">
+          <doc xml:space="preserve"
+               filename="gst/gstbuffer.h"
+               line="56">the #GstBufferFlags flag to check.</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="BUFFER_FLAG_SET"
+                    c:identifier="GST_BUFFER_FLAG_SET"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstbuffer.h"
+           line="61">Sets a buffer flag on a buffer.</doc>
+      <source-position filename="gst/gstbuffer.h" line="68"/>
+      <parameters>
+        <parameter name="buf">
+          <doc xml:space="preserve"
+               filename="gst/gstbuffer.h"
+               line="63">a #GstBuffer.</doc>
+        </parameter>
+        <parameter name="flag">
+          <doc xml:space="preserve"
+               filename="gst/gstbuffer.h"
+               line="64">the #GstBufferFlags flag to set.</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="BUFFER_FLAG_UNSET"
+                    c:identifier="GST_BUFFER_FLAG_UNSET"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstbuffer.h"
+           line="69">Clears a buffer flag.</doc>
+      <source-position filename="gst/gstbuffer.h" line="76"/>
+      <parameters>
+        <parameter name="buf">
+          <doc xml:space="preserve"
+               filename="gst/gstbuffer.h"
+               line="71">a #GstBuffer.</doc>
+        </parameter>
+        <parameter name="flag">
+          <doc xml:space="preserve"
+               filename="gst/gstbuffer.h"
+               line="72">the #GstBufferFlags flag to clear.</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="BUFFER_IS_DISCONT"
+                    c:identifier="GST_BUFFER_IS_DISCONT"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstbuffer.h"
+           line="174">Tests if the buffer marks a discontinuity in the stream.</doc>
+      <source-position filename="gst/gstbuffer.h" line="180"/>
+      <parameters>
+        <parameter name="buffer">
+          <doc xml:space="preserve"
+               filename="gst/gstbuffer.h"
+               line="176">a #GstBuffer</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="BUFFER_LIST"
+                    c:identifier="GST_BUFFER_LIST"
+                    introspectable="0">
+      <source-position filename="gst/gstbufferlist.h" line="35"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="BUFFER_LIST_CAST"
+                    c:identifier="GST_BUFFER_LIST_CAST"
+                    introspectable="0">
+      <source-position filename="gst/gstbufferlist.h" line="34"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="BUFFER_OFFSET"
+                    c:identifier="GST_BUFFER_OFFSET"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstbuffer.h"
+           line="117">The offset in the source file of the beginning of this buffer.</doc>
+      <source-position filename="gst/gstbuffer.h" line="123"/>
+      <parameters>
+        <parameter name="buf">
+          <doc xml:space="preserve"
+               filename="gst/gstbuffer.h"
+               line="119">a #GstBuffer.</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="BUFFER_OFFSET_END"
+                    c:identifier="GST_BUFFER_OFFSET_END"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstbuffer.h"
+           line="124">The offset in the source file of the end of this buffer.</doc>
+      <source-position filename="gst/gstbuffer.h" line="130"/>
+      <parameters>
+        <parameter name="buf">
+          <doc xml:space="preserve"
+               filename="gst/gstbuffer.h"
+               line="126">a #GstBuffer.</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="BUFFER_OFFSET_END_IS_VALID"
+                    c:identifier="GST_BUFFER_OFFSET_END_IS_VALID"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstbuffer.h"
+           line="167">Tests if the end offset is known.</doc>
+      <source-position filename="gst/gstbuffer.h" line="173"/>
+      <parameters>
+        <parameter name="buffer">
+          <doc xml:space="preserve"
+               filename="gst/gstbuffer.h"
+               line="169">a #GstBuffer</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="BUFFER_OFFSET_IS_VALID"
+                    c:identifier="GST_BUFFER_OFFSET_IS_VALID"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstbuffer.h"
+           line="160">Tests if the start offset is known.</doc>
+      <source-position filename="gst/gstbuffer.h" line="166"/>
+      <parameters>
+        <parameter name="buffer">
+          <doc xml:space="preserve"
+               filename="gst/gstbuffer.h"
+               line="162">a #GstBuffer</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
     <constant name="BUFFER_OFFSET_NONE"
               value="18446744073709551615"
               c:type="GST_BUFFER_OFFSET_NONE">
-      <doc xml:space="preserve">Constant for no-offset return results.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstbuffer.h"
+           line="132">Constant for no-offset return results.</doc>
+      <source-position filename="gst/gstbuffer.h" line="137"/>
       <type name="guint64" c:type="guint64"/>
     </constant>
+    <function-macro name="BUFFER_POOL"
+                    c:identifier="GST_BUFFER_POOL"
+                    introspectable="0">
+      <source-position filename="gst/gstbufferpool.h" line="39"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="BUFFER_POOL_CAST"
+                    c:identifier="GST_BUFFER_POOL_CAST"
+                    introspectable="0">
+      <source-position filename="gst/gstbufferpool.h" line="41"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="BUFFER_POOL_CLASS"
+                    c:identifier="GST_BUFFER_POOL_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gstbufferpool.h" line="40"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="BUFFER_POOL_GET_CLASS"
+                    c:identifier="GST_BUFFER_POOL_GET_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gstbufferpool.h" line="38"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="BUFFER_POOL_IS_FLUSHING"
+                    c:identifier="GST_BUFFER_POOL_IS_FLUSHING"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstbufferpool.h"
+           line="90">Check if the bufferpool is flushing. Subclasses might want to check the
+state of the pool in the acquire function.</doc>
+      <source-position filename="gst/gstbufferpool.h" line="97"/>
+      <parameters>
+        <parameter name="pool">
+          <doc xml:space="preserve"
+               filename="gst/gstbufferpool.h"
+               line="92">a GstBufferPool</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="BUFFER_PTS"
+                    c:identifier="GST_BUFFER_PTS"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstbuffer.h"
+           line="79">The presentation timestamp (pts) in nanoseconds (as a #GstClockTime)
+of the data in the buffer. This is the timestamp when the media should be
+presented to the user.
+Value will be %GST_CLOCK_TIME_NONE if the pts is unknown.</doc>
+      <source-position filename="gst/gstbuffer.h" line="88"/>
+      <parameters>
+        <parameter name="buf">
+          <doc xml:space="preserve"
+               filename="gst/gstbuffer.h"
+               line="81">a #GstBuffer.:</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="BUFFER_PTS_IS_VALID"
+                    c:identifier="GST_BUFFER_PTS_IS_VALID"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstbuffer.h"
+           line="146">Tests if the pts is known.</doc>
+      <source-position filename="gst/gstbuffer.h" line="152"/>
+      <parameters>
+        <parameter name="buffer">
+          <doc xml:space="preserve"
+               filename="gst/gstbuffer.h"
+               line="148">a #GstBuffer</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="BUS" c:identifier="GST_BUS" introspectable="0">
+      <source-position filename="gst/gstbus.h" line="36"/>
+      <parameters>
+        <parameter name="bus">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="BUS_CAST"
+                    c:identifier="GST_BUS_CAST"
+                    introspectable="0">
+      <source-position filename="gst/gstbus.h" line="41"/>
+      <parameters>
+        <parameter name="bus">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="BUS_CLASS"
+                    c:identifier="GST_BUS_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gstbus.h" line="38"/>
+      <parameters>
+        <parameter name="bclass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="BUS_GET_CLASS"
+                    c:identifier="GST_BUS_GET_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gstbus.h" line="40"/>
+      <parameters>
+        <parameter name="bus">
+        </parameter>
+      </parameters>
+    </function-macro>
     <class name="Bin"
            c:symbol-prefix="bin"
            c:type="GstBin"
@@ -545,7 +1260,9 @@ gst_buffer_copy_into().</doc>
            glib:type-name="GstBin"
            glib:get-type="gst_bin_get_type"
            glib:type-struct="BinClass">
-      <doc xml:space="preserve">#GstBin is an element that can contain other #GstElement, allowing them to be
+      <doc xml:space="preserve"
+           filename="gst/gstbin.c"
+           line="26">#GstBin is an element that can contain other #GstElement, allowing them to be
 managed as a group.
 Pads from the child elements can be ghosted to the bin, see #GstGhostPad.
 This makes the bin look like any other elements and enables creation of
@@ -590,12 +1307,15 @@ of their segment.
 a SEGMENT_START have posted a SEGMENT_DONE.
 
 * GST_MESSAGE_DURATION_CHANGED: Is posted by an element that detected a change
-in the stream duration. The default bin behaviour is to clear any
-cached duration values so that the next duration query will perform
-a full duration recalculation. The duration change is posted to the
+in the stream duration. The duration change is posted to the
 application so that it can refetch the new duration with a duration
 query. Note that these messages can be posted before the bin is
-prerolled, in which case the duration query might fail.
+prerolled, in which case the duration query might fail. Note also that
+there might be a discrepancy (due to internal buffering/queueing) between the
+stream being currently displayed and the returned duration query.
+Applications might want to also query for duration (and changes) by
+listening to the GST_MESSAGE_STREAM_START message, signaling the active start
+of a (new) stream.
 
 * GST_MESSAGE_CLOCK_LOST: This message is posted by an element when it
 can no longer provide a clock. The default bin behaviour is to
@@ -620,11 +1340,8 @@ the parent of the bin.
 A #GstBin implements the following default behaviour for answering to a
 #GstQuery:
 
-* GST_QUERY_DURATION:If the query has been asked before with the same format
-and the bin is a toplevel bin (ie. has no parent),
-use the cached previous value. If no previous value was cached, the
-query is sent to all sink elements in the bin and the MAXIMUM of all
-values is returned. If the bin is a toplevel bin the value is cached.
+* GST_QUERY_DURATION: The bin will forward the query to all sink
+elements contained within and will return the maximum value.
 If no sinks are available in the bin, the query fails.
 
 * GST_QUERY_POSITION:The query is sent to all sink elements in the bin and the
@@ -641,11 +1358,17 @@ depending on the event type.
 If all the elements return %TRUE, the bin will also return %TRUE, else %FALSE
 is returned. If no elements of the required type are in the bin, the event
 handler will return %TRUE.</doc>
+      <source-position filename="gst/gstbin.h" line="193"/>
       <implements name="ChildProxy"/>
       <constructor name="new" c:identifier="gst_bin_new">
-        <doc xml:space="preserve">Creates a new bin with the given name.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a new #GstBin</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstbin.c"
+             line="534">Creates a new bin with the given name.</doc>
+        <source-position filename="gst/gstbin.h" line="199"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstbin.c"
+               line="540">a new #GstBin</doc>
           <type name="Element" c:type="GstElement*"/>
         </return-value>
         <parameters>
@@ -653,12 +1376,15 @@ handler will return %TRUE.</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">the name of the new bin</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbin.c"
+                 line="536">the name of the new bin</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </constructor>
       <virtual-method name="add_element">
+        <source-position filename="gst/gstbin.h" line="177"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -672,6 +1398,7 @@ handler will return %TRUE.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="deep_element_added">
+        <source-position filename="gst/gstbin.h" line="188"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
@@ -688,6 +1415,7 @@ handler will return %TRUE.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="deep_element_removed">
+        <source-position filename="gst/gstbin.h" line="189"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
@@ -704,6 +1432,7 @@ handler will return %TRUE.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="do_latency">
+        <source-position filename="gst/gstbin.h" line="184"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -714,6 +1443,7 @@ handler will return %TRUE.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="element_added">
+        <source-position filename="gst/gstbin.h" line="172"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
@@ -727,6 +1457,7 @@ handler will return %TRUE.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="element_removed">
+        <source-position filename="gst/gstbin.h" line="173"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
@@ -740,6 +1471,7 @@ handler will return %TRUE.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="handle_message">
+        <source-position filename="gst/gstbin.h" line="180"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
@@ -753,6 +1485,7 @@ handler will return %TRUE.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="remove_element">
+        <source-position filename="gst/gstbin.h" line="178"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -766,7 +1499,9 @@ handler will return %TRUE.</doc>
         </parameters>
       </virtual-method>
       <method name="add" c:identifier="gst_bin_add">
-        <doc xml:space="preserve">Adds the given element to the bin.  Sets the element's parent, and thus
+        <doc xml:space="preserve"
+             filename="gst/gstbin.c"
+             line="1506">Adds the given element to the bin.  Sets the element's parent, and thus
 takes ownership of the element. An element can only be added to one bin.
 
 If the element's pads are linked to other pads, the pads will be unlinked
@@ -779,18 +1514,25 @@ before the element is added to the bin.
 &gt; The bin or pipeline will not take care of this for you.
 
 MT safe.</doc>
+        <source-position filename="gst/gstbin.h" line="204"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the element could be added, %FALSE if
+          <doc xml:space="preserve"
+               filename="gst/gstbin.c"
+               line="1525">%TRUE if the element could be added, %FALSE if
 the bin does not want to accept the element.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="bin" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBin</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbin.c"
+                 line="1508">a #GstBin</doc>
             <type name="Bin" c:type="GstBin*"/>
           </instance-parameter>
           <parameter name="element" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstElement to add</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbin.c"
+                 line="1509">the #GstElement to add</doc>
             <type name="Element" c:type="GstElement*"/>
           </parameter>
         </parameters>
@@ -798,118 +1540,163 @@ the bin does not want to accept the element.</doc>
       <method name="add_many"
               c:identifier="gst_bin_add_many"
               introspectable="0">
-        <doc xml:space="preserve">Adds a %NULL-terminated list of elements to a bin.  This function is
+        <doc xml:space="preserve"
+             filename="gst/gstutils.c"
+             line="2684">Adds a %NULL-terminated list of elements to a bin.  This function is
 equivalent to calling gst_bin_add() for each member of the list. The return
 value of each gst_bin_add() is ignored.</doc>
+        <source-position filename="gst/gstutils.h" line="1131"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="bin" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBin</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="2686">a #GstBin</doc>
             <type name="Bin" c:type="GstBin*"/>
           </instance-parameter>
           <parameter name="element_1" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstElement element to add to the bin</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="2687">the #GstElement element to add to the bin</doc>
             <type name="Element" c:type="GstElement*"/>
           </parameter>
           <parameter name="..." transfer-ownership="none">
-            <doc xml:space="preserve">additional elements to add to the bin</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="2688">additional elements to add to the bin</doc>
             <varargs/>
           </parameter>
         </parameters>
       </method>
       <method name="find_unlinked_pad"
               c:identifier="gst_bin_find_unlinked_pad">
-        <doc xml:space="preserve">Recursively looks for elements with an unlinked pad of the given
+        <doc xml:space="preserve"
+             filename="gst/gstutils.c"
+             line="3286">Recursively looks for elements with an unlinked pad of the given
 direction within the specified bin and returns an unlinked pad
 if one is found, or %NULL otherwise. If a pad is found, the caller
 owns a reference to it and should use gst_object_unref() on the
 pad when it is not needed any longer.</doc>
+        <source-position filename="gst/gstutils.h" line="1137"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">unlinked pad of the given
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="3297">unlinked pad of the given
 direction, %NULL.</doc>
           <type name="Pad" c:type="GstPad*"/>
         </return-value>
         <parameters>
           <instance-parameter name="bin" transfer-ownership="none">
-            <doc xml:space="preserve">bin in which to look for elements with unlinked pads</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="3288">bin in which to look for elements with unlinked pads</doc>
             <type name="Bin" c:type="GstBin*"/>
           </instance-parameter>
           <parameter name="direction" transfer-ownership="none">
-            <doc xml:space="preserve">whether to look for an unlinked source or sink pad</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="3289">whether to look for an unlinked source or sink pad</doc>
             <type name="PadDirection" c:type="GstPadDirection"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_by_interface" c:identifier="gst_bin_get_by_interface">
-        <doc xml:space="preserve">Looks for an element inside the bin that implements the given
+        <doc xml:space="preserve"
+             filename="gst/gstbin.c"
+             line="4489">Looks for an element inside the bin that implements the given
 interface. If such an element is found, it returns the element.
 You can cast this element to the given interface afterwards.  If you want
 all elements that implement the interface, use
 gst_bin_iterate_all_by_interface(). This function recurses into child bins.
 
 MT safe.  Caller owns returned reference.</doc>
+        <source-position filename="gst/gstbin.h" line="218"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">A #GstElement inside the bin
+          <doc xml:space="preserve"
+               filename="gst/gstbin.c"
+               line="4502">A #GstElement inside the bin
 implementing the interface</doc>
           <type name="Element" c:type="GstElement*"/>
         </return-value>
         <parameters>
           <instance-parameter name="bin" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBin</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbin.c"
+                 line="4491">a #GstBin</doc>
             <type name="Bin" c:type="GstBin*"/>
           </instance-parameter>
           <parameter name="iface" transfer-ownership="none">
-            <doc xml:space="preserve">the #GType of an interface</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbin.c"
+                 line="4492">the #GType of an interface</doc>
             <type name="GType" c:type="GType"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_by_name" c:identifier="gst_bin_get_by_name">
-        <doc xml:space="preserve">Gets the element with the given name from a bin. This
+        <doc xml:space="preserve"
+             filename="gst/gstbin.c"
+             line="4390">Gets the element with the given name from a bin. This
 function recurses into child bins.
 
 Returns %NULL if no element with the given name is found in the bin.
 
 MT safe.  Caller owns returned reference.</doc>
+        <source-position filename="gst/gstbin.h" line="212"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">the #GstElement with the given
+          <doc xml:space="preserve"
+               filename="gst/gstbin.c"
+               line="4402">the #GstElement with the given
 name, or %NULL</doc>
           <type name="Element" c:type="GstElement*"/>
         </return-value>
         <parameters>
           <instance-parameter name="bin" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBin</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbin.c"
+                 line="4392">a #GstBin</doc>
             <type name="Bin" c:type="GstBin*"/>
           </instance-parameter>
           <parameter name="name" transfer-ownership="none">
-            <doc xml:space="preserve">the element name to search for</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbin.c"
+                 line="4393">the element name to search for</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_by_name_recurse_up"
               c:identifier="gst_bin_get_by_name_recurse_up">
-        <doc xml:space="preserve">Gets the element with the given name from this bin. If the
+        <doc xml:space="preserve"
+             filename="gst/gstbin.c"
+             line="4433">Gets the element with the given name from this bin. If the
 element is not found, a recursion is performed on the parent bin.
 
 Returns %NULL if:
 - no element with the given name is found in the bin
 
 MT safe.  Caller owns returned reference.</doc>
+        <source-position filename="gst/gstbin.h" line="215"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">the #GstElement with the given
+          <doc xml:space="preserve"
+               filename="gst/gstbin.c"
+               line="4446">the #GstElement with the given
 name, or %NULL</doc>
           <type name="Element" c:type="GstElement*"/>
         </return-value>
         <parameters>
           <instance-parameter name="bin" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBin</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbin.c"
+                 line="4435">a #GstBin</doc>
             <type name="Bin" c:type="GstBin*"/>
           </instance-parameter>
           <parameter name="name" transfer-ownership="none">
-            <doc xml:space="preserve">the element name to search for</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbin.c"
+                 line="4436">the element name to search for</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
@@ -917,97 +1704,170 @@ name, or %NULL</doc>
       <method name="get_suppressed_flags"
               c:identifier="gst_bin_get_suppressed_flags"
               version="1.10">
-        <doc xml:space="preserve">Return the suppressed flags of the bin.
+        <doc xml:space="preserve"
+             filename="gst/gstbin.c"
+             line="1434">Return the suppressed flags of the bin.
 
 MT safe.</doc>
+        <source-position filename="gst/gstbin.h" line="254"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the bin's suppressed #GstElementFlags.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstbin.c"
+               line="1442">the bin's suppressed #GstElementFlags.</doc>
           <type name="ElementFlags" c:type="GstElementFlags"/>
         </return-value>
         <parameters>
           <instance-parameter name="bin" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBin</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbin.c"
+                 line="1436">a #GstBin</doc>
             <type name="Bin" c:type="GstBin*"/>
           </instance-parameter>
         </parameters>
       </method>
+      <method name="iterate_all_by_element_factory_name"
+              c:identifier="gst_bin_iterate_all_by_element_factory_name"
+              version="1.18">
+        <doc xml:space="preserve"
+             filename="gst/gstbin.c"
+             line="4587">Looks for all elements inside the bin with the given element factory name.
+The function recurses inside child bins. The iterator will yield a series of
+#GstElement that should be unreffed after use.
+
+MT safe. Caller owns returned value.</doc>
+        <source-position filename="gst/gstbin.h" line="241"/>
+        <return-value transfer-ownership="full" nullable="1">
+          <doc xml:space="preserve"
+               filename="gst/gstbin.c"
+               line="4598">a #GstIterator of #GstElement
+    for all elements in the bin with the given element factory name,
+    or %NULL.</doc>
+          <type name="Iterator" c:type="GstIterator*"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="bin" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst/gstbin.c"
+                 line="4589">a #GstBin</doc>
+            <type name="Bin" c:type="GstBin*"/>
+          </instance-parameter>
+          <parameter name="factory_name" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst/gstbin.c"
+                 line="4590">the name of the #GstElementFactory</doc>
+            <type name="utf8" c:type="const gchar*"/>
+          </parameter>
+        </parameters>
+      </method>
       <method name="iterate_all_by_interface"
               c:identifier="gst_bin_iterate_all_by_interface">
-        <doc xml:space="preserve">Looks for all elements inside the bin that implements the given
+        <doc xml:space="preserve"
+             filename="gst/gstbin.c"
+             line="4536">Looks for all elements inside the bin that implements the given
 interface. You can safely cast all returned elements to the given interface.
 The function recurses inside child bins. The iterator will yield a series
 of #GstElement that should be unreffed after use.
 
 MT safe.  Caller owns returned value.</doc>
+        <source-position filename="gst/gstbin.h" line="238"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">a #GstIterator of #GstElement
+          <doc xml:space="preserve"
+               filename="gst/gstbin.c"
+               line="4548">a #GstIterator of #GstElement
     for all elements in the bin implementing the given interface,
     or %NULL</doc>
           <type name="Iterator" c:type="GstIterator*"/>
         </return-value>
         <parameters>
           <instance-parameter name="bin" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBin</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbin.c"
+                 line="4538">a #GstBin</doc>
             <type name="Bin" c:type="GstBin*"/>
           </instance-parameter>
           <parameter name="iface" transfer-ownership="none">
-            <doc xml:space="preserve">the #GType of an interface</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbin.c"
+                 line="4539">the #GType of an interface</doc>
             <type name="GType" c:type="GType"/>
           </parameter>
         </parameters>
       </method>
       <method name="iterate_elements" c:identifier="gst_bin_iterate_elements">
-        <doc xml:space="preserve">Gets an iterator for the elements in this bin.
+        <doc xml:space="preserve"
+             filename="gst/gstbin.c"
+             line="1899">Gets an iterator for the elements in this bin.
 
 MT safe.  Caller owns returned value.</doc>
+        <source-position filename="gst/gstbin.h" line="223"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">a #GstIterator of #GstElement,
+          <doc xml:space="preserve"
+               filename="gst/gstbin.c"
+               line="1907">a #GstIterator of #GstElement,
 or %NULL</doc>
           <type name="Iterator" c:type="GstIterator*"/>
         </return-value>
         <parameters>
           <instance-parameter name="bin" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBin</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbin.c"
+                 line="1901">a #GstBin</doc>
             <type name="Bin" c:type="GstBin*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="iterate_recurse" c:identifier="gst_bin_iterate_recurse">
-        <doc xml:space="preserve">Gets an iterator for the elements in this bin.
+        <doc xml:space="preserve"
+             filename="gst/gstbin.c"
+             line="1939">Gets an iterator for the elements in this bin.
 This iterator recurses into GstBin children.
 
 MT safe.  Caller owns returned value.</doc>
+        <source-position filename="gst/gstbin.h" line="229"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">a #GstIterator of #GstElement,
+          <doc xml:space="preserve"
+               filename="gst/gstbin.c"
+               line="1948">a #GstIterator of #GstElement,
 or %NULL</doc>
           <type name="Iterator" c:type="GstIterator*"/>
         </return-value>
         <parameters>
           <instance-parameter name="bin" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBin</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbin.c"
+                 line="1941">a #GstBin</doc>
             <type name="Bin" c:type="GstBin*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="iterate_sinks" c:identifier="gst_bin_iterate_sinks">
-        <doc xml:space="preserve">Gets an iterator for all elements in the bin that have the
+        <doc xml:space="preserve"
+             filename="gst/gstbin.c"
+             line="1997">Gets an iterator for all elements in the bin that have the
 #GST_ELEMENT_FLAG_SINK flag set.
 
 MT safe.  Caller owns returned value.</doc>
+        <source-position filename="gst/gstbin.h" line="232"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">a #GstIterator of #GstElement,
+          <doc xml:space="preserve"
+               filename="gst/gstbin.c"
+               line="2006">a #GstIterator of #GstElement,
 or %NULL</doc>
           <type name="Iterator" c:type="GstIterator*"/>
         </return-value>
         <parameters>
           <instance-parameter name="bin" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBin</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbin.c"
+                 line="1999">a #GstBin</doc>
             <type name="Bin" c:type="GstBin*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="iterate_sorted" c:identifier="gst_bin_iterate_sorted">
-        <doc xml:space="preserve">Gets an iterator for the elements in this bin in topologically
+        <doc xml:space="preserve"
+             filename="gst/gstbin.c"
+             line="2447">Gets an iterator for the elements in this bin in topologically
 sorted order. This means that the elements are returned from
 the most downstream elements (sinks) to the sources.
 
@@ -1015,38 +1875,52 @@ This function is used internally to perform the state changes
 of the bin elements and for clock selection.
 
 MT safe.  Caller owns returned value.</doc>
+        <source-position filename="gst/gstbin.h" line="226"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">a #GstIterator of #GstElement,
+          <doc xml:space="preserve"
+               filename="gst/gstbin.c"
+               line="2460">a #GstIterator of #GstElement,
 or %NULL</doc>
           <type name="Iterator" c:type="GstIterator*"/>
         </return-value>
         <parameters>
           <instance-parameter name="bin" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBin</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbin.c"
+                 line="2449">a #GstBin</doc>
             <type name="Bin" c:type="GstBin*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="iterate_sources" c:identifier="gst_bin_iterate_sources">
-        <doc xml:space="preserve">Gets an iterator for all elements in the bin that have the
+        <doc xml:space="preserve"
+             filename="gst/gstbin.c"
+             line="2058">Gets an iterator for all elements in the bin that have the
 #GST_ELEMENT_FLAG_SOURCE flag set.
 
 MT safe.  Caller owns returned value.</doc>
+        <source-position filename="gst/gstbin.h" line="235"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">a #GstIterator of #GstElement,
+          <doc xml:space="preserve"
+               filename="gst/gstbin.c"
+               line="2067">a #GstIterator of #GstElement,
 or %NULL</doc>
           <type name="Iterator" c:type="GstIterator*"/>
         </return-value>
         <parameters>
           <instance-parameter name="bin" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBin</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbin.c"
+                 line="2060">a #GstBin</doc>
             <type name="Bin" c:type="GstBin*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="recalculate_latency"
               c:identifier="gst_bin_recalculate_latency">
-        <doc xml:space="preserve">Query @bin for the current latency using and reconfigures this latency to all the
+        <doc xml:space="preserve"
+             filename="gst/gstbin.c"
+             line="2730">Query @bin for the current latency using and reconfigures this latency to all the
 elements with a LATENCY event.
 
 This method is typically called on the pipeline when a #GST_MESSAGE_LATENCY
@@ -1054,19 +1928,26 @@ is posted on the bus.
 
 This function simply emits the 'do-latency' signal so any custom latency
 calculations will be performed.</doc>
+        <source-position filename="gst/gstbin.h" line="246"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the latency could be queried and reconfigured.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstbin.c"
+               line="2743">%TRUE if the latency could be queried and reconfigured.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="bin" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBin</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbin.c"
+                 line="2732">a #GstBin</doc>
             <type name="Bin" c:type="GstBin*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="remove" c:identifier="gst_bin_remove">
-        <doc xml:space="preserve">Removes the element from the bin, unparenting it as well.
+        <doc xml:space="preserve"
+             filename="gst/gstbin.c"
+             line="1846">Removes the element from the bin, unparenting it as well.
 Unparenting the element means that the element will be dereferenced,
 so if the bin holds the only reference to the element, the element
 will be freed in the process of removing it from the bin.  If you
@@ -1077,18 +1958,25 @@ If the element's pads are linked to other pads, the pads will be unlinked
 before the element is removed from the bin.
 
 MT safe.</doc>
+        <source-position filename="gst/gstbin.h" line="207"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the element could be removed, %FALSE if
+          <doc xml:space="preserve"
+               filename="gst/gstbin.c"
+               line="1863">%TRUE if the element could be removed, %FALSE if
 the bin does not want to remove the element.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="bin" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBin</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbin.c"
+                 line="1848">a #GstBin</doc>
             <type name="Bin" c:type="GstBin*"/>
           </instance-parameter>
           <parameter name="element" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstElement to remove</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbin.c"
+                 line="1849">the #GstElement to remove</doc>
             <type name="Element" c:type="GstElement*"/>
           </parameter>
         </parameters>
@@ -1096,22 +1984,31 @@ the bin does not want to remove the element.</doc>
       <method name="remove_many"
               c:identifier="gst_bin_remove_many"
               introspectable="0">
-        <doc xml:space="preserve">Remove a list of elements from a bin. This function is equivalent
+        <doc xml:space="preserve"
+             filename="gst/gstutils.c"
+             line="2713">Remove a list of elements from a bin. This function is equivalent
 to calling gst_bin_remove() with each member of the list.</doc>
+        <source-position filename="gst/gstutils.h" line="1134"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="bin" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBin</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="2715">a #GstBin</doc>
             <type name="Bin" c:type="GstBin*"/>
           </instance-parameter>
           <parameter name="element_1" transfer-ownership="none">
-            <doc xml:space="preserve">the first #GstElement to remove from the bin</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="2716">the first #GstElement to remove from the bin</doc>
             <type name="Element" c:type="GstElement*"/>
           </parameter>
           <parameter name="..." transfer-ownership="none">
-            <doc xml:space="preserve">%NULL-terminated list of elements to remove from the bin</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="2717">%NULL-terminated list of elements to remove from the bin</doc>
             <varargs/>
           </parameter>
         </parameters>
@@ -1119,22 +2016,29 @@ to calling gst_bin_remove() with each member of the list.</doc>
       <method name="set_suppressed_flags"
               c:identifier="gst_bin_set_suppressed_flags"
               version="1.10">
-        <doc xml:space="preserve">Suppress the given flags on the bin. #GstElementFlags of a
+        <doc xml:space="preserve"
+             filename="gst/gstbin.c"
+             line="1407">Suppress the given flags on the bin. #GstElementFlags of a
 child element are propagated when it is added to the bin.
 When suppressed flags are set, those specified flags will
 not be propagated to the bin.
 
 MT safe.</doc>
+        <source-position filename="gst/gstbin.h" line="251"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="bin" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBin</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbin.c"
+                 line="1409">a #GstBin</doc>
             <type name="Bin" c:type="GstBin*"/>
           </instance-parameter>
           <parameter name="flags" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstElementFlags to suppress</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbin.c"
+                 line="1410">the #GstElementFlags to suppress</doc>
             <type name="ElementFlags" c:type="GstElementFlags"/>
           </parameter>
         </parameters>
@@ -1142,28 +2046,39 @@ MT safe.</doc>
       <method name="sync_children_states"
               c:identifier="gst_bin_sync_children_states"
               version="1.6">
-        <doc xml:space="preserve">Synchronizes the state of every child of @bin with the state
+        <doc xml:space="preserve"
+             filename="gst/gstutils.c"
+             line="3358">Synchronizes the state of every child of @bin with the state
 of @bin. See also gst_element_sync_state_with_parent().</doc>
+        <source-position filename="gst/gstutils.h" line="1140"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if syncing the state was successful for all children,
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="3365">%TRUE if syncing the state was successful for all children,
  otherwise %FALSE.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="bin" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBin</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="3360">a #GstBin</doc>
             <type name="Bin" c:type="GstBin*"/>
           </instance-parameter>
         </parameters>
       </method>
       <property name="async-handling" writable="1" transfer-ownership="none">
-        <doc xml:space="preserve">If set to %TRUE, the bin will handle asynchronous state changes.
+        <doc xml:space="preserve"
+             filename="gst/gstbin.c"
+             line="345">If set to %TRUE, the bin will handle asynchronous state changes.
 This should be used only if the bin subclass is modifying the state
 of its children on its own.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </property>
       <property name="message-forward" writable="1" transfer-ownership="none">
-        <doc xml:space="preserve">Forward all children messages, even those that would normally be filtered by
+        <doc xml:space="preserve"
+             filename="gst/gstbin.c"
+             line="428">Forward all children messages, even those that would normally be filtered by
 the bin. This can be interesting when one wants to be notified of the EOS
 state of individual elements, for example.
 
@@ -1177,91 +2092,125 @@ forwarded message.</doc>
         <type name="Element" c:type="GstElement"/>
       </field>
       <field name="numchildren">
-        <doc xml:space="preserve">the number of children in this bin</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstbin.h"
+             line="101">the number of children in this bin</doc>
         <type name="gint" c:type="gint"/>
       </field>
       <field name="children">
-        <doc xml:space="preserve">the list of children in this bin</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstbin.h"
+             line="102">the list of children in this bin</doc>
         <type name="GLib.List" c:type="GList*">
           <type name="Element"/>
         </type>
       </field>
       <field name="children_cookie">
-        <doc xml:space="preserve">updated whenever @children changes</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstbin.h"
+             line="103">updated whenever @children changes</doc>
         <type name="guint32" c:type="guint32"/>
       </field>
       <field name="child_bus">
-        <doc xml:space="preserve">internal bus for handling child messages</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstbin.h"
+             line="104">internal bus for handling child messages</doc>
         <type name="Bus" c:type="GstBus*"/>
       </field>
       <field name="messages">
-        <doc xml:space="preserve">queued and cached messages</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstbin.h"
+             line="105">queued and cached messages</doc>
         <type name="GLib.List" c:type="GList*">
           <type name="Message"/>
         </type>
       </field>
       <field name="polling">
-        <doc xml:space="preserve">the bin is currently calculating its state</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstbin.h"
+             line="106">the bin is currently calculating its state</doc>
         <type name="gboolean" c:type="gboolean"/>
       </field>
       <field name="state_dirty">
-        <doc xml:space="preserve">the bin needs to recalculate its state (deprecated)</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstbin.h"
+             line="107">the bin needs to recalculate its state (deprecated)</doc>
         <type name="gboolean" c:type="gboolean"/>
       </field>
       <field name="clock_dirty">
-        <doc xml:space="preserve">the bin needs to select a new clock</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstbin.h"
+             line="108">the bin needs to select a new clock</doc>
         <type name="gboolean" c:type="gboolean"/>
       </field>
       <field name="provided_clock">
-        <doc xml:space="preserve">the last clock selected</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstbin.h"
+             line="109">the last clock selected</doc>
         <type name="Clock" c:type="GstClock*"/>
       </field>
       <field name="clock_provider">
-        <doc xml:space="preserve">the element that provided @provided_clock</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstbin.h"
+             line="110">the element that provided @provided_clock</doc>
         <type name="Element" c:type="GstElement*"/>
       </field>
       <field name="priv" readable="0" private="1">
         <type name="BinPrivate" c:type="GstBinPrivate*"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
       <glib:signal name="deep-element-added" when="first" version="1.10">
-        <doc xml:space="preserve">Will be emitted after the element was added to sub_bin.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstbin.c"
+             line="379">Will be emitted after the element was added to sub_bin.</doc>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <parameter name="sub_bin" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstBin the element was added to</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbin.c"
+                 line="382">the #GstBin the element was added to</doc>
             <type name="Bin"/>
           </parameter>
           <parameter name="element" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstElement that was added to @sub_bin</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbin.c"
+                 line="383">the #GstElement that was added to @sub_bin</doc>
             <type name="Element"/>
           </parameter>
         </parameters>
       </glib:signal>
       <glib:signal name="deep-element-removed" when="first" version="1.10">
-        <doc xml:space="preserve">Will be emitted after the element was removed from sub_bin.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstbin.c"
+             line="393">Will be emitted after the element was removed from sub_bin.</doc>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <parameter name="sub_bin" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstBin the element was removed from</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbin.c"
+                 line="396">the #GstBin the element was removed from</doc>
             <type name="Bin"/>
           </parameter>
           <parameter name="element" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstElement that was removed from @sub_bin</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbin.c"
+                 line="397">the #GstElement that was removed from @sub_bin</doc>
             <type name="Element"/>
           </parameter>
         </parameters>
       </glib:signal>
       <glib:signal name="do-latency" when="last">
-        <doc xml:space="preserve">Will be emitted when the bin needs to perform latency calculations. This
+        <doc xml:space="preserve"
+             filename="gst/gstbin.c"
+             line="407">Will be emitted when the bin needs to perform latency calculations. This
 signal is only emitted for toplevel bins or when async-handling is
 enabled.
 
@@ -1277,25 +2226,33 @@ the same pipeline.</doc>
         </return-value>
       </glib:signal>
       <glib:signal name="element-added" when="first">
-        <doc xml:space="preserve">Will be emitted after the element was added to the bin.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstbin.c"
+             line="357">Will be emitted after the element was added to the bin.</doc>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <parameter name="element" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstElement that was added to the bin</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbin.c"
+                 line="360">the #GstElement that was added to the bin</doc>
             <type name="Element"/>
           </parameter>
         </parameters>
       </glib:signal>
       <glib:signal name="element-removed" when="first">
-        <doc xml:space="preserve">Will be emitted after the element was removed from the bin.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstbin.c"
+             line="368">Will be emitted after the element was removed from the bin.</doc>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <parameter name="element" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstElement that was removed from the bin</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbin.c"
+                 line="371">the #GstElement that was removed from the bin</doc>
             <type name="Element"/>
           </parameter>
         </parameters>
@@ -1304,7 +2261,9 @@ the same pipeline.</doc>
     <record name="BinClass"
             c:type="GstBinClass"
             glib:is-gtype-struct-for="Bin">
-      <doc xml:space="preserve">Subclasses can override the @add_element and @remove_element to
+      <doc xml:space="preserve"
+           filename="gst/gstbin.h"
+           line="141">Subclasses can override the @add_element and @remove_element to
 update the list of children in the bin.
 
 The @handle_message method can be overridden to implement custom
@@ -1316,8 +2275,11 @@ added to any bin inside this bin, so it will also be called if a new child
 was added to a sub-bin of this bin. #GstBin implementations that override
 this message should chain up to the parent class implementation so the
 element-added-deep signal is emitted on all parents.</doc>
+      <source-position filename="gst/gstbin.h" line="193"/>
       <field name="parent_class">
-        <doc xml:space="preserve">bin parent class</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstbin.h"
+             line="143">bin parent class</doc>
         <type name="ElementClass" c:type="GstElementClass"/>
       </field>
       <field name="pool" readable="0" private="1">
@@ -1325,6 +2287,7 @@ element-added-deep signal is emitted on all parents.</doc>
       </field>
       <field name="element_added">
         <callback name="element_added">
+          <source-position filename="gst/gstbin.h" line="172"/>
           <return-value transfer-ownership="none">
             <type name="none" c:type="void"/>
           </return-value>
@@ -1340,6 +2303,7 @@ element-added-deep signal is emitted on all parents.</doc>
       </field>
       <field name="element_removed">
         <callback name="element_removed">
+          <source-position filename="gst/gstbin.h" line="173"/>
           <return-value transfer-ownership="none">
             <type name="none" c:type="void"/>
           </return-value>
@@ -1355,6 +2319,7 @@ element-added-deep signal is emitted on all parents.</doc>
       </field>
       <field name="add_element">
         <callback name="add_element">
+          <source-position filename="gst/gstbin.h" line="177"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -1370,6 +2335,7 @@ element-added-deep signal is emitted on all parents.</doc>
       </field>
       <field name="remove_element">
         <callback name="remove_element">
+          <source-position filename="gst/gstbin.h" line="178"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -1385,6 +2351,7 @@ element-added-deep signal is emitted on all parents.</doc>
       </field>
       <field name="handle_message">
         <callback name="handle_message">
+          <source-position filename="gst/gstbin.h" line="180"/>
           <return-value transfer-ownership="none">
             <type name="none" c:type="void"/>
           </return-value>
@@ -1400,6 +2367,7 @@ element-added-deep signal is emitted on all parents.</doc>
       </field>
       <field name="do_latency">
         <callback name="do_latency">
+          <source-position filename="gst/gstbin.h" line="184"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -1412,6 +2380,7 @@ element-added-deep signal is emitted on all parents.</doc>
       </field>
       <field name="deep_element_added">
         <callback name="deep_element_added">
+          <source-position filename="gst/gstbin.h" line="188"/>
           <return-value transfer-ownership="none">
             <type name="none" c:type="void"/>
           </return-value>
@@ -1430,6 +2399,7 @@ element-added-deep signal is emitted on all parents.</doc>
       </field>
       <field name="deep_element_removed">
         <callback name="deep_element_removed">
+          <source-position filename="gst/gstbin.h" line="189"/>
           <return-value transfer-ownership="none">
             <type name="none" c:type="void"/>
           </return-value>
@@ -1447,7 +2417,7 @@ element-added-deep signal is emitted on all parents.</doc>
         </callback>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="2">
+        <array zero-terminated="0" fixed-size="2">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -1456,46 +2426,60 @@ element-added-deep signal is emitted on all parents.</doc>
               glib:type-name="GstBinFlags"
               glib:get-type="gst_bin_flags_get_type"
               c:type="GstBinFlags">
-      <doc xml:space="preserve">GstBinFlags are a set of flags specific to bins. Most are set/used
+      <doc xml:space="preserve"
+           filename="gst/gstbin.h"
+           line="41">GstBinFlags are a set of flags specific to bins. Most are set/used
 internally. They can be checked using the GST_OBJECT_FLAG_IS_SET () macro,
 and (un)set using GST_OBJECT_FLAG_SET () and GST_OBJECT_FLAG_UNSET ().</doc>
       <member name="no_resync"
               value="16384"
               c:identifier="GST_BIN_FLAG_NO_RESYNC"
               glib:nick="no-resync">
-        <doc xml:space="preserve">don't resync a state change when elements are
-            added or linked in the bin (Since 1.0.5)</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstbin.h"
+             line="43">don't resync a state change when elements are
+            added or linked in the bin (Since: 1.0.5)</doc>
       </member>
       <member name="streams_aware"
               value="32768"
               c:identifier="GST_BIN_FLAG_STREAMS_AWARE"
               glib:nick="streams-aware">
-        <doc xml:space="preserve">Indicates whether the bin can handle elements
+        <doc xml:space="preserve"
+             filename="gst/gstbin.h"
+             line="45">Indicates whether the bin can handle elements
             that add/remove source pads at any point in time without
-            first posting a no-more-pads signal (Since 1.10)</doc>
+            first posting a no-more-pads signal (Since: 1.10)</doc>
       </member>
       <member name="last"
               value="524288"
               c:identifier="GST_BIN_FLAG_LAST"
               glib:nick="last">
-        <doc xml:space="preserve">the last enum in the series of flags for bins.
+        <doc xml:space="preserve"
+             filename="gst/gstbin.h"
+             line="48">the last enum in the series of flags for bins.
 Derived classes can use this as first value in a list of flags.</doc>
       </member>
     </bitfield>
     <record name="BinPrivate" c:type="GstBinPrivate" disguised="1">
+      <source-position filename="gst/gstbin.h" line="75"/>
     </record>
     <class name="Bitmask"
            c:symbol-prefix="bitmask"
            glib:type-name="GstBitmask"
            glib:get-type="gst_bitmask_get_type"
            glib:fundamental="1">
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.h"
+           line="358">A fundamental type that describes a 64-bit bitmask</doc>
     </class>
     <record name="Buffer"
             c:type="GstBuffer"
             glib:type-name="GstBuffer"
             glib:get-type="gst_buffer_get_type"
             c:symbol-prefix="buffer">
-      <doc xml:space="preserve">Buffers are the basic unit of data transfer in GStreamer. They contain the
+      <doc xml:space="preserve"
+           filename="gst/gstbuffer.c"
+           line="23">Buffers are the basic unit of data transfer in GStreamer. They contain the
 timing and offset along with other arbitrary metadata that is associated
 with the #GstMemory blocks that the buffer contains.
 
@@ -1582,34 +2566,47 @@ to hold a reference to another buffer that is only released when the child
 Typically, #GstParentBufferMeta is used when the child buffer is directly
 using the #GstMemory of the parent buffer, and wants to prevent the parent
 buffer from being returned to a buffer pool until the #GstMemory is available
-for re-use. (Since 1.6)</doc>
+for re-use. (Since: 1.6)</doc>
+      <source-position filename="gst/gstbuffer.h" line="278"/>
       <field name="mini_object" writable="1">
-        <doc xml:space="preserve">the parent structure</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.h"
+             line="243">the parent structure</doc>
         <type name="MiniObject" c:type="GstMiniObject"/>
       </field>
       <field name="pool" writable="1">
-        <doc xml:space="preserve">pointer to the pool owner of the buffer</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.h"
+             line="244">pointer to the pool owner of the buffer</doc>
         <type name="BufferPool" c:type="GstBufferPool*"/>
       </field>
       <field name="pts" writable="1">
-        <doc xml:space="preserve">presentation timestamp of the buffer, can be #GST_CLOCK_TIME_NONE when the
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.h"
+             line="245">presentation timestamp of the buffer, can be #GST_CLOCK_TIME_NONE when the
     pts is not known or relevant. The pts contains the timestamp when the
     media should be presented to the user.</doc>
         <type name="ClockTime" c:type="GstClockTime"/>
       </field>
       <field name="dts" writable="1">
-        <doc xml:space="preserve">decoding timestamp of the buffer, can be #GST_CLOCK_TIME_NONE when the
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.h"
+             line="248">decoding timestamp of the buffer, can be #GST_CLOCK_TIME_NONE when the
     dts is not known or relevant. The dts contains the timestamp when the
     media should be processed.</doc>
         <type name="ClockTime" c:type="GstClockTime"/>
       </field>
       <field name="duration" writable="1">
-        <doc xml:space="preserve">duration in time of the buffer data, can be #GST_CLOCK_TIME_NONE
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.h"
+             line="251">duration in time of the buffer data, can be #GST_CLOCK_TIME_NONE
     when the duration is not known or relevant.</doc>
         <type name="ClockTime" c:type="GstClockTime"/>
       </field>
       <field name="offset" writable="1">
-        <doc xml:space="preserve">a media specific offset for the buffer data.
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.h"
+             line="253">a media specific offset for the buffer data.
     For video frames, this is the frame number of this buffer.
     For audio samples, this is the offset of the first sample in this buffer.
     For file data or compressed data this is the byte offset of the first
@@ -1617,21 +2614,30 @@ for re-use. (Since 1.6)</doc>
         <type name="guint64" c:type="guint64"/>
       </field>
       <field name="offset_end" writable="1">
-        <doc xml:space="preserve">the last offset contained in this buffer. It has the same
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.h"
+             line="258">the last offset contained in this buffer. It has the same
     format as @offset.</doc>
         <type name="guint64" c:type="guint64"/>
       </field>
       <constructor name="new" c:identifier="gst_buffer_new">
-        <doc xml:space="preserve">Creates a newly allocated buffer without any data.
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.c"
+             line="833">Creates a newly allocated buffer without any data.
 
 MT safe.</doc>
+        <source-position filename="gst/gstbuffer.h" line="289"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the new #GstBuffer.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstbuffer.c"
+               line="840">the new #GstBuffer.</doc>
           <type name="Buffer" c:type="GstBuffer*"/>
         </return-value>
       </constructor>
       <constructor name="new_allocate" c:identifier="gst_buffer_new_allocate">
-        <doc xml:space="preserve">Tries to create a newly allocated buffer with data of the given size and
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.c"
+             line="855">Tries to create a newly allocated buffer with data of the given size and
 extra parameters from @allocator. If the requested amount of memory can't be
 allocated, %NULL will be returned. The allocated buffer memory is not cleared.
 
@@ -1640,8 +2646,11 @@ When @allocator is %NULL, the default memory allocator will be used.
 Note that when @size == 0, the buffer will not have memory associated with it.
 
 MT safe.</doc>
+        <source-position filename="gst/gstbuffer.h" line="292"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">a new #GstBuffer, or %NULL if
+          <doc xml:space="preserve"
+               filename="gst/gstbuffer.c"
+               line="872">a new #GstBuffer, or %NULL if
     the memory couldn't be allocated.</doc>
           <type name="Buffer" c:type="GstBuffer*"/>
         </return-value>
@@ -1650,41 +2659,56 @@ MT safe.</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">the #GstAllocator to use, or %NULL to use the
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="857">the #GstAllocator to use, or %NULL to use the
     default allocator</doc>
             <type name="Allocator" c:type="GstAllocator*"/>
           </parameter>
           <parameter name="size" transfer-ownership="none">
-            <doc xml:space="preserve">the size in bytes of the new buffer's data.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="859">the size in bytes of the new buffer's data.</doc>
             <type name="gsize" c:type="gsize"/>
           </parameter>
           <parameter name="params"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">optional parameters</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="860">optional parameters</doc>
             <type name="AllocationParams" c:type="GstAllocationParams*"/>
           </parameter>
         </parameters>
       </constructor>
       <constructor name="new_wrapped" c:identifier="gst_buffer_new_wrapped">
-        <doc xml:space="preserve">Creates a new buffer that wraps the given @data. The memory will be freed
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.c"
+             line="1001">Creates a new buffer that wraps the given @data. The memory will be freed
 with g_free and will be marked writable.
 
 MT safe.</doc>
+        <source-position filename="gst/gstbuffer.h" line="299"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new #GstBuffer</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstbuffer.c"
+               line="1011">a new #GstBuffer</doc>
           <type name="Buffer" c:type="GstBuffer*"/>
         </return-value>
         <parameters>
           <parameter name="data" transfer-ownership="full">
-            <doc xml:space="preserve">data to wrap</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="1003">data to wrap</doc>
             <array length="1" zero-terminated="0" c:type="gpointer">
               <type name="guint8"/>
             </array>
           </parameter>
           <parameter name="size" transfer-ownership="none">
-            <doc xml:space="preserve">allocated size of @data</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="1004">allocated size of @data</doc>
             <type name="gsize" c:type="gsize"/>
           </parameter>
         </parameters>
@@ -1692,24 +2716,33 @@ MT safe.</doc>
       <constructor name="new_wrapped_bytes"
                    c:identifier="gst_buffer_new_wrapped_bytes"
                    version="1.16">
-        <doc xml:space="preserve">Creates a new #GstBuffer that wraps the given @bytes. The data inside
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.c"
+             line="1019">Creates a new #GstBuffer that wraps the given @bytes. The data inside
 @bytes cannot be %NULL and the resulting buffer will be marked as read only.
 
 MT safe.</doc>
+        <source-position filename="gst/gstbuffer.h" line="301"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new #GstBuffer wrapping @bytes</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstbuffer.c"
+               line="1028">a new #GstBuffer wrapping @bytes</doc>
           <type name="Buffer" c:type="GstBuffer*"/>
         </return-value>
         <parameters>
           <parameter name="bytes" transfer-ownership="none">
-            <doc xml:space="preserve">a #GBytes to wrap</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="1021">a #GBytes to wrap</doc>
             <type name="GLib.Bytes" c:type="GBytes*"/>
           </parameter>
         </parameters>
       </constructor>
       <constructor name="new_wrapped_full"
                    c:identifier="gst_buffer_new_wrapped_full">
-        <doc xml:space="preserve">Allocate a new buffer that wraps the given memory. @data must point to
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.c"
+             line="961">Allocate a new buffer that wraps the given memory. @data must point to
 @maxsize of memory, the wrapped buffer will have the region from @offset and
 @size visible.
 
@@ -1717,38 +2750,53 @@ When the buffer is destroyed, @notify will be called with @user_data.
 
 The prefix/padding must be filled with 0 if @flags contains
 #GST_MEMORY_FLAG_ZERO_PREFIXED and #GST_MEMORY_FLAG_ZERO_PADDED respectively.</doc>
+        <source-position filename="gst/gstbuffer.h" line="295"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new #GstBuffer</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstbuffer.c"
+               line="980">a new #GstBuffer</doc>
           <type name="Buffer" c:type="GstBuffer*"/>
         </return-value>
         <parameters>
           <parameter name="flags" transfer-ownership="none">
-            <doc xml:space="preserve">#GstMemoryFlags</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="963">#GstMemoryFlags</doc>
             <type name="MemoryFlags" c:type="GstMemoryFlags"/>
           </parameter>
           <parameter name="data" transfer-ownership="none">
-            <doc xml:space="preserve">data to wrap</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="964">data to wrap</doc>
             <array length="4" zero-terminated="0" c:type="gpointer">
               <type name="guint8"/>
             </array>
           </parameter>
           <parameter name="maxsize" transfer-ownership="none">
-            <doc xml:space="preserve">allocated size of @data</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="965">allocated size of @data</doc>
             <type name="gsize" c:type="gsize"/>
           </parameter>
           <parameter name="offset" transfer-ownership="none">
-            <doc xml:space="preserve">offset in @data</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="966">offset in @data</doc>
             <type name="gsize" c:type="gsize"/>
           </parameter>
           <parameter name="size" transfer-ownership="none">
-            <doc xml:space="preserve">size of valid data</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="967">size of valid data</doc>
             <type name="gsize" c:type="gsize"/>
           </parameter>
           <parameter name="user_data"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">user_data</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="968">user_data</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
           <parameter name="notify"
@@ -1757,31 +2805,44 @@ The prefix/padding must be filled with 0 if @flags contains
                      allow-none="1"
                      scope="async"
                      closure="5">
-            <doc xml:space="preserve">called with @user_data when the memory is freed</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="969">called with @user_data when the memory is freed</doc>
             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
           </parameter>
         </parameters>
       </constructor>
       <method name="add_meta" c:identifier="gst_buffer_add_meta">
-        <doc xml:space="preserve">Add metadata for @info to @buffer using the parameters in @params.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.c"
+             line="2268">Add metadata for @info to @buffer using the parameters in @params.</doc>
+        <source-position filename="gst/gstbuffer.h" line="650"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">the metadata for the api in @info on @buffer.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstbuffer.c"
+               line="2276">the metadata for the api in @info on @buffer.</doc>
           <type name="Meta" c:type="GstMeta*"/>
         </return-value>
         <parameters>
           <instance-parameter name="buffer" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBuffer</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="2270">a #GstBuffer</doc>
             <type name="Buffer" c:type="GstBuffer*"/>
           </instance-parameter>
           <parameter name="info" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstMetaInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="2271">a #GstMetaInfo</doc>
             <type name="MetaInfo" c:type="const GstMetaInfo*"/>
           </parameter>
           <parameter name="params"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">params for @info</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="2272">params for @info</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
         </parameters>
@@ -1789,19 +2850,28 @@ The prefix/padding must be filled with 0 if @flags contains
       <method name="add_parent_buffer_meta"
               c:identifier="gst_buffer_add_parent_buffer_meta"
               version="1.6">
-        <doc xml:space="preserve">Add a #GstParentBufferMeta to @buffer that holds a reference on
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.c"
+             line="2571">Add a #GstParentBufferMeta to @buffer that holds a reference on
 @ref until the buffer is freed.</doc>
+        <source-position filename="gst/gstbuffer.h" line="745"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">The #GstParentBufferMeta that was added to the buffer</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstbuffer.c"
+               line="2579">The #GstParentBufferMeta that was added to the buffer</doc>
           <type name="ParentBufferMeta" c:type="GstParentBufferMeta*"/>
         </return-value>
         <parameters>
           <instance-parameter name="buffer" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBuffer</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="2573">a #GstBuffer</doc>
             <type name="Buffer" c:type="GstBuffer*"/>
           </instance-parameter>
           <parameter name="ref" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBuffer to ref</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="2574">a #GstBuffer to ref</doc>
             <type name="Buffer" c:type="GstBuffer*"/>
           </parameter>
         </parameters>
@@ -1809,20 +2879,29 @@ The prefix/padding must be filled with 0 if @flags contains
       <method name="add_protection_meta"
               c:identifier="gst_buffer_add_protection_meta"
               version="1.6">
-        <doc xml:space="preserve">Attaches protection metadata to a #GstBuffer.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a pointer to the added #GstProtectionMeta if successful; %NULL if
+        <doc xml:space="preserve"
+             filename="gst/gstprotection.c"
+             line="127">Attaches protection metadata to a #GstBuffer.</doc>
+        <source-position filename="gst/gstprotection.h" line="90"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstprotection.c"
+               line="137">a pointer to the added #GstProtectionMeta if successful; %NULL if
 unsuccessful.</doc>
           <type name="ProtectionMeta" c:type="GstProtectionMeta*"/>
         </return-value>
         <parameters>
           <instance-parameter name="buffer" transfer-ownership="none">
-            <doc xml:space="preserve">#GstBuffer holding an encrypted sample, to which protection
+            <doc xml:space="preserve"
+                 filename="gst/gstprotection.c"
+                 line="129">#GstBuffer holding an encrypted sample, to which protection
     metadata should be added.</doc>
             <type name="Buffer" c:type="GstBuffer*"/>
           </instance-parameter>
           <parameter name="info" transfer-ownership="full">
-            <doc xml:space="preserve">a #GstStructure holding cryptographic
+            <doc xml:space="preserve"
+                 filename="gst/gstprotection.c"
+                 line="131">a #GstStructure holding cryptographic
     information relating to the sample contained in @buffer. This
     function takes ownership of @info.</doc>
             <type name="Structure" c:type="GstStructure*"/>
@@ -1832,152 +2911,242 @@ unsuccessful.</doc>
       <method name="add_reference_timestamp_meta"
               c:identifier="gst_buffer_add_reference_timestamp_meta"
               version="1.14">
-        <doc xml:space="preserve">Add a #GstReferenceTimestampMeta to @buffer that holds a @timestamp and
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.c"
+             line="2702">Add a #GstReferenceTimestampMeta to @buffer that holds a @timestamp and
 optionally @duration based on a specific timestamp @reference. See the
 documentation of #GstReferenceTimestampMeta for details.</doc>
+        <source-position filename="gst/gstbuffer.h" line="790"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">The #GstReferenceTimestampMeta that was added to the buffer</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstbuffer.c"
+               line="2713">The #GstReferenceTimestampMeta that was added to the buffer</doc>
           <type name="ReferenceTimestampMeta"
                 c:type="GstReferenceTimestampMeta*"/>
         </return-value>
         <parameters>
           <instance-parameter name="buffer" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBuffer</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="2704">a #GstBuffer</doc>
             <type name="Buffer" c:type="GstBuffer*"/>
           </instance-parameter>
           <parameter name="reference" transfer-ownership="none">
-            <doc xml:space="preserve">identifier for the timestamp reference.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="2705">identifier for the timestamp reference.</doc>
             <type name="Caps" c:type="GstCaps*"/>
           </parameter>
           <parameter name="timestamp" transfer-ownership="none">
-            <doc xml:space="preserve">timestamp</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="2706">timestamp</doc>
             <type name="ClockTime" c:type="GstClockTime"/>
           </parameter>
           <parameter name="duration" transfer-ownership="none">
-            <doc xml:space="preserve">duration, or %GST_CLOCK_TIME_NONE</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="2707">duration, or %GST_CLOCK_TIME_NONE</doc>
             <type name="ClockTime" c:type="GstClockTime"/>
           </parameter>
         </parameters>
       </method>
       <method name="append" c:identifier="gst_buffer_append">
-        <doc xml:space="preserve">Append all the memory from @buf2 to @buf1. The result buffer will contain a
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.c"
+             line="2149">Append all the memory from @buf2 to @buf1. The result buffer will contain a
 concatenation of the memory of @buf1 and @buf2.</doc>
+        <source-position filename="gst/gstbuffer.h" line="617"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the new #GstBuffer that contains the memory
+          <doc xml:space="preserve"
+               filename="gst/gstbuffer.c"
+               line="2157">the new #GstBuffer that contains the memory
     of the two source buffers.</doc>
           <type name="Buffer" c:type="GstBuffer*"/>
         </return-value>
         <parameters>
           <instance-parameter name="buf1" transfer-ownership="full">
-            <doc xml:space="preserve">the first source #GstBuffer to append.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="2151">the first source #GstBuffer to append.</doc>
             <type name="Buffer" c:type="GstBuffer*"/>
           </instance-parameter>
           <parameter name="buf2" transfer-ownership="full">
-            <doc xml:space="preserve">the second source #GstBuffer to append.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="2152">the second source #GstBuffer to append.</doc>
             <type name="Buffer" c:type="GstBuffer*"/>
           </parameter>
         </parameters>
       </method>
       <method name="append_memory" c:identifier="gst_buffer_append_memory">
-        <doc xml:space="preserve">Append the memory block @mem to @buffer. This function takes
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.c"
+             line="1080">Append the memory block @mem to @buffer. This function takes
 ownership of @mem and thus doesn't increase its refcount.
 
 This function is identical to gst_buffer_insert_memory() with an index of -1.
 See gst_buffer_insert_memory() for more details.</doc>
+        <source-position filename="gst/gstbuffer.h" line="327"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="buffer" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBuffer.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="1082">a #GstBuffer.</doc>
             <type name="Buffer" c:type="GstBuffer*"/>
           </instance-parameter>
           <parameter name="mem" transfer-ownership="full">
-            <doc xml:space="preserve">a #GstMemory.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="1083">a #GstMemory.</doc>
             <type name="Memory" c:type="GstMemory*"/>
           </parameter>
         </parameters>
       </method>
       <method name="append_region" c:identifier="gst_buffer_append_region">
-        <doc xml:space="preserve">Append @size bytes at @offset from @buf2 to @buf1. The result buffer will
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.c"
+             line="2166">Append @size bytes at @offset from @buf2 to @buf1. The result buffer will
 contain a concatenation of the memory of @buf1 and the requested region of
 @buf2.</doc>
+        <source-position filename="gst/gstbuffer.h" line="614"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the new #GstBuffer that contains the memory
+          <doc xml:space="preserve"
+               filename="gst/gstbuffer.c"
+               line="2177">the new #GstBuffer that contains the memory
     of the two source buffers.</doc>
           <type name="Buffer" c:type="GstBuffer*"/>
         </return-value>
         <parameters>
           <instance-parameter name="buf1" transfer-ownership="full">
-            <doc xml:space="preserve">the first source #GstBuffer to append.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="2168">the first source #GstBuffer to append.</doc>
             <type name="Buffer" c:type="GstBuffer*"/>
           </instance-parameter>
           <parameter name="buf2" transfer-ownership="full">
-            <doc xml:space="preserve">the second source #GstBuffer to append.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="2169">the second source #GstBuffer to append.</doc>
             <type name="Buffer" c:type="GstBuffer*"/>
           </parameter>
           <parameter name="offset" transfer-ownership="none">
-            <doc xml:space="preserve">the offset in @buf2</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="2170">the offset in @buf2</doc>
             <type name="gssize" c:type="gssize"/>
           </parameter>
           <parameter name="size" transfer-ownership="none">
-            <doc xml:space="preserve">the size or -1 of @buf2</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="2171">the size or -1 of @buf2</doc>
             <type name="gssize" c:type="gssize"/>
           </parameter>
         </parameters>
       </method>
+      <method name="copy" c:identifier="gst_buffer_copy" introspectable="0">
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.h"
+             line="469">Create a copy of the given buffer. This will only copy the buffer's
+data to a newly allocated memory if needed (if the type of memory
+requires it), otherwise the underlying data is just referenced.
+Check gst_buffer_copy_deep() if you want to force the data
+to be copied to newly allocated memory.</doc>
+        <source-position filename="gst/gstbuffer.h" line="481"/>
+        <return-value transfer-ownership="full">
+          <doc xml:space="preserve"
+               filename="gst/gstbuffer.h"
+               line="479">a new copy of @buf.</doc>
+          <type name="Buffer" c:type="GstBuffer*"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="buf" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.h"
+                 line="471">a #GstBuffer.</doc>
+            <type name="Buffer" c:type="const GstBuffer*"/>
+          </instance-parameter>
+        </parameters>
+      </method>
       <method name="copy_deep"
               c:identifier="gst_buffer_copy_deep"
               version="1.6">
-        <doc xml:space="preserve">Create a copy of the given buffer. This will make a newly allocated
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.c"
+             line="725">Create a copy of the given buffer. This will make a newly allocated
 copy of the data the source buffer contains.</doc>
+        <source-position filename="gst/gstbuffer.h" line="489"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new copy of @buf.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstbuffer.c"
+               line="732">a new copy of @buf.</doc>
           <type name="Buffer" c:type="GstBuffer*"/>
         </return-value>
         <parameters>
           <instance-parameter name="buf" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBuffer.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="727">a #GstBuffer.</doc>
             <type name="Buffer" c:type="const GstBuffer*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="copy_into" c:identifier="gst_buffer_copy_into">
-        <doc xml:space="preserve">Copies the information from @src into @dest.
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.c"
+             line="516">Copies the information from @src into @dest.
 
 If @dest already contains memory and @flags contains GST_BUFFER_COPY_MEMORY,
 the memory from @src will be appended to @dest.
 
 @flags indicate which fields will be copied.</doc>
+        <source-position filename="gst/gstbuffer.h" line="541"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the copying succeeded, %FALSE otherwise.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstbuffer.c"
+               line="531">%TRUE if the copying succeeded, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="dest" transfer-ownership="none">
-            <doc xml:space="preserve">a destination #GstBuffer</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="518">a destination #GstBuffer</doc>
             <type name="Buffer" c:type="GstBuffer*"/>
           </instance-parameter>
           <parameter name="src" transfer-ownership="none">
-            <doc xml:space="preserve">a source #GstBuffer</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="519">a source #GstBuffer</doc>
             <type name="Buffer" c:type="GstBuffer*"/>
           </parameter>
           <parameter name="flags" transfer-ownership="none">
-            <doc xml:space="preserve">flags indicating what metadata fields should be copied.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="520">flags indicating what metadata fields should be copied.</doc>
             <type name="BufferCopyFlags" c:type="GstBufferCopyFlags"/>
           </parameter>
           <parameter name="offset" transfer-ownership="none">
-            <doc xml:space="preserve">offset to copy from</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="521">offset to copy from</doc>
             <type name="gsize" c:type="gsize"/>
           </parameter>
           <parameter name="size" transfer-ownership="none">
-            <doc xml:space="preserve">total size to copy. If -1, all data is copied.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="522">total size to copy. If -1, all data is copied.</doc>
             <type name="gsize" c:type="gsize"/>
           </parameter>
         </parameters>
       </method>
       <method name="copy_region" c:identifier="gst_buffer_copy_region">
-        <doc xml:space="preserve">Creates a sub-buffer from @parent at @offset and @size.
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.c"
+             line="2106">Creates a sub-buffer from @parent at @offset and @size.
 This sub-buffer uses the actual memory space of the parent buffer.
 This function will copy the offset and timestamp fields when the
 offset is 0. If not, they will be set to #GST_CLOCK_TIME_NONE and
@@ -1987,53 +3156,75 @@ duration and offset end fields are also copied. If not they will be set
 to #GST_CLOCK_TIME_NONE and #GST_BUFFER_OFFSET_NONE.
 
 MT safe.</doc>
+        <source-position filename="gst/gstbuffer.h" line="608"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the new #GstBuffer or %NULL if the arguments were
+          <doc xml:space="preserve"
+               filename="gst/gstbuffer.c"
+               line="2126">the new #GstBuffer or %NULL if the arguments were
     invalid.</doc>
           <type name="Buffer" c:type="GstBuffer*"/>
         </return-value>
         <parameters>
           <instance-parameter name="parent" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBuffer.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="2108">a #GstBuffer.</doc>
             <type name="Buffer" c:type="GstBuffer*"/>
           </instance-parameter>
           <parameter name="flags" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstBufferCopyFlags</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="2109">the #GstBufferCopyFlags</doc>
             <type name="BufferCopyFlags" c:type="GstBufferCopyFlags"/>
           </parameter>
           <parameter name="offset" transfer-ownership="none">
-            <doc xml:space="preserve">the offset into parent #GstBuffer at which the new sub-buffer
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="2110">the offset into parent #GstBuffer at which the new sub-buffer
          begins.</doc>
             <type name="gsize" c:type="gsize"/>
           </parameter>
           <parameter name="size" transfer-ownership="none">
-            <doc xml:space="preserve">the size of the new #GstBuffer sub-buffer, in bytes. If -1, all
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="2112">the size of the new #GstBuffer sub-buffer, in bytes. If -1, all
        data is copied.</doc>
             <type name="gsize" c:type="gsize"/>
           </parameter>
         </parameters>
       </method>
       <method name="extract" c:identifier="gst_buffer_extract">
-        <doc xml:space="preserve">Copy @size bytes starting from @offset in @buffer to @dest.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The amount of bytes extracted. This value can be lower than @size
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.c"
+             line="1954">Copy @size bytes starting from @offset in @buffer to @dest.</doc>
+        <source-position filename="gst/gstbuffer.h" line="360"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstbuffer.c"
+               line="1964">The amount of bytes extracted. This value can be lower than @size
    when @buffer did not contain enough data.</doc>
           <type name="gsize" c:type="gsize"/>
         </return-value>
         <parameters>
           <instance-parameter name="buffer" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBuffer.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="1956">a #GstBuffer.</doc>
             <type name="Buffer" c:type="GstBuffer*"/>
           </instance-parameter>
           <parameter name="offset" transfer-ownership="none">
-            <doc xml:space="preserve">the offset to extract</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="1957">the offset to extract</doc>
             <type name="gsize" c:type="gsize"/>
           </parameter>
           <parameter name="dest"
                      direction="out"
                      caller-allocates="1"
                      transfer-ownership="none">
-            <doc xml:space="preserve">
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="1958">
     the destination address</doc>
             <array length="2" zero-terminated="0" c:type="gpointer">
               <type name="guint8"/>
@@ -2043,7 +3234,9 @@ MT safe.</doc>
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">the size to extract</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="1960">the size to extract</doc>
             <type name="gsize" c:type="gsize"/>
           </parameter>
         </parameters>
@@ -2051,29 +3244,40 @@ MT safe.</doc>
       <method name="extract_dup"
               c:identifier="gst_buffer_extract_dup"
               version="1.0.10">
-        <doc xml:space="preserve">Extracts a copy of at most @size bytes the data at @offset into
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.c"
+             line="2536">Extracts a copy of at most @size bytes the data at @offset into
 newly-allocated memory. @dest must be freed using g_free() when done.</doc>
+        <source-position filename="gst/gstbuffer.h" line="396"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="buffer" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBuffer</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="2538">a #GstBuffer</doc>
             <type name="Buffer" c:type="GstBuffer*"/>
           </instance-parameter>
           <parameter name="offset" transfer-ownership="none">
-            <doc xml:space="preserve">the offset to extract</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="2539">the offset to extract</doc>
             <type name="gsize" c:type="gsize"/>
           </parameter>
           <parameter name="size" transfer-ownership="none">
-            <doc xml:space="preserve">the size to extract</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="2540">the size to extract</doc>
             <type name="gsize" c:type="gsize"/>
           </parameter>
           <parameter name="dest"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">A pointer where
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="2541">A pointer where
  the destination array will be written. Might be %NULL if the size is 0.</doc>
             <array length="3" zero-terminated="0" c:type="gpointer*">
               <type name="guint8"/>
@@ -2083,41 +3287,58 @@ newly-allocated memory. @dest must be freed using g_free() when done.</doc>
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">A location where the size of @dest can be written</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="2543">A location where the size of @dest can be written</doc>
             <type name="gsize" c:type="gsize*"/>
           </parameter>
         </parameters>
       </method>
       <method name="fill" c:identifier="gst_buffer_fill">
-        <doc xml:space="preserve">Copy @size bytes from @src to @buffer at @offset.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The amount of bytes copied. This value can be lower than @size
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.c"
+             line="1902">Copy @size bytes from @src to @buffer at @offset.</doc>
+        <source-position filename="gst/gstbuffer.h" line="357"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstbuffer.c"
+               line="1911">The amount of bytes copied. This value can be lower than @size
    when @buffer did not contain enough data.</doc>
           <type name="gsize" c:type="gsize"/>
         </return-value>
         <parameters>
           <instance-parameter name="buffer" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBuffer.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="1904">a #GstBuffer.</doc>
             <type name="Buffer" c:type="GstBuffer*"/>
           </instance-parameter>
           <parameter name="offset" transfer-ownership="none">
-            <doc xml:space="preserve">the offset to fill</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="1905">the offset to fill</doc>
             <type name="gsize" c:type="gsize"/>
           </parameter>
           <parameter name="src" transfer-ownership="none">
-            <doc xml:space="preserve">the source address</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="1906">the source address</doc>
             <array length="2" zero-terminated="0" c:type="gconstpointer">
               <type name="guint8"/>
             </array>
           </parameter>
           <parameter name="size" transfer-ownership="none">
-            <doc xml:space="preserve">the size to fill</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="1907">the size to fill</doc>
             <type name="gsize" c:type="gsize"/>
           </parameter>
         </parameters>
       </method>
       <method name="find_memory" c:identifier="gst_buffer_find_memory">
-        <doc xml:space="preserve">Find the memory blocks that span @size bytes starting from @offset
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.c"
+             line="1356">Find the memory blocks that span @size bytes starting from @offset
 in @buffer.
 
 When this function returns %TRUE, @idx will contain the index of the first
@@ -2127,67 +3348,91 @@ the number of bytes to skip in the memory block at @idx to get to the byte
 for @offset.
 
 @size can be -1 to get all the memory blocks after @idx.</doc>
+        <source-position filename="gst/gstbuffer.h" line="348"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE when @size bytes starting from @offset could be found in
+          <doc xml:space="preserve"
+               filename="gst/gstbuffer.c"
+               line="1376">%TRUE when @size bytes starting from @offset could be found in
 @buffer and @idx, @length and @skip will be filled.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="buffer" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBuffer.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="1358">a #GstBuffer.</doc>
             <type name="Buffer" c:type="GstBuffer*"/>
           </instance-parameter>
           <parameter name="offset" transfer-ownership="none">
-            <doc xml:space="preserve">an offset</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="1359">an offset</doc>
             <type name="gsize" c:type="gsize"/>
           </parameter>
           <parameter name="size" transfer-ownership="none">
-            <doc xml:space="preserve">a size</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="1360">a size</doc>
             <type name="gsize" c:type="gsize"/>
           </parameter>
           <parameter name="idx"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">pointer to index</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="1361">pointer to index</doc>
             <type name="guint" c:type="guint*"/>
           </parameter>
           <parameter name="length"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">pointer to length</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="1362">pointer to length</doc>
             <type name="guint" c:type="guint*"/>
           </parameter>
           <parameter name="skip"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">pointer to skip</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="1363">pointer to skip</doc>
             <type name="gsize" c:type="gsize*"/>
           </parameter>
         </parameters>
       </method>
       <method name="foreach_meta" c:identifier="gst_buffer_foreach_meta">
-        <doc xml:space="preserve">Call @func with @user_data for each meta in @buffer.
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.c"
+             line="2464">Call @func with @user_data for each meta in @buffer.
 
 @func can modify the passed meta pointer or its contents. The return value
 of @func define if this function returns or if the remaining metadata items
 in the buffer should be skipped.</doc>
+        <source-position filename="gst/gstbuffer.h" line="663"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%FALSE when @func returned %FALSE for one of the metadata.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstbuffer.c"
+               line="2476">%FALSE when @func returned %FALSE for one of the metadata.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="buffer" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBuffer</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="2466">a #GstBuffer</doc>
             <type name="Buffer" c:type="GstBuffer*"/>
           </instance-parameter>
           <parameter name="func"
                      transfer-ownership="none"
                      scope="call"
                      closure="1">
-            <doc xml:space="preserve">a #GstBufferForeachMetaFunc to call</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="2467">a #GstBufferForeachMetaFunc to call</doc>
             <type name="BufferForeachMetaFunc"
                   c:type="GstBufferForeachMetaFunc"/>
           </parameter>
@@ -2195,22 +3440,31 @@ in the buffer should be skipped.</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">user data passed to @func</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="2468">user data passed to @func</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_all_memory" c:identifier="gst_buffer_get_all_memory">
-        <doc xml:space="preserve">Get all the memory block in @buffer. The memory blocks will be merged
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.c"
+             line="1190">Get all the memory block in @buffer. The memory blocks will be merged
 into one large #GstMemory.</doc>
+        <source-position filename="gst/gstbuffer.h" line="339"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">a #GstMemory that contains the merged memory.
+          <doc xml:space="preserve"
+               filename="gst/gstbuffer.c"
+               line="1197">a #GstMemory that contains the merged memory.
 Use gst_memory_unref () after usage.</doc>
           <type name="Memory" c:type="GstMemory*"/>
         </return-value>
         <parameters>
           <instance-parameter name="buffer" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBuffer.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="1192">a #GstBuffer.</doc>
             <type name="Buffer" c:type="GstBuffer*"/>
           </instance-parameter>
         </parameters>
@@ -2218,80 +3472,116 @@ Use gst_memory_unref () after usage.</doc>
       <method name="get_flags"
               c:identifier="gst_buffer_get_flags"
               version="1.10">
-        <doc xml:space="preserve">Get the #GstBufferFlags flags set on this buffer.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the flags set on this buffer.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.c"
+             line="350">Get the #GstBufferFlags flags set on this buffer.</doc>
+        <source-position filename="gst/gstbuffer.h" line="400"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstbuffer.c"
+               line="356">the flags set on this buffer.</doc>
           <type name="BufferFlags" c:type="GstBufferFlags"/>
         </return-value>
         <parameters>
           <instance-parameter name="buffer" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBuffer</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="352">a #GstBuffer</doc>
             <type name="Buffer" c:type="GstBuffer*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_memory" c:identifier="gst_buffer_get_memory">
-        <doc xml:space="preserve">Get the memory block at index @idx in @buffer.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.c"
+             line="1174">Get the memory block at index @idx in @buffer.</doc>
+        <source-position filename="gst/gstbuffer.h" line="336"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">a #GstMemory that contains the data of the
+          <doc xml:space="preserve"
+               filename="gst/gstbuffer.c"
+               line="1181">a #GstMemory that contains the data of the
 memory block at @idx. Use gst_memory_unref () after usage.</doc>
           <type name="Memory" c:type="GstMemory*"/>
         </return-value>
         <parameters>
           <instance-parameter name="buffer" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBuffer.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="1176">a #GstBuffer.</doc>
             <type name="Buffer" c:type="GstBuffer*"/>
           </instance-parameter>
           <parameter name="idx" transfer-ownership="none">
-            <doc xml:space="preserve">an index</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="1177">an index</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_memory_range"
               c:identifier="gst_buffer_get_memory_range">
-        <doc xml:space="preserve">Get @length memory blocks in @buffer starting at @idx. The memory blocks will
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.c"
+             line="1206">Get @length memory blocks in @buffer starting at @idx. The memory blocks will
 be merged into one large #GstMemory.
 
 If @length is -1, all memory starting from @idx is merged.</doc>
+        <source-position filename="gst/gstbuffer.h" line="318"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">a #GstMemory that contains the merged data of @length
+          <doc xml:space="preserve"
+               filename="gst/gstbuffer.c"
+               line="1217">a #GstMemory that contains the merged data of @length
    blocks starting at @idx. Use gst_memory_unref () after usage.</doc>
           <type name="Memory" c:type="GstMemory*"/>
         </return-value>
         <parameters>
           <instance-parameter name="buffer" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBuffer.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="1208">a #GstBuffer.</doc>
             <type name="Buffer" c:type="GstBuffer*"/>
           </instance-parameter>
           <parameter name="idx" transfer-ownership="none">
-            <doc xml:space="preserve">an index</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="1209">an index</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="length" transfer-ownership="none">
-            <doc xml:space="preserve">a length</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="1210">a length</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_meta" c:identifier="gst_buffer_get_meta">
-        <doc xml:space="preserve">Get the metadata for @api on buffer. When there is no such metadata, %NULL is
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.c"
+             line="2212">Get the metadata for @api on buffer. When there is no such metadata, %NULL is
 returned. If multiple metadata with the given @api are attached to this
 buffer only the first one is returned.  To handle multiple metadata with a
 given API use gst_buffer_iterate_meta() or gst_buffer_foreach_meta() instead
 and check the meta-&gt;info.api member for the API type.</doc>
+        <source-position filename="gst/gstbuffer.h" line="644"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">the metadata for @api on
+          <doc xml:space="preserve"
+               filename="gst/gstbuffer.c"
+               line="2223">the metadata for @api on
 @buffer.</doc>
           <type name="Meta" c:type="GstMeta*"/>
         </return-value>
         <parameters>
           <instance-parameter name="buffer" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBuffer</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="2214">a #GstBuffer</doc>
             <type name="Buffer" c:type="GstBuffer*"/>
           </instance-parameter>
           <parameter name="api" transfer-ownership="none">
-            <doc xml:space="preserve">the #GType of an API</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="2215">the #GType of an API</doc>
             <type name="GType" c:type="GType"/>
           </parameter>
         </parameters>
@@ -2299,17 +3589,24 @@ and check the meta-&gt;info.api member for the API type.</doc>
       <method name="get_n_meta"
               c:identifier="gst_buffer_get_n_meta"
               version="1.14">
+        <source-position filename="gst/gstbuffer.h" line="647"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">number of metas of type @api_type on @buffer.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstbuffer.c"
+               line="2251">number of metas of type @api_type on @buffer.</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="buffer" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBuffer</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="2248">a #GstBuffer</doc>
             <type name="Buffer" c:type="GstBuffer*"/>
           </instance-parameter>
           <parameter name="api_type" transfer-ownership="none">
-            <doc xml:space="preserve">the #GType of an API</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="2249">the #GType of an API</doc>
             <type name="GType" c:type="GType"/>
           </parameter>
         </parameters>
@@ -2317,59 +3614,82 @@ and check the meta-&gt;info.api member for the API type.</doc>
       <method name="get_reference_timestamp_meta"
               c:identifier="gst_buffer_get_reference_timestamp_meta"
               version="1.14">
-        <doc xml:space="preserve">Find the first #GstReferenceTimestampMeta on @buffer that conforms to
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.c"
+             line="2740">Find the first #GstReferenceTimestampMeta on @buffer that conforms to
 @reference. Conformance is tested by checking if the meta's reference is a
 subset of @reference.
 
 Buffers can contain multiple #GstReferenceTimestampMeta metadata items.</doc>
+        <source-position filename="gst/gstbuffer.h" line="796"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">the #GstReferenceTimestampMeta or %NULL when there
+          <doc xml:space="preserve"
+               filename="gst/gstbuffer.c"
+               line="2751">the #GstReferenceTimestampMeta or %NULL when there
 is no such metadata on @buffer.</doc>
           <type name="ReferenceTimestampMeta"
                 c:type="GstReferenceTimestampMeta*"/>
         </return-value>
         <parameters>
           <instance-parameter name="buffer" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBuffer</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="2742">a #GstBuffer</doc>
             <type name="Buffer" c:type="GstBuffer*"/>
           </instance-parameter>
           <parameter name="reference"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">a reference #GstCaps</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="2743">a reference #GstCaps</doc>
             <type name="Caps" c:type="GstCaps*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_size" c:identifier="gst_buffer_get_size">
-        <doc xml:space="preserve">Get the total size of the memory blocks in @buffer.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">total size of the memory blocks in @buffer.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.c"
+             line="1513">Get the total size of the memory blocks in @buffer.</doc>
+        <source-position filename="gst/gstbuffer.h" line="378"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstbuffer.c"
+               line="1519">total size of the memory blocks in @buffer.</doc>
           <type name="gsize" c:type="gsize"/>
         </return-value>
         <parameters>
           <instance-parameter name="buffer" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBuffer.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="1515">a #GstBuffer.</doc>
             <type name="Buffer" c:type="GstBuffer*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_sizes" c:identifier="gst_buffer_get_sizes">
-        <doc xml:space="preserve">Get the total size of the memory blocks in @b.
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.c"
+             line="1491">Get the total size of the memory blocks in @b.
 
 When not %NULL, @offset will contain the offset of the data in the
 first memory block in @buffer and @maxsize will contain the sum of
 the size and @offset and the amount of extra padding on the last
 memory block.  @offset and @maxsize can be used to resize the
 buffer memory blocks with gst_buffer_resize().</doc>
+        <source-position filename="gst/gstbuffer.h" line="375"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">total size of the memory blocks in @buffer.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstbuffer.c"
+               line="1505">total size of the memory blocks in @buffer.</doc>
           <type name="gsize" c:type="gsize"/>
         </return-value>
         <parameters>
           <instance-parameter name="buffer" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBuffer.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="1493">a #GstBuffer.</doc>
             <type name="Buffer" c:type="GstBuffer*"/>
           </instance-parameter>
           <parameter name="offset"
@@ -2378,7 +3698,9 @@ buffer memory blocks with gst_buffer_resize().</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">a pointer to the offset</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="1494">a pointer to the offset</doc>
             <type name="gsize" c:type="gsize*"/>
           </parameter>
           <parameter name="maxsize"
@@ -2387,13 +3709,17 @@ buffer memory blocks with gst_buffer_resize().</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">a pointer to the maxsize</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="1495">a pointer to the maxsize</doc>
             <type name="gsize" c:type="gsize*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_sizes_range" c:identifier="gst_buffer_get_sizes_range">
-        <doc xml:space="preserve">Get the total size of @length memory blocks stating from @idx in @buffer.
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.c"
+             line="1536">Get the total size of @length memory blocks stating from @idx in @buffer.
 
 When not %NULL, @offset will contain the offset of the data in the
 memory block in @buffer at @idx and @maxsize will contain the sum of the size
@@ -2401,21 +3727,30 @@ and @offset and the amount of extra padding on the memory block at @idx +
 @length -1.
 @offset and @maxsize can be used to resize the buffer memory blocks with
 gst_buffer_resize_range().</doc>
+        <source-position filename="gst/gstbuffer.h" line="369"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">total size of @length memory blocks starting at @idx in @buffer.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstbuffer.c"
+               line="1553">total size of @length memory blocks starting at @idx in @buffer.</doc>
           <type name="gsize" c:type="gsize"/>
         </return-value>
         <parameters>
           <instance-parameter name="buffer" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBuffer.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="1538">a #GstBuffer.</doc>
             <type name="Buffer" c:type="GstBuffer*"/>
           </instance-parameter>
           <parameter name="idx" transfer-ownership="none">
-            <doc xml:space="preserve">an index</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="1539">an index</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="length" transfer-ownership="none">
-            <doc xml:space="preserve">a length</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="1540">a length</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="offset"
@@ -2424,7 +3759,9 @@ gst_buffer_resize_range().</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">a pointer to the offset</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="1541">a pointer to the offset</doc>
             <type name="gsize" c:type="gsize*"/>
           </parameter>
           <parameter name="maxsize"
@@ -2433,12 +3770,15 @@ gst_buffer_resize_range().</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">a pointer to the maxsize</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="1542">a pointer to the maxsize</doc>
             <type name="gsize" c:type="gsize*"/>
           </parameter>
         </parameters>
       </method>
       <method name="has_flags" c:identifier="gst_buffer_has_flags">
+        <source-position filename="gst/gstbuffer.h" line="403"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -2452,26 +3792,35 @@ gst_buffer_resize_range().</doc>
         </parameters>
       </method>
       <method name="insert_memory" c:identifier="gst_buffer_insert_memory">
-        <doc xml:space="preserve">Insert the memory block @mem to @buffer at @idx. This function takes ownership
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.c"
+             line="1097">Insert the memory block @mem to @buffer at @idx. This function takes ownership
 of @mem and thus doesn't increase its refcount.
 
 Only gst_buffer_get_max_memory() can be added to a buffer. If more memory is
 added, existing memory blocks will automatically be merged to make room for
 the new memory.</doc>
+        <source-position filename="gst/gstbuffer.h" line="309"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="buffer" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBuffer.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="1099">a #GstBuffer.</doc>
             <type name="Buffer" c:type="GstBuffer*"/>
           </instance-parameter>
           <parameter name="idx" transfer-ownership="none">
-            <doc xml:space="preserve">the index to add the memory at, or -1 to append it to the end</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="1100">the index to add the memory at, or -1 to append it to the end</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="mem" transfer-ownership="full">
-            <doc xml:space="preserve">a #GstMemory.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="1101">a #GstMemory.</doc>
             <type name="Memory" c:type="GstMemory*"/>
           </parameter>
         </parameters>
@@ -2479,17 +3828,24 @@ the new memory.</doc>
       <method name="is_all_memory_writable"
               c:identifier="gst_buffer_is_all_memory_writable"
               version="1.4">
-        <doc xml:space="preserve">Check if all memory blocks in @buffer are writable.
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.c"
+             line="1472">Check if all memory blocks in @buffer are writable.
 
 Note that this function does not check if @buffer is writable, use
 gst_buffer_is_writable() to check that if needed.</doc>
+        <source-position filename="gst/gstbuffer.h" line="354"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if all memory blocks in @buffer are writable</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstbuffer.c"
+               line="1481">%TRUE if all memory blocks in @buffer are writable</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="buffer" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBuffer.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="1474">a #GstBuffer.</doc>
             <type name="Buffer" c:type="GstBuffer*"/>
           </instance-parameter>
         </parameters>
@@ -2497,27 +3853,38 @@ gst_buffer_is_writable() to check that if needed.</doc>
       <method name="is_memory_range_writable"
               c:identifier="gst_buffer_is_memory_range_writable"
               version="1.4">
-        <doc xml:space="preserve">Check if @length memory blocks in @buffer starting from @idx are writable.
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.c"
+             line="1429">Check if @length memory blocks in @buffer starting from @idx are writable.
 
 @length can be -1 to check all the memory blocks after @idx.
 
 Note that this function does not check if @buffer is writable, use
 gst_buffer_is_writable() to check that if needed.</doc>
+        <source-position filename="gst/gstbuffer.h" line="351"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the memory range is writable</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstbuffer.c"
+               line="1442">%TRUE if the memory range is writable</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="buffer" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBuffer.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="1431">a #GstBuffer.</doc>
             <type name="Buffer" c:type="GstBuffer*"/>
           </instance-parameter>
           <parameter name="idx" transfer-ownership="none">
-            <doc xml:space="preserve">an index</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="1432">an index</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="length" transfer-ownership="none">
-            <doc xml:space="preserve">a length should not be 0</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="1433">a length should not be 0</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
         </parameters>
@@ -2525,18 +3892,25 @@ gst_buffer_is_writable() to check that if needed.</doc>
       <method name="iterate_meta"
               c:identifier="gst_buffer_iterate_meta"
               introspectable="0">
-        <doc xml:space="preserve">Retrieve the next #GstMeta after @current. If @state points
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.c"
+             line="2386">Retrieve the next #GstMeta after @current. If @state points
 to %NULL, the first metadata is returned.
 
 @state will be updated with an opaque state pointer</doc>
+        <source-position filename="gst/gstbuffer.h" line="656"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">The next #GstMeta or %NULL
+          <doc xml:space="preserve"
+               filename="gst/gstbuffer.c"
+               line="2396">The next #GstMeta or %NULL
 when there are no more items.</doc>
           <type name="Meta" c:type="GstMeta*"/>
         </return-value>
         <parameters>
           <instance-parameter name="buffer" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBuffer</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="2388">a #GstBuffer</doc>
             <type name="Buffer" c:type="GstBuffer*"/>
           </instance-parameter>
           <parameter name="state"
@@ -2544,7 +3918,9 @@ when there are no more items.</doc>
                      caller-allocates="1"
                      transfer-ownership="none"
                      nullable="1">
-            <doc xml:space="preserve">an opaque state pointer</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="2389">an opaque state pointer</doc>
             <type name="gpointer" c:type="gpointer*"/>
           </parameter>
         </parameters>
@@ -2553,19 +3929,26 @@ when there are no more items.</doc>
               c:identifier="gst_buffer_iterate_meta_filtered"
               version="1.12"
               introspectable="0">
-        <doc xml:space="preserve">Retrieve the next #GstMeta of type @meta_api_type after the current one
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.c"
+             line="2421">Retrieve the next #GstMeta of type @meta_api_type after the current one
 according to @state. If @state points to %NULL, the first metadata of
 type @meta_api_type is returned.
 
 @state will be updated with an opaque state pointer</doc>
+        <source-position filename="gst/gstbuffer.h" line="659"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">The next #GstMeta of type
+          <doc xml:space="preserve"
+               filename="gst/gstbuffer.c"
+               line="2433">The next #GstMeta of type
 @meta_api_type or %NULL when there are no more items.</doc>
           <type name="Meta" c:type="GstMeta*"/>
         </return-value>
         <parameters>
           <instance-parameter name="buffer" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBuffer</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="2423">a #GstBuffer</doc>
             <type name="Buffer" c:type="GstBuffer*"/>
           </instance-parameter>
           <parameter name="state"
@@ -2573,17 +3956,23 @@ type @meta_api_type is returned.
                      caller-allocates="1"
                      transfer-ownership="none"
                      nullable="1">
-            <doc xml:space="preserve">an opaque state pointer</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="2424">an opaque state pointer</doc>
             <type name="gpointer" c:type="gpointer*"/>
           </parameter>
           <parameter name="meta_api_type" transfer-ownership="none">
-            <doc xml:space="preserve">only return #GstMeta of this type</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="2425">only return #GstMeta of this type</doc>
             <type name="GType" c:type="GType"/>
           </parameter>
         </parameters>
       </method>
       <method name="map" c:identifier="gst_buffer_map">
-        <doc xml:space="preserve">This function fills @info with the #GstMapInfo of all merged memory
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.c"
+             line="1753">This function fills @info with the #GstMapInfo of all merged memory
 blocks in @buffer.
 
 @flags describe the desired access of the memory. When @flags is
@@ -2596,30 +3985,41 @@ buffer memory will then also be replaced with this writable copy.
 
 The memory in @info should be unmapped with gst_buffer_unmap() after
 usage.</doc>
+        <source-position filename="gst/gstbuffer.h" line="390"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the map succeeded and @info contains valid data.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstbuffer.c"
+               line="1773">%TRUE if the map succeeded and @info contains valid data.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="buffer" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBuffer.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="1755">a #GstBuffer.</doc>
             <type name="Buffer" c:type="GstBuffer*"/>
           </instance-parameter>
           <parameter name="info"
                      direction="out"
                      caller-allocates="1"
                      transfer-ownership="none">
-            <doc xml:space="preserve">info about the mapping</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="1756">info about the mapping</doc>
             <type name="MapInfo" c:type="GstMapInfo*"/>
           </parameter>
           <parameter name="flags" transfer-ownership="none">
-            <doc xml:space="preserve">flags for the mapping</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="1757">flags for the mapping</doc>
             <type name="MapFlags" c:type="GstMapFlags"/>
           </parameter>
         </parameters>
       </method>
       <method name="map_range" c:identifier="gst_buffer_map_range">
-        <doc xml:space="preserve">This function fills @info with the #GstMapInfo of @length merged memory blocks
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.c"
+             line="1781">This function fills @info with the #GstMapInfo of @length merged memory blocks
 starting at @idx in @buffer. When @length is -1, all memory blocks starting
 from @idx are merged and mapped.
 
@@ -2632,326 +4032,495 @@ automatically be created and returned. The readonly copy of the buffer memory
 will then also be replaced with this writable copy.
 
 The memory in @info should be unmapped with gst_buffer_unmap() after usage.</doc>
+        <source-position filename="gst/gstbuffer.h" line="387"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the map succeeded and @info contains valid
+          <doc xml:space="preserve"
+               filename="gst/gstbuffer.c"
+               line="1803">%TRUE if the map succeeded and @info contains valid
 data.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="buffer" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBuffer.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="1783">a #GstBuffer.</doc>
             <type name="Buffer" c:type="GstBuffer*"/>
           </instance-parameter>
           <parameter name="idx" transfer-ownership="none">
-            <doc xml:space="preserve">an index</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="1784">an index</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="length" transfer-ownership="none">
-            <doc xml:space="preserve">a length</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="1785">a length</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="info"
                      direction="out"
                      caller-allocates="1"
                      transfer-ownership="none">
-            <doc xml:space="preserve">info about the mapping</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="1786">info about the mapping</doc>
             <type name="MapInfo" c:type="GstMapInfo*"/>
           </parameter>
           <parameter name="flags" transfer-ownership="none">
-            <doc xml:space="preserve">flags for the mapping</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="1787">flags for the mapping</doc>
             <type name="MapFlags" c:type="GstMapFlags"/>
           </parameter>
         </parameters>
       </method>
       <method name="memcmp" c:identifier="gst_buffer_memcmp">
-        <doc xml:space="preserve">Compare @size bytes starting from @offset in @buffer with the memory in @mem.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">0 if the memory is equal.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.c"
+             line="2005">Compare @size bytes starting from @offset in @buffer with the memory in @mem.</doc>
+        <source-position filename="gst/gstbuffer.h" line="363"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstbuffer.c"
+               line="2014">0 if the memory is equal.</doc>
           <type name="gint" c:type="gint"/>
         </return-value>
         <parameters>
           <instance-parameter name="buffer" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBuffer.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="2007">a #GstBuffer.</doc>
             <type name="Buffer" c:type="GstBuffer*"/>
           </instance-parameter>
           <parameter name="offset" transfer-ownership="none">
-            <doc xml:space="preserve">the offset in @buffer</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="2008">the offset in @buffer</doc>
             <type name="gsize" c:type="gsize"/>
           </parameter>
           <parameter name="mem" transfer-ownership="none">
-            <doc xml:space="preserve">the memory to compare</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="2009">the memory to compare</doc>
             <array length="2" zero-terminated="0" c:type="gconstpointer">
               <type name="guint8"/>
             </array>
           </parameter>
           <parameter name="size" transfer-ownership="none">
-            <doc xml:space="preserve">the size to compare</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="2010">the size to compare</doc>
             <type name="gsize" c:type="gsize"/>
           </parameter>
         </parameters>
       </method>
       <method name="memset" c:identifier="gst_buffer_memset">
-        <doc xml:space="preserve">Fill @buf with @size bytes with @val starting from @offset.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The amount of bytes filled. This value can be lower than @size
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.c"
+             line="2058">Fill @buf with @size bytes with @val starting from @offset.</doc>
+        <source-position filename="gst/gstbuffer.h" line="366"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstbuffer.c"
+               line="2067">The amount of bytes filled. This value can be lower than @size
    when @buffer did not contain enough data.</doc>
           <type name="gsize" c:type="gsize"/>
         </return-value>
         <parameters>
           <instance-parameter name="buffer" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBuffer.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="2060">a #GstBuffer.</doc>
             <type name="Buffer" c:type="GstBuffer*"/>
           </instance-parameter>
           <parameter name="offset" transfer-ownership="none">
-            <doc xml:space="preserve">the offset in @buffer</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="2061">the offset in @buffer</doc>
             <type name="gsize" c:type="gsize"/>
           </parameter>
           <parameter name="val" transfer-ownership="none">
-            <doc xml:space="preserve">the value to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="2062">the value to set</doc>
             <type name="guint8" c:type="guint8"/>
           </parameter>
           <parameter name="size" transfer-ownership="none">
-            <doc xml:space="preserve">the size to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="2063">the size to set</doc>
             <type name="gsize" c:type="gsize"/>
           </parameter>
         </parameters>
       </method>
       <method name="n_memory" c:identifier="gst_buffer_n_memory">
-        <doc xml:space="preserve">Get the amount of memory blocks that this buffer has. This amount is never
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.c"
+             line="1046">Get the amount of memory blocks that this buffer has. This amount is never
 larger than what gst_buffer_get_max_memory() returns.</doc>
+        <source-position filename="gst/gstbuffer.h" line="306"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the number of memory blocks this buffer is made of.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstbuffer.c"
+               line="1053">the number of memory blocks this buffer is made of.</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="buffer" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBuffer.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="1048">a #GstBuffer.</doc>
             <type name="Buffer" c:type="GstBuffer*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="peek_memory" c:identifier="gst_buffer_peek_memory">
-        <doc xml:space="preserve">Get the memory block at @idx in @buffer. The memory block stays valid until
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.c"
+             line="1154">Get the memory block at @idx in @buffer. The memory block stays valid until
 the memory block in @buffer is removed, replaced or merged, typically with
 any call that modifies the memory in @buffer.</doc>
+        <source-position filename="gst/gstbuffer.h" line="315"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">the #GstMemory at @idx.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstbuffer.c"
+               line="1163">the #GstMemory at @idx.</doc>
           <type name="Memory" c:type="GstMemory*"/>
         </return-value>
         <parameters>
           <instance-parameter name="buffer" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBuffer.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="1156">a #GstBuffer.</doc>
             <type name="Buffer" c:type="GstBuffer*"/>
           </instance-parameter>
           <parameter name="idx" transfer-ownership="none">
-            <doc xml:space="preserve">an index</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="1157">an index</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="prepend_memory" c:identifier="gst_buffer_prepend_memory">
-        <doc xml:space="preserve">Prepend the memory block @mem to @buffer. This function takes
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.c"
+             line="1063">Prepend the memory block @mem to @buffer. This function takes
 ownership of @mem and thus doesn't increase its refcount.
 
 This function is identical to gst_buffer_insert_memory() with an index of 0.
 See gst_buffer_insert_memory() for more details.</doc>
+        <source-position filename="gst/gstbuffer.h" line="324"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="buffer" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBuffer.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="1065">a #GstBuffer.</doc>
             <type name="Buffer" c:type="GstBuffer*"/>
           </instance-parameter>
           <parameter name="mem" transfer-ownership="full">
-            <doc xml:space="preserve">a #GstMemory.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="1066">a #GstMemory.</doc>
             <type name="Memory" c:type="GstMemory*"/>
           </parameter>
         </parameters>
       </method>
+      <method name="ref" c:identifier="gst_buffer_ref" introspectable="0">
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.h"
+             line="414">Increases the refcount of the given buffer by one.
+
+Note that the refcount affects the writability
+of @buf and its metadata, see gst_buffer_is_writable().
+It is important to note that keeping additional references to
+GstBuffer instances can potentially increase the number
+of memcpy operations in a pipeline.</doc>
+        <source-position filename="gst/gstbuffer.h" line="428"/>
+        <return-value transfer-ownership="full">
+          <doc xml:space="preserve"
+               filename="gst/gstbuffer.h"
+               line="426">@buf</doc>
+          <type name="Buffer" c:type="GstBuffer*"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="buf" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.h"
+                 line="416">a #GstBuffer.</doc>
+            <type name="Buffer" c:type="GstBuffer*"/>
+          </instance-parameter>
+        </parameters>
+      </method>
       <method name="remove_all_memory"
               c:identifier="gst_buffer_remove_all_memory">
-        <doc xml:space="preserve">Remove all the memory blocks in @buffer.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.c"
+             line="1313">Remove all the memory blocks in @buffer.</doc>
+        <source-position filename="gst/gstbuffer.h" line="345"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="buffer" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBuffer.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="1315">a #GstBuffer.</doc>
             <type name="Buffer" c:type="GstBuffer*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="remove_memory" c:identifier="gst_buffer_remove_memory">
-        <doc xml:space="preserve">Remove the memory block in @b at index @i.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.c"
+             line="1300">Remove the memory block in @b at index @i.</doc>
+        <source-position filename="gst/gstbuffer.h" line="342"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="buffer" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBuffer.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="1302">a #GstBuffer.</doc>
             <type name="Buffer" c:type="GstBuffer*"/>
           </instance-parameter>
           <parameter name="idx" transfer-ownership="none">
-            <doc xml:space="preserve">an index</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="1303">an index</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="remove_memory_range"
               c:identifier="gst_buffer_remove_memory_range">
-        <doc xml:space="preserve">Remove @length memory blocks in @buffer starting from @idx.
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.c"
+             line="1326">Remove @length memory blocks in @buffer starting from @idx.
 
 @length can be -1, in which case all memory starting from @idx is removed.</doc>
+        <source-position filename="gst/gstbuffer.h" line="321"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="buffer" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBuffer.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="1328">a #GstBuffer.</doc>
             <type name="Buffer" c:type="GstBuffer*"/>
           </instance-parameter>
           <parameter name="idx" transfer-ownership="none">
-            <doc xml:space="preserve">an index</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="1329">an index</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="length" transfer-ownership="none">
-            <doc xml:space="preserve">a length</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="1330">a length</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
         </parameters>
       </method>
       <method name="remove_meta" c:identifier="gst_buffer_remove_meta">
-        <doc xml:space="preserve">Remove the metadata for @meta on @buffer.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the metadata existed and was removed, %FALSE if no such
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.c"
+             line="2332">Remove the metadata for @meta on @buffer.</doc>
+        <source-position filename="gst/gstbuffer.h" line="653"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstbuffer.c"
+               line="2339">%TRUE if the metadata existed and was removed, %FALSE if no such
 metadata was on @buffer.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="buffer" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBuffer</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="2334">a #GstBuffer</doc>
             <type name="Buffer" c:type="GstBuffer*"/>
           </instance-parameter>
           <parameter name="meta" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstMeta</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="2335">a #GstMeta</doc>
             <type name="Meta" c:type="GstMeta*"/>
           </parameter>
         </parameters>
       </method>
       <method name="replace_all_memory"
               c:identifier="gst_buffer_replace_all_memory">
-        <doc xml:space="preserve">Replaces all memory in @buffer with @mem.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.c"
+             line="1252">Replaces all memory in @buffer with @mem.</doc>
+        <source-position filename="gst/gstbuffer.h" line="333"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="buffer" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBuffer.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="1254">a #GstBuffer.</doc>
             <type name="Buffer" c:type="GstBuffer*"/>
           </instance-parameter>
           <parameter name="mem" transfer-ownership="full">
-            <doc xml:space="preserve">a #GstMemory</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="1255">a #GstMemory</doc>
             <type name="Memory" c:type="GstMemory*"/>
           </parameter>
         </parameters>
       </method>
       <method name="replace_memory" c:identifier="gst_buffer_replace_memory">
-        <doc xml:space="preserve">Replaces the memory block at index @idx in @buffer with @mem.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.c"
+             line="1238">Replaces the memory block at index @idx in @buffer with @mem.</doc>
+        <source-position filename="gst/gstbuffer.h" line="330"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="buffer" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBuffer.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="1240">a #GstBuffer.</doc>
             <type name="Buffer" c:type="GstBuffer*"/>
           </instance-parameter>
           <parameter name="idx" transfer-ownership="none">
-            <doc xml:space="preserve">an index</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="1241">an index</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="mem" transfer-ownership="full">
-            <doc xml:space="preserve">a #GstMemory</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="1242">a #GstMemory</doc>
             <type name="Memory" c:type="GstMemory*"/>
           </parameter>
         </parameters>
       </method>
       <method name="replace_memory_range"
               c:identifier="gst_buffer_replace_memory_range">
-        <doc xml:space="preserve">Replaces @length memory blocks in @buffer starting at @idx with @mem.
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.c"
+             line="1265">Replaces @length memory blocks in @buffer starting at @idx with @mem.
 
 If @length is -1, all memory starting from @idx will be removed and
 replaced with @mem.
 
 @buffer should be writable.</doc>
+        <source-position filename="gst/gstbuffer.h" line="312"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="buffer" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBuffer.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="1267">a #GstBuffer.</doc>
             <type name="Buffer" c:type="GstBuffer*"/>
           </instance-parameter>
           <parameter name="idx" transfer-ownership="none">
-            <doc xml:space="preserve">an index</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="1268">an index</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="length" transfer-ownership="none">
-            <doc xml:space="preserve">a length should not be 0</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="1269">a length should not be 0</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="mem" transfer-ownership="full">
-            <doc xml:space="preserve">a #GstMemory</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="1270">a #GstMemory</doc>
             <type name="Memory" c:type="GstMemory*"/>
           </parameter>
         </parameters>
       </method>
       <method name="resize" c:identifier="gst_buffer_resize">
-        <doc xml:space="preserve">Set the offset and total size of the memory blocks in @buffer.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.c"
+             line="1618">Set the offset and total size of the memory blocks in @buffer.</doc>
+        <source-position filename="gst/gstbuffer.h" line="381"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="buffer" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBuffer.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="1620">a #GstBuffer.</doc>
             <type name="Buffer" c:type="GstBuffer*"/>
           </instance-parameter>
           <parameter name="offset" transfer-ownership="none">
-            <doc xml:space="preserve">the offset adjustment</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="1621">the offset adjustment</doc>
             <type name="gssize" c:type="gssize"/>
           </parameter>
           <parameter name="size" transfer-ownership="none">
-            <doc xml:space="preserve">the new size or -1 to just adjust the offset</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="1622">the new size or -1 to just adjust the offset</doc>
             <type name="gssize" c:type="gssize"/>
           </parameter>
         </parameters>
       </method>
       <method name="resize_range" c:identifier="gst_buffer_resize_range">
-        <doc xml:space="preserve">Set the total size of the @length memory blocks starting at @idx in
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.c"
+             line="1645">Set the total size of the @length memory blocks starting at @idx in
 @buffer</doc>
+        <source-position filename="gst/gstbuffer.h" line="372"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if resizing succeeded, %FALSE otherwise.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstbuffer.c"
+               line="1656">%TRUE if resizing succeeded, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="buffer" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBuffer.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="1647">a #GstBuffer.</doc>
             <type name="Buffer" c:type="GstBuffer*"/>
           </instance-parameter>
           <parameter name="idx" transfer-ownership="none">
-            <doc xml:space="preserve">an index</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="1648">an index</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="length" transfer-ownership="none">
-            <doc xml:space="preserve">a length</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="1649">a length</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="offset" transfer-ownership="none">
-            <doc xml:space="preserve">the offset adjustment</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="1650">the offset adjustment</doc>
             <type name="gssize" c:type="gssize"/>
           </parameter>
           <parameter name="size" transfer-ownership="none">
-            <doc xml:space="preserve">the new size or -1 to just adjust the offset</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="1651">the new size or -1 to just adjust the offset</doc>
             <type name="gssize" c:type="gssize"/>
           </parameter>
         </parameters>
@@ -2959,69 +4528,119 @@ replaced with @mem.
       <method name="set_flags"
               c:identifier="gst_buffer_set_flags"
               version="1.10">
-        <doc xml:space="preserve">Sets one or more buffer flags on a buffer.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if @flags were successfully set on buffer.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.c"
+             line="383">Sets one or more buffer flags on a buffer.</doc>
+        <source-position filename="gst/gstbuffer.h" line="406"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstbuffer.c"
+               line="390">%TRUE if @flags were successfully set on buffer.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="buffer" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBuffer</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="385">a #GstBuffer</doc>
             <type name="Buffer" c:type="GstBuffer*"/>
           </instance-parameter>
           <parameter name="flags" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstBufferFlags to set.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="386">the #GstBufferFlags to set.</doc>
             <type name="BufferFlags" c:type="GstBufferFlags"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_size" c:identifier="gst_buffer_set_size">
-        <doc xml:space="preserve">Set the total size of the memory blocks in @buffer.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.c"
+             line="1632">Set the total size of the memory blocks in @buffer.</doc>
+        <source-position filename="gst/gstbuffer.h" line="384"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="buffer" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBuffer.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="1634">a #GstBuffer.</doc>
             <type name="Buffer" c:type="GstBuffer*"/>
           </instance-parameter>
           <parameter name="size" transfer-ownership="none">
-            <doc xml:space="preserve">the new size</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="1635">the new size</doc>
             <type name="gssize" c:type="gssize"/>
           </parameter>
         </parameters>
       </method>
       <method name="unmap" c:identifier="gst_buffer_unmap">
-        <doc xml:space="preserve">Release the memory previously mapped with gst_buffer_map().</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.c"
+             line="1881">Release the memory previously mapped with gst_buffer_map().</doc>
+        <source-position filename="gst/gstbuffer.h" line="393"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="buffer" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBuffer.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="1883">a #GstBuffer.</doc>
             <type name="Buffer" c:type="GstBuffer*"/>
           </instance-parameter>
           <parameter name="info" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstMapInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="1884">a #GstMapInfo</doc>
             <type name="MapInfo" c:type="GstMapInfo*"/>
           </parameter>
         </parameters>
       </method>
+      <method name="unref" c:identifier="gst_buffer_unref" introspectable="0">
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.h"
+             line="435">Decreases the refcount of the buffer. If the refcount reaches 0, the buffer
+with the associated metadata and memory will be freed.</doc>
+        <source-position filename="gst/gstbuffer.h" line="442"/>
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="buf" transfer-ownership="full">
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.h"
+                 line="437">a #GstBuffer.</doc>
+            <type name="Buffer" c:type="GstBuffer*"/>
+          </instance-parameter>
+        </parameters>
+      </method>
       <method name="unset_flags"
               c:identifier="gst_buffer_unset_flags"
               version="1.10">
-        <doc xml:space="preserve">Clears one or more buffer flags.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">true if @flags is successfully cleared from buffer.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.c"
+             line="401">Clears one or more buffer flags.</doc>
+        <source-position filename="gst/gstbuffer.h" line="409"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstbuffer.c"
+               line="408">true if @flags is successfully cleared from buffer.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="buffer" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBuffer</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="403">a #GstBuffer</doc>
             <type name="Buffer" c:type="GstBuffer*"/>
           </instance-parameter>
           <parameter name="flags" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstBufferFlags to clear</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.c"
+                 line="404">the #GstBufferFlags to clear</doc>
             <type name="BufferFlags" c:type="GstBufferFlags"/>
           </parameter>
         </parameters>
@@ -3029,54 +4648,114 @@ replaced with @mem.
       <function name="get_max_memory"
                 c:identifier="gst_buffer_get_max_memory"
                 version="1.2">
-        <doc xml:space="preserve">Get the maximum amount of memory blocks that a buffer can hold. This is a
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.c"
+             line="497">Get the maximum amount of memory blocks that a buffer can hold. This is a
 compile time constant that can be queried with the function.
 
 When more memory blocks are added, existing memory blocks will be merged
 together to make room for the new block.</doc>
+        <source-position filename="gst/gstbuffer.h" line="284"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the maximum amount of memory blocks that a buffer can hold.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstbuffer.c"
+               line="506">the maximum amount of memory blocks that a buffer can hold.</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
       </function>
+      <function name="replace"
+                c:identifier="gst_buffer_replace"
+                introspectable="0">
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.h"
+             line="582">Modifies a pointer to a #GstBuffer to point to a different #GstBuffer. The
+modification is done atomically (so this is useful for ensuring thread safety
+in some cases), and the reference counts are updated appropriately (the old
+buffer is unreffed, the new is reffed).
+
+Either @nbuf or the #GstBuffer pointed to by @obuf may be %NULL.</doc>
+        <source-position filename="gst/gstbuffer.h" line="598"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstbuffer.h"
+               line="596">%TRUE when @obuf was different from @nbuf.</doc>
+          <type name="gboolean" c:type="gboolean"/>
+        </return-value>
+        <parameters>
+          <parameter name="obuf"
+                     direction="inout"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     nullable="1"
+                     allow-none="1">
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.h"
+                 line="584">pointer to a pointer to
+    a #GstBuffer to be replaced.</doc>
+            <type name="Buffer" c:type="GstBuffer**"/>
+          </parameter>
+          <parameter name="nbuf"
+                     transfer-ownership="none"
+                     nullable="1"
+                     allow-none="1">
+            <doc xml:space="preserve"
+                 filename="gst/gstbuffer.h"
+                 line="586">pointer to a #GstBuffer that will
+    replace the buffer pointed to by @obuf.</doc>
+            <type name="Buffer" c:type="GstBuffer*"/>
+          </parameter>
+        </parameters>
+      </function>
     </record>
     <bitfield name="BufferCopyFlags"
               glib:type-name="GstBufferCopyFlags"
               glib:get-type="gst_buffer_copy_flags_get_type"
               c:type="GstBufferCopyFlags">
-      <doc xml:space="preserve">A set of flags that can be provided to the gst_buffer_copy_into()
+      <doc xml:space="preserve"
+           filename="gst/gstbuffer.h"
+           line="491">A set of flags that can be provided to the gst_buffer_copy_into()
 function to specify which items should be copied.</doc>
       <member name="none"
               value="0"
               c:identifier="GST_BUFFER_COPY_NONE"
               glib:nick="none">
-        <doc xml:space="preserve">copy nothing</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.h"
+             line="493">copy nothing</doc>
       </member>
       <member name="flags"
               value="1"
               c:identifier="GST_BUFFER_COPY_FLAGS"
               glib:nick="flags">
-        <doc xml:space="preserve">flag indicating that buffer flags should be copied</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.h"
+             line="494">flag indicating that buffer flags should be copied</doc>
       </member>
       <member name="timestamps"
               value="2"
               c:identifier="GST_BUFFER_COPY_TIMESTAMPS"
               glib:nick="timestamps">
-        <doc xml:space="preserve">flag indicating that buffer pts, dts,
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.h"
+             line="495">flag indicating that buffer pts, dts,
   duration, offset and offset_end should be copied</doc>
       </member>
       <member name="meta"
               value="4"
               c:identifier="GST_BUFFER_COPY_META"
               glib:nick="meta">
-        <doc xml:space="preserve">flag indicating that buffer meta should be
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.h"
+             line="503">flag indicating that buffer meta should be
   copied</doc>
       </member>
       <member name="memory"
               value="8"
               c:identifier="GST_BUFFER_COPY_MEMORY"
               glib:nick="memory">
-        <doc xml:space="preserve">flag indicating that buffer memory should be reffed
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.h"
+             line="497">flag indicating that buffer memory should be reffed
   and appended to already existing memory. Unless the memory is marked as
   NO_SHARE, no actual copy of the memory is made but it is simply reffed.
   Add @GST_BUFFER_COPY_DEEP to force a real copy.</doc>
@@ -3085,34 +4764,44 @@ function to specify which items should be copied.</doc>
               value="16"
               c:identifier="GST_BUFFER_COPY_MERGE"
               glib:nick="merge">
-        <doc xml:space="preserve">flag indicating that buffer memory should be
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.h"
+             line="501">flag indicating that buffer memory should be
   merged</doc>
       </member>
       <member name="deep"
               value="32"
               c:identifier="GST_BUFFER_COPY_DEEP"
               glib:nick="deep">
-        <doc xml:space="preserve">flag indicating that memory should always be
-  copied instead of reffed (Since 1.2)</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.h"
+             line="505">flag indicating that memory should always be
+  copied instead of reffed (Since: 1.2)</doc>
       </member>
     </bitfield>
     <bitfield name="BufferFlags"
               glib:type-name="GstBufferFlags"
               glib:get-type="gst_buffer_flags_get_type"
               c:type="GstBufferFlags">
-      <doc xml:space="preserve">A set of buffer flags used to describe properties of a #GstBuffer.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstbuffer.h"
+           line="182">A set of buffer flags used to describe properties of a #GstBuffer.</doc>
       <member name="live"
               value="16"
               c:identifier="GST_BUFFER_FLAG_LIVE"
               glib:nick="live">
-        <doc xml:space="preserve">the buffer is live data and should be discarded in
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.h"
+             line="184">the buffer is live data and should be discarded in
                                 the PAUSED state.</doc>
       </member>
       <member name="decode_only"
               value="32"
               c:identifier="GST_BUFFER_FLAG_DECODE_ONLY"
               glib:nick="decode-only">
-        <doc xml:space="preserve">the buffer contains data that should be dropped
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.h"
+             line="186">the buffer contains data that should be dropped
                                 because it will be clipped against the segment
                                 boundaries or because it does not contain data
                                 that should be shown to the user.</doc>
@@ -3121,7 +4810,9 @@ function to specify which items should be copied.</doc>
               value="64"
               c:identifier="GST_BUFFER_FLAG_DISCONT"
               glib:nick="discont">
-        <doc xml:space="preserve">the buffer marks a data discontinuity in the stream.
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.h"
+             line="190">the buffer marks a data discontinuity in the stream.
                                 This typically occurs after a seek or a dropped buffer
                                 from a live or network source.</doc>
       </member>
@@ -3129,35 +4820,45 @@ function to specify which items should be copied.</doc>
               value="128"
               c:identifier="GST_BUFFER_FLAG_RESYNC"
               glib:nick="resync">
-        <doc xml:space="preserve">the buffer timestamps might have a discontinuity
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.h"
+             line="193">the buffer timestamps might have a discontinuity
                                 and this buffer is a good point to resynchronize.</doc>
       </member>
       <member name="corrupted"
               value="256"
               c:identifier="GST_BUFFER_FLAG_CORRUPTED"
               glib:nick="corrupted">
-        <doc xml:space="preserve">the buffer data is corrupted.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.h"
+             line="195">the buffer data is corrupted.</doc>
       </member>
       <member name="marker"
               value="512"
               c:identifier="GST_BUFFER_FLAG_MARKER"
               glib:nick="marker">
-        <doc xml:space="preserve">the buffer contains a media specific marker. for
-                                video this is typically the end of a frame boundary, for audio
-                                this is usually the start of a talkspurt.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.h"
+             line="196">the buffer contains a media specific marker. for
+                                video this is the end of a frame boundary, for audio
+                                this is the start of a talkspurt.</doc>
       </member>
       <member name="header"
               value="1024"
               c:identifier="GST_BUFFER_FLAG_HEADER"
               glib:nick="header">
-        <doc xml:space="preserve">the buffer contains header information that is
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.h"
+             line="199">the buffer contains header information that is
                                 needed to decode the following data.</doc>
       </member>
       <member name="gap"
               value="2048"
               c:identifier="GST_BUFFER_FLAG_GAP"
               glib:nick="gap">
-        <doc xml:space="preserve">the buffer has been created to fill a gap in the
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.h"
+             line="201">the buffer has been created to fill a gap in the
                                 stream and contains media neutral data (elements can
                                 switch to optimized code path that ignores the buffer
                                 content).</doc>
@@ -3166,50 +4867,64 @@ function to specify which items should be copied.</doc>
               value="4096"
               c:identifier="GST_BUFFER_FLAG_DROPPABLE"
               glib:nick="droppable">
-        <doc xml:space="preserve">the buffer can be dropped without breaking the
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.h"
+             line="205">the buffer can be dropped without breaking the
                                 stream, for example to reduce bandwidth.</doc>
       </member>
       <member name="delta_unit"
               value="8192"
               c:identifier="GST_BUFFER_FLAG_DELTA_UNIT"
               glib:nick="delta-unit">
-        <doc xml:space="preserve">this unit cannot be decoded independently.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.h"
+             line="207">this unit cannot be decoded independently.</doc>
       </member>
       <member name="tag_memory"
               value="16384"
               c:identifier="GST_BUFFER_FLAG_TAG_MEMORY"
               glib:nick="tag-memory">
-        <doc xml:space="preserve">this flag is set when memory of the buffer
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.h"
+             line="208">this flag is set when memory of the buffer
                                 is added/removed</doc>
       </member>
       <member name="sync_after"
               value="32768"
               c:identifier="GST_BUFFER_FLAG_SYNC_AFTER"
               glib:nick="sync-after">
-        <doc xml:space="preserve">Elements which write to disk or permanent
-                                storage should ensure the data is synced after
-                                writing the contents of this buffer. (Since 1.6)</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.h"
+             line="210">Elements which write to disk or permanent
+                                storage should ensure the data is synced after
+                                writing the contents of this buffer. (Since: 1.6)</doc>
       </member>
       <member name="non_droppable"
               value="65536"
               c:identifier="GST_BUFFER_FLAG_NON_DROPPABLE"
               glib:nick="non-droppable">
-        <doc xml:space="preserve">This buffer is important and should not be dropped.
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.h"
+             line="213">This buffer is important and should not be dropped.
                                 This can be used to mark important buffers, e.g. to flag
                                 RTP packets carrying keyframes or codec setup data for RTP
                                 Forward Error Correction purposes, or to prevent still video
-                                frames from being dropped by elements due to QoS. (Since 1.14)</doc>
+                                frames from being dropped by elements due to QoS. (Since: 1.14)</doc>
       </member>
       <member name="last"
               value="1048576"
               c:identifier="GST_BUFFER_FLAG_LAST"
               glib:nick="last">
-        <doc xml:space="preserve">additional media specific flags can be added starting from
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.h"
+             line="218">additional media specific flags can be added starting from
                                 this flag.</doc>
       </member>
     </bitfield>
     <callback name="BufferForeachMetaFunc" c:type="GstBufferForeachMetaFunc">
-      <doc xml:space="preserve">A function that will be called from gst_buffer_foreach_meta(). The @meta
+      <doc xml:space="preserve"
+           filename="gst/gstbuffer.h"
+           line="622">A function that will be called from gst_buffer_foreach_meta(). The @meta
 field will point to a the reference of the meta.
 
 @buffer should not be modified from this callback.
@@ -3218,13 +4933,18 @@ When this function returns %TRUE, the next meta will be
 returned. When %FALSE is returned, gst_buffer_foreach_meta() will return.
 
 When @meta is set to %NULL, the item will be removed from the buffer.</doc>
+      <source-position filename="gst/gstbuffer.h" line="640"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%FALSE when gst_buffer_foreach_meta() should stop</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.h"
+             line="638">%FALSE when gst_buffer_foreach_meta() should stop</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="buffer" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstBuffer</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstbuffer.h"
+               line="624">a #GstBuffer</doc>
           <type name="Buffer" c:type="GstBuffer*"/>
         </parameter>
         <parameter name="meta"
@@ -3232,7 +4952,9 @@ When @meta is set to %NULL, the item will be removed from the buffer.</doc>
                    caller-allocates="0"
                    transfer-ownership="full"
                    nullable="1">
-          <doc xml:space="preserve">a pointer to a #GstMeta</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstbuffer.h"
+               line="625">a pointer to a #GstMeta</doc>
           <type name="Meta" c:type="GstMeta**"/>
         </parameter>
         <parameter name="user_data"
@@ -3240,7 +4962,9 @@ When @meta is set to %NULL, the item will be removed from the buffer.</doc>
                    nullable="1"
                    allow-none="1"
                    closure="2">
-          <doc xml:space="preserve">user data passed to gst_buffer_foreach_meta()</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstbuffer.h"
+               line="626">user data passed to gst_buffer_foreach_meta()</doc>
           <type name="gpointer" c:type="gpointer"/>
         </parameter>
       </parameters>
@@ -3250,7 +4974,9 @@ When @meta is set to %NULL, the item will be removed from the buffer.</doc>
             glib:type-name="GstBufferList"
             glib:get-type="gst_buffer_list_get_type"
             c:symbol-prefix="buffer_list">
-      <doc xml:space="preserve">Buffer lists are an object containing a list of buffers.
+      <doc xml:space="preserve"
+           filename="gst/gstbufferlist.c"
+           line="24">Buffer lists are an object containing a list of buffers.
 
 Buffer lists are created with gst_buffer_list_new() and filled with data
 using a gst_buffer_list_insert().
@@ -3258,31 +4984,44 @@ using a gst_buffer_list_insert().
 Buffer lists can be pushed on a srcpad with gst_pad_push_list(). This is
 interesting when multiple buffers need to be pushed in one go because it
 can reduce the amount of overhead for pushing each buffer individually.</doc>
+      <source-position filename="gst/gstbufferlist.h" line="37"/>
       <constructor name="new" c:identifier="gst_buffer_list_new">
-        <doc xml:space="preserve">Creates a new, empty #GstBufferList. The caller is responsible for unreffing
+        <doc xml:space="preserve"
+             filename="gst/gstbufferlist.c"
+             line="181">Creates a new, empty #GstBufferList. The caller is responsible for unreffing
 the returned #GstBufferList.
 
 Free-function: gst_buffer_list_unref</doc>
+        <source-position filename="gst/gstbufferlist.h" line="209"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the new #GstBufferList. gst_buffer_list_unref()
+          <doc xml:space="preserve"
+               filename="gst/gstbufferlist.c"
+               line="189">the new #GstBufferList. gst_buffer_list_unref()
     after usage.</doc>
           <type name="BufferList" c:type="GstBufferList*"/>
         </return-value>
       </constructor>
       <constructor name="new_sized" c:identifier="gst_buffer_list_new_sized">
-        <doc xml:space="preserve">Creates a new, empty #GstBufferList. The caller is responsible for unreffing
+        <doc xml:space="preserve"
+             filename="gst/gstbufferlist.c"
+             line="145">Creates a new, empty #GstBufferList. The caller is responsible for unreffing
 the returned #GstBufferList. The list will have @size space preallocated so
 that memory reallocations can be avoided.
 
 Free-function: gst_buffer_list_unref</doc>
+        <source-position filename="gst/gstbufferlist.h" line="212"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the new #GstBufferList. gst_buffer_list_unref()
+          <doc xml:space="preserve"
+               filename="gst/gstbufferlist.c"
+               line="155">the new #GstBufferList. gst_buffer_list_unref()
     after usage.</doc>
           <type name="BufferList" c:type="GstBufferList*"/>
         </return-value>
         <parameters>
           <parameter name="size" transfer-ownership="none">
-            <doc xml:space="preserve">an initial reserved size</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbufferlist.c"
+                 line="147">an initial reserved size</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
@@ -3290,85 +5029,143 @@ Free-function: gst_buffer_list_unref</doc>
       <method name="calculate_size"
               c:identifier="gst_buffer_list_calculate_size"
               version="1.14">
-        <doc xml:space="preserve">Calculates the size of the data contained in buffer list by adding the
+        <doc xml:space="preserve"
+             filename="gst/gstbufferlist.c"
+             line="528">Calculates the size of the data contained in buffer list by adding the
 size of all buffers.</doc>
+        <source-position filename="gst/gstbufferlist.h" line="237"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the size of the data contained in buffer list in bytes.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstbufferlist.c"
+               line="535">the size of the data contained in buffer list in bytes.</doc>
           <type name="gsize" c:type="gsize"/>
         </return-value>
         <parameters>
           <instance-parameter name="list" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBufferList</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbufferlist.c"
+                 line="530">a #GstBufferList</doc>
             <type name="BufferList" c:type="GstBufferList*"/>
           </instance-parameter>
         </parameters>
       </method>
+      <method name="copy"
+              c:identifier="gst_buffer_list_copy"
+              introspectable="0">
+        <doc xml:space="preserve"
+             filename="gst/gstbufferlist.h"
+             line="118">Create a shallow copy of the given buffer list. This will make a newly
+allocated copy of the source list with copies of buffer pointers. The
+refcount of buffers pointed to will be increased by one.</doc>
+        <source-position filename="gst/gstbufferlist.h" line="128"/>
+        <return-value transfer-ownership="full">
+          <doc xml:space="preserve"
+               filename="gst/gstbufferlist.h"
+               line="126">a new copy of @list.</doc>
+          <type name="BufferList" c:type="GstBufferList*"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="list" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst/gstbufferlist.h"
+                 line="120">a #GstBufferList</doc>
+            <type name="BufferList" c:type="const GstBufferList*"/>
+          </instance-parameter>
+        </parameters>
+      </method>
       <method name="copy_deep"
               c:identifier="gst_buffer_list_copy_deep"
               version="1.6">
-        <doc xml:space="preserve">Create a copy of the given buffer list. This will make a newly allocated
+        <doc xml:space="preserve"
+             filename="gst/gstbufferlist.c"
+             line="489">Create a copy of the given buffer list. This will make a newly allocated
 copy of the buffer that the source buffer list contains.</doc>
+        <source-position filename="gst/gstbufferlist.h" line="234"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new copy of @list.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstbufferlist.c"
+               line="496">a new copy of @list.</doc>
           <type name="BufferList" c:type="GstBufferList*"/>
         </return-value>
         <parameters>
           <instance-parameter name="list" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBufferList</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbufferlist.c"
+                 line="491">a #GstBufferList</doc>
             <type name="BufferList" c:type="const GstBufferList*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="foreach" c:identifier="gst_buffer_list_foreach">
-        <doc xml:space="preserve">Call @func with @data for each buffer in @list.
+        <doc xml:space="preserve"
+             filename="gst/gstbufferlist.c"
+             line="236">Call @func with @data for each buffer in @list.
 
 @func can modify the passed buffer pointer or its contents. The return value
 of @func define if this function returns or if the remaining buffers in
 the list should be skipped.</doc>
+        <source-position filename="gst/gstbufferlist.h" line="230"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE when @func returned %TRUE for each buffer in @list or when
+          <doc xml:space="preserve"
+               filename="gst/gstbufferlist.c"
+               line="248">%TRUE when @func returned %TRUE for each buffer in @list or when
 @list is empty.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="list" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBufferList</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbufferlist.c"
+                 line="238">a #GstBufferList</doc>
             <type name="BufferList" c:type="GstBufferList*"/>
           </instance-parameter>
           <parameter name="func"
                      transfer-ownership="none"
                      scope="call"
                      closure="1">
-            <doc xml:space="preserve">a #GstBufferListFunc to call</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbufferlist.c"
+                 line="239">a #GstBufferListFunc to call</doc>
             <type name="BufferListFunc" c:type="GstBufferListFunc"/>
           </parameter>
           <parameter name="user_data"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">user data passed to @func</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbufferlist.c"
+                 line="240">user data passed to @func</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
         </parameters>
       </method>
       <method name="get" c:identifier="gst_buffer_list_get">
-        <doc xml:space="preserve">Get the buffer at @idx.
+        <doc xml:space="preserve"
+             filename="gst/gstbufferlist.c"
+             line="338">Get the buffer at @idx.
 
 You must make sure that @idx does not exceed the number of
 buffers available.</doc>
+        <source-position filename="gst/gstbufferlist.h" line="218"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">the buffer at @idx in @group
+          <doc xml:space="preserve"
+               filename="gst/gstbufferlist.c"
+               line="348">the buffer at @idx in @group
     or %NULL when there is no buffer. The buffer remains valid as
     long as @list is valid and buffer is not removed from the list.</doc>
           <type name="Buffer" c:type="GstBuffer*"/>
         </return-value>
         <parameters>
           <instance-parameter name="list" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBufferList</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbufferlist.c"
+                 line="340">a #GstBufferList</doc>
             <type name="BufferList" c:type="GstBufferList*"/>
           </instance-parameter>
           <parameter name="idx" transfer-ownership="none">
-            <doc xml:space="preserve">the index</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbufferlist.c"
+                 line="341">the index</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
@@ -3376,87 +5173,168 @@ buffers available.</doc>
       <method name="get_writable"
               c:identifier="gst_buffer_list_get_writable"
               version="1.14">
-        <doc xml:space="preserve">Gets the buffer at @idx, ensuring it is a writable buffer.
+        <doc xml:space="preserve"
+             filename="gst/gstbufferlist.c"
+             line="361">Gets the buffer at @idx, ensuring it is a writable buffer.
 
 You must make sure that @idx does not exceed the number of
 buffers available.</doc>
+        <source-position filename="gst/gstbufferlist.h" line="221"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">the buffer at @idx in @group.
+          <doc xml:space="preserve"
+               filename="gst/gstbufferlist.c"
+               line="371">the buffer at @idx in @group.
     The returned  buffer remains valid as long as @list is valid and
     the buffer is not removed from the list.</doc>
           <type name="Buffer" c:type="GstBuffer*"/>
         </return-value>
         <parameters>
           <instance-parameter name="list" transfer-ownership="none">
-            <doc xml:space="preserve">a (writable) #GstBufferList</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbufferlist.c"
+                 line="363">a (writable) #GstBufferList</doc>
             <type name="BufferList" c:type="GstBufferList*"/>
           </instance-parameter>
           <parameter name="idx" transfer-ownership="none">
-            <doc xml:space="preserve">the index</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbufferlist.c"
+                 line="364">the index</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="insert" c:identifier="gst_buffer_list_insert">
-        <doc xml:space="preserve">Insert @buffer at @idx in @list. Other buffers are moved to make room for
+        <doc xml:space="preserve"
+             filename="gst/gstbufferlist.c"
+             line="409">Insert @buffer at @idx in @list. Other buffers are moved to make room for
 this new buffer.
 
 A -1 value for @idx will append the buffer at the end.</doc>
+        <source-position filename="gst/gstbufferlist.h" line="224"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="list" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBufferList</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbufferlist.c"
+                 line="411">a #GstBufferList</doc>
             <type name="BufferList" c:type="GstBufferList*"/>
           </instance-parameter>
           <parameter name="idx" transfer-ownership="none">
-            <doc xml:space="preserve">the index</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbufferlist.c"
+                 line="412">the index</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="buffer" transfer-ownership="full">
-            <doc xml:space="preserve">a #GstBuffer</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbufferlist.c"
+                 line="413">a #GstBuffer</doc>
             <type name="Buffer" c:type="GstBuffer*"/>
           </parameter>
         </parameters>
       </method>
       <method name="length" c:identifier="gst_buffer_list_length">
-        <doc xml:space="preserve">Returns the number of buffers in @list.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the number of buffers in the buffer list</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstbufferlist.c"
+             line="198">Returns the number of buffers in @list.</doc>
+        <source-position filename="gst/gstbufferlist.h" line="215"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstbufferlist.c"
+               line="204">the number of buffers in the buffer list</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="list" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBufferList</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbufferlist.c"
+                 line="200">a #GstBufferList</doc>
+            <type name="BufferList" c:type="GstBufferList*"/>
+          </instance-parameter>
+        </parameters>
+      </method>
+      <method name="ref" c:identifier="gst_buffer_list_ref" introspectable="0">
+        <doc xml:space="preserve"
+             filename="gst/gstbufferlist.h"
+             line="63">Increases the refcount of the given buffer list by one.
+
+Note that the refcount affects the writability of @list and its data, see
+gst_buffer_list_make_writable(). It is important to note that keeping
+additional references to GstBufferList instances can potentially increase
+the number of memcpy operations in a pipeline.</doc>
+        <source-position filename="gst/gstbufferlist.h" line="76"/>
+        <return-value transfer-ownership="full">
+          <doc xml:space="preserve"
+               filename="gst/gstbufferlist.h"
+               line="74">@list</doc>
+          <type name="BufferList" c:type="GstBufferList*"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="list" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst/gstbufferlist.h"
+                 line="65">a #GstBufferList</doc>
             <type name="BufferList" c:type="GstBufferList*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="remove" c:identifier="gst_buffer_list_remove">
-        <doc xml:space="preserve">Remove @length buffers starting from @idx in @list. The following buffers
+        <doc xml:space="preserve"
+             filename="gst/gstbufferlist.c"
+             line="469">Remove @length buffers starting from @idx in @list. The following buffers
 are moved to close the gap.</doc>
+        <source-position filename="gst/gstbufferlist.h" line="227"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="list" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBufferList</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbufferlist.c"
+                 line="471">a #GstBufferList</doc>
             <type name="BufferList" c:type="GstBufferList*"/>
           </instance-parameter>
           <parameter name="idx" transfer-ownership="none">
-            <doc xml:space="preserve">the index</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbufferlist.c"
+                 line="472">the index</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="length" transfer-ownership="none">
-            <doc xml:space="preserve">the amount to remove</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbufferlist.c"
+                 line="473">the amount to remove</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
+      <method name="unref"
+              c:identifier="gst_buffer_list_unref"
+              introspectable="0">
+        <doc xml:space="preserve"
+             filename="gst/gstbufferlist.h"
+             line="84">Decreases the refcount of the buffer list. If the refcount reaches 0, the
+buffer list will be freed.</doc>
+        <source-position filename="gst/gstbufferlist.h" line="91"/>
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="list" transfer-ownership="full">
+            <doc xml:space="preserve"
+                 filename="gst/gstbufferlist.h"
+                 line="86">a #GstBufferList</doc>
+            <type name="BufferList" c:type="GstBufferList*"/>
+          </instance-parameter>
+        </parameters>
+      </method>
     </record>
     <callback name="BufferListFunc" c:type="GstBufferListFunc">
-      <doc xml:space="preserve">A function that will be called from gst_buffer_list_foreach(). The @buffer
+      <doc xml:space="preserve"
+           filename="gst/gstbufferlist.h"
+           line="39">A function that will be called from gst_buffer_list_foreach(). The @buffer
 field will point to a the reference of the buffer at @idx.
 
 When this function returns %TRUE, the next buffer will be
@@ -3466,8 +5344,11 @@ When @buffer is set to %NULL, the item will be removed from the bufferlist.
 When @buffer has been made writable, the new buffer reference can be assigned
 to @buffer. This function is responsible for unreffing the old buffer when
 removing or modifying.</doc>
+      <source-position filename="gst/gstbufferlist.h" line="58"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%FALSE when gst_buffer_list_foreach() should stop</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstbufferlist.h"
+             line="56">%FALSE when gst_buffer_list_foreach() should stop</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
@@ -3476,11 +5357,15 @@ removing or modifying.</doc>
                    caller-allocates="0"
                    transfer-ownership="full"
                    nullable="1">
-          <doc xml:space="preserve">pointer the buffer</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstbufferlist.h"
+               line="41">pointer the buffer</doc>
           <type name="Buffer" c:type="GstBuffer**"/>
         </parameter>
         <parameter name="idx" transfer-ownership="none">
-          <doc xml:space="preserve">the index of @buffer</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstbufferlist.h"
+               line="42">the index of @buffer</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
         <parameter name="user_data"
@@ -3488,7 +5373,9 @@ removing or modifying.</doc>
                    nullable="1"
                    allow-none="1"
                    closure="2">
-          <doc xml:space="preserve">user data passed to gst_buffer_list_foreach()</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstbufferlist.h"
+               line="43">user data passed to gst_buffer_list_foreach()</doc>
           <type name="gpointer" c:type="gpointer"/>
         </parameter>
       </parameters>
@@ -3500,7 +5387,9 @@ removing or modifying.</doc>
            glib:type-name="GstBufferPool"
            glib:get-type="gst_buffer_pool_get_type"
            glib:type-struct="BufferPoolClass">
-      <doc xml:space="preserve">A #GstBufferPool is an object that can be used to pre-allocate and recycle
+      <doc xml:space="preserve"
+           filename="gst/gstbufferpool.c"
+           line="22">A #GstBufferPool is an object that can be used to pre-allocate and recycle
 buffers of the same size and with the same properties.
 
 A #GstBufferPool is created with gst_buffer_pool_new().
@@ -3537,43 +5426,63 @@ all buffers are returned to the pool they will be freed.
 
 Use gst_object_unref() to release the reference to a bufferpool. If the
 refcount of the pool reaches 0, the pool will be freed.</doc>
+      <source-position filename="gst/gstbufferpool.h" line="176"/>
       <constructor name="new" c:identifier="gst_buffer_pool_new">
-        <doc xml:space="preserve">Creates a new #GstBufferPool instance.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstbufferpool.c"
+             line="205">Creates a new #GstBufferPool instance.</doc>
+        <source-position filename="gst/gstbufferpool.h" line="184"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new #GstBufferPool instance</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstbufferpool.c"
+               line="210">a new #GstBufferPool instance</doc>
           <type name="BufferPool" c:type="GstBufferPool*"/>
         </return-value>
       </constructor>
       <function name="config_add_option"
                 c:identifier="gst_buffer_pool_config_add_option">
-        <doc xml:space="preserve">Enabled the option in @config. This will instruct the @bufferpool to enable
+        <doc xml:space="preserve"
+             filename="gst/gstbufferpool.c"
+             line="873">Enabled the option in @config. This will instruct the @bufferpool to enable
 the specified option on the buffers that it allocates.
 
 The supported options by @pool can be retrieved with gst_buffer_pool_get_options().</doc>
+        <source-position filename="gst/gstbufferpool.h" line="233"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <parameter name="config" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBufferPool configuration</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbufferpool.c"
+                 line="875">a #GstBufferPool configuration</doc>
             <type name="Structure" c:type="GstStructure*"/>
           </parameter>
           <parameter name="option" transfer-ownership="none">
-            <doc xml:space="preserve">an option to add</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbufferpool.c"
+                 line="876">an option to add</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </function>
       <function name="config_get_allocator"
                 c:identifier="gst_buffer_pool_config_get_allocator">
-        <doc xml:space="preserve">Get the @allocator and @params from @config.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE, if the values are set.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstbufferpool.c"
+             line="1024">Get the @allocator and @params from @config.</doc>
+        <source-position filename="gst/gstbufferpool.h" line="224"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstbufferpool.c"
+               line="1032">%TRUE, if the values are set.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <parameter name="config" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBufferPool configuration</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbufferpool.c"
+                 line="1026">a #GstBufferPool configuration</doc>
             <type name="Structure" c:type="GstStructure*"/>
           </parameter>
           <parameter name="allocator"
@@ -3582,7 +5491,9 @@ The supported options by @pool can be retrieved with gst_buffer_pool_get_options
                      transfer-ownership="none"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">a #GstAllocator, or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbufferpool.c"
+                 line="1027">a #GstAllocator, or %NULL</doc>
             <type name="Allocator" c:type="GstAllocator**"/>
           </parameter>
           <parameter name="params"
@@ -3591,40 +5502,58 @@ The supported options by @pool can be retrieved with gst_buffer_pool_get_options
                      transfer-ownership="none"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">#GstAllocationParams, or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbufferpool.c"
+                 line="1028">#GstAllocationParams, or %NULL</doc>
             <type name="AllocationParams" c:type="GstAllocationParams*"/>
           </parameter>
         </parameters>
       </function>
       <function name="config_get_option"
                 c:identifier="gst_buffer_pool_config_get_option">
-        <doc xml:space="preserve">Parse an available @config and get the option at @index of the options API
+        <doc xml:space="preserve"
+             filename="gst/gstbufferpool.c"
+             line="937">Parse an available @config and get the option at @index of the options API
 array.</doc>
+        <source-position filename="gst/gstbufferpool.h" line="236"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #gchar of the option at @index.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstbufferpool.c"
+               line="945">a #gchar of the option at @index.</doc>
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
         <parameters>
           <parameter name="config" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBufferPool configuration</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbufferpool.c"
+                 line="939">a #GstBufferPool configuration</doc>
             <type name="Structure" c:type="GstStructure*"/>
           </parameter>
           <parameter name="index" transfer-ownership="none">
-            <doc xml:space="preserve">position in the option array to read</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbufferpool.c"
+                 line="940">position in the option array to read</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </function>
       <function name="config_get_params"
                 c:identifier="gst_buffer_pool_config_get_params">
-        <doc xml:space="preserve">Get the configuration values from @config.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if all parameters could be fetched.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstbufferpool.c"
+             line="996">Get the configuration values from @config.</doc>
+        <source-position filename="gst/gstbufferpool.h" line="216"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstbufferpool.c"
+               line="1006">%TRUE if all parameters could be fetched.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <parameter name="config" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBufferPool configuration</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbufferpool.c"
+                 line="998">a #GstBufferPool configuration</doc>
             <type name="Structure" c:type="GstStructure*"/>
           </parameter>
           <parameter name="caps"
@@ -3633,7 +5562,9 @@ array.</doc>
                      transfer-ownership="none"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">the caps of buffers</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbufferpool.c"
+                 line="999">the caps of buffers</doc>
             <type name="Caps" c:type="GstCaps**"/>
           </parameter>
           <parameter name="size"
@@ -3642,7 +5573,9 @@ array.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">the size of each buffer, not including prefix and padding</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbufferpool.c"
+                 line="1000">the size of each buffer, not including prefix and padding</doc>
             <type name="guint" c:type="guint*"/>
           </parameter>
           <parameter name="min_buffers"
@@ -3651,7 +5584,9 @@ array.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">the minimum amount of buffers to allocate.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbufferpool.c"
+                 line="1001">the minimum amount of buffers to allocate.</doc>
             <type name="guint" c:type="guint*"/>
           </parameter>
           <parameter name="max_buffers"
@@ -3660,47 +5595,67 @@ array.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">the maximum amount of buffers to allocate or 0 for unlimited.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbufferpool.c"
+                 line="1002">the maximum amount of buffers to allocate or 0 for unlimited.</doc>
             <type name="guint" c:type="guint*"/>
           </parameter>
         </parameters>
       </function>
       <function name="config_has_option"
                 c:identifier="gst_buffer_pool_config_has_option">
-        <doc xml:space="preserve">Check if @config contains @option.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the options array contains @option.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstbufferpool.c"
+             line="966">Check if @config contains @option.</doc>
+        <source-position filename="gst/gstbufferpool.h" line="239"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstbufferpool.c"
+               line="973">%TRUE if the options array contains @option.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <parameter name="config" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBufferPool configuration</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbufferpool.c"
+                 line="968">a #GstBufferPool configuration</doc>
             <type name="Structure" c:type="GstStructure*"/>
           </parameter>
           <parameter name="option" transfer-ownership="none">
-            <doc xml:space="preserve">an option</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbufferpool.c"
+                 line="969">an option</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </function>
       <function name="config_n_options"
                 c:identifier="gst_buffer_pool_config_n_options">
-        <doc xml:space="preserve">Retrieve the number of values currently stored in the options array of the
+        <doc xml:space="preserve"
+             filename="gst/gstbufferpool.c"
+             line="913">Retrieve the number of values currently stored in the options array of the
 @config structure.</doc>
+        <source-position filename="gst/gstbufferpool.h" line="230"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the options array size as a #guint.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstbufferpool.c"
+               line="920">the options array size as a #guint.</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <parameter name="config" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBufferPool configuration</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbufferpool.c"
+                 line="915">a #GstBufferPool configuration</doc>
             <type name="Structure" c:type="GstStructure*"/>
           </parameter>
         </parameters>
       </function>
       <function name="config_set_allocator"
                 c:identifier="gst_buffer_pool_config_set_allocator">
-        <doc xml:space="preserve">Set the @allocator and @params on @config.
+        <doc xml:space="preserve"
+             filename="gst/gstbufferpool.c"
+             line="842">Set the @allocator and @params on @config.
 
 One of @allocator and @params can be %NULL, but not both. When @allocator
 is %NULL, the default allocator of the pool will use the values in @param
@@ -3712,55 +5667,75 @@ with the values that it is able to do. Some pools are, for example, not able
 to operate with different allocators or cannot allocate with the values
 specified in @params. Use gst_buffer_pool_get_config() to get the currently
 used values.</doc>
+        <source-position filename="gst/gstbufferpool.h" line="220"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <parameter name="config" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBufferPool configuration</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbufferpool.c"
+                 line="844">a #GstBufferPool configuration</doc>
             <type name="Structure" c:type="GstStructure*"/>
           </parameter>
           <parameter name="allocator"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">a #GstAllocator</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbufferpool.c"
+                 line="845">a #GstAllocator</doc>
             <type name="Allocator" c:type="GstAllocator*"/>
           </parameter>
           <parameter name="params"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">#GstAllocationParams</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbufferpool.c"
+                 line="846">#GstAllocationParams</doc>
             <type name="AllocationParams" c:type="const GstAllocationParams*"/>
           </parameter>
         </parameters>
       </function>
       <function name="config_set_params"
                 c:identifier="gst_buffer_pool_config_set_params">
-        <doc xml:space="preserve">Configure @config with the given parameters.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstbufferpool.c"
+             line="817">Configure @config with the given parameters.</doc>
+        <source-position filename="gst/gstbufferpool.h" line="212"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <parameter name="config" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBufferPool configuration</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbufferpool.c"
+                 line="819">a #GstBufferPool configuration</doc>
             <type name="Structure" c:type="GstStructure*"/>
           </parameter>
           <parameter name="caps" transfer-ownership="none">
-            <doc xml:space="preserve">caps for the buffers</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbufferpool.c"
+                 line="820">caps for the buffers</doc>
             <type name="Caps" c:type="GstCaps*"/>
           </parameter>
           <parameter name="size" transfer-ownership="none">
-            <doc xml:space="preserve">the size of each buffer, not including prefix and padding</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbufferpool.c"
+                 line="821">the size of each buffer, not including prefix and padding</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="min_buffers" transfer-ownership="none">
-            <doc xml:space="preserve">the minimum amount of buffers to allocate.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbufferpool.c"
+                 line="822">the minimum amount of buffers to allocate.</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="max_buffers" transfer-ownership="none">
-            <doc xml:space="preserve">the maximum amount of buffers to allocate or 0 for unlimited.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbufferpool.c"
+                 line="823">the maximum amount of buffers to allocate or 0 for unlimited.</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
@@ -3768,7 +5743,9 @@ used values.</doc>
       <function name="config_validate_params"
                 c:identifier="gst_buffer_pool_config_validate_params"
                 version="1.4">
-        <doc xml:space="preserve">Validate that changes made to @config are still valid in the context of the
+        <doc xml:space="preserve"
+             filename="gst/gstbufferpool.c"
+             line="1057">Validate that changes made to @config are still valid in the context of the
 expected parameters. This function is a helper that can be used to validate
 changes made by a pool to a config when gst_buffer_pool_set_config()
 returns %FALSE. This expects that @caps haven't changed and that
@@ -3776,67 +5753,92 @@ returns %FALSE. This expects that @caps haven't changed and that
 This does not check if options or allocator parameters are still valid,
 won't check if size have changed, since changing the size is valid to adapt
 padding.</doc>
+        <source-position filename="gst/gstbufferpool.h" line="242"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE, if the parameters are valid in this context.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstbufferpool.c"
+               line="1076">%TRUE, if the parameters are valid in this context.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <parameter name="config" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBufferPool configuration</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbufferpool.c"
+                 line="1059">a #GstBufferPool configuration</doc>
             <type name="Structure" c:type="GstStructure*"/>
           </parameter>
           <parameter name="caps" transfer-ownership="none">
-            <doc xml:space="preserve">the excepted caps of buffers</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbufferpool.c"
+                 line="1060">the excepted caps of buffers</doc>
             <type name="Caps" c:type="GstCaps*"/>
           </parameter>
           <parameter name="size" transfer-ownership="none">
-            <doc xml:space="preserve">the expected size of each buffer, not including prefix and padding</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbufferpool.c"
+                 line="1061">the expected size of each buffer, not including prefix and padding</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="min_buffers" transfer-ownership="none">
-            <doc xml:space="preserve">the expected minimum amount of buffers to allocate.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbufferpool.c"
+                 line="1062">the expected minimum amount of buffers to allocate.</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="max_buffers" transfer-ownership="none">
-            <doc xml:space="preserve">the expect maximum amount of buffers to allocate or 0 for unlimited.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbufferpool.c"
+                 line="1063">the expect maximum amount of buffers to allocate or 0 for unlimited.</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </function>
       <virtual-method name="acquire_buffer" invoker="acquire_buffer">
-        <doc xml:space="preserve">Acquire a buffer from @pool. @buffer should point to a memory location that
+        <doc xml:space="preserve"
+             filename="gst/gstbufferpool.c"
+             line="1235">Acquire a buffer from @pool. @buffer should point to a memory location that
 can hold a pointer to the new buffer.
 
 @params can be %NULL or contain optional parameters to influence the
 allocation.</doc>
+        <source-position filename="gst/gstbufferpool.h" line="164"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstFlowReturn such as %GST_FLOW_FLUSHING when the pool is
+          <doc xml:space="preserve"
+               filename="gst/gstbufferpool.c"
+               line="1247">a #GstFlowReturn such as %GST_FLOW_FLUSHING when the pool is
 inactive.</doc>
           <type name="FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
         <parameters>
           <instance-parameter name="pool" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBufferPool</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbufferpool.c"
+                 line="1237">a #GstBufferPool</doc>
             <type name="BufferPool" c:type="GstBufferPool*"/>
           </instance-parameter>
           <parameter name="buffer"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">a location for a #GstBuffer</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbufferpool.c"
+                 line="1238">a location for a #GstBuffer</doc>
             <type name="Buffer" c:type="GstBuffer**"/>
           </parameter>
           <parameter name="params"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">parameters.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbufferpool.c"
+                 line="1239">parameters.</doc>
             <type name="BufferPoolAcquireParams"
                   c:type="GstBufferPoolAcquireParams*"/>
           </parameter>
         </parameters>
       </virtual-method>
       <virtual-method name="alloc_buffer">
+        <source-position filename="gst/gstbufferpool.h" line="166"/>
         <return-value transfer-ownership="none">
           <type name="FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
@@ -3854,6 +5856,7 @@ inactive.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="flush_start">
+        <source-position filename="gst/gstbufferpool.h" line="171"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
@@ -3864,6 +5867,7 @@ inactive.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="flush_stop">
+        <source-position filename="gst/gstbufferpool.h" line="172"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
@@ -3874,6 +5878,7 @@ inactive.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="free_buffer">
+        <source-position filename="gst/gstbufferpool.h" line="170"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
@@ -3887,11 +5892,16 @@ inactive.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="get_options" invoker="get_options">
-        <doc xml:space="preserve">Get a %NULL terminated array of string with supported bufferpool options for
+        <doc xml:space="preserve"
+             filename="gst/gstbufferpool.c"
+             line="753">Get a %NULL terminated array of string with supported bufferpool options for
 @pool. An option would typically be enabled with
 gst_buffer_pool_config_add_option().</doc>
+        <source-position filename="gst/gstbufferpool.h" line="158"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a %NULL terminated array
+          <doc xml:space="preserve"
+               filename="gst/gstbufferpool.c"
+               line="761">a %NULL terminated array
          of strings.</doc>
           <array c:type="const gchar**">
             <type name="utf8"/>
@@ -3899,32 +5909,42 @@ gst_buffer_pool_config_add_option().</doc>
         </return-value>
         <parameters>
           <instance-parameter name="pool" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBufferPool</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbufferpool.c"
+                 line="755">a #GstBufferPool</doc>
             <type name="BufferPool" c:type="GstBufferPool*"/>
           </instance-parameter>
         </parameters>
       </virtual-method>
       <virtual-method name="release_buffer" invoker="release_buffer">
-        <doc xml:space="preserve">Release @buffer to @pool. @buffer should have previously been allocated from
+        <doc xml:space="preserve"
+             filename="gst/gstbufferpool.c"
+             line="1334">Release @buffer to @pool. @buffer should have previously been allocated from
 @pool with gst_buffer_pool_acquire_buffer().
 
 This function is usually called automatically when the last ref on @buffer
 disappears.</doc>
+        <source-position filename="gst/gstbufferpool.h" line="169"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="pool" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBufferPool</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbufferpool.c"
+                 line="1336">a #GstBufferPool</doc>
             <type name="BufferPool" c:type="GstBufferPool*"/>
           </instance-parameter>
           <parameter name="buffer" transfer-ownership="full">
-            <doc xml:space="preserve">a #GstBuffer</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbufferpool.c"
+                 line="1337">a #GstBuffer</doc>
             <type name="Buffer" c:type="GstBuffer*"/>
           </parameter>
         </parameters>
       </virtual-method>
       <virtual-method name="reset_buffer">
+        <source-position filename="gst/gstbufferpool.h" line="168"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
@@ -3938,7 +5958,9 @@ disappears.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="set_config" invoker="set_config">
-        <doc xml:space="preserve">Set the configuration of the pool. If the pool is already configured, and
+        <doc xml:space="preserve"
+             filename="gst/gstbufferpool.c"
+             line="631">Set the configuration of the pool. If the pool is already configured, and
 the configuration haven't change, this function will return %TRUE. If the
 pool is active, this method will return %FALSE and active configuration
 will remain. Buffers allocated form this pool must be returned or else this
@@ -3954,22 +5976,30 @@ If the parameters in @config can not be set exactly, this function returns
 then be retrieved and refined with gst_buffer_pool_get_config().
 
 This function takes ownership of @config.</doc>
+        <source-position filename="gst/gstbufferpool.h" line="159"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE when the configuration could be set.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstbufferpool.c"
+               line="653">%TRUE when the configuration could be set.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="pool" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBufferPool</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbufferpool.c"
+                 line="633">a #GstBufferPool</doc>
             <type name="BufferPool" c:type="GstBufferPool*"/>
           </instance-parameter>
           <parameter name="config" transfer-ownership="full">
-            <doc xml:space="preserve">a #GstStructure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbufferpool.c"
+                 line="634">a #GstStructure</doc>
             <type name="Structure" c:type="GstStructure*"/>
           </parameter>
         </parameters>
       </virtual-method>
       <virtual-method name="start">
+        <source-position filename="gst/gstbufferpool.h" line="161"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -3980,6 +6010,7 @@ This function takes ownership of @config.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="stop">
+        <source-position filename="gst/gstbufferpool.h" line="162"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -3991,60 +6022,83 @@ This function takes ownership of @config.</doc>
       </virtual-method>
       <method name="acquire_buffer"
               c:identifier="gst_buffer_pool_acquire_buffer">
-        <doc xml:space="preserve">Acquire a buffer from @pool. @buffer should point to a memory location that
+        <doc xml:space="preserve"
+             filename="gst/gstbufferpool.c"
+             line="1235">Acquire a buffer from @pool. @buffer should point to a memory location that
 can hold a pointer to the new buffer.
 
 @params can be %NULL or contain optional parameters to influence the
 allocation.</doc>
+        <source-position filename="gst/gstbufferpool.h" line="248"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstFlowReturn such as %GST_FLOW_FLUSHING when the pool is
+          <doc xml:space="preserve"
+               filename="gst/gstbufferpool.c"
+               line="1247">a #GstFlowReturn such as %GST_FLOW_FLUSHING when the pool is
 inactive.</doc>
           <type name="FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
         <parameters>
           <instance-parameter name="pool" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBufferPool</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbufferpool.c"
+                 line="1237">a #GstBufferPool</doc>
             <type name="BufferPool" c:type="GstBufferPool*"/>
           </instance-parameter>
           <parameter name="buffer"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">a location for a #GstBuffer</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbufferpool.c"
+                 line="1238">a location for a #GstBuffer</doc>
             <type name="Buffer" c:type="GstBuffer**"/>
           </parameter>
           <parameter name="params"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">parameters.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbufferpool.c"
+                 line="1239">parameters.</doc>
             <type name="BufferPoolAcquireParams"
                   c:type="GstBufferPoolAcquireParams*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_config" c:identifier="gst_buffer_pool_get_config">
-        <doc xml:space="preserve">Get a copy of the current configuration of the pool. This configuration
+        <doc xml:space="preserve"
+             filename="gst/gstbufferpool.c"
+             line="726">Get a copy of the current configuration of the pool. This configuration
 can either be modified and used for the gst_buffer_pool_set_config() call
 or it must be freed after usage.</doc>
+        <source-position filename="gst/gstbufferpool.h" line="198"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a copy of the current configuration of @pool. use
+          <doc xml:space="preserve"
+               filename="gst/gstbufferpool.c"
+               line="734">a copy of the current configuration of @pool. use
 gst_structure_free() after usage or gst_buffer_pool_set_config().</doc>
           <type name="Structure" c:type="GstStructure*"/>
         </return-value>
         <parameters>
           <instance-parameter name="pool" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBufferPool</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbufferpool.c"
+                 line="728">a #GstBufferPool</doc>
             <type name="BufferPool" c:type="GstBufferPool*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_options" c:identifier="gst_buffer_pool_get_options">
-        <doc xml:space="preserve">Get a %NULL terminated array of string with supported bufferpool options for
+        <doc xml:space="preserve"
+             filename="gst/gstbufferpool.c"
+             line="753">Get a %NULL terminated array of string with supported bufferpool options for
 @pool. An option would typically be enabled with
 gst_buffer_pool_config_add_option().</doc>
+        <source-position filename="gst/gstbufferpool.h" line="201"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a %NULL terminated array
+          <doc xml:space="preserve"
+               filename="gst/gstbufferpool.c"
+               line="761">a %NULL terminated array
          of strings.</doc>
           <array c:type="const gchar**">
             <type name="utf8"/>
@@ -4052,65 +6106,92 @@ gst_buffer_pool_config_add_option().</doc>
         </return-value>
         <parameters>
           <instance-parameter name="pool" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBufferPool</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbufferpool.c"
+                 line="755">a #GstBufferPool</doc>
             <type name="BufferPool" c:type="GstBufferPool*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="has_option" c:identifier="gst_buffer_pool_has_option">
-        <doc xml:space="preserve">Check if the bufferpool supports @option.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the buffer pool contains @option.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstbufferpool.c"
+             line="790">Check if the bufferpool supports @option.</doc>
+        <source-position filename="gst/gstbufferpool.h" line="204"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstbufferpool.c"
+               line="797">%TRUE if the buffer pool contains @option.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="pool" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBufferPool</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbufferpool.c"
+                 line="792">a #GstBufferPool</doc>
             <type name="BufferPool" c:type="GstBufferPool*"/>
           </instance-parameter>
           <parameter name="option" transfer-ownership="none">
-            <doc xml:space="preserve">an option</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbufferpool.c"
+                 line="793">an option</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </method>
       <method name="is_active" c:identifier="gst_buffer_pool_is_active">
-        <doc xml:space="preserve">Check if @pool is active. A pool can be activated with the
+        <doc xml:space="preserve"
+             filename="gst/gstbufferpool.c"
+             line="571">Check if @pool is active. A pool can be activated with the
 gst_buffer_pool_set_active() call.</doc>
+        <source-position filename="gst/gstbufferpool.h" line="192"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE when the pool is active.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstbufferpool.c"
+               line="578">%TRUE when the pool is active.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="pool" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBufferPool</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbufferpool.c"
+                 line="573">a #GstBufferPool</doc>
             <type name="BufferPool" c:type="GstBufferPool*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="release_buffer"
               c:identifier="gst_buffer_pool_release_buffer">
-        <doc xml:space="preserve">Release @buffer to @pool. @buffer should have previously been allocated from
+        <doc xml:space="preserve"
+             filename="gst/gstbufferpool.c"
+             line="1334">Release @buffer to @pool. @buffer should have previously been allocated from
 @pool with gst_buffer_pool_acquire_buffer().
 
 This function is usually called automatically when the last ref on @buffer
 disappears.</doc>
+        <source-position filename="gst/gstbufferpool.h" line="252"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="pool" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBufferPool</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbufferpool.c"
+                 line="1336">a #GstBufferPool</doc>
             <type name="BufferPool" c:type="GstBufferPool*"/>
           </instance-parameter>
           <parameter name="buffer" transfer-ownership="full">
-            <doc xml:space="preserve">a #GstBuffer</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbufferpool.c"
+                 line="1337">a #GstBuffer</doc>
             <type name="Buffer" c:type="GstBuffer*"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_active" c:identifier="gst_buffer_pool_set_active">
-        <doc xml:space="preserve">Control the active state of @pool. When the pool is inactive, new calls to
+        <doc xml:space="preserve"
+             filename="gst/gstbufferpool.c"
+             line="475">Control the active state of @pool. When the pool is inactive, new calls to
 gst_buffer_pool_acquire_buffer() will return with %GST_FLOW_FLUSHING.
 
 Activating the bufferpool will preallocate all resources in the pool based on
@@ -4119,24 +6200,33 @@ the configuration of the pool.
 Deactivating will free the resources again when there are no outstanding
 buffers. When there are outstanding buffers, they will be freed as soon as
 they are all returned to the pool.</doc>
+        <source-position filename="gst/gstbufferpool.h" line="189"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%FALSE when the pool was not configured or when preallocation of the
+          <doc xml:space="preserve"
+               filename="gst/gstbufferpool.c"
+               line="490">%FALSE when the pool was not configured or when preallocation of the
 buffers failed.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="pool" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBufferPool</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbufferpool.c"
+                 line="477">a #GstBufferPool</doc>
             <type name="BufferPool" c:type="GstBufferPool*"/>
           </instance-parameter>
           <parameter name="active" transfer-ownership="none">
-            <doc xml:space="preserve">the new active state</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbufferpool.c"
+                 line="478">the new active state</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_config" c:identifier="gst_buffer_pool_set_config">
-        <doc xml:space="preserve">Set the configuration of the pool. If the pool is already configured, and
+        <doc xml:space="preserve"
+             filename="gst/gstbufferpool.c"
+             line="631">Set the configuration of the pool. If the pool is already configured, and
 the configuration haven't change, this function will return %TRUE. If the
 pool is active, this method will return %FALSE and active configuration
 will remain. Buffers allocated form this pool must be returned or else this
@@ -4152,17 +6242,24 @@ If the parameters in @config can not be set exactly, this function returns
 then be retrieved and refined with gst_buffer_pool_get_config().
 
 This function takes ownership of @config.</doc>
+        <source-position filename="gst/gstbufferpool.h" line="195"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE when the configuration could be set.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstbufferpool.c"
+               line="653">%TRUE when the configuration could be set.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="pool" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBufferPool</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbufferpool.c"
+                 line="633">a #GstBufferPool</doc>
             <type name="BufferPool" c:type="GstBufferPool*"/>
           </instance-parameter>
           <parameter name="config" transfer-ownership="full">
-            <doc xml:space="preserve">a #GstStructure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbufferpool.c"
+                 line="634">a #GstStructure</doc>
             <type name="Structure" c:type="GstStructure*"/>
           </parameter>
         </parameters>
@@ -4170,18 +6267,25 @@ This function takes ownership of @config.</doc>
       <method name="set_flushing"
               c:identifier="gst_buffer_pool_set_flushing"
               version="1.4">
-        <doc xml:space="preserve">Enable or disable the flushing state of a @pool without freeing or
+        <doc xml:space="preserve"
+             filename="gst/gstbufferpool.c"
+             line="1373">Enable or disable the flushing state of a @pool without freeing or
 allocating buffers.</doc>
+        <source-position filename="gst/gstbufferpool.h" line="207"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="pool" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBufferPool</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbufferpool.c"
+                 line="1375">a #GstBufferPool</doc>
             <type name="BufferPool" c:type="GstBufferPool*"/>
           </instance-parameter>
           <parameter name="flushing" transfer-ownership="none">
-            <doc xml:space="preserve">whether to start or stop flushing</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbufferpool.c"
+                 line="1376">whether to start or stop flushing</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
@@ -4196,7 +6300,7 @@ allocating buffers.</doc>
         <type name="BufferPoolPrivate" c:type="GstBufferPoolPrivate*"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -4205,24 +6309,32 @@ allocating buffers.</doc>
               glib:type-name="GstBufferPoolAcquireFlags"
               glib:get-type="gst_buffer_pool_acquire_flags_get_type"
               c:type="GstBufferPoolAcquireFlags">
-      <doc xml:space="preserve">Additional flags to control the allocation of a buffer</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstbufferpool.h"
+           line="43">Additional flags to control the allocation of a buffer</doc>
       <member name="none"
               value="0"
               c:identifier="GST_BUFFER_POOL_ACQUIRE_FLAG_NONE"
               glib:nick="none">
-        <doc xml:space="preserve">no flags</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstbufferpool.h"
+             line="45">no flags</doc>
       </member>
       <member name="key_unit"
               value="1"
               c:identifier="GST_BUFFER_POOL_ACQUIRE_FLAG_KEY_UNIT"
               glib:nick="key-unit">
-        <doc xml:space="preserve">buffer is keyframe</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstbufferpool.h"
+             line="46">buffer is keyframe</doc>
       </member>
       <member name="dontwait"
               value="2"
               c:identifier="GST_BUFFER_POOL_ACQUIRE_FLAG_DONTWAIT"
               glib:nick="dontwait">
-        <doc xml:space="preserve">when the bufferpool is empty, acquire_buffer
+        <doc xml:space="preserve"
+             filename="gst/gstbufferpool.h"
+             line="47">when the bufferpool is empty, acquire_buffer
 will by default block until a buffer is released into the pool again. Setting
 this flag makes acquire_buffer return #GST_FLOW_EOS instead of blocking.</doc>
       </member>
@@ -4230,42 +6342,57 @@ this flag makes acquire_buffer return #GST_FLOW_EOS instead of blocking.</doc>
               value="4"
               c:identifier="GST_BUFFER_POOL_ACQUIRE_FLAG_DISCONT"
               glib:nick="discont">
-        <doc xml:space="preserve">buffer is discont</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstbufferpool.h"
+             line="50">buffer is discont</doc>
       </member>
       <member name="last"
               value="65536"
               c:identifier="GST_BUFFER_POOL_ACQUIRE_FLAG_LAST"
               glib:nick="last">
-        <doc xml:space="preserve">last flag, subclasses can use private flags
+        <doc xml:space="preserve"
+             filename="gst/gstbufferpool.h"
+             line="51">last flag, subclasses can use private flags
    starting from this value.</doc>
       </member>
     </bitfield>
     <record name="BufferPoolAcquireParams" c:type="GstBufferPoolAcquireParams">
-      <doc xml:space="preserve">Parameters passed to the gst_buffer_pool_acquire_buffer() function to control the
+      <doc xml:space="preserve"
+           filename="gst/gstbufferpool.h"
+           line="66">Parameters passed to the gst_buffer_pool_acquire_buffer() function to control the
 allocation of the buffer.
 
 The default implementation ignores the @start and @stop members but other
 implementations can use this extra information to decide what buffer to
 return.</doc>
+      <source-position filename="gst/gstbufferpool.h" line="88"/>
       <field name="format" writable="1">
-        <doc xml:space="preserve">the format of @start and @stop</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstbufferpool.h"
+             line="68">the format of @start and @stop</doc>
         <type name="Format" c:type="GstFormat"/>
       </field>
       <field name="start" writable="1">
-        <doc xml:space="preserve">the start position</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstbufferpool.h"
+             line="69">the start position</doc>
         <type name="gint64" c:type="gint64"/>
       </field>
       <field name="stop" writable="1">
-        <doc xml:space="preserve">the stop position</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstbufferpool.h"
+             line="70">the stop position</doc>
         <type name="gint64" c:type="gint64"/>
       </field>
       <field name="flags" writable="1">
-        <doc xml:space="preserve">additional flags</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstbufferpool.h"
+             line="71">additional flags</doc>
         <type name="BufferPoolAcquireFlags"
               c:type="GstBufferPoolAcquireFlags"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -4273,15 +6400,23 @@ return.</doc>
     <record name="BufferPoolClass"
             c:type="GstBufferPoolClass"
             glib:is-gtype-struct-for="BufferPool">
-      <doc xml:space="preserve">The GstBufferPool class.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstbufferpool.h"
+           line="117">The GstBufferPool class.</doc>
+      <source-position filename="gst/gstbufferpool.h" line="176"/>
       <field name="object_class">
-        <doc xml:space="preserve">Object parent class</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstbufferpool.h"
+             line="119">Object parent class</doc>
         <type name="ObjectClass" c:type="GstObjectClass"/>
       </field>
       <field name="get_options">
         <callback name="get_options">
+          <source-position filename="gst/gstbufferpool.h" line="158"/>
           <return-value transfer-ownership="none">
-            <doc xml:space="preserve">a %NULL terminated array
+            <doc xml:space="preserve"
+                 filename="gst/gstbufferpool.c"
+                 line="761">a %NULL terminated array
          of strings.</doc>
             <array c:type="const gchar**">
               <type name="utf8"/>
@@ -4289,7 +6424,9 @@ return.</doc>
           </return-value>
           <parameters>
             <parameter name="pool" transfer-ownership="none">
-              <doc xml:space="preserve">a #GstBufferPool</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstbufferpool.c"
+                   line="755">a #GstBufferPool</doc>
               <type name="BufferPool" c:type="GstBufferPool*"/>
             </parameter>
           </parameters>
@@ -4297,17 +6434,24 @@ return.</doc>
       </field>
       <field name="set_config">
         <callback name="set_config">
+          <source-position filename="gst/gstbufferpool.h" line="159"/>
           <return-value transfer-ownership="none">
-            <doc xml:space="preserve">%TRUE when the configuration could be set.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbufferpool.c"
+                 line="653">%TRUE when the configuration could be set.</doc>
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
           <parameters>
             <parameter name="pool" transfer-ownership="none">
-              <doc xml:space="preserve">a #GstBufferPool</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstbufferpool.c"
+                   line="633">a #GstBufferPool</doc>
               <type name="BufferPool" c:type="GstBufferPool*"/>
             </parameter>
             <parameter name="config" transfer-ownership="full">
-              <doc xml:space="preserve">a #GstStructure</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstbufferpool.c"
+                   line="634">a #GstStructure</doc>
               <type name="Structure" c:type="GstStructure*"/>
             </parameter>
           </parameters>
@@ -4315,6 +6459,7 @@ return.</doc>
       </field>
       <field name="start">
         <callback name="start">
+          <source-position filename="gst/gstbufferpool.h" line="161"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -4327,6 +6472,7 @@ return.</doc>
       </field>
       <field name="stop">
         <callback name="stop">
+          <source-position filename="gst/gstbufferpool.h" line="162"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -4339,28 +6485,37 @@ return.</doc>
       </field>
       <field name="acquire_buffer">
         <callback name="acquire_buffer">
+          <source-position filename="gst/gstbufferpool.h" line="164"/>
           <return-value transfer-ownership="none">
-            <doc xml:space="preserve">a #GstFlowReturn such as %GST_FLOW_FLUSHING when the pool is
+            <doc xml:space="preserve"
+                 filename="gst/gstbufferpool.c"
+                 line="1247">a #GstFlowReturn such as %GST_FLOW_FLUSHING when the pool is
 inactive.</doc>
             <type name="FlowReturn" c:type="GstFlowReturn"/>
           </return-value>
           <parameters>
             <parameter name="pool" transfer-ownership="none">
-              <doc xml:space="preserve">a #GstBufferPool</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstbufferpool.c"
+                   line="1237">a #GstBufferPool</doc>
               <type name="BufferPool" c:type="GstBufferPool*"/>
             </parameter>
             <parameter name="buffer"
                        direction="out"
                        caller-allocates="0"
                        transfer-ownership="full">
-              <doc xml:space="preserve">a location for a #GstBuffer</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstbufferpool.c"
+                   line="1238">a location for a #GstBuffer</doc>
               <type name="Buffer" c:type="GstBuffer**"/>
             </parameter>
             <parameter name="params"
                        transfer-ownership="none"
                        nullable="1"
                        allow-none="1">
-              <doc xml:space="preserve">parameters.</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstbufferpool.c"
+                   line="1239">parameters.</doc>
               <type name="BufferPoolAcquireParams"
                     c:type="GstBufferPoolAcquireParams*"/>
             </parameter>
@@ -4369,6 +6524,7 @@ inactive.</doc>
       </field>
       <field name="alloc_buffer">
         <callback name="alloc_buffer">
+          <source-position filename="gst/gstbufferpool.h" line="166"/>
           <return-value transfer-ownership="none">
             <type name="FlowReturn" c:type="GstFlowReturn"/>
           </return-value>
@@ -4388,6 +6544,7 @@ inactive.</doc>
       </field>
       <field name="reset_buffer">
         <callback name="reset_buffer">
+          <source-position filename="gst/gstbufferpool.h" line="168"/>
           <return-value transfer-ownership="none">
             <type name="none" c:type="void"/>
           </return-value>
@@ -4403,16 +6560,21 @@ inactive.</doc>
       </field>
       <field name="release_buffer">
         <callback name="release_buffer">
+          <source-position filename="gst/gstbufferpool.h" line="169"/>
           <return-value transfer-ownership="none">
             <type name="none" c:type="void"/>
           </return-value>
           <parameters>
             <parameter name="pool" transfer-ownership="none">
-              <doc xml:space="preserve">a #GstBufferPool</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstbufferpool.c"
+                   line="1336">a #GstBufferPool</doc>
               <type name="BufferPool" c:type="GstBufferPool*"/>
             </parameter>
             <parameter name="buffer" transfer-ownership="full">
-              <doc xml:space="preserve">a #GstBuffer</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstbufferpool.c"
+                   line="1337">a #GstBuffer</doc>
               <type name="Buffer" c:type="GstBuffer*"/>
             </parameter>
           </parameters>
@@ -4420,6 +6582,7 @@ inactive.</doc>
       </field>
       <field name="free_buffer">
         <callback name="free_buffer">
+          <source-position filename="gst/gstbufferpool.h" line="170"/>
           <return-value transfer-ownership="none">
             <type name="none" c:type="void"/>
           </return-value>
@@ -4435,6 +6598,7 @@ inactive.</doc>
       </field>
       <field name="flush_start">
         <callback name="flush_start">
+          <source-position filename="gst/gstbufferpool.h" line="171"/>
           <return-value transfer-ownership="none">
             <type name="none" c:type="void"/>
           </return-value>
@@ -4447,6 +6611,7 @@ inactive.</doc>
       </field>
       <field name="flush_stop">
         <callback name="flush_stop">
+          <source-position filename="gst/gstbufferpool.h" line="172"/>
           <return-value transfer-ownership="none">
             <type name="none" c:type="void"/>
           </return-value>
@@ -4458,7 +6623,7 @@ inactive.</doc>
         </callback>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="2">
+        <array zero-terminated="0" fixed-size="2">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -4466,35 +6631,46 @@ inactive.</doc>
     <record name="BufferPoolPrivate"
             c:type="GstBufferPoolPrivate"
             disguised="1">
+      <source-position filename="gst/gstbufferpool.h" line="32"/>
     </record>
     <enumeration name="BufferingMode"
                  glib:type-name="GstBufferingMode"
                  glib:get-type="gst_buffering_mode_get_type"
                  c:type="GstBufferingMode">
-      <doc xml:space="preserve">The different types of buffering methods.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstquery.h"
+           line="193">The different types of buffering methods.</doc>
       <member name="stream"
               value="0"
               c:identifier="GST_BUFFERING_STREAM"
               glib:nick="stream">
-        <doc xml:space="preserve">a small amount of data is buffered</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstquery.h"
+             line="195">a small amount of data is buffered</doc>
       </member>
       <member name="download"
               value="1"
               c:identifier="GST_BUFFERING_DOWNLOAD"
               glib:nick="download">
-        <doc xml:space="preserve">the stream is being downloaded</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstquery.h"
+             line="196">the stream is being downloaded</doc>
       </member>
       <member name="timeshift"
               value="2"
               c:identifier="GST_BUFFERING_TIMESHIFT"
               glib:nick="timeshift">
-        <doc xml:space="preserve">the stream is being downloaded in a ringbuffer</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstquery.h"
+             line="197">the stream is being downloaded in a ringbuffer</doc>
       </member>
       <member name="live"
               value="3"
               c:identifier="GST_BUFFERING_LIVE"
               glib:nick="live">
-        <doc xml:space="preserve">the stream is a live stream</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstquery.h"
+             line="198">the stream is a live stream</doc>
       </member>
     </enumeration>
     <class name="Bus"
@@ -4504,7 +6680,9 @@ inactive.</doc>
            glib:type-name="GstBus"
            glib:get-type="gst_bus_get_type"
            glib:type-struct="BusClass">
-      <doc xml:space="preserve">The #GstBus is an object responsible for delivering #GstMessage packets in
+      <doc xml:space="preserve"
+           filename="gst/gstbus.c"
+           line="22">The #GstBus is an object responsible for delivering #GstMessage packets in
 a first-in first-out way from the streaming threads (see #GstTask) to the
 application.
 
@@ -4543,14 +6721,21 @@ Every #GstPipeline has one bus.
 
 Note that a #GstPipeline will set its bus into flushing state when changing
 from READY to NULL state.</doc>
+      <source-position filename="gst/gstbus.h" line="133"/>
       <constructor name="new" c:identifier="gst_bus_new">
-        <doc xml:space="preserve">Creates a new #GstBus instance.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstbus.c"
+             line="297">Creates a new #GstBus instance.</doc>
+        <source-position filename="gst/gstbus.h" line="139"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new #GstBus instance</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstbus.c"
+               line="302">a new #GstBus instance</doc>
           <type name="Bus" c:type="GstBus*"/>
         </return-value>
       </constructor>
       <virtual-method name="message">
+        <source-position filename="gst/gstbus.h" line="128"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
@@ -4564,6 +6749,7 @@ from READY to NULL state.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="sync_message">
+        <source-position filename="gst/gstbus.h" line="129"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
@@ -4577,7 +6763,9 @@ from READY to NULL state.</doc>
         </parameters>
       </virtual-method>
       <method name="add_signal_watch" c:identifier="gst_bus_add_signal_watch">
-        <doc xml:space="preserve">Adds a bus signal watch to the default main context with the default priority
+        <doc xml:space="preserve"
+             filename="gst/gstbus.c"
+             line="1445">Adds a bus signal watch to the default main context with the default priority
 (%G_PRIORITY_DEFAULT). It is also possible to use a non-default
 main context set up using g_main_context_push_thread_default() (before
 one had to create a bus watch source and attach it to the desired main
@@ -4591,19 +6779,24 @@ responsible for calling gst_bus_remove_signal_watch() as many times as this
 function is called.
 
 MT safe.</doc>
+        <source-position filename="gst/gstbus.h" line="212"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="bus" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBus on which you want to receive the "message" signal</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbus.c"
+                 line="1447">a #GstBus on which you want to receive the "message" signal</doc>
             <type name="Bus" c:type="GstBus*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="add_signal_watch_full"
               c:identifier="gst_bus_add_signal_watch_full">
-        <doc xml:space="preserve">Adds a bus signal watch to the default main context with the given @priority
+        <doc xml:space="preserve"
+             filename="gst/gstbus.c"
+             line="1386">Adds a bus signal watch to the default main context with the given @priority
 (e.g. %G_PRIORITY_DEFAULT). It is also possible to use a non-default main
 context set up using g_main_context_push_thread_default()
 (before one had to create a bus watch source and attach it to the desired
@@ -4620,16 +6813,21 @@ There can only be a single bus watch per bus, you must remove any signal
 watch before you can set another type of watch.
 
 MT safe.</doc>
+        <source-position filename="gst/gstbus.h" line="215"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="bus" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBus on which you want to receive the "message" signal</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbus.c"
+                 line="1388">a #GstBus on which you want to receive the "message" signal</doc>
             <type name="Bus" c:type="GstBus*"/>
           </instance-parameter>
           <parameter name="priority" transfer-ownership="none">
-            <doc xml:space="preserve">The priority of the watch.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbus.c"
+                 line="1389">The priority of the watch.</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
         </parameters>
@@ -4638,7 +6836,9 @@ MT safe.</doc>
               c:identifier="gst_bus_add_watch"
               shadowed-by="add_watch_full"
               introspectable="0">
-        <doc xml:space="preserve">Adds a bus watch to the default main context with the default priority
+        <doc xml:space="preserve"
+             filename="gst/gstbus.c"
+             line="1030">Adds a bus watch to the default main context with the default priority
 (%G_PRIORITY_DEFAULT). It is also possible to use a non-default main
 context set up using g_main_context_push_thread_default() (before
 one had to create a bus watch source and attach it to the desired main
@@ -4658,24 +6858,33 @@ The bus watch will take its own reference to the @bus, so it is safe to unref
 @bus using gst_object_unref() after setting the bus watch.
 
 MT safe.</doc>
+        <source-position filename="gst/gstbus.h" line="188"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The event source id or 0 if @bus already got an event source.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstbus.c"
+               line="1057">The event source id or 0 if @bus already got an event source.</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="bus" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBus to create the watch for</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbus.c"
+                 line="1032">a #GstBus to create the watch for</doc>
             <type name="Bus" c:type="GstBus*"/>
           </instance-parameter>
           <parameter name="func" transfer-ownership="none" closure="1">
-            <doc xml:space="preserve">A function to call when a message is received.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbus.c"
+                 line="1033">A function to call when a message is received.</doc>
             <type name="BusFunc" c:type="GstBusFunc"/>
           </parameter>
           <parameter name="user_data"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">user data passed to @func.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbus.c"
+                 line="1034">user data passed to @func.</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
         </parameters>
@@ -4683,7 +6892,9 @@ MT safe.</doc>
       <method name="add_watch_full"
               c:identifier="gst_bus_add_watch_full"
               shadows="add_watch">
-        <doc xml:space="preserve">Adds a bus watch to the default main context with the given @priority (e.g.
+        <doc xml:space="preserve"
+             filename="gst/gstbus.c"
+             line="981">Adds a bus watch to the default main context with the given @priority (e.g.
 %G_PRIORITY_DEFAULT). It is also possible to use a non-default  main
 context set up using g_main_context_push_thread_default() (before
 one had to create a bus watch source and attach it to the desired main
@@ -4706,17 +6917,24 @@ The bus watch will take its own reference to the @bus, so it is safe to unref
 @bus using gst_object_unref() after setting the bus watch.
 
 MT safe.</doc>
+        <source-position filename="gst/gstbus.h" line="182"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The event source id or 0 if @bus already got an event source.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstbus.c"
+               line="1013">The event source id or 0 if @bus already got an event source.</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="bus" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBus to create the watch for.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbus.c"
+                 line="983">a #GstBus to create the watch for.</doc>
             <type name="Bus" c:type="GstBus*"/>
           </instance-parameter>
           <parameter name="priority" transfer-ownership="none">
-            <doc xml:space="preserve">The priority of the watch.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbus.c"
+                 line="984">The priority of the watch.</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="func"
@@ -4724,66 +6942,92 @@ MT safe.</doc>
                      scope="notified"
                      closure="2"
                      destroy="3">
-            <doc xml:space="preserve">A function to call when a message is received.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbus.c"
+                 line="985">A function to call when a message is received.</doc>
             <type name="BusFunc" c:type="GstBusFunc"/>
           </parameter>
           <parameter name="user_data"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">user data passed to @func.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbus.c"
+                 line="986">user data passed to @func.</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
           <parameter name="notify" transfer-ownership="none" scope="async">
-            <doc xml:space="preserve">the function to call when the source is removed.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbus.c"
+                 line="987">the function to call when the source is removed.</doc>
             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
           </parameter>
         </parameters>
       </method>
       <method name="async_signal_func"
               c:identifier="gst_bus_async_signal_func">
-        <doc xml:space="preserve">A helper #GstBusFunc that can be used to convert all asynchronous messages
+        <doc xml:space="preserve"
+             filename="gst/gstbus.c"
+             line="1273">A helper #GstBusFunc that can be used to convert all asynchronous messages
 into signals.</doc>
+        <source-position filename="gst/gstbus.h" line="203"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstbus.c"
+               line="1282">%TRUE</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="bus" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBus</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbus.c"
+                 line="1275">a #GstBus</doc>
             <type name="Bus" c:type="GstBus*"/>
           </instance-parameter>
           <parameter name="message" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstMessage received</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbus.c"
+                 line="1276">the #GstMessage received</doc>
             <type name="Message" c:type="GstMessage*"/>
           </parameter>
           <parameter name="data"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">user data</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbus.c"
+                 line="1277">user data</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
         </parameters>
       </method>
       <method name="create_watch" c:identifier="gst_bus_create_watch">
-        <doc xml:space="preserve">Create watch for this bus. The GSource will be dispatched whenever
+        <doc xml:space="preserve"
+             filename="gst/gstbus.c"
+             line="911">Create watch for this bus. The GSource will be dispatched whenever
 a message is on the bus. After the GSource is dispatched, the
 message is popped off the bus and unreffed.</doc>
+        <source-position filename="gst/gstbus.h" line="179"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">a #GSource that can be added to a mainloop.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstbus.c"
+               line="919">a #GSource that can be added to a mainloop.</doc>
           <type name="GLib.Source" c:type="GSource*"/>
         </return-value>
         <parameters>
           <instance-parameter name="bus" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBus to create the watch for</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbus.c"
+                 line="913">a #GstBus to create the watch for</doc>
             <type name="Bus" c:type="GstBus*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="disable_sync_message_emission"
               c:identifier="gst_bus_disable_sync_message_emission">
-        <doc xml:space="preserve">Instructs GStreamer to stop emitting the "sync-message" signal for this bus.
+        <doc xml:space="preserve"
+             filename="gst/gstbus.c"
+             line="1358">Instructs GStreamer to stop emitting the "sync-message" signal for this bus.
 See gst_bus_enable_sync_message_emission() for more information.
 
 In the event that multiple pieces of code have called
@@ -4794,12 +7038,15 @@ the same as gst_object_ref() that which calls enable should also call
 disable.
 
 MT safe.</doc>
+        <source-position filename="gst/gstbus.h" line="224"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="bus" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBus on which you previously called
+            <doc xml:space="preserve"
+                 filename="gst/gstbus.c"
+                 line="1360">a #GstBus on which you previously called
 gst_bus_enable_sync_message_emission()</doc>
             <type name="Bus" c:type="GstBus*"/>
           </instance-parameter>
@@ -4807,7 +7054,9 @@ gst_bus_enable_sync_message_emission()</doc>
       </method>
       <method name="enable_sync_message_emission"
               c:identifier="gst_bus_enable_sync_message_emission">
-        <doc xml:space="preserve">Instructs GStreamer to emit the "sync-message" signal after running the bus's
+        <doc xml:space="preserve"
+             filename="gst/gstbus.c"
+             line="1326">Instructs GStreamer to emit the "sync-message" signal after running the bus's
 sync handler. This function is here so that code can ensure that they can
 synchronously receive messages without having to affect what the bin's sync
 handler is.
@@ -4817,19 +7066,22 @@ responsible for calling gst_bus_disable_sync_message_emission() as many times
 as this function is called.
 
 While this function looks similar to gst_bus_add_signal_watch(), it is not
-exactly the same -- this function enables &lt;emphasis&gt;synchronous&lt;/emphasis&gt; emission of
+exactly the same -- this function enables *synchronous* emission of
 signals when messages arrive; gst_bus_add_signal_watch() adds an idle callback
-to pop messages off the bus &lt;emphasis&gt;asynchronously&lt;/emphasis&gt;. The sync-message signal
+to pop messages off the bus *asynchronously*. The sync-message signal
 comes from the thread of whatever object posted the message; the "message"
 signal is marshalled to the main thread via the main loop.
 
 MT safe.</doc>
+        <source-position filename="gst/gstbus.h" line="221"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="bus" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBus on which you want to receive the "sync-message" signal</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbus.c"
+                 line="1328">a #GstBus on which you want to receive the "sync-message" signal</doc>
             <type name="Bus" c:type="GstBus*"/>
           </instance-parameter>
         </parameters>
@@ -4837,7 +7089,9 @@ MT safe.</doc>
       <method name="get_pollfd"
               c:identifier="gst_bus_get_pollfd"
               version="1.14">
-        <doc xml:space="preserve">Gets the file descriptor from the bus which can be used to get notified about
+        <doc xml:space="preserve"
+             filename="gst/gstbus.c"
+             line="774">Gets the file descriptor from the bus which can be used to get notified about
 messages being available with functions like g_poll(), and allows integration
 into other event loops based on file descriptors.
 Whenever a message is available, the POLLIN / %G_IO_IN event is set.
@@ -4845,28 +7099,38 @@ Whenever a message is available, the POLLIN / %G_IO_IN event is set.
 Warning: NEVER read or write anything to the returned fd but only use it
 for getting notifications via g_poll() or similar and then use the normal
 GstBus API, e.g. gst_bus_pop().</doc>
+        <source-position filename="gst/gstbus.h" line="174"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="bus" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstBus</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbus.c"
+                 line="776">A #GstBus</doc>
             <type name="Bus" c:type="GstBus*"/>
           </instance-parameter>
           <parameter name="fd"
                      direction="out"
                      caller-allocates="1"
                      transfer-ownership="none">
-            <doc xml:space="preserve">A GPollFD to fill</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbus.c"
+                 line="777">A GPollFD to fill</doc>
             <type name="GLib.PollFD" c:type="GPollFD*"/>
           </parameter>
         </parameters>
       </method>
       <method name="have_pending" c:identifier="gst_bus_have_pending">
-        <doc xml:space="preserve">Check if there are pending messages on the bus that
+        <doc xml:space="preserve"
+             filename="gst/gstbus.c"
+             line="444">Check if there are pending messages on the bus that
 should be handled.</doc>
+        <source-position filename="gst/gstbus.h" line="145"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if there are messages on the bus to be handled, %FALSE
+          <doc xml:space="preserve"
+               filename="gst/gstbus.c"
+               line="451">%TRUE if there are messages on the bus to be handled, %FALSE
 otherwise.
 
 MT safe.</doc>
@@ -4874,17 +7138,24 @@ MT safe.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="bus" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBus to check</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbus.c"
+                 line="446">a #GstBus to check</doc>
             <type name="Bus" c:type="GstBus*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="peek" c:identifier="gst_bus_peek">
-        <doc xml:space="preserve">Peek the message on the top of the bus' queue. The message will remain
+        <doc xml:space="preserve"
+             filename="gst/gstbus.c"
+             line="702">Peek the message on the top of the bus' queue. The message will remain
 on the bus' message queue. A reference is returned, and needs to be unreffed
 by the caller.</doc>
+        <source-position filename="gst/gstbus.h" line="148"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">the #GstMessage that is on the
+          <doc xml:space="preserve"
+               filename="gst/gstbus.c"
+               line="710">the #GstMessage that is on the
     bus, or %NULL if the bus is empty.
 
 MT safe.</doc>
@@ -4892,13 +7163,17 @@ MT safe.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="bus" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBus</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbus.c"
+                 line="704">a #GstBus</doc>
             <type name="Bus" c:type="GstBus*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="poll" c:identifier="gst_bus_poll">
-        <doc xml:space="preserve">Poll the bus for messages. Will block while waiting for messages to come.
+        <doc xml:space="preserve"
+             filename="gst/gstbus.c"
+             line="1178">Poll the bus for messages. Will block while waiting for messages to come.
 You can specify a maximum time to poll with the @timeout parameter. If
 @timeout is negative, this function will block indefinitely.
 
@@ -4931,8 +7206,11 @@ For 0 timeouts use gst_bus_pop_filtered() instead of this function; for
 other short timeouts use gst_bus_timed_pop_filtered(); everything else is
 better handled by setting up an asynchronous bus watch and doing things
 from there.</doc>
+        <source-position filename="gst/gstbus.h" line="197"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">the message that was received,
+          <doc xml:space="preserve"
+               filename="gst/gstbus.c"
+               line="1220">the message that was received,
     or %NULL if the poll timed out. The message is taken from the
     bus and needs to be unreffed with gst_message_unref() after
     usage.</doc>
@@ -4940,25 +7218,36 @@ from there.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="bus" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBus</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbus.c"
+                 line="1180">a #GstBus</doc>
             <type name="Bus" c:type="GstBus*"/>
           </instance-parameter>
           <parameter name="events" transfer-ownership="none">
-            <doc xml:space="preserve">a mask of #GstMessageType, representing the set of message types to
+            <doc xml:space="preserve"
+                 filename="gst/gstbus.c"
+                 line="1181">a mask of #GstMessageType, representing the set of message types to
 poll for (note special handling of extended message types below)</doc>
             <type name="MessageType" c:type="GstMessageType"/>
           </parameter>
           <parameter name="timeout" transfer-ownership="none">
-            <doc xml:space="preserve">the poll timeout, as a #GstClockTime, or #GST_CLOCK_TIME_NONE to poll
+            <doc xml:space="preserve"
+                 filename="gst/gstbus.c"
+                 line="1183">the poll timeout, as a #GstClockTime, or #GST_CLOCK_TIME_NONE to poll
 indefinitely.</doc>
             <type name="ClockTime" c:type="GstClockTime"/>
           </parameter>
         </parameters>
       </method>
       <method name="pop" c:identifier="gst_bus_pop">
-        <doc xml:space="preserve">Get a message from the bus.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstbus.c"
+             line="681">Get a message from the bus.</doc>
+        <source-position filename="gst/gstbus.h" line="151"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">the #GstMessage that is on the
+          <doc xml:space="preserve"
+               filename="gst/gstbus.c"
+               line="687">the #GstMessage that is on the
     bus, or %NULL if the bus is empty. The message is taken from
     the bus and needs to be unreffed with gst_message_unref() after
     usage.
@@ -4968,19 +7257,26 @@ MT safe.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="bus" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBus to pop</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbus.c"
+                 line="683">a #GstBus to pop</doc>
             <type name="Bus" c:type="GstBus*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="pop_filtered" c:identifier="gst_bus_pop_filtered">
-        <doc xml:space="preserve">Get a message matching @type from the bus.  Will discard all messages on
+        <doc xml:space="preserve"
+             filename="gst/gstbus.c"
+             line="654">Get a message matching @type from the bus.  Will discard all messages on
 the bus that do not match @type and that have been posted before the first
 message that does match @type.  If there is no message matching @type on
 the bus, all messages will be discarded. It is not possible to use message
 enums beyond #GST_MESSAGE_EXTENDED in the @events mask.</doc>
+        <source-position filename="gst/gstbus.h" line="154"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">the next #GstMessage matching
+          <doc xml:space="preserve"
+               filename="gst/gstbus.c"
+               line="665">the next #GstMessage matching
     @type that is on the bus, or %NULL if the bus is empty or there
     is no message matching @type. The message is taken from the bus
     and needs to be unreffed with gst_message_unref() after usage.
@@ -4990,46 +7286,64 @@ MT safe.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="bus" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBus to pop</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbus.c"
+                 line="656">a #GstBus to pop</doc>
             <type name="Bus" c:type="GstBus*"/>
           </instance-parameter>
           <parameter name="types" transfer-ownership="none">
-            <doc xml:space="preserve">message types to take into account</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbus.c"
+                 line="657">message types to take into account</doc>
             <type name="MessageType" c:type="GstMessageType"/>
           </parameter>
         </parameters>
       </method>
       <method name="post" c:identifier="gst_bus_post">
-        <doc xml:space="preserve">Post a message on the given bus. Ownership of the message
+        <doc xml:space="preserve"
+             filename="gst/gstbus.c"
+             line="318">Post a message on the given bus. Ownership of the message
 is taken by the bus.</doc>
+        <source-position filename="gst/gstbus.h" line="142"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the message could be posted, %FALSE if the bus is flushing.
+          <doc xml:space="preserve"
+               filename="gst/gstbus.c"
+               line="326">%TRUE if the message could be posted, %FALSE if the bus is flushing.
 
 MT safe.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="bus" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBus to post on</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbus.c"
+                 line="320">a #GstBus to post on</doc>
             <type name="Bus" c:type="GstBus*"/>
           </instance-parameter>
           <parameter name="message" transfer-ownership="full">
-            <doc xml:space="preserve">the #GstMessage to post</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbus.c"
+                 line="321">the #GstMessage to post</doc>
             <type name="Message" c:type="GstMessage*"/>
           </parameter>
         </parameters>
       </method>
       <method name="remove_signal_watch"
               c:identifier="gst_bus_remove_signal_watch">
-        <doc xml:space="preserve">Removes a signal watch previously added with gst_bus_add_signal_watch().
+        <doc xml:space="preserve"
+             filename="gst/gstbus.c"
+             line="1470">Removes a signal watch previously added with gst_bus_add_signal_watch().
 
 MT safe.</doc>
+        <source-position filename="gst/gstbus.h" line="218"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="bus" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBus you previously added a signal watch to</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbus.c"
+                 line="1472">a #GstBus you previously added a signal watch to</doc>
             <type name="Bus" c:type="GstBus*"/>
           </instance-parameter>
         </parameters>
@@ -5037,54 +7351,73 @@ MT safe.</doc>
       <method name="remove_watch"
               c:identifier="gst_bus_remove_watch"
               version="1.6">
-        <doc xml:space="preserve">Removes an installed bus watch from @bus.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE on success or %FALSE if @bus has no event source.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstbus.c"
+             line="1066">Removes an installed bus watch from @bus.</doc>
+        <source-position filename="gst/gstbus.h" line="192"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstbus.c"
+               line="1072">%TRUE on success or %FALSE if @bus has no event source.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="bus" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBus to remove the watch from.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbus.c"
+                 line="1068">a #GstBus to remove the watch from.</doc>
             <type name="Bus" c:type="GstBus*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="set_flushing" c:identifier="gst_bus_set_flushing">
-        <doc xml:space="preserve">If @flushing, flush out and unref any messages queued in the bus. Releases
+        <doc xml:space="preserve"
+             filename="gst/gstbus.c"
+             line="469">If @flushing, flush out and unref any messages queued in the bus. Releases
 references to the message origin objects. Will flush future messages until
 gst_bus_set_flushing() sets @flushing to %FALSE.
 
 MT safe.</doc>
+        <source-position filename="gst/gstbus.h" line="163"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="bus" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBus</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbus.c"
+                 line="471">a #GstBus</doc>
             <type name="Bus" c:type="GstBus*"/>
           </instance-parameter>
           <parameter name="flushing" transfer-ownership="none">
-            <doc xml:space="preserve">whether or not to flush the bus</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbus.c"
+                 line="472">whether or not to flush the bus</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_sync_handler" c:identifier="gst_bus_set_sync_handler">
-        <doc xml:space="preserve">Sets the synchronous handler on the bus. The function will be called
+        <doc xml:space="preserve"
+             filename="gst/gstbus.c"
+             line="733">Sets the synchronous handler on the bus. The function will be called
 every time a new message is posted on the bus. Note that the function
 will be called in the same thread context as the posting object. This
 function is usually only called by the creator of the bus. Applications
 should handle messages asynchronously using the gst_bus watch and poll
 functions.
 
-You cannot replace an existing sync_handler. You can pass %NULL to this
-function, which will clear the existing handler.</doc>
+Before 1.16.3 it was not possible to replace an existing handler and
+clearing an existing handler with %NULL was not thread-safe.</doc>
+        <source-position filename="gst/gstbus.h" line="168"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="bus" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBus to install the handler on</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbus.c"
+                 line="735">a #GstBus to install the handler on</doc>
             <type name="Bus" c:type="GstBus*"/>
           </instance-parameter>
           <parameter name="func"
@@ -5094,56 +7427,78 @@ function, which will clear the existing handler.</doc>
                      scope="notified"
                      closure="1"
                      destroy="2">
-            <doc xml:space="preserve">The handler function to install</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbus.c"
+                 line="736">The handler function to install</doc>
             <type name="BusSyncHandler" c:type="GstBusSyncHandler"/>
           </parameter>
           <parameter name="user_data"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">User data that will be sent to the handler function.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbus.c"
+                 line="737">User data that will be sent to the handler function.</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
           <parameter name="notify" transfer-ownership="none" scope="async">
-            <doc xml:space="preserve">called when @user_data becomes unused</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbus.c"
+                 line="738">called when @user_data becomes unused</doc>
             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
           </parameter>
         </parameters>
       </method>
       <method name="sync_signal_handler"
               c:identifier="gst_bus_sync_signal_handler">
-        <doc xml:space="preserve">A helper GstBusSyncHandler that can be used to convert all synchronous
+        <doc xml:space="preserve"
+             filename="gst/gstbus.c"
+             line="1300">A helper GstBusSyncHandler that can be used to convert all synchronous
 messages into signals.</doc>
+        <source-position filename="gst/gstbus.h" line="206"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">GST_BUS_PASS</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstbus.c"
+               line="1309">GST_BUS_PASS</doc>
           <type name="BusSyncReply" c:type="GstBusSyncReply"/>
         </return-value>
         <parameters>
           <instance-parameter name="bus" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBus</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbus.c"
+                 line="1302">a #GstBus</doc>
             <type name="Bus" c:type="GstBus*"/>
           </instance-parameter>
           <parameter name="message" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstMessage received</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbus.c"
+                 line="1303">the #GstMessage received</doc>
             <type name="Message" c:type="GstMessage*"/>
           </parameter>
           <parameter name="data"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">user data</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbus.c"
+                 line="1304">user data</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
         </parameters>
       </method>
       <method name="timed_pop" c:identifier="gst_bus_timed_pop">
-        <doc xml:space="preserve">Get a message from the bus, waiting up to the specified timeout.
+        <doc xml:space="preserve"
+             filename="gst/gstbus.c"
+             line="628">Get a message from the bus, waiting up to the specified timeout.
 
 If @timeout is 0, this function behaves like gst_bus_pop(). If @timeout is
 #GST_CLOCK_TIME_NONE, this function will block forever until a message was
 posted on the bus.</doc>
+        <source-position filename="gst/gstbus.h" line="157"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">the #GstMessage that is on the
+          <doc xml:space="preserve"
+               filename="gst/gstbus.c"
+               line="639">the #GstMessage that is on the
     bus after the specified timeout or %NULL if the bus is empty
     after the timeout expired.  The message is taken from the bus
     and needs to be unreffed with gst_message_unref() after usage.
@@ -5153,26 +7508,35 @@ MT safe.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="bus" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBus to pop</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbus.c"
+                 line="630">a #GstBus to pop</doc>
             <type name="Bus" c:type="GstBus*"/>
           </instance-parameter>
           <parameter name="timeout" transfer-ownership="none">
-            <doc xml:space="preserve">a timeout</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbus.c"
+                 line="631">a timeout</doc>
             <type name="ClockTime" c:type="GstClockTime"/>
           </parameter>
         </parameters>
       </method>
       <method name="timed_pop_filtered"
               c:identifier="gst_bus_timed_pop_filtered">
-        <doc xml:space="preserve">Get a message from the bus whose type matches the message type mask @types,
+        <doc xml:space="preserve"
+             filename="gst/gstbus.c"
+             line="507">Get a message from the bus whose type matches the message type mask @types,
 waiting up to the specified timeout (and discarding any messages that do not
 match the mask provided).
 
 If @timeout is 0, this function behaves like gst_bus_pop_filtered(). If
 @timeout is #GST_CLOCK_TIME_NONE, this function will block forever until a
 matching message was posted on the bus.</doc>
+        <source-position filename="gst/gstbus.h" line="160"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">a #GstMessage matching the
+          <doc xml:space="preserve"
+               filename="gst/gstbus.c"
+               line="521">a #GstMessage matching the
     filter in @types, or %NULL if no matching message was found on
     the bus until the timeout expired. The message is taken from
     the bus and needs to be unreffed with gst_message_unref() after
@@ -5183,15 +7547,21 @@ MT safe.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="bus" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBus to pop from</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbus.c"
+                 line="509">a #GstBus to pop from</doc>
             <type name="Bus" c:type="GstBus*"/>
           </instance-parameter>
           <parameter name="timeout" transfer-ownership="none">
-            <doc xml:space="preserve">a timeout in nanoseconds, or GST_CLOCK_TIME_NONE to wait forever</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbus.c"
+                 line="510">a timeout in nanoseconds, or GST_CLOCK_TIME_NONE to wait forever</doc>
             <type name="ClockTime" c:type="GstClockTime"/>
           </parameter>
           <parameter name="types" transfer-ownership="none">
-            <doc xml:space="preserve">message types to take into account, GST_MESSAGE_ANY for any type</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbus.c"
+                 line="511">message types to take into account, GST_MESSAGE_ANY for any type</doc>
             <type name="MessageType" c:type="GstMessageType"/>
           </parameter>
         </parameters>
@@ -5210,12 +7580,14 @@ MT safe.</doc>
         <type name="BusPrivate" c:type="GstBusPrivate*"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
       <glib:signal name="message" when="last" detailed="1">
-        <doc xml:space="preserve">A message has been posted on the bus. This signal is emitted from a
+        <doc xml:space="preserve"
+             filename="gst/gstbus.c"
+             line="232">A message has been posted on the bus. This signal is emitted from a
 GSource added to the mainloop. this signal will only be emitted when
 there is a mainloop running.</doc>
         <return-value transfer-ownership="none">
@@ -5223,13 +7595,17 @@ there is a mainloop running.</doc>
         </return-value>
         <parameters>
           <parameter name="message" transfer-ownership="none">
-            <doc xml:space="preserve">the message that has been posted asynchronously</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbus.c"
+                 line="235">the message that has been posted asynchronously</doc>
             <type name="Message"/>
           </parameter>
         </parameters>
       </glib:signal>
       <glib:signal name="sync-message" when="last" detailed="1">
-        <doc xml:space="preserve">A message has been posted on the bus. This signal is emitted from the
+        <doc xml:space="preserve"
+             filename="gst/gstbus.c"
+             line="215">A message has been posted on the bus. This signal is emitted from the
 thread that posted the message so one has to be careful with locking.
 
 This signal will not be emitted by default, you have to call
@@ -5239,7 +7615,9 @@ gst_bus_enable_sync_message_emission() before.</doc>
         </return-value>
         <parameters>
           <parameter name="message" transfer-ownership="none">
-            <doc xml:space="preserve">the message that has been posted synchronously</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstbus.c"
+                 line="218">the message that has been posted synchronously</doc>
             <type name="Message"/>
           </parameter>
         </parameters>
@@ -5248,11 +7626,13 @@ gst_bus_enable_sync_message_emission() before.</doc>
     <record name="BusClass"
             c:type="GstBusClass"
             glib:is-gtype-struct-for="Bus">
+      <source-position filename="gst/gstbus.h" line="133"/>
       <field name="parent_class">
         <type name="ObjectClass" c:type="GstObjectClass"/>
       </field>
       <field name="message">
         <callback name="message">
+          <source-position filename="gst/gstbus.h" line="128"/>
           <return-value transfer-ownership="none">
             <type name="none" c:type="void"/>
           </return-value>
@@ -5268,6 +7648,7 @@ gst_bus_enable_sync_message_emission() before.</doc>
       </field>
       <field name="sync_message">
         <callback name="sync_message">
+          <source-position filename="gst/gstbus.h" line="129"/>
           <return-value transfer-ownership="none">
             <type name="none" c:type="void"/>
           </return-value>
@@ -5282,7 +7663,7 @@ gst_bus_enable_sync_message_emission() before.</doc>
         </callback>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -5291,22 +7672,30 @@ gst_bus_enable_sync_message_emission() before.</doc>
               glib:type-name="GstBusFlags"
               glib:get-type="gst_bus_flags_get_type"
               c:type="GstBusFlags">
-      <doc xml:space="preserve">The standard flags that a bus may have.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstbus.h"
+           line="43">The standard flags that a bus may have.</doc>
       <member name="flushing"
               value="16"
               c:identifier="GST_BUS_FLUSHING"
               glib:nick="flushing">
-        <doc xml:space="preserve">The bus is currently dropping all messages</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstbus.h"
+             line="45">The bus is currently dropping all messages</doc>
       </member>
       <member name="flag_last"
               value="32"
               c:identifier="GST_BUS_FLAG_LAST"
               glib:nick="flag-last">
-        <doc xml:space="preserve">offset to define more flags</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstbus.h"
+             line="46">offset to define more flags</doc>
       </member>
     </bitfield>
     <callback name="BusFunc" c:type="GstBusFunc">
-      <doc xml:space="preserve">Specifies the type of function passed to gst_bus_add_watch() or
+      <doc xml:space="preserve"
+           filename="gst/gstbus.h"
+           line="88">Specifies the type of function passed to gst_bus_add_watch() or
 gst_bus_add_watch_full(), which is called from the mainloop when a message
 is available on the bus.
 
@@ -5315,17 +7704,24 @@ function so it should not be freed in the function.
 
 Note that this function is used as a GSourceFunc which means that returning
 %FALSE will remove the GSource from the mainloop.</doc>
+      <source-position filename="gst/gstbus.h" line="106"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%FALSE if the event source should be removed.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstbus.h"
+             line="104">%FALSE if the event source should be removed.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="bus" transfer-ownership="none">
-          <doc xml:space="preserve">the #GstBus that sent the message</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstbus.h"
+               line="90">the #GstBus that sent the message</doc>
           <type name="Bus" c:type="GstBus*"/>
         </parameter>
         <parameter name="message" transfer-ownership="none">
-          <doc xml:space="preserve">the #GstMessage</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstbus.h"
+               line="91">the #GstMessage</doc>
           <type name="Message" c:type="GstMessage*"/>
         </parameter>
         <parameter name="user_data"
@@ -5333,31 +7729,43 @@ Note that this function is used as a GSourceFunc which means that returning
                    nullable="1"
                    allow-none="1"
                    closure="2">
-          <doc xml:space="preserve">user data that has been given, when registering the handler</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstbus.h"
+               line="92">user data that has been given, when registering the handler</doc>
           <type name="gpointer" c:type="gpointer"/>
         </parameter>
       </parameters>
     </callback>
     <record name="BusPrivate" c:type="GstBusPrivate" disguised="1">
+      <source-position filename="gst/gstbus.h" line="26"/>
     </record>
     <callback name="BusSyncHandler" c:type="GstBusSyncHandler">
-      <doc xml:space="preserve">Handler will be invoked synchronously, when a new message has been injected
+      <doc xml:space="preserve"
+           filename="gst/gstbus.h"
+           line="71">Handler will be invoked synchronously, when a new message has been injected
 into the bus. This function is mostly used internally. Only one sync handler
 can be attached to a given bus.
 
 If the handler returns GST_BUS_DROP, it should unref the message, else the
 message should not be unreffed by the sync handler.</doc>
+      <source-position filename="gst/gstbus.h" line="86"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">#GstBusSyncReply stating what to do with the message</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstbus.h"
+             line="84">#GstBusSyncReply stating what to do with the message</doc>
         <type name="BusSyncReply" c:type="GstBusSyncReply"/>
       </return-value>
       <parameters>
         <parameter name="bus" transfer-ownership="none">
-          <doc xml:space="preserve">the #GstBus that sent the message</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstbus.h"
+               line="73">the #GstBus that sent the message</doc>
           <type name="Bus" c:type="GstBus*"/>
         </parameter>
         <parameter name="message" transfer-ownership="none">
-          <doc xml:space="preserve">the #GstMessage</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstbus.h"
+               line="74">the #GstMessage</doc>
           <type name="Message" c:type="GstMessage*"/>
         </parameter>
         <parameter name="user_data"
@@ -5365,7 +7773,9 @@ message should not be unreffed by the sync handler.</doc>
                    nullable="1"
                    allow-none="1"
                    closure="2">
-          <doc xml:space="preserve">user data that has been given, when registering the handler</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstbus.h"
+               line="75">user data that has been given, when registering the handler</doc>
           <type name="gpointer" c:type="gpointer"/>
         </parameter>
       </parameters>
@@ -5374,46 +7784,665 @@ message should not be unreffed by the sync handler.</doc>
                  glib:type-name="GstBusSyncReply"
                  glib:get-type="gst_bus_sync_reply_get_type"
                  c:type="GstBusSyncReply">
-      <doc xml:space="preserve">The result values for a GstBusSyncHandler.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstbus.h"
+           line="56">The result values for a GstBusSyncHandler.</doc>
       <member name="drop"
               value="0"
               c:identifier="GST_BUS_DROP"
               glib:nick="drop">
-        <doc xml:space="preserve">drop the message</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstbus.h"
+             line="58">drop the message</doc>
       </member>
       <member name="pass"
               value="1"
               c:identifier="GST_BUS_PASS"
               glib:nick="pass">
-        <doc xml:space="preserve">pass the message to the async queue</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstbus.h"
+             line="59">pass the message to the async queue</doc>
       </member>
       <member name="async"
               value="2"
               c:identifier="GST_BUS_ASYNC"
               glib:nick="async">
-        <doc xml:space="preserve">pass message to async queue, continue if message is handled</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstbus.h"
+             line="60">pass message to async queue, continue if message is handled</doc>
       </member>
     </enumeration>
+    <function-macro name="CALL_PARENT"
+                    c:identifier="GST_CALL_PARENT"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstutils.h"
+           line="135">Just call the parent handler.  This assumes that there is a variable
+named parent_class that points to the (duh!) parent class.  Note that
+this macro is not to be used with things that return something, use
+the _WITH_DEFAULT version for that</doc>
+      <source-position filename="gst/gstutils.h" line="146"/>
+      <parameters>
+        <parameter name="parent_class_cast">
+          <doc xml:space="preserve"
+               filename="gst/gstutils.h"
+               line="137">the name of the class cast macro for the parent type</doc>
+        </parameter>
+        <parameter name="name">
+          <doc xml:space="preserve"
+               filename="gst/gstutils.h"
+               line="138">name of the function to call</doc>
+        </parameter>
+        <parameter name="args">
+          <doc xml:space="preserve"
+               filename="gst/gstutils.h"
+               line="139">arguments enclosed in '( )'</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="CALL_PARENT_WITH_DEFAULT"
+                    c:identifier="GST_CALL_PARENT_WITH_DEFAULT"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstutils.h"
+           line="150">Same as GST_CALL_PARENT(), but in case there is no implementation, it
+evaluates to @def_return.</doc>
+      <source-position filename="gst/gstutils.h" line="160"/>
+      <parameters>
+        <parameter name="parent_class_cast">
+          <doc xml:space="preserve"
+               filename="gst/gstutils.h"
+               line="152">the name of the class cast macro for the parent type</doc>
+        </parameter>
+        <parameter name="name">
+          <doc xml:space="preserve"
+               filename="gst/gstutils.h"
+               line="153">name of the function to call</doc>
+        </parameter>
+        <parameter name="args">
+          <doc xml:space="preserve"
+               filename="gst/gstutils.h"
+               line="154">arguments enclosed in '( )'</doc>
+        </parameter>
+        <parameter name="def_return">
+          <doc xml:space="preserve"
+               filename="gst/gstutils.h"
+               line="155">default result</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
     <constant name="CAN_INLINE" value="1" c:type="GST_CAN_INLINE">
+      <source-position filename="gst/gstmacros.h" line="34"/>
       <type name="gint" c:type="gint"/>
     </constant>
+    <function-macro name="CAPS" c:identifier="GST_CAPS" introspectable="0">
+      <source-position filename="gst/gstcaps.h" line="36"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="CAPS_CAST"
+                    c:identifier="GST_CAPS_CAST"
+                    introspectable="0">
+      <source-position filename="gst/gstcaps.h" line="35"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="CAPS_FEATURES"
+                    c:identifier="GST_CAPS_FEATURES"
+                    introspectable="0">
+      <source-position filename="gst/gstcapsfeatures.h" line="38"/>
+      <parameters>
+        <parameter name="object">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="CAPS_FEATURES_CAST"
+                    c:identifier="GST_CAPS_FEATURES_CAST"
+                    introspectable="0">
+      <source-position filename="gst/gstcapsfeatures.h" line="37"/>
+      <parameters>
+        <parameter name="object">
+        </parameter>
+      </parameters>
+    </function-macro>
     <constant name="CAPS_FEATURE_MEMORY_SYSTEM_MEMORY"
               value="memory:SystemMemory"
               c:type="GST_CAPS_FEATURE_MEMORY_SYSTEM_MEMORY">
+      <source-position filename="gst/gstcapsfeatures.h" line="40"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
+    <function-macro name="CAPS_FLAGS"
+                    c:identifier="GST_CAPS_FLAGS"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstcaps.h"
+           line="142">A flags word containing #GstCapsFlags flags set on this caps.</doc>
+      <source-position filename="gst/gstcaps.h" line="148"/>
+      <parameters>
+        <parameter name="caps">
+          <doc xml:space="preserve"
+               filename="gst/gstcaps.h"
+               line="144">a #GstCaps.</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="CAPS_FLAG_IS_SET"
+                    c:identifier="GST_CAPS_FLAG_IS_SET"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstcaps.h"
+           line="166">Gives the status of a specific flag on a caps.</doc>
+      <source-position filename="gst/gstcaps.h" line="173"/>
+      <parameters>
+        <parameter name="caps">
+          <doc xml:space="preserve"
+               filename="gst/gstcaps.h"
+               line="168">a #GstCaps.</doc>
+        </parameter>
+        <parameter name="flag">
+          <doc xml:space="preserve"
+               filename="gst/gstcaps.h"
+               line="169">the #GstCapsFlags to check.</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="CAPS_FLAG_SET"
+                    c:identifier="GST_CAPS_FLAG_SET"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstcaps.h"
+           line="174">Sets a caps flag on a caps.</doc>
+      <source-position filename="gst/gstcaps.h" line="181"/>
+      <parameters>
+        <parameter name="caps">
+          <doc xml:space="preserve"
+               filename="gst/gstcaps.h"
+               line="176">a #GstCaps.</doc>
+        </parameter>
+        <parameter name="flag">
+          <doc xml:space="preserve"
+               filename="gst/gstcaps.h"
+               line="177">the #GstCapsFlags to set.</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="CAPS_FLAG_UNSET"
+                    c:identifier="GST_CAPS_FLAG_UNSET"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstcaps.h"
+           line="182">Clears a caps flag.</doc>
+      <source-position filename="gst/gstcaps.h" line="189"/>
+      <parameters>
+        <parameter name="caps">
+          <doc xml:space="preserve"
+               filename="gst/gstcaps.h"
+               line="184">a #GstCaps.</doc>
+        </parameter>
+        <parameter name="flag">
+          <doc xml:space="preserve"
+               filename="gst/gstcaps.h"
+               line="185">the #GstCapsFlags to clear.</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="CAPS_IS_SIMPLE"
+                    c:identifier="GST_CAPS_IS_SIMPLE"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstcaps.h"
+           line="113">Convenience macro that checks if the number of structures in the given caps
+is exactly one.</doc>
+      <source-position filename="gst/gstcaps.h" line="120"/>
+      <parameters>
+        <parameter name="caps">
+          <doc xml:space="preserve"
+               filename="gst/gstcaps.h"
+               line="115">the #GstCaps instance to check</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="CAPS_REFCOUNT"
+                    c:identifier="GST_CAPS_REFCOUNT"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstcaps.h"
+           line="151">Get access to the reference count field of the caps</doc>
+      <source-position filename="gst/gstcaps.h" line="157"/>
+      <parameters>
+        <parameter name="caps">
+          <doc xml:space="preserve"
+               filename="gst/gstcaps.h"
+               line="153">a #GstCaps</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="CAPS_REFCOUNT_VALUE"
+                    c:identifier="GST_CAPS_REFCOUNT_VALUE"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstcaps.h"
+           line="158">Get the reference count value of the caps.</doc>
+      <source-position filename="gst/gstcaps.h" line="164"/>
+      <parameters>
+        <parameter name="caps">
+          <doc xml:space="preserve"
+               filename="gst/gstcaps.h"
+               line="160">a #GstCaps</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="CAT_MEMDUMP"
+                    c:identifier="GST_CAT_MEMDUMP"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstinfo.h"
+           line="879">Output a hexdump of @data in the given category.
+
+There is no need to finish the end of the message string with a newline
+character, a newline character will be added automatically.</doc>
+      <source-position filename="gst/gstinfo.h" line="707"/>
+      <parameters>
+        <parameter name="cat">
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.h"
+               line="881">category to use</doc>
+        </parameter>
+        <parameter name="msg">
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.h"
+               line="882">message string to log with the data</doc>
+        </parameter>
+        <parameter name="data">
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.h"
+               line="883">pointer to the data to output</doc>
+        </parameter>
+        <parameter name="length">
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.h"
+               line="884">length of the data to output</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="CAT_MEMDUMP_OBJECT"
+                    c:identifier="GST_CAT_MEMDUMP_OBJECT"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstinfo.h"
+           line="793">Output a hexdump of @data relating to the given object in the given
+category.
+
+There is no need to finish the end of the message string with a newline
+character, a newline character will be added automatically.</doc>
+      <source-position filename="gst/gstinfo.h" line="705"/>
+      <parameters>
+        <parameter name="cat">
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.h"
+               line="795">category to use</doc>
+        </parameter>
+        <parameter name="obj">
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.h"
+               line="796">the #GObject the message belongs to</doc>
+        </parameter>
+        <parameter name="msg">
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.h"
+               line="797">message string to log with the data</doc>
+        </parameter>
+        <parameter name="data">
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.h"
+               line="798">pointer to the data to output</doc>
+        </parameter>
+        <parameter name="length">
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.h"
+               line="799">length of the data to output</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="CHECK_VERSION"
+                    c:identifier="GST_CHECK_VERSION"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstversion.h"
+           line="72">Check whether a GStreamer version equal to or greater than
+major.minor.micro is present.</doc>
+      <source-position filename="gst/gstversion.h" line="81"/>
+      <parameters>
+        <parameter name="major">
+          <doc xml:space="preserve"
+               filename="gst/gstversion.h"
+               line="74">a number indicating the major version</doc>
+        </parameter>
+        <parameter name="minor">
+          <doc xml:space="preserve"
+               filename="gst/gstversion.h"
+               line="75">a number indicating the minor version</doc>
+        </parameter>
+        <parameter name="micro">
+          <doc xml:space="preserve"
+               filename="gst/gstversion.h"
+               line="76">a number indicating the micro version</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="CHILD_PROXY"
+                    c:identifier="GST_CHILD_PROXY"
+                    introspectable="0">
+      <source-position filename="gst/gstchildproxy.h" line="32"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="CHILD_PROXY_GET_INTERFACE"
+                    c:identifier="GST_CHILD_PROXY_GET_INTERFACE"
+                    introspectable="0">
+      <source-position filename="gst/gstchildproxy.h" line="34"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="CLOCK" c:identifier="GST_CLOCK" introspectable="0">
+      <source-position filename="gst/gstclock.h" line="34"/>
+      <parameters>
+        <parameter name="clock">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="CLOCK_CAST"
+                    c:identifier="GST_CLOCK_CAST"
+                    introspectable="0">
+      <source-position filename="gst/gstclock.h" line="39"/>
+      <parameters>
+        <parameter name="clock">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="CLOCK_CLASS"
+                    c:identifier="GST_CLOCK_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gstclock.h" line="36"/>
+      <parameters>
+        <parameter name="cclass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="CLOCK_DIFF"
+                    c:identifier="GST_CLOCK_DIFF"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstclock.h"
+           line="153">Calculate a difference between two clock times as a #GstClockTimeDiff.
+The difference is calculated as @e - @s.</doc>
+      <source-position filename="gst/gstclock.h" line="161"/>
+      <parameters>
+        <parameter name="s">
+          <doc xml:space="preserve"
+               filename="gst/gstclock.h"
+               line="155">the first time</doc>
+        </parameter>
+        <parameter name="e">
+          <doc xml:space="preserve"
+               filename="gst/gstclock.h"
+               line="156">the second time</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="CLOCK_ENTRY"
+                    c:identifier="GST_CLOCK_ENTRY"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstclock.h"
+           line="335">Cast to a clock entry</doc>
+      <source-position filename="gst/gstclock.h" line="341"/>
+      <parameters>
+        <parameter name="entry">
+          <doc xml:space="preserve"
+               filename="gst/gstclock.h"
+               line="337">the entry to cast</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="CLOCK_ENTRY_CLOCK"
+                    c:identifier="GST_CLOCK_ENTRY_CLOCK"
+                    introspectable="0"
+                    deprecated="1">
+      <doc xml:space="preserve"
+           filename="gst/gstclock.h"
+           line="344">Get the owner clock of the entry</doc>
+      <doc-deprecated xml:space="preserve">Use gst_clock_id_get_clock() instead.</doc-deprecated>
+      <source-position filename="gst/gstclock.h" line="352"/>
+      <parameters>
+        <parameter name="entry">
+          <doc xml:space="preserve"
+               filename="gst/gstclock.h"
+               line="346">the entry to query</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="CLOCK_ENTRY_INTERVAL"
+                    c:identifier="GST_CLOCK_ENTRY_INTERVAL"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstclock.h"
+           line="368">Get the interval of this periodic entry</doc>
+      <source-position filename="gst/gstclock.h" line="374"/>
+      <parameters>
+        <parameter name="entry">
+          <doc xml:space="preserve"
+               filename="gst/gstclock.h"
+               line="370">the entry to query</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="CLOCK_ENTRY_STATUS"
+                    c:identifier="GST_CLOCK_ENTRY_STATUS"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstclock.h"
+           line="375">The status of the entry</doc>
+      <source-position filename="gst/gstclock.h" line="381"/>
+      <parameters>
+        <parameter name="entry">
+          <doc xml:space="preserve"
+               filename="gst/gstclock.h"
+               line="377">the entry to query</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="CLOCK_ENTRY_TIME"
+                    c:identifier="GST_CLOCK_ENTRY_TIME"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstclock.h"
+           line="361">Get the requested time of this entry</doc>
+      <source-position filename="gst/gstclock.h" line="367"/>
+      <parameters>
+        <parameter name="entry">
+          <doc xml:space="preserve"
+               filename="gst/gstclock.h"
+               line="363">the entry to query</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="CLOCK_ENTRY_TYPE"
+                    c:identifier="GST_CLOCK_ENTRY_TYPE"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstclock.h"
+           line="354">Get the type of the clock entry</doc>
+      <source-position filename="gst/gstclock.h" line="360"/>
+      <parameters>
+        <parameter name="entry">
+          <doc xml:space="preserve"
+               filename="gst/gstclock.h"
+               line="356">the entry to query</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="CLOCK_FLAGS"
+                    c:identifier="GST_CLOCK_FLAGS"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstclock.h"
+           line="444">Gets the #GstClockFlags clock flags.</doc>
+      <source-position filename="gst/gstclock.h" line="450"/>
+      <parameters>
+        <parameter name="clock">
+          <doc xml:space="preserve"
+               filename="gst/gstclock.h"
+               line="446">the clock to query</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="CLOCK_GET_CLASS"
+                    c:identifier="GST_CLOCK_GET_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gstclock.h" line="38"/>
+      <parameters>
+        <parameter name="clock">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="CLOCK_STIME_IS_VALID"
+                    c:identifier="GST_CLOCK_STIME_IS_VALID"
+                    version="1.6"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstclock.h"
+           line="88">Tests if a given #GstClockTimeDiff of #gint64 represents a valid defined time.</doc>
+      <source-position filename="gst/gstclock.h" line="96"/>
+      <parameters>
+        <parameter name="time">
+          <doc xml:space="preserve"
+               filename="gst/gstclock.h"
+               line="90">signed clock time to validate</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="CLOCK_TIME_IS_VALID"
+                    c:identifier="GST_CLOCK_TIME_IS_VALID"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstclock.h"
+           line="74">Tests if a given #GstClockTime represents a valid defined time.</doc>
+      <source-position filename="gst/gstclock.h" line="80"/>
+      <parameters>
+        <parameter name="time">
+          <doc xml:space="preserve"
+               filename="gst/gstclock.h"
+               line="76">clock time to validate</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
     <constant name="CLOCK_TIME_NONE"
               value="18446744073709551615"
               c:type="GST_CLOCK_TIME_NONE">
-      <doc xml:space="preserve">Constant to define an undefined clock time.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstclock.h"
+           line="68">Constant to define an undefined clock time.</doc>
+      <source-position filename="gst/gstclock.h" line="73"/>
       <type name="ClockTime" c:type="GstClockTime"/>
     </constant>
+    <function-macro name="CONTEXT"
+                    c:identifier="GST_CONTEXT"
+                    introspectable="0">
+      <source-position filename="gst/gstcontext.h" line="41"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="CONTEXT_CAST"
+                    c:identifier="GST_CONTEXT_CAST"
+                    introspectable="0">
+      <source-position filename="gst/gstcontext.h" line="40"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="CONTROL_BINDING"
+                    c:identifier="GST_CONTROL_BINDING"
+                    introspectable="0">
+      <source-position filename="gst/gstcontrolbinding.h" line="33"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="CONTROL_BINDING_CLASS"
+                    c:identifier="GST_CONTROL_BINDING_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gstcontrolbinding.h" line="35"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="CONTROL_BINDING_GET_CLASS"
+                    c:identifier="GST_CONTROL_BINDING_GET_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gstcontrolbinding.h" line="41"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="CONTROL_BINDING_PSPEC"
+                    c:identifier="GST_CONTROL_BINDING_PSPEC"
+                    introspectable="0">
+      <source-position filename="gst/gstcontrolbinding.h" line="113"/>
+      <parameters>
+        <parameter name="cb">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="CONTROL_SOURCE"
+                    c:identifier="GST_CONTROL_SOURCE"
+                    introspectable="0">
+      <source-position filename="gst/gstcontrolsource.h" line="35"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="CONTROL_SOURCE_CLASS"
+                    c:identifier="GST_CONTROL_SOURCE_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gstcontrolsource.h" line="37"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="CONTROL_SOURCE_GET_CLASS"
+                    c:identifier="GST_CONTROL_SOURCE_GET_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gstcontrolsource.h" line="43"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
     <record name="Caps"
             c:type="GstCaps"
             glib:type-name="GstCaps"
             glib:get-type="gst_caps_get_type"
             c:symbol-prefix="caps">
-      <doc xml:space="preserve">Caps (capabilities) are lightweight refcounted objects describing media types.
+      <doc xml:space="preserve"
+           filename="gst/gstcaps.c"
+           line="20">Caps (capabilities) are lightweight refcounted objects describing media types.
 They are composed of an array of #GstStructure.
 
 Caps are exposed on #GstPadTemplate to describe all possible types a
@@ -5447,40 +8476,60 @@ has limited support for nested #GstCaps / #GstStructure fields. It can only
 support one level of nesting. Using more levels will lead to unexpected
 behavior when using serialization features, such as gst_caps_to_string() or
 gst_value_serialize() and their counterparts.</doc>
+      <source-position filename="gst/gstcaps.h" line="334"/>
       <field name="mini_object" writable="1">
-        <doc xml:space="preserve">the parent type</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstcaps.h"
+             line="328">the parent type</doc>
         <type name="MiniObject" c:type="GstMiniObject"/>
       </field>
       <constructor name="new_any" c:identifier="gst_caps_new_any">
-        <doc xml:space="preserve">Creates a new #GstCaps that indicates that it is compatible with
+        <doc xml:space="preserve"
+             filename="gst/gstcaps.c"
+             line="268">Creates a new #GstCaps that indicates that it is compatible with
 any media format.</doc>
+        <source-position filename="gst/gstcaps.h" line="413"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the new #GstCaps</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstcaps.c"
+               line="274">the new #GstCaps</doc>
           <type name="Caps" c:type="GstCaps*"/>
         </return-value>
       </constructor>
       <constructor name="new_empty" c:identifier="gst_caps_new_empty">
-        <doc xml:space="preserve">Creates a new #GstCaps that is empty.  That is, the returned
+        <doc xml:space="preserve"
+             filename="gst/gstcaps.c"
+             line="242">Creates a new #GstCaps that is empty.  That is, the returned
 #GstCaps contains no media formats.
 The #GstCaps is guaranteed to be writable.
 Caller is responsible for unreffing the returned caps.</doc>
+        <source-position filename="gst/gstcaps.h" line="410"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the new #GstCaps</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstcaps.c"
+               line="250">the new #GstCaps</doc>
           <type name="Caps" c:type="GstCaps*"/>
         </return-value>
       </constructor>
       <constructor name="new_empty_simple"
                    c:identifier="gst_caps_new_empty_simple">
-        <doc xml:space="preserve">Creates a new #GstCaps that contains one #GstStructure with name
+        <doc xml:space="preserve"
+             filename="gst/gstcaps.c"
+             line="286">Creates a new #GstCaps that contains one #GstStructure with name
 @media_type.
 Caller is responsible for unreffing the returned caps.</doc>
+        <source-position filename="gst/gstcaps.h" line="416"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the new #GstCaps</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstcaps.c"
+               line="294">the new #GstCaps</doc>
           <type name="Caps" c:type="GstCaps*"/>
         </return-value>
         <parameters>
           <parameter name="media_type" transfer-ownership="none">
-            <doc xml:space="preserve">the media type of the structure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="288">the media type of the structure</doc>
             <type name="utf8" c:type="const char*"/>
           </parameter>
         </parameters>
@@ -5488,20 +8537,29 @@ Caller is responsible for unreffing the returned caps.</doc>
       <constructor name="new_full"
                    c:identifier="gst_caps_new_full"
                    introspectable="0">
-        <doc xml:space="preserve">Creates a new #GstCaps and adds all the structures listed as
+        <doc xml:space="preserve"
+             filename="gst/gstcaps.c"
+             line="344">Creates a new #GstCaps and adds all the structures listed as
 arguments.  The list must be %NULL-terminated.  The structures
 are not copied; the returned #GstCaps owns the structures.</doc>
+        <source-position filename="gst/gstcaps.h" line="423"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the new #GstCaps</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstcaps.c"
+               line="353">the new #GstCaps</doc>
           <type name="Caps" c:type="GstCaps*"/>
         </return-value>
         <parameters>
           <parameter name="struct1" transfer-ownership="none">
-            <doc xml:space="preserve">the first structure to add</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="346">the first structure to add</doc>
             <type name="Structure" c:type="GstStructure*"/>
           </parameter>
           <parameter name="..." transfer-ownership="none">
-            <doc xml:space="preserve">additional structures to add</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="347">additional structures to add</doc>
             <varargs/>
           </parameter>
         </parameters>
@@ -5509,20 +8567,29 @@ are not copied; the returned #GstCaps owns the structures.</doc>
       <constructor name="new_full_valist"
                    c:identifier="gst_caps_new_full_valist"
                    introspectable="0">
-        <doc xml:space="preserve">Creates a new #GstCaps and adds all the structures listed as
+        <doc xml:space="preserve"
+             filename="gst/gstcaps.c"
+             line="368">Creates a new #GstCaps and adds all the structures listed as
 arguments.  The list must be %NULL-terminated.  The structures
 are not copied; the returned #GstCaps owns the structures.</doc>
+        <source-position filename="gst/gstcaps.h" line="426"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the new #GstCaps</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstcaps.c"
+               line="377">the new #GstCaps</doc>
           <type name="Caps" c:type="GstCaps*"/>
         </return-value>
         <parameters>
           <parameter name="structure" transfer-ownership="none">
-            <doc xml:space="preserve">the first structure to add</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="370">the first structure to add</doc>
             <type name="Structure" c:type="GstStructure*"/>
           </parameter>
           <parameter name="var_args" transfer-ownership="none">
-            <doc xml:space="preserve">additional structures to add</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="371">additional structures to add</doc>
             <type name="va_list" c:type="va_list"/>
           </parameter>
         </parameters>
@@ -5530,60 +8597,85 @@ are not copied; the returned #GstCaps owns the structures.</doc>
       <constructor name="new_simple"
                    c:identifier="gst_caps_new_simple"
                    introspectable="0">
-        <doc xml:space="preserve">Creates a new #GstCaps that contains one #GstStructure.  The
+        <doc xml:space="preserve"
+             filename="gst/gstcaps.c"
+             line="310">Creates a new #GstCaps that contains one #GstStructure.  The
 structure is defined by the arguments, which have the same format
 as gst_structure_new().
 Caller is responsible for unreffing the returned caps.</doc>
+        <source-position filename="gst/gstcaps.h" line="419"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the new #GstCaps</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstcaps.c"
+               line="321">the new #GstCaps</doc>
           <type name="Caps" c:type="GstCaps*"/>
         </return-value>
         <parameters>
           <parameter name="media_type" transfer-ownership="none">
-            <doc xml:space="preserve">the media type of the structure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="312">the media type of the structure</doc>
             <type name="utf8" c:type="const char*"/>
           </parameter>
           <parameter name="fieldname" transfer-ownership="none">
-            <doc xml:space="preserve">first field to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="313">first field to set</doc>
             <type name="utf8" c:type="const char*"/>
           </parameter>
           <parameter name="..." transfer-ownership="none">
-            <doc xml:space="preserve">additional arguments</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="314">additional arguments</doc>
             <varargs/>
           </parameter>
         </parameters>
       </constructor>
       <method name="append" c:identifier="gst_caps_append">
-        <doc xml:space="preserve">Appends the structures contained in @caps2 to @caps1. The structures in
+        <doc xml:space="preserve"
+             filename="gst/gstcaps.c"
+             line="550">Appends the structures contained in @caps2 to @caps1. The structures in
 @caps2 are not copied -- they are transferred to @caps1, and then @caps2 is
 freed. If either caps is ANY, the resulting caps will be ANY.</doc>
+        <source-position filename="gst/gstcaps.h" line="443"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="caps1" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstCaps that will be appended to</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="552">the #GstCaps that will be appended to</doc>
             <type name="Caps" c:type="GstCaps*"/>
           </instance-parameter>
           <parameter name="caps2" transfer-ownership="full">
-            <doc xml:space="preserve">the #GstCaps to append</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="553">the #GstCaps to append</doc>
             <type name="Caps" c:type="GstCaps*"/>
           </parameter>
         </parameters>
       </method>
       <method name="append_structure" c:identifier="gst_caps_append_structure">
-        <doc xml:space="preserve">Appends @structure to @caps.  The structure is not copied; @caps
+        <doc xml:space="preserve"
+             filename="gst/gstcaps.c"
+             line="639">Appends @structure to @caps.  The structure is not copied; @caps
 becomes the owner of @structure.</doc>
+        <source-position filename="gst/gstcaps.h" line="446"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="caps" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstCaps that will be appended to</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="641">the #GstCaps that will be appended to</doc>
             <type name="Caps" c:type="GstCaps*"/>
           </instance-parameter>
           <parameter name="structure" transfer-ownership="full">
-            <doc xml:space="preserve">the #GstStructure to append</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="642">the #GstStructure to append</doc>
             <type name="Structure" c:type="GstStructure*"/>
           </parameter>
         </parameters>
@@ -5591,49 +8683,69 @@ becomes the owner of @structure.</doc>
       <method name="append_structure_full"
               c:identifier="gst_caps_append_structure_full"
               version="1.2">
-        <doc xml:space="preserve">Appends @structure with @features to @caps.  The structure is not copied; @caps
+        <doc xml:space="preserve"
+             filename="gst/gstcaps.c"
+             line="665">Appends @structure with @features to @caps.  The structure is not copied; @caps
 becomes the owner of @structure.</doc>
+        <source-position filename="gst/gstcaps.h" line="449"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="caps" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstCaps that will be appended to</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="667">the #GstCaps that will be appended to</doc>
             <type name="Caps" c:type="GstCaps*"/>
           </instance-parameter>
           <parameter name="structure" transfer-ownership="full">
-            <doc xml:space="preserve">the #GstStructure to append</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="668">the #GstStructure to append</doc>
             <type name="Structure" c:type="GstStructure*"/>
           </parameter>
           <parameter name="features"
                      transfer-ownership="full"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">the #GstCapsFeatures to append</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="669">the #GstCapsFeatures to append</doc>
             <type name="CapsFeatures" c:type="GstCapsFeatures*"/>
           </parameter>
         </parameters>
       </method>
       <method name="can_intersect" c:identifier="gst_caps_can_intersect">
-        <doc xml:space="preserve">Tries intersecting @caps1 and @caps2 and reports whether the result would not
+        <doc xml:space="preserve"
+             filename="gst/gstcaps.c"
+             line="1527">Tries intersecting @caps1 and @caps2 and reports whether the result would not
 be empty</doc>
+        <source-position filename="gst/gstcaps.h" line="547"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if intersection would be not empty</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstcaps.c"
+               line="1535">%TRUE if intersection would be not empty</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="caps1" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstCaps to intersect</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="1529">a #GstCaps to intersect</doc>
             <type name="Caps" c:type="const GstCaps*"/>
           </instance-parameter>
           <parameter name="caps2" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstCaps to intersect</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="1530">a #GstCaps to intersect</doc>
             <type name="Caps" c:type="const GstCaps*"/>
           </parameter>
         </parameters>
       </method>
       <method name="copy" c:identifier="gst_caps_copy">
-        <doc xml:space="preserve">Creates a new #GstCaps as a copy of the old @caps. The new caps will have a
+        <doc xml:space="preserve"
+             filename="gst/gstcaps.c"
+             line="2663">Creates a new #GstCaps as a copy of the old @caps. The new caps will have a
 refcount of 1, owned by the caller. The structures are copied as well.
 
 Note that this function is the semantic equivalent of a gst_caps_ref()
@@ -5641,31 +8753,45 @@ followed by a gst_caps_make_writable(). If you only want to hold on to a
 reference to the data, you should use gst_caps_ref().
 
 When you are finished with the caps, call gst_caps_unref() on it.</doc>
+        <source-position filename="gst/gstcaps.h" line="249"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the new #GstCaps</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstcaps.c"
+               line="2676">the new #GstCaps</doc>
           <type name="Caps" c:type="GstCaps*"/>
         </return-value>
         <parameters>
           <instance-parameter name="caps" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstCaps.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="2665">a #GstCaps.</doc>
             <type name="Caps" c:type="const GstCaps*"/>
           </instance-parameter>
         </parameters>
       </method>
-      <method name="copy_nth" c:identifier="gst_caps_copy_nth">
-        <doc xml:space="preserve">Creates a new #GstCaps and appends a copy of the nth structure
+      <method name="copy_nth" c:identifier="gst_caps_copy_nth" version="1.16">
+        <doc xml:space="preserve"
+             filename="gst/gstcaps.c"
+             line="1018">Creates a new #GstCaps and appends a copy of the nth structure
 contained in @caps.</doc>
+        <source-position filename="gst/gstcaps.h" line="487"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the new #GstCaps</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstcaps.c"
+               line="1026">the new #GstCaps</doc>
           <type name="Caps" c:type="GstCaps*"/>
         </return-value>
         <parameters>
           <instance-parameter name="caps" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstCaps to copy</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="1020">the #GstCaps to copy</doc>
             <type name="Caps" c:type="const GstCaps*"/>
           </instance-parameter>
           <parameter name="nth" transfer-ownership="none">
-            <doc xml:space="preserve">the nth structure to copy</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="1021">the nth structure to copy</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
@@ -5673,81 +8799,114 @@ contained in @caps.</doc>
       <method name="filter_and_map_in_place"
               c:identifier="gst_caps_filter_and_map_in_place"
               version="1.6">
-        <doc xml:space="preserve">Calls the provided function once for each structure and caps feature in the
+        <doc xml:space="preserve"
+             filename="gst/gstcaps.c"
+             line="2604">Calls the provided function once for each structure and caps feature in the
 #GstCaps. In contrast to gst_caps_foreach(), the function may modify the
 structure and features. In contrast to gst_caps_filter_and_map_in_place(),
 the structure and features are removed from the caps if %FALSE is returned
 from the function.
 The caps must be mutable.</doc>
+        <source-position filename="gst/gstcaps.h" line="512"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="caps" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstCaps</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="2606">a #GstCaps</doc>
             <type name="Caps" c:type="GstCaps*"/>
           </instance-parameter>
           <parameter name="func"
                      transfer-ownership="none"
                      scope="call"
                      closure="1">
-            <doc xml:space="preserve">a function to call for each field</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="2607">a function to call for each field</doc>
             <type name="CapsFilterMapFunc" c:type="GstCapsFilterMapFunc"/>
           </parameter>
           <parameter name="user_data"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">private data</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="2608">private data</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
         </parameters>
       </method>
       <method name="fixate" c:identifier="gst_caps_fixate">
-        <doc xml:space="preserve">Modifies the given @caps into a representation with only fixed
+        <doc xml:space="preserve"
+             filename="gst/gstcaps.c"
+             line="2237">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().</doc>
+reference to it with gst_caps_ref().
+
+Note that it is not guaranteed that the returned caps have exactly one
+structure. If @caps are empty caps then then returned caps will be
+the empty too and contain no structure at all.
+
+Calling this function with any caps is not allowed.</doc>
+        <source-position filename="gst/gstcaps.h" line="573"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the fixated caps</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstcaps.c"
+               line="2255">the fixated caps</doc>
           <type name="Caps" c:type="GstCaps*"/>
         </return-value>
         <parameters>
           <instance-parameter name="caps" transfer-ownership="full">
-            <doc xml:space="preserve">a #GstCaps to fixate</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="2239">a #GstCaps to fixate</doc>
             <type name="Caps" c:type="GstCaps*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="foreach" c:identifier="gst_caps_foreach" version="1.6">
-        <doc xml:space="preserve">Calls the provided function once for each structure and caps feature in the
+        <doc xml:space="preserve"
+             filename="gst/gstcaps.c"
+             line="2515">Calls the provided function once for each structure and caps feature in the
 #GstCaps. The function must not modify the fields.
 Also see gst_caps_map_in_place() and gst_caps_filter_and_map_in_place().</doc>
+        <source-position filename="gst/gstcaps.h" line="504"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the supplied function returns %TRUE for each call,
+          <doc xml:space="preserve"
+               filename="gst/gstcaps.c"
+               line="2525">%TRUE if the supplied function returns %TRUE for each call,
 %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="caps" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstCaps</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="2517">a #GstCaps</doc>
             <type name="Caps" c:type="const GstCaps*"/>
           </instance-parameter>
           <parameter name="func"
                      transfer-ownership="none"
                      scope="call"
                      closure="1">
-            <doc xml:space="preserve">a function to call for each field</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="2518">a function to call for each field</doc>
             <type name="CapsForeachFunc" c:type="GstCapsForeachFunc"/>
           </parameter>
           <parameter name="user_data"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">private data</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="2519">private data</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
         </parameters>
@@ -5755,7 +8914,9 @@ Also see gst_caps_map_in_place() and gst_caps_filter_and_map_in_place().</doc>
       <method name="get_features"
               c:identifier="gst_caps_get_features"
               version="1.2">
-        <doc xml:space="preserve">Finds the features in @caps that has the index @index, and
+        <doc xml:space="preserve"
+             filename="gst/gstcaps.c"
+             line="888">Finds the features in @caps that has the index @index, and
 returns it.
 
 WARNING: This function takes a const GstCaps *, but returns a
@@ -5769,37 +8930,53 @@ gst_caps_features_add().
 
 You do not need to free or unref the structure returned, it
 belongs to the #GstCaps.</doc>
+        <source-position filename="gst/gstcaps.h" line="484"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">a pointer to the #GstCapsFeatures
+          <doc xml:space="preserve"
+               filename="gst/gstcaps.c"
+               line="908">a pointer to the #GstCapsFeatures
     corresponding to @index</doc>
           <type name="CapsFeatures" c:type="GstCapsFeatures*"/>
         </return-value>
         <parameters>
           <instance-parameter name="caps" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstCaps</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="890">a #GstCaps</doc>
             <type name="Caps" c:type="const GstCaps*"/>
           </instance-parameter>
           <parameter name="index" transfer-ownership="none">
-            <doc xml:space="preserve">the index of the structure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="891">the index of the structure</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_size" c:identifier="gst_caps_get_size">
-        <doc xml:space="preserve">Gets the number of structures contained in @caps.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the number of structures that @caps contains</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstcaps.c"
+             line="840">Gets the number of structures contained in @caps.</doc>
+        <source-position filename="gst/gstcaps.h" line="467"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstcaps.c"
+               line="846">the number of structures that @caps contains</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="caps" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstCaps</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="842">a #GstCaps</doc>
             <type name="Caps" c:type="const GstCaps*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_structure" c:identifier="gst_caps_get_structure">
-        <doc xml:space="preserve">Finds the structure in @caps that has the index @index, and
+        <doc xml:space="preserve"
+             filename="gst/gstcaps.c"
+             line="856">Finds the structure in @caps that has the index @index, and
 returns it.
 
 WARNING: This function takes a const GstCaps *, but returns a
@@ -5813,209 +8990,311 @@ gst_structure_set().
 
 You do not need to free or unref the structure returned, it
 belongs to the #GstCaps.</doc>
+        <source-position filename="gst/gstcaps.h" line="470"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a pointer to the #GstStructure corresponding
+          <doc xml:space="preserve"
+               filename="gst/gstcaps.c"
+               line="876">a pointer to the #GstStructure corresponding
     to @index</doc>
           <type name="Structure" c:type="GstStructure*"/>
         </return-value>
         <parameters>
           <instance-parameter name="caps" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstCaps</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="858">a #GstCaps</doc>
             <type name="Caps" c:type="const GstCaps*"/>
           </instance-parameter>
           <parameter name="index" transfer-ownership="none">
-            <doc xml:space="preserve">the index of the structure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="859">the index of the structure</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="intersect" c:identifier="gst_caps_intersect">
-        <doc xml:space="preserve">Creates a new #GstCaps that contains all the formats that are common
+        <doc xml:space="preserve"
+             filename="gst/gstcaps.c"
+             line="1787">Creates a new #GstCaps that contains all the formats that are common
 to both @caps1 and @caps2. Defaults to %GST_CAPS_INTERSECT_ZIG_ZAG mode.</doc>
+        <source-position filename="gst/gstcaps.h" line="557"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the new #GstCaps</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstcaps.c"
+               line="1795">the new #GstCaps</doc>
           <type name="Caps" c:type="GstCaps*"/>
         </return-value>
         <parameters>
           <instance-parameter name="caps1" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstCaps to intersect</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="1789">a #GstCaps to intersect</doc>
             <type name="Caps" c:type="GstCaps*"/>
           </instance-parameter>
           <parameter name="caps2" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstCaps to intersect</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="1790">a #GstCaps to intersect</doc>
             <type name="Caps" c:type="GstCaps*"/>
           </parameter>
         </parameters>
       </method>
       <method name="intersect_full" c:identifier="gst_caps_intersect_full">
-        <doc xml:space="preserve">Creates a new #GstCaps that contains all the formats that are common
+        <doc xml:space="preserve"
+             filename="gst/gstcaps.c"
+             line="1741">Creates a new #GstCaps that contains all the formats that are common
 to both @caps1 and @caps2, the order is defined by the #GstCapsIntersectMode
 used.</doc>
+        <source-position filename="gst/gstcaps.h" line="560"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the new #GstCaps</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstcaps.c"
+               line="1751">the new #GstCaps</doc>
           <type name="Caps" c:type="GstCaps*"/>
         </return-value>
         <parameters>
           <instance-parameter name="caps1" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstCaps to intersect</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="1743">a #GstCaps to intersect</doc>
             <type name="Caps" c:type="GstCaps*"/>
           </instance-parameter>
           <parameter name="caps2" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstCaps to intersect</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="1744">a #GstCaps to intersect</doc>
             <type name="Caps" c:type="GstCaps*"/>
           </parameter>
           <parameter name="mode" transfer-ownership="none">
-            <doc xml:space="preserve">The intersection algorithm/mode to use</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="1745">The intersection algorithm/mode to use</doc>
             <type name="CapsIntersectMode" c:type="GstCapsIntersectMode"/>
           </parameter>
         </parameters>
       </method>
       <method name="is_always_compatible"
               c:identifier="gst_caps_is_always_compatible">
-        <doc xml:space="preserve">A given #GstCaps structure is always compatible with another if
+        <doc xml:space="preserve"
+             filename="gst/gstcaps.c"
+             line="1291">A given #GstCaps structure is always compatible with another if
 every media format that is in the first is also contained in the
 second.  That is, @caps1 is a subset of @caps2.</doc>
+        <source-position filename="gst/gstcaps.h" line="528"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if @caps1 is a subset of @caps2.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstcaps.c"
+               line="1300">%TRUE if @caps1 is a subset of @caps2.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="caps1" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstCaps to test</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="1293">the #GstCaps to test</doc>
             <type name="Caps" c:type="const GstCaps*"/>
           </instance-parameter>
           <parameter name="caps2" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstCaps to test</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="1294">the #GstCaps to test</doc>
             <type name="Caps" c:type="const GstCaps*"/>
           </parameter>
         </parameters>
       </method>
       <method name="is_any" c:identifier="gst_caps_is_any">
-        <doc xml:space="preserve">Determines if @caps represents any media format.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if @caps represents any format.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstcaps.c"
+             line="1183">Determines if @caps represents any media format.</doc>
+        <source-position filename="gst/gstcaps.h" line="519"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstcaps.c"
+               line="1189">%TRUE if @caps represents any format.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="caps" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstCaps to test</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="1185">the #GstCaps to test</doc>
             <type name="Caps" c:type="const GstCaps*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="is_empty" c:identifier="gst_caps_is_empty">
-        <doc xml:space="preserve">Determines if @caps represents no media formats.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if @caps represents no formats.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstcaps.c"
+             line="1199">Determines if @caps represents no media formats.</doc>
+        <source-position filename="gst/gstcaps.h" line="522"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstcaps.c"
+               line="1205">%TRUE if @caps represents no formats.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="caps" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstCaps to test</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="1201">the #GstCaps to test</doc>
             <type name="Caps" c:type="const GstCaps*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="is_equal" c:identifier="gst_caps_is_equal">
-        <doc xml:space="preserve">Checks if the given caps represent the same set of caps.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if both caps are equal.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstcaps.c"
+             line="1451">Checks if the given caps represent the same set of caps.</doc>
+        <source-position filename="gst/gstcaps.h" line="541"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstcaps.c"
+               line="1458">%TRUE if both caps are equal.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="caps1" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstCaps</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="1453">a #GstCaps</doc>
             <type name="Caps" c:type="const GstCaps*"/>
           </instance-parameter>
           <parameter name="caps2" transfer-ownership="none">
-            <doc xml:space="preserve">another #GstCaps</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="1454">another #GstCaps</doc>
             <type name="Caps" c:type="const GstCaps*"/>
           </parameter>
         </parameters>
       </method>
       <method name="is_equal_fixed" c:identifier="gst_caps_is_equal_fixed">
-        <doc xml:space="preserve">Tests if two #GstCaps are equal.  This function only works on fixed
+        <doc xml:space="preserve"
+             filename="gst/gstcaps.c"
+             line="1259">Tests if two #GstCaps are equal.  This function only works on fixed
 #GstCaps.</doc>
+        <source-position filename="gst/gstcaps.h" line="544"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the arguments represent the same format</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstcaps.c"
+               line="1267">%TRUE if the arguments represent the same format</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="caps1" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstCaps to test</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="1261">the #GstCaps to test</doc>
             <type name="Caps" c:type="const GstCaps*"/>
           </instance-parameter>
           <parameter name="caps2" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstCaps to test</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="1262">the #GstCaps to test</doc>
             <type name="Caps" c:type="const GstCaps*"/>
           </parameter>
         </parameters>
       </method>
       <method name="is_fixed" c:identifier="gst_caps_is_fixed">
-        <doc xml:space="preserve">Fixed #GstCaps describe exactly one format, that is, they have exactly
+        <doc xml:space="preserve"
+             filename="gst/gstcaps.c"
+             line="1225">Fixed #GstCaps describe exactly one format, that is, they have exactly
 one structure, and each field in the structure describes a fixed type.
 Examples of non-fixed types are GST_TYPE_INT_RANGE and GST_TYPE_LIST.</doc>
+        <source-position filename="gst/gstcaps.h" line="525"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if @caps is fixed</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstcaps.c"
+               line="1233">%TRUE if @caps is fixed</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="caps" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstCaps to test</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="1227">the #GstCaps to test</doc>
             <type name="Caps" c:type="const GstCaps*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="is_strictly_equal"
               c:identifier="gst_caps_is_strictly_equal">
-        <doc xml:space="preserve">Checks if the given caps are exactly the same set of caps.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if both caps are strictly equal.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstcaps.c"
+             line="1475">Checks if the given caps are exactly the same set of caps.</doc>
+        <source-position filename="gst/gstcaps.h" line="550"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstcaps.c"
+               line="1482">%TRUE if both caps are strictly equal.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="caps1" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstCaps</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="1477">a #GstCaps</doc>
             <type name="Caps" c:type="const GstCaps*"/>
           </instance-parameter>
           <parameter name="caps2" transfer-ownership="none">
-            <doc xml:space="preserve">another #GstCaps</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="1478">another #GstCaps</doc>
             <type name="Caps" c:type="const GstCaps*"/>
           </parameter>
         </parameters>
       </method>
       <method name="is_subset" c:identifier="gst_caps_is_subset">
-        <doc xml:space="preserve">Checks if all caps represented by @subset are also represented by @superset.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if @subset is a subset of @superset</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstcaps.c"
+             line="1311">Checks if all caps represented by @subset are also represented by @superset.</doc>
+        <source-position filename="gst/gstcaps.h" line="531"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstcaps.c"
+               line="1318">%TRUE if @subset is a subset of @superset</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="subset" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstCaps</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="1313">a #GstCaps</doc>
             <type name="Caps" c:type="const GstCaps*"/>
           </instance-parameter>
           <parameter name="superset" transfer-ownership="none">
-            <doc xml:space="preserve">a potentially greater #GstCaps</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="1314">a potentially greater #GstCaps</doc>
             <type name="Caps" c:type="const GstCaps*"/>
           </parameter>
         </parameters>
       </method>
       <method name="is_subset_structure"
               c:identifier="gst_caps_is_subset_structure">
-        <doc xml:space="preserve">Checks if @structure is a subset of @caps. See gst_caps_is_subset()
+        <doc xml:space="preserve"
+             filename="gst/gstcaps.c"
+             line="1367">Checks if @structure is a subset of @caps. See gst_caps_is_subset()
 for more information.</doc>
+        <source-position filename="gst/gstcaps.h" line="534"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if @structure is a subset of @caps</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstcaps.c"
+               line="1375">%TRUE if @structure is a subset of @caps</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="caps" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstCaps</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="1369">a #GstCaps</doc>
             <type name="Caps" c:type="const GstCaps*"/>
           </instance-parameter>
           <parameter name="structure" transfer-ownership="none">
-            <doc xml:space="preserve">a potential #GstStructure subset of @caps</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="1370">a potential #GstStructure subset of @caps</doc>
             <type name="Structure" c:type="const GstStructure*"/>
           </parameter>
         </parameters>
@@ -6023,26 +9302,37 @@ for more information.</doc>
       <method name="is_subset_structure_full"
               c:identifier="gst_caps_is_subset_structure_full"
               version="1.2">
-        <doc xml:space="preserve">Checks if @structure is a subset of @caps. See gst_caps_is_subset()
+        <doc xml:space="preserve"
+             filename="gst/gstcaps.c"
+             line="1403">Checks if @structure is a subset of @caps. See gst_caps_is_subset()
 for more information.</doc>
+        <source-position filename="gst/gstcaps.h" line="537"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if @structure is a subset of @caps</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstcaps.c"
+               line="1412">%TRUE if @structure is a subset of @caps</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="caps" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstCaps</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="1405">a #GstCaps</doc>
             <type name="Caps" c:type="const GstCaps*"/>
           </instance-parameter>
           <parameter name="structure" transfer-ownership="none">
-            <doc xml:space="preserve">a potential #GstStructure subset of @caps</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="1406">a potential #GstStructure subset of @caps</doc>
             <type name="Structure" c:type="const GstStructure*"/>
           </parameter>
           <parameter name="features"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">a #GstCapsFeatures for @structure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="1407">a #GstCapsFeatures for @structure</doc>
             <type name="CapsFeatures" c:type="const GstCapsFeatures*"/>
           </parameter>
         </parameters>
@@ -6050,68 +9340,97 @@ for more information.</doc>
       <method name="map_in_place"
               c:identifier="gst_caps_map_in_place"
               version="1.6">
-        <doc xml:space="preserve">Calls the provided function once for each structure and caps feature in the
+        <doc xml:space="preserve"
+             filename="gst/gstcaps.c"
+             line="2556">Calls the provided function once for each structure and caps feature in the
 #GstCaps. In contrast to gst_caps_foreach(), the function may modify but not
 delete the structures and features. The caps must be mutable.</doc>
+        <source-position filename="gst/gstcaps.h" line="508"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the supplied function returns %TRUE for each call,
+          <doc xml:space="preserve"
+               filename="gst/gstcaps.c"
+               line="2566">%TRUE if the supplied function returns %TRUE for each call,
 %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="caps" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstCaps</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="2558">a #GstCaps</doc>
             <type name="Caps" c:type="GstCaps*"/>
           </instance-parameter>
           <parameter name="func"
                      transfer-ownership="none"
                      scope="call"
                      closure="1">
-            <doc xml:space="preserve">a function to call for each field</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="2559">a function to call for each field</doc>
             <type name="CapsMapFunc" c:type="GstCapsMapFunc"/>
           </parameter>
           <parameter name="user_data"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">private data</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="2560">private data</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
         </parameters>
       </method>
       <method name="merge" c:identifier="gst_caps_merge">
-        <doc xml:space="preserve">Appends the structures contained in @caps2 to @caps1 if they are not yet
+        <doc xml:space="preserve"
+             filename="gst/gstcaps.c"
+             line="585">Appends the structures contained in @caps2 to @caps1 if they are not yet
 expressed by @caps1. The structures in @caps2 are not copied -- they are
 transferred to a writable copy of @caps1, and then @caps2 is freed.
 If either caps is ANY, the resulting caps will be ANY.</doc>
+        <source-position filename="gst/gstcaps.h" line="456"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the merged caps.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstcaps.c"
+               line="595">the merged caps.</doc>
           <type name="Caps" c:type="GstCaps*"/>
         </return-value>
         <parameters>
           <instance-parameter name="caps1" transfer-ownership="full">
-            <doc xml:space="preserve">the #GstCaps that will take the new entries</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="587">the #GstCaps that will take the new entries</doc>
             <type name="Caps" c:type="GstCaps*"/>
           </instance-parameter>
           <parameter name="caps2" transfer-ownership="full">
-            <doc xml:space="preserve">the #GstCaps to merge in</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="588">the #GstCaps to merge in</doc>
             <type name="Caps" c:type="GstCaps*"/>
           </parameter>
         </parameters>
       </method>
       <method name="merge_structure" c:identifier="gst_caps_merge_structure">
-        <doc xml:space="preserve">Appends @structure to @caps if its not already expressed by @caps.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstcaps.c"
+             line="718">Appends @structure to @caps if its not already expressed by @caps.</doc>
+        <source-position filename="gst/gstcaps.h" line="459"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the merged caps.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstcaps.c"
+               line="725">the merged caps.</doc>
           <type name="Caps" c:type="GstCaps*"/>
         </return-value>
         <parameters>
           <instance-parameter name="caps" transfer-ownership="full">
-            <doc xml:space="preserve">the #GstCaps to merge into</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="720">the #GstCaps to merge into</doc>
             <type name="Caps" c:type="GstCaps*"/>
           </instance-parameter>
           <parameter name="structure" transfer-ownership="full">
-            <doc xml:space="preserve">the #GstStructure to merge</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="721">the #GstStructure to merge</doc>
             <type name="Structure" c:type="GstStructure*"/>
           </parameter>
         </parameters>
@@ -6119,61 +9438,113 @@ If either caps is ANY, the resulting caps will be ANY.</doc>
       <method name="merge_structure_full"
               c:identifier="gst_caps_merge_structure_full"
               version="1.2">
-        <doc xml:space="preserve">Appends @structure with @features to @caps if its not already expressed by @caps.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstcaps.c"
+             line="771">Appends @structure with @features to @caps if its not already expressed by @caps.</doc>
+        <source-position filename="gst/gstcaps.h" line="462"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the merged caps.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstcaps.c"
+               line="779">the merged caps.</doc>
           <type name="Caps" c:type="GstCaps*"/>
         </return-value>
         <parameters>
           <instance-parameter name="caps" transfer-ownership="full">
-            <doc xml:space="preserve">the #GstCaps to merge into</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="773">the #GstCaps to merge into</doc>
             <type name="Caps" c:type="GstCaps*"/>
           </instance-parameter>
           <parameter name="structure" transfer-ownership="full">
-            <doc xml:space="preserve">the #GstStructure to merge</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="774">the #GstStructure to merge</doc>
             <type name="Structure" c:type="GstStructure*"/>
           </parameter>
           <parameter name="features"
                      transfer-ownership="full"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">the #GstCapsFeatures to merge</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="775">the #GstCapsFeatures to merge</doc>
             <type name="CapsFeatures" c:type="GstCapsFeatures*"/>
           </parameter>
         </parameters>
       </method>
       <method name="normalize" c:identifier="gst_caps_normalize">
-        <doc xml:space="preserve">Returns a #GstCaps that represents the same set of formats as
+        <doc xml:space="preserve"
+             filename="gst/gstcaps.c"
+             line="2000">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 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().</doc>
+        <source-position filename="gst/gstcaps.h" line="567"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the normalized #GstCaps</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstcaps.c"
+               line="2012">the normalized #GstCaps</doc>
           <type name="Caps" c:type="GstCaps*"/>
         </return-value>
         <parameters>
           <instance-parameter name="caps" transfer-ownership="full">
-            <doc xml:space="preserve">a #GstCaps to normalize</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="2002">a #GstCaps to normalize</doc>
+            <type name="Caps" c:type="GstCaps*"/>
+          </instance-parameter>
+        </parameters>
+      </method>
+      <method name="ref" c:identifier="gst_caps_ref" introspectable="0">
+        <doc xml:space="preserve"
+             filename="gst/gstcaps.h"
+             line="192">Add a reference to a #GstCaps object.
+
+From this point on, until the caller calls gst_caps_unref() or
+gst_caps_make_writable(), it is guaranteed that the caps object will not
+change. This means its structures won't change, etc. To use a #GstCaps
+object, you must always have a refcount on it -- either the one made
+implicitly by e.g. gst_caps_new_simple(), or via taking one explicitly with
+this function.</doc>
+        <source-position filename="gst/gstcaps.h" line="207"/>
+        <return-value transfer-ownership="full">
+          <doc xml:space="preserve"
+               filename="gst/gstcaps.h"
+               line="205">the same #GstCaps object.</doc>
+          <type name="Caps" c:type="GstCaps*"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="caps" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.h"
+                 line="194">the #GstCaps to reference</doc>
             <type name="Caps" c:type="GstCaps*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="remove_structure" c:identifier="gst_caps_remove_structure">
-        <doc xml:space="preserve">removes the structure with the given index from the list of structures
+        <doc xml:space="preserve"
+             filename="gst/gstcaps.c"
+             line="697">removes the structure with the given index from the list of structures
 contained in @caps.</doc>
+        <source-position filename="gst/gstcaps.h" line="453"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="caps" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstCaps to remove from</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="699">the #GstCaps to remove from</doc>
             <type name="Caps" c:type="GstCaps*"/>
           </instance-parameter>
           <parameter name="idx" transfer-ownership="none">
-            <doc xml:space="preserve">Index of the structure to remove</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="700">Index of the structure to remove</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
@@ -6181,24 +9552,33 @@ contained in @caps.</doc>
       <method name="set_features"
               c:identifier="gst_caps_set_features"
               version="1.2">
-        <doc xml:space="preserve">Sets the #GstCapsFeatures @features for the structure at @index.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstcaps.c"
+             line="945">Sets the #GstCapsFeatures @features for the structure at @index.</doc>
+        <source-position filename="gst/gstcaps.h" line="476"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="caps" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstCaps</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="947">a #GstCaps</doc>
             <type name="Caps" c:type="GstCaps*"/>
           </instance-parameter>
           <parameter name="index" transfer-ownership="none">
-            <doc xml:space="preserve">the index of the structure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="948">the index of the structure</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="features"
                      transfer-ownership="full"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">the #GstCapsFeatures to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="949">the #GstCapsFeatures to set</doc>
             <type name="CapsFeatures" c:type="GstCapsFeatures*"/>
           </parameter>
         </parameters>
@@ -6206,20 +9586,27 @@ contained in @caps.</doc>
       <method name="set_features_simple"
               c:identifier="gst_caps_set_features_simple"
               version="1.16">
-        <doc xml:space="preserve">Sets the #GstCapsFeatures @features for all the structures of @caps.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstcaps.c"
+             line="978">Sets the #GstCapsFeatures @features for all the structures of @caps.</doc>
+        <source-position filename="gst/gstcaps.h" line="480"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="caps" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstCaps</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="980">a #GstCaps</doc>
             <type name="Caps" c:type="GstCaps*"/>
           </instance-parameter>
           <parameter name="features"
                      transfer-ownership="full"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">the #GstCapsFeatures to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="981">the #GstCapsFeatures to set</doc>
             <type name="CapsFeatures" c:type="GstCapsFeatures*"/>
           </parameter>
         </parameters>
@@ -6227,22 +9614,31 @@ contained in @caps.</doc>
       <method name="set_simple"
               c:identifier="gst_caps_set_simple"
               introspectable="0">
-        <doc xml:space="preserve">Sets fields in a #GstCaps.  The arguments must be passed in the same
+        <doc xml:space="preserve"
+             filename="gst/gstcaps.c"
+             line="1159">Sets fields in a #GstCaps.  The arguments must be passed in the same
 manner as gst_structure_set(), and be %NULL-terminated.</doc>
+        <source-position filename="gst/gstcaps.h" line="497"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="caps" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstCaps to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="1161">the #GstCaps to set</doc>
             <type name="Caps" c:type="GstCaps*"/>
           </instance-parameter>
           <parameter name="field" transfer-ownership="none">
-            <doc xml:space="preserve">first field to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="1162">first field to set</doc>
             <type name="utf8" c:type="const char*"/>
           </parameter>
           <parameter name="..." transfer-ownership="none">
-            <doc xml:space="preserve">additional parameters</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="1163">additional parameters</doc>
             <varargs/>
           </parameter>
         </parameters>
@@ -6250,50 +9646,70 @@ manner as gst_structure_set(), and be %NULL-terminated.</doc>
       <method name="set_simple_valist"
               c:identifier="gst_caps_set_simple_valist"
               introspectable="0">
-        <doc xml:space="preserve">Sets fields in a #GstCaps.  The arguments must be passed in the same
+        <doc xml:space="preserve"
+             filename="gst/gstcaps.c"
+             line="1121">Sets fields in a #GstCaps.  The arguments must be passed in the same
 manner as gst_structure_set(), and be %NULL-terminated.</doc>
+        <source-position filename="gst/gstcaps.h" line="500"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="caps" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstCaps to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="1123">the #GstCaps to set</doc>
             <type name="Caps" c:type="GstCaps*"/>
           </instance-parameter>
           <parameter name="field" transfer-ownership="none">
-            <doc xml:space="preserve">first field to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="1124">first field to set</doc>
             <type name="utf8" c:type="const char*"/>
           </parameter>
           <parameter name="varargs" transfer-ownership="none">
-            <doc xml:space="preserve">additional parameters</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="1125">additional parameters</doc>
             <type name="va_list" c:type="va_list"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_value" c:identifier="gst_caps_set_value">
-        <doc xml:space="preserve">Sets the given @field on all structures of @caps to the given @value.
+        <doc xml:space="preserve"
+             filename="gst/gstcaps.c"
+             line="1094">Sets the given @field on all structures of @caps to the given @value.
 This is a convenience function for calling gst_structure_set_value() on
 all structures of @caps.</doc>
+        <source-position filename="gst/gstcaps.h" line="493"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="caps" transfer-ownership="none">
-            <doc xml:space="preserve">a writable caps</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="1096">a writable caps</doc>
             <type name="Caps" c:type="GstCaps*"/>
           </instance-parameter>
           <parameter name="field" transfer-ownership="none">
-            <doc xml:space="preserve">name of the field to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="1097">name of the field to set</doc>
             <type name="utf8" c:type="const char*"/>
           </parameter>
           <parameter name="value" transfer-ownership="none">
-            <doc xml:space="preserve">value to set the field to</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="1098">value to set the field to</doc>
             <type name="GObject.Value" c:type="const GValue*"/>
           </parameter>
         </parameters>
       </method>
       <method name="simplify" c:identifier="gst_caps_simplify">
-        <doc xml:space="preserve">Converts the given @caps into a representation that represents the
+        <doc xml:space="preserve"
+             filename="gst/gstcaps.c"
+             line="2158">Converts the given @caps into a representation that represents the
 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.
@@ -6303,57 +9719,82 @@ 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.</doc>
+        <source-position filename="gst/gstcaps.h" line="570"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">The simplified caps.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstcaps.c"
+               line="2173">The simplified caps.</doc>
           <type name="Caps" c:type="GstCaps*"/>
         </return-value>
         <parameters>
           <instance-parameter name="caps" transfer-ownership="full">
-            <doc xml:space="preserve">a #GstCaps to simplify</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="2160">a #GstCaps to simplify</doc>
             <type name="Caps" c:type="GstCaps*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="steal_structure" c:identifier="gst_caps_steal_structure">
-        <doc xml:space="preserve">Retrieves the structure with the given index from the list of structures
+        <doc xml:space="preserve"
+             filename="gst/gstcaps.c"
+             line="527">Retrieves the structure with the given index from the list of structures
 contained in @caps. The caller becomes the owner of the returned structure.</doc>
+        <source-position filename="gst/gstcaps.h" line="473"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">a pointer to the #GstStructure
+          <doc xml:space="preserve"
+               filename="gst/gstcaps.c"
+               line="535">a pointer to the #GstStructure
     corresponding to @index.</doc>
           <type name="Structure" c:type="GstStructure*"/>
         </return-value>
         <parameters>
           <instance-parameter name="caps" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstCaps to retrieve from</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="529">the #GstCaps to retrieve from</doc>
             <type name="Caps" c:type="GstCaps*"/>
           </instance-parameter>
           <parameter name="index" transfer-ownership="none">
-            <doc xml:space="preserve">Index of the structure to retrieve</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="530">Index of the structure to retrieve</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="subtract" c:identifier="gst_caps_subtract">
-        <doc xml:space="preserve">Subtracts the @subtrahend from the @minuend.
+        <doc xml:space="preserve"
+             filename="gst/gstcaps.c"
+             line="1866">Subtracts the @subtrahend from the @minuend.
 &gt; This function does not work reliably if optional properties for caps
 &gt; are included on one caps and omitted on the other.</doc>
+        <source-position filename="gst/gstcaps.h" line="564"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the resulting caps</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstcaps.c"
+               line="1875">the resulting caps</doc>
           <type name="Caps" c:type="GstCaps*"/>
         </return-value>
         <parameters>
           <instance-parameter name="minuend" transfer-ownership="none">
-            <doc xml:space="preserve">#GstCaps to subtract from</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="1868">#GstCaps to subtract from</doc>
             <type name="Caps" c:type="GstCaps*"/>
           </instance-parameter>
           <parameter name="subtrahend" transfer-ownership="none">
-            <doc xml:space="preserve">#GstCaps to subtract</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="1869">#GstCaps to subtract</doc>
             <type name="Caps" c:type="GstCaps*"/>
           </parameter>
         </parameters>
       </method>
       <method name="to_string" c:identifier="gst_caps_to_string">
-        <doc xml:space="preserve">Converts @caps to a string representation.  This string representation
+        <doc xml:space="preserve"
+             filename="gst/gstcaps.c"
+             line="2293">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:
@@ -6364,58 +9805,181 @@ This prints the caps in human readable form.
 
 The current implementation of serialization will lead to unexpected results
 when there are nested #GstCaps / #GstStructure deeper than one level.</doc>
+        <source-position filename="gst/gstcaps.h" line="578"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a newly allocated string representing @caps.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstcaps.c"
+               line="2309">a newly allocated string representing @caps.</doc>
           <type name="utf8" c:type="gchar*"/>
         </return-value>
         <parameters>
           <instance-parameter name="caps" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstCaps</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="2295">a #GstCaps</doc>
             <type name="Caps" c:type="const GstCaps*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="truncate" c:identifier="gst_caps_truncate">
-        <doc xml:space="preserve">Discard all but the first structure from @caps. Useful when
+        <doc xml:space="preserve"
+             filename="gst/gstcaps.c"
+             line="1053">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().</doc>
+additional reference to it with gst_caps_ref().
+
+Note that it is not guaranteed that the returned caps have exactly one
+structure. If @caps is any or empty caps then then returned caps will be
+the same and contain no structure at all.</doc>
+        <source-position filename="gst/gstcaps.h" line="490"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">truncated caps</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstcaps.c"
+               line="1068">truncated caps</doc>
           <type name="Caps" c:type="GstCaps*"/>
         </return-value>
         <parameters>
           <instance-parameter name="caps" transfer-ownership="full">
-            <doc xml:space="preserve">the #GstCaps to truncate</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="1055">the #GstCaps to truncate</doc>
+            <type name="Caps" c:type="GstCaps*"/>
+          </instance-parameter>
+        </parameters>
+      </method>
+      <method name="unref" c:identifier="gst_caps_unref" introspectable="0">
+        <doc xml:space="preserve"
+             filename="gst/gstcaps.h"
+             line="214">Unref a #GstCaps and and free all its structures and the
+structures' values when the refcount reaches 0.</doc>
+        <source-position filename="gst/gstcaps.h" line="221"/>
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="caps" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.h"
+                 line="216">a #GstCaps.</doc>
             <type name="Caps" c:type="GstCaps*"/>
           </instance-parameter>
         </parameters>
       </method>
       <function name="from_string" c:identifier="gst_caps_from_string">
-        <doc xml:space="preserve">Converts @caps from a string representation.
+        <doc xml:space="preserve"
+             filename="gst/gstcaps.c"
+             line="2475">Converts @caps from a string representation.
 
 The current implementation of serialization will lead to unexpected results
 when there are nested #GstCaps / #GstStructure deeper than one level.</doc>
+        <source-position filename="gst/gstcaps.h" line="581"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">a newly allocated #GstCaps</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstcaps.c"
+               line="2484">a newly allocated #GstCaps</doc>
           <type name="Caps" c:type="GstCaps*"/>
         </return-value>
         <parameters>
           <parameter name="string" transfer-ownership="none">
-            <doc xml:space="preserve">a string to convert to #GstCaps</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="2477">a string to convert to #GstCaps</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </function>
+      <function name="replace"
+                c:identifier="gst_caps_replace"
+                introspectable="0">
+        <doc xml:space="preserve"
+             filename="gst/gstcaps.h"
+             line="283">Modifies a pointer to a #GstCaps to point to a different #GstCaps. The
+modification is done atomically (so this is useful for ensuring thread safety
+in some cases), and the reference counts are updated appropriately (the old
+caps is unreffed, the new is reffed).
+
+Either @new_caps or the #GstCaps pointed to by @old_caps may be %NULL.</doc>
+        <source-position filename="gst/gstcaps.h" line="299"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstcaps.h"
+               line="297">%TRUE if @new_caps was different from @old_caps</doc>
+          <type name="gboolean" c:type="gboolean"/>
+        </return-value>
+        <parameters>
+          <parameter name="old_caps"
+                     direction="inout"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     nullable="1"
+                     allow-none="1">
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.h"
+                 line="285">pointer to a pointer
+    to a #GstCaps to be replaced.</doc>
+            <type name="Caps" c:type="GstCaps**"/>
+          </parameter>
+          <parameter name="new_caps"
+                     transfer-ownership="none"
+                     nullable="1"
+                     allow-none="1">
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.h"
+                 line="287">pointer to a #GstCaps that will
+    replace the caps pointed to by @old_caps.</doc>
+            <type name="Caps" c:type="GstCaps*"/>
+          </parameter>
+        </parameters>
+      </function>
+      <function name="take" c:identifier="gst_caps_take" introspectable="0">
+        <doc xml:space="preserve"
+             filename="gst/gstcaps.h"
+             line="306">Modifies a pointer to a #GstCaps to point to a different #GstCaps. This
+function is similar to gst_caps_replace() except that it takes ownership
+of @new_caps.</doc>
+        <source-position filename="gst/gstcaps.h" line="319"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstcaps.h"
+               line="317">%TRUE if @new_caps was different from @old_caps</doc>
+          <type name="gboolean" c:type="gboolean"/>
+        </return-value>
+        <parameters>
+          <parameter name="old_caps"
+                     direction="inout"
+                     caller-allocates="0"
+                     transfer-ownership="full">
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.h"
+                 line="308">pointer to a pointer to a #GstCaps to be
+    replaced.</doc>
+            <type name="Caps" c:type="GstCaps**"/>
+          </parameter>
+          <parameter name="new_caps"
+                     transfer-ownership="full"
+                     nullable="1"
+                     allow-none="1">
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.h"
+                 line="310">pointer to a #GstCaps that will
+    replace the caps pointed to by @old_caps.</doc>
+            <type name="Caps" c:type="GstCaps*"/>
+          </parameter>
+        </parameters>
+      </function>
     </record>
     <record name="CapsFeatures"
             c:type="GstCapsFeatures"
+            version="1.2"
             glib:type-name="GstCapsFeatures"
             glib:get-type="gst_caps_features_get_type"
             c:symbol-prefix="caps_features">
-      <doc xml:space="preserve">#GstCapsFeatures can optionally be set on a #GstCaps to add requirements
+      <doc xml:space="preserve"
+           filename="gst/gstcapsfeatures.c"
+           line="21">#GstCapsFeatures can optionally be set on a #GstCaps to add requirements
 for additional features for a specific #GstStructure. Caps structures with
 the same name but with a non-equal set of caps features are not compatible.
 If a pad supports multiple sets of features it has to add multiple equal
@@ -6433,25 +9997,35 @@ Examples for caps features would be the requirement of a specific #GstMemory
 types or the requirement of having a specific #GstMeta on the buffer. Features
 are given as a string of the format "memory:GstMemoryTypeName" or
 "meta:GstMetaAPIName".</doc>
+      <source-position filename="gst/gstcapsfeatures.h" line="31"/>
       <constructor name="new"
                    c:identifier="gst_caps_features_new"
                    version="1.2"
                    introspectable="0">
-        <doc xml:space="preserve">Creates a new #GstCapsFeatures with the given features.
+        <doc xml:space="preserve"
+             filename="gst/gstcapsfeatures.c"
+             line="220">Creates a new #GstCapsFeatures with the given features.
 The last argument must be %NULL.
 
 Free-function: gst_caps_features_free</doc>
+        <source-position filename="gst/gstcapsfeatures.h" line="61"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new, empty #GstCapsFeatures</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstcapsfeatures.c"
+               line="230">a new, empty #GstCapsFeatures</doc>
           <type name="CapsFeatures" c:type="GstCapsFeatures*"/>
         </return-value>
         <parameters>
           <parameter name="feature1" transfer-ownership="none">
-            <doc xml:space="preserve">name of first feature to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcapsfeatures.c"
+                 line="222">name of first feature to set</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="..." transfer-ownership="none">
-            <doc xml:space="preserve">additional features</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcapsfeatures.c"
+                 line="223">additional features</doc>
             <varargs/>
           </parameter>
         </parameters>
@@ -6459,24 +10033,34 @@ Free-function: gst_caps_features_free</doc>
       <constructor name="new_any"
                    c:identifier="gst_caps_features_new_any"
                    version="1.2">
-        <doc xml:space="preserve">Creates a new, ANY #GstCapsFeatures. This will be equal
+        <doc xml:space="preserve"
+             filename="gst/gstcapsfeatures.c"
+             line="196">Creates a new, ANY #GstCapsFeatures. This will be equal
 to any other #GstCapsFeatures but caps with these are
 unfixed.
 
 Free-function: gst_caps_features_free</doc>
+        <source-position filename="gst/gstcapsfeatures.h" line="58"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new, ANY #GstCapsFeatures</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstcapsfeatures.c"
+               line="205">a new, ANY #GstCapsFeatures</doc>
           <type name="CapsFeatures" c:type="GstCapsFeatures*"/>
         </return-value>
       </constructor>
       <constructor name="new_empty"
                    c:identifier="gst_caps_features_new_empty"
                    version="1.2">
-        <doc xml:space="preserve">Creates a new, empty #GstCapsFeatures.
+        <doc xml:space="preserve"
+             filename="gst/gstcapsfeatures.c"
+             line="169">Creates a new, empty #GstCapsFeatures.
 
 Free-function: gst_caps_features_free</doc>
+        <source-position filename="gst/gstcapsfeatures.h" line="55"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new, empty #GstCapsFeatures</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstcapsfeatures.c"
+               line="176">a new, empty #GstCapsFeatures</doc>
           <type name="CapsFeatures" c:type="GstCapsFeatures*"/>
         </return-value>
       </constructor>
@@ -6484,21 +10068,30 @@ Free-function: gst_caps_features_free</doc>
                    c:identifier="gst_caps_features_new_id"
                    version="1.2"
                    introspectable="0">
-        <doc xml:space="preserve">Creates a new #GstCapsFeatures with the given features.
+        <doc xml:space="preserve"
+             filename="gst/gstcapsfeatures.c"
+             line="279">Creates a new #GstCapsFeatures with the given features.
 The last argument must be 0.
 
 Free-function: gst_caps_features_free</doc>
+        <source-position filename="gst/gstcapsfeatures.h" line="67"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new, empty #GstCapsFeatures</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstcapsfeatures.c"
+               line="289">a new, empty #GstCapsFeatures</doc>
           <type name="CapsFeatures" c:type="GstCapsFeatures*"/>
         </return-value>
         <parameters>
           <parameter name="feature1" transfer-ownership="none">
-            <doc xml:space="preserve">name of first feature to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcapsfeatures.c"
+                 line="281">name of first feature to set</doc>
             <type name="GLib.Quark" c:type="GQuark"/>
           </parameter>
           <parameter name="..." transfer-ownership="none">
-            <doc xml:space="preserve">additional features</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcapsfeatures.c"
+                 line="282">additional features</doc>
             <varargs/>
           </parameter>
         </parameters>
@@ -6507,20 +10100,29 @@ Free-function: gst_caps_features_free</doc>
                    c:identifier="gst_caps_features_new_id_valist"
                    version="1.2"
                    introspectable="0">
-        <doc xml:space="preserve">Creates a new #GstCapsFeatures with the given features.
+        <doc xml:space="preserve"
+             filename="gst/gstcapsfeatures.c"
+             line="308">Creates a new #GstCapsFeatures with the given features.
 
 Free-function: gst_caps_features_free</doc>
+        <source-position filename="gst/gstcapsfeatures.h" line="70"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new, empty #GstCapsFeatures</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstcapsfeatures.c"
+               line="317">a new, empty #GstCapsFeatures</doc>
           <type name="CapsFeatures" c:type="GstCapsFeatures*"/>
         </return-value>
         <parameters>
           <parameter name="feature1" transfer-ownership="none">
-            <doc xml:space="preserve">name of first feature to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcapsfeatures.c"
+                 line="310">name of first feature to set</doc>
             <type name="GLib.Quark" c:type="GQuark"/>
           </parameter>
           <parameter name="varargs" transfer-ownership="none">
-            <doc xml:space="preserve">variable argument list</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcapsfeatures.c"
+                 line="311">variable argument list</doc>
             <type name="va_list" c:type="va_list"/>
           </parameter>
         </parameters>
@@ -6529,36 +10131,52 @@ Free-function: gst_caps_features_free</doc>
                    c:identifier="gst_caps_features_new_valist"
                    version="1.2"
                    introspectable="0">
-        <doc xml:space="preserve">Creates a new #GstCapsFeatures with the given features.
+        <doc xml:space="preserve"
+             filename="gst/gstcapsfeatures.c"
+             line="249">Creates a new #GstCapsFeatures with the given features.
 
 Free-function: gst_caps_features_free</doc>
+        <source-position filename="gst/gstcapsfeatures.h" line="64"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new, empty #GstCapsFeatures</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstcapsfeatures.c"
+               line="258">a new, empty #GstCapsFeatures</doc>
           <type name="CapsFeatures" c:type="GstCapsFeatures*"/>
         </return-value>
         <parameters>
           <parameter name="feature1" transfer-ownership="none">
-            <doc xml:space="preserve">name of first feature to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcapsfeatures.c"
+                 line="251">name of first feature to set</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="varargs" transfer-ownership="none">
-            <doc xml:space="preserve">variable argument list</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcapsfeatures.c"
+                 line="252">variable argument list</doc>
             <type name="va_list" c:type="va_list"/>
           </parameter>
         </parameters>
       </constructor>
       <method name="add" c:identifier="gst_caps_features_add" version="1.2">
-        <doc xml:space="preserve">Adds @feature to @features.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstcapsfeatures.c"
+             line="768">Adds @feature to @features.</doc>
+        <source-position filename="gst/gstcapsfeatures.h" line="109"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="features" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstCapsFeatures.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcapsfeatures.c"
+                 line="770">a #GstCapsFeatures.</doc>
             <type name="CapsFeatures" c:type="GstCapsFeatures*"/>
           </instance-parameter>
           <parameter name="feature" transfer-ownership="none">
-            <doc xml:space="preserve">a feature.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcapsfeatures.c"
+                 line="771">a feature.</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
@@ -6566,17 +10184,24 @@ Free-function: gst_caps_features_free</doc>
       <method name="add_id"
               c:identifier="gst_caps_features_add_id"
               version="1.2">
-        <doc xml:space="preserve">Adds @feature to @features.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstcapsfeatures.c"
+             line="788">Adds @feature to @features.</doc>
+        <source-position filename="gst/gstcapsfeatures.h" line="112"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="features" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstCapsFeatures.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcapsfeatures.c"
+                 line="790">a #GstCapsFeatures.</doc>
             <type name="CapsFeatures" c:type="GstCapsFeatures*"/>
           </instance-parameter>
           <parameter name="feature" transfer-ownership="none">
-            <doc xml:space="preserve">a feature.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcapsfeatures.c"
+                 line="791">a feature.</doc>
             <type name="GLib.Quark" c:type="GQuark"/>
           </parameter>
         </parameters>
@@ -6584,18 +10209,27 @@ Free-function: gst_caps_features_free</doc>
       <method name="contains"
               c:identifier="gst_caps_features_contains"
               version="1.2">
-        <doc xml:space="preserve">Check if @features contains @feature.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if @features contains @feature.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstcapsfeatures.c"
+             line="647">Check if @features contains @feature.</doc>
+        <source-position filename="gst/gstcapsfeatures.h" line="97"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstcapsfeatures.c"
+               line="654">%TRUE if @features contains @feature.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="features" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstCapsFeatures.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcapsfeatures.c"
+                 line="649">a #GstCapsFeatures.</doc>
             <type name="CapsFeatures" c:type="const GstCapsFeatures*"/>
           </instance-parameter>
           <parameter name="feature" transfer-ownership="none">
-            <doc xml:space="preserve">a feature</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcapsfeatures.c"
+                 line="650">a feature</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
@@ -6603,46 +10237,67 @@ Free-function: gst_caps_features_free</doc>
       <method name="contains_id"
               c:identifier="gst_caps_features_contains_id"
               version="1.2">
-        <doc xml:space="preserve">Check if @features contains @feature.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if @features contains @feature.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstcapsfeatures.c"
+             line="669">Check if @features contains @feature.</doc>
+        <source-position filename="gst/gstcapsfeatures.h" line="100"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstcapsfeatures.c"
+               line="676">%TRUE if @features contains @feature.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="features" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstCapsFeatures.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcapsfeatures.c"
+                 line="671">a #GstCapsFeatures.</doc>
             <type name="CapsFeatures" c:type="const GstCapsFeatures*"/>
           </instance-parameter>
           <parameter name="feature" transfer-ownership="none">
-            <doc xml:space="preserve">a feature</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcapsfeatures.c"
+                 line="672">a feature</doc>
             <type name="GLib.Quark" c:type="GQuark"/>
           </parameter>
         </parameters>
       </method>
       <method name="copy" c:identifier="gst_caps_features_copy" version="1.2">
-        <doc xml:space="preserve">Duplicates a #GstCapsFeatures and all its values.
+        <doc xml:space="preserve"
+             filename="gst/gstcapsfeatures.c"
+             line="377">Duplicates a #GstCapsFeatures and all its values.
 
 Free-function: gst_caps_features_free</doc>
+        <source-position filename="gst/gstcapsfeatures.h" line="76"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new #GstCapsFeatures.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstcapsfeatures.c"
+               line="385">a new #GstCapsFeatures.</doc>
           <type name="CapsFeatures" c:type="GstCapsFeatures*"/>
         </return-value>
         <parameters>
           <instance-parameter name="features" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstCapsFeatures to duplicate</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcapsfeatures.c"
+                 line="379">a #GstCapsFeatures to duplicate</doc>
             <type name="CapsFeatures" c:type="const GstCapsFeatures*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="free" c:identifier="gst_caps_features_free" version="1.2">
-        <doc xml:space="preserve">Frees a #GstCapsFeatures and all its values. The caps features must not
+        <doc xml:space="preserve"
+             filename="gst/gstcapsfeatures.c"
+             line="406">Frees a #GstCapsFeatures and all its values. The caps features must not
 have a parent when this function is called.</doc>
+        <source-position filename="gst/gstcapsfeatures.h" line="79"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="features" transfer-ownership="full">
-            <doc xml:space="preserve">the #GstCapsFeatures to free</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcapsfeatures.c"
+                 line="408">the #GstCapsFeatures to free</doc>
             <type name="CapsFeatures" c:type="GstCapsFeatures*"/>
           </instance-parameter>
         </parameters>
@@ -6650,18 +10305,27 @@ have a parent when this function is called.</doc>
       <method name="get_nth"
               c:identifier="gst_caps_features_get_nth"
               version="1.2">
-        <doc xml:space="preserve">Returns the @i-th feature of @features.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstcapsfeatures.c"
+             line="596">Returns the @i-th feature of @features.</doc>
+        <source-position filename="gst/gstcapsfeatures.h" line="91"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">The @i-th feature of @features.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstcapsfeatures.c"
+               line="603">The @i-th feature of @features.</doc>
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
         <parameters>
           <instance-parameter name="features" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstCapsFeatures.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcapsfeatures.c"
+                 line="598">a #GstCapsFeatures.</doc>
             <type name="CapsFeatures" c:type="const GstCapsFeatures*"/>
           </instance-parameter>
           <parameter name="i" transfer-ownership="none">
-            <doc xml:space="preserve">index of the feature</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcapsfeatures.c"
+                 line="599">index of the feature</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
@@ -6669,18 +10333,27 @@ have a parent when this function is called.</doc>
       <method name="get_nth_id"
               c:identifier="gst_caps_features_get_nth_id"
               version="1.2">
-        <doc xml:space="preserve">Returns the @i-th feature of @features.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The @i-th feature of @features.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstcapsfeatures.c"
+             line="623">Returns the @i-th feature of @features.</doc>
+        <source-position filename="gst/gstcapsfeatures.h" line="94"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstcapsfeatures.c"
+               line="630">The @i-th feature of @features.</doc>
           <type name="GLib.Quark" c:type="GQuark"/>
         </return-value>
         <parameters>
           <instance-parameter name="features" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstCapsFeatures.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcapsfeatures.c"
+                 line="625">a #GstCapsFeatures.</doc>
             <type name="CapsFeatures" c:type="const GstCapsFeatures*"/>
           </instance-parameter>
           <parameter name="i" transfer-ownership="none">
-            <doc xml:space="preserve">index of the feature</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcapsfeatures.c"
+                 line="626">index of the feature</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
@@ -6688,14 +10361,21 @@ have a parent when this function is called.</doc>
       <method name="get_size"
               c:identifier="gst_caps_features_get_size"
               version="1.2">
-        <doc xml:space="preserve">Returns the number of features in @features.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The number of features in @features.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstcapsfeatures.c"
+             line="578">Returns the number of features in @features.</doc>
+        <source-position filename="gst/gstcapsfeatures.h" line="88"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstcapsfeatures.c"
+               line="584">The number of features in @features.</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="features" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstCapsFeatures.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcapsfeatures.c"
+                 line="580">a #GstCapsFeatures.</doc>
             <type name="CapsFeatures" c:type="const GstCapsFeatures*"/>
           </instance-parameter>
         </parameters>
@@ -6703,14 +10383,21 @@ have a parent when this function is called.</doc>
       <method name="is_any"
               c:identifier="gst_caps_features_is_any"
               version="1.2">
-        <doc xml:space="preserve">Check if @features is %GST_CAPS_FEATURES_ANY.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if @features is %GST_CAPS_FEATURES_ANY.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstcapsfeatures.c"
+             line="750">Check if @features is %GST_CAPS_FEATURES_ANY.</doc>
+        <source-position filename="gst/gstcapsfeatures.h" line="106"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstcapsfeatures.c"
+               line="756">%TRUE if @features is %GST_CAPS_FEATURES_ANY.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="features" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstCapsFeatures.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcapsfeatures.c"
+                 line="752">a #GstCapsFeatures.</doc>
             <type name="CapsFeatures" c:type="const GstCapsFeatures*"/>
           </instance-parameter>
         </parameters>
@@ -6718,18 +10405,27 @@ have a parent when this function is called.</doc>
       <method name="is_equal"
               c:identifier="gst_caps_features_is_equal"
               version="1.2">
-        <doc xml:space="preserve">Check if @features1 and @features2 are equal.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if @features1 and @features2 are equal.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstcapsfeatures.c"
+             line="703">Check if @features1 and @features2 are equal.</doc>
+        <source-position filename="gst/gstcapsfeatures.h" line="103"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstcapsfeatures.c"
+               line="710">%TRUE if @features1 and @features2 are equal.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="features1" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstCapsFeatures.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcapsfeatures.c"
+                 line="705">a #GstCapsFeatures.</doc>
             <type name="CapsFeatures" c:type="const GstCapsFeatures*"/>
           </instance-parameter>
           <parameter name="features2" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstCapsFeatures.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcapsfeatures.c"
+                 line="706">a #GstCapsFeatures.</doc>
             <type name="CapsFeatures" c:type="const GstCapsFeatures*"/>
           </parameter>
         </parameters>
@@ -6737,17 +10433,24 @@ have a parent when this function is called.</doc>
       <method name="remove"
               c:identifier="gst_caps_features_remove"
               version="1.2">
-        <doc xml:space="preserve">Removes @feature from @features.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstcapsfeatures.c"
+             line="821">Removes @feature from @features.</doc>
+        <source-position filename="gst/gstcapsfeatures.h" line="115"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="features" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstCapsFeatures.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcapsfeatures.c"
+                 line="823">a #GstCapsFeatures.</doc>
             <type name="CapsFeatures" c:type="GstCapsFeatures*"/>
           </instance-parameter>
           <parameter name="feature" transfer-ownership="none">
-            <doc xml:space="preserve">a feature.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcapsfeatures.c"
+                 line="824">a feature.</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
@@ -6755,17 +10458,24 @@ have a parent when this function is called.</doc>
       <method name="remove_id"
               c:identifier="gst_caps_features_remove_id"
               version="1.2">
-        <doc xml:space="preserve">Removes @feature from @features.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstcapsfeatures.c"
+             line="840">Removes @feature from @features.</doc>
+        <source-position filename="gst/gstcapsfeatures.h" line="118"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="features" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstCapsFeatures.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcapsfeatures.c"
+                 line="842">a #GstCapsFeatures.</doc>
             <type name="CapsFeatures" c:type="GstCapsFeatures*"/>
           </instance-parameter>
           <parameter name="feature" transfer-ownership="none">
-            <doc xml:space="preserve">a feature.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcapsfeatures.c"
+                 line="843">a feature.</doc>
             <type name="GLib.Quark" c:type="GQuark"/>
           </parameter>
         </parameters>
@@ -6773,21 +10483,30 @@ have a parent when this function is called.</doc>
       <method name="set_parent_refcount"
               c:identifier="gst_caps_features_set_parent_refcount"
               version="1.2">
-        <doc xml:space="preserve">Sets the parent_refcount field of #GstCapsFeatures. This field is used to
+        <doc xml:space="preserve"
+             filename="gst/gstcapsfeatures.c"
+             line="338">Sets the parent_refcount field of #GstCapsFeatures. This field is used to
 determine whether a caps features is mutable or not. This function should only be
 called by code implementing parent objects of #GstCapsFeatures, as described in
 the MT Refcounting section of the design documents.</doc>
+        <source-position filename="gst/gstcapsfeatures.h" line="73"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the parent refcount could be set.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstcapsfeatures.c"
+               line="348">%TRUE if the parent refcount could be set.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="features" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstCapsFeatures</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcapsfeatures.c"
+                 line="340">a #GstCapsFeatures</doc>
             <type name="CapsFeatures" c:type="GstCapsFeatures*"/>
           </instance-parameter>
           <parameter name="refcount" transfer-ownership="none">
-            <doc xml:space="preserve">a pointer to the parent's refcount</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcapsfeatures.c"
+                 line="341">a pointer to the parent's refcount</doc>
             <type name="gint" c:type="gint*"/>
           </parameter>
         </parameters>
@@ -6795,7 +10514,9 @@ the MT Refcounting section of the design documents.</doc>
       <method name="to_string"
               c:identifier="gst_caps_features_to_string"
               version="1.2">
-        <doc xml:space="preserve">Converts @features to a human-readable string representation.
+        <doc xml:space="preserve"
+             filename="gst/gstcapsfeatures.c"
+             line="430">Converts @features to a human-readable string representation.
 
 For debugging purposes its easier to do something like this:
 |[&lt;!-- language="C" --&gt;
@@ -6804,14 +10525,19 @@ GST_LOG ("features is %" GST_PTR_FORMAT, features);
 This prints the features in human readable form.
 
 Free-function: g_free</doc>
+        <source-position filename="gst/gstcapsfeatures.h" line="82"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a pointer to string allocated by g_malloc().
+          <doc xml:space="preserve"
+               filename="gst/gstcapsfeatures.c"
+               line="444">a pointer to string allocated by g_malloc().
     g_free() after usage.</doc>
           <type name="utf8" c:type="gchar*"/>
         </return-value>
         <parameters>
           <instance-parameter name="features" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstCapsFeatures</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcapsfeatures.c"
+                 line="432">a #GstCapsFeatures</doc>
             <type name="CapsFeatures" c:type="const GstCapsFeatures*"/>
           </instance-parameter>
         </parameters>
@@ -6819,39 +10545,55 @@ Free-function: g_free</doc>
       <function name="from_string"
                 c:identifier="gst_caps_features_from_string"
                 version="1.2">
-        <doc xml:space="preserve">Creates a #GstCapsFeatures from a string representation.
+        <doc xml:space="preserve"
+             filename="gst/gstcapsfeatures.c"
+             line="486">Creates a #GstCapsFeatures from a string representation.
 
 Free-function: gst_caps_features_free</doc>
+        <source-position filename="gst/gstcapsfeatures.h" line="85"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">a new #GstCapsFeatures or
+          <doc xml:space="preserve"
+               filename="gst/gstcapsfeatures.c"
+               line="494">a new #GstCapsFeatures or
     %NULL when the string could not be parsed. Free with
     gst_caps_features_free() after use.</doc>
           <type name="CapsFeatures" c:type="GstCapsFeatures*"/>
         </return-value>
         <parameters>
           <parameter name="features" transfer-ownership="none">
-            <doc xml:space="preserve">a string representation of a #GstCapsFeatures.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcapsfeatures.c"
+                 line="488">a string representation of a #GstCapsFeatures.</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </function>
     </record>
     <callback name="CapsFilterMapFunc" c:type="GstCapsFilterMapFunc">
-      <doc xml:space="preserve">A function that will be called in gst_caps_filter_and_map_in_place().
+      <doc xml:space="preserve"
+           filename="gst/gstcaps.h"
+           line="388">A function that will be called in gst_caps_filter_and_map_in_place().
 The function may modify @features and @structure, and both will be
 removed from the caps if %FALSE is returned.</doc>
+      <source-position filename="gst/gstcaps.h" line="401"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE if the features and structure should be preserved,
+        <doc xml:space="preserve"
+             filename="gst/gstcaps.h"
+             line="398">%TRUE if the features and structure should be preserved,
 %FALSE if it should be removed.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="features" transfer-ownership="none">
-          <doc xml:space="preserve">the #GstCapsFeatures</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstcaps.h"
+               line="390">the #GstCapsFeatures</doc>
           <type name="CapsFeatures" c:type="GstCapsFeatures*"/>
         </parameter>
         <parameter name="structure" transfer-ownership="none">
-          <doc xml:space="preserve">the #GstStructure</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstcaps.h"
+               line="391">the #GstStructure</doc>
           <type name="Structure" c:type="GstStructure*"/>
         </parameter>
         <parameter name="user_data"
@@ -6859,7 +10601,9 @@ removed from the caps if %FALSE is returned.</doc>
                    nullable="1"
                    allow-none="1"
                    closure="2">
-          <doc xml:space="preserve">user data</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstcaps.h"
+               line="392">user data</doc>
           <type name="gpointer" c:type="gpointer"/>
         </parameter>
       </parameters>
@@ -6868,30 +10612,43 @@ removed from the caps if %FALSE is returned.</doc>
               glib:type-name="GstCapsFlags"
               glib:get-type="gst_caps_flags_get_type"
               c:type="GstCapsFlags">
-      <doc xml:space="preserve">Extra flags for a caps.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstcaps.h"
+           line="40">Extra flags for a caps.</doc>
       <member name="any"
               value="16"
               c:identifier="GST_CAPS_FLAG_ANY"
               glib:nick="any">
-        <doc xml:space="preserve">Caps has no specific content, but can contain
+        <doc xml:space="preserve"
+             filename="gst/gstcaps.h"
+             line="42">Caps has no specific content, but can contain
    anything.</doc>
       </member>
     </bitfield>
     <callback name="CapsForeachFunc" c:type="GstCapsForeachFunc" version="1.6">
-      <doc xml:space="preserve">A function that will be called in gst_caps_foreach(). The function may
+      <doc xml:space="preserve"
+           filename="gst/gstcaps.h"
+           line="354">A function that will be called in gst_caps_foreach(). The function may
 not modify @features or @structure.</doc>
+      <source-position filename="gst/gstcaps.h" line="368"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE if the foreach operation should continue, %FALSE if
+        <doc xml:space="preserve"
+             filename="gst/gstcaps.h"
+             line="363">%TRUE if the foreach operation should continue, %FALSE if
 the foreach operation should stop with %FALSE.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="features" transfer-ownership="none">
-          <doc xml:space="preserve">the #GstCapsFeatures</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstcaps.h"
+               line="356">the #GstCapsFeatures</doc>
           <type name="CapsFeatures" c:type="GstCapsFeatures*"/>
         </parameter>
         <parameter name="structure" transfer-ownership="none">
-          <doc xml:space="preserve">the #GstStructure</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstcaps.h"
+               line="357">the #GstStructure</doc>
           <type name="Structure" c:type="GstStructure*"/>
         </parameter>
         <parameter name="user_data"
@@ -6899,7 +10656,9 @@ the foreach operation should stop with %FALSE.</doc>
                    nullable="1"
                    allow-none="1"
                    closure="2">
-          <doc xml:space="preserve">user data</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstcaps.h"
+               line="358">user data</doc>
           <type name="gpointer" c:type="gpointer"/>
         </parameter>
       </parameters>
@@ -6908,7 +10667,9 @@ the foreach operation should stop with %FALSE.</doc>
                  glib:type-name="GstCapsIntersectMode"
                  glib:get-type="gst_caps_intersect_mode_get_type"
                  c:type="GstCapsIntersectMode">
-      <doc xml:space="preserve">Modes of caps intersection
+      <doc xml:space="preserve"
+           filename="gst/gstcaps.h"
+           line="51">Modes of caps intersection
 
 @GST_CAPS_INTERSECT_ZIG_ZAG tries to preserve overall order of both caps
 by iterating on the caps' structures as the following matrix shows:
@@ -6931,30 +10692,43 @@ would be [A, B], maintaining the first caps priority on the intersection.</doc>
               value="0"
               c:identifier="GST_CAPS_INTERSECT_ZIG_ZAG"
               glib:nick="zig-zag">
-        <doc xml:space="preserve">Zig-zags over both caps.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstcaps.h"
+             line="53">Zig-zags over both caps.</doc>
       </member>
       <member name="first"
               value="1"
               c:identifier="GST_CAPS_INTERSECT_FIRST"
               glib:nick="first">
-        <doc xml:space="preserve">Keeps the first caps order.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstcaps.h"
+             line="54">Keeps the first caps order.</doc>
       </member>
     </enumeration>
     <callback name="CapsMapFunc" c:type="GstCapsMapFunc">
-      <doc xml:space="preserve">A function that will be called in gst_caps_map_in_place(). The function
+      <doc xml:space="preserve"
+           filename="gst/gstcaps.h"
+           line="372">A function that will be called in gst_caps_map_in_place(). The function
 may modify @features and @structure.</doc>
+      <source-position filename="gst/gstcaps.h" line="384"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE if the map operation should continue, %FALSE if
+        <doc xml:space="preserve"
+             filename="gst/gstcaps.h"
+             line="381">%TRUE if the map operation should continue, %FALSE if
 the map operation should stop with %FALSE.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="features" transfer-ownership="none">
-          <doc xml:space="preserve">the #GstCapsFeatures</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstcaps.h"
+               line="374">the #GstCapsFeatures</doc>
           <type name="CapsFeatures" c:type="GstCapsFeatures*"/>
         </parameter>
         <parameter name="structure" transfer-ownership="none">
-          <doc xml:space="preserve">the #GstStructure</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstcaps.h"
+               line="375">the #GstStructure</doc>
           <type name="Structure" c:type="GstStructure*"/>
         </parameter>
         <parameter name="user_data"
@@ -6962,7 +10736,9 @@ the map operation should stop with %FALSE.</doc>
                    nullable="1"
                    allow-none="1"
                    closure="2">
-          <doc xml:space="preserve">user data</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstcaps.h"
+               line="376">user data</doc>
           <type name="gpointer" c:type="gpointer"/>
         </parameter>
       </parameters>
@@ -6973,7 +10749,9 @@ the map operation should stop with %FALSE.</doc>
                glib:type-name="GstChildProxy"
                glib:get-type="gst_child_proxy_get_type"
                glib:type-struct="ChildProxyInterface">
-      <doc xml:space="preserve">This interface abstracts handling of property sets for elements with
+      <doc xml:space="preserve"
+           filename="gst/gstchildproxy.c"
+           line="22">This interface abstracts handling of property sets for elements with
 children. Imagine elements such as mixers or polyphonic generators. They all
 have multiple #GstPad or some kind of voice objects. Another use case are
 container elements like #GstBin.
@@ -6986,50 +10764,74 @@ parent element by using gst_child_proxy_get() and gst_child_proxy_set().
 Property names are written as "child-name::property-name". The whole naming
 scheme is recursive. Thus "child1::child2::property" is valid too, if
 "child1" and "child2" implement the #GstChildProxy interface.</doc>
+      <source-position filename="gst/gstchildproxy.h" line="68"/>
       <virtual-method name="child_added" invoker="child_added">
-        <doc xml:space="preserve">Emits the "child-added" signal.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstchildproxy.c"
+             line="481">Emits the "child-added" signal.</doc>
+        <source-position filename="gst/gstchildproxy.h" line="63"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="parent" transfer-ownership="none">
-            <doc xml:space="preserve">the parent object</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstchildproxy.c"
+                 line="483">the parent object</doc>
             <type name="ChildProxy" c:type="GstChildProxy*"/>
           </instance-parameter>
           <parameter name="child" transfer-ownership="none">
-            <doc xml:space="preserve">the newly added child</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstchildproxy.c"
+                 line="484">the newly added child</doc>
             <type name="GObject.Object" c:type="GObject*"/>
           </parameter>
           <parameter name="name" transfer-ownership="none">
-            <doc xml:space="preserve">the name of the new child</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstchildproxy.c"
+                 line="485">the name of the new child</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </virtual-method>
       <virtual-method name="child_removed" invoker="child_removed">
-        <doc xml:space="preserve">Emits the "child-removed" signal.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstchildproxy.c"
+             line="496">Emits the "child-removed" signal.</doc>
+        <source-position filename="gst/gstchildproxy.h" line="64"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="parent" transfer-ownership="none">
-            <doc xml:space="preserve">the parent object</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstchildproxy.c"
+                 line="498">the parent object</doc>
             <type name="ChildProxy" c:type="GstChildProxy*"/>
           </instance-parameter>
           <parameter name="child" transfer-ownership="none">
-            <doc xml:space="preserve">the removed child</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstchildproxy.c"
+                 line="499">the removed child</doc>
             <type name="GObject.Object" c:type="GObject*"/>
           </parameter>
           <parameter name="name" transfer-ownership="none">
-            <doc xml:space="preserve">the name of the old child</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstchildproxy.c"
+                 line="500">the name of the old child</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </virtual-method>
       <virtual-method name="get_child_by_index" invoker="get_child_by_index">
-        <doc xml:space="preserve">Fetches a child by its number.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstchildproxy.c"
+             line="132">Fetches a child by its number.</doc>
+        <source-position filename="gst/gstchildproxy.h" line="59"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">the child object or %NULL if
+          <doc xml:space="preserve"
+               filename="gst/gstchildproxy.c"
+               line="139">the child object or %NULL if
     not found (index too high). Unref after usage.
 
 MT safe.</doc>
@@ -7037,23 +10839,32 @@ MT safe.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="parent" transfer-ownership="none">
-            <doc xml:space="preserve">the parent object to get the child from</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstchildproxy.c"
+                 line="134">the parent object to get the child from</doc>
             <type name="ChildProxy" c:type="GstChildProxy*"/>
           </instance-parameter>
           <parameter name="index" transfer-ownership="none">
-            <doc xml:space="preserve">the child's position in the child list</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstchildproxy.c"
+                 line="135">the child's position in the child list</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </virtual-method>
       <virtual-method name="get_child_by_name" invoker="get_child_by_name">
-        <doc xml:space="preserve">Looks up a child element by the given name.
+        <doc xml:space="preserve"
+             filename="gst/gstchildproxy.c"
+             line="101">Looks up a child element by the given name.
 
 This virtual method has a default implementation that uses #GstObject
 together with gst_object_get_name(). If the interface is to be used with
 #GObjects, this methods needs to be overridden.</doc>
+        <source-position filename="gst/gstchildproxy.h" line="58"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">the child object or %NULL if
+          <doc xml:space="preserve"
+               filename="gst/gstchildproxy.c"
+               line="112">the child object or %NULL if
     not found. Unref after usage.
 
 MT safe.</doc>
@@ -7061,96 +10872,139 @@ MT safe.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="parent" transfer-ownership="none">
-            <doc xml:space="preserve">the parent object to get the child from</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstchildproxy.c"
+                 line="103">the parent object to get the child from</doc>
             <type name="ChildProxy" c:type="GstChildProxy*"/>
           </instance-parameter>
           <parameter name="name" transfer-ownership="none">
-            <doc xml:space="preserve">the child's name</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstchildproxy.c"
+                 line="104">the child's name</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </virtual-method>
       <virtual-method name="get_children_count" invoker="get_children_count">
-        <doc xml:space="preserve">Gets the number of child objects this parent contains.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstchildproxy.c"
+             line="159">Gets the number of child objects this parent contains.</doc>
+        <source-position filename="gst/gstchildproxy.h" line="60"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the number of child objects
+          <doc xml:space="preserve"
+               filename="gst/gstchildproxy.c"
+               line="165">the number of child objects
 
 MT safe.</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="parent" transfer-ownership="none">
-            <doc xml:space="preserve">the parent object</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstchildproxy.c"
+                 line="161">the parent object</doc>
             <type name="ChildProxy" c:type="GstChildProxy*"/>
           </instance-parameter>
         </parameters>
       </virtual-method>
       <method name="child_added" c:identifier="gst_child_proxy_child_added">
-        <doc xml:space="preserve">Emits the "child-added" signal.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstchildproxy.c"
+             line="481">Emits the "child-added" signal.</doc>
+        <source-position filename="gst/gstchildproxy.h" line="109"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="parent" transfer-ownership="none">
-            <doc xml:space="preserve">the parent object</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstchildproxy.c"
+                 line="483">the parent object</doc>
             <type name="ChildProxy" c:type="GstChildProxy*"/>
           </instance-parameter>
           <parameter name="child" transfer-ownership="none">
-            <doc xml:space="preserve">the newly added child</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstchildproxy.c"
+                 line="484">the newly added child</doc>
             <type name="GObject.Object" c:type="GObject*"/>
           </parameter>
           <parameter name="name" transfer-ownership="none">
-            <doc xml:space="preserve">the name of the new child</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstchildproxy.c"
+                 line="485">the name of the new child</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </method>
       <method name="child_removed"
               c:identifier="gst_child_proxy_child_removed">
-        <doc xml:space="preserve">Emits the "child-removed" signal.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstchildproxy.c"
+             line="496">Emits the "child-removed" signal.</doc>
+        <source-position filename="gst/gstchildproxy.h" line="112"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="parent" transfer-ownership="none">
-            <doc xml:space="preserve">the parent object</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstchildproxy.c"
+                 line="498">the parent object</doc>
             <type name="ChildProxy" c:type="GstChildProxy*"/>
           </instance-parameter>
           <parameter name="child" transfer-ownership="none">
-            <doc xml:space="preserve">the removed child</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstchildproxy.c"
+                 line="499">the removed child</doc>
             <type name="GObject.Object" c:type="GObject*"/>
           </parameter>
           <parameter name="name" transfer-ownership="none">
-            <doc xml:space="preserve">the name of the old child</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstchildproxy.c"
+                 line="500">the name of the old child</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get" c:identifier="gst_child_proxy_get" introspectable="0">
-        <doc xml:space="preserve">Gets properties of the parent object and its children.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstchildproxy.c"
+             line="347">Gets properties of the parent object and its children.</doc>
+        <source-position filename="gst/gstchildproxy.h" line="93"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="object" transfer-ownership="none">
-            <doc xml:space="preserve">the parent object</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstchildproxy.c"
+                 line="349">the parent object</doc>
             <type name="ChildProxy" c:type="GstChildProxy*"/>
           </instance-parameter>
           <parameter name="first_property_name" transfer-ownership="none">
-            <doc xml:space="preserve">name of the first property to get</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstchildproxy.c"
+                 line="350">name of the first property to get</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="..." transfer-ownership="none">
-            <doc xml:space="preserve">return location for the first property, followed optionally by more name/return location pairs, followed by %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstchildproxy.c"
+                 line="351">return location for the first property, followed optionally by more name/return location pairs, followed by %NULL</doc>
             <varargs/>
           </parameter>
         </parameters>
       </method>
       <method name="get_child_by_index"
               c:identifier="gst_child_proxy_get_child_by_index">
-        <doc xml:space="preserve">Fetches a child by its number.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstchildproxy.c"
+             line="132">Fetches a child by its number.</doc>
+        <source-position filename="gst/gstchildproxy.h" line="80"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">the child object or %NULL if
+          <doc xml:space="preserve"
+               filename="gst/gstchildproxy.c"
+               line="139">the child object or %NULL if
     not found (index too high). Unref after usage.
 
 MT safe.</doc>
@@ -7158,24 +11012,33 @@ MT safe.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="parent" transfer-ownership="none">
-            <doc xml:space="preserve">the parent object to get the child from</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstchildproxy.c"
+                 line="134">the parent object to get the child from</doc>
             <type name="ChildProxy" c:type="GstChildProxy*"/>
           </instance-parameter>
           <parameter name="index" transfer-ownership="none">
-            <doc xml:space="preserve">the child's position in the child list</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstchildproxy.c"
+                 line="135">the child's position in the child list</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_child_by_name"
               c:identifier="gst_child_proxy_get_child_by_name">
-        <doc xml:space="preserve">Looks up a child element by the given name.
+        <doc xml:space="preserve"
+             filename="gst/gstchildproxy.c"
+             line="101">Looks up a child element by the given name.
 
 This virtual method has a default implementation that uses #GstObject
 together with gst_object_get_name(). If the interface is to be used with
 #GObjects, this methods needs to be overridden.</doc>
+        <source-position filename="gst/gstchildproxy.h" line="74"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">the child object or %NULL if
+          <doc xml:space="preserve"
+               filename="gst/gstchildproxy.c"
+               line="112">the child object or %NULL if
     not found. Unref after usage.
 
 MT safe.</doc>
@@ -7183,51 +11046,71 @@ MT safe.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="parent" transfer-ownership="none">
-            <doc xml:space="preserve">the parent object to get the child from</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstchildproxy.c"
+                 line="103">the parent object to get the child from</doc>
             <type name="ChildProxy" c:type="GstChildProxy*"/>
           </instance-parameter>
           <parameter name="name" transfer-ownership="none">
-            <doc xml:space="preserve">the child's name</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstchildproxy.c"
+                 line="104">the child's name</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_children_count"
               c:identifier="gst_child_proxy_get_children_count">
-        <doc xml:space="preserve">Gets the number of child objects this parent contains.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstchildproxy.c"
+             line="159">Gets the number of child objects this parent contains.</doc>
+        <source-position filename="gst/gstchildproxy.h" line="77"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the number of child objects
+          <doc xml:space="preserve"
+               filename="gst/gstchildproxy.c"
+               line="165">the number of child objects
 
 MT safe.</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="parent" transfer-ownership="none">
-            <doc xml:space="preserve">the parent object</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstchildproxy.c"
+                 line="161">the parent object</doc>
             <type name="ChildProxy" c:type="GstChildProxy*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_property" c:identifier="gst_child_proxy_get_property">
-        <doc xml:space="preserve">Gets a single property using the GstChildProxy mechanism.
+        <doc xml:space="preserve"
+             filename="gst/gstchildproxy.c"
+             line="257">Gets a single property using the GstChildProxy mechanism.
 You are responsible for freeing it by calling g_value_unset()</doc>
+        <source-position filename="gst/gstchildproxy.h" line="86"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="object" transfer-ownership="none">
-            <doc xml:space="preserve">object to query</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstchildproxy.c"
+                 line="259">object to query</doc>
             <type name="ChildProxy" c:type="GstChildProxy*"/>
           </instance-parameter>
           <parameter name="name" transfer-ownership="none">
-            <doc xml:space="preserve">name of the property</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstchildproxy.c"
+                 line="260">name of the property</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="value"
                      direction="out"
                      caller-allocates="1"
                      transfer-ownership="none">
-            <doc xml:space="preserve">a #GValue that should take the result.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstchildproxy.c"
+                 line="261">a #GValue that should take the result.</doc>
             <type name="GObject.Value" c:type="GValue*"/>
           </parameter>
         </parameters>
@@ -7235,42 +11118,60 @@ You are responsible for freeing it by calling g_value_unset()</doc>
       <method name="get_valist"
               c:identifier="gst_child_proxy_get_valist"
               introspectable="0">
-        <doc xml:space="preserve">Gets properties of the parent object and its children.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstchildproxy.c"
+             line="293">Gets properties of the parent object and its children.</doc>
+        <source-position filename="gst/gstchildproxy.h" line="89"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="object" transfer-ownership="none">
-            <doc xml:space="preserve">the object to query</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstchildproxy.c"
+                 line="295">the object to query</doc>
             <type name="ChildProxy" c:type="GstChildProxy*"/>
           </instance-parameter>
           <parameter name="first_property_name" transfer-ownership="none">
-            <doc xml:space="preserve">name of the first property to get</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstchildproxy.c"
+                 line="296">name of the first property to get</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="var_args" transfer-ownership="none">
-            <doc xml:space="preserve">return location for the first property, followed optionally by more name/return location pairs, followed by %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstchildproxy.c"
+                 line="297">return location for the first property, followed optionally by more name/return location pairs, followed by %NULL</doc>
             <type name="va_list" c:type="va_list"/>
           </parameter>
         </parameters>
       </method>
       <method name="lookup" c:identifier="gst_child_proxy_lookup">
-        <doc xml:space="preserve">Looks up which object and #GParamSpec would be effected by the given @name.
+        <doc xml:space="preserve"
+             filename="gst/gstchildproxy.c"
+             line="184">Looks up which object and #GParamSpec would be effected by the given @name.
 
 MT safe.</doc>
+        <source-position filename="gst/gstchildproxy.h" line="83"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if @target and @pspec could be found. %FALSE otherwise. In that
+          <doc xml:space="preserve"
+               filename="gst/gstchildproxy.c"
+               line="197">%TRUE if @target and @pspec could be found. %FALSE otherwise. In that
 case the values for @pspec and @target are not modified. Unref @target after
 usage. For plain GObjects @target is the same as @object.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="object" transfer-ownership="none">
-            <doc xml:space="preserve">child proxy object to lookup the property in</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstchildproxy.c"
+                 line="186">child proxy object to lookup the property in</doc>
             <type name="ChildProxy" c:type="GstChildProxy*"/>
           </instance-parameter>
           <parameter name="name" transfer-ownership="none">
-            <doc xml:space="preserve">name of the property to look up</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstchildproxy.c"
+                 line="187">name of the property to look up</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="target"
@@ -7279,7 +11180,9 @@ usage. For plain GObjects @target is the same as @object.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">pointer to a #GObject that
+            <doc xml:space="preserve"
+                 filename="gst/gstchildproxy.c"
+                 line="188">pointer to a #GObject that
     takes the real object to set property on</doc>
             <type name="GObject.Object" c:type="GObject**"/>
           </parameter>
@@ -7289,48 +11192,68 @@ usage. For plain GObjects @target is the same as @object.</doc>
                      transfer-ownership="none"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">pointer to take the #GParamSpec
+            <doc xml:space="preserve"
+                 filename="gst/gstchildproxy.c"
+                 line="190">pointer to take the #GParamSpec
     describing the property</doc>
             <type name="GObject.ParamSpec" c:type="GParamSpec**"/>
           </parameter>
         </parameters>
       </method>
       <method name="set" c:identifier="gst_child_proxy_set" introspectable="0">
-        <doc xml:space="preserve">Sets properties of the parent object and its children.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstchildproxy.c"
+             line="460">Sets properties of the parent object and its children.</doc>
+        <source-position filename="gst/gstchildproxy.h" line="105"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="object" transfer-ownership="none">
-            <doc xml:space="preserve">the parent object</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstchildproxy.c"
+                 line="462">the parent object</doc>
             <type name="ChildProxy" c:type="GstChildProxy*"/>
           </instance-parameter>
           <parameter name="first_property_name" transfer-ownership="none">
-            <doc xml:space="preserve">name of the first property to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstchildproxy.c"
+                 line="463">name of the first property to set</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="..." transfer-ownership="none">
-            <doc xml:space="preserve">value for the first property, followed optionally by more name/value pairs, followed by %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstchildproxy.c"
+                 line="464">value for the first property, followed optionally by more name/value pairs, followed by %NULL</doc>
             <varargs/>
           </parameter>
         </parameters>
       </method>
       <method name="set_property" c:identifier="gst_child_proxy_set_property">
-        <doc xml:space="preserve">Sets a single property using the GstChildProxy mechanism.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstchildproxy.c"
+             line="368">Sets a single property using the GstChildProxy mechanism.</doc>
+        <source-position filename="gst/gstchildproxy.h" line="97"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="object" transfer-ownership="none">
-            <doc xml:space="preserve">the parent object</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstchildproxy.c"
+                 line="370">the parent object</doc>
             <type name="ChildProxy" c:type="GstChildProxy*"/>
           </instance-parameter>
           <parameter name="name" transfer-ownership="none">
-            <doc xml:space="preserve">name of the property to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstchildproxy.c"
+                 line="371">name of the property to set</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="value" transfer-ownership="none">
-            <doc xml:space="preserve">new #GValue for the property</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstchildproxy.c"
+                 line="372">new #GValue for the property</doc>
             <type name="GObject.Value" c:type="const GValue*"/>
           </parameter>
         </parameters>
@@ -7338,53 +11261,74 @@ usage. For plain GObjects @target is the same as @object.</doc>
       <method name="set_valist"
               c:identifier="gst_child_proxy_set_valist"
               introspectable="0">
-        <doc xml:space="preserve">Sets properties of the parent object and its children.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstchildproxy.c"
+             line="402">Sets properties of the parent object and its children.</doc>
+        <source-position filename="gst/gstchildproxy.h" line="101"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="object" transfer-ownership="none">
-            <doc xml:space="preserve">the parent object</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstchildproxy.c"
+                 line="404">the parent object</doc>
             <type name="ChildProxy" c:type="GstChildProxy*"/>
           </instance-parameter>
           <parameter name="first_property_name" transfer-ownership="none">
-            <doc xml:space="preserve">name of the first property to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstchildproxy.c"
+                 line="405">name of the first property to set</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="var_args" transfer-ownership="none">
-            <doc xml:space="preserve">value for the first property, followed optionally by more name/value pairs, followed by %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstchildproxy.c"
+                 line="406">value for the first property, followed optionally by more name/value pairs, followed by %NULL</doc>
             <type name="va_list" c:type="va_list"/>
           </parameter>
         </parameters>
       </method>
       <glib:signal name="child-added" when="first">
-        <doc xml:space="preserve">Will be emitted after the @object was added to the @child_proxy.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstchildproxy.c"
+             line="528">Will be emitted after the @object was added to the @child_proxy.</doc>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <parameter name="object" transfer-ownership="none">
-            <doc xml:space="preserve">the #GObject that was added</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstchildproxy.c"
+                 line="531">the #GObject that was added</doc>
             <type name="GObject.Object"/>
           </parameter>
           <parameter name="name" transfer-ownership="none">
-            <doc xml:space="preserve">the name of the new child</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstchildproxy.c"
+                 line="532">the name of the new child</doc>
             <type name="utf8" c:type="gchar*"/>
           </parameter>
         </parameters>
       </glib:signal>
       <glib:signal name="child-removed" when="first">
-        <doc xml:space="preserve">Will be emitted after the @object was removed from the @child_proxy.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstchildproxy.c"
+             line="542">Will be emitted after the @object was removed from the @child_proxy.</doc>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <parameter name="object" transfer-ownership="none">
-            <doc xml:space="preserve">the #GObject that was removed</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstchildproxy.c"
+                 line="545">the #GObject that was removed</doc>
             <type name="GObject.Object"/>
           </parameter>
           <parameter name="name" transfer-ownership="none">
-            <doc xml:space="preserve">the name of the old child</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstchildproxy.c"
+                 line="546">the name of the old child</doc>
             <type name="utf8" c:type="gchar*"/>
           </parameter>
         </parameters>
@@ -7393,15 +11337,23 @@ usage. For plain GObjects @target is the same as @object.</doc>
     <record name="ChildProxyInterface"
             c:type="GstChildProxyInterface"
             glib:is-gtype-struct-for="ChildProxy">
-      <doc xml:space="preserve">#GstChildProxy interface.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstchildproxy.h"
+           line="44">#GstChildProxy interface.</doc>
+      <source-position filename="gst/gstchildproxy.h" line="68"/>
       <field name="parent">
-        <doc xml:space="preserve">parent interface type.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstchildproxy.h"
+             line="46">parent interface type.</doc>
         <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
       </field>
       <field name="get_child_by_name">
         <callback name="get_child_by_name">
+          <source-position filename="gst/gstchildproxy.h" line="58"/>
           <return-value transfer-ownership="full" nullable="1">
-            <doc xml:space="preserve">the child object or %NULL if
+            <doc xml:space="preserve"
+                 filename="gst/gstchildproxy.c"
+                 line="112">the child object or %NULL if
     not found. Unref after usage.
 
 MT safe.</doc>
@@ -7409,11 +11361,15 @@ MT safe.</doc>
           </return-value>
           <parameters>
             <parameter name="parent" transfer-ownership="none">
-              <doc xml:space="preserve">the parent object to get the child from</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstchildproxy.c"
+                   line="103">the parent object to get the child from</doc>
               <type name="ChildProxy" c:type="GstChildProxy*"/>
             </parameter>
             <parameter name="name" transfer-ownership="none">
-              <doc xml:space="preserve">the child's name</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstchildproxy.c"
+                   line="104">the child's name</doc>
               <type name="utf8" c:type="const gchar*"/>
             </parameter>
           </parameters>
@@ -7421,8 +11377,11 @@ MT safe.</doc>
       </field>
       <field name="get_child_by_index">
         <callback name="get_child_by_index">
+          <source-position filename="gst/gstchildproxy.h" line="59"/>
           <return-value transfer-ownership="full" nullable="1">
-            <doc xml:space="preserve">the child object or %NULL if
+            <doc xml:space="preserve"
+                 filename="gst/gstchildproxy.c"
+                 line="139">the child object or %NULL if
     not found (index too high). Unref after usage.
 
 MT safe.</doc>
@@ -7430,11 +11389,15 @@ MT safe.</doc>
           </return-value>
           <parameters>
             <parameter name="parent" transfer-ownership="none">
-              <doc xml:space="preserve">the parent object to get the child from</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstchildproxy.c"
+                   line="134">the parent object to get the child from</doc>
               <type name="ChildProxy" c:type="GstChildProxy*"/>
             </parameter>
             <parameter name="index" transfer-ownership="none">
-              <doc xml:space="preserve">the child's position in the child list</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstchildproxy.c"
+                   line="135">the child's position in the child list</doc>
               <type name="guint" c:type="guint"/>
             </parameter>
           </parameters>
@@ -7442,15 +11405,20 @@ MT safe.</doc>
       </field>
       <field name="get_children_count">
         <callback name="get_children_count">
+          <source-position filename="gst/gstchildproxy.h" line="60"/>
           <return-value transfer-ownership="none">
-            <doc xml:space="preserve">the number of child objects
+            <doc xml:space="preserve"
+                 filename="gst/gstchildproxy.c"
+                 line="165">the number of child objects
 
 MT safe.</doc>
             <type name="guint" c:type="guint"/>
           </return-value>
           <parameters>
             <parameter name="parent" transfer-ownership="none">
-              <doc xml:space="preserve">the parent object</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstchildproxy.c"
+                   line="161">the parent object</doc>
               <type name="ChildProxy" c:type="GstChildProxy*"/>
             </parameter>
           </parameters>
@@ -7458,20 +11426,27 @@ MT safe.</doc>
       </field>
       <field name="child_added">
         <callback name="child_added">
+          <source-position filename="gst/gstchildproxy.h" line="63"/>
           <return-value transfer-ownership="none">
             <type name="none" c:type="void"/>
           </return-value>
           <parameters>
             <parameter name="parent" transfer-ownership="none">
-              <doc xml:space="preserve">the parent object</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstchildproxy.c"
+                   line="483">the parent object</doc>
               <type name="ChildProxy" c:type="GstChildProxy*"/>
             </parameter>
             <parameter name="child" transfer-ownership="none">
-              <doc xml:space="preserve">the newly added child</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstchildproxy.c"
+                   line="484">the newly added child</doc>
               <type name="GObject.Object" c:type="GObject*"/>
             </parameter>
             <parameter name="name" transfer-ownership="none">
-              <doc xml:space="preserve">the name of the new child</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstchildproxy.c"
+                   line="485">the name of the new child</doc>
               <type name="utf8" c:type="const gchar*"/>
             </parameter>
           </parameters>
@@ -7479,27 +11454,34 @@ MT safe.</doc>
       </field>
       <field name="child_removed">
         <callback name="child_removed">
+          <source-position filename="gst/gstchildproxy.h" line="64"/>
           <return-value transfer-ownership="none">
             <type name="none" c:type="void"/>
           </return-value>
           <parameters>
             <parameter name="parent" transfer-ownership="none">
-              <doc xml:space="preserve">the parent object</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstchildproxy.c"
+                   line="498">the parent object</doc>
               <type name="ChildProxy" c:type="GstChildProxy*"/>
             </parameter>
             <parameter name="child" transfer-ownership="none">
-              <doc xml:space="preserve">the removed child</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstchildproxy.c"
+                   line="499">the removed child</doc>
               <type name="GObject.Object" c:type="GObject*"/>
             </parameter>
             <parameter name="name" transfer-ownership="none">
-              <doc xml:space="preserve">the name of the old child</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstchildproxy.c"
+                   line="500">the name of the old child</doc>
               <type name="utf8" c:type="const gchar*"/>
             </parameter>
           </parameters>
         </callback>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -7512,7 +11494,9 @@ MT safe.</doc>
            glib:type-name="GstClock"
            glib:get-type="gst_clock_get_type"
            glib:type-struct="ClockClass">
-      <doc xml:space="preserve">GStreamer uses a global clock to synchronize the plugins in a pipeline.
+      <doc xml:space="preserve"
+           filename="gst/gstclock.c"
+           line="24">GStreamer uses a global clock to synchronize the plugins in a pipeline.
 Different clock implementations are possible by implementing this abstract
 base class or, more conveniently, by subclassing #GstSystemClock.
 
@@ -7584,12 +11568,18 @@ The #GstClock:timeout property defines the interval to sample the master
 clock and run the calibration functions. #GstClock:window-size defines the
 number of samples to use when calibrating and #GstClock:window-threshold
 defines the minimum number of samples before the calibration is performed.</doc>
+      <source-position filename="gst/gstclock.h" line="503"/>
       <function name="id_compare_func"
                 c:identifier="gst_clock_id_compare_func">
-        <doc xml:space="preserve">Compares the two #GstClockID instances. This function can be used
+        <doc xml:space="preserve"
+             filename="gst/gstclock.c"
+             line="460">Compares the two #GstClockID instances. This function can be used
 as a GCompareFunc when sorting ids.</doc>
+        <source-position filename="gst/gstclock.h" line="612"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">negative value if a &lt; b; zero if a = b; positive value if a &gt; b
+          <doc xml:space="preserve"
+               filename="gst/gstclock.c"
+               line="468">negative value if a &lt; b; zero if a = b; positive value if a &gt; b
 
 MT safe.</doc>
           <type name="gint" c:type="gint"/>
@@ -7599,14 +11589,18 @@ MT safe.</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">A #GstClockID</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="462">A #GstClockID</doc>
             <type name="gpointer" c:type="gconstpointer"/>
           </parameter>
           <parameter name="id2"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">A #GstClockID to compare with</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="463">A #GstClockID to compare with</doc>
             <type name="gpointer" c:type="gconstpointer"/>
           </parameter>
         </parameters>
@@ -7614,9 +11608,14 @@ MT safe.</doc>
       <function name="id_get_clock"
                 c:identifier="gst_clock_id_get_clock"
                 version="1.16">
-        <doc xml:space="preserve">This function returns the underlying clock.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstclock.c"
+             line="1390">This function returns the underlying clock.</doc>
+        <source-position filename="gst/gstclock.h" line="615"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">a #GstClock or %NULL when the
+          <doc xml:space="preserve"
+               filename="gst/gstclock.c"
+               line="1396">a #GstClock or %NULL when the
     underlying clock has been freed.  Unref after usage.
 
 MT safe.</doc>
@@ -7624,69 +11623,95 @@ MT safe.</doc>
         </return-value>
         <parameters>
           <parameter name="id" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstClockID</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="1392">a #GstClockID</doc>
             <type name="ClockID" c:type="GstClockID"/>
           </parameter>
         </parameters>
       </function>
       <function name="id_get_time" c:identifier="gst_clock_id_get_time">
-        <doc xml:space="preserve">Get the time of the clock ID</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstclock.c"
+             line="489">Get the time of the clock ID</doc>
+        <source-position filename="gst/gstclock.h" line="621"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the time of the given clock id.
+          <doc xml:space="preserve"
+               filename="gst/gstclock.c"
+               line="495">the time of the given clock id.
 
 MT safe.</doc>
           <type name="ClockTime" c:type="GstClockTime"/>
         </return-value>
         <parameters>
           <parameter name="id" transfer-ownership="none">
-            <doc xml:space="preserve">The #GstClockID to query</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="491">The #GstClockID to query</doc>
             <type name="ClockID" c:type="GstClockID"/>
           </parameter>
         </parameters>
       </function>
       <function name="id_ref" c:identifier="gst_clock_id_ref">
-        <doc xml:space="preserve">Increase the refcount of given @id.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstclock.c"
+             line="338">Increase the refcount of given @id.</doc>
+        <source-position filename="gst/gstclock.h" line="604"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">The same #GstClockID with increased refcount.
+          <doc xml:space="preserve"
+               filename="gst/gstclock.c"
+               line="344">The same #GstClockID with increased refcount.
 
 MT safe.</doc>
           <type name="ClockID" c:type="GstClockID"/>
         </return-value>
         <parameters>
           <parameter name="id" transfer-ownership="none">
-            <doc xml:space="preserve">The #GstClockID to ref</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="340">The #GstClockID to ref</doc>
             <type name="ClockID" c:type="GstClockID"/>
           </parameter>
         </parameters>
       </function>
       <function name="id_unref" c:identifier="gst_clock_id_unref">
-        <doc xml:space="preserve">Unref given @id. When the refcount reaches 0 the
+        <doc xml:space="preserve"
+             filename="gst/gstclock.c"
+             line="381">Unref given @id. When the refcount reaches 0 the
 #GstClockID will be freed.
 
 MT safe.</doc>
+        <source-position filename="gst/gstclock.h" line="607"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <parameter name="id" transfer-ownership="full">
-            <doc xml:space="preserve">The #GstClockID to unref</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="383">The #GstClockID to unref</doc>
             <type name="ClockID" c:type="GstClockID"/>
           </parameter>
         </parameters>
       </function>
       <function name="id_unschedule" c:identifier="gst_clock_id_unschedule">
-        <doc xml:space="preserve">Cancel an outstanding request with @id. This can either
+        <doc xml:space="preserve"
+             filename="gst/gstclock.c"
+             line="676">Cancel an outstanding request with @id. This can either
 be an outstanding async notification or a pending sync notification.
 After this call, @id cannot be used anymore to receive sync or
 async notifications, you need to create a new #GstClockID.
 
 MT safe.</doc>
+        <source-position filename="gst/gstclock.h" line="632"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <parameter name="id" transfer-ownership="none">
-            <doc xml:space="preserve">The id to unschedule</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="678">The id to unschedule</doc>
             <type name="ClockID" c:type="GstClockID"/>
           </parameter>
         </parameters>
@@ -7694,29 +11719,40 @@ MT safe.</doc>
       <function name="id_uses_clock"
                 c:identifier="gst_clock_id_uses_clock"
                 version="1.16">
-        <doc xml:space="preserve">This function returns whether @id uses @clock as the underlying clock.
+        <doc xml:space="preserve"
+             filename="gst/gstclock.c"
+             line="1414">This function returns whether @id uses @clock as the underlying clock.
 @clock can be NULL, in which case the return value indicates whether
 the underlying clock has been freed.  If this is the case, the @id is
 no longer usable and should be freed.</doc>
+        <source-position filename="gst/gstclock.h" line="618"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">whether the clock @id uses the same underlying #GstClock @clock.
+          <doc xml:space="preserve"
+               filename="gst/gstclock.c"
+               line="1424">whether the clock @id uses the same underlying #GstClock @clock.
 
 MT safe.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <parameter name="id" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstClockID to check</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="1416">a #GstClockID to check</doc>
             <type name="ClockID" c:type="GstClockID"/>
           </parameter>
           <parameter name="clock" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstClock to compare against</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="1417">a #GstClock to compare against</doc>
             <type name="Clock" c:type="GstClock*"/>
           </parameter>
         </parameters>
       </function>
       <function name="id_wait" c:identifier="gst_clock_id_wait">
-        <doc xml:space="preserve">Perform a blocking wait on @id.
+        <doc xml:space="preserve"
+             filename="gst/gstclock.c"
+             line="507">Perform a blocking wait on @id.
 @id should have been created with gst_clock_new_single_shot_id()
 or gst_clock_new_periodic_id() and should not have been unscheduled
 with a call to gst_clock_id_unschedule().
@@ -7729,8 +11765,11 @@ Positive values indicate how late @id was relative to the clock
 (in which case this function will return #GST_CLOCK_EARLY).
 Negative values indicate how much time was spent waiting on the clock
 before this function returned.</doc>
+        <source-position filename="gst/gstclock.h" line="624"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the result of the blocking wait. #GST_CLOCK_EARLY will be returned
+          <doc xml:space="preserve"
+               filename="gst/gstclock.c"
+               line="527">the result of the blocking wait. #GST_CLOCK_EARLY will be returned
 if the current clock time is past the time of @id, #GST_CLOCK_OK if
 @id was scheduled in time. #GST_CLOCK_UNSCHEDULED if @id was
 unscheduled with gst_clock_id_unschedule().
@@ -7740,7 +11779,9 @@ MT safe.</doc>
         </return-value>
         <parameters>
           <parameter name="id" transfer-ownership="none">
-            <doc xml:space="preserve">The #GstClockID to wait on</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="509">The #GstClockID to wait on</doc>
             <type name="ClockID" c:type="GstClockID"/>
           </parameter>
           <parameter name="jitter"
@@ -7749,14 +11790,18 @@ MT safe.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">a pointer that will contain the jitter,
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="510">a pointer that will contain the jitter,
     can be %NULL.</doc>
             <type name="ClockTimeDiff" c:type="GstClockTimeDiff*"/>
           </parameter>
         </parameters>
       </function>
       <function name="id_wait_async" c:identifier="gst_clock_id_wait_async">
-        <doc xml:space="preserve">Register a callback on the given #GstClockID @id with the given
+        <doc xml:space="preserve"
+             filename="gst/gstclock.c"
+             line="597">Register a callback on the given #GstClockID @id with the given
 function and user_data. When passing a #GstClockID with an invalid
 time to this function, the callback will be called immediately
 with  a time set to GST_CLOCK_TIME_NONE. The callback will
@@ -7764,15 +11809,20 @@ be called when the time of @id has been reached.
 
 The callback @func can be invoked from any thread, either provided by the
 core or from a streaming thread. The application should be prepared for this.</doc>
+        <source-position filename="gst/gstclock.h" line="627"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the result of the non blocking wait.
+          <doc xml:space="preserve"
+               filename="gst/gstclock.c"
+               line="613">the result of the non blocking wait.
 
 MT safe.</doc>
           <type name="ClockReturn" c:type="GstClockReturn"/>
         </return-value>
         <parameters>
           <parameter name="id" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstClockID to wait on</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="599">a #GstClockID to wait on</doc>
             <type name="ClockID" c:type="GstClockID"/>
           </parameter>
           <parameter name="func"
@@ -7780,25 +11830,32 @@ MT safe.</doc>
                      scope="notified"
                      closure="2"
                      destroy="3">
-            <doc xml:space="preserve">The callback function</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="600">The callback function</doc>
             <type name="ClockCallback" c:type="GstClockCallback"/>
           </parameter>
           <parameter name="user_data"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">User data passed in the callback</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="601">User data passed in the callback</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
           <parameter name="destroy_data"
                      transfer-ownership="none"
                      scope="async">
-            <doc xml:space="preserve">#GDestroyNotify for user_data</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="602">#GDestroyNotify for user_data</doc>
             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
           </parameter>
         </parameters>
       </function>
       <virtual-method name="change_resolution">
+        <source-position filename="gst/gstclock.h" line="488"/>
         <return-value transfer-ownership="none">
           <type name="ClockTime" c:type="GstClockTime"/>
         </return-value>
@@ -7815,10 +11872,15 @@ MT safe.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="get_internal_time" invoker="get_internal_time">
-        <doc xml:space="preserve">Gets the current internal time of the given clock. The time is returned
+        <doc xml:space="preserve"
+             filename="gst/gstclock.c"
+             line="1059">Gets the current internal time of the given clock. The time is returned
 unadjusted for the offset and the rate.</doc>
+        <source-position filename="gst/gstclock.h" line="493"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the internal time of the clock. Or GST_CLOCK_TIME_NONE when
+          <doc xml:space="preserve"
+               filename="gst/gstclock.c"
+               line="1066">the internal time of the clock. Or GST_CLOCK_TIME_NONE when
 given invalid input.
 
 MT safe.</doc>
@@ -7826,28 +11888,38 @@ MT safe.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="clock" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstClock to query</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="1061">a #GstClock to query</doc>
             <type name="Clock" c:type="GstClock*"/>
           </instance-parameter>
         </parameters>
       </virtual-method>
       <virtual-method name="get_resolution" invoker="get_resolution">
-        <doc xml:space="preserve">Get the accuracy of the clock. The accuracy of the clock is the granularity
+        <doc xml:space="preserve"
+             filename="gst/gstclock.c"
+             line="860">Get the accuracy of the clock. The accuracy of the clock is the granularity
 of the values returned by gst_clock_get_time().</doc>
+        <source-position filename="gst/gstclock.h" line="491"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the resolution of the clock in units of #GstClockTime.
+          <doc xml:space="preserve"
+               filename="gst/gstclock.c"
+               line="867">the resolution of the clock in units of #GstClockTime.
 
 MT safe.</doc>
           <type name="ClockTime" c:type="GstClockTime"/>
         </return-value>
         <parameters>
           <instance-parameter name="clock" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstClock</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="862">a #GstClock</doc>
             <type name="Clock" c:type="GstClock*"/>
           </instance-parameter>
         </parameters>
       </virtual-method>
       <virtual-method name="unschedule">
+        <source-position filename="gst/gstclock.h" line="499"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
@@ -7861,6 +11933,7 @@ MT safe.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="wait">
+        <source-position filename="gst/gstclock.h" line="496"/>
         <return-value transfer-ownership="none">
           <type name="ClockReturn" c:type="GstClockReturn"/>
         </return-value>
@@ -7877,6 +11950,7 @@ MT safe.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="wait_async">
+        <source-position filename="gst/gstclock.h" line="498"/>
         <return-value transfer-ownership="none">
           <type name="ClockReturn" c:type="GstClockReturn"/>
         </return-value>
@@ -7890,7 +11964,9 @@ MT safe.</doc>
         </parameters>
       </virtual-method>
       <method name="add_observation" c:identifier="gst_clock_add_observation">
-        <doc xml:space="preserve">The time @master of the master clock and the time @slave of the slave
+        <doc xml:space="preserve"
+             filename="gst/gstclock.c"
+             line="1452">The time @master of the master clock and the time @slave of the slave
 clock are added to the list of observations. If enough observations
 are available, a linear regression algorithm is run on the
 observations and @clock is recalibrated.
@@ -7900,8 +11976,11 @@ correlation coefficient of the interpolation. A value of 1.0
 means a perfect regression was performed. This value can
 be used to control the sampling frequency of the master and slave
 clocks.</doc>
+        <source-position filename="gst/gstclock.h" line="543"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if enough observations were added to run the
+          <doc xml:space="preserve"
+               filename="gst/gstclock.c"
+               line="1470">%TRUE if enough observations were added to run the
 regression algorithm.
 
 MT safe.</doc>
@@ -7909,22 +11988,30 @@ MT safe.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="clock" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstClock</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="1454">a #GstClock</doc>
             <type name="Clock" c:type="GstClock*"/>
           </instance-parameter>
           <parameter name="slave" transfer-ownership="none">
-            <doc xml:space="preserve">a time on the slave</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="1455">a time on the slave</doc>
             <type name="ClockTime" c:type="GstClockTime"/>
           </parameter>
           <parameter name="master" transfer-ownership="none">
-            <doc xml:space="preserve">a time on the master</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="1456">a time on the master</doc>
             <type name="ClockTime" c:type="GstClockTime"/>
           </parameter>
           <parameter name="r_squared"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">a pointer to hold the result</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="1457">a pointer to hold the result</doc>
             <type name="gdouble" c:type="gdouble*"/>
           </parameter>
         </parameters>
@@ -7932,33 +12019,44 @@ MT safe.</doc>
       <method name="add_observation_unapplied"
               c:identifier="gst_clock_add_observation_unapplied"
               version="1.6">
-        <doc xml:space="preserve">Add a clock observation to the internal slaving algorithm the same as
+        <doc xml:space="preserve"
+             filename="gst/gstclock.c"
+             line="1491">Add a clock observation to the internal slaving algorithm the same as
 gst_clock_add_observation(), and return the result of the master clock
 estimation, without updating the internal calibration.
 
 The caller can then take the results and call gst_clock_set_calibration()
 with the values, or some modified version of them.</doc>
+        <source-position filename="gst/gstclock.h" line="546"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="clock" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstClock</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="1493">a #GstClock</doc>
             <type name="Clock" c:type="GstClock*"/>
           </instance-parameter>
           <parameter name="slave" transfer-ownership="none">
-            <doc xml:space="preserve">a time on the slave</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="1494">a time on the slave</doc>
             <type name="ClockTime" c:type="GstClockTime"/>
           </parameter>
           <parameter name="master" transfer-ownership="none">
-            <doc xml:space="preserve">a time on the master</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="1495">a time on the master</doc>
             <type name="ClockTime" c:type="GstClockTime"/>
           </parameter>
           <parameter name="r_squared"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">a pointer to hold the result</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="1496">a pointer to hold the result</doc>
             <type name="gdouble" c:type="gdouble*"/>
           </parameter>
           <parameter name="internal"
@@ -7967,7 +12065,9 @@ with the values, or some modified version of them.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">a location to store the internal time</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="1497">a location to store the internal time</doc>
             <type name="ClockTime" c:type="GstClockTime*"/>
           </parameter>
           <parameter name="external"
@@ -7976,7 +12076,9 @@ with the values, or some modified version of them.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">a location to store the external time</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="1498">a location to store the external time</doc>
             <type name="ClockTime" c:type="GstClockTime*"/>
           </parameter>
           <parameter name="rate_num"
@@ -7985,7 +12087,9 @@ with the values, or some modified version of them.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">a location to store the rate numerator</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="1499">a location to store the rate numerator</doc>
             <type name="ClockTime" c:type="GstClockTime*"/>
           </parameter>
           <parameter name="rate_denom"
@@ -7994,29 +12098,40 @@ with the values, or some modified version of them.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">a location to store the rate denominator</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="1500">a location to store the rate denominator</doc>
             <type name="ClockTime" c:type="GstClockTime*"/>
           </parameter>
         </parameters>
       </method>
       <method name="adjust_unlocked" c:identifier="gst_clock_adjust_unlocked">
-        <doc xml:space="preserve">Converts the given @internal clock time to the external time, adjusting for the
+        <doc xml:space="preserve"
+             filename="gst/gstclock.c"
+             line="943">Converts the given @internal clock time to the external time, adjusting for the
 rate and reference time set with gst_clock_set_calibration() and making sure
 that the returned time is increasing. This function should be called with the
 clock's OBJECT_LOCK held and is mainly used by clock subclasses.
 
 This function is the reverse of gst_clock_unadjust_unlocked().</doc>
+        <source-position filename="gst/gstclock.h" line="559"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the converted time of the clock.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstclock.c"
+               line="955">the converted time of the clock.</doc>
           <type name="ClockTime" c:type="GstClockTime"/>
         </return-value>
         <parameters>
           <instance-parameter name="clock" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstClock to use</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="945">a #GstClock to use</doc>
             <type name="Clock" c:type="GstClock*"/>
           </instance-parameter>
           <parameter name="internal" transfer-ownership="none">
-            <doc xml:space="preserve">a clock time</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="946">a clock time</doc>
             <type name="ClockTime" c:type="GstClockTime"/>
           </parameter>
         </parameters>
@@ -8024,15 +12139,20 @@ This function is the reverse of gst_clock_unadjust_unlocked().</doc>
       <method name="adjust_with_calibration"
               c:identifier="gst_clock_adjust_with_calibration"
               version="1.6">
-        <doc xml:space="preserve">Converts the given @internal_target clock time to the external time,
+        <doc xml:space="preserve"
+             filename="gst/gstclock.c"
+             line="887">Converts the given @internal_target clock time to the external time,
 using the passed calibration parameters. This function performs the
 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</doc>
+        <source-position filename="gst/gstclock.h" line="562"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the converted time of the clock.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstclock.c"
+               line="905">the converted time of the clock.</doc>
           <type name="ClockTime" c:type="GstClockTime"/>
         </return-value>
         <parameters>
@@ -8040,46 +12160,63 @@ Note: The @clock parameter is unused and can be NULL</doc>
                               transfer-ownership="none"
                               nullable="1"
                               allow-none="1">
-            <doc xml:space="preserve">a #GstClock to use</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="889">a #GstClock to use</doc>
             <type name="Clock" c:type="GstClock*"/>
           </instance-parameter>
           <parameter name="internal_target" transfer-ownership="none">
-            <doc xml:space="preserve">a clock time</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="890">a clock time</doc>
             <type name="ClockTime" c:type="GstClockTime"/>
           </parameter>
           <parameter name="cinternal" transfer-ownership="none">
-            <doc xml:space="preserve">a reference internal time</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="891">a reference internal time</doc>
             <type name="ClockTime" c:type="GstClockTime"/>
           </parameter>
           <parameter name="cexternal" transfer-ownership="none">
-            <doc xml:space="preserve">a reference external time</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="892">a reference external time</doc>
             <type name="ClockTime" c:type="GstClockTime"/>
           </parameter>
           <parameter name="cnum" transfer-ownership="none">
-            <doc xml:space="preserve">the numerator of the rate of the clock relative to its
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="893">the numerator of the rate of the clock relative to its
        internal time</doc>
             <type name="ClockTime" c:type="GstClockTime"/>
           </parameter>
           <parameter name="cdenom" transfer-ownership="none">
-            <doc xml:space="preserve">the denominator of the rate of the clock</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="895">the denominator of the rate of the clock</doc>
             <type name="ClockTime" c:type="GstClockTime"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_calibration" c:identifier="gst_clock_get_calibration">
-        <doc xml:space="preserve">Gets the internal rate and reference time of @clock. See
+        <doc xml:space="preserve"
+             filename="gst/gstclock.c"
+             line="1201">Gets the internal rate and reference time of @clock. See
 gst_clock_set_calibration() for more information.
 
 @internal, @external, @rate_num, and @rate_denom can be left %NULL if the
 caller is not interested in the values.
 
 MT safe.</doc>
+        <source-position filename="gst/gstclock.h" line="523"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="clock" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstClock</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="1203">a #GstClock</doc>
             <type name="Clock" c:type="GstClock*"/>
           </instance-parameter>
           <parameter name="internal"
@@ -8088,7 +12225,9 @@ MT safe.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">a location to store the internal time</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="1204">a location to store the internal time</doc>
             <type name="ClockTime" c:type="GstClockTime*"/>
           </parameter>
           <parameter name="external"
@@ -8097,7 +12236,9 @@ MT safe.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">a location to store the external time</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="1205">a location to store the external time</doc>
             <type name="ClockTime" c:type="GstClockTime*"/>
           </parameter>
           <parameter name="rate_num"
@@ -8106,7 +12247,9 @@ MT safe.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">a location to store the rate numerator</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="1206">a location to store the rate numerator</doc>
             <type name="ClockTime" c:type="GstClockTime*"/>
           </parameter>
           <parameter name="rate_denom"
@@ -8115,17 +12258,24 @@ MT safe.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">a location to store the rate denominator</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="1207">a location to store the rate denominator</doc>
             <type name="ClockTime" c:type="GstClockTime*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_internal_time"
               c:identifier="gst_clock_get_internal_time">
-        <doc xml:space="preserve">Gets the current internal time of the given clock. The time is returned
+        <doc xml:space="preserve"
+             filename="gst/gstclock.c"
+             line="1059">Gets the current internal time of the given clock. The time is returned
 unadjusted for the offset and the rate.</doc>
+        <source-position filename="gst/gstclock.h" line="556"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the internal time of the clock. Or GST_CLOCK_TIME_NONE when
+          <doc xml:space="preserve"
+               filename="gst/gstclock.c"
+               line="1066">the internal time of the clock. Or GST_CLOCK_TIME_NONE when
 given invalid input.
 
 MT safe.</doc>
@@ -8133,16 +12283,23 @@ MT safe.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="clock" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstClock to query</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="1061">a #GstClock to query</doc>
             <type name="Clock" c:type="GstClock*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_master" c:identifier="gst_clock_get_master">
-        <doc xml:space="preserve">Get the master clock that @clock is slaved to or %NULL when the clock is
+        <doc xml:space="preserve"
+             filename="gst/gstclock.c"
+             line="1359">Get the master clock that @clock is slaved to or %NULL when the clock is
 not slaved to any master clock.</doc>
+        <source-position filename="gst/gstclock.h" line="534"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">a master #GstClock or %NULL
+          <doc xml:space="preserve"
+               filename="gst/gstclock.c"
+               line="1366">a master #GstClock or %NULL
     when this clock is not slaved to a master clock. Unref after
     usage.
 
@@ -8151,33 +12308,47 @@ MT safe.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="clock" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstClock</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="1361">a #GstClock</doc>
             <type name="Clock" c:type="GstClock*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_resolution" c:identifier="gst_clock_get_resolution">
-        <doc xml:space="preserve">Get the accuracy of the clock. The accuracy of the clock is the granularity
+        <doc xml:space="preserve"
+             filename="gst/gstclock.c"
+             line="860">Get the accuracy of the clock. The accuracy of the clock is the granularity
 of the values returned by gst_clock_get_time().</doc>
+        <source-position filename="gst/gstclock.h" line="512"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the resolution of the clock in units of #GstClockTime.
+          <doc xml:space="preserve"
+               filename="gst/gstclock.c"
+               line="867">the resolution of the clock in units of #GstClockTime.
 
 MT safe.</doc>
           <type name="ClockTime" c:type="GstClockTime"/>
         </return-value>
         <parameters>
           <instance-parameter name="clock" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstClock</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="862">a #GstClock</doc>
             <type name="Clock" c:type="GstClock*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_time" c:identifier="gst_clock_get_time">
-        <doc xml:space="preserve">Gets the current time of the given clock. The time is always
+        <doc xml:space="preserve"
+             filename="gst/gstclock.c"
+             line="1105">Gets the current time of the given clock. The time is always
 monotonically increasing and adjusted according to the current
 offset and rate.</doc>
+        <source-position filename="gst/gstclock.h" line="515"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the time of the clock. Or GST_CLOCK_TIME_NONE when
+          <doc xml:space="preserve"
+               filename="gst/gstclock.c"
+               line="1113">the time of the clock. Or GST_CLOCK_TIME_NONE when
 given invalid input.
 
 MT safe.</doc>
@@ -8185,20 +12356,29 @@ MT safe.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="clock" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstClock to query</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="1107">a #GstClock to query</doc>
             <type name="Clock" c:type="GstClock*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_timeout" c:identifier="gst_clock_get_timeout">
-        <doc xml:space="preserve">Get the amount of time that master and slave clocks are sampled.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the interval between samples.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstclock.c"
+             line="1597">Get the amount of time that master and slave clocks are sampled.</doc>
+        <source-position filename="gst/gstclock.h" line="540"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstclock.c"
+               line="1603">the interval between samples.</doc>
           <type name="ClockTime" c:type="GstClockTime"/>
         </return-value>
         <parameters>
           <instance-parameter name="clock" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstClock</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="1599">a #GstClock</doc>
             <type name="Clock" c:type="GstClock*"/>
           </instance-parameter>
         </parameters>
@@ -8206,29 +12386,41 @@ MT safe.</doc>
       <method name="is_synced"
               c:identifier="gst_clock_is_synced"
               version="1.6">
-        <doc xml:space="preserve">Checks if the clock is currently synced.
+        <doc xml:space="preserve"
+             filename="gst/gstclock.c"
+             line="1738">Checks if the clock is currently synced.
 
 This returns if GST_CLOCK_FLAG_NEEDS_STARTUP_SYNC is not set on the clock.</doc>
+        <source-position filename="gst/gstclock.h" line="584"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the clock is currently synced</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstclock.c"
+               line="1746">%TRUE if the clock is currently synced</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="clock" transfer-ownership="none">
-            <doc xml:space="preserve">a GstClock</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="1740">a GstClock</doc>
             <type name="Clock" c:type="GstClock*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="new_periodic_id" c:identifier="gst_clock_new_periodic_id">
-        <doc xml:space="preserve">Get an ID from @clock to trigger a periodic notification.
+        <doc xml:space="preserve"
+             filename="gst/gstclock.c"
+             line="429">Get an ID from @clock to trigger a periodic notification.
 The periodic notifications will start at time @start_time and
 will then be fired with the given @interval. @id should be unreffed
 after usage.
 
 Free-function: gst_clock_id_unref</doc>
+        <source-position filename="gst/gstclock.h" line="597"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a #GstClockID that can be used to request the
+          <doc xml:space="preserve"
+               filename="gst/gstclock.c"
+               line="442">a #GstClockID that can be used to request the
     time notification.
 
 MT safe.</doc>
@@ -8236,28 +12428,39 @@ MT safe.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="clock" transfer-ownership="none">
-            <doc xml:space="preserve">The #GstClockID to get a periodic notification id from</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="431">The #GstClockID to get a periodic notification id from</doc>
             <type name="Clock" c:type="GstClock*"/>
           </instance-parameter>
           <parameter name="start_time" transfer-ownership="none">
-            <doc xml:space="preserve">the requested start time</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="432">the requested start time</doc>
             <type name="ClockTime" c:type="GstClockTime"/>
           </parameter>
           <parameter name="interval" transfer-ownership="none">
-            <doc xml:space="preserve">the requested interval</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="433">the requested interval</doc>
             <type name="ClockTime" c:type="GstClockTime"/>
           </parameter>
         </parameters>
       </method>
       <method name="new_single_shot_id"
               c:identifier="gst_clock_new_single_shot_id">
-        <doc xml:space="preserve">Get a #GstClockID from @clock to trigger a single shot
+        <doc xml:space="preserve"
+             filename="gst/gstclock.c"
+             line="404">Get a #GstClockID from @clock to trigger a single shot
 notification at the requested time. The single shot id should be
 unreffed after usage.
 
 Free-function: gst_clock_id_unref</doc>
+        <source-position filename="gst/gstclock.h" line="594"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a #GstClockID that can be used to request the
+          <doc xml:space="preserve"
+               filename="gst/gstclock.c"
+               line="415">a #GstClockID that can be used to request the
     time notification.
 
 MT safe.</doc>
@@ -8265,45 +12468,64 @@ MT safe.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="clock" transfer-ownership="none">
-            <doc xml:space="preserve">The #GstClockID to get a single shot notification from</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="406">The #GstClockID to get a single shot notification from</doc>
             <type name="Clock" c:type="GstClock*"/>
           </instance-parameter>
           <parameter name="time" transfer-ownership="none">
-            <doc xml:space="preserve">the requested time</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="407">the requested time</doc>
             <type name="ClockTime" c:type="GstClockTime"/>
           </parameter>
         </parameters>
       </method>
       <method name="periodic_id_reinit"
               c:identifier="gst_clock_periodic_id_reinit">
-        <doc xml:space="preserve">Reinitializes the provided periodic @id to the provided start time and
+        <doc xml:space="preserve"
+             filename="gst/gstclock.c"
+             line="317">Reinitializes the provided periodic @id to the provided start time and
 interval. Does not modify the reference count.</doc>
+        <source-position filename="gst/gstclock.h" line="639"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the GstClockID could be reinitialized to the provided
+          <doc xml:space="preserve"
+               filename="gst/gstclock.c"
+               line="327">%TRUE if the GstClockID could be reinitialized to the provided
 @time, else %FALSE.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="clock" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstClock</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="319">a #GstClock</doc>
             <type name="Clock" c:type="GstClock*"/>
           </instance-parameter>
           <parameter name="id" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstClockID</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="320">a #GstClockID</doc>
             <type name="ClockID" c:type="GstClockID"/>
           </parameter>
           <parameter name="start_time" transfer-ownership="none">
-            <doc xml:space="preserve">the requested start time</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="321">the requested start time</doc>
             <type name="ClockTime" c:type="GstClockTime"/>
           </parameter>
           <parameter name="interval" transfer-ownership="none">
-            <doc xml:space="preserve">the requested interval</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="322">the requested interval</doc>
             <type name="ClockTime" c:type="GstClockTime"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_calibration" c:identifier="gst_clock_set_calibration">
-        <doc xml:space="preserve">Adjusts the rate and time of @clock. A rate of 1/1 is the normal speed of
+        <doc xml:space="preserve"
+             filename="gst/gstclock.c"
+             line="1142">Adjusts the rate and time of @clock. A rate of 1/1 is the normal speed of
 the clock. Values bigger than 1/1 make the clock go faster.
 
 @internal and @external are calibration parameters that arrange that
@@ -8326,35 +12548,48 @@ move the clock backwards, gst_clock_get_time() will report the previous value
 until the clock catches up.
 
 MT safe.</doc>
+        <source-position filename="gst/gstclock.h" line="518"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="clock" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstClock to calibrate</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="1144">a #GstClock to calibrate</doc>
             <type name="Clock" c:type="GstClock*"/>
           </instance-parameter>
           <parameter name="internal" transfer-ownership="none">
-            <doc xml:space="preserve">a reference internal time</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="1145">a reference internal time</doc>
             <type name="ClockTime" c:type="GstClockTime"/>
           </parameter>
           <parameter name="external" transfer-ownership="none">
-            <doc xml:space="preserve">a reference external time</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="1146">a reference external time</doc>
             <type name="ClockTime" c:type="GstClockTime"/>
           </parameter>
           <parameter name="rate_num" transfer-ownership="none">
-            <doc xml:space="preserve">the numerator of the rate of the clock relative to its
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="1147">the numerator of the rate of the clock relative to its
            internal time</doc>
             <type name="ClockTime" c:type="GstClockTime"/>
           </parameter>
           <parameter name="rate_denom" transfer-ownership="none">
-            <doc xml:space="preserve">the denominator of the rate of the clock</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="1149">the denominator of the rate of the clock</doc>
             <type name="ClockTime" c:type="GstClockTime"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_master" c:identifier="gst_clock_set_master">
-        <doc xml:space="preserve">Set @master as the master clock for @clock. @clock will be automatically
+        <doc xml:space="preserve"
+             filename="gst/gstclock.c"
+             line="1271">Set @master as the master clock for @clock. @clock will be automatically
 calibrated so that gst_clock_get_time() reports the same time as the
 master clock.
 
@@ -8364,8 +12599,11 @@ calibration values with gst_clock_get_calibration().
 @master can be %NULL in which case @clock will not be slaved anymore. It will
 however keep reporting its time adjusted with the last configured rate
 and time offsets.</doc>
+        <source-position filename="gst/gstclock.h" line="531"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the clock is capable of being slaved to a master clock.
+          <doc xml:space="preserve"
+               filename="gst/gstclock.c"
+               line="1287">%TRUE if the clock is capable of being slaved to a master clock.
 Trying to set a master on a clock without the
 #GST_CLOCK_FLAG_CAN_SET_MASTER flag will make this function return %FALSE.
 
@@ -8374,35 +12612,48 @@ MT safe.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="clock" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstClock</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="1273">a #GstClock</doc>
             <type name="Clock" c:type="GstClock*"/>
           </instance-parameter>
           <parameter name="master"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">a master #GstClock</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="1274">a master #GstClock</doc>
             <type name="Clock" c:type="GstClock*"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_resolution" c:identifier="gst_clock_set_resolution">
-        <doc xml:space="preserve">Set the accuracy of the clock. Some clocks have the possibility to operate
+        <doc xml:space="preserve"
+             filename="gst/gstclock.c"
+             line="828">Set the accuracy of the clock. Some clocks have the possibility to operate
 with different accuracy at the expense of more resource usage. There is
 normally no need to change the default resolution of a clock. The resolution
 of a clock can only be changed if the clock has the
 #GST_CLOCK_FLAG_CAN_SET_RESOLUTION flag set.</doc>
+        <source-position filename="gst/gstclock.h" line="509"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the new resolution of the clock.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstclock.c"
+               line="839">the new resolution of the clock.</doc>
           <type name="ClockTime" c:type="GstClockTime"/>
         </return-value>
         <parameters>
           <instance-parameter name="clock" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstClock</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="830">a #GstClock</doc>
             <type name="Clock" c:type="GstClock*"/>
           </instance-parameter>
           <parameter name="resolution" transfer-ownership="none">
-            <doc xml:space="preserve">The resolution to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="831">The resolution to set</doc>
             <type name="ClockTime" c:type="GstClockTime"/>
           </parameter>
         </parameters>
@@ -8410,85 +12661,119 @@ of a clock can only be changed if the clock has the
       <method name="set_synced"
               c:identifier="gst_clock_set_synced"
               version="1.6">
-        <doc xml:space="preserve">Sets @clock to synced and emits the GstClock::synced signal, and wakes up any
+        <doc xml:space="preserve"
+             filename="gst/gstclock.c"
+             line="1759">Sets @clock to synced and emits the GstClock::synced signal, and wakes up any
 thread waiting in gst_clock_wait_for_sync().
 
 This function must only be called if GST_CLOCK_FLAG_NEEDS_STARTUP_SYNC
 is set on the clock, and is intended to be called by subclasses only.</doc>
+        <source-position filename="gst/gstclock.h" line="589"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="clock" transfer-ownership="none">
-            <doc xml:space="preserve">a GstClock</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="1761">a GstClock</doc>
             <type name="Clock" c:type="GstClock*"/>
           </instance-parameter>
           <parameter name="synced" transfer-ownership="none">
-            <doc xml:space="preserve">if the clock is synced</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="1762">if the clock is synced</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_timeout" c:identifier="gst_clock_set_timeout">
-        <doc xml:space="preserve">Set the amount of time, in nanoseconds, to sample master and slave
+        <doc xml:space="preserve"
+             filename="gst/gstclock.c"
+             line="1579">Set the amount of time, in nanoseconds, to sample master and slave
 clocks</doc>
+        <source-position filename="gst/gstclock.h" line="537"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="clock" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstClock</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="1581">a #GstClock</doc>
             <type name="Clock" c:type="GstClock*"/>
           </instance-parameter>
           <parameter name="timeout" transfer-ownership="none">
-            <doc xml:space="preserve">a timeout</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="1582">a timeout</doc>
             <type name="ClockTime" c:type="GstClockTime"/>
           </parameter>
         </parameters>
       </method>
       <method name="single_shot_id_reinit"
               c:identifier="gst_clock_single_shot_id_reinit">
-        <doc xml:space="preserve">Reinitializes the provided single shot @id to the provided time. Does not
+        <doc xml:space="preserve"
+             filename="gst/gstclock.c"
+             line="297">Reinitializes the provided single shot @id to the provided time. Does not
 modify the reference count.</doc>
+        <source-position filename="gst/gstclock.h" line="635"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the GstClockID could be reinitialized to the provided
+          <doc xml:space="preserve"
+               filename="gst/gstclock.c"
+               line="306">%TRUE if the GstClockID could be reinitialized to the provided
 @time, else %FALSE.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="clock" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstClock</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="299">a #GstClock</doc>
             <type name="Clock" c:type="GstClock*"/>
           </instance-parameter>
           <parameter name="id" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstClockID</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="300">a #GstClockID</doc>
             <type name="ClockID" c:type="GstClockID"/>
           </parameter>
           <parameter name="time" transfer-ownership="none">
-            <doc xml:space="preserve">The requested time.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="301">The requested time.</doc>
             <type name="ClockTime" c:type="GstClockTime"/>
           </parameter>
         </parameters>
       </method>
       <method name="unadjust_unlocked"
               c:identifier="gst_clock_unadjust_unlocked">
-        <doc xml:space="preserve">Converts the given @external clock time to the internal time of @clock,
+        <doc xml:space="preserve"
+             filename="gst/gstclock.c"
+             line="1029">Converts the given @external clock time to the internal time of @clock,
 using the rate and reference time set with gst_clock_set_calibration().
 This function should be called with the clock's OBJECT_LOCK held and
 is mainly used by clock subclasses.
 
 This function is the reverse of gst_clock_adjust_unlocked().</doc>
+        <source-position filename="gst/gstclock.h" line="576"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the internal time of the clock corresponding to @external.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstclock.c"
+               line="1041">the internal time of the clock corresponding to @external.</doc>
           <type name="ClockTime" c:type="GstClockTime"/>
         </return-value>
         <parameters>
           <instance-parameter name="clock" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstClock to use</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="1031">a #GstClock to use</doc>
             <type name="Clock" c:type="GstClock*"/>
           </instance-parameter>
           <parameter name="external" transfer-ownership="none">
-            <doc xml:space="preserve">an external clock time</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="1032">an external clock time</doc>
             <type name="ClockTime" c:type="GstClockTime"/>
           </parameter>
         </parameters>
@@ -8496,14 +12781,19 @@ This function is the reverse of gst_clock_adjust_unlocked().</doc>
       <method name="unadjust_with_calibration"
               c:identifier="gst_clock_unadjust_with_calibration"
               version="1.8">
-        <doc xml:space="preserve">Converts the given @external_target clock time to the internal time,
+        <doc xml:space="preserve"
+             filename="gst/gstclock.c"
+             line="980">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</doc>
+        <source-position filename="gst/gstclock.h" line="569"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the converted time of the clock.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstclock.c"
+               line="997">the converted time of the clock.</doc>
           <type name="ClockTime" c:type="GstClockTime"/>
         </return-value>
         <parameters>
@@ -8511,28 +12801,40 @@ Note: The @clock parameter is unused and can be NULL</doc>
                               transfer-ownership="none"
                               nullable="1"
                               allow-none="1">
-            <doc xml:space="preserve">a #GstClock to use</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="982">a #GstClock to use</doc>
             <type name="Clock" c:type="GstClock*"/>
           </instance-parameter>
           <parameter name="external_target" transfer-ownership="none">
-            <doc xml:space="preserve">a clock time</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="983">a clock time</doc>
             <type name="ClockTime" c:type="GstClockTime"/>
           </parameter>
           <parameter name="cinternal" transfer-ownership="none">
-            <doc xml:space="preserve">a reference internal time</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="984">a reference internal time</doc>
             <type name="ClockTime" c:type="GstClockTime"/>
           </parameter>
           <parameter name="cexternal" transfer-ownership="none">
-            <doc xml:space="preserve">a reference external time</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="985">a reference external time</doc>
             <type name="ClockTime" c:type="GstClockTime"/>
           </parameter>
           <parameter name="cnum" transfer-ownership="none">
-            <doc xml:space="preserve">the numerator of the rate of the clock relative to its
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="986">the numerator of the rate of the clock relative to its
        internal time</doc>
             <type name="ClockTime" c:type="GstClockTime"/>
           </parameter>
           <parameter name="cdenom" transfer-ownership="none">
-            <doc xml:space="preserve">the denominator of the rate of the clock</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="988">the denominator of the rate of the clock</doc>
             <type name="ClockTime" c:type="GstClockTime"/>
           </parameter>
         </parameters>
@@ -8540,7 +12842,9 @@ Note: The @clock parameter is unused and can be NULL</doc>
       <method name="wait_for_sync"
               c:identifier="gst_clock_wait_for_sync"
               version="1.6">
-        <doc xml:space="preserve">Waits until @clock is synced for reporting the current time. If @timeout
+        <doc xml:space="preserve"
+             filename="gst/gstclock.c"
+             line="1686">Waits until @clock is synced for reporting the current time. If @timeout
 is %GST_CLOCK_TIME_NONE it will wait forever, otherwise it will time out
 after @timeout nanoseconds.
 
@@ -8548,17 +12852,24 @@ For asynchronous waiting, the GstClock::synced signal can be used.
 
 This returns immediately with TRUE if GST_CLOCK_FLAG_NEEDS_STARTUP_SYNC
 is not set on the clock, or if the clock is already synced.</doc>
+        <source-position filename="gst/gstclock.h" line="581"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if waiting was successful, or %FALSE on timeout</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstclock.c"
+               line="1700">%TRUE if waiting was successful, or %FALSE on timeout</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="clock" transfer-ownership="none">
-            <doc xml:space="preserve">a GstClock</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="1688">a GstClock</doc>
             <type name="Clock" c:type="GstClock*"/>
           </instance-parameter>
           <parameter name="timeout" transfer-ownership="none">
-            <doc xml:space="preserve">timeout for waiting or %GST_CLOCK_TIME_NONE</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="1689">timeout for waiting or %GST_CLOCK_TIME_NONE</doc>
             <type name="ClockTime" c:type="GstClockTime"/>
           </parameter>
         </parameters>
@@ -8579,12 +12890,14 @@ is not set on the clock, or if the clock is already synced.</doc>
         <type name="ClockPrivate" c:type="GstClockPrivate*"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
       <glib:signal name="synced" when="last" version="1.6">
-        <doc xml:space="preserve">Signaled on clocks with GST_CLOCK_FLAG_NEEDS_STARTUP_SYNC set once
+        <doc xml:space="preserve"
+             filename="gst/gstclock.c"
+             line="748">Signaled on clocks with GST_CLOCK_FLAG_NEEDS_STARTUP_SYNC set once
 the clock is synchronized, or when it completely lost synchronization.
 This signal will not be emitted on clocks without the flag.
 
@@ -8595,29 +12908,42 @@ the application's main thread.</doc>
         </return-value>
         <parameters>
           <parameter name="synced" transfer-ownership="none">
-            <doc xml:space="preserve">if the clock is synced now</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="751">if the clock is synced now</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </glib:signal>
     </class>
     <callback name="ClockCallback" c:type="GstClockCallback">
-      <doc xml:space="preserve">The function prototype of the callback.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstclock.h"
+           line="285">The function prototype of the callback.</doc>
+      <source-position filename="gst/gstclock.h" line="296"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE or %FALSE (currently unused)</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstclock.h"
+             line="294">%TRUE or %FALSE (currently unused)</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="clock" transfer-ownership="none">
-          <doc xml:space="preserve">The clock that triggered the callback</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstclock.h"
+               line="287">The clock that triggered the callback</doc>
           <type name="Clock" c:type="GstClock*"/>
         </parameter>
         <parameter name="time" transfer-ownership="none">
-          <doc xml:space="preserve">The time it was triggered</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstclock.h"
+               line="288">The time it was triggered</doc>
           <type name="ClockTime" c:type="GstClockTime"/>
         </parameter>
         <parameter name="id" transfer-ownership="none">
-          <doc xml:space="preserve">The #GstClockID that expired</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstclock.h"
+               line="289">The #GstClockID that expired</doc>
           <type name="ClockID" c:type="GstClockID"/>
         </parameter>
         <parameter name="user_data"
@@ -8625,7 +12951,9 @@ the application's main thread.</doc>
                    nullable="1"
                    allow-none="1"
                    closure="3">
-          <doc xml:space="preserve">user data passed in the gst_clock_id_wait_async() function</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstclock.h"
+               line="290">user data passed in the gst_clock_id_wait_async() function</doc>
           <type name="gpointer" c:type="gpointer"/>
         </parameter>
       </parameters>
@@ -8633,14 +12961,20 @@ the application's main thread.</doc>
     <record name="ClockClass"
             c:type="GstClockClass"
             glib:is-gtype-struct-for="Clock">
-      <doc xml:space="preserve">GStreamer clock class. Override the vmethods to implement the clock
+      <doc xml:space="preserve"
+           filename="gst/gstclock.h"
+           line="467">GStreamer clock class. Override the vmethods to implement the clock
 functionality.</doc>
+      <source-position filename="gst/gstclock.h" line="503"/>
       <field name="parent_class">
-        <doc xml:space="preserve">the parent class structure</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstclock.h"
+             line="469">the parent class structure</doc>
         <type name="ObjectClass" c:type="GstObjectClass"/>
       </field>
       <field name="change_resolution">
         <callback name="change_resolution">
+          <source-position filename="gst/gstclock.h" line="488"/>
           <return-value transfer-ownership="none">
             <type name="ClockTime" c:type="GstClockTime"/>
           </return-value>
@@ -8659,15 +12993,20 @@ functionality.</doc>
       </field>
       <field name="get_resolution">
         <callback name="get_resolution">
+          <source-position filename="gst/gstclock.h" line="491"/>
           <return-value transfer-ownership="none">
-            <doc xml:space="preserve">the resolution of the clock in units of #GstClockTime.
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="867">the resolution of the clock in units of #GstClockTime.
 
 MT safe.</doc>
             <type name="ClockTime" c:type="GstClockTime"/>
           </return-value>
           <parameters>
             <parameter name="clock" transfer-ownership="none">
-              <doc xml:space="preserve">a #GstClock</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstclock.c"
+                   line="862">a #GstClock</doc>
               <type name="Clock" c:type="GstClock*"/>
             </parameter>
           </parameters>
@@ -8675,8 +13014,11 @@ MT safe.</doc>
       </field>
       <field name="get_internal_time">
         <callback name="get_internal_time">
+          <source-position filename="gst/gstclock.h" line="493"/>
           <return-value transfer-ownership="none">
-            <doc xml:space="preserve">the internal time of the clock. Or GST_CLOCK_TIME_NONE when
+            <doc xml:space="preserve"
+                 filename="gst/gstclock.c"
+                 line="1066">the internal time of the clock. Or GST_CLOCK_TIME_NONE when
 given invalid input.
 
 MT safe.</doc>
@@ -8684,7 +13026,9 @@ MT safe.</doc>
           </return-value>
           <parameters>
             <parameter name="clock" transfer-ownership="none">
-              <doc xml:space="preserve">a #GstClock to query</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstclock.c"
+                   line="1061">a #GstClock to query</doc>
               <type name="Clock" c:type="GstClock*"/>
             </parameter>
           </parameters>
@@ -8692,6 +13036,7 @@ MT safe.</doc>
       </field>
       <field name="wait">
         <callback name="wait">
+          <source-position filename="gst/gstclock.h" line="496"/>
           <return-value transfer-ownership="none">
             <type name="ClockReturn" c:type="GstClockReturn"/>
           </return-value>
@@ -8710,6 +13055,7 @@ MT safe.</doc>
       </field>
       <field name="wait_async">
         <callback name="wait_async">
+          <source-position filename="gst/gstclock.h" line="498"/>
           <return-value transfer-ownership="none">
             <type name="ClockReturn" c:type="GstClockReturn"/>
           </return-value>
@@ -8725,6 +13071,7 @@ MT safe.</doc>
       </field>
       <field name="unschedule">
         <callback name="unschedule">
+          <source-position filename="gst/gstclock.h" line="499"/>
           <return-value transfer-ownership="none">
             <type name="none" c:type="void"/>
           </return-value>
@@ -8739,18 +13086,23 @@ MT safe.</doc>
         </callback>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
     </record>
     <record name="ClockEntry" c:type="GstClockEntry">
-      <doc xml:space="preserve">All pending timeouts or periodic notifies are converted into
+      <doc xml:space="preserve"
+           filename="gst/gstclock.h"
+           line="383">All pending timeouts or periodic notifies are converted into
 an entry.
 Note that GstClockEntry should be treated as an opaque structure. It must
 not be extended or allocated using a custom allocator.</doc>
+      <source-position filename="gst/gstclock.h" line="414"/>
       <field name="refcount" writable="1">
-        <doc xml:space="preserve">reference counter (read-only)</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstclock.h"
+             line="385">reference counter (read-only)</doc>
         <type name="gint" c:type="gint"/>
       </field>
       <field name="clock" writable="1">
@@ -8784,7 +13136,7 @@ not be extended or allocated using a custom allocator.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -8793,159 +13145,222 @@ not be extended or allocated using a custom allocator.</doc>
                  glib:type-name="GstClockEntryType"
                  glib:get-type="gst_clock_entry_type_get_type"
                  c:type="GstClockEntryType">
-      <doc xml:space="preserve">The type of the clock entry</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstclock.h"
+           line="323">The type of the clock entry</doc>
       <member name="single"
               value="0"
               c:identifier="GST_CLOCK_ENTRY_SINGLE"
               glib:nick="single">
-        <doc xml:space="preserve">a single shot timeout</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstclock.h"
+             line="325">a single shot timeout</doc>
       </member>
       <member name="periodic"
               value="1"
               c:identifier="GST_CLOCK_ENTRY_PERIODIC"
               glib:nick="periodic">
-        <doc xml:space="preserve">a periodic timeout request</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstclock.h"
+             line="326">a periodic timeout request</doc>
       </member>
     </enumeration>
     <bitfield name="ClockFlags"
               glib:type-name="GstClockFlags"
               glib:get-type="gst_clock_flags_get_type"
               c:type="GstClockFlags">
-      <doc xml:space="preserve">The capabilities of this clock</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstclock.h"
+           line="418">The capabilities of this clock</doc>
       <member name="can_do_single_sync"
               value="16"
               c:identifier="GST_CLOCK_FLAG_CAN_DO_SINGLE_SYNC"
               glib:nick="can-do-single-sync">
-        <doc xml:space="preserve">clock can do a single sync timeout request</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstclock.h"
+             line="420">clock can do a single sync timeout request</doc>
       </member>
       <member name="can_do_single_async"
               value="32"
               c:identifier="GST_CLOCK_FLAG_CAN_DO_SINGLE_ASYNC"
               glib:nick="can-do-single-async">
-        <doc xml:space="preserve">clock can do a single async timeout request</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstclock.h"
+             line="421">clock can do a single async timeout request</doc>
       </member>
       <member name="can_do_periodic_sync"
               value="64"
               c:identifier="GST_CLOCK_FLAG_CAN_DO_PERIODIC_SYNC"
               glib:nick="can-do-periodic-sync">
-        <doc xml:space="preserve">clock can do sync periodic timeout requests</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstclock.h"
+             line="422">clock can do sync periodic timeout requests</doc>
       </member>
       <member name="can_do_periodic_async"
               value="128"
               c:identifier="GST_CLOCK_FLAG_CAN_DO_PERIODIC_ASYNC"
               glib:nick="can-do-periodic-async">
-        <doc xml:space="preserve">clock can do async periodic timeout callbacks</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstclock.h"
+             line="423">clock can do async periodic timeout callbacks</doc>
       </member>
       <member name="can_set_resolution"
               value="256"
               c:identifier="GST_CLOCK_FLAG_CAN_SET_RESOLUTION"
               glib:nick="can-set-resolution">
-        <doc xml:space="preserve">clock's resolution can be changed</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstclock.h"
+             line="424">clock's resolution can be changed</doc>
       </member>
       <member name="can_set_master"
               value="512"
               c:identifier="GST_CLOCK_FLAG_CAN_SET_MASTER"
               glib:nick="can-set-master">
-        <doc xml:space="preserve">clock can be slaved to a master clock</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstclock.h"
+             line="425">clock can be slaved to a master clock</doc>
       </member>
       <member name="needs_startup_sync"
               value="1024"
               c:identifier="GST_CLOCK_FLAG_NEEDS_STARTUP_SYNC"
               glib:nick="needs-startup-sync">
-        <doc xml:space="preserve">clock needs to be synced before it can be used
-    (Since 1.6)</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstclock.h"
+             line="426">clock needs to be synced before it can be used
+    (Since: 1.6)</doc>
       </member>
       <member name="last"
               value="4096"
               c:identifier="GST_CLOCK_FLAG_LAST"
               glib:nick="last">
-        <doc xml:space="preserve">subclasses can add additional flags starting from this flag</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstclock.h"
+             line="428">subclasses can add additional flags starting from this flag</doc>
       </member>
     </bitfield>
     <record name="ClockPrivate" c:type="GstClockPrivate" disguised="1">
+      <source-position filename="gst/gstclock.h" line="282"/>
     </record>
     <enumeration name="ClockReturn"
                  glib:type-name="GstClockReturn"
                  glib:get-type="gst_clock_return_get_type"
                  c:type="GstClockReturn">
-      <doc xml:space="preserve">The return value of a clock operation.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstclock.h"
+           line="298">The return value of a clock operation.</doc>
       <member name="ok" value="0" c:identifier="GST_CLOCK_OK" glib:nick="ok">
-        <doc xml:space="preserve">The operation succeeded.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstclock.h"
+             line="300">The operation succeeded.</doc>
       </member>
       <member name="early"
               value="1"
               c:identifier="GST_CLOCK_EARLY"
               glib:nick="early">
-        <doc xml:space="preserve">The operation was scheduled too late.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstclock.h"
+             line="301">The operation was scheduled too late.</doc>
       </member>
       <member name="unscheduled"
               value="2"
               c:identifier="GST_CLOCK_UNSCHEDULED"
               glib:nick="unscheduled">
-        <doc xml:space="preserve">The clockID was unscheduled</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstclock.h"
+             line="302">The clockID was unscheduled</doc>
       </member>
       <member name="busy"
               value="3"
               c:identifier="GST_CLOCK_BUSY"
               glib:nick="busy">
-        <doc xml:space="preserve">The ClockID is busy</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstclock.h"
+             line="303">The ClockID is busy</doc>
       </member>
       <member name="badtime"
               value="4"
               c:identifier="GST_CLOCK_BADTIME"
               glib:nick="badtime">
-        <doc xml:space="preserve">A bad time was provided to a function.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstclock.h"
+             line="304">A bad time was provided to a function.</doc>
       </member>
       <member name="error"
               value="5"
               c:identifier="GST_CLOCK_ERROR"
               glib:nick="error">
-        <doc xml:space="preserve">An error occurred</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstclock.h"
+             line="305">An error occurred</doc>
       </member>
       <member name="unsupported"
               value="6"
               c:identifier="GST_CLOCK_UNSUPPORTED"
               glib:nick="unsupported">
-        <doc xml:space="preserve">Operation is not supported</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstclock.h"
+             line="306">Operation is not supported</doc>
       </member>
       <member name="done"
               value="7"
               c:identifier="GST_CLOCK_DONE"
               glib:nick="done">
-        <doc xml:space="preserve">The ClockID is done waiting</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstclock.h"
+             line="307">The ClockID is done waiting</doc>
       </member>
     </enumeration>
     <enumeration name="ClockType"
                  glib:type-name="GstClockType"
                  glib:get-type="gst_clock_type_get_type"
                  c:type="GstClockType">
-      <doc xml:space="preserve">The different kind of clocks.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstsystemclock.h"
+           line="45">The different kind of clocks.</doc>
       <member name="realtime"
               value="0"
               c:identifier="GST_CLOCK_TYPE_REALTIME"
               glib:nick="realtime">
-        <doc xml:space="preserve">time since Epoch</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstsystemclock.h"
+             line="47">time since Epoch</doc>
       </member>
       <member name="monotonic"
               value="1"
               c:identifier="GST_CLOCK_TYPE_MONOTONIC"
               glib:nick="monotonic">
-        <doc xml:space="preserve">monotonic time since some unspecified starting
+        <doc xml:space="preserve"
+             filename="gst/gstsystemclock.h"
+             line="48">monotonic time since some unspecified starting
                            point</doc>
       </member>
       <member name="other"
               value="2"
               c:identifier="GST_CLOCK_TYPE_OTHER"
               glib:nick="other">
-        <doc xml:space="preserve">some other time source is used (Since 1.0.5)</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstsystemclock.h"
+             line="50">some other time source is used (Since: 1.0.5)</doc>
+      </member>
+      <member name="tai"
+              value="3"
+              c:identifier="GST_CLOCK_TYPE_TAI"
+              glib:nick="tai">
+        <doc xml:space="preserve"
+             filename="gst/gstsystemclock.h"
+             line="51">time since Epoch, but using International Atomic Time
+                     as reference (Since: 1.18)</doc>
       </member>
     </enumeration>
     <record name="Context"
             c:type="GstContext"
+            version="1.2"
             glib:type-name="GstContext"
             glib:get-type="gst_context_get_type"
             c:symbol-prefix="context">
-      <doc xml:space="preserve">#GstContext is a container object used to store contexts like a device
+      <doc xml:space="preserve"
+           filename="gst/gstcontext.c"
+           line="24">#GstContext is a container object used to store contexts like a device
 context, a display server connection and similar concepts that should
 be shared between multiple elements.
 
@@ -8973,19 +13388,29 @@ A persistent #GstContext is kept in elements when they reach
 %GST_STATE_NULL, non-persistent ones will be removed.
 Also, a non-persistent context won't override a previous persistent
 context set to an element.</doc>
+      <source-position filename="gst/gstcontext.h" line="31"/>
       <constructor name="new" c:identifier="gst_context_new" version="1.2">
-        <doc xml:space="preserve">Create a new context.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstcontext.c"
+             line="153">Create a new context.</doc>
+        <source-position filename="gst/gstcontext.h" line="137"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">The new context.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstcontext.c"
+               line="160">The new context.</doc>
           <type name="Context" c:type="GstContext*"/>
         </return-value>
         <parameters>
           <parameter name="context_type" transfer-ownership="none">
-            <doc xml:space="preserve">Context type</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcontext.c"
+                 line="155">Context type</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="persistent" transfer-ownership="none">
-            <doc xml:space="preserve">Persistent context</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcontext.c"
+                 line="156">Persistent context</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
@@ -8993,14 +13418,21 @@ context set to an element.</doc>
       <method name="get_context_type"
               c:identifier="gst_context_get_context_type"
               version="1.2">
-        <doc xml:space="preserve">Get the type of @context.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The type of the context.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstcontext.c"
+             line="187">Get the type of @context.</doc>
+        <source-position filename="gst/gstcontext.h" line="140"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstcontext.c"
+               line="193">The type of the context.</doc>
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
         <parameters>
           <instance-parameter name="context" transfer-ownership="none">
-            <doc xml:space="preserve">The #GstContext.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcontext.c"
+                 line="189">The #GstContext.</doc>
             <type name="Context" c:type="const GstContext*"/>
           </instance-parameter>
         </parameters>
@@ -9008,16 +13440,23 @@ context set to an element.</doc>
       <method name="get_structure"
               c:identifier="gst_context_get_structure"
               version="1.2">
-        <doc xml:space="preserve">Access the structure of the context.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The structure of the context. The structure is
+        <doc xml:space="preserve"
+             filename="gst/gstcontext.c"
+             line="226">Access the structure of the context.</doc>
+        <source-position filename="gst/gstcontext.h" line="146"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstcontext.c"
+               line="232">The structure of the context. The structure is
 still owned by the context, which means that you should not modify it,
 free it and that the pointer becomes invalid when you free the context.</doc>
           <type name="Structure" c:type="const GstStructure*"/>
         </return-value>
         <parameters>
           <instance-parameter name="context" transfer-ownership="none">
-            <doc xml:space="preserve">The #GstContext.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcontext.c"
+                 line="228">The #GstContext.</doc>
             <type name="Context" c:type="const GstContext*"/>
           </instance-parameter>
         </parameters>
@@ -9025,18 +13464,27 @@ free it and that the pointer becomes invalid when you free the context.</doc>
       <method name="has_context_type"
               c:identifier="gst_context_has_context_type"
               version="1.2">
-        <doc xml:space="preserve">Checks if @context has @context_type.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if @context has @context_type.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstcontext.c"
+             line="205">Checks if @context has @context_type.</doc>
+        <source-position filename="gst/gstcontext.h" line="143"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstcontext.c"
+               line="212">%TRUE if @context has @context_type.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="context" transfer-ownership="none">
-            <doc xml:space="preserve">The #GstContext.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcontext.c"
+                 line="207">The #GstContext.</doc>
             <type name="Context" c:type="const GstContext*"/>
           </instance-parameter>
           <parameter name="context_type" transfer-ownership="none">
-            <doc xml:space="preserve">Context type to check.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcontext.c"
+                 line="208">Context type to check.</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
@@ -9044,14 +13492,21 @@ free it and that the pointer becomes invalid when you free the context.</doc>
       <method name="is_persistent"
               c:identifier="gst_context_is_persistent"
               version="1.2">
-        <doc xml:space="preserve">Check if @context is persistent.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the context is persistent.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstcontext.c"
+             line="268">Check if @context is persistent.</doc>
+        <source-position filename="gst/gstcontext.h" line="152"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstcontext.c"
+               line="274">%TRUE if the context is persistent.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="context" transfer-ownership="none">
-            <doc xml:space="preserve">The #GstContext.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcontext.c"
+                 line="270">The #GstContext.</doc>
             <type name="Context" c:type="const GstContext*"/>
           </instance-parameter>
         </parameters>
@@ -9059,9 +13514,14 @@ free it and that the pointer becomes invalid when you free the context.</doc>
       <method name="writable_structure"
               c:identifier="gst_context_writable_structure"
               version="1.2">
-        <doc xml:space="preserve">Get a writable version of the structure.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstcontext.c"
+             line="246">Get a writable version of the structure.</doc>
+        <source-position filename="gst/gstcontext.h" line="149"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">The structure of the context. The structure is still
+          <doc xml:space="preserve"
+               filename="gst/gstcontext.c"
+               line="252">The structure of the context. The structure is still
 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.</doc>
@@ -9069,7 +13529,9 @@ This function checks if @context is writable.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="context" transfer-ownership="none">
-            <doc xml:space="preserve">The #GstContext.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcontext.c"
+                 line="248">The #GstContext.</doc>
             <type name="Context" c:type="GstContext*"/>
           </instance-parameter>
         </parameters>
@@ -9083,40 +13545,58 @@ This function checks if @context is writable.</doc>
            glib:type-name="GstControlBinding"
            glib:get-type="gst_control_binding_get_type"
            glib:type-struct="ControlBindingClass">
-      <doc xml:space="preserve">A base class for value mapping objects that attaches control sources to gobject
+      <doc xml:space="preserve"
+           filename="gst/gstcontrolbinding.c"
+           line="22">A base class for value mapping objects that attaches control sources to gobject
 properties. Such an object is taking one or more #GstControlSource instances,
 combines them and maps the resulting value to the type and value range of the
 bound property.</doc>
+      <source-position filename="gst/gstcontrolbinding.h" line="112"/>
       <virtual-method name="get_g_value_array" invoker="get_g_value_array">
-        <doc xml:space="preserve">Gets a number of #GValues for the given controlled property starting at the
+        <doc xml:space="preserve"
+             filename="gst/gstcontrolbinding.c"
+             line="366">Gets a number of #GValues for the given controlled property starting at the
 requested time. The array @values need to hold enough space for @n_values of
 #GValue.
 
 This function is useful if one wants to e.g. draw a graph of the control
 curve or apply a control curve sample by sample.</doc>
+        <source-position filename="gst/gstcontrolbinding.h" line="108"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the given array could be filled, %FALSE otherwise</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstcontrolbinding.c"
+               line="381">%TRUE if the given array could be filled, %FALSE otherwise</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="binding" transfer-ownership="none">
-            <doc xml:space="preserve">the control binding</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcontrolbinding.c"
+                 line="368">the control binding</doc>
             <type name="ControlBinding" c:type="GstControlBinding*"/>
           </instance-parameter>
           <parameter name="timestamp" transfer-ownership="none">
-            <doc xml:space="preserve">the time that should be processed</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcontrolbinding.c"
+                 line="369">the time that should be processed</doc>
             <type name="ClockTime" c:type="GstClockTime"/>
           </parameter>
           <parameter name="interval" transfer-ownership="none">
-            <doc xml:space="preserve">the time spacing between subsequent values</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcontrolbinding.c"
+                 line="370">the time spacing between subsequent values</doc>
             <type name="ClockTime" c:type="GstClockTime"/>
           </parameter>
           <parameter name="n_values" transfer-ownership="none">
-            <doc xml:space="preserve">the number of values</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcontrolbinding.c"
+                 line="371">the number of values</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="values" transfer-ownership="none">
-            <doc xml:space="preserve">array to put control-values in</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcontrolbinding.c"
+                 line="372">array to put control-values in</doc>
             <array length="2" zero-terminated="0" c:type="GValue*">
               <type name="GObject.Value" c:type="GValue"/>
             </array>
@@ -9124,19 +13604,28 @@ curve or apply a control curve sample by sample.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="get_value" invoker="get_value">
-        <doc xml:space="preserve">Gets the value for the given controlled property at the requested time.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstcontrolbinding.c"
+             line="277">Gets the value for the given controlled property at the requested time.</doc>
+        <source-position filename="gst/gstcontrolbinding.h" line="106"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">the GValue of the property at the given time,
+          <doc xml:space="preserve"
+               filename="gst/gstcontrolbinding.c"
+               line="284">the GValue of the property at the given time,
 or %NULL if the property isn't controlled.</doc>
           <type name="GObject.Value" c:type="GValue*"/>
         </return-value>
         <parameters>
           <instance-parameter name="binding" transfer-ownership="none">
-            <doc xml:space="preserve">the control binding</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcontrolbinding.c"
+                 line="279">the control binding</doc>
             <type name="ControlBinding" c:type="GstControlBinding*"/>
           </instance-parameter>
           <parameter name="timestamp" transfer-ownership="none">
-            <doc xml:space="preserve">the time the control-change should be read from</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcontrolbinding.c"
+                 line="280">the time the control-change should be read from</doc>
             <type name="ClockTime" c:type="GstClockTime"/>
           </parameter>
         </parameters>
@@ -9144,7 +13633,9 @@ or %NULL if the property isn't controlled.</doc>
       <virtual-method name="get_value_array"
                       invoker="get_value_array"
                       introspectable="0">
-        <doc xml:space="preserve">Gets a number of values for the given controlled property starting at the
+        <doc xml:space="preserve"
+             filename="gst/gstcontrolbinding.c"
+             line="307">Gets a number of values for the given controlled property starting at the
 requested time. The array @values need to hold enough space for @n_values of
 the same type as the objects property's type.
 
@@ -9154,32 +13645,45 @@ curve or apply a control curve sample by sample.
 The values are unboxed and ready to be used. The similar function
 gst_control_binding_get_g_value_array() returns the array as #GValues and is
 more suitable for bindings.</doc>
+        <source-position filename="gst/gstcontrolbinding.h" line="107"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the given array could be filled, %FALSE otherwise</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstcontrolbinding.c"
+               line="326">%TRUE if the given array could be filled, %FALSE otherwise</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="binding" transfer-ownership="none">
-            <doc xml:space="preserve">the control binding</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcontrolbinding.c"
+                 line="309">the control binding</doc>
             <type name="ControlBinding" c:type="GstControlBinding*"/>
           </instance-parameter>
           <parameter name="timestamp" transfer-ownership="none">
-            <doc xml:space="preserve">the time that should be processed</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcontrolbinding.c"
+                 line="310">the time that should be processed</doc>
             <type name="ClockTime" c:type="GstClockTime"/>
           </parameter>
           <parameter name="interval" transfer-ownership="none">
-            <doc xml:space="preserve">the time spacing between subsequent values</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcontrolbinding.c"
+                 line="311">the time spacing between subsequent values</doc>
             <type name="ClockTime" c:type="GstClockTime"/>
           </parameter>
           <parameter name="n_values" transfer-ownership="none">
-            <doc xml:space="preserve">the number of values</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcontrolbinding.c"
+                 line="312">the number of values</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="values"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">array to put control-values in</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcontrolbinding.c"
+                 line="313">array to put control-values in</doc>
             <array length="2" zero-terminated="0" c:type="gpointer">
               <type name="gpointer" c:type="gpointer"/>
             </array>
@@ -9187,66 +13691,94 @@ more suitable for bindings.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="sync_values" invoker="sync_values">
-        <doc xml:space="preserve">Sets the property of the @object, according to the #GstControlSources that
+        <doc xml:space="preserve"
+             filename="gst/gstcontrolbinding.c"
+             line="239">Sets the property of the @object, according to the #GstControlSources that
 handle them and for the given timestamp.
 
 If this function fails, it is most likely the application developers fault.
 Most probably the control sources are not setup correctly.</doc>
+        <source-position filename="gst/gstcontrolbinding.h" line="105"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the controller value could be applied to the object
+          <doc xml:space="preserve"
+               filename="gst/gstcontrolbinding.c"
+               line="252">%TRUE if the controller value could be applied to the object
 property, %FALSE otherwise</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="binding" transfer-ownership="none">
-            <doc xml:space="preserve">the control binding</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcontrolbinding.c"
+                 line="241">the control binding</doc>
             <type name="ControlBinding" c:type="GstControlBinding*"/>
           </instance-parameter>
           <parameter name="object" transfer-ownership="none">
-            <doc xml:space="preserve">the object that has controlled properties</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcontrolbinding.c"
+                 line="242">the object that has controlled properties</doc>
             <type name="Object" c:type="GstObject*"/>
           </parameter>
           <parameter name="timestamp" transfer-ownership="none">
-            <doc xml:space="preserve">the time that should be processed</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcontrolbinding.c"
+                 line="243">the time that should be processed</doc>
             <type name="ClockTime" c:type="GstClockTime"/>
           </parameter>
           <parameter name="last_sync" transfer-ownership="none">
-            <doc xml:space="preserve">the last time this was called</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcontrolbinding.c"
+                 line="244">the last time this was called</doc>
             <type name="ClockTime" c:type="GstClockTime"/>
           </parameter>
         </parameters>
       </virtual-method>
       <method name="get_g_value_array"
               c:identifier="gst_control_binding_get_g_value_array">
-        <doc xml:space="preserve">Gets a number of #GValues for the given controlled property starting at the
+        <doc xml:space="preserve"
+             filename="gst/gstcontrolbinding.c"
+             line="366">Gets a number of #GValues for the given controlled property starting at the
 requested time. The array @values need to hold enough space for @n_values of
 #GValue.
 
 This function is useful if one wants to e.g. draw a graph of the control
 curve or apply a control curve sample by sample.</doc>
+        <source-position filename="gst/gstcontrolbinding.h" line="131"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the given array could be filled, %FALSE otherwise</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstcontrolbinding.c"
+               line="381">%TRUE if the given array could be filled, %FALSE otherwise</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="binding" transfer-ownership="none">
-            <doc xml:space="preserve">the control binding</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcontrolbinding.c"
+                 line="368">the control binding</doc>
             <type name="ControlBinding" c:type="GstControlBinding*"/>
           </instance-parameter>
           <parameter name="timestamp" transfer-ownership="none">
-            <doc xml:space="preserve">the time that should be processed</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcontrolbinding.c"
+                 line="369">the time that should be processed</doc>
             <type name="ClockTime" c:type="GstClockTime"/>
           </parameter>
           <parameter name="interval" transfer-ownership="none">
-            <doc xml:space="preserve">the time spacing between subsequent values</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcontrolbinding.c"
+                 line="370">the time spacing between subsequent values</doc>
             <type name="ClockTime" c:type="GstClockTime"/>
           </parameter>
           <parameter name="n_values" transfer-ownership="none">
-            <doc xml:space="preserve">the number of values</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcontrolbinding.c"
+                 line="371">the number of values</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="values" transfer-ownership="none">
-            <doc xml:space="preserve">array to put control-values in</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcontrolbinding.c"
+                 line="372">array to put control-values in</doc>
             <array length="2" zero-terminated="0" c:type="GValue*">
               <type name="GObject.Value" c:type="GValue"/>
             </array>
@@ -9254,19 +13786,28 @@ curve or apply a control curve sample by sample.</doc>
         </parameters>
       </method>
       <method name="get_value" c:identifier="gst_control_binding_get_value">
-        <doc xml:space="preserve">Gets the value for the given controlled property at the requested time.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstcontrolbinding.c"
+             line="277">Gets the value for the given controlled property at the requested time.</doc>
+        <source-position filename="gst/gstcontrolbinding.h" line="125"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">the GValue of the property at the given time,
+          <doc xml:space="preserve"
+               filename="gst/gstcontrolbinding.c"
+               line="284">the GValue of the property at the given time,
 or %NULL if the property isn't controlled.</doc>
           <type name="GObject.Value" c:type="GValue*"/>
         </return-value>
         <parameters>
           <instance-parameter name="binding" transfer-ownership="none">
-            <doc xml:space="preserve">the control binding</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcontrolbinding.c"
+                 line="279">the control binding</doc>
             <type name="ControlBinding" c:type="GstControlBinding*"/>
           </instance-parameter>
           <parameter name="timestamp" transfer-ownership="none">
-            <doc xml:space="preserve">the time the control-change should be read from</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcontrolbinding.c"
+                 line="280">the time the control-change should be read from</doc>
             <type name="ClockTime" c:type="GstClockTime"/>
           </parameter>
         </parameters>
@@ -9274,7 +13815,9 @@ or %NULL if the property isn't controlled.</doc>
       <method name="get_value_array"
               c:identifier="gst_control_binding_get_value_array"
               introspectable="0">
-        <doc xml:space="preserve">Gets a number of values for the given controlled property starting at the
+        <doc xml:space="preserve"
+             filename="gst/gstcontrolbinding.c"
+             line="307">Gets a number of values for the given controlled property starting at the
 requested time. The array @values need to hold enough space for @n_values of
 the same type as the objects property's type.
 
@@ -9284,29 +13827,42 @@ curve or apply a control curve sample by sample.
 The values are unboxed and ready to be used. The similar function
 gst_control_binding_get_g_value_array() returns the array as #GValues and is
 more suitable for bindings.</doc>
+        <source-position filename="gst/gstcontrolbinding.h" line="128"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the given array could be filled, %FALSE otherwise</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstcontrolbinding.c"
+               line="326">%TRUE if the given array could be filled, %FALSE otherwise</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="binding" transfer-ownership="none">
-            <doc xml:space="preserve">the control binding</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcontrolbinding.c"
+                 line="309">the control binding</doc>
             <type name="ControlBinding" c:type="GstControlBinding*"/>
           </instance-parameter>
           <parameter name="timestamp" transfer-ownership="none">
-            <doc xml:space="preserve">the time that should be processed</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcontrolbinding.c"
+                 line="310">the time that should be processed</doc>
             <type name="ClockTime" c:type="GstClockTime"/>
           </parameter>
           <parameter name="interval" transfer-ownership="none">
-            <doc xml:space="preserve">the time spacing between subsequent values</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcontrolbinding.c"
+                 line="311">the time spacing between subsequent values</doc>
             <type name="ClockTime" c:type="GstClockTime"/>
           </parameter>
           <parameter name="n_values" transfer-ownership="none">
-            <doc xml:space="preserve">the number of values</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcontrolbinding.c"
+                 line="312">the number of values</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="values" transfer-ownership="none">
-            <doc xml:space="preserve">array to put control-values in</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcontrolbinding.c"
+                 line="313">array to put control-values in</doc>
             <array length="2" zero-terminated="0" c:type="gpointer">
               <type name="gpointer" c:type="gpointer"/>
             </array>
@@ -9315,32 +13871,46 @@ more suitable for bindings.</doc>
       </method>
       <method name="is_disabled"
               c:identifier="gst_control_binding_is_disabled">
-        <doc xml:space="preserve">Check if the control binding is disabled.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the binding is inactive</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstcontrolbinding.c"
+             line="481">Check if the control binding is disabled.</doc>
+        <source-position filename="gst/gstcontrolbinding.h" line="137"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstcontrolbinding.c"
+               line="487">%TRUE if the binding is inactive</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="binding" transfer-ownership="none">
-            <doc xml:space="preserve">the control binding</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcontrolbinding.c"
+                 line="483">the control binding</doc>
             <type name="ControlBinding" c:type="GstControlBinding*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="set_disabled"
               c:identifier="gst_control_binding_set_disabled">
-        <doc xml:space="preserve">This function is used to disable a control binding for some time, i.e.
+        <doc xml:space="preserve"
+             filename="gst/gstcontrolbinding.c"
+             line="464">This function is used to disable a control binding for some time, i.e.
 gst_object_sync_values() will do nothing.</doc>
+        <source-position filename="gst/gstcontrolbinding.h" line="134"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="binding" transfer-ownership="none">
-            <doc xml:space="preserve">the control binding</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcontrolbinding.c"
+                 line="466">the control binding</doc>
             <type name="ControlBinding" c:type="GstControlBinding*"/>
           </instance-parameter>
           <parameter name="disabled" transfer-ownership="none">
-            <doc xml:space="preserve">boolean that specifies whether to disable the controller
+            <doc xml:space="preserve"
+                 filename="gst/gstcontrolbinding.c"
+                 line="467">boolean that specifies whether to disable the controller
 or not.</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
@@ -9348,31 +13918,44 @@ or not.</doc>
       </method>
       <method name="sync_values"
               c:identifier="gst_control_binding_sync_values">
-        <doc xml:space="preserve">Sets the property of the @object, according to the #GstControlSources that
+        <doc xml:space="preserve"
+             filename="gst/gstcontrolbinding.c"
+             line="239">Sets the property of the @object, according to the #GstControlSources that
 handle them and for the given timestamp.
 
 If this function fails, it is most likely the application developers fault.
 Most probably the control sources are not setup correctly.</doc>
+        <source-position filename="gst/gstcontrolbinding.h" line="122"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the controller value could be applied to the object
+          <doc xml:space="preserve"
+               filename="gst/gstcontrolbinding.c"
+               line="252">%TRUE if the controller value could be applied to the object
 property, %FALSE otherwise</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="binding" transfer-ownership="none">
-            <doc xml:space="preserve">the control binding</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcontrolbinding.c"
+                 line="241">the control binding</doc>
             <type name="ControlBinding" c:type="GstControlBinding*"/>
           </instance-parameter>
           <parameter name="object" transfer-ownership="none">
-            <doc xml:space="preserve">the object that has controlled properties</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcontrolbinding.c"
+                 line="242">the object that has controlled properties</doc>
             <type name="Object" c:type="GstObject*"/>
           </parameter>
           <parameter name="timestamp" transfer-ownership="none">
-            <doc xml:space="preserve">the time that should be processed</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcontrolbinding.c"
+                 line="243">the time that should be processed</doc>
             <type name="ClockTime" c:type="GstClockTime"/>
           </parameter>
           <parameter name="last_sync" transfer-ownership="none">
-            <doc xml:space="preserve">the last time this was called</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcontrolbinding.c"
+                 line="244">the last time this was called</doc>
             <type name="ClockTime" c:type="GstClockTime"/>
           </parameter>
         </parameters>
@@ -9393,11 +13976,15 @@ property, %FALSE otherwise</doc>
         <type name="Object" c:type="GstObject"/>
       </field>
       <field name="name">
-        <doc xml:space="preserve">name of the property of this binding</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstcontrolbinding.h"
+             line="59">name of the property of this binding</doc>
         <type name="utf8" c:type="gchar*"/>
       </field>
       <field name="pspec">
-        <doc xml:space="preserve">#GParamSpec for this property</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstcontrolbinding.h"
+             line="60">#GParamSpec for this property</doc>
         <type name="GObject.ParamSpec" c:type="GParamSpec*"/>
       </field>
       <field name="object" readable="0" private="1">
@@ -9407,14 +13994,16 @@ property, %FALSE otherwise</doc>
         <type name="gboolean" c:type="gboolean"/>
       </field>
       <union name="ABI" c:type="ABI">
+        <source-position filename="gst/gstcontrolbinding.h" line="85"/>
         <record name="abi" c:type="abi">
+          <source-position filename="gst/gstcontrolbinding.h" line="83"/>
           <field name="priv" writable="1">
             <type name="ControlBindingPrivate"
                   c:type="GstControlBindingPrivate*"/>
           </field>
         </record>
         <field name="_gst_reserved" writable="1">
-          <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+          <array zero-terminated="0" fixed-size="4">
             <type name="gpointer" c:type="gpointer"/>
           </array>
         </field>
@@ -9423,33 +14012,49 @@ property, %FALSE otherwise</doc>
     <record name="ControlBindingClass"
             c:type="GstControlBindingClass"
             glib:is-gtype-struct-for="ControlBinding">
-      <doc xml:space="preserve">The class structure of #GstControlBinding.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstcontrolbinding.h"
+           line="88">The class structure of #GstControlBinding.</doc>
+      <source-position filename="gst/gstcontrolbinding.h" line="112"/>
       <field name="parent_class">
-        <doc xml:space="preserve">Parent class</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstcontrolbinding.h"
+             line="90">Parent class</doc>
         <type name="ObjectClass" c:type="GstObjectClass"/>
       </field>
       <field name="sync_values">
         <callback name="sync_values">
+          <source-position filename="gst/gstcontrolbinding.h" line="105"/>
           <return-value transfer-ownership="none">
-            <doc xml:space="preserve">%TRUE if the controller value could be applied to the object
+            <doc xml:space="preserve"
+                 filename="gst/gstcontrolbinding.c"
+                 line="252">%TRUE if the controller value could be applied to the object
 property, %FALSE otherwise</doc>
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
           <parameters>
             <parameter name="binding" transfer-ownership="none">
-              <doc xml:space="preserve">the control binding</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstcontrolbinding.c"
+                   line="241">the control binding</doc>
               <type name="ControlBinding" c:type="GstControlBinding*"/>
             </parameter>
             <parameter name="object" transfer-ownership="none">
-              <doc xml:space="preserve">the object that has controlled properties</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstcontrolbinding.c"
+                   line="242">the object that has controlled properties</doc>
               <type name="Object" c:type="GstObject*"/>
             </parameter>
             <parameter name="timestamp" transfer-ownership="none">
-              <doc xml:space="preserve">the time that should be processed</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstcontrolbinding.c"
+                   line="243">the time that should be processed</doc>
               <type name="ClockTime" c:type="GstClockTime"/>
             </parameter>
             <parameter name="last_sync" transfer-ownership="none">
-              <doc xml:space="preserve">the last time this was called</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstcontrolbinding.c"
+                   line="244">the last time this was called</doc>
               <type name="ClockTime" c:type="GstClockTime"/>
             </parameter>
           </parameters>
@@ -9457,18 +14062,25 @@ property, %FALSE otherwise</doc>
       </field>
       <field name="get_value">
         <callback name="get_value">
+          <source-position filename="gst/gstcontrolbinding.h" line="106"/>
           <return-value transfer-ownership="full" nullable="1">
-            <doc xml:space="preserve">the GValue of the property at the given time,
+            <doc xml:space="preserve"
+                 filename="gst/gstcontrolbinding.c"
+                 line="284">the GValue of the property at the given time,
 or %NULL if the property isn't controlled.</doc>
             <type name="GObject.Value" c:type="GValue*"/>
           </return-value>
           <parameters>
             <parameter name="binding" transfer-ownership="none">
-              <doc xml:space="preserve">the control binding</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstcontrolbinding.c"
+                   line="279">the control binding</doc>
               <type name="ControlBinding" c:type="GstControlBinding*"/>
             </parameter>
             <parameter name="timestamp" transfer-ownership="none">
-              <doc xml:space="preserve">the time the control-change should be read from</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstcontrolbinding.c"
+                   line="280">the time the control-change should be read from</doc>
               <type name="ClockTime" c:type="GstClockTime"/>
             </parameter>
           </parameters>
@@ -9476,32 +14088,45 @@ or %NULL if the property isn't controlled.</doc>
       </field>
       <field name="get_value_array" introspectable="0">
         <callback name="get_value_array" introspectable="0">
+          <source-position filename="gst/gstcontrolbinding.h" line="107"/>
           <return-value transfer-ownership="none">
-            <doc xml:space="preserve">%TRUE if the given array could be filled, %FALSE otherwise</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcontrolbinding.c"
+                 line="326">%TRUE if the given array could be filled, %FALSE otherwise</doc>
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
           <parameters>
             <parameter name="binding" transfer-ownership="none">
-              <doc xml:space="preserve">the control binding</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstcontrolbinding.c"
+                   line="309">the control binding</doc>
               <type name="ControlBinding" c:type="GstControlBinding*"/>
             </parameter>
             <parameter name="timestamp" transfer-ownership="none">
-              <doc xml:space="preserve">the time that should be processed</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstcontrolbinding.c"
+                   line="310">the time that should be processed</doc>
               <type name="ClockTime" c:type="GstClockTime"/>
             </parameter>
             <parameter name="interval" transfer-ownership="none">
-              <doc xml:space="preserve">the time spacing between subsequent values</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstcontrolbinding.c"
+                   line="311">the time spacing between subsequent values</doc>
               <type name="ClockTime" c:type="GstClockTime"/>
             </parameter>
             <parameter name="n_values" transfer-ownership="none">
-              <doc xml:space="preserve">the number of values</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstcontrolbinding.c"
+                   line="312">the number of values</doc>
               <type name="guint" c:type="guint"/>
             </parameter>
             <parameter name="values"
                        transfer-ownership="none"
                        nullable="1"
                        allow-none="1">
-              <doc xml:space="preserve">array to put control-values in</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstcontrolbinding.c"
+                   line="313">array to put control-values in</doc>
               <array length="3" zero-terminated="0" c:type="gpointer">
                 <type name="gpointer" c:type="gpointer"/>
               </array>
@@ -9511,29 +14136,42 @@ or %NULL if the property isn't controlled.</doc>
       </field>
       <field name="get_g_value_array">
         <callback name="get_g_value_array">
+          <source-position filename="gst/gstcontrolbinding.h" line="108"/>
           <return-value transfer-ownership="none">
-            <doc xml:space="preserve">%TRUE if the given array could be filled, %FALSE otherwise</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcontrolbinding.c"
+                 line="381">%TRUE if the given array could be filled, %FALSE otherwise</doc>
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
           <parameters>
             <parameter name="binding" transfer-ownership="none">
-              <doc xml:space="preserve">the control binding</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstcontrolbinding.c"
+                   line="368">the control binding</doc>
               <type name="ControlBinding" c:type="GstControlBinding*"/>
             </parameter>
             <parameter name="timestamp" transfer-ownership="none">
-              <doc xml:space="preserve">the time that should be processed</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstcontrolbinding.c"
+                   line="369">the time that should be processed</doc>
               <type name="ClockTime" c:type="GstClockTime"/>
             </parameter>
             <parameter name="interval" transfer-ownership="none">
-              <doc xml:space="preserve">the time spacing between subsequent values</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstcontrolbinding.c"
+                   line="370">the time spacing between subsequent values</doc>
               <type name="ClockTime" c:type="GstClockTime"/>
             </parameter>
             <parameter name="n_values" transfer-ownership="none">
-              <doc xml:space="preserve">the number of values</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstcontrolbinding.c"
+                   line="371">the number of values</doc>
               <type name="guint" c:type="guint"/>
             </parameter>
             <parameter name="values" transfer-ownership="none">
-              <doc xml:space="preserve">array to put control-values in</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstcontrolbinding.c"
+                   line="372">array to put control-values in</doc>
               <array length="3" zero-terminated="0" c:type="GValue*">
                 <type name="GObject.Value" c:type="GValue"/>
               </array>
@@ -9542,12 +14180,17 @@ or %NULL if the property isn't controlled.</doc>
         </callback>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
     </record>
     <callback name="ControlBindingConvert" c:type="GstControlBindingConvert">
+      <attribute name="doc.skip" value="true"/>
+      <doc xml:space="preserve"
+           filename="gst/gstcontrolbinding.h"
+           line="51">FIXME(2.0): remove, this is unused</doc>
+      <source-position filename="gst/gstcontrolbinding.h" line="55"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
@@ -9566,6 +14209,7 @@ or %NULL if the property isn't controlled.</doc>
     <record name="ControlBindingPrivate"
             c:type="GstControlBindingPrivate"
             disguised="1">
+      <source-position filename="gst/gstcontrolbinding.h" line="47"/>
     </record>
     <class name="ControlSource"
            c:symbol-prefix="control_source"
@@ -9575,7 +14219,9 @@ or %NULL if the property isn't controlled.</doc>
            glib:type-name="GstControlSource"
            glib:get-type="gst_control_source_get_type"
            glib:type-struct="ControlSourceClass">
-      <doc xml:space="preserve">The #GstControlSource is a base class for control value sources that could
+      <doc xml:space="preserve"
+           filename="gst/gstcontrolsource.c"
+           line="23">The #GstControlSource is a base class for control value sources that could
 be used to get timestamp-value pairs. A control source essentially is a
 function over time.
 
@@ -9588,58 +14234,85 @@ For implementing a new #GstControlSource one has to implement
 #GstControlSourceGetValue and #GstControlSourceGetValueArray functions.
 These are then used by gst_control_source_get_value() and
 gst_control_source_get_value_array() to get values for specific timestamps.</doc>
+      <source-position filename="gst/gstcontrolsource.h" line="126"/>
       <method name="control_source_get_value"
               c:identifier="gst_control_source_get_value">
-        <doc xml:space="preserve">Gets the value for this #GstControlSource at a given timestamp.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%FALSE if the value couldn't be returned, %TRUE otherwise.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstcontrolsource.c"
+             line="72">Gets the value for this #GstControlSource at a given timestamp.</doc>
+        <source-position filename="gst/gstcontrolsource.h" line="134"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstcontrolsource.c"
+               line="80">%FALSE if the value couldn't be returned, %TRUE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="self" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstControlSource object</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcontrolsource.c"
+                 line="74">the #GstControlSource object</doc>
             <type name="ControlSource" c:type="GstControlSource*"/>
           </instance-parameter>
           <parameter name="timestamp" transfer-ownership="none">
-            <doc xml:space="preserve">the time for which the value should be returned</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcontrolsource.c"
+                 line="75">the time for which the value should be returned</doc>
             <type name="ClockTime" c:type="GstClockTime"/>
           </parameter>
           <parameter name="value"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">the value</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcontrolsource.c"
+                 line="76">the value</doc>
             <type name="gdouble" c:type="gdouble*"/>
           </parameter>
         </parameters>
       </method>
       <method name="control_source_get_value_array"
               c:identifier="gst_control_source_get_value_array">
-        <doc xml:space="preserve">Gets an array of values for for this #GstControlSource. Values that are
+        <doc xml:space="preserve"
+             filename="gst/gstcontrolsource.c"
+             line="96">Gets an array of values for for this #GstControlSource. Values that are
 undefined contain NANs.</doc>
+        <source-position filename="gst/gstcontrolsource.h" line="137"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the given array could be filled, %FALSE otherwise</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstcontrolsource.c"
+               line="107">%TRUE if the given array could be filled, %FALSE otherwise</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="self" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstControlSource object</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcontrolsource.c"
+                 line="98">the #GstControlSource object</doc>
             <type name="ControlSource" c:type="GstControlSource*"/>
           </instance-parameter>
           <parameter name="timestamp" transfer-ownership="none">
-            <doc xml:space="preserve">the first timestamp</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcontrolsource.c"
+                 line="99">the first timestamp</doc>
             <type name="ClockTime" c:type="GstClockTime"/>
           </parameter>
           <parameter name="interval" transfer-ownership="none">
-            <doc xml:space="preserve">the time steps</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcontrolsource.c"
+                 line="100">the time steps</doc>
             <type name="ClockTime" c:type="GstClockTime"/>
           </parameter>
           <parameter name="n_values" transfer-ownership="none">
-            <doc xml:space="preserve">the number of values to fetch</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcontrolsource.c"
+                 line="101">the number of values to fetch</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="values" transfer-ownership="none">
-            <doc xml:space="preserve">array to put control-values in</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcontrolsource.c"
+                 line="102">array to put control-values in</doc>
             <array length="2" zero-terminated="0" c:type="gdouble*">
               <type name="gdouble" c:type="gdouble"/>
             </array>
@@ -9650,16 +14323,20 @@ undefined contain NANs.</doc>
         <type name="Object" c:type="GstObject"/>
       </field>
       <field name="get_value">
-        <doc xml:space="preserve">Function for returning a value for a given timestamp</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstcontrolsource.h"
+             line="97">Function for returning a value for a given timestamp</doc>
         <type name="ControlSourceGetValue" c:type="GstControlSourceGetValue"/>
       </field>
       <field name="get_value_array">
-        <doc xml:space="preserve">Function for returning a values array for a given timestamp</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstcontrolsource.h"
+             line="98">Function for returning a values array for a given timestamp</doc>
         <type name="ControlSourceGetValueArray"
               c:type="GstControlSourceGetValueArray"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -9667,64 +14344,95 @@ undefined contain NANs.</doc>
     <record name="ControlSourceClass"
             c:type="GstControlSourceClass"
             glib:is-gtype-struct-for="ControlSource">
-      <doc xml:space="preserve">The class structure of #GstControlSource.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstcontrolsource.h"
+           line="113">The class structure of #GstControlSource.</doc>
+      <source-position filename="gst/gstcontrolsource.h" line="126"/>
       <field name="parent_class">
-        <doc xml:space="preserve">Parent class</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstcontrolsource.h"
+             line="115">Parent class</doc>
         <type name="ObjectClass" c:type="GstObjectClass"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
     </record>
     <callback name="ControlSourceGetValue" c:type="GstControlSourceGetValue">
-      <doc xml:space="preserve">Function for returning a value for a given timestamp.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstcontrolsource.h"
+           line="65">Function for returning a value for a given timestamp.</doc>
+      <source-position filename="gst/gstcontrolsource.h" line="76"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE if the value was successfully calculated.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstcontrolsource.h"
+             line="73">%TRUE if the value was successfully calculated.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="self" transfer-ownership="none">
-          <doc xml:space="preserve">the #GstControlSource instance</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstcontrolsource.h"
+               line="67">the #GstControlSource instance</doc>
           <type name="ControlSource" c:type="GstControlSource*"/>
         </parameter>
         <parameter name="timestamp" transfer-ownership="none">
-          <doc xml:space="preserve">timestamp for which a value should be calculated</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstcontrolsource.h"
+               line="68">timestamp for which a value should be calculated</doc>
           <type name="ClockTime" c:type="GstClockTime"/>
         </parameter>
         <parameter name="value" transfer-ownership="none">
-          <doc xml:space="preserve">a value which will be set to the result.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstcontrolsource.h"
+               line="69">a value which will be set to the result.</doc>
           <type name="gdouble" c:type="gdouble*"/>
         </parameter>
       </parameters>
     </callback>
     <callback name="ControlSourceGetValueArray"
               c:type="GstControlSourceGetValueArray">
-      <doc xml:space="preserve">Function for returning an array of values for starting at a given timestamp.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstcontrolsource.h"
+           line="79">Function for returning an array of values for starting at a given timestamp.</doc>
+      <source-position filename="gst/gstcontrolsource.h" line="92"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE if the values were successfully calculated.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstcontrolsource.h"
+             line="89">%TRUE if the values were successfully calculated.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="self" transfer-ownership="none">
-          <doc xml:space="preserve">the #GstControlSource instance</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstcontrolsource.h"
+               line="81">the #GstControlSource instance</doc>
           <type name="ControlSource" c:type="GstControlSource*"/>
         </parameter>
         <parameter name="timestamp" transfer-ownership="none">
-          <doc xml:space="preserve">timestamp for which a value should be calculated</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstcontrolsource.h"
+               line="82">timestamp for which a value should be calculated</doc>
           <type name="ClockTime" c:type="GstClockTime"/>
         </parameter>
         <parameter name="interval" transfer-ownership="none">
-          <doc xml:space="preserve">the time spacing between subsequent values</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstcontrolsource.h"
+               line="83">the time spacing between subsequent values</doc>
           <type name="ClockTime" c:type="GstClockTime"/>
         </parameter>
         <parameter name="n_values" transfer-ownership="none">
-          <doc xml:space="preserve">the number of values</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstcontrolsource.h"
+               line="84">the number of values</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
         <parameter name="values" transfer-ownership="none">
-          <doc xml:space="preserve">array to put control-values in</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstcontrolsource.h"
+               line="85">array to put control-values in</doc>
           <type name="gdouble" c:type="gdouble*"/>
         </parameter>
       </parameters>
@@ -9734,131 +14442,613 @@ undefined contain NANs.</doc>
                  glib:get-type="gst_core_error_get_type"
                  c:type="GstCoreError"
                  glib:error-domain="gst-core-error-quark">
-      <doc xml:space="preserve">Core errors are errors inside the core GStreamer library.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gsterror.h"
+           line="37">Core errors are errors inside the core GStreamer library.</doc>
       <member name="failed"
               value="1"
               c:identifier="GST_CORE_ERROR_FAILED"
               glib:nick="failed">
-        <doc xml:space="preserve">a general error which doesn't fit in any other
+        <doc xml:space="preserve"
+             filename="gst/gsterror.h"
+             line="39">a general error which doesn't fit in any other
 category.  Make sure you add a custom message to the error call.</doc>
       </member>
       <member name="too_lazy"
               value="2"
               c:identifier="GST_CORE_ERROR_TOO_LAZY"
               glib:nick="too-lazy">
-        <doc xml:space="preserve">do not use this except as a placeholder for
+        <doc xml:space="preserve"
+             filename="gst/gsterror.h"
+             line="41">do not use this except as a placeholder for
 deciding where to go while developing code.</doc>
       </member>
       <member name="not_implemented"
               value="3"
               c:identifier="GST_CORE_ERROR_NOT_IMPLEMENTED"
               glib:nick="not-implemented">
-        <doc xml:space="preserve">use this when you do not want to implement
+        <doc xml:space="preserve"
+             filename="gst/gsterror.h"
+             line="43">use this when you do not want to implement
 this functionality yet.</doc>
       </member>
       <member name="state_change"
               value="4"
               c:identifier="GST_CORE_ERROR_STATE_CHANGE"
               glib:nick="state-change">
-        <doc xml:space="preserve">used for state change errors.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsterror.h"
+             line="45">used for state change errors.</doc>
       </member>
       <member name="pad"
               value="5"
               c:identifier="GST_CORE_ERROR_PAD"
               glib:nick="pad">
-        <doc xml:space="preserve">used for pad-related errors.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsterror.h"
+             line="46">used for pad-related errors.</doc>
       </member>
       <member name="thread"
               value="6"
               c:identifier="GST_CORE_ERROR_THREAD"
               glib:nick="thread">
-        <doc xml:space="preserve">used for thread-related errors.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsterror.h"
+             line="47">used for thread-related errors.</doc>
       </member>
       <member name="negotiation"
               value="7"
               c:identifier="GST_CORE_ERROR_NEGOTIATION"
               glib:nick="negotiation">
-        <doc xml:space="preserve">used for negotiation-related errors.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsterror.h"
+             line="48">used for negotiation-related errors.</doc>
       </member>
       <member name="event"
               value="8"
               c:identifier="GST_CORE_ERROR_EVENT"
               glib:nick="event">
-        <doc xml:space="preserve">used for event-related errors.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsterror.h"
+             line="49">used for event-related errors.</doc>
       </member>
       <member name="seek"
               value="9"
               c:identifier="GST_CORE_ERROR_SEEK"
               glib:nick="seek">
-        <doc xml:space="preserve">used for seek-related errors.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsterror.h"
+             line="50">used for seek-related errors.</doc>
       </member>
       <member name="caps"
               value="10"
               c:identifier="GST_CORE_ERROR_CAPS"
               glib:nick="caps">
-        <doc xml:space="preserve">used for caps-related errors.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsterror.h"
+             line="51">used for caps-related errors.</doc>
       </member>
       <member name="tag"
               value="11"
               c:identifier="GST_CORE_ERROR_TAG"
               glib:nick="tag">
-        <doc xml:space="preserve">used for negotiation-related errors.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsterror.h"
+             line="52">used for negotiation-related errors.</doc>
       </member>
       <member name="missing_plugin"
               value="12"
               c:identifier="GST_CORE_ERROR_MISSING_PLUGIN"
               glib:nick="missing-plugin">
-        <doc xml:space="preserve">used if a plugin is missing.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsterror.h"
+             line="53">used if a plugin is missing.</doc>
       </member>
       <member name="clock"
               value="13"
               c:identifier="GST_CORE_ERROR_CLOCK"
               glib:nick="clock">
-        <doc xml:space="preserve">used for clock related errors.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsterror.h"
+             line="54">used for clock related errors.</doc>
       </member>
       <member name="disabled"
               value="14"
               c:identifier="GST_CORE_ERROR_DISABLED"
               glib:nick="disabled">
-        <doc xml:space="preserve">used if functionality has been disabled at
+        <doc xml:space="preserve"
+             filename="gst/gsterror.h"
+             line="55">used if functionality has been disabled at
                           compile time.</doc>
       </member>
       <member name="num_errors"
               value="15"
               c:identifier="GST_CORE_ERROR_NUM_ERRORS"
               glib:nick="num-errors">
-        <doc xml:space="preserve">the number of core error types.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsterror.h"
+             line="57">the number of core error types.</doc>
       </member>
       <function name="quark" c:identifier="gst_core_error_quark">
+        <attribute name="doc.skip" value="true"/>
         <return-value transfer-ownership="none">
           <type name="GLib.Quark" c:type="GQuark"/>
         </return-value>
       </function>
     </enumeration>
     <constant name="DEBUG_BG_MASK" value="240" c:type="GST_DEBUG_BG_MASK">
+      <source-position filename="gst/gstinfo.h" line="209"/>
       <type name="gint" c:type="gint"/>
     </constant>
+    <function-macro name="DEBUG_BIN_TO_DOT_FILE"
+                    c:identifier="GST_DEBUG_BIN_TO_DOT_FILE"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstdebugutils.h"
+           line="75">To aid debugging applications one can use this method to write out the whole
+network of gstreamer elements that form the pipeline into an dot file.
+This file can be processed with graphviz to get an image, like this:
+|[
+ dot -Tpng -oimage.png graph_lowlevel.dot
+]|
+There is also a utility called xdot which allows you to view the dot file
+directly without converting it first.
+
+The macro is only active if the environment variable GST_DEBUG_DUMP_DOT_DIR
+is set to a basepath (e.g. /tmp), and the GStreamer debugging subsystem is
+enabled (i.e., no use of `./configure --disable-gst-debug')</doc>
+      <source-position filename="gst/gstdebugutils.h" line="95"/>
+      <parameters>
+        <parameter name="bin">
+          <doc xml:space="preserve"
+               filename="gst/gstdebugutils.h"
+               line="77">the top-level pipeline that should be analyzed</doc>
+        </parameter>
+        <parameter name="details">
+          <doc xml:space="preserve"
+               filename="gst/gstdebugutils.h"
+               line="78">details to show in the graph, e.g. #GST_DEBUG_GRAPH_SHOW_ALL or
+   one or more other #GstDebugGraphDetails flags.</doc>
+        </parameter>
+        <parameter name="file_name">
+          <doc xml:space="preserve"
+               filename="gst/gstdebugutils.h"
+               line="80">output base filename (e.g. "myplayer")</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="DEBUG_BIN_TO_DOT_FILE_WITH_TS"
+                    c:identifier="GST_DEBUG_BIN_TO_DOT_FILE_WITH_TS"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstdebugutils.h"
+           line="97">This works like GST_DEBUG_BIN_TO_DOT_FILE(), but adds the current timestamp
+to the filename, so that it can be used to take multiple snapshots.</doc>
+      <source-position filename="gst/gstdebugutils.h" line="107"/>
+      <parameters>
+        <parameter name="bin">
+          <doc xml:space="preserve"
+               filename="gst/gstdebugutils.h"
+               line="99">the top-level pipeline that should be analyzed</doc>
+        </parameter>
+        <parameter name="details">
+          <doc xml:space="preserve"
+               filename="gst/gstdebugutils.h"
+               line="100">details to show in the graph, e.g. #GST_DEBUG_GRAPH_SHOW_ALL or
+   one or more other #GstDebugGraphDetails flags.</doc>
+        </parameter>
+        <parameter name="file_name">
+          <doc xml:space="preserve"
+               filename="gst/gstdebugutils.h"
+               line="102">output base filename (e.g. "myplayer")</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="DEBUG_CATEGORY"
+                    c:identifier="GST_DEBUG_CATEGORY"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstinfo.h"
+           line="531">Defines a GstDebugCategory variable.
+This macro expands to nothing if debugging is disabled.</doc>
+      <source-position filename="gst/gstinfo.h" line="538"/>
+      <parameters>
+        <parameter name="cat">
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.h"
+               line="533">the category</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="DEBUG_CATEGORY_EXTERN"
+                    c:identifier="GST_DEBUG_CATEGORY_EXTERN"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstinfo.h"
+           line="539">Declares a GstDebugCategory variable as extern. Use in header files.
+This macro expands to nothing if debugging is disabled.</doc>
+      <source-position filename="gst/gstinfo.h" line="546"/>
+      <parameters>
+        <parameter name="cat">
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.h"
+               line="541">the category</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="DEBUG_CATEGORY_GET"
+                    c:identifier="GST_DEBUG_CATEGORY_GET"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstinfo.h"
+           line="591">Looks up an existing #GstDebugCategory by its @name and sets @cat. If the
+category is not found, but GST_CAT_DEFAULT is defined, that is assigned to
+@cat. Otherwise @cat will be %NULL.
+
+|[&lt;!-- language="C" --&gt;
+GST_DEBUG_CATEGORY_STATIC (gst_myplugin_debug);
+#define GST_CAT_DEFAULT gst_myplugin_debug
+GST_DEBUG_CATEGORY_STATIC (GST_CAT_PERFORMANCE);
+...
+GST_DEBUG_CATEGORY_INIT (gst_myplugin_debug, "myplugin", 0, "nice element");
+GST_DEBUG_CATEGORY_GET (GST_CAT_PERFORMANCE, "GST_PERFORMANCE");
+]|</doc>
+      <source-position filename="gst/gstinfo.h" line="610"/>
+      <parameters>
+        <parameter name="cat">
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.h"
+               line="593">the category to initialize.</doc>
+        </parameter>
+        <parameter name="name">
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.h"
+               line="594">log category name</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="DEBUG_CATEGORY_INIT"
+                    c:identifier="GST_DEBUG_CATEGORY_INIT"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstinfo.h"
+           line="557">Initializes a new #GstDebugCategory with the given properties and set to
+the default threshold.
+
+&gt; This macro expands to nothing if debugging is disabled.
+&gt;
+&gt; When naming your category, please follow the following conventions to ensure
+&gt; that the pattern matching for categories works as expected. It is not
+&gt; earth-shattering if you don't follow these conventions, but it would be nice
+&gt; for everyone.
+&gt;
+&gt; If you define a category for a plugin or a feature of it, name the category
+&gt; like the feature. So if you wanted to write a "filesrc" element, you would
+&gt; name the category "filesrc". Use lowercase letters only.
+&gt; If you define more than one category for the same element, append an
+&gt; underscore and an identifier to your categories, like this: "filesrc_cache"
+&gt;
+&gt; If you create a library or an application using debugging categories, use a
+&gt; common prefix followed by an underscore for all your categories. GStreamer
+&gt; uses the GST prefix so GStreamer categories look like "GST_STATES". Be sure
+&gt; to include uppercase letters.</doc>
+      <source-position filename="gst/gstinfo.h" line="586"/>
+      <parameters>
+        <parameter name="cat">
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.h"
+               line="559">the category to initialize.</doc>
+        </parameter>
+        <parameter name="name">
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.h"
+               line="560">the name of the category.</doc>
+        </parameter>
+        <parameter name="color">
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.h"
+               line="561">the colors to use for a color representation or 0 for no color.</doc>
+        </parameter>
+        <parameter name="description">
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.h"
+               line="562">optional description of the category.</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="DEBUG_CATEGORY_STATIC"
+                    c:identifier="GST_DEBUG_CATEGORY_STATIC"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstinfo.h"
+           line="548">Defines a static GstDebugCategory variable.
+This macro expands to nothing if debugging is disabled.</doc>
+      <source-position filename="gst/gstinfo.h" line="555"/>
+      <parameters>
+        <parameter name="cat">
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.h"
+               line="550">the category</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
     <constant name="DEBUG_FG_MASK" value="15" c:type="GST_DEBUG_FG_MASK">
+      <source-position filename="gst/gstinfo.h" line="208"/>
       <type name="gint" c:type="gint"/>
     </constant>
     <constant name="DEBUG_FORMAT_MASK"
               value="65280"
               c:type="GST_DEBUG_FORMAT_MASK">
+      <source-position filename="gst/gstinfo.h" line="210"/>
       <type name="gint" c:type="gint"/>
     </constant>
+    <function-macro name="DEBUG_FUNCPTR"
+                    c:identifier="GST_DEBUG_FUNCPTR"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstinfo.h"
+           line="1442">Register a pointer to a function with its name, so it can later be used by
+GST_DEBUG_FUNCPTR_NAME().</doc>
+      <source-position filename="gst/gstinfo.h" line="1451"/>
+      <parameters>
+        <parameter name="ptr">
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.h"
+               line="1444">pointer to the function to register</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="DEBUG_FUNCPTR_NAME"
+                    c:identifier="GST_DEBUG_FUNCPTR_NAME"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstinfo.h"
+           line="1454">Retrieves the name of the function, if it was previously registered with
+GST_DEBUG_FUNCPTR(). If not, it returns a description of the pointer.
+
+This macro returns a constant string which must not be modified or
+freed by the caller.</doc>
+      <source-position filename="gst/gstinfo.h" line="1464"/>
+      <parameters>
+        <parameter name="ptr">
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.h"
+               line="1456">address of the function of which to look up the name</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="DEBUG_PAD_NAME"
+                    c:identifier="GST_DEBUG_PAD_NAME"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstinfo.h"
+           line="243">Evaluates to 2 strings, that describe the pad. Often used in debugging
+statements.</doc>
+      <source-position filename="gst/gstinfo.h" line="250"/>
+      <parameters>
+        <parameter name="pad">
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.h"
+               line="245">The pad to debug.</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="DEBUG_REGISTER_FUNCPTR"
+                    c:identifier="GST_DEBUG_REGISTER_FUNCPTR"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstinfo.h"
+           line="1431">Register a pointer to a function with its name, so it can later be used by
+GST_DEBUG_FUNCPTR_NAME().
+
+Use this variant of #GST_DEBUG_FUNCPTR if you do not need to use @ptr.</doc>
+      <source-position filename="gst/gstinfo.h" line="1440"/>
+      <parameters>
+        <parameter name="ptr">
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.h"
+               line="1433">pointer to the function to register</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="DEFINE_MINI_OBJECT_TYPE"
+                    c:identifier="GST_DEFINE_MINI_OBJECT_TYPE"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstminiobject.h"
+           line="293">Define a new mini-object type with the given name</doc>
+      <source-position filename="gst/gstminiobject.h" line="300"/>
+      <parameters>
+        <parameter name="TypeName">
+          <doc xml:space="preserve"
+               filename="gst/gstminiobject.h"
+               line="295">name of the new type in CamelCase</doc>
+        </parameter>
+        <parameter name="type_name">
+          <doc xml:space="preserve"
+               filename="gst/gstminiobject.h"
+               line="296">name of the new type</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="DEVICE" c:identifier="GST_DEVICE" introspectable="0">
+      <source-position filename="gst/gstdevice.h" line="41"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="DEVICE_CAST"
+                    c:identifier="GST_DEVICE_CAST"
+                    introspectable="0">
+      <source-position filename="gst/gstdevice.h" line="43"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="DEVICE_CLASS"
+                    c:identifier="GST_DEVICE_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gstdevice.h" line="42"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="DEVICE_GET_CLASS"
+                    c:identifier="GST_DEVICE_GET_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gstdevice.h" line="40"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="DEVICE_MONITOR"
+                    c:identifier="GST_DEVICE_MONITOR"
+                    introspectable="0">
+      <source-position filename="gst/gstdevicemonitor.h" line="41"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="DEVICE_MONITOR_CAST"
+                    c:identifier="GST_DEVICE_MONITOR_CAST"
+                    introspectable="0">
+      <source-position filename="gst/gstdevicemonitor.h" line="43"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="DEVICE_MONITOR_CLASS"
+                    c:identifier="GST_DEVICE_MONITOR_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gstdevicemonitor.h" line="42"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="DEVICE_MONITOR_GET_CLASS"
+                    c:identifier="GST_DEVICE_MONITOR_GET_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gstdevicemonitor.h" line="40"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="DEVICE_PROVIDER"
+                    c:identifier="GST_DEVICE_PROVIDER"
+                    introspectable="0">
+      <source-position filename="gst/gstdeviceprovider.h" line="41"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="DEVICE_PROVIDER_CAST"
+                    c:identifier="GST_DEVICE_PROVIDER_CAST"
+                    introspectable="0">
+      <source-position filename="gst/gstdeviceprovider.h" line="43"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="DEVICE_PROVIDER_CLASS"
+                    c:identifier="GST_DEVICE_PROVIDER_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gstdeviceprovider.h" line="42"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="DEVICE_PROVIDER_FACTORY"
+                    c:identifier="GST_DEVICE_PROVIDER_FACTORY"
+                    introspectable="0">
+      <source-position filename="gst/gstdeviceproviderfactory.h" line="55"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="DEVICE_PROVIDER_FACTORY_CAST"
+                    c:identifier="GST_DEVICE_PROVIDER_FACTORY_CAST"
+                    introspectable="0">
+      <source-position filename="gst/gstdeviceproviderfactory.h" line="61"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="DEVICE_PROVIDER_FACTORY_CLASS"
+                    c:identifier="GST_DEVICE_PROVIDER_FACTORY_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gstdeviceproviderfactory.h" line="57"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="DEVICE_PROVIDER_GET_CLASS"
+                    c:identifier="GST_DEVICE_PROVIDER_GET_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gstdeviceprovider.h" line="40"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="DYNAMIC_TYPE_CLASS"
+                    c:identifier="GST_DYNAMIC_TYPE_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gstdynamictypefactory.h" line="42"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="DYNAMIC_TYPE_FACTORY"
+                    c:identifier="GST_DYNAMIC_TYPE_FACTORY"
+                    introspectable="0">
+      <source-position filename="gst/gstdynamictypefactory.h" line="40"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="DYNAMIC_TYPE_FACTORY_CAST"
+                    c:identifier="GST_DYNAMIC_TYPE_FACTORY_CAST"
+                    introspectable="0">
+      <source-position filename="gst/gstdynamictypefactory.h" line="46"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
     <record name="DateTime"
             c:type="GstDateTime"
             glib:type-name="GstDateTime"
             glib:get-type="gst_date_time_get_type"
             c:symbol-prefix="date_time">
-      <doc xml:space="preserve">Struct to store date, time and timezone information altogether.
+      <doc xml:space="preserve"
+           filename="gst/gstdatetime.c"
+           line="32">Struct to store date, time and timezone information altogether.
 #GstDateTime is refcounted and immutable.
 
 Date information is handled using the proleptic Gregorian calendar.
 
 Provides basic creation functions and accessor functions to its fields.</doc>
+      <source-position filename="gst/gstdatetime.h" line="40"/>
       <constructor name="new" c:identifier="gst_date_time_new">
-        <doc xml:space="preserve">Creates a new #GstDateTime using the date and times in the gregorian calendar
+        <doc xml:space="preserve"
+             filename="gst/gstdatetime.c"
+             line="634">Creates a new #GstDateTime using the date and times in the gregorian calendar
 in the supplied timezone.
 
 @year should be from 1 to 9999, @month should be from 1 to 12, @day from
@@ -9874,61 +15064,87 @@ if @month == -1, then #GstDateTime will created only for @year. If
 so on.
 
 Free-function: gst_date_time_unref</doc>
+        <source-position filename="gst/gstdatetime.h" line="132"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the newly created #GstDateTime</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstdatetime.c"
+               line="661">the newly created #GstDateTime</doc>
           <type name="DateTime" c:type="GstDateTime*"/>
         </return-value>
         <parameters>
           <parameter name="tzoffset" transfer-ownership="none">
-            <doc xml:space="preserve">Offset from UTC in hours.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdatetime.c"
+                 line="636">Offset from UTC in hours.</doc>
             <type name="gfloat" c:type="gfloat"/>
           </parameter>
           <parameter name="year" transfer-ownership="none">
-            <doc xml:space="preserve">the gregorian year</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdatetime.c"
+                 line="637">the gregorian year</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="month" transfer-ownership="none">
-            <doc xml:space="preserve">the gregorian month</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdatetime.c"
+                 line="638">the gregorian month</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="day" transfer-ownership="none">
-            <doc xml:space="preserve">the day of the gregorian month</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdatetime.c"
+                 line="639">the day of the gregorian month</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="hour" transfer-ownership="none">
-            <doc xml:space="preserve">the hour of the day</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdatetime.c"
+                 line="640">the hour of the day</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="minute" transfer-ownership="none">
-            <doc xml:space="preserve">the minute of the hour</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdatetime.c"
+                 line="641">the minute of the hour</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="seconds" transfer-ownership="none">
-            <doc xml:space="preserve">the second of the minute</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdatetime.c"
+                 line="642">the second of the minute</doc>
             <type name="gdouble" c:type="gdouble"/>
           </parameter>
         </parameters>
       </constructor>
       <constructor name="new_from_g_date_time"
                    c:identifier="gst_date_time_new_from_g_date_time">
-        <doc xml:space="preserve">Creates a new #GstDateTime from a #GDateTime object.
+        <doc xml:space="preserve"
+             filename="gst/gstdatetime.c"
+             line="71">Creates a new #GstDateTime from a #GDateTime object.
 
 Free-function: gst_date_time_unref</doc>
+        <source-position filename="gst/gstdatetime.h" line="153"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">a newly created #GstDateTime,
+          <doc xml:space="preserve"
+               filename="gst/gstdatetime.c"
+               line="79">a newly created #GstDateTime,
 or %NULL on error</doc>
           <type name="DateTime" c:type="GstDateTime*"/>
         </return-value>
         <parameters>
           <parameter name="dt" transfer-ownership="full">
-            <doc xml:space="preserve">the #GDateTime. The new #GstDateTime takes ownership.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdatetime.c"
+                 line="73">the #GDateTime. The new #GstDateTime takes ownership.</doc>
             <type name="GLib.DateTime" c:type="GDateTime*"/>
           </parameter>
         </parameters>
       </constructor>
       <constructor name="new_from_iso8601_string"
                    c:identifier="gst_date_time_new_from_iso8601_string">
-        <doc xml:space="preserve">Tries to parse common variants of ISO-8601 datetime strings into a
+        <doc xml:space="preserve"
+             filename="gst/gstdatetime.c"
+             line="800">Tries to parse common variants of ISO-8601 datetime strings into a
 #GstDateTime. Possible input formats are (for example):
 2012-06-30T22:46:43Z, 2012, 2012-06, 2012-06-30, 2012-06-30T22:46:43-0430,
 2012-06-30T22:46Z, 2012-06-30T22:46-0430, 2012-06-30 22:46,
@@ -9938,55 +15154,122 @@ If no date is provided, it is assumed to be "today" in the timezone
 provided (if any), otherwise UTC.
 
 Free-function: gst_date_time_unref</doc>
+        <source-position filename="gst/gstdatetime.h" line="147"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">a newly created #GstDateTime,
+          <doc xml:space="preserve"
+               filename="gst/gstdatetime.c"
+               line="815">a newly created #GstDateTime,
 or %NULL on error</doc>
           <type name="DateTime" c:type="GstDateTime*"/>
         </return-value>
         <parameters>
           <parameter name="string" transfer-ownership="none">
-            <doc xml:space="preserve">ISO 8601-formatted datetime string.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdatetime.c"
+                 line="802">ISO 8601-formatted datetime string.</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </constructor>
       <constructor name="new_from_unix_epoch_local_time"
                    c:identifier="gst_date_time_new_from_unix_epoch_local_time">
-        <doc xml:space="preserve">Creates a new #GstDateTime using the time since Jan 1, 1970 specified by
+        <doc xml:space="preserve"
+             filename="gst/gstdatetime.c"
+             line="412">Creates a new #GstDateTime using the time since Jan 1, 1970 specified by
 @secs. The #GstDateTime is in the local timezone.
 
 Free-function: gst_date_time_unref</doc>
+        <source-position filename="gst/gstdatetime.h" line="103"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the newly created #GstDateTime</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstdatetime.c"
+               line="421">the newly created #GstDateTime</doc>
           <type name="DateTime" c:type="GstDateTime*"/>
         </return-value>
         <parameters>
           <parameter name="secs" transfer-ownership="none">
-            <doc xml:space="preserve">seconds from the Unix epoch</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdatetime.c"
+                 line="414">seconds from the Unix epoch</doc>
+            <type name="gint64" c:type="gint64"/>
+          </parameter>
+        </parameters>
+      </constructor>
+      <constructor name="new_from_unix_epoch_local_time_usecs"
+                   c:identifier="gst_date_time_new_from_unix_epoch_local_time_usecs"
+                   version="1.18">
+        <doc xml:space="preserve"
+             filename="gst/gstdatetime.c"
+             line="452">Creates a new #GstDateTime using the time since Jan 1, 1970 specified by
+@usecs. The #GstDateTime is in the local timezone.</doc>
+        <source-position filename="gst/gstdatetime.h" line="109"/>
+        <return-value transfer-ownership="full">
+          <doc xml:space="preserve"
+               filename="gst/gstdatetime.c"
+               line="459">a newly created #GstDateTime</doc>
+          <type name="DateTime" c:type="GstDateTime*"/>
+        </return-value>
+        <parameters>
+          <parameter name="usecs" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst/gstdatetime.c"
+                 line="454">microseconds from the Unix epoch</doc>
             <type name="gint64" c:type="gint64"/>
           </parameter>
         </parameters>
       </constructor>
       <constructor name="new_from_unix_epoch_utc"
                    c:identifier="gst_date_time_new_from_unix_epoch_utc">
-        <doc xml:space="preserve">Creates a new #GstDateTime using the time since Jan 1, 1970 specified by
+        <doc xml:space="preserve"
+             filename="gst/gstdatetime.c"
+             line="432">Creates a new #GstDateTime using the time since Jan 1, 1970 specified by
 @secs. The #GstDateTime is in the UTC timezone.
 
 Free-function: gst_date_time_unref</doc>
+        <source-position filename="gst/gstdatetime.h" line="106"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the newly created #GstDateTime</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstdatetime.c"
+               line="441">the newly created #GstDateTime</doc>
           <type name="DateTime" c:type="GstDateTime*"/>
         </return-value>
         <parameters>
           <parameter name="secs" transfer-ownership="none">
-            <doc xml:space="preserve">seconds from the Unix epoch</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdatetime.c"
+                 line="434">seconds from the Unix epoch</doc>
+            <type name="gint64" c:type="gint64"/>
+          </parameter>
+        </parameters>
+      </constructor>
+      <constructor name="new_from_unix_epoch_utc_usecs"
+                   c:identifier="gst_date_time_new_from_unix_epoch_utc_usecs"
+                   version="1.18">
+        <doc xml:space="preserve"
+             filename="gst/gstdatetime.c"
+             line="476">Creates a new #GstDateTime using the time since Jan 1, 1970 specified by
+@usecs. The #GstDateTime is in UTC.</doc>
+        <source-position filename="gst/gstdatetime.h" line="112"/>
+        <return-value transfer-ownership="full">
+          <doc xml:space="preserve"
+               filename="gst/gstdatetime.c"
+               line="483">a newly created #GstDateTime</doc>
+          <type name="DateTime" c:type="GstDateTime*"/>
+        </return-value>
+        <parameters>
+          <parameter name="usecs" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst/gstdatetime.c"
+                 line="478">microseconds from the Unix epoch</doc>
             <type name="gint64" c:type="gint64"/>
           </parameter>
         </parameters>
       </constructor>
       <constructor name="new_local_time"
                    c:identifier="gst_date_time_new_local_time">
-        <doc xml:space="preserve">Creates a new #GstDateTime using the date and times in the gregorian calendar
+        <doc xml:space="preserve"
+             filename="gst/gstdatetime.c"
+             line="522">Creates a new #GstDateTime using the date and times in the gregorian calendar
 in the local timezone.
 
 @year should be from 1 to 9999, @month should be from 1 to 12, @day from
@@ -10003,79 +15286,113 @@ If @hour is -1, then the #GstDateTime created will only contain @year and
 case @minute and @seconds should also be -1.
 
 Free-function: gst_date_time_unref</doc>
+        <source-position filename="gst/gstdatetime.h" line="115"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the newly created #GstDateTime</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstdatetime.c"
+               line="549">the newly created #GstDateTime</doc>
           <type name="DateTime" c:type="GstDateTime*"/>
         </return-value>
         <parameters>
           <parameter name="year" transfer-ownership="none">
-            <doc xml:space="preserve">the gregorian year</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdatetime.c"
+                 line="524">the gregorian year</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="month" transfer-ownership="none">
-            <doc xml:space="preserve">the gregorian month, or -1</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdatetime.c"
+                 line="525">the gregorian month, or -1</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="day" transfer-ownership="none">
-            <doc xml:space="preserve">the day of the gregorian month, or -1</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdatetime.c"
+                 line="526">the day of the gregorian month, or -1</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="hour" transfer-ownership="none">
-            <doc xml:space="preserve">the hour of the day, or -1</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdatetime.c"
+                 line="527">the hour of the day, or -1</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="minute" transfer-ownership="none">
-            <doc xml:space="preserve">the minute of the hour, or -1</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdatetime.c"
+                 line="528">the minute of the hour, or -1</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="seconds" transfer-ownership="none">
-            <doc xml:space="preserve">the second of the minute, or -1</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdatetime.c"
+                 line="529">the second of the minute, or -1</doc>
             <type name="gdouble" c:type="gdouble"/>
           </parameter>
         </parameters>
       </constructor>
       <constructor name="new_now_local_time"
                    c:identifier="gst_date_time_new_now_local_time">
-        <doc xml:space="preserve">Creates a new #GstDateTime representing the current date and time.
+        <doc xml:space="preserve"
+             filename="gst/gstdatetime.c"
+             line="578">Creates a new #GstDateTime representing the current date and time.
 
 Free-function: gst_date_time_unref</doc>
+        <source-position filename="gst/gstdatetime.h" line="138"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the newly created #GstDateTime which should
+          <doc xml:space="preserve"
+               filename="gst/gstdatetime.c"
+               line="585">the newly created #GstDateTime which should
     be freed with gst_date_time_unref().</doc>
           <type name="DateTime" c:type="GstDateTime*"/>
         </return-value>
       </constructor>
       <constructor name="new_now_utc" c:identifier="gst_date_time_new_now_utc">
-        <doc xml:space="preserve">Creates a new #GstDateTime that represents the current instant at Universal
+        <doc xml:space="preserve"
+             filename="gst/gstdatetime.c"
+             line="594">Creates a new #GstDateTime that represents the current instant at Universal
 coordinated time.
 
 Free-function: gst_date_time_unref</doc>
+        <source-position filename="gst/gstdatetime.h" line="141"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the newly created #GstDateTime which should
+          <doc xml:space="preserve"
+               filename="gst/gstdatetime.c"
+               line="602">the newly created #GstDateTime which should
   be freed with gst_date_time_unref().</doc>
           <type name="DateTime" c:type="GstDateTime*"/>
         </return-value>
       </constructor>
       <constructor name="new_y" c:identifier="gst_date_time_new_y">
-        <doc xml:space="preserve">Creates a new #GstDateTime using the date and times in the gregorian calendar
+        <doc xml:space="preserve"
+             filename="gst/gstdatetime.c"
+             line="343">Creates a new #GstDateTime using the date and times in the gregorian calendar
 in the local timezone.
 
 @year should be from 1 to 9999.
 
 Free-function: gst_date_time_unref</doc>
+        <source-position filename="gst/gstdatetime.h" line="122"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the newly created #GstDateTime</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstdatetime.c"
+               line="354">the newly created #GstDateTime</doc>
           <type name="DateTime" c:type="GstDateTime*"/>
         </return-value>
         <parameters>
           <parameter name="year" transfer-ownership="none">
-            <doc xml:space="preserve">the gregorian year</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdatetime.c"
+                 line="345">the gregorian year</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
         </parameters>
       </constructor>
       <constructor name="new_ym" c:identifier="gst_date_time_new_ym">
-        <doc xml:space="preserve">Creates a new #GstDateTime using the date and times in the gregorian calendar
+        <doc xml:space="preserve"
+             filename="gst/gstdatetime.c"
+             line="362">Creates a new #GstDateTime using the date and times in the gregorian calendar
 in the local timezone.
 
 @year should be from 1 to 9999, @month should be from 1 to 12.
@@ -10084,23 +15401,32 @@ If value is -1 then all over value will be ignored. For example
 if @month == -1, then #GstDateTime will created only for @year.
 
 Free-function: gst_date_time_unref</doc>
+        <source-position filename="gst/gstdatetime.h" line="125"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the newly created #GstDateTime</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstdatetime.c"
+               line="377">the newly created #GstDateTime</doc>
           <type name="DateTime" c:type="GstDateTime*"/>
         </return-value>
         <parameters>
           <parameter name="year" transfer-ownership="none">
-            <doc xml:space="preserve">the gregorian year</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdatetime.c"
+                 line="364">the gregorian year</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="month" transfer-ownership="none">
-            <doc xml:space="preserve">the gregorian month</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdatetime.c"
+                 line="365">the gregorian month</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
         </parameters>
       </constructor>
       <constructor name="new_ymd" c:identifier="gst_date_time_new_ymd">
-        <doc xml:space="preserve">Creates a new #GstDateTime using the date and times in the gregorian calendar
+        <doc xml:space="preserve"
+             filename="gst/gstdatetime.c"
+             line="385">Creates a new #GstDateTime using the date and times in the gregorian calendar
 in the local timezone.
 
 @year should be from 1 to 9999, @month should be from 1 to 12, @day from
@@ -10112,243 +15438,352 @@ if @month == -1, then #GstDateTime will created only for @year. If
 so on.
 
 Free-function: gst_date_time_unref</doc>
+        <source-position filename="gst/gstdatetime.h" line="128"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the newly created #GstDateTime</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstdatetime.c"
+               line="404">the newly created #GstDateTime</doc>
           <type name="DateTime" c:type="GstDateTime*"/>
         </return-value>
         <parameters>
           <parameter name="year" transfer-ownership="none">
-            <doc xml:space="preserve">the gregorian year</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdatetime.c"
+                 line="387">the gregorian year</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="month" transfer-ownership="none">
-            <doc xml:space="preserve">the gregorian month</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdatetime.c"
+                 line="388">the gregorian month</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="day" transfer-ownership="none">
-            <doc xml:space="preserve">the day of the gregorian month</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdatetime.c"
+                 line="389">the day of the gregorian month</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
         </parameters>
       </constructor>
       <method name="get_day" c:identifier="gst_date_time_get_day">
-        <doc xml:space="preserve">Returns the day of the month of this #GstDateTime.
+        <doc xml:space="preserve"
+             filename="gst/gstdatetime.c"
+             line="229">Returns the day of the month of this #GstDateTime.
 Call gst_date_time_has_day() before, to avoid warnings.</doc>
+        <source-position filename="gst/gstdatetime.h" line="83"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The day of this #GstDateTime</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstdatetime.c"
+               line="236">The day of this #GstDateTime</doc>
           <type name="gint" c:type="gint"/>
         </return-value>
         <parameters>
           <instance-parameter name="datetime" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDateTime</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdatetime.c"
+                 line="231">a #GstDateTime</doc>
             <type name="DateTime" c:type="const GstDateTime*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_hour" c:identifier="gst_date_time_get_hour">
-        <doc xml:space="preserve">Retrieves the hour of the day represented by @datetime in the gregorian
+        <doc xml:space="preserve"
+             filename="gst/gstdatetime.c"
+             line="247">Retrieves the hour of the day represented by @datetime in the gregorian
 calendar. The return is in the range of 0 to 23.
 Call gst_date_time_has_time() before, to avoid warnings.</doc>
+        <source-position filename="gst/gstdatetime.h" line="86"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the hour of the day</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstdatetime.c"
+               line="255">the hour of the day</doc>
           <type name="gint" c:type="gint"/>
         </return-value>
         <parameters>
           <instance-parameter name="datetime" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDateTime</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdatetime.c"
+                 line="249">a #GstDateTime</doc>
             <type name="DateTime" c:type="const GstDateTime*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_microsecond"
               c:identifier="gst_date_time_get_microsecond">
-        <doc xml:space="preserve">Retrieves the fractional part of the seconds in microseconds represented by
+        <doc xml:space="preserve"
+             filename="gst/gstdatetime.c"
+             line="304">Retrieves the fractional part of the seconds in microseconds represented by
 @datetime in the gregorian calendar.</doc>
+        <source-position filename="gst/gstdatetime.h" line="95"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the microsecond of the second</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstdatetime.c"
+               line="311">the microsecond of the second</doc>
           <type name="gint" c:type="gint"/>
         </return-value>
         <parameters>
           <instance-parameter name="datetime" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDateTime</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdatetime.c"
+                 line="306">a #GstDateTime</doc>
             <type name="DateTime" c:type="const GstDateTime*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_minute" c:identifier="gst_date_time_get_minute">
-        <doc xml:space="preserve">Retrieves the minute of the hour represented by @datetime in the gregorian
+        <doc xml:space="preserve"
+             filename="gst/gstdatetime.c"
+             line="266">Retrieves the minute of the hour represented by @datetime in the gregorian
 calendar.
 Call gst_date_time_has_time() before, to avoid warnings.</doc>
+        <source-position filename="gst/gstdatetime.h" line="89"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the minute of the hour</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstdatetime.c"
+               line="274">the minute of the hour</doc>
           <type name="gint" c:type="gint"/>
         </return-value>
         <parameters>
           <instance-parameter name="datetime" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDateTime</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdatetime.c"
+                 line="268">a #GstDateTime</doc>
             <type name="DateTime" c:type="const GstDateTime*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_month" c:identifier="gst_date_time_get_month">
-        <doc xml:space="preserve">Returns the month of this #GstDateTime. January is 1, February is 2, etc..
+        <doc xml:space="preserve"
+             filename="gst/gstdatetime.c"
+             line="211">Returns the month of this #GstDateTime. January is 1, February is 2, etc..
 Call gst_date_time_has_month() before, to avoid warnings.</doc>
+        <source-position filename="gst/gstdatetime.h" line="80"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The month of this #GstDateTime</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstdatetime.c"
+               line="218">The month of this #GstDateTime</doc>
           <type name="gint" c:type="gint"/>
         </return-value>
         <parameters>
           <instance-parameter name="datetime" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDateTime</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdatetime.c"
+                 line="213">a #GstDateTime</doc>
             <type name="DateTime" c:type="const GstDateTime*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_second" c:identifier="gst_date_time_get_second">
-        <doc xml:space="preserve">Retrieves the second of the minute represented by @datetime in the gregorian
+        <doc xml:space="preserve"
+             filename="gst/gstdatetime.c"
+             line="285">Retrieves the second of the minute represented by @datetime in the gregorian
 calendar.
 Call gst_date_time_has_time() before, to avoid warnings.</doc>
+        <source-position filename="gst/gstdatetime.h" line="92"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the second represented by @datetime</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstdatetime.c"
+               line="293">the second represented by @datetime</doc>
           <type name="gint" c:type="gint"/>
         </return-value>
         <parameters>
           <instance-parameter name="datetime" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDateTime</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdatetime.c"
+                 line="287">a #GstDateTime</doc>
             <type name="DateTime" c:type="const GstDateTime*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_time_zone_offset"
               c:identifier="gst_date_time_get_time_zone_offset">
-        <doc xml:space="preserve">Retrieves the offset from UTC in hours that the timezone specified
+        <doc xml:space="preserve"
+             filename="gst/gstdatetime.c"
+             line="322">Retrieves the offset from UTC in hours that the timezone specified
 by @datetime represents. Timezones ahead (to the east) of UTC have positive
 values, timezones before (to the west) of UTC have negative values.
 If @datetime represents UTC time, then the offset is zero.</doc>
+        <source-position filename="gst/gstdatetime.h" line="98"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the offset from UTC in hours</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstdatetime.c"
+               line="331">the offset from UTC in hours</doc>
           <type name="gfloat" c:type="gfloat"/>
         </return-value>
         <parameters>
           <instance-parameter name="datetime" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDateTime</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdatetime.c"
+                 line="324">a #GstDateTime</doc>
             <type name="DateTime" c:type="const GstDateTime*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_year" c:identifier="gst_date_time_get_year">
-        <doc xml:space="preserve">Returns the year of this #GstDateTime
+        <doc xml:space="preserve"
+             filename="gst/gstdatetime.c"
+             line="194">Returns the year of this #GstDateTime
 Call gst_date_time_has_year() before, to avoid warnings.</doc>
+        <source-position filename="gst/gstdatetime.h" line="77"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The year of this #GstDateTime</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstdatetime.c"
+               line="201">The year of this #GstDateTime</doc>
           <type name="gint" c:type="gint"/>
         </return-value>
         <parameters>
           <instance-parameter name="datetime" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDateTime</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdatetime.c"
+                 line="196">a #GstDateTime</doc>
             <type name="DateTime" c:type="const GstDateTime*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="has_day" c:identifier="gst_date_time_has_day">
+        <source-position filename="gst/gstdatetime.h" line="66"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if @datetime&lt;!-- --&gt;'s day field is set, otherwise %FALSE</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstdatetime.c"
+               line="155">%TRUE if @datetime&lt;!-- --&gt;'s day field is set, otherwise %FALSE</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="datetime" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDateTime</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdatetime.c"
+                 line="153">a #GstDateTime</doc>
             <type name="DateTime" c:type="const GstDateTime*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="has_month" c:identifier="gst_date_time_has_month">
+        <source-position filename="gst/gstdatetime.h" line="63"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if @datetime&lt;!-- --&gt;'s month field is set, otherwise %FALSE</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstdatetime.c"
+               line="141">%TRUE if @datetime&lt;!-- --&gt;'s month field is set, otherwise %FALSE</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="datetime" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDateTime</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdatetime.c"
+                 line="139">a #GstDateTime</doc>
             <type name="DateTime" c:type="const GstDateTime*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="has_second" c:identifier="gst_date_time_has_second">
+        <source-position filename="gst/gstdatetime.h" line="72"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if @datetime&lt;!-- --&gt;'s second field is set, otherwise %FALSE</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstdatetime.c"
+               line="184">%TRUE if @datetime&lt;!-- --&gt;'s second field is set, otherwise %FALSE</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="datetime" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDateTime</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdatetime.c"
+                 line="182">a #GstDateTime</doc>
             <type name="DateTime" c:type="const GstDateTime*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="has_time" c:identifier="gst_date_time_has_time">
+        <source-position filename="gst/gstdatetime.h" line="69"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if @datetime&lt;!-- --&gt;'s hour and minute fields are set,
+          <doc xml:space="preserve"
+               filename="gst/gstdatetime.c"
+               line="169">%TRUE if @datetime&lt;!-- --&gt;'s hour and minute fields are set,
     otherwise %FALSE</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="datetime" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDateTime</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdatetime.c"
+                 line="167">a #GstDateTime</doc>
             <type name="DateTime" c:type="const GstDateTime*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="has_year" c:identifier="gst_date_time_has_year">
+        <source-position filename="gst/gstdatetime.h" line="60"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if @datetime&lt;!-- --&gt;'s year field is set (which should always
+          <doc xml:space="preserve"
+               filename="gst/gstdatetime.c"
+               line="126">%TRUE if @datetime&lt;!-- --&gt;'s year field is set (which should always
     be the case), otherwise %FALSE</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="datetime" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDateTime</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdatetime.c"
+                 line="124">a #GstDateTime</doc>
             <type name="DateTime" c:type="const GstDateTime*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="ref" c:identifier="gst_date_time_ref">
-        <doc xml:space="preserve">Atomically increments the reference count of @datetime by one.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstdatetime.c"
+             line="987">Atomically increments the reference count of @datetime by one.</doc>
+        <source-position filename="gst/gstdatetime.h" line="158"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the reference @datetime</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstdatetime.c"
+               line="993">the reference @datetime</doc>
           <type name="DateTime" c:type="GstDateTime*"/>
         </return-value>
         <parameters>
           <instance-parameter name="datetime" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDateTime</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdatetime.c"
+                 line="989">a #GstDateTime</doc>
             <type name="DateTime" c:type="GstDateTime*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="to_g_date_time"
               c:identifier="gst_date_time_to_g_date_time">
-        <doc xml:space="preserve">Creates a new #GDateTime from a fully defined #GstDateTime object.
+        <doc xml:space="preserve"
+             filename="gst/gstdatetime.c"
+             line="100">Creates a new #GDateTime from a fully defined #GstDateTime object.
 
 Free-function: g_date_time_unref</doc>
+        <source-position filename="gst/gstdatetime.h" line="150"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">a newly created #GDateTime, or
+          <doc xml:space="preserve"
+               filename="gst/gstdatetime.c"
+               line="108">a newly created #GDateTime, or
 %NULL on error</doc>
           <type name="GLib.DateTime" c:type="GDateTime*"/>
         </return-value>
         <parameters>
           <instance-parameter name="datetime" transfer-ownership="none">
-            <doc xml:space="preserve">GstDateTime.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdatetime.c"
+                 line="102">GstDateTime.</doc>
             <type name="DateTime" c:type="GstDateTime*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="to_iso8601_string"
               c:identifier="gst_date_time_to_iso8601_string">
-        <doc xml:space="preserve">Create a minimal string compatible with ISO-8601. Possible output formats
+        <doc xml:space="preserve"
+             filename="gst/gstdatetime.c"
+             line="776">Create a minimal string compatible with ISO-8601. Possible output formats
 are (for example): 2012, 2012-06, 2012-06-23, 2012-06-23T23:30Z,
 2012-06-23T23:30+0100, 2012-06-23T23:30:59Z, 2012-06-23T23:30:59+0100</doc>
+        <source-position filename="gst/gstdatetime.h" line="144"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">a newly allocated string formatted according
+          <doc xml:space="preserve"
+               filename="gst/gstdatetime.c"
+               line="784">a newly allocated string formatted according
     to ISO 8601 and only including the datetime fields that are
     valid, or %NULL in case there was an error. The string should
     be freed with g_free().</doc>
@@ -10356,28 +15791,38 @@ are (for example): 2012, 2012-06, 2012-06-23, 2012-06-23T23:30Z,
         </return-value>
         <parameters>
           <instance-parameter name="datetime" transfer-ownership="none">
-            <doc xml:space="preserve">GstDateTime.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdatetime.c"
+                 line="778">GstDateTime.</doc>
             <type name="DateTime" c:type="GstDateTime*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="unref" c:identifier="gst_date_time_unref">
-        <doc xml:space="preserve">Atomically decrements the reference count of @datetime by one.  When the
+        <doc xml:space="preserve"
+             filename="gst/gstdatetime.c"
+             line="1001">Atomically decrements the reference count of @datetime by one.  When the
 reference count reaches zero, the structure is freed.</doc>
+        <source-position filename="gst/gstdatetime.h" line="161"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="datetime" transfer-ownership="full">
-            <doc xml:space="preserve">a #GstDateTime</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdatetime.c"
+                 line="1003">a #GstDateTime</doc>
             <type name="DateTime" c:type="GstDateTime*"/>
           </instance-parameter>
         </parameters>
       </method>
     </record>
     <record name="DebugCategory" c:type="GstDebugCategory">
-      <doc xml:space="preserve">This is the struct that describes the categories. Once initialized with
+      <doc xml:space="preserve"
+           filename="gst/gstinfo.h"
+           line="213">This is the struct that describes the categories. Once initialized with
 #GST_DEBUG_CATEGORY_INIT, its values can't be changed anymore.</doc>
+      <source-position filename="gst/gstinfo.h" line="226"/>
       <field name="threshold" readable="0" private="1">
         <type name="gint" c:type="gint"/>
       </field>
@@ -10390,108 +15835,156 @@ reference count reaches zero, the structure is freed.</doc>
       <field name="description" readable="0" private="1">
         <type name="utf8" c:type="const gchar*"/>
       </field>
-      <method name="free" c:identifier="gst_debug_category_free">
-        <doc xml:space="preserve">Removes and frees the category and all associated resources.</doc>
+      <method name="free"
+              c:identifier="gst_debug_category_free"
+              deprecated="1">
+        <doc xml:space="preserve"
+             filename="gst/gstinfo.c"
+             line="1803">Removes and frees the category and all associated resources.</doc>
+        <doc-deprecated xml:space="preserve">This function can easily cause memory corruption, don't use it.</doc-deprecated>
+        <source-position filename="gst/gstinfo.h" line="460"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="category" transfer-ownership="none">
-            <doc xml:space="preserve">#GstDebugCategory to free.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstinfo.c"
+                 line="1805">#GstDebugCategory to free.</doc>
             <type name="DebugCategory" c:type="GstDebugCategory*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_color" c:identifier="gst_debug_category_get_color">
-        <doc xml:space="preserve">Returns the color of a debug category used when printing output in this
+        <doc xml:space="preserve"
+             filename="gst/gstinfo.c"
+             line="1887">Returns the color of a debug category used when printing output in this
 category.</doc>
+        <source-position filename="gst/gstinfo.h" line="476"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the color of the category.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.c"
+               line="1894">the color of the category.</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="category" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDebugCategory to get the color of.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstinfo.c"
+                 line="1889">a #GstDebugCategory to get the color of.</doc>
             <type name="DebugCategory" c:type="GstDebugCategory*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_description"
               c:identifier="gst_debug_category_get_description">
-        <doc xml:space="preserve">Returns the description of a debug category.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the description of the category.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstinfo.c"
+             line="1902">Returns the description of a debug category.</doc>
+        <source-position filename="gst/gstinfo.h" line="479"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.c"
+               line="1908">the description of the category.</doc>
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
         <parameters>
           <instance-parameter name="category" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDebugCategory to get the description of.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstinfo.c"
+                 line="1904">a #GstDebugCategory to get the description of.</doc>
             <type name="DebugCategory" c:type="GstDebugCategory*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_name" c:identifier="gst_debug_category_get_name">
-        <doc xml:space="preserve">Returns the name of a debug category.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the name of the category.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstinfo.c"
+             line="1873">Returns the name of a debug category.</doc>
+        <source-position filename="gst/gstinfo.h" line="473"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.c"
+               line="1879">the name of the category.</doc>
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
         <parameters>
           <instance-parameter name="category" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDebugCategory to get name of.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstinfo.c"
+                 line="1875">a #GstDebugCategory to get name of.</doc>
             <type name="DebugCategory" c:type="GstDebugCategory*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_threshold"
               c:identifier="gst_debug_category_get_threshold">
-        <doc xml:space="preserve">Returns the threshold of a #GstDebugCategory.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the #GstDebugLevel that is used as threshold.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstinfo.c"
+             line="1859">Returns the threshold of a #GstDebugCategory.</doc>
+        <source-position filename="gst/gstinfo.h" line="470"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.c"
+               line="1865">the #GstDebugLevel that is used as threshold.</doc>
           <type name="DebugLevel" c:type="GstDebugLevel"/>
         </return-value>
         <parameters>
           <instance-parameter name="category" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDebugCategory to get threshold of.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstinfo.c"
+                 line="1861">a #GstDebugCategory to get threshold of.</doc>
             <type name="DebugCategory" c:type="GstDebugCategory*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="reset_threshold"
               c:identifier="gst_debug_category_reset_threshold">
-        <doc xml:space="preserve">Resets the threshold of the category to the default level. Debug information
+        <doc xml:space="preserve"
+             filename="gst/gstinfo.c"
+             line="1843">Resets the threshold of the category to the default level. Debug information
 will only be output if the threshold is lower or equal to the level of the
 debugging message.
 Use this function to set the threshold back to where it was after using
 gst_debug_category_set_threshold().</doc>
+        <source-position filename="gst/gstinfo.h" line="467"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="category" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDebugCategory to reset threshold of.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstinfo.c"
+                 line="1845">a #GstDebugCategory to reset threshold of.</doc>
             <type name="DebugCategory" c:type="GstDebugCategory*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="set_threshold"
               c:identifier="gst_debug_category_set_threshold">
-        <doc xml:space="preserve">Sets the threshold of the category to the given level. Debug information will
+        <doc xml:space="preserve"
+             filename="gst/gstinfo.c"
+             line="1817">Sets the threshold of the category to the given level. Debug information will
 only be output if the threshold is lower or equal to the level of the
 debugging message.
 &gt; Do not use this function in production code, because other functions may
 &gt; change the threshold of categories as side effect. It is however a nice
 &gt; function to use when debugging (even from gdb).</doc>
+        <source-position filename="gst/gstinfo.h" line="463"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="category" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDebugCategory to set threshold of.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstinfo.c"
+                 line="1819">a #GstDebugCategory to set threshold of.</doc>
             <type name="DebugCategory" c:type="GstDebugCategory*"/>
           </instance-parameter>
           <parameter name="level" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstDebugLevel threshold to set.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstinfo.c"
+                 line="1820">the #GstDebugLevel threshold to set.</doc>
             <type name="DebugLevel" c:type="GstDebugLevel"/>
           </parameter>
         </parameters>
@@ -10501,115 +15994,153 @@ debugging message.
               glib:type-name="GstDebugColorFlags"
               glib:get-type="gst_debug_color_flags_get_type"
               c:type="GstDebugColorFlags">
-      <doc xml:space="preserve">These are some terminal style flags you can use when creating your
+      <doc xml:space="preserve"
+           filename="gst/gstinfo.h"
+           line="130">These are some terminal style flags you can use when creating your
 debugging categories to make them stand out in debugging output.</doc>
       <member name="fg_black"
               value="0"
               c:identifier="GST_DEBUG_FG_BLACK"
               glib:nick="fg-black">
-        <doc xml:space="preserve">Use black as foreground color.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstinfo.h"
+             line="132">Use black as foreground color.</doc>
       </member>
       <member name="fg_red"
               value="1"
               c:identifier="GST_DEBUG_FG_RED"
               glib:nick="fg-red">
-        <doc xml:space="preserve">Use red as foreground color.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstinfo.h"
+             line="133">Use red as foreground color.</doc>
       </member>
       <member name="fg_green"
               value="2"
               c:identifier="GST_DEBUG_FG_GREEN"
               glib:nick="fg-green">
-        <doc xml:space="preserve">Use green as foreground color.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstinfo.h"
+             line="134">Use green as foreground color.</doc>
       </member>
       <member name="fg_yellow"
               value="3"
               c:identifier="GST_DEBUG_FG_YELLOW"
               glib:nick="fg-yellow">
-        <doc xml:space="preserve">Use yellow as foreground color.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstinfo.h"
+             line="135">Use yellow as foreground color.</doc>
       </member>
       <member name="fg_blue"
               value="4"
               c:identifier="GST_DEBUG_FG_BLUE"
               glib:nick="fg-blue">
-        <doc xml:space="preserve">Use blue as foreground color.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstinfo.h"
+             line="136">Use blue as foreground color.</doc>
       </member>
       <member name="fg_magenta"
               value="5"
               c:identifier="GST_DEBUG_FG_MAGENTA"
               glib:nick="fg-magenta">
-        <doc xml:space="preserve">Use magenta as foreground color.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstinfo.h"
+             line="137">Use magenta as foreground color.</doc>
       </member>
       <member name="fg_cyan"
               value="6"
               c:identifier="GST_DEBUG_FG_CYAN"
               glib:nick="fg-cyan">
-        <doc xml:space="preserve">Use cyan as foreground color.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstinfo.h"
+             line="138">Use cyan as foreground color.</doc>
       </member>
       <member name="fg_white"
               value="7"
               c:identifier="GST_DEBUG_FG_WHITE"
               glib:nick="fg-white">
-        <doc xml:space="preserve">Use white as foreground color.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstinfo.h"
+             line="139">Use white as foreground color.</doc>
       </member>
       <member name="bg_black"
               value="0"
               c:identifier="GST_DEBUG_BG_BLACK"
               glib:nick="bg-black">
-        <doc xml:space="preserve">Use black as background color.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstinfo.h"
+             line="140">Use black as background color.</doc>
       </member>
       <member name="bg_red"
               value="16"
               c:identifier="GST_DEBUG_BG_RED"
               glib:nick="bg-red">
-        <doc xml:space="preserve">Use red as background color.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstinfo.h"
+             line="141">Use red as background color.</doc>
       </member>
       <member name="bg_green"
               value="32"
               c:identifier="GST_DEBUG_BG_GREEN"
               glib:nick="bg-green">
-        <doc xml:space="preserve">Use green as background color.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstinfo.h"
+             line="142">Use green as background color.</doc>
       </member>
       <member name="bg_yellow"
               value="48"
               c:identifier="GST_DEBUG_BG_YELLOW"
               glib:nick="bg-yellow">
-        <doc xml:space="preserve">Use yellow as background color.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstinfo.h"
+             line="143">Use yellow as background color.</doc>
       </member>
       <member name="bg_blue"
               value="64"
               c:identifier="GST_DEBUG_BG_BLUE"
               glib:nick="bg-blue">
-        <doc xml:space="preserve">Use blue as background color.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstinfo.h"
+             line="144">Use blue as background color.</doc>
       </member>
       <member name="bg_magenta"
               value="80"
               c:identifier="GST_DEBUG_BG_MAGENTA"
               glib:nick="bg-magenta">
-        <doc xml:space="preserve">Use magenta as background color.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstinfo.h"
+             line="145">Use magenta as background color.</doc>
       </member>
       <member name="bg_cyan"
               value="96"
               c:identifier="GST_DEBUG_BG_CYAN"
               glib:nick="bg-cyan">
-        <doc xml:space="preserve">Use cyan as background color.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstinfo.h"
+             line="146">Use cyan as background color.</doc>
       </member>
       <member name="bg_white"
               value="112"
               c:identifier="GST_DEBUG_BG_WHITE"
               glib:nick="bg-white">
-        <doc xml:space="preserve">Use white as background color.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstinfo.h"
+             line="147">Use white as background color.</doc>
       </member>
       <member name="bold"
               value="256"
               c:identifier="GST_DEBUG_BOLD"
               glib:nick="bold">
-        <doc xml:space="preserve">Make the output bold.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstinfo.h"
+             line="148">Make the output bold.</doc>
       </member>
       <member name="underline"
               value="512"
               c:identifier="GST_DEBUG_UNDERLINE"
               glib:nick="underline">
-        <doc xml:space="preserve">Underline the output.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstinfo.h"
+             line="149">Underline the output.</doc>
       </member>
     </bitfield>
     <enumeration name="DebugColorMode"
@@ -10620,23 +16151,36 @@ debugging categories to make them stand out in debugging output.</doc>
               value="0"
               c:identifier="GST_DEBUG_COLOR_MODE_OFF"
               glib:nick="off">
-        <doc xml:space="preserve">Do not use colors in logs.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstinfo.h"
+             line="196">Do not use colors in logs.</doc>
       </member>
       <member name="on"
               value="1"
               c:identifier="GST_DEBUG_COLOR_MODE_ON"
               glib:nick="on">
-        <doc xml:space="preserve">Paint logs in a platform-specific way.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstinfo.h"
+             line="197">Paint logs in a platform-specific way.</doc>
       </member>
       <member name="unix"
               value="2"
               c:identifier="GST_DEBUG_COLOR_MODE_UNIX"
               glib:nick="unix">
-        <doc xml:space="preserve">Paint logs with UNIX terminal color codes
+        <doc xml:space="preserve"
+             filename="gst/gstinfo.h"
+             line="198">Paint logs with UNIX terminal color codes
                             no matter what platform GStreamer is running on.</doc>
       </member>
     </enumeration>
     <callback name="DebugFuncPtr" c:type="GstDebugFuncPtr">
+      <attribute name="doc.skip" value="true"/>
+      <doc xml:space="preserve"
+           filename="gst/gstinfo.h"
+           line="370">we define this to avoid a compiler warning regarding a cast from a function
+pointer to a void pointer
+(see https://bugzilla.gnome.org/show_bug.cgi?id=309253)</doc>
+      <source-position filename="gst/gstinfo.h" line="376"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
@@ -10645,51 +16189,67 @@ debugging categories to make them stand out in debugging output.</doc>
               glib:type-name="GstDebugGraphDetails"
               glib:get-type="gst_debug_graph_details_get_type"
               c:type="GstDebugGraphDetails">
-      <doc xml:space="preserve">Available details for pipeline graphs produced by GST_DEBUG_BIN_TO_DOT_FILE()
+      <doc xml:space="preserve"
+           filename="gst/gstdebugutils.h"
+           line="32">Available details for pipeline graphs produced by GST_DEBUG_BIN_TO_DOT_FILE()
 and GST_DEBUG_BIN_TO_DOT_FILE_WITH_TS().</doc>
       <member name="media_type"
               value="1"
               c:identifier="GST_DEBUG_GRAPH_SHOW_MEDIA_TYPE"
               glib:nick="media-type">
-        <doc xml:space="preserve">show caps-name on edges</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstdebugutils.h"
+             line="34">show caps-name on edges</doc>
       </member>
       <member name="caps_details"
               value="2"
               c:identifier="GST_DEBUG_GRAPH_SHOW_CAPS_DETAILS"
               glib:nick="caps-details">
-        <doc xml:space="preserve">show caps-details on edges</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstdebugutils.h"
+             line="35">show caps-details on edges</doc>
       </member>
       <member name="non_default_params"
               value="4"
               c:identifier="GST_DEBUG_GRAPH_SHOW_NON_DEFAULT_PARAMS"
               glib:nick="non-default-params">
-        <doc xml:space="preserve">show modified parameters on
+        <doc xml:space="preserve"
+             filename="gst/gstdebugutils.h"
+             line="36">show modified parameters on
                                           elements</doc>
       </member>
       <member name="states"
               value="8"
               c:identifier="GST_DEBUG_GRAPH_SHOW_STATES"
               glib:nick="states">
-        <doc xml:space="preserve">show element states</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstdebugutils.h"
+             line="38">show element states</doc>
       </member>
       <member name="full_params"
               value="16"
               c:identifier="GST_DEBUG_GRAPH_SHOW_FULL_PARAMS"
               glib:nick="full-params">
-        <doc xml:space="preserve">show full element parameter values even
+        <doc xml:space="preserve"
+             filename="gst/gstdebugutils.h"
+             line="39">show full element parameter values even
                                    if they are very long</doc>
       </member>
       <member name="all"
               value="15"
               c:identifier="GST_DEBUG_GRAPH_SHOW_ALL"
               glib:nick="all">
-        <doc xml:space="preserve">show all the typical details that one might want</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstdebugutils.h"
+             line="41">show all the typical details that one might want</doc>
       </member>
       <member name="verbose"
               value="4294967295"
               c:identifier="GST_DEBUG_GRAPH_SHOW_VERBOSE"
               glib:nick="verbose">
-        <doc xml:space="preserve">show all details regardless of how large or
+        <doc xml:space="preserve"
+             filename="gst/gstdebugutils.h"
+             line="42">show all details regardless of how large or
                                verbose they make the resulting output</doc>
       </member>
     </bitfield>
@@ -10697,20 +16257,26 @@ and GST_DEBUG_BIN_TO_DOT_FILE_WITH_TS().</doc>
                  glib:type-name="GstDebugLevel"
                  glib:get-type="gst_debug_level_get_type"
                  c:type="GstDebugLevel">
-      <doc xml:space="preserve">The level defines the importance of a debugging message. The more important a
+      <doc xml:space="preserve"
+           filename="gst/gstinfo.h"
+           line="33">The level defines the importance of a debugging message. The more important a
 message is, the greater the probability that the debugging system outputs it.</doc>
       <member name="none"
               value="0"
               c:identifier="GST_LEVEL_NONE"
               glib:nick="none">
-        <doc xml:space="preserve">No debugging level specified or desired. Used to deactivate
+        <doc xml:space="preserve"
+             filename="gst/gstinfo.h"
+             line="35">No debugging level specified or desired. Used to deactivate
  debugging output.</doc>
       </member>
       <member name="error"
               value="1"
               c:identifier="GST_LEVEL_ERROR"
               glib:nick="error">
-        <doc xml:space="preserve">Error messages are to be used only when an error occurred
+        <doc xml:space="preserve"
+             filename="gst/gstinfo.h"
+             line="37">Error messages are to be used only when an error occurred
  that stops the application from keeping working correctly.
  An examples is gst_element_error, which outputs a message with this priority.
  It does not mean that the application is terminating as with g_error.</doc>
@@ -10719,7 +16285,9 @@ message is, the greater the probability that the debugging system outputs it.</d
               value="2"
               c:identifier="GST_LEVEL_WARNING"
               glib:nick="warning">
-        <doc xml:space="preserve">Warning messages are to inform about abnormal behaviour
+        <doc xml:space="preserve"
+             filename="gst/gstinfo.h"
+             line="41">Warning messages are to inform about abnormal behaviour
  that could lead to problems or weird behaviour later on. An example of this
  would be clocking issues ("your computer is pretty slow") or broken input
  data ("Can't synchronize to stream.")</doc>
@@ -10728,7 +16296,9 @@ message is, the greater the probability that the debugging system outputs it.</d
               value="3"
               c:identifier="GST_LEVEL_FIXME"
               glib:nick="fixme">
-        <doc xml:space="preserve">Fixme messages are messages that indicate that something
+        <doc xml:space="preserve"
+             filename="gst/gstinfo.h"
+             line="45">Fixme messages are messages that indicate that something
  in the executed code path is not fully implemented or handled yet. Note
  that this does not replace proper error handling in any way, the purpose
  of this message is to make it easier to spot incomplete/unfinished pieces
@@ -10738,7 +16308,9 @@ message is, the greater the probability that the debugging system outputs it.</d
               value="4"
               c:identifier="GST_LEVEL_INFO"
               glib:nick="info">
-        <doc xml:space="preserve">Informational messages should be used to keep the developer
+        <doc xml:space="preserve"
+             filename="gst/gstinfo.h"
+             line="50">Informational messages should be used to keep the developer
  updated about what is happening.
  Examples where this should be used are when a typefind function has
  successfully determined the type of the stream or when an mp3 plugin detects
@@ -10748,7 +16320,9 @@ message is, the greater the probability that the debugging system outputs it.</d
               value="5"
               c:identifier="GST_LEVEL_DEBUG"
               glib:nick="debug">
-        <doc xml:space="preserve">Debugging messages should be used when something common
+        <doc xml:space="preserve"
+             filename="gst/gstinfo.h"
+             line="55">Debugging messages should be used when something common
  happens that is not the expected default behavior, or something that's
  useful to know but doesn't happen all the time (ie. per loop iteration or
  buffer processed or event handled).
@@ -10759,7 +16333,9 @@ message is, the greater the probability that the debugging system outputs it.</d
               value="6"
               c:identifier="GST_LEVEL_LOG"
               glib:nick="log">
-        <doc xml:space="preserve">Log messages are messages that are very common but might be
+        <doc xml:space="preserve"
+             filename="gst/gstinfo.h"
+             line="61">Log messages are messages that are very common but might be
  useful to know. As a rule of thumb a pipeline that is running as expected
  should never output anything else but LOG messages whilst processing data.
  Use this log level to log recurring information in chain functions and
@@ -10769,14 +16345,18 @@ message is, the greater the probability that the debugging system outputs it.</d
               value="7"
               c:identifier="GST_LEVEL_TRACE"
               glib:nick="trace">
-        <doc xml:space="preserve">Tracing-related messages.
+        <doc xml:space="preserve"
+             filename="gst/gstinfo.h"
+             line="66">Tracing-related messages.
  Examples for this are referencing/dereferencing of objects.</doc>
       </member>
       <member name="memdump"
               value="9"
               c:identifier="GST_LEVEL_MEMDUMP"
               glib:nick="memdump">
-        <doc xml:space="preserve">memory dump messages are used to log (small) chunks of
+        <doc xml:space="preserve"
+             filename="gst/gstinfo.h"
+             line="68">memory dump messages are used to log (small) chunks of
  data as memory dumps in the log. They will be displayed as hexdump with
  ASCII characters.</doc>
       </member>
@@ -10784,33 +16364,50 @@ message is, the greater the probability that the debugging system outputs it.</d
               value="10"
               c:identifier="GST_LEVEL_COUNT"
               glib:nick="count">
-        <doc xml:space="preserve">The number of defined debugging levels.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstinfo.h"
+             line="71">The number of defined debugging levels.</doc>
       </member>
       <function name="get_name" c:identifier="gst_debug_level_get_name">
-        <doc xml:space="preserve">Get the string representation of a debugging level</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the name</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstinfo.c"
+             line="1317">Get the string representation of a debugging level</doc>
+        <source-position filename="gst/gstinfo.h" line="411"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.c"
+               line="1323">the name</doc>
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
         <parameters>
           <parameter name="level" transfer-ownership="none">
-            <doc xml:space="preserve">the level to get the name for</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstinfo.c"
+                 line="1319">the level to get the name for</doc>
             <type name="DebugLevel" c:type="GstDebugLevel"/>
           </parameter>
         </parameters>
       </function>
     </enumeration>
     <record name="DebugMessage" c:type="GstDebugMessage" disguised="1">
+      <source-position filename="gst/gstinfo.h" line="305"/>
       <method name="get" c:identifier="gst_debug_message_get">
-        <doc xml:space="preserve">Gets the string representation of a #GstDebugMessage. This function is used
+        <doc xml:space="preserve"
+             filename="gst/gstinfo.c"
+             line="587">Gets the string representation of a #GstDebugMessage. This function is used
 in debug handlers to extract the message.</doc>
+        <source-position filename="gst/gstinfo.h" line="389"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">the string representation of a #GstDebugMessage.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.c"
+               line="594">the string representation of a #GstDebugMessage.</doc>
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
         <parameters>
           <instance-parameter name="message" transfer-ownership="none">
-            <doc xml:space="preserve">a debug message</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstinfo.c"
+                 line="589">a debug message</doc>
             <type name="DebugMessage" c:type="GstDebugMessage*"/>
           </instance-parameter>
         </parameters>
@@ -10825,32 +16422,44 @@ in debug handlers to extract the message.</doc>
            glib:type-name="GstDevice"
            glib:get-type="gst_device_get_type"
            glib:type-struct="DeviceClass">
-      <doc xml:space="preserve">#GstDevice are objects representing a device, they contain
+      <doc xml:space="preserve"
+           filename="gst/gstdevice.c"
+           line="22">#GstDevice are objects representing a device, they contain
 relevant metadata about the device, such as its class and the #GstCaps
 representing the media types it can produce or handle.
 
 #GstDevice are created by #GstDeviceProvider objects which can be
 aggregated by #GstDeviceMonitor objects.</doc>
+      <source-position filename="gst/gstdevice.h" line="85"/>
       <virtual-method name="create_element"
                       invoker="create_element"
                       version="1.4">
-        <doc xml:space="preserve">Creates the element with all of the required parameters set to use
+        <doc xml:space="preserve"
+             filename="gst/gstdevice.c"
+             line="190">Creates the element with all of the required parameters set to use
 this device.</doc>
-        <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">a new #GstElement configured to use
+        <source-position filename="gst/gstdevice.h" line="80"/>
+        <return-value transfer-ownership="none" nullable="1">
+          <doc xml:space="preserve"
+               filename="gst/gstdevice.c"
+               line="199">a new #GstElement configured to use
 this device</doc>
           <type name="Element" c:type="GstElement*"/>
         </return-value>
         <parameters>
           <instance-parameter name="device" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDevice</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdevice.c"
+                 line="192">a #GstDevice</doc>
             <type name="Device" c:type="GstDevice*"/>
           </instance-parameter>
           <parameter name="name"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">name of new element, or %NULL to automatically
+            <doc xml:space="preserve"
+                 filename="gst/gstdevice.c"
+                 line="193">name of new element, or %NULL to automatically
 create a unique name.</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
@@ -10859,24 +16468,33 @@ create a unique name.</doc>
       <virtual-method name="reconfigure_element"
                       invoker="reconfigure_element"
                       version="1.4">
-        <doc xml:space="preserve">Tries to reconfigure an existing element to use the device. If this
+        <doc xml:space="preserve"
+             filename="gst/gstdevice.c"
+             line="312">Tries to reconfigure an existing element to use the device. If this
 function fails, then one must destroy the element and create a new one
 using gst_device_create_element().
 
 Note: This should only be implemented for elements can change their
 device in the PLAYING state.</doc>
+        <source-position filename="gst/gstdevice.h" line="81"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the element could be reconfigured to use this device,
+          <doc xml:space="preserve"
+               filename="gst/gstdevice.c"
+               line="324">%TRUE if the element could be reconfigured to use this device,
 %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="device" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDevice</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdevice.c"
+                 line="314">a #GstDevice</doc>
             <type name="Device" c:type="GstDevice*"/>
           </instance-parameter>
           <parameter name="element" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElement</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdevice.c"
+                 line="315">a #GstElement</doc>
             <type name="Element" c:type="GstElement*"/>
           </parameter>
         </parameters>
@@ -10884,38 +16502,54 @@ device in the PLAYING state.</doc>
       <method name="create_element"
               c:identifier="gst_device_create_element"
               version="1.4">
-        <doc xml:space="preserve">Creates the element with all of the required parameters set to use
+        <doc xml:space="preserve"
+             filename="gst/gstdevice.c"
+             line="190">Creates the element with all of the required parameters set to use
 this device.</doc>
-        <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">a new #GstElement configured to use
+        <source-position filename="gst/gstdevice.h" line="91"/>
+        <return-value transfer-ownership="none" nullable="1">
+          <doc xml:space="preserve"
+               filename="gst/gstdevice.c"
+               line="199">a new #GstElement configured to use
 this device</doc>
           <type name="Element" c:type="GstElement*"/>
         </return-value>
         <parameters>
           <instance-parameter name="device" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDevice</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdevice.c"
+                 line="192">a #GstDevice</doc>
             <type name="Device" c:type="GstDevice*"/>
           </instance-parameter>
           <parameter name="name"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">name of new element, or %NULL to automatically
+            <doc xml:space="preserve"
+                 filename="gst/gstdevice.c"
+                 line="193">name of new element, or %NULL to automatically
 create a unique name.</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_caps" c:identifier="gst_device_get_caps" version="1.4">
-        <doc xml:space="preserve">Getter for the #GstCaps that this device supports.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstdevice.c"
+             line="226">Getter for the #GstCaps that this device supports.</doc>
+        <source-position filename="gst/gstdevice.h" line="94"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">The #GstCaps supported by this device. Unref with
+          <doc xml:space="preserve"
+               filename="gst/gstdevice.c"
+               line="232">The #GstCaps supported by this device. Unref with
 gst_caps_unref() when done.</doc>
           <type name="Caps" c:type="GstCaps*"/>
         </return-value>
         <parameters>
           <instance-parameter name="device" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDevice</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdevice.c"
+                 line="228">a #GstDevice</doc>
             <type name="Device" c:type="GstDevice*"/>
           </instance-parameter>
         </parameters>
@@ -10923,16 +16557,23 @@ gst_caps_unref() when done.</doc>
       <method name="get_device_class"
               c:identifier="gst_device_get_device_class"
               version="1.4">
-        <doc xml:space="preserve">Gets the "class" of a device. This is a "/" separated list of
+        <doc xml:space="preserve"
+             filename="gst/gstdevice.c"
+             line="267">Gets the "class" of a device. This is a "/" separated list of
 classes that represent this device. They are a subset of the
 classes of the #GstDeviceProvider that produced this device.</doc>
+        <source-position filename="gst/gstdevice.h" line="100"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">The device class. Free with g_free() after use.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstdevice.c"
+               line="275">The device class. Free with g_free() after use.</doc>
           <type name="utf8" c:type="gchar*"/>
         </return-value>
         <parameters>
           <instance-parameter name="device" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDevice</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdevice.c"
+                 line="269">a #GstDevice</doc>
             <type name="Device" c:type="GstDevice*"/>
           </instance-parameter>
         </parameters>
@@ -10940,14 +16581,21 @@ classes of the #GstDeviceProvider that produced this device.</doc>
       <method name="get_display_name"
               c:identifier="gst_device_get_display_name"
               version="1.4">
-        <doc xml:space="preserve">Gets the user-friendly name of the device.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstdevice.c"
+             line="248">Gets the user-friendly name of the device.</doc>
+        <source-position filename="gst/gstdevice.h" line="97"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">The device name. Free with g_free() after use.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstdevice.c"
+               line="254">The device name. Free with g_free() after use.</doc>
           <type name="utf8" c:type="gchar*"/>
         </return-value>
         <parameters>
           <instance-parameter name="device" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDevice</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdevice.c"
+                 line="250">a #GstDevice</doc>
             <type name="Device" c:type="GstDevice*"/>
           </instance-parameter>
         </parameters>
@@ -10955,15 +16603,22 @@ classes of the #GstDeviceProvider that produced this device.</doc>
       <method name="get_properties"
               c:identifier="gst_device_get_properties"
               version="1.6">
-        <doc xml:space="preserve">Gets the extra properties of a device.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstdevice.c"
+             line="290">Gets the extra properties of a device.</doc>
+        <source-position filename="gst/gstdevice.h" line="103"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">The extra properties or %NULL when there are none.
+          <doc xml:space="preserve"
+               filename="gst/gstdevice.c"
+               line="296">The extra properties or %NULL when there are none.
          Free with gst_structure_free() after use.</doc>
           <type name="Structure" c:type="GstStructure*"/>
         </return-value>
         <parameters>
           <instance-parameter name="device" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDevice</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdevice.c"
+                 line="292">a #GstDevice</doc>
             <type name="Device" c:type="GstDevice*"/>
           </instance-parameter>
         </parameters>
@@ -10971,18 +16626,27 @@ classes of the #GstDeviceProvider that produced this device.</doc>
       <method name="has_classes"
               c:identifier="gst_device_has_classes"
               version="1.4">
-        <doc xml:space="preserve">Check if @device matches all of the given classes</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if @device matches.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstdevice.c"
+             line="385">Check if @device matches all of the given classes</doc>
+        <source-position filename="gst/gstdevice.h" line="112"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstdevice.c"
+               line="393">%TRUE if @device matches.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="device" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDevice</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdevice.c"
+                 line="387">a #GstDevice</doc>
             <type name="Device" c:type="GstDevice*"/>
           </instance-parameter>
           <parameter name="classes" transfer-ownership="none">
-            <doc xml:space="preserve">a "/"-separated list of device classes to match, only match if
+            <doc xml:space="preserve"
+                 filename="gst/gstdevice.c"
+                 line="388">a "/"-separated list of device classes to match, only match if
  all classes are matched</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
@@ -10991,18 +16655,27 @@ classes of the #GstDeviceProvider that produced this device.</doc>
       <method name="has_classesv"
               c:identifier="gst_device_has_classesv"
               version="1.4">
-        <doc xml:space="preserve">Check if @factory matches all of the given classes</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if @device matches.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstdevice.c"
+             line="342">Check if @factory matches all of the given classes</doc>
+        <source-position filename="gst/gstdevice.h" line="109"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstdevice.c"
+               line="350">%TRUE if @device matches.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="device" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDevice</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdevice.c"
+                 line="344">a #GstDevice</doc>
             <type name="Device" c:type="GstDevice*"/>
           </instance-parameter>
           <parameter name="classes" transfer-ownership="none">
-            <doc xml:space="preserve">a %NULL terminated array of classes
+            <doc xml:space="preserve"
+                 filename="gst/gstdevice.c"
+                 line="345">a %NULL terminated array of classes
   to match, only match if all classes are matched</doc>
             <array c:type="gchar**">
               <type name="utf8" c:type="gchar*"/>
@@ -11013,24 +16686,33 @@ classes of the #GstDeviceProvider that produced this device.</doc>
       <method name="reconfigure_element"
               c:identifier="gst_device_reconfigure_element"
               version="1.4">
-        <doc xml:space="preserve">Tries to reconfigure an existing element to use the device. If this
+        <doc xml:space="preserve"
+             filename="gst/gstdevice.c"
+             line="312">Tries to reconfigure an existing element to use the device. If this
 function fails, then one must destroy the element and create a new one
 using gst_device_create_element().
 
 Note: This should only be implemented for elements can change their
 device in the PLAYING state.</doc>
+        <source-position filename="gst/gstdevice.h" line="106"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the element could be reconfigured to use this device,
+          <doc xml:space="preserve"
+               filename="gst/gstdevice.c"
+               line="324">%TRUE if the element could be reconfigured to use this device,
 %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="device" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDevice</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdevice.c"
+                 line="314">a #GstDevice</doc>
             <type name="Device" c:type="GstDevice*"/>
           </instance-parameter>
           <parameter name="element" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElement</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdevice.c"
+                 line="315">a #GstElement</doc>
             <type name="Element" c:type="GstElement*"/>
           </parameter>
         </parameters>
@@ -11060,14 +16742,16 @@ device in the PLAYING state.</doc>
         <type name="Structure"/>
       </property>
       <field name="parent">
-        <doc xml:space="preserve">The parent #GstObject structure.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstdevice.h"
+             line="47">The parent #GstObject structure.</doc>
         <type name="Object" c:type="GstObject"/>
       </field>
       <field name="priv" readable="0" private="1">
         <type name="DevicePrivate" c:type="GstDevicePrivate*"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -11081,28 +16765,40 @@ device in the PLAYING state.</doc>
             c:type="GstDeviceClass"
             glib:is-gtype-struct-for="Device"
             version="1.4">
-      <doc xml:space="preserve">The class structure for a #GstDevice object.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstdevice.h"
+           line="63">The class structure for a #GstDevice object.</doc>
+      <source-position filename="gst/gstdevice.h" line="85"/>
       <field name="parent_class">
-        <doc xml:space="preserve">The parent #GstObjectClass structure.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstdevice.h"
+             line="65">The parent #GstObjectClass structure.</doc>
         <type name="ObjectClass" c:type="GstObjectClass"/>
       </field>
       <field name="create_element">
         <callback name="create_element">
-          <return-value transfer-ownership="full" nullable="1">
-            <doc xml:space="preserve">a new #GstElement configured to use
+          <source-position filename="gst/gstdevice.h" line="80"/>
+          <return-value transfer-ownership="none" nullable="1">
+            <doc xml:space="preserve"
+                 filename="gst/gstdevice.c"
+                 line="199">a new #GstElement configured to use
 this device</doc>
             <type name="Element" c:type="GstElement*"/>
           </return-value>
           <parameters>
             <parameter name="device" transfer-ownership="none">
-              <doc xml:space="preserve">a #GstDevice</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstdevice.c"
+                   line="192">a #GstDevice</doc>
               <type name="Device" c:type="GstDevice*"/>
             </parameter>
             <parameter name="name"
                        transfer-ownership="none"
                        nullable="1"
                        allow-none="1">
-              <doc xml:space="preserve">name of new element, or %NULL to automatically
+              <doc xml:space="preserve"
+                   filename="gst/gstdevice.c"
+                   line="193">name of new element, or %NULL to automatically
 create a unique name.</doc>
               <type name="utf8" c:type="const gchar*"/>
             </parameter>
@@ -11111,25 +16807,32 @@ create a unique name.</doc>
       </field>
       <field name="reconfigure_element">
         <callback name="reconfigure_element">
+          <source-position filename="gst/gstdevice.h" line="81"/>
           <return-value transfer-ownership="none">
-            <doc xml:space="preserve">%TRUE if the element could be reconfigured to use this device,
+            <doc xml:space="preserve"
+                 filename="gst/gstdevice.c"
+                 line="324">%TRUE if the element could be reconfigured to use this device,
 %FALSE otherwise.</doc>
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
           <parameters>
             <parameter name="device" transfer-ownership="none">
-              <doc xml:space="preserve">a #GstDevice</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstdevice.c"
+                   line="314">a #GstDevice</doc>
               <type name="Device" c:type="GstDevice*"/>
             </parameter>
             <parameter name="element" transfer-ownership="none">
-              <doc xml:space="preserve">a #GstElement</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstdevice.c"
+                   line="315">a #GstElement</doc>
               <type name="Element" c:type="GstElement*"/>
             </parameter>
           </parameters>
         </callback>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -11142,7 +16845,9 @@ create a unique name.</doc>
            glib:type-name="GstDeviceMonitor"
            glib:get-type="gst_device_monitor_get_type"
            glib:type-struct="DeviceMonitorClass">
-      <doc xml:space="preserve">Applications should create a #GstDeviceMonitor when they want
+      <doc xml:space="preserve"
+           filename="gst/gstdevicemonitor.c"
+           line="22">Applications should create a #GstDeviceMonitor when they want
 to probe, list and monitor devices of a specific type. The
 #GstDeviceMonitor will create the appropriate
 #GstDeviceProvider objects and manage them. It will then post
@@ -11203,19 +16908,27 @@ The basic use pattern of a device monitor is as follows:
      return monitor;
   }
 ]|</doc>
+      <source-position filename="gst/gstdevicemonitor.h" line="76"/>
       <constructor name="new"
                    c:identifier="gst_device_monitor_new"
                    version="1.4">
-        <doc xml:space="preserve">Create a new #GstDeviceMonitor</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstdevicemonitor.c"
+             line="793">Create a new #GstDeviceMonitor</doc>
+        <source-position filename="gst/gstdevicemonitor.h" line="82"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new device monitor.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstdevicemonitor.c"
+               line="798">a new device monitor.</doc>
           <type name="DeviceMonitor" c:type="GstDeviceMonitor*"/>
         </return-value>
       </constructor>
       <method name="add_filter"
               c:identifier="gst_device_monitor_add_filter"
               version="1.4">
-        <doc xml:space="preserve">Adds a filter for which #GstDevice will be monitored, any device that matches
+        <doc xml:space="preserve"
+             filename="gst/gstdevicemonitor.c"
+             line="622">Adds a filter for which #GstDevice will be monitored, any device that matches
 all these classes and the #GstCaps will be returned.
 
 If this function is called multiple times to add more filters, each will be
@@ -11226,28 +16939,37 @@ 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.</doc>
+        <source-position filename="gst/gstdevicemonitor.h" line="99"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The id of the new filter or 0 if no provider matched the filter's
+          <doc xml:space="preserve"
+               filename="gst/gstdevicemonitor.c"
+               line="640">The id of the new filter or 0 if no provider matched the filter's
  classes.</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="monitor" transfer-ownership="none">
-            <doc xml:space="preserve">a device monitor</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdevicemonitor.c"
+                 line="624">a device monitor</doc>
             <type name="DeviceMonitor" c:type="GstDeviceMonitor*"/>
           </instance-parameter>
           <parameter name="classes"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">device classes to use as filter or %NULL for any class</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdevicemonitor.c"
+                 line="625">device classes to use as filter or %NULL for any class</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="caps"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">the #GstCaps to filter or %NULL for ANY</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdevicemonitor.c"
+                 line="626">the #GstCaps to filter or %NULL for ANY</doc>
             <type name="Caps" c:type="GstCaps*"/>
           </parameter>
         </parameters>
@@ -11255,14 +16977,21 @@ Filters must be added before the #GstDeviceMonitor is started.</doc>
       <method name="get_bus"
               c:identifier="gst_device_monitor_get_bus"
               version="1.4">
-        <doc xml:space="preserve">Gets the #GstBus of this #GstDeviceMonitor</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstdevicemonitor.c"
+             line="815">Gets the #GstBus of this #GstDeviceMonitor</doc>
+        <source-position filename="gst/gstdevicemonitor.h" line="85"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a #GstBus</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstdevicemonitor.c"
+               line="821">a #GstBus</doc>
           <type name="Bus" c:type="GstBus*"/>
         </return-value>
         <parameters>
           <instance-parameter name="monitor" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDeviceProvider</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdevicemonitor.c"
+                 line="817">a #GstDeviceProvider</doc>
             <type name="DeviceMonitor" c:type="GstDeviceMonitor*"/>
           </instance-parameter>
         </parameters>
@@ -11270,10 +16999,15 @@ Filters must be added before the #GstDeviceMonitor is started.</doc>
       <method name="get_devices"
               c:identifier="gst_device_monitor_get_devices"
               version="1.4">
-        <doc xml:space="preserve">Gets a list of devices from all of the relevant monitors. This may actually
+        <doc xml:space="preserve"
+             filename="gst/gstdevicemonitor.c"
+             line="344">Gets a list of devices from all of the relevant monitors. This may actually
 probe the hardware if the monitor is not currently started.</doc>
+        <source-position filename="gst/gstdevicemonitor.h" line="88"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">a #GList of
+          <doc xml:space="preserve"
+               filename="gst/gstdevicemonitor.c"
+               line="351">a #GList of
   #GstDevice</doc>
           <type name="GLib.List" c:type="GList*">
             <type name="Device"/>
@@ -11281,7 +17015,9 @@ probe the hardware if the monitor is not currently started.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="monitor" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstDeviceProvider</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdevicemonitor.c"
+                 line="346">A #GstDeviceProvider</doc>
             <type name="DeviceMonitor" c:type="GstDeviceMonitor*"/>
           </instance-parameter>
         </parameters>
@@ -11289,11 +17025,16 @@ probe the hardware if the monitor is not currently started.</doc>
       <method name="get_providers"
               c:identifier="gst_device_monitor_get_providers"
               version="1.6">
-        <doc xml:space="preserve">Get a list of the currently selected device provider factories.
+        <doc xml:space="preserve"
+             filename="gst/gstdevicemonitor.c"
+             line="833">Get a list of the currently selected device provider factories.
 
 This</doc>
+        <source-position filename="gst/gstdevicemonitor.h" line="106"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">
+          <doc xml:space="preserve"
+               filename="gst/gstdevicemonitor.c"
+               line="841">
     A list of device provider factory names that are currently being
     monitored by @monitor or %NULL when nothing is being monitored.</doc>
           <array c:type="gchar**">
@@ -11302,7 +17043,9 @@ This</doc>
         </return-value>
         <parameters>
           <instance-parameter name="monitor" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDeviceMonitor</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdevicemonitor.c"
+                 line="835">a #GstDeviceMonitor</doc>
             <type name="DeviceMonitor" c:type="GstDeviceMonitor*"/>
           </instance-parameter>
         </parameters>
@@ -11310,15 +17053,22 @@ This</doc>
       <method name="get_show_all_devices"
               c:identifier="gst_device_monitor_get_show_all_devices"
               version="1.6">
-        <doc xml:space="preserve">Get if @monitor is curretly showing all devices, even those from hidden
+        <doc xml:space="preserve"
+             filename="gst/gstdevicemonitor.c"
+             line="899">Get if @monitor is currently showing all devices, even those from hidden
 providers.</doc>
+        <source-position filename="gst/gstdevicemonitor.h" line="112"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE when all devices will be shown.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstdevicemonitor.c"
+               line="906">%TRUE when all devices will be shown.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="monitor" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDeviceMonitor</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdevicemonitor.c"
+                 line="901">a #GstDeviceMonitor</doc>
             <type name="DeviceMonitor" c:type="GstDeviceMonitor*"/>
           </instance-parameter>
         </parameters>
@@ -11326,19 +17076,28 @@ providers.</doc>
       <method name="remove_filter"
               c:identifier="gst_device_monitor_remove_filter"
               version="1.4">
-        <doc xml:space="preserve">Removes a filter from the #GstDeviceMonitor using the id that was returned
+        <doc xml:space="preserve"
+             filename="gst/gstdevicemonitor.c"
+             line="726">Removes a filter from the #GstDeviceMonitor using the id that was returned
 by gst_device_monitor_add_filter().</doc>
+        <source-position filename="gst/gstdevicemonitor.h" line="103"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE of the filter id was valid, %FALSE otherwise</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstdevicemonitor.c"
+               line="734">%TRUE of the filter id was valid, %FALSE otherwise</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="monitor" transfer-ownership="none">
-            <doc xml:space="preserve">a device monitor</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdevicemonitor.c"
+                 line="728">a device monitor</doc>
             <type name="DeviceMonitor" c:type="GstDeviceMonitor*"/>
           </instance-parameter>
           <parameter name="filter_id" transfer-ownership="none">
-            <doc xml:space="preserve">the id of the filter</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdevicemonitor.c"
+                 line="729">the id of the filter</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
@@ -11346,18 +17105,25 @@ by gst_device_monitor_add_filter().</doc>
       <method name="set_show_all_devices"
               c:identifier="gst_device_monitor_set_show_all_devices"
               version="1.6">
-        <doc xml:space="preserve">Set if all devices should be visible, even those devices from hidden
+        <doc xml:space="preserve"
+             filename="gst/gstdevicemonitor.c"
+             line="878">Set if all devices should be visible, even those devices from hidden
 providers. Setting @show_all to true might show some devices multiple times.</doc>
+        <source-position filename="gst/gstdevicemonitor.h" line="109"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="monitor" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDeviceMonitor</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdevicemonitor.c"
+                 line="880">a #GstDeviceMonitor</doc>
             <type name="DeviceMonitor" c:type="GstDeviceMonitor*"/>
           </instance-parameter>
           <parameter name="show_all" transfer-ownership="none">
-            <doc xml:space="preserve">show all devices</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdevicemonitor.c"
+                 line="881">show all devices</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
@@ -11365,28 +17131,40 @@ providers. Setting @show_all to true might show some devices multiple times.</do
       <method name="start"
               c:identifier="gst_device_monitor_start"
               version="1.4">
-        <doc xml:space="preserve">Starts monitoring the devices, one this has succeeded, the
+        <doc xml:space="preserve"
+             filename="gst/gstdevicemonitor.c"
+             line="444">Starts monitoring the devices, one this has succeeded, the
 %GST_MESSAGE_DEVICE_ADDED and %GST_MESSAGE_DEVICE_REMOVED messages
 will be emitted on the bus when the list of devices changes.</doc>
+        <source-position filename="gst/gstdevicemonitor.h" line="92"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the device monitoring could be started</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstdevicemonitor.c"
+               line="452">%TRUE if the device monitoring could be started</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="monitor" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstDeviceMonitor</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdevicemonitor.c"
+                 line="446">A #GstDeviceMonitor</doc>
             <type name="DeviceMonitor" c:type="GstDeviceMonitor*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="stop" c:identifier="gst_device_monitor_stop" version="1.4">
-        <doc xml:space="preserve">Stops monitoring the devices.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstdevicemonitor.c"
+             line="552">Stops monitoring the devices.</doc>
+        <source-position filename="gst/gstdevicemonitor.h" line="95"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="monitor" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstDeviceProvider</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdevicemonitor.c"
+                 line="554">A #GstDeviceProvider</doc>
             <type name="DeviceMonitor" c:type="GstDeviceMonitor*"/>
           </instance-parameter>
         </parameters>
@@ -11395,14 +17173,16 @@ will be emitted on the bus when the list of devices changes.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </property>
       <field name="parent">
-        <doc xml:space="preserve">the parent #GstObject structure</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstdevicemonitor.h"
+             line="47">the parent #GstObject structure</doc>
         <type name="Object" c:type="GstObject"/>
       </field>
       <field name="priv" readable="0" private="1">
         <type name="DeviceMonitorPrivate" c:type="GstDeviceMonitorPrivate*"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -11411,13 +17191,18 @@ will be emitted on the bus when the list of devices changes.</doc>
             c:type="GstDeviceMonitorClass"
             glib:is-gtype-struct-for="DeviceMonitor"
             version="1.4">
-      <doc xml:space="preserve">Opaque device monitor class structure.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstdevicemonitor.h"
+           line="63">Opaque device monitor class structure.</doc>
+      <source-position filename="gst/gstdevicemonitor.h" line="76"/>
       <field name="parent_class">
-        <doc xml:space="preserve">the parent #GstObjectClass structure</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstdevicemonitor.h"
+             line="65">the parent #GstObjectClass structure</doc>
         <type name="ObjectClass" c:type="GstObjectClass"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -11425,8 +17210,10 @@ will be emitted on the bus when the list of devices changes.</doc>
     <record name="DeviceMonitorPrivate"
             c:type="GstDeviceMonitorPrivate"
             disguised="1">
+      <source-position filename="gst/gstdevicemonitor.h" line="34"/>
     </record>
     <record name="DevicePrivate" c:type="GstDevicePrivate" disguised="1">
+      <source-position filename="gst/gstdevice.h" line="35"/>
     </record>
     <class name="DeviceProvider"
            c:symbol-prefix="device_provider"
@@ -11437,7 +17224,9 @@ will be emitted on the bus when the list of devices changes.</doc>
            glib:type-name="GstDeviceProvider"
            glib:get-type="gst_device_provider_get_type"
            glib:type-struct="DeviceProviderClass">
-      <doc xml:space="preserve">A #GstDeviceProvider subclass is provided by a plugin that handles devices
+      <doc xml:space="preserve"
+           filename="gst/gstdeviceprovider.c"
+           line="22">A #GstDeviceProvider subclass is provided by a plugin that handles devices
 if there is a way to programmatically list connected devices. It can also
 optionally provide updates to the list of connected devices.
 
@@ -11446,13 +17235,19 @@ normally provide a single subclass for all devices.
 
 Applications would normally use a #GstDeviceMonitor to monitor devices
 from all relevant providers.</doc>
+      <source-position filename="gst/gstdeviceprovider.h" line="100"/>
       <function name="register"
                 c:identifier="gst_device_provider_register"
                 version="1.4">
-        <doc xml:space="preserve">Create a new device providerfactory capable of instantiating objects of the
+        <doc xml:space="preserve"
+             filename="gst/gstdeviceproviderfactory.c"
+             line="155">Create a new device providerfactory capable of instantiating objects of the
 @type and add the factory to @plugin.</doc>
+        <source-position filename="gst/gstdeviceproviderfactory.h" line="85"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE, if the registering succeeded, %FALSE on error</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstdeviceproviderfactory.c"
+               line="166">%TRUE, if the registering succeeded, %FALSE on error</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
@@ -11460,25 +17255,34 @@ from all relevant providers.</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">#GstPlugin to register the device provider with, or %NULL for
+            <doc xml:space="preserve"
+                 filename="gst/gstdeviceproviderfactory.c"
+                 line="157">#GstPlugin to register the device provider with, or %NULL for
     a static device provider.</doc>
             <type name="Plugin" c:type="GstPlugin*"/>
           </parameter>
           <parameter name="name" transfer-ownership="none">
-            <doc xml:space="preserve">name of device providers of this type</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdeviceproviderfactory.c"
+                 line="159">name of device providers of this type</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="rank" transfer-ownership="none">
-            <doc xml:space="preserve">rank of device provider (higher rank means more importance when autoplugging)</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdeviceproviderfactory.c"
+                 line="160">rank of device provider (higher rank means more importance when autoplugging)</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="type" transfer-ownership="none">
-            <doc xml:space="preserve">GType of device provider to register</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdeviceproviderfactory.c"
+                 line="161">GType of device provider to register</doc>
             <type name="GType" c:type="GType"/>
           </parameter>
         </parameters>
       </function>
       <virtual-method name="probe" introspectable="0">
+        <source-position filename="gst/gstdeviceprovider.h" line="90"/>
         <return-value>
           <type name="GLib.List" c:type="GList*">
             <type name="gpointer" c:type="gpointer"/>
@@ -11491,7 +17295,9 @@ from all relevant providers.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="start" invoker="start" version="1.4">
-        <doc xml:space="preserve">Starts providering the devices. This will cause #GST_MESSAGE_DEVICE_ADDED
+        <doc xml:space="preserve"
+             filename="gst/gstdeviceprovider.c"
+             line="425">Starts providering the devices. This will cause #GST_MESSAGE_DEVICE_ADDED
 and #GST_MESSAGE_DEVICE_REMOVED messages to be posted on the provider's bus
 when devices are added or removed from the system.
 
@@ -11499,33 +17305,44 @@ Since the #GstDeviceProvider is a singleton,
 gst_device_provider_start() may already have been called by another
 user of the object, gst_device_provider_stop() needs to be called the same
 number of times.</doc>
+        <source-position filename="gst/gstdeviceprovider.h" line="92"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the device providering could be started</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstdeviceprovider.c"
+               line="438">%TRUE if the device providering could be started</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="provider" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstDeviceProvider</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdeviceprovider.c"
+                 line="427">A #GstDeviceProvider</doc>
             <type name="DeviceProvider" c:type="GstDeviceProvider*"/>
           </instance-parameter>
         </parameters>
       </virtual-method>
       <virtual-method name="stop" invoker="stop" version="1.4">
-        <doc xml:space="preserve">Decreases the use-count by one. If the use count reaches zero, this
+        <doc xml:space="preserve"
+             filename="gst/gstdeviceprovider.c"
+             line="478">Decreases the use-count by one. If the use count reaches zero, this
 #GstDeviceProvider will stop providering the devices. This needs to be
 called the same number of times that gst_device_provider_start() was called.</doc>
+        <source-position filename="gst/gstdeviceprovider.h" line="93"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="provider" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstDeviceProvider</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdeviceprovider.c"
+                 line="480">A #GstDeviceProvider</doc>
             <type name="DeviceProvider" c:type="GstDeviceProvider*"/>
           </instance-parameter>
         </parameters>
       </virtual-method>
       <method name="can_monitor"
               c:identifier="gst_device_provider_can_monitor">
+        <source-position filename="gst/gstdeviceprovider.h" line="116"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -11538,23 +17355,30 @@ called the same number of times that gst_device_provider_start() was called.</do
       <method name="device_add"
               c:identifier="gst_device_provider_device_add"
               version="1.4">
-        <doc xml:space="preserve">Posts a message on the provider's #GstBus to inform applications that
+        <doc xml:space="preserve"
+             filename="gst/gstdeviceprovider.c"
+             line="578">Posts a message on the provider's #GstBus to inform applications that
 a new device has been added.
 
 This is for use by subclasses.
 
 @device's reference count will be incremented, and any floating reference
 will be removed (see gst_object_ref_sink()).</doc>
+        <source-position filename="gst/gstdeviceprovider.h" line="122"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="provider" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDeviceProvider</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdeviceprovider.c"
+                 line="580">a #GstDeviceProvider</doc>
             <type name="DeviceProvider" c:type="GstDeviceProvider*"/>
           </instance-parameter>
           <parameter name="device" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDevice that has been added</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdeviceprovider.c"
+                 line="581">a #GstDevice that has been added</doc>
             <type name="Device" c:type="GstDevice*"/>
           </parameter>
         </parameters>
@@ -11562,11 +17386,14 @@ will be removed (see gst_object_ref_sink()).</doc>
       <method name="device_changed"
               c:identifier="gst_device_provider_device_changed"
               version="1.16">
-        <doc xml:space="preserve">This function is used when @changed_device was modified into its new form
+        <doc xml:space="preserve"
+             filename="gst/gstdeviceprovider.c"
+             line="777">This function is used when @changed_device was modified into its new form
 @device. This will post a `DEVICE_CHANGED` message on the bus to let
 the application know that the device was modified. #GstDevice is immutable
 for MT. safety purposes so this is an "atomic" way of letting the application
 know when a device was modified.</doc>
+        <source-position filename="gst/gstdeviceprovider.h" line="166"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
@@ -11575,11 +17402,15 @@ know when a device was modified.</doc>
             <type name="DeviceProvider" c:type="GstDeviceProvider*"/>
           </instance-parameter>
           <parameter name="device" transfer-ownership="none">
-            <doc xml:space="preserve">the new version of @changed_device</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdeviceprovider.c"
+                 line="779">the new version of @changed_device</doc>
             <type name="Device" c:type="GstDevice*"/>
           </parameter>
           <parameter name="changed_device" transfer-ownership="none">
-            <doc xml:space="preserve">the old version of the device that has been udpated</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdeviceprovider.c"
+                 line="780">the old version of the device that has been updated</doc>
             <type name="Device" c:type="GstDevice*"/>
           </parameter>
         </parameters>
@@ -11587,20 +17418,27 @@ know when a device was modified.</doc>
       <method name="device_remove"
               c:identifier="gst_device_provider_device_remove"
               version="1.4">
-        <doc xml:space="preserve">Posts a message on the provider's #GstBus to inform applications that
+        <doc xml:space="preserve"
+             filename="gst/gstdeviceprovider.c"
+             line="621">Posts a message on the provider's #GstBus to inform applications that
 a device has been removed.
 
 This is for use by subclasses.</doc>
+        <source-position filename="gst/gstdeviceprovider.h" line="125"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="provider" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDeviceProvider</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdeviceprovider.c"
+                 line="623">a #GstDeviceProvider</doc>
             <type name="DeviceProvider" c:type="GstDeviceProvider*"/>
           </instance-parameter>
           <parameter name="device" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDevice that has been removed</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdeviceprovider.c"
+                 line="624">a #GstDevice that has been removed</doc>
             <type name="Device" c:type="GstDevice*"/>
           </parameter>
         </parameters>
@@ -11608,14 +17446,21 @@ This is for use by subclasses.</doc>
       <method name="get_bus"
               c:identifier="gst_device_provider_get_bus"
               version="1.4">
-        <doc xml:space="preserve">Gets the #GstBus of this #GstDeviceProvider</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstdeviceprovider.c"
+             line="560">Gets the #GstBus of this #GstDeviceProvider</doc>
+        <source-position filename="gst/gstdeviceprovider.h" line="119"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a #GstBus</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstdeviceprovider.c"
+               line="566">a #GstBus</doc>
           <type name="Bus" c:type="GstBus*"/>
         </return-value>
         <parameters>
           <instance-parameter name="provider" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDeviceProvider</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdeviceprovider.c"
+                 line="562">a #GstDeviceProvider</doc>
             <type name="DeviceProvider" c:type="GstDeviceProvider*"/>
           </instance-parameter>
         </parameters>
@@ -11623,10 +17468,15 @@ This is for use by subclasses.</doc>
       <method name="get_devices"
               c:identifier="gst_device_provider_get_devices"
               version="1.4">
-        <doc xml:space="preserve">Gets a list of devices that this provider understands. This may actually
+        <doc xml:space="preserve"
+             filename="gst/gstdeviceprovider.c"
+             line="385">Gets a list of devices that this provider understands. This may actually
 probe the hardware if the provider is not currently started.</doc>
+        <source-position filename="gst/gstdeviceprovider.h" line="107"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a #GList of
+          <doc xml:space="preserve"
+               filename="gst/gstdeviceprovider.c"
+               line="392">a #GList of
   #GstDevice</doc>
           <type name="GLib.List" c:type="GList*">
             <type name="Device"/>
@@ -11634,7 +17484,9 @@ probe the hardware if the provider is not currently started.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="provider" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstDeviceProvider</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdeviceprovider.c"
+                 line="387">A #GstDeviceProvider</doc>
             <type name="DeviceProvider" c:type="GstDeviceProvider*"/>
           </instance-parameter>
         </parameters>
@@ -11642,16 +17494,23 @@ probe the hardware if the provider is not currently started.</doc>
       <method name="get_factory"
               c:identifier="gst_device_provider_get_factory"
               version="1.4">
-        <doc xml:space="preserve">Retrieves the factory that was used to create this device provider.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the #GstDeviceProviderFactory used for
+        <doc xml:space="preserve"
+             filename="gst/gstdeviceprovider.c"
+             line="518">Retrieves the factory that was used to create this device provider.</doc>
+        <source-position filename="gst/gstdeviceprovider.h" line="173"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstdeviceprovider.c"
+               line="524">the #GstDeviceProviderFactory used for
     creating this device provider. no refcounting is needed.</doc>
           <type name="DeviceProviderFactory"
                 c:type="GstDeviceProviderFactory*"/>
         </return-value>
         <parameters>
           <instance-parameter name="provider" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDeviceProvider to request the device provider factory of.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdeviceprovider.c"
+                 line="520">a #GstDeviceProvider to request the device provider factory of.</doc>
             <type name="DeviceProvider" c:type="GstDeviceProvider*"/>
           </instance-parameter>
         </parameters>
@@ -11659,10 +17518,15 @@ probe the hardware if the provider is not currently started.</doc>
       <method name="get_hidden_providers"
               c:identifier="gst_device_provider_get_hidden_providers"
               version="1.6">
-        <doc xml:space="preserve">Get the provider factory names of the #GstDeviceProvider instances that
+        <doc xml:space="preserve"
+             filename="gst/gstdeviceprovider.c"
+             line="657">Get the provider factory names of the #GstDeviceProvider instances that
 are hidden by @provider.</doc>
+        <source-position filename="gst/gstdeviceprovider.h" line="128"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">
+          <doc xml:space="preserve"
+               filename="gst/gstdeviceprovider.c"
+               line="664">
   a list of hidden providers factory names or %NULL when
   nothing is hidden by @provider. Free with g_strfreev.</doc>
           <array c:type="gchar**">
@@ -11671,7 +17535,9 @@ are hidden by @provider.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="provider" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDeviceProvider</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdeviceprovider.c"
+                 line="659">a #GstDeviceProvider</doc>
             <type name="DeviceProvider" c:type="GstDeviceProvider*"/>
           </instance-parameter>
         </parameters>
@@ -11679,18 +17545,27 @@ are hidden by @provider.</doc>
       <method name="get_metadata"
               c:identifier="gst_device_provider_get_metadata"
               version="1.14">
-        <doc xml:space="preserve">Get metadata with @key in @provider.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the metadata for @key.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstdeviceprovider.c"
+             line="362">Get metadata with @key in @provider.</doc>
+        <source-position filename="gst/gstdeviceprovider.h" line="138"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstdeviceprovider.c"
+               line="369">the metadata for @key.</doc>
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
         <parameters>
           <instance-parameter name="provider" transfer-ownership="none">
-            <doc xml:space="preserve">provider to get metadata for</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdeviceprovider.c"
+                 line="364">provider to get metadata for</doc>
             <type name="DeviceProvider" c:type="GstDeviceProvider*"/>
           </instance-parameter>
           <parameter name="key" transfer-ownership="none">
-            <doc xml:space="preserve">the key to get</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdeviceprovider.c"
+                 line="365">the key to get</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
@@ -11698,21 +17573,28 @@ are hidden by @provider.</doc>
       <method name="hide_provider"
               c:identifier="gst_device_provider_hide_provider"
               version="1.6">
-        <doc xml:space="preserve">Make @provider hide the devices from the factory with @name.
+        <doc xml:space="preserve"
+             filename="gst/gstdeviceprovider.c"
+             line="696">Make @provider hide the devices from the factory with @name.
 
 This function is used when @provider will also provide the devices reported
 by provider factory @name. A monitor should stop monitoring the
 device provider with @name to avoid duplicate devices.</doc>
+        <source-position filename="gst/gstdeviceprovider.h" line="131"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="provider" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDeviceProvider</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdeviceprovider.c"
+                 line="698">a #GstDeviceProvider</doc>
             <type name="DeviceProvider" c:type="GstDeviceProvider*"/>
           </instance-parameter>
           <parameter name="name" transfer-ownership="none">
-            <doc xml:space="preserve">a provider factory name</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdeviceprovider.c"
+                 line="699">a provider factory name</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
@@ -11720,7 +17602,9 @@ device provider with @name to avoid duplicate devices.</doc>
       <method name="start"
               c:identifier="gst_device_provider_start"
               version="1.4">
-        <doc xml:space="preserve">Starts providering the devices. This will cause #GST_MESSAGE_DEVICE_ADDED
+        <doc xml:space="preserve"
+             filename="gst/gstdeviceprovider.c"
+             line="425">Starts providering the devices. This will cause #GST_MESSAGE_DEVICE_ADDED
 and #GST_MESSAGE_DEVICE_REMOVED messages to be posted on the provider's bus
 when devices are added or removed from the system.
 
@@ -11728,13 +17612,18 @@ Since the #GstDeviceProvider is a singleton,
 gst_device_provider_start() may already have been called by another
 user of the object, gst_device_provider_stop() needs to be called the same
 number of times.</doc>
+        <source-position filename="gst/gstdeviceprovider.h" line="110"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the device providering could be started</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstdeviceprovider.c"
+               line="438">%TRUE if the device providering could be started</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="provider" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstDeviceProvider</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdeviceprovider.c"
+                 line="427">A #GstDeviceProvider</doc>
             <type name="DeviceProvider" c:type="GstDeviceProvider*"/>
           </instance-parameter>
         </parameters>
@@ -11742,15 +17631,20 @@ number of times.</doc>
       <method name="stop"
               c:identifier="gst_device_provider_stop"
               version="1.4">
-        <doc xml:space="preserve">Decreases the use-count by one. If the use count reaches zero, this
+        <doc xml:space="preserve"
+             filename="gst/gstdeviceprovider.c"
+             line="478">Decreases the use-count by one. If the use count reaches zero, this
 #GstDeviceProvider will stop providering the devices. This needs to be
 called the same number of times that gst_device_provider_start() was called.</doc>
+        <source-position filename="gst/gstdeviceprovider.h" line="113"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="provider" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstDeviceProvider</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdeviceprovider.c"
+                 line="480">A #GstDeviceProvider</doc>
             <type name="DeviceProvider" c:type="GstDeviceProvider*"/>
           </instance-parameter>
         </parameters>
@@ -11758,32 +17652,43 @@ called the same number of times that gst_device_provider_start() was called.</do
       <method name="unhide_provider"
               c:identifier="gst_device_provider_unhide_provider"
               version="1.6">
-        <doc xml:space="preserve">Make @provider unhide the devices from factory @name.
+        <doc xml:space="preserve"
+             filename="gst/gstdeviceprovider.c"
+             line="735">Make @provider unhide the devices from factory @name.
 
 This function is used when @provider will no longer provide the devices
 reported by provider factory @name. A monitor should start
 monitoring the devices from provider factory @name in order to see
 all devices again.</doc>
+        <source-position filename="gst/gstdeviceprovider.h" line="134"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="provider" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDeviceProvider</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdeviceprovider.c"
+                 line="737">a #GstDeviceProvider</doc>
             <type name="DeviceProvider" c:type="GstDeviceProvider*"/>
           </instance-parameter>
           <parameter name="name" transfer-ownership="none">
-            <doc xml:space="preserve">a provider factory name</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdeviceprovider.c"
+                 line="738">a provider factory name</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </method>
       <field name="parent">
-        <doc xml:space="preserve">The parent #GstObject</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstdeviceprovider.h"
+             line="48">The parent #GstObject</doc>
         <type name="Object" c:type="GstObject"/>
       </field>
       <field name="devices">
-        <doc xml:space="preserve">a #GList of the #GstDevice objects</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstdeviceprovider.h"
+             line="49">a #GList of the #GstDevice objects</doc>
         <type name="GLib.List" c:type="GList*">
           <type name="gpointer" c:type="gpointer"/>
         </type>
@@ -11792,7 +17697,7 @@ all devices again.</doc>
         <type name="DeviceProviderPrivate" c:type="GstDeviceProviderPrivate*"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -11821,18 +17726,26 @@ all devices again.</doc>
             c:type="GstDeviceProviderClass"
             glib:is-gtype-struct-for="DeviceProvider"
             version="1.4">
-      <doc xml:space="preserve">The structure of the base #GstDeviceProviderClass</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstdeviceprovider.h"
+           line="68">The structure of the base #GstDeviceProviderClass</doc>
+      <source-position filename="gst/gstdeviceprovider.h" line="100"/>
       <field name="parent_class">
-        <doc xml:space="preserve">the parent #GstObjectClass structure</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstdeviceprovider.h"
+             line="70">the parent #GstObjectClass structure</doc>
         <type name="ObjectClass" c:type="GstObjectClass"/>
       </field>
       <field name="factory">
-        <doc xml:space="preserve">a pointer to the #GstDeviceProviderFactory that creates this
+        <doc xml:space="preserve"
+             filename="gst/gstdeviceprovider.h"
+             line="71">a pointer to the #GstDeviceProviderFactory that creates this
  provider</doc>
         <type name="DeviceProviderFactory" c:type="GstDeviceProviderFactory*"/>
       </field>
       <field name="probe" introspectable="0">
         <callback name="probe" introspectable="0">
+          <source-position filename="gst/gstdeviceprovider.h" line="90"/>
           <return-value>
             <type name="GLib.List" c:type="GList*">
               <type name="gpointer" c:type="gpointer"/>
@@ -11847,13 +17760,18 @@ all devices again.</doc>
       </field>
       <field name="start">
         <callback name="start">
+          <source-position filename="gst/gstdeviceprovider.h" line="92"/>
           <return-value transfer-ownership="none">
-            <doc xml:space="preserve">%TRUE if the device providering could be started</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdeviceprovider.c"
+                 line="438">%TRUE if the device providering could be started</doc>
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
           <parameters>
             <parameter name="provider" transfer-ownership="none">
-              <doc xml:space="preserve">A #GstDeviceProvider</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstdeviceprovider.c"
+                   line="427">A #GstDeviceProvider</doc>
               <type name="DeviceProvider" c:type="GstDeviceProvider*"/>
             </parameter>
           </parameters>
@@ -11861,12 +17779,15 @@ all devices again.</doc>
       </field>
       <field name="stop">
         <callback name="stop">
+          <source-position filename="gst/gstdeviceprovider.h" line="93"/>
           <return-value transfer-ownership="none">
             <type name="none" c:type="void"/>
           </return-value>
           <parameters>
             <parameter name="provider" transfer-ownership="none">
-              <doc xml:space="preserve">A #GstDeviceProvider</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstdeviceprovider.c"
+                   line="480">A #GstDeviceProvider</doc>
               <type name="DeviceProvider" c:type="GstDeviceProvider*"/>
             </parameter>
           </parameters>
@@ -11876,28 +17797,37 @@ all devices again.</doc>
         <type name="gpointer" c:type="gpointer"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
       <method name="add_metadata"
               c:identifier="gst_device_provider_class_add_metadata"
               version="1.4">
-        <doc xml:space="preserve">Set @key with @value as metadata in @klass.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstdeviceprovider.c"
+             line="198">Set @key with @value as metadata in @klass.</doc>
+        <source-position filename="gst/gstdeviceprovider.h" line="156"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="klass" transfer-ownership="none">
-            <doc xml:space="preserve">class to set metadata for</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdeviceprovider.c"
+                 line="200">class to set metadata for</doc>
             <type name="DeviceProviderClass" c:type="GstDeviceProviderClass*"/>
           </instance-parameter>
           <parameter name="key" transfer-ownership="none">
-            <doc xml:space="preserve">the key to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdeviceprovider.c"
+                 line="201">the key to set</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="value" transfer-ownership="none">
-            <doc xml:space="preserve">the value to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdeviceprovider.c"
+                 line="202">the value to set</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
@@ -11905,26 +17835,35 @@ all devices again.</doc>
       <method name="add_static_metadata"
               c:identifier="gst_device_provider_class_add_static_metadata"
               version="1.4">
-        <doc xml:space="preserve">Set @key with @value as metadata in @klass.
+        <doc xml:space="preserve"
+             filename="gst/gstdeviceprovider.c"
+             line="220">Set @key with @value as metadata in @klass.
 
 Same as gst_device_provider_class_add_metadata(), but @value must be a static string
 or an inlined string, as it will not be copied. (GStreamer plugins will
 be made resident once loaded, so this function can be used even from
 dynamically loaded plugins.)</doc>
+        <source-position filename="gst/gstdeviceprovider.h" line="159"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="klass" transfer-ownership="none">
-            <doc xml:space="preserve">class to set metadata for</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdeviceprovider.c"
+                 line="222">class to set metadata for</doc>
             <type name="DeviceProviderClass" c:type="GstDeviceProviderClass*"/>
           </instance-parameter>
           <parameter name="key" transfer-ownership="none">
-            <doc xml:space="preserve">the key to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdeviceprovider.c"
+                 line="223">the key to set</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="value" transfer-ownership="full">
-            <doc xml:space="preserve">the value to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdeviceprovider.c"
+                 line="224">the value to set</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
@@ -11932,18 +17871,27 @@ dynamically loaded plugins.)</doc>
       <method name="get_metadata"
               c:identifier="gst_device_provider_class_get_metadata"
               version="1.4">
-        <doc xml:space="preserve">Get metadata with @key in @klass.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstdeviceprovider.c"
+             line="341">Get metadata with @key in @klass.</doc>
+        <source-position filename="gst/gstdeviceprovider.h" line="162"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">the metadata for @key.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstdeviceprovider.c"
+               line="348">the metadata for @key.</doc>
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
         <parameters>
           <instance-parameter name="klass" transfer-ownership="none">
-            <doc xml:space="preserve">class to get metadata for</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdeviceprovider.c"
+                 line="343">class to get metadata for</doc>
             <type name="DeviceProviderClass" c:type="GstDeviceProviderClass*"/>
           </instance-parameter>
           <parameter name="key" transfer-ownership="none">
-            <doc xml:space="preserve">the key to get</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdeviceprovider.c"
+                 line="344">the key to get</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
@@ -11951,35 +17899,48 @@ dynamically loaded plugins.)</doc>
       <method name="set_metadata"
               c:identifier="gst_device_provider_class_set_metadata"
               version="1.4">
-        <doc xml:space="preserve">Sets the detailed information for a #GstDeviceProviderClass.
+        <doc xml:space="preserve"
+             filename="gst/gstdeviceprovider.c"
+             line="250">Sets the detailed information for a #GstDeviceProviderClass.
 
 &gt; This function is for use in _class_init functions only.</doc>
+        <source-position filename="gst/gstdeviceprovider.h" line="144"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="klass" transfer-ownership="none">
-            <doc xml:space="preserve">class to set metadata for</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdeviceprovider.c"
+                 line="252">class to set metadata for</doc>
             <type name="DeviceProviderClass" c:type="GstDeviceProviderClass*"/>
           </instance-parameter>
           <parameter name="longname" transfer-ownership="none">
-            <doc xml:space="preserve">The long English name of the device provider. E.g. "File Sink"</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdeviceprovider.c"
+                 line="253">The long English name of the device provider. E.g. "File Sink"</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="classification" transfer-ownership="none">
-            <doc xml:space="preserve">String describing the type of device provider, as an
+            <doc xml:space="preserve"
+                 filename="gst/gstdeviceprovider.c"
+                 line="254">String describing the type of device provider, as an
  unordered list separated with slashes ('/'). See draft-klass.txt of the
  design docs
 for more details and common types. E.g: "Sink/File"</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="description" transfer-ownership="none">
-            <doc xml:space="preserve">Sentence describing the purpose of the device provider.
+            <doc xml:space="preserve"
+                 filename="gst/gstdeviceprovider.c"
+                 line="258">Sentence describing the purpose of the device provider.
 E.g: "Write stream to a file"</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="author" transfer-ownership="none">
-            <doc xml:space="preserve">Name and contact details of the author(s). Use \n to separate
+            <doc xml:space="preserve"
+                 filename="gst/gstdeviceprovider.c"
+                 line="260">Name and contact details of the author(s). Use \n to separate
 multiple author metadata. E.g: "Joe Bloggs &amp;lt;joe.blogs at foo.com&amp;gt;"</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
@@ -11988,7 +17949,9 @@ multiple author metadata. E.g: "Joe Bloggs &amp;lt;joe.blogs at foo.com&amp;gt;"
       <method name="set_static_metadata"
               c:identifier="gst_device_provider_class_set_static_metadata"
               version="1.4">
-        <doc xml:space="preserve">Sets the detailed information for a #GstDeviceProviderClass.
+        <doc xml:space="preserve"
+             filename="gst/gstdeviceprovider.c"
+             line="287">Sets the detailed information for a #GstDeviceProviderClass.
 
 &gt; This function is for use in _class_init functions only.
 
@@ -11996,31 +17959,42 @@ Same as gst_device_provider_class_set_metadata(), but @longname, @classification
 @description, and @author must be static strings or inlined strings, as
 they will not be copied. (GStreamer plugins will be made resident once
 loaded, so this function can be used even from dynamically loaded plugins.)</doc>
+        <source-position filename="gst/gstdeviceprovider.h" line="150"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="klass" transfer-ownership="none">
-            <doc xml:space="preserve">class to set metadata for</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdeviceprovider.c"
+                 line="289">class to set metadata for</doc>
             <type name="DeviceProviderClass" c:type="GstDeviceProviderClass*"/>
           </instance-parameter>
           <parameter name="longname" transfer-ownership="full">
-            <doc xml:space="preserve">The long English name of the element. E.g. "File Sink"</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdeviceprovider.c"
+                 line="290">The long English name of the element. E.g. "File Sink"</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="classification" transfer-ownership="full">
-            <doc xml:space="preserve">String describing the type of element, as
+            <doc xml:space="preserve"
+                 filename="gst/gstdeviceprovider.c"
+                 line="291">String describing the type of element, as
 an unordered list separated with slashes ('/'). See draft-klass.txt of the
 design docs for more details and common types. E.g: "Sink/File"</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="description" transfer-ownership="full">
-            <doc xml:space="preserve">Sentence describing the purpose of the
+            <doc xml:space="preserve"
+                 filename="gst/gstdeviceprovider.c"
+                 line="294">Sentence describing the purpose of the
 element.  E.g: "Write stream to a file"</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="author" transfer-ownership="full">
-            <doc xml:space="preserve">Name and contact details of the author(s). Use \n
+            <doc xml:space="preserve"
+                 filename="gst/gstdeviceprovider.c"
+                 line="296">Name and contact details of the author(s). Use \n
 to separate multiple author metadata. E.g: "Joe Bloggs &amp;lt;joe.blogs at
 foo.com&amp;gt;"</doc>
             <type name="utf8" c:type="const gchar*"/>
@@ -12036,7 +18010,9 @@ foo.com&amp;gt;"</doc>
            glib:type-name="GstDeviceProviderFactory"
            glib:get-type="gst_device_provider_factory_get_type"
            glib:type-struct="DeviceProviderFactoryClass">
-      <doc xml:space="preserve">#GstDeviceProviderFactory is used to create instances of device providers. A
+      <doc xml:space="preserve"
+           filename="gst/gstdeviceproviderfactory.c"
+           line="24">#GstDeviceProviderFactory is used to create instances of device providers. A
 GstDeviceProviderfactory can be added to a #GstPlugin as it is also a
 #GstPluginFeature.
 
@@ -12044,20 +18020,28 @@ Use the gst_device_provider_factory_find() and
 gst_device_provider_factory_get() functions to create device
 provider instances or use gst_device_provider_factory_get_by_name() as a
 convenient shortcut.</doc>
+      <source-position filename="gst/gstdeviceproviderfactory.h" line="45"/>
       <function name="find"
                 c:identifier="gst_device_provider_factory_find"
                 version="1.4">
-        <doc xml:space="preserve">Search for an device provider factory of the given name. Refs the returned
+        <doc xml:space="preserve"
+             filename="gst/gstdeviceproviderfactory.c"
+             line="103">Search for an device provider factory of the given name. Refs the returned
 device provider factory; caller is responsible for unreffing.</doc>
+        <source-position filename="gst/gstdeviceproviderfactory.h" line="67"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">#GstDeviceProviderFactory if
+          <doc xml:space="preserve"
+               filename="gst/gstdeviceproviderfactory.c"
+               line="110">#GstDeviceProviderFactory if
 found, %NULL otherwise</doc>
           <type name="DeviceProviderFactory"
                 c:type="GstDeviceProviderFactory*"/>
         </return-value>
         <parameters>
           <parameter name="name" transfer-ownership="none">
-            <doc xml:space="preserve">name of factory to find</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdeviceproviderfactory.c"
+                 line="105">name of factory to find</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
@@ -12065,16 +18049,23 @@ found, %NULL otherwise</doc>
       <function name="get_by_name"
                 c:identifier="gst_device_provider_factory_get_by_name"
                 version="1.4">
-        <doc xml:space="preserve">Returns the device provider of the type defined by the given device
+        <doc xml:space="preserve"
+             filename="gst/gstdeviceproviderfactory.c"
+             line="338">Returns the device provider of the type defined by the given device
 provider factory.</doc>
+        <source-position filename="gst/gstdeviceproviderfactory.h" line="82"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">a #GstDeviceProvider or %NULL
+          <doc xml:space="preserve"
+               filename="gst/gstdeviceproviderfactory.c"
+               line="345">a #GstDeviceProvider or %NULL
 if unable to create device provider</doc>
           <type name="DeviceProvider" c:type="GstDeviceProvider*"/>
         </return-value>
         <parameters>
           <parameter name="factoryname" transfer-ownership="none">
-            <doc xml:space="preserve">a named factory to instantiate</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdeviceproviderfactory.c"
+                 line="340">a named factory to instantiate</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
@@ -12082,10 +18073,15 @@ if unable to create device provider</doc>
       <function name="list_get_device_providers"
                 c:identifier="gst_device_provider_factory_list_get_device_providers"
                 version="1.4">
-        <doc xml:space="preserve">Get a list of factories with a rank greater or equal to @minrank.
+        <doc xml:space="preserve"
+             filename="gst/gstdeviceproviderfactory.c"
+             line="558">Get a list of factories with a rank greater or equal to @minrank.
 The list of factories is returned by decreasing rank.</doc>
+        <source-position filename="gst/gstdeviceproviderfactory.h" line="95"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">
+          <doc xml:space="preserve"
+               filename="gst/gstdeviceproviderfactory.c"
+               line="565">
 a #GList of #GstDeviceProviderFactory device providers. Use
 gst_plugin_feature_list_free() after usage.</doc>
           <type name="GLib.List" c:type="GList*">
@@ -12094,7 +18090,9 @@ gst_plugin_feature_list_free() after usage.</doc>
         </return-value>
         <parameters>
           <parameter name="minrank" transfer-ownership="none">
-            <doc xml:space="preserve">Minimum rank</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdeviceproviderfactory.c"
+                 line="560">Minimum rank</doc>
             <type name="Rank" c:type="GstRank"/>
           </parameter>
         </parameters>
@@ -12102,16 +18100,23 @@ gst_plugin_feature_list_free() after usage.</doc>
       <method name="get"
               c:identifier="gst_device_provider_factory_get"
               version="1.4">
-        <doc xml:space="preserve">Returns the device provider of the type defined by the given device
+        <doc xml:space="preserve"
+             filename="gst/gstdeviceproviderfactory.c"
+             line="241">Returns the device provider of the type defined by the given device
 providerfactory.</doc>
+        <source-position filename="gst/gstdeviceproviderfactory.h" line="79"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">the #GstDeviceProvider or %NULL
+          <doc xml:space="preserve"
+               filename="gst/gstdeviceproviderfactory.c"
+               line="248">the #GstDeviceProvider or %NULL
 if the device provider couldn't be created</doc>
           <type name="DeviceProvider" c:type="GstDeviceProvider*"/>
         </return-value>
         <parameters>
           <instance-parameter name="factory" transfer-ownership="none">
-            <doc xml:space="preserve">factory to instantiate</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdeviceproviderfactory.c"
+                 line="243">factory to instantiate</doc>
             <type name="DeviceProviderFactory"
                   c:type="GstDeviceProviderFactory*"/>
           </instance-parameter>
@@ -12120,16 +18125,23 @@ if the device provider couldn't be created</doc>
       <method name="get_device_provider_type"
               c:identifier="gst_device_provider_factory_get_device_provider_type"
               version="1.4">
-        <doc xml:space="preserve">Get the #GType for device providers managed by this factory. The type can
+        <doc xml:space="preserve"
+             filename="gst/gstdeviceproviderfactory.c"
+             line="387">Get the #GType for device providers managed by this factory. The type can
 only be retrieved if the device provider factory is loaded, which can be
 assured with gst_plugin_feature_load().</doc>
+        <source-position filename="gst/gstdeviceproviderfactory.h" line="70"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the #GType for device providers managed by this factory.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstdeviceproviderfactory.c"
+               line="395">the #GType for device providers managed by this factory.</doc>
           <type name="GType" c:type="GType"/>
         </return-value>
         <parameters>
           <instance-parameter name="factory" transfer-ownership="none">
-            <doc xml:space="preserve">factory to get managed #GType from</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdeviceproviderfactory.c"
+                 line="389">factory to get managed #GType from</doc>
             <type name="DeviceProviderFactory"
                   c:type="GstDeviceProviderFactory*"/>
           </instance-parameter>
@@ -12138,20 +18150,29 @@ assured with gst_plugin_feature_load().</doc>
       <method name="get_metadata"
               c:identifier="gst_device_provider_factory_get_metadata"
               version="1.4">
-        <doc xml:space="preserve">Get the metadata on @factory with @key.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstdeviceproviderfactory.c"
+             line="409">Get the metadata on @factory with @key.</doc>
+        <source-position filename="gst/gstdeviceproviderfactory.h" line="73"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">the metadata with @key on @factory or %NULL
+          <doc xml:space="preserve"
+               filename="gst/gstdeviceproviderfactory.c"
+               line="416">the metadata with @key on @factory or %NULL
 when there was no metadata with the given @key.</doc>
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
         <parameters>
           <instance-parameter name="factory" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDeviceProviderFactory</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdeviceproviderfactory.c"
+                 line="411">a #GstDeviceProviderFactory</doc>
             <type name="DeviceProviderFactory"
                   c:type="GstDeviceProviderFactory*"/>
           </instance-parameter>
           <parameter name="key" transfer-ownership="none">
-            <doc xml:space="preserve">a key</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdeviceproviderfactory.c"
+                 line="412">a key</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
@@ -12159,9 +18180,14 @@ when there was no metadata with the given @key.</doc>
       <method name="get_metadata_keys"
               c:identifier="gst_device_provider_factory_get_metadata_keys"
               version="1.4">
-        <doc xml:space="preserve">Get the available keys for the metadata on @factory.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstdeviceproviderfactory.c"
+             line="428">Get the available keys for the metadata on @factory.</doc>
+        <source-position filename="gst/gstdeviceproviderfactory.h" line="76"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">
+          <doc xml:space="preserve"
+               filename="gst/gstdeviceproviderfactory.c"
+               line="434">
 a %NULL-terminated array of key strings, or %NULL when there is no
 metadata. Free with g_strfreev() when no longer needed.</doc>
           <array c:type="gchar**">
@@ -12170,7 +18196,9 @@ metadata. Free with g_strfreev() when no longer needed.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="factory" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDeviceProviderFactory</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdeviceproviderfactory.c"
+                 line="430">a #GstDeviceProviderFactory</doc>
             <type name="DeviceProviderFactory"
                   c:type="GstDeviceProviderFactory*"/>
           </instance-parameter>
@@ -12179,14 +18207,21 @@ metadata. Free with g_strfreev() when no longer needed.</doc>
       <method name="has_classes"
               c:identifier="gst_device_provider_factory_has_classes"
               version="1.4">
-        <doc xml:space="preserve">Check if @factory matches all of the given @classes</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if @factory matches or if @classes is %NULL.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstdeviceproviderfactory.c"
+             line="517">Check if @factory matches all of the given @classes</doc>
+        <source-position filename="gst/gstdeviceproviderfactory.h" line="92"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstdeviceproviderfactory.c"
+               line="525">%TRUE if @factory matches or if @classes is %NULL.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="factory" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDeviceProviderFactory</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdeviceproviderfactory.c"
+                 line="519">a #GstDeviceProviderFactory</doc>
             <type name="DeviceProviderFactory"
                   c:type="GstDeviceProviderFactory*"/>
           </instance-parameter>
@@ -12194,7 +18229,9 @@ metadata. Free with g_strfreev() when no longer needed.</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">a "/" separate list of classes to match, only match
+            <doc xml:space="preserve"
+                 filename="gst/gstdeviceproviderfactory.c"
+                 line="520">a "/" separate list of classes to match, only match
     if all classes are matched</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
@@ -12203,14 +18240,21 @@ metadata. Free with g_strfreev() when no longer needed.</doc>
       <method name="has_classesv"
               c:identifier="gst_device_provider_factory_has_classesv"
               version="1.4">
-        <doc xml:space="preserve">Check if @factory matches all of the given classes</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if @factory matches.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstdeviceproviderfactory.c"
+             line="466">Check if @factory matches all of the given classes</doc>
+        <source-position filename="gst/gstdeviceproviderfactory.h" line="89"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstdeviceproviderfactory.c"
+               line="474">%TRUE if @factory matches.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="factory" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDeviceProviderFactory</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstdeviceproviderfactory.c"
+                 line="468">a #GstDeviceProviderFactory</doc>
             <type name="DeviceProviderFactory"
                   c:type="GstDeviceProviderFactory*"/>
           </instance-parameter>
@@ -12218,7 +18262,9 @@ metadata. Free with g_strfreev() when no longer needed.</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">a %NULL terminated array
+            <doc xml:space="preserve"
+                 filename="gst/gstdeviceproviderfactory.c"
+                 line="469">a %NULL terminated array
   of classes to match, only match if all classes are matched</doc>
             <array c:type="gchar**">
               <type name="utf8" c:type="gchar*"/>
@@ -12232,17 +18278,24 @@ metadata. Free with g_strfreev() when no longer needed.</doc>
             disguised="1"
             glib:is-gtype-struct-for="DeviceProviderFactory"
             version="1.4">
-      <doc xml:space="preserve">The opaque #GstDeviceProviderFactoryClass data structure.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstdeviceproviderfactory.h"
+           line="37">The opaque #GstDeviceProviderFactoryClass data structure.</doc>
+      <source-position filename="gst/gstdeviceproviderfactory.h" line="45"/>
     </record>
     <record name="DeviceProviderPrivate"
             c:type="GstDeviceProviderPrivate"
             disguised="1">
+      <source-position filename="gst/gstdeviceprovider.h" line="33"/>
     </record>
     <class name="DoubleRange"
            c:symbol-prefix="double_range"
            glib:type-name="GstDoubleRange"
            glib:get-type="gst_double_range_get_type"
            glib:fundamental="1">
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.h"
+           line="261">A fundamental type that describes a #gdouble range</doc>
     </class>
     <class name="DynamicTypeFactory"
            c:symbol-prefix="dynamic_type_factory"
@@ -12251,7 +18304,9 @@ metadata. Free with g_strfreev() when no longer needed.</doc>
            glib:type-name="GstDynamicTypeFactory"
            glib:get-type="gst_dynamic_type_factory_get_type"
            glib:type-struct="DynamicTypeFactoryClass">
-      <doc xml:space="preserve">#GstDynamicTypeFactory is used to represent a type that can be
+      <doc xml:space="preserve"
+           filename="gst/gstdynamictypefactory.c"
+           line="22">#GstDynamicTypeFactory is used to represent a type that can be
 automatically loaded the first time it is used. For example,
 a non-standard type for use in caps fields.
 
@@ -12270,7 +18325,9 @@ plugin_init (GstPlugin * plugin)
   return gst_dynamic_type_register (plugin, GST_TYPE_CUSTOM_CAPS_FIELD);
 }
 ]|</doc>
+      <source-position filename="gst/gstdynamictypefactory.h" line="31"/>
       <function name="load" c:identifier="gst_dynamic_type_factory_load">
+        <source-position filename="gst/gstdynamictypefactory.h" line="52"/>
         <return-value transfer-ownership="none">
           <type name="GType" c:type="GType"/>
         </return-value>
@@ -12285,290 +18342,1007 @@ plugin_init (GstPlugin * plugin)
             c:type="GstDynamicTypeFactoryClass"
             disguised="1"
             glib:is-gtype-struct-for="DynamicTypeFactory">
+      <source-position filename="gst/gstdynamictypefactory.h" line="31"/>
     </record>
+    <function-macro name="ELEMENT"
+                    c:identifier="GST_ELEMENT"
+                    introspectable="0">
+      <source-position filename="gst/gstelement.h" line="62"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="ELEMENT_BUS"
+                    c:identifier="GST_ELEMENT_BUS"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstelement.h"
+           line="313">Get the message bus of this element. This is not thread-safe by default
+(i.e. you will have to make sure the object lock is taken yourself).
+If in doubt use gst_element_get_bus() instead.</doc>
+      <source-position filename="gst/gstelement.h" line="321"/>
+      <parameters>
+        <parameter name="elem">
+          <doc xml:space="preserve"
+               filename="gst/gstelement.h"
+               line="315">A #GstElement to query</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="ELEMENT_CAST"
+                    c:identifier="GST_ELEMENT_CAST"
+                    introspectable="0">
+      <source-position filename="gst/gstelement.h" line="64"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="ELEMENT_CLASS"
+                    c:identifier="GST_ELEMENT_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gstelement.h" line="63"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="ELEMENT_CLOCK"
+                    c:identifier="GST_ELEMENT_CLOCK"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstelement.h"
+           line="323">Get the clock of this element.This is not thread-safe by default
+(i.e. you will have to make sure it is safe yourself).
+If in doubt use gst_element_get_clock() instead.</doc>
+      <source-position filename="gst/gstelement.h" line="331"/>
+      <parameters>
+        <parameter name="elem">
+          <doc xml:space="preserve"
+               filename="gst/gstelement.h"
+               line="325">A #GstElement to query</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="ELEMENT_ERROR"
+                    c:identifier="GST_ELEMENT_ERROR"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstelement.h"
+           line="406">Utility function that elements can use in case they encountered a fatal
+data processing error. The pipeline will post an error message and the
+application will be requested to stop further media processing.</doc>
+      <source-position filename="gst/gstelement.h" line="420"/>
+      <parameters>
+        <parameter name="el">
+          <doc xml:space="preserve"
+               filename="gst/gstelement.h"
+               line="408">the element that generates the error</doc>
+        </parameter>
+        <parameter name="domain">
+          <doc xml:space="preserve"
+               filename="gst/gstelement.h"
+               line="409">like CORE, LIBRARY, RESOURCE or STREAM (see [GstGError](gsterror))</doc>
+        </parameter>
+        <parameter name="code">
+          <doc xml:space="preserve"
+               filename="gst/gstelement.h"
+               line="410">error code defined for that domain (see [GstGError](gsterror))</doc>
+        </parameter>
+        <parameter name="text">
+          <doc xml:space="preserve"
+               filename="gst/gstelement.h"
+               line="411">the message to display (format string and args enclosed in
+            parentheses)</doc>
+        </parameter>
+        <parameter name="debug">
+          <doc xml:space="preserve"
+               filename="gst/gstelement.h"
+               line="413">debugging information for the message (format string and args
+            enclosed in parentheses)</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="ELEMENT_ERROR_WITH_DETAILS"
+                    c:identifier="GST_ELEMENT_ERROR_WITH_DETAILS"
+                    version="1.10"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstelement.h"
+           line="373">Utility function that elements can use in case they encountered a fatal
+data processing error. The pipeline will post an error message and the
+application will be requested to stop further media processing.</doc>
+      <source-position filename="gst/gstelement.h" line="392"/>
+      <parameters>
+        <parameter name="el">
+          <doc xml:space="preserve"
+               filename="gst/gstelement.h"
+               line="375">the element that generates the error</doc>
+        </parameter>
+        <parameter name="domain">
+          <doc xml:space="preserve"
+               filename="gst/gstelement.h"
+               line="376">like CORE, LIBRARY, RESOURCE or STREAM (see [GstGError](gsterror))</doc>
+        </parameter>
+        <parameter name="code">
+          <doc xml:space="preserve"
+               filename="gst/gstelement.h"
+               line="377">error code defined for that domain (see [GstGError](gsterror))</doc>
+        </parameter>
+        <parameter name="text">
+          <doc xml:space="preserve"
+               filename="gst/gstelement.h"
+               line="378">the message to display (format string and args enclosed in
+            parentheses)</doc>
+        </parameter>
+        <parameter name="debug">
+          <doc xml:space="preserve"
+               filename="gst/gstelement.h"
+               line="380">debugging information for the message (format string and args
+            enclosed in parentheses)</doc>
+        </parameter>
+        <parameter name="args">
+          <doc xml:space="preserve"
+               filename="gst/gstelement.h"
+               line="382">optional name, type, value triplets, which will be stored
+         in the associated GstStructure. NULL terminator required.
+         Must be enclosed within parentheses.</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="ELEMENT_FACTORY"
+                    c:identifier="GST_ELEMENT_FACTORY"
+                    introspectable="0">
+      <source-position filename="gst/gstelementfactory.h" line="45"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="ELEMENT_FACTORY_CAST"
+                    c:identifier="GST_ELEMENT_FACTORY_CAST"
+                    introspectable="0">
+      <source-position filename="gst/gstelementfactory.h" line="51"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="ELEMENT_FACTORY_CLASS"
+                    c:identifier="GST_ELEMENT_FACTORY_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gstelementfactory.h" line="47"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
     <constant name="ELEMENT_FACTORY_KLASS_DECODER"
               value="Decoder"
               c:type="GST_ELEMENT_FACTORY_KLASS_DECODER">
+      <source-position filename="gst/gstelementfactory.h" line="200"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="ELEMENT_FACTORY_KLASS_DECRYPTOR"
               value="Decryptor"
               c:type="GST_ELEMENT_FACTORY_KLASS_DECRYPTOR">
+      <source-position filename="gst/gstelementfactory.h" line="210"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="ELEMENT_FACTORY_KLASS_DEMUXER"
               value="Demuxer"
               c:type="GST_ELEMENT_FACTORY_KLASS_DEMUXER">
+      <source-position filename="gst/gstelementfactory.h" line="205"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="ELEMENT_FACTORY_KLASS_DEPAYLOADER"
               value="Depayloader"
               c:type="GST_ELEMENT_FACTORY_KLASS_DEPAYLOADER">
+      <source-position filename="gst/gstelementfactory.h" line="208"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="ELEMENT_FACTORY_KLASS_ENCODER"
               value="Encoder"
               c:type="GST_ELEMENT_FACTORY_KLASS_ENCODER">
+      <source-position filename="gst/gstelementfactory.h" line="201"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="ELEMENT_FACTORY_KLASS_ENCRYPTOR"
               value="Encryptor"
               c:type="GST_ELEMENT_FACTORY_KLASS_ENCRYPTOR">
+      <source-position filename="gst/gstelementfactory.h" line="211"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="ELEMENT_FACTORY_KLASS_FORMATTER"
               value="Formatter"
               c:type="GST_ELEMENT_FACTORY_KLASS_FORMATTER">
+      <source-position filename="gst/gstelementfactory.h" line="209"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="ELEMENT_FACTORY_KLASS_HARDWARE"
               value="Hardware"
               c:type="GST_ELEMENT_FACTORY_KLASS_HARDWARE"
               version="1.16">
-      <doc xml:space="preserve">Elements interacting with hardware devices should specify this classifier in
+      <doc xml:space="preserve"
+           filename="gst/gstelementfactory.h"
+           line="220">Elements interacting with hardware devices should specify this classifier in
 their metadata. You may need to put the element in "READY" state to test if
 the hardware is present in the system.</doc>
+      <source-position filename="gst/gstelementfactory.h" line="228"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="ELEMENT_FACTORY_KLASS_MEDIA_AUDIO"
               value="Audio"
               c:type="GST_ELEMENT_FACTORY_KLASS_MEDIA_AUDIO">
+      <source-position filename="gst/gstelementfactory.h" line="214"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="ELEMENT_FACTORY_KLASS_MEDIA_IMAGE"
               value="Image"
               c:type="GST_ELEMENT_FACTORY_KLASS_MEDIA_IMAGE">
+      <source-position filename="gst/gstelementfactory.h" line="215"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="ELEMENT_FACTORY_KLASS_MEDIA_METADATA"
               value="Metadata"
               c:type="GST_ELEMENT_FACTORY_KLASS_MEDIA_METADATA">
+      <source-position filename="gst/gstelementfactory.h" line="217"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="ELEMENT_FACTORY_KLASS_MEDIA_SUBTITLE"
               value="Subtitle"
               c:type="GST_ELEMENT_FACTORY_KLASS_MEDIA_SUBTITLE">
+      <source-position filename="gst/gstelementfactory.h" line="216"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="ELEMENT_FACTORY_KLASS_MEDIA_VIDEO"
               value="Video"
               c:type="GST_ELEMENT_FACTORY_KLASS_MEDIA_VIDEO">
+      <source-position filename="gst/gstelementfactory.h" line="213"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="ELEMENT_FACTORY_KLASS_MUXER"
               value="Muxer"
               c:type="GST_ELEMENT_FACTORY_KLASS_MUXER">
+      <source-position filename="gst/gstelementfactory.h" line="204"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="ELEMENT_FACTORY_KLASS_PARSER"
               value="Parser"
               c:type="GST_ELEMENT_FACTORY_KLASS_PARSER">
+      <source-position filename="gst/gstelementfactory.h" line="206"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="ELEMENT_FACTORY_KLASS_PAYLOADER"
               value="Payloader"
               c:type="GST_ELEMENT_FACTORY_KLASS_PAYLOADER">
+      <source-position filename="gst/gstelementfactory.h" line="207"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="ELEMENT_FACTORY_KLASS_SINK"
               value="Sink"
               c:type="GST_ELEMENT_FACTORY_KLASS_SINK">
+      <source-position filename="gst/gstelementfactory.h" line="202"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="ELEMENT_FACTORY_KLASS_SRC"
               value="Source"
               c:type="GST_ELEMENT_FACTORY_KLASS_SRC">
+      <source-position filename="gst/gstelementfactory.h" line="203"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="ELEMENT_FACTORY_TYPE_ANY"
               value="562949953421311"
               c:type="GST_ELEMENT_FACTORY_TYPE_ANY">
-      <doc xml:space="preserve">Elements of any of the defined GST_ELEMENT_FACTORY_LIST types</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstelementfactory.h"
+           line="153">Elements of any of the defined GST_ELEMENT_FACTORY_LIST types</doc>
+      <source-position filename="gst/gstelementfactory.h" line="158"/>
       <type name="ElementFactoryListType" c:type="GstElementFactoryListType"/>
     </constant>
     <constant name="ELEMENT_FACTORY_TYPE_AUDIOVIDEO_SINKS"
               value="3940649673949188"
               c:type="GST_ELEMENT_FACTORY_TYPE_AUDIOVIDEO_SINKS">
-      <doc xml:space="preserve">All sinks handling audio, video or image media types</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstelementfactory.h"
+           line="185">All sinks handling audio, video or image media types</doc>
+      <source-position filename="gst/gstelementfactory.h" line="190"/>
       <type name="ElementFactoryListType" c:type="GstElementFactoryListType"/>
     </constant>
     <constant name="ELEMENT_FACTORY_TYPE_AUDIO_ENCODER"
               value="1125899906842626"
               c:type="GST_ELEMENT_FACTORY_TYPE_AUDIO_ENCODER">
-      <doc xml:space="preserve">All encoders handling audio media types</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstelementfactory.h"
+           line="178">All encoders handling audio media types</doc>
+      <source-position filename="gst/gstelementfactory.h" line="183"/>
       <type name="ElementFactoryListType" c:type="GstElementFactoryListType"/>
     </constant>
     <constant name="ELEMENT_FACTORY_TYPE_DECODABLE"
               value="1377"
               c:type="GST_ELEMENT_FACTORY_TYPE_DECODABLE">
-      <doc xml:space="preserve">All elements used to 'decode' streams (decoders, demuxers, parsers, depayloaders)</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstelementfactory.h"
+           line="192">All elements used to 'decode' streams (decoders, demuxers, parsers, depayloaders)</doc>
+      <source-position filename="gst/gstelementfactory.h" line="197"/>
       <type name="ElementFactoryListType" c:type="GstElementFactoryListType"/>
     </constant>
     <constant name="ELEMENT_FACTORY_TYPE_DECODER"
               value="1"
               c:type="GST_ELEMENT_FACTORY_TYPE_DECODER">
+      <source-position filename="gst/gstelementfactory.h" line="131"/>
       <type name="ElementFactoryListType" c:type="GstElementFactoryListType"/>
     </constant>
     <constant name="ELEMENT_FACTORY_TYPE_DECRYPTOR"
               value="1024"
               c:type="GST_ELEMENT_FACTORY_TYPE_DECRYPTOR">
+      <source-position filename="gst/gstelementfactory.h" line="141"/>
       <type name="ElementFactoryListType" c:type="GstElementFactoryListType"/>
     </constant>
     <constant name="ELEMENT_FACTORY_TYPE_DEMUXER"
               value="32"
               c:type="GST_ELEMENT_FACTORY_TYPE_DEMUXER">
+      <source-position filename="gst/gstelementfactory.h" line="136"/>
       <type name="ElementFactoryListType" c:type="GstElementFactoryListType"/>
     </constant>
     <constant name="ELEMENT_FACTORY_TYPE_DEPAYLOADER"
               value="256"
               c:type="GST_ELEMENT_FACTORY_TYPE_DEPAYLOADER">
+      <source-position filename="gst/gstelementfactory.h" line="139"/>
       <type name="ElementFactoryListType" c:type="GstElementFactoryListType"/>
     </constant>
     <constant name="ELEMENT_FACTORY_TYPE_ENCODER"
               value="2"
               c:type="GST_ELEMENT_FACTORY_TYPE_ENCODER">
+      <source-position filename="gst/gstelementfactory.h" line="132"/>
       <type name="ElementFactoryListType" c:type="GstElementFactoryListType"/>
     </constant>
     <constant name="ELEMENT_FACTORY_TYPE_ENCRYPTOR"
               value="2048"
               c:type="GST_ELEMENT_FACTORY_TYPE_ENCRYPTOR">
+      <source-position filename="gst/gstelementfactory.h" line="142"/>
       <type name="ElementFactoryListType" c:type="GstElementFactoryListType"/>
     </constant>
     <constant name="ELEMENT_FACTORY_TYPE_FORMATTER"
               value="512"
               c:type="GST_ELEMENT_FACTORY_TYPE_FORMATTER">
+      <source-position filename="gst/gstelementfactory.h" line="140"/>
+      <type name="ElementFactoryListType" c:type="GstElementFactoryListType"/>
+    </constant>
+    <constant name="ELEMENT_FACTORY_TYPE_HARDWARE"
+              value="4096"
+              c:type="GST_ELEMENT_FACTORY_TYPE_HARDWARE">
+      <source-position filename="gst/gstelementfactory.h" line="143"/>
       <type name="ElementFactoryListType" c:type="GstElementFactoryListType"/>
     </constant>
     <constant name="ELEMENT_FACTORY_TYPE_MAX_ELEMENTS"
               value="281474976710656"
               c:type="GST_ELEMENT_FACTORY_TYPE_MAX_ELEMENTS">
+      <source-position filename="gst/gstelementfactory.h" line="145"/>
       <type name="ElementFactoryListType" c:type="GstElementFactoryListType"/>
     </constant>
     <constant name="ELEMENT_FACTORY_TYPE_MEDIA_ANY"
               value="18446462598732840960"
               c:type="GST_ELEMENT_FACTORY_TYPE_MEDIA_ANY">
-      <doc xml:space="preserve">Elements matching any of the defined GST_ELEMENT_FACTORY_TYPE_MEDIA types
+      <doc xml:space="preserve"
+           filename="gst/gstelementfactory.h"
+           line="160">Elements matching any of the defined GST_ELEMENT_FACTORY_TYPE_MEDIA types
 
 Note: Do not use this if you wish to not filter against any of the defined
 media types. If you wish to do this, simply don't specify any
 GST_ELEMENT_FACTORY_TYPE_MEDIA flag.</doc>
+      <source-position filename="gst/gstelementfactory.h" line="169"/>
       <type name="ElementFactoryListType" c:type="GstElementFactoryListType"/>
     </constant>
     <constant name="ELEMENT_FACTORY_TYPE_MEDIA_AUDIO"
               value="1125899906842624"
               c:type="GST_ELEMENT_FACTORY_TYPE_MEDIA_AUDIO">
+      <source-position filename="gst/gstelementfactory.h" line="148"/>
       <type name="ElementFactoryListType" c:type="GstElementFactoryListType"/>
     </constant>
     <constant name="ELEMENT_FACTORY_TYPE_MEDIA_IMAGE"
               value="2251799813685248"
               c:type="GST_ELEMENT_FACTORY_TYPE_MEDIA_IMAGE">
+      <source-position filename="gst/gstelementfactory.h" line="149"/>
       <type name="ElementFactoryListType" c:type="GstElementFactoryListType"/>
     </constant>
     <constant name="ELEMENT_FACTORY_TYPE_MEDIA_METADATA"
               value="9007199254740992"
               c:type="GST_ELEMENT_FACTORY_TYPE_MEDIA_METADATA">
+      <source-position filename="gst/gstelementfactory.h" line="151"/>
       <type name="ElementFactoryListType" c:type="GstElementFactoryListType"/>
     </constant>
     <constant name="ELEMENT_FACTORY_TYPE_MEDIA_SUBTITLE"
               value="4503599627370496"
               c:type="GST_ELEMENT_FACTORY_TYPE_MEDIA_SUBTITLE">
+      <source-position filename="gst/gstelementfactory.h" line="150"/>
       <type name="ElementFactoryListType" c:type="GstElementFactoryListType"/>
     </constant>
     <constant name="ELEMENT_FACTORY_TYPE_MEDIA_VIDEO"
               value="562949953421312"
               c:type="GST_ELEMENT_FACTORY_TYPE_MEDIA_VIDEO">
+      <source-position filename="gst/gstelementfactory.h" line="147"/>
       <type name="ElementFactoryListType" c:type="GstElementFactoryListType"/>
     </constant>
     <constant name="ELEMENT_FACTORY_TYPE_MUXER"
               value="16"
               c:type="GST_ELEMENT_FACTORY_TYPE_MUXER">
+      <source-position filename="gst/gstelementfactory.h" line="135"/>
       <type name="ElementFactoryListType" c:type="GstElementFactoryListType"/>
     </constant>
     <constant name="ELEMENT_FACTORY_TYPE_PARSER"
               value="64"
               c:type="GST_ELEMENT_FACTORY_TYPE_PARSER">
+      <source-position filename="gst/gstelementfactory.h" line="137"/>
       <type name="ElementFactoryListType" c:type="GstElementFactoryListType"/>
     </constant>
     <constant name="ELEMENT_FACTORY_TYPE_PAYLOADER"
               value="128"
               c:type="GST_ELEMENT_FACTORY_TYPE_PAYLOADER">
+      <source-position filename="gst/gstelementfactory.h" line="138"/>
       <type name="ElementFactoryListType" c:type="GstElementFactoryListType"/>
     </constant>
     <constant name="ELEMENT_FACTORY_TYPE_SINK"
               value="4"
               c:type="GST_ELEMENT_FACTORY_TYPE_SINK">
+      <source-position filename="gst/gstelementfactory.h" line="133"/>
       <type name="ElementFactoryListType" c:type="GstElementFactoryListType"/>
     </constant>
     <constant name="ELEMENT_FACTORY_TYPE_SRC"
               value="8"
               c:type="GST_ELEMENT_FACTORY_TYPE_SRC">
+      <source-position filename="gst/gstelementfactory.h" line="134"/>
       <type name="ElementFactoryListType" c:type="GstElementFactoryListType"/>
     </constant>
     <constant name="ELEMENT_FACTORY_TYPE_VIDEO_ENCODER"
               value="2814749767106562"
               c:type="GST_ELEMENT_FACTORY_TYPE_VIDEO_ENCODER">
-      <doc xml:space="preserve">All encoders handling video or image media types</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstelementfactory.h"
+           line="171">All encoders handling video or image media types</doc>
+      <source-position filename="gst/gstelementfactory.h" line="176"/>
       <type name="ElementFactoryListType" c:type="GstElementFactoryListType"/>
     </constant>
+    <function-macro name="ELEMENT_FLOW_ERROR"
+                    c:identifier="GST_ELEMENT_FLOW_ERROR"
+                    version="1.10"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstelement.h"
+           line="355">Utility function that elements can use in case they encountered a fatal
+data processing error due to wrong flow processing.</doc>
+      <source-position filename="gst/gstelement.h" line="365"/>
+      <parameters>
+        <parameter name="el">
+          <doc xml:space="preserve"
+               filename="gst/gstelement.h"
+               line="357">the element that generates the error</doc>
+        </parameter>
+        <parameter name="flow_return">
+          <doc xml:space="preserve"
+               filename="gst/gstelement.h"
+               line="358">the GstFlowReturn leading to that ERROR message</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="ELEMENT_GET_CLASS"
+                    c:identifier="GST_ELEMENT_GET_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gstelement.h" line="61"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="ELEMENT_INFO"
+                    c:identifier="GST_ELEMENT_INFO"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstelement.h"
+           line="531">Utility function that elements can use in case they want to inform
+the application of something noteworthy that is not an error.
+The pipeline will post a info message and the
+application will be informed.</doc>
+      <source-position filename="gst/gstelement.h" line="546"/>
+      <parameters>
+        <parameter name="el">
+          <doc xml:space="preserve"
+               filename="gst/gstelement.h"
+               line="533">the element that generates the information</doc>
+        </parameter>
+        <parameter name="domain">
+          <doc xml:space="preserve"
+               filename="gst/gstelement.h"
+               line="534">like CORE, LIBRARY, RESOURCE or STREAM (see [GstGError](gsterror))</doc>
+        </parameter>
+        <parameter name="code">
+          <doc xml:space="preserve"
+               filename="gst/gstelement.h"
+               line="535">error code defined for that domain (see [GstGError](gsterror))</doc>
+        </parameter>
+        <parameter name="text">
+          <doc xml:space="preserve"
+               filename="gst/gstelement.h"
+               line="536">the message to display (format string and args enclosed in
+            parentheses)</doc>
+        </parameter>
+        <parameter name="debug">
+          <doc xml:space="preserve"
+               filename="gst/gstelement.h"
+               line="538">debugging information for the message (format string and args
+            enclosed in parentheses)</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="ELEMENT_INFO_WITH_DETAILS"
+                    c:identifier="GST_ELEMENT_INFO_WITH_DETAILS"
+                    version="1.10"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstelement.h"
+           line="495">Utility function that elements can use in case they want to inform
+the application of something noteworthy that is not an error.
+The pipeline will post a info message and the
+application will be informed.
+Optional name, type, value triplets may be supplied, and will be stored
+in the associated GstStructure. NULL terminator required.</doc>
+      <source-position filename="gst/gstelement.h" line="517"/>
+      <parameters>
+        <parameter name="el">
+          <doc xml:space="preserve"
+               filename="gst/gstelement.h"
+               line="497">the element that generates the information</doc>
+        </parameter>
+        <parameter name="domain">
+          <doc xml:space="preserve"
+               filename="gst/gstelement.h"
+               line="498">like CORE, LIBRARY, RESOURCE or STREAM (see [GstGError](gsterror))</doc>
+        </parameter>
+        <parameter name="code">
+          <doc xml:space="preserve"
+               filename="gst/gstelement.h"
+               line="499">error code defined for that domain (see [GstGError](gsterror))</doc>
+        </parameter>
+        <parameter name="text">
+          <doc xml:space="preserve"
+               filename="gst/gstelement.h"
+               line="500">the message to display (format string and args enclosed in
+            parentheses)</doc>
+        </parameter>
+        <parameter name="debug">
+          <doc xml:space="preserve"
+               filename="gst/gstelement.h"
+               line="502">debugging information for the message (format string and args
+            enclosed in parentheses)</doc>
+        </parameter>
+        <parameter name="args">
+          <doc xml:space="preserve"
+               filename="gst/gstelement.h"
+               line="504">optional name, type, value triplets, which will be stored
+         in the associated GstStructure. NULL terminator required.
+         Must be enclosed within parentheses.</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="ELEMENT_IS_LOCKED_STATE"
+                    c:identifier="GST_ELEMENT_IS_LOCKED_STATE"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstelement.h"
+           line="284">Check if the element is in the locked state and therefore will ignore state
+changes from its parent object.</doc>
+      <source-position filename="gst/gstelement.h" line="291"/>
+      <parameters>
+        <parameter name="elem">
+          <doc xml:space="preserve"
+               filename="gst/gstelement.h"
+               line="286">A #GstElement to query</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="ELEMENT_MESSAGE_MAKE_DETAILS"
+                    c:identifier="GST_ELEMENT_MESSAGE_MAKE_DETAILS"
+                    introspectable="0">
+      <source-position filename="gst/gstelement.h" line="353"/>
+      <parameters>
+        <parameter name="args">
+        </parameter>
+      </parameters>
+    </function-macro>
     <constant name="ELEMENT_METADATA_AUTHOR"
               value="author"
               c:type="GST_ELEMENT_METADATA_AUTHOR">
-      <doc xml:space="preserve">Name and contact details of the author(s). Use \n to separate
+      <doc xml:space="preserve"
+           filename="gst/gstelementmetadata.h"
+           line="52">Name and contact details of the author(s). Use \n to separate
 multiple author details.
 E.g: "Joe Bloggs &amp;lt;joe.blogs at foo.com&amp;gt;"</doc>
+      <source-position filename="gst/gstelementmetadata.h" line="59"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="ELEMENT_METADATA_DESCRIPTION"
               value="description"
               c:type="GST_ELEMENT_METADATA_DESCRIPTION">
-      <doc xml:space="preserve">Sentence describing the purpose of the element.
+      <doc xml:space="preserve"
+           filename="gst/gstelementmetadata.h"
+           line="45">Sentence describing the purpose of the element.
 E.g: "Write stream to a file"</doc>
+      <source-position filename="gst/gstelementmetadata.h" line="51"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="ELEMENT_METADATA_DOC_URI"
               value="doc-uri"
               c:type="GST_ELEMENT_METADATA_DOC_URI">
-      <doc xml:space="preserve">Set uri pointing to user documentation. Applications can use this to show
+      <doc xml:space="preserve"
+           filename="gst/gstelementmetadata.h"
+           line="61">Set uri pointing to user documentation. Applications can use this to show
 help for e.g. effects to users.</doc>
+      <source-position filename="gst/gstelementmetadata.h" line="67"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="ELEMENT_METADATA_ICON_NAME"
               value="icon-name"
               c:type="GST_ELEMENT_METADATA_ICON_NAME">
-      <doc xml:space="preserve">Elements that bridge to certain other products can include an icon of that
+      <doc xml:space="preserve"
+           filename="gst/gstelementmetadata.h"
+           line="68">Elements that bridge to certain other products can include an icon of that
 used product. Application can show the icon in menus/selectors to help
 identifying specific elements.</doc>
+      <source-position filename="gst/gstelementmetadata.h" line="75"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="ELEMENT_METADATA_KLASS"
               value="klass"
               c:type="GST_ELEMENT_METADATA_KLASS">
-      <doc xml:space="preserve">String describing the type of element, as an unordered list
+      <doc xml:space="preserve"
+           filename="gst/gstelementmetadata.h"
+           line="36">String describing the type of element, as an unordered list
 separated with slashes ('/'). See draft-klass.txt of the design docs
 for more details and common types. E.g: "Sink/File"</doc>
+      <source-position filename="gst/gstelementmetadata.h" line="43"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="ELEMENT_METADATA_LONGNAME"
               value="long-name"
               c:type="GST_ELEMENT_METADATA_LONGNAME">
-      <doc xml:space="preserve">The long English name of the element. E.g. "File Sink"</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstelementmetadata.h"
+           line="30">The long English name of the element. E.g. "File Sink"</doc>
+      <source-position filename="gst/gstelementmetadata.h" line="35"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
+    <function-macro name="ELEMENT_NAME"
+                    c:identifier="GST_ELEMENT_NAME"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstelement.h"
+           line="293">Gets the name of this element. This is not thread-safe by default
+(i.e. you will have to make sure the object lock is taken yourself).
+If in doubt use gst_element_get_name() instead.</doc>
+      <source-position filename="gst/gstelement.h" line="301"/>
+      <parameters>
+        <parameter name="elem">
+          <doc xml:space="preserve"
+               filename="gst/gstelement.h"
+               line="295">A #GstElement to query</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="ELEMENT_PADS"
+                    c:identifier="GST_ELEMENT_PADS"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstelement.h"
+           line="333">Get the pads of this elements.</doc>
+      <source-position filename="gst/gstelement.h" line="339"/>
+      <parameters>
+        <parameter name="elem">
+          <doc xml:space="preserve"
+               filename="gst/gstelement.h"
+               line="335">A #GstElement to query</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="ELEMENT_PARENT"
+                    c:identifier="GST_ELEMENT_PARENT"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstelement.h"
+           line="303">Get the parent object of this element. This is not thread-safe by default
+(i.e. you will have to make sure the object lock is taken yourself).
+If in doubt use gst_object_get_parent() instead.</doc>
+      <source-position filename="gst/gstelement.h" line="311"/>
+      <parameters>
+        <parameter name="elem">
+          <doc xml:space="preserve"
+               filename="gst/gstelement.h"
+               line="305">A #GstElement to query</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="ELEMENT_START_TIME"
+                    c:identifier="GST_ELEMENT_START_TIME"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstelement.h"
+           line="341">This macro returns the start_time of the @elem. The start_time is the
+running_time of the pipeline when the element went to PAUSED.</doc>
+      <source-position filename="gst/gstelement.h" line="348"/>
+      <parameters>
+        <parameter name="elem">
+          <doc xml:space="preserve"
+               filename="gst/gstelement.h"
+               line="343">a #GstElement to return the start time for.</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="ELEMENT_WARNING"
+                    c:identifier="GST_ELEMENT_WARNING"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstelement.h"
+           line="467">Utility function that elements can use in case they encountered a non-fatal
+data processing problem. The pipeline will post a warning message and the
+application will be informed.</doc>
+      <source-position filename="gst/gstelement.h" line="481"/>
+      <parameters>
+        <parameter name="el">
+          <doc xml:space="preserve"
+               filename="gst/gstelement.h"
+               line="469">the element that generates the warning</doc>
+        </parameter>
+        <parameter name="domain">
+          <doc xml:space="preserve"
+               filename="gst/gstelement.h"
+               line="470">like CORE, LIBRARY, RESOURCE or STREAM (see [GstGError](gsterror))</doc>
+        </parameter>
+        <parameter name="code">
+          <doc xml:space="preserve"
+               filename="gst/gstelement.h"
+               line="471">error code defined for that domain (see [GstGError](gsterror))</doc>
+        </parameter>
+        <parameter name="text">
+          <doc xml:space="preserve"
+               filename="gst/gstelement.h"
+               line="472">the message to display (format string and args enclosed in
+            parentheses)</doc>
+        </parameter>
+        <parameter name="debug">
+          <doc xml:space="preserve"
+               filename="gst/gstelement.h"
+               line="474">debugging information for the message (format string and args
+            enclosed in parentheses)</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="ELEMENT_WARNING_WITH_DETAILS"
+                    c:identifier="GST_ELEMENT_WARNING_WITH_DETAILS"
+                    version="1.10"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstelement.h"
+           line="434">Utility function that elements can use in case they encountered a non-fatal
+data processing problem. The pipeline will post a warning message and the
+application will be informed.</doc>
+      <source-position filename="gst/gstelement.h" line="453"/>
+      <parameters>
+        <parameter name="el">
+          <doc xml:space="preserve"
+               filename="gst/gstelement.h"
+               line="436">the element that generates the warning</doc>
+        </parameter>
+        <parameter name="domain">
+          <doc xml:space="preserve"
+               filename="gst/gstelement.h"
+               line="437">like CORE, LIBRARY, RESOURCE or STREAM (see [GstGError](gsterror))</doc>
+        </parameter>
+        <parameter name="code">
+          <doc xml:space="preserve"
+               filename="gst/gstelement.h"
+               line="438">error code defined for that domain (see [GstGError](gsterror))</doc>
+        </parameter>
+        <parameter name="text">
+          <doc xml:space="preserve"
+               filename="gst/gstelement.h"
+               line="439">the message to display (format string and args enclosed in
+            parentheses)</doc>
+        </parameter>
+        <parameter name="debug">
+          <doc xml:space="preserve"
+               filename="gst/gstelement.h"
+               line="441">debugging information for the message (format string and args
+            enclosed in parentheses)</doc>
+        </parameter>
+        <parameter name="args">
+          <doc xml:space="preserve"
+               filename="gst/gstelement.h"
+               line="443">optional name, type, value triplets, which will be stored
+         in the associated GstStructure. NULL terminator required.
+         Must be enclosed within parentheses.</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
     <constant name="ERROR_SYSTEM"
               value="system error: %s"
               c:type="GST_ERROR_SYSTEM"
               introspectable="0">
-      <doc xml:space="preserve">Builds a string using errno describing the previously failed system
+      <doc xml:space="preserve"
+           filename="gst/gsterror.h"
+           line="237">Builds a string using errno describing the previously failed system
 call.  To be used as the debug argument in #GST_ELEMENT_ERROR.</doc>
+      <source-position filename="gst/gsterror.h" line="243"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
+    <function-macro name="EVENT" c:identifier="GST_EVENT" introspectable="0">
+      <source-position filename="gst/gstevent.h" line="238"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="EVENT_CAST"
+                    c:identifier="GST_EVENT_CAST"
+                    introspectable="0">
+      <source-position filename="gst/gstevent.h" line="237"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="EVENT_IS_DOWNSTREAM"
+                    c:identifier="GST_EVENT_IS_DOWNSTREAM"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstevent.h"
+           line="282">Check if an event can travel downstream.</doc>
+      <source-position filename="gst/gstevent.h" line="287"/>
+      <parameters>
+        <parameter name="ev">
+          <doc xml:space="preserve"
+               filename="gst/gstevent.h"
+               line="284">the event to query</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="EVENT_IS_SERIALIZED"
+                    c:identifier="GST_EVENT_IS_SERIALIZED"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstevent.h"
+           line="289">Check if an event is serialized with the data stream.</doc>
+      <source-position filename="gst/gstevent.h" line="294"/>
+      <parameters>
+        <parameter name="ev">
+          <doc xml:space="preserve"
+               filename="gst/gstevent.h"
+               line="291">the event to query</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="EVENT_IS_STICKY"
+                    c:identifier="GST_EVENT_IS_STICKY"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstevent.h"
+           line="296">Check if an event is sticky on the pads.</doc>
+      <source-position filename="gst/gstevent.h" line="301"/>
+      <parameters>
+        <parameter name="ev">
+          <doc xml:space="preserve"
+               filename="gst/gstevent.h"
+               line="298">the event to query</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="EVENT_IS_UPSTREAM"
+                    c:identifier="GST_EVENT_IS_UPSTREAM"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstevent.h"
+           line="275">Check if an event can travel upstream.</doc>
+      <source-position filename="gst/gstevent.h" line="280"/>
+      <parameters>
+        <parameter name="ev">
+          <doc xml:space="preserve"
+               filename="gst/gstevent.h"
+               line="277">the event to query</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="EVENT_MAKE_TYPE"
+                    c:identifier="GST_EVENT_MAKE_TYPE"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstevent.h"
+           line="62">when making custom event types, use this macro with the num and
+the given flags</doc>
+      <source-position filename="gst/gstevent.h" line="69"/>
+      <parameters>
+        <parameter name="num">
+          <doc xml:space="preserve"
+               filename="gst/gstevent.h"
+               line="64">the event number to create</doc>
+        </parameter>
+        <parameter name="flags">
+          <doc xml:space="preserve"
+               filename="gst/gstevent.h"
+               line="65">the event flags</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
     <constant name="EVENT_NUM_SHIFT" value="8" c:type="GST_EVENT_NUM_SHIFT">
+      <source-position filename="gst/gstevent.h" line="59"/>
       <type name="gint" c:type="gint"/>
     </constant>
+    <function-macro name="EVENT_SEQNUM"
+                    c:identifier="GST_EVENT_SEQNUM"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstevent.h"
+           line="267">The sequence number of @event.</doc>
+      <source-position filename="gst/gstevent.h" line="272"/>
+      <parameters>
+        <parameter name="event">
+          <doc xml:space="preserve"
+               filename="gst/gstevent.h"
+               line="269">the event to query</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="EVENT_TIMESTAMP"
+                    c:identifier="GST_EVENT_TIMESTAMP"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstevent.h"
+           line="257">Get the #GstClockTime timestamp of the event. This is the time when the event
+was created.</doc>
+      <source-position filename="gst/gstevent.h" line="264"/>
+      <parameters>
+        <parameter name="event">
+          <doc xml:space="preserve"
+               filename="gst/gstevent.h"
+               line="259">the event to query</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="EVENT_TYPE"
+                    c:identifier="GST_EVENT_TYPE"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstevent.h"
+           line="241">Get the #GstEventType of the event.</doc>
+      <source-position filename="gst/gstevent.h" line="246"/>
+      <parameters>
+        <parameter name="event">
+          <doc xml:space="preserve"
+               filename="gst/gstevent.h"
+               line="243">the event to query</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
     <constant name="EVENT_TYPE_BOTH" value="3" c:type="GST_EVENT_TYPE_BOTH">
-      <doc xml:space="preserve">The same thing as #GST_EVENT_TYPE_UPSTREAM | #GST_EVENT_TYPE_DOWNSTREAM.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstevent.h"
+           line="52">The same thing as #GST_EVENT_TYPE_UPSTREAM | #GST_EVENT_TYPE_DOWNSTREAM.</doc>
+      <source-position filename="gst/gstevent.h" line="57"/>
       <type name="EventTypeFlags" c:type="GstEventTypeFlags"/>
     </constant>
+    <function-macro name="EVENT_TYPE_NAME"
+                    c:identifier="GST_EVENT_TYPE_NAME"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstevent.h"
+           line="249">Get a constant string representation of the #GstEventType of the event.</doc>
+      <source-position filename="gst/gstevent.h" line="254"/>
+      <parameters>
+        <parameter name="event">
+          <doc xml:space="preserve"
+               filename="gst/gstevent.h"
+               line="251">the event to query</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
     <class name="Element"
            c:symbol-prefix="element"
            c:type="GstElement"
@@ -12577,7 +19351,9 @@ call.  To be used as the debug argument in #GST_ELEMENT_ERROR.</doc>
            glib:type-name="GstElement"
            glib:get-type="gst_element_get_type"
            glib:type-struct="ElementClass">
-      <doc xml:space="preserve">GstElement is the abstract base class needed to construct an element that
+      <doc xml:space="preserve"
+           filename="gst/gstelement.c"
+           line="23">GstElement is the abstract base class needed to construct an element that
 can be used in a GStreamer pipeline. Please refer to the plugin writers
 guide for more information on creating #GstElement subclasses.
 
@@ -12626,38 +19402,55 @@ element with gst_element_set_clock().
 Note that clock selection and distribution is normally handled by the
 toplevel #GstPipeline so the clock functions are only to be used in very
 specific situations.</doc>
+      <source-position filename="gst/gstelement.h" line="744"/>
       <function name="make_from_uri"
                 c:identifier="gst_element_make_from_uri"
                 throws="1">
-        <doc xml:space="preserve">Creates an element for handling the given URI.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsturi.c"
+             line="612">Creates an element for handling the given URI.</doc>
+        <source-position filename="gst/gsturi.h" line="161"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">a new element or %NULL if none
+          <doc xml:space="preserve"
+               filename="gst/gsturi.c"
+               line="621">a new element or %NULL if none
 could be created</doc>
           <type name="Element" c:type="GstElement*"/>
         </return-value>
         <parameters>
           <parameter name="type" transfer-ownership="none">
-            <doc xml:space="preserve">Whether to create a source or a sink</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="614">Whether to create a source or a sink</doc>
             <type name="URIType" c:type="const GstURIType"/>
           </parameter>
           <parameter name="uri" transfer-ownership="none">
-            <doc xml:space="preserve">URI to create an element for</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="615">URI to create an element for</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="elementname"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">Name of created element, can be %NULL.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="616">Name of created element, can be %NULL.</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </function>
       <function name="register" c:identifier="gst_element_register">
-        <doc xml:space="preserve">Create a new elementfactory capable of instantiating objects of the
+        <doc xml:space="preserve"
+             filename="gst/gstelementfactory.c"
+             line="187">Create a new elementfactory capable of instantiating objects of the
 @type and add the factory to @plugin.</doc>
+        <source-position filename="gst/gstelementfactory.h" line="90"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE, if the registering succeeded, %FALSE on error</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstelementfactory.c"
+               line="198">%TRUE, if the registering succeeded, %FALSE on error</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
@@ -12665,75 +19458,108 @@ could be created</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">#GstPlugin to register the element with, or %NULL for
+            <doc xml:space="preserve"
+                 filename="gst/gstelementfactory.c"
+                 line="189">#GstPlugin to register the element with, or %NULL for
     a static element.</doc>
             <type name="Plugin" c:type="GstPlugin*"/>
           </parameter>
           <parameter name="name" transfer-ownership="none">
-            <doc xml:space="preserve">name of elements of this type</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelementfactory.c"
+                 line="191">name of elements of this type</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="rank" transfer-ownership="none">
-            <doc xml:space="preserve">rank of element (higher rank means more importance when autoplugging)</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelementfactory.c"
+                 line="192">rank of element (higher rank means more importance when autoplugging)</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="type" transfer-ownership="none">
-            <doc xml:space="preserve">GType of element to register</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelementfactory.c"
+                 line="193">GType of element to register</doc>
             <type name="GType" c:type="GType"/>
           </parameter>
         </parameters>
       </function>
       <function name="state_change_return_get_name"
                 c:identifier="gst_element_state_change_return_get_name">
-        <doc xml:space="preserve">Gets a string representing the given state change result.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a string with the name of the state
+        <doc xml:space="preserve"
+             filename="gst/gstutils.c"
+             line="1304">Gets a string representing the given state change result.</doc>
+        <source-position filename="gst/gstutils.h" line="993"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="1310">a string with the name of the state
    result.</doc>
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
         <parameters>
           <parameter name="state_ret" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStateChangeReturn to get the name of.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="1306">a #GstStateChangeReturn to get the name of.</doc>
             <type name="StateChangeReturn" c:type="GstStateChangeReturn"/>
           </parameter>
         </parameters>
       </function>
       <function name="state_get_name"
                 c:identifier="gst_element_state_get_name">
-        <doc xml:space="preserve">Gets a string representing the given state.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a string with the name of the state.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstutils.c"
+             line="1276">Gets a string representing the given state.</doc>
+        <source-position filename="gst/gstutils.h" line="990"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="1282">a string with the name of the state.</doc>
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
         <parameters>
           <parameter name="state" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstState to get the name of.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="1278">a #GstState to get the name of.</doc>
             <type name="State" c:type="GstState"/>
           </parameter>
         </parameters>
       </function>
       <virtual-method name="change_state" invoker="change_state">
-        <doc xml:space="preserve">Perform @transition on @element.
+        <doc xml:space="preserve"
+             filename="gst/gstelement.c"
+             line="3009">Perform @transition on @element.
 
 This function must be called with STATE_LOCK held and is mainly used
 internally.</doc>
+        <source-position filename="gst/gstelement.h" line="722"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the #GstStateChangeReturn of the state transition.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstelement.c"
+               line="3019">the #GstStateChangeReturn of the state transition.</doc>
           <type name="StateChangeReturn" c:type="GstStateChangeReturn"/>
         </return-value>
         <parameters>
           <instance-parameter name="element" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElement</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="3011">a #GstElement</doc>
             <type name="Element" c:type="GstElement*"/>
           </instance-parameter>
           <parameter name="transition" transfer-ownership="none">
-            <doc xml:space="preserve">the requested transition</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="3012">the requested transition</doc>
             <type name="StateChange" c:type="GstStateChange"/>
           </parameter>
         </parameters>
       </virtual-method>
       <virtual-method name="get_state" invoker="get_state">
-        <doc xml:space="preserve">Gets the state of the element.
+        <doc xml:space="preserve"
+             filename="gst/gstelement.c"
+             line="2540">Gets the state of the element.
 
 For elements that performed an ASYNC state change, as reported by
 gst_element_set_state(), this function will block up to the
@@ -12753,8 +19579,11 @@ This mostly happens for live sources that only produce data in
 some sink elements might not be able to complete their state change because
 an element is not producing data to complete the preroll. When setting the
 element to playing, the preroll will complete and playback will start.</doc>
+        <source-position filename="gst/gstelement.h" line="719"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%GST_STATE_CHANGE_SUCCESS if the element has no more pending state
+          <doc xml:space="preserve"
+               filename="gst/gstelement.c"
+               line="2571">%GST_STATE_CHANGE_SUCCESS if the element has no more pending state
          and the last state change succeeded, %GST_STATE_CHANGE_ASYNC if the
          element is still performing a state change or
          %GST_STATE_CHANGE_FAILURE if the last state change failed.
@@ -12764,7 +19593,9 @@ MT safe.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="element" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElement to get the state of.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="2542">a #GstElement to get the state of.</doc>
             <type name="Element" c:type="GstElement*"/>
           </instance-parameter>
           <parameter name="state"
@@ -12773,7 +19604,9 @@ MT safe.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">a pointer to #GstState to hold the state.
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="2543">a pointer to #GstState to hold the state.
     Can be %NULL.</doc>
             <type name="State" c:type="GstState*"/>
           </parameter>
@@ -12783,19 +19616,25 @@ MT safe.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">a pointer to #GstState to hold the pending
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="2545">a pointer to #GstState to hold the pending
     state. Can be %NULL.</doc>
             <type name="State" c:type="GstState*"/>
           </parameter>
           <parameter name="timeout" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstClockTime to specify the timeout for an async
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="2547">a #GstClockTime to specify the timeout for an async
           state change or %GST_CLOCK_TIME_NONE for infinite timeout.</doc>
             <type name="ClockTime" c:type="GstClockTime"/>
           </parameter>
         </parameters>
       </virtual-method>
       <virtual-method name="no_more_pads" invoker="no_more_pads">
-        <doc xml:space="preserve">Use this function to signal that the element does not expect any more pads
+        <doc xml:space="preserve"
+             filename="gst/gstelement.c"
+             line="928">Use this function to signal that the element does not expect any more pads
 to show up in the current pipeline. This function should be called whenever
 pads have been added by the element itself. Elements with #GST_PAD_SOMETIMES
 pad templates use this in combination with autopluggers to figure out that
@@ -12804,17 +19643,21 @@ the element is done initializing its pads.
 This function emits the #GstElement::no-more-pads signal.
 
 MT safe.</doc>
+        <source-position filename="gst/gstelement.h" line="706"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="element" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElement</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="930">a #GstElement</doc>
             <type name="Element" c:type="GstElement*"/>
           </instance-parameter>
         </parameters>
       </virtual-method>
       <virtual-method name="pad_added">
+        <source-position filename="gst/gstelement.h" line="704"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
@@ -12828,6 +19671,7 @@ MT safe.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="pad_removed">
+        <source-position filename="gst/gstelement.h" line="705"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
@@ -12841,11 +19685,16 @@ MT safe.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="post_message" invoker="post_message">
-        <doc xml:space="preserve">Post a message on the element's #GstBus. This function takes ownership of the
+        <doc xml:space="preserve"
+             filename="gst/gstelement.c"
+             line="2083">Post a message on the element's #GstBus. This function takes ownership of the
 message; if you want to access the message after this call, you should add an
 additional reference before calling.</doc>
+        <source-position filename="gst/gstelement.h" line="738"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the message was successfully posted. The function returns
+          <doc xml:space="preserve"
+               filename="gst/gstelement.c"
+               line="2092">%TRUE if the message was successfully posted. The function returns
 %FALSE if the element did not have a bus.
 
 MT safe.</doc>
@@ -12853,21 +19702,30 @@ MT safe.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="element" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElement posting the message</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="2085">a #GstElement posting the message</doc>
             <type name="Element" c:type="GstElement*"/>
           </instance-parameter>
           <parameter name="message" transfer-ownership="full">
-            <doc xml:space="preserve">a #GstMessage to post</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="2086">a #GstMessage to post</doc>
             <type name="Message" c:type="GstMessage*"/>
           </parameter>
         </parameters>
       </virtual-method>
       <virtual-method name="provide_clock" invoker="provide_clock">
-        <doc xml:space="preserve">Get the clock provided by the given element.
+        <doc xml:space="preserve"
+             filename="gst/gstelement.c"
+             line="368">Get the clock provided by the given element.
 &gt; An element is only required to provide a clock in the PAUSED
 &gt; state. Some elements can provide a clock in other states.</doc>
+        <source-position filename="gst/gstelement.h" line="730"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">the GstClock provided by the
+          <doc xml:space="preserve"
+               filename="gst/gstelement.c"
+               line="376">the GstClock provided by the
 element or %NULL if no clock could be provided.  Unref after usage.
 
 MT safe.</doc>
@@ -12875,37 +19733,49 @@ MT safe.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="element" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElement to query</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="370">a #GstElement to query</doc>
             <type name="Element" c:type="GstElement*"/>
           </instance-parameter>
         </parameters>
       </virtual-method>
       <virtual-method name="query" invoker="query">
-        <doc xml:space="preserve">Performs a query on the given element.
+        <doc xml:space="preserve"
+             filename="gst/gstelement.c"
+             line="2008">Performs a query on the given element.
 
 For elements that don't implement a query handler, this function
 forwards the query to a random srcpad or to the peer of a
 random linked sinkpad of this element.
 
 Please note that some queries might need a running pipeline to work.</doc>
+        <source-position filename="gst/gstelement.h" line="736"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the query could be performed.
+          <doc xml:space="preserve"
+               filename="gst/gstelement.c"
+               line="2021">%TRUE if the query could be performed.
 
 MT safe.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="element" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElement to perform the query on.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="2010">a #GstElement to perform the query on.</doc>
             <type name="Element" c:type="GstElement*"/>
           </instance-parameter>
           <parameter name="query" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstQuery.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="2011">the #GstQuery.</doc>
             <type name="Query" c:type="GstQuery*"/>
           </parameter>
         </parameters>
       </virtual-method>
       <virtual-method name="release_pad">
+        <source-position filename="gst/gstelement.h" line="716"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
@@ -12919,30 +19789,41 @@ MT safe.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="request_new_pad" invoker="request_pad">
-        <doc xml:space="preserve">Retrieves a request pad from the element according to the provided template.
+        <doc xml:space="preserve"
+             filename="gst/gstelement.c"
+             line="1219">Retrieves a request pad from the element according to the provided template.
 Pad templates can be looked up using
 gst_element_factory_get_static_pad_templates().
 
 The pad should be released with gst_element_release_request_pad().</doc>
+        <source-position filename="gst/gstelement.h" line="713"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">requested #GstPad if found,
+          <doc xml:space="preserve"
+               filename="gst/gstelement.c"
+               line="1234">requested #GstPad if found,
     otherwise %NULL.  Release after usage.</doc>
           <type name="Pad" c:type="GstPad*"/>
         </return-value>
         <parameters>
           <instance-parameter name="element" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElement to find a request pad of.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="1221">a #GstElement to find a request pad of.</doc>
             <type name="Element" c:type="GstElement*"/>
           </instance-parameter>
           <parameter name="templ" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstPadTemplate of which we want a pad of.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="1222">a #GstPadTemplate of which we want a pad of.</doc>
             <type name="PadTemplate" c:type="GstPadTemplate*"/>
           </parameter>
           <parameter name="name"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">the name of the request #GstPad
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="1223">the name of the request #GstPad
 to retrieve. Can be %NULL.</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
@@ -12950,14 +19831,18 @@ to retrieve. Can be %NULL.</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">the caps of the pad we want to
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="1225">the caps of the pad we want to
 request. Can be %NULL.</doc>
             <type name="Caps" c:type="const GstCaps*"/>
           </parameter>
         </parameters>
       </virtual-method>
       <virtual-method name="send_event" invoker="send_event">
-        <doc xml:space="preserve">Sends an event to an element. If the element doesn't implement an
+        <doc xml:space="preserve"
+             filename="gst/gstelement.c"
+             line="1902">Sends an event to an element. If the element doesn't implement an
 event handler, the event will be pushed on a random linked sink pad for
 downstream events or a random linked source pad for upstream events.
 
@@ -12965,50 +19850,69 @@ This function takes ownership of the provided event so you should
 gst_event_ref() it if you want to reuse the event after this call.
 
 MT safe.</doc>
+        <source-position filename="gst/gstelement.h" line="734"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the event was handled. Events that trigger a preroll (such
+          <doc xml:space="preserve"
+               filename="gst/gstelement.c"
+               line="1916">%TRUE if the event was handled. Events that trigger a preroll (such
 as flushing seeks and steps) will emit %GST_MESSAGE_ASYNC_DONE.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="element" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElement to send the event to.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="1904">a #GstElement to send the event to.</doc>
             <type name="Element" c:type="GstElement*"/>
           </instance-parameter>
           <parameter name="event" transfer-ownership="full">
-            <doc xml:space="preserve">the #GstEvent to send to the element.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="1905">the #GstEvent to send to the element.</doc>
             <type name="Event" c:type="GstEvent*"/>
           </parameter>
         </parameters>
       </virtual-method>
       <virtual-method name="set_bus" invoker="set_bus">
-        <doc xml:space="preserve">Sets the bus of the element. Increases the refcount on the bus.
+        <doc xml:space="preserve"
+             filename="gst/gstelement.c"
+             line="3435">Sets the bus of the element. Increases the refcount on the bus.
 For internal use only, unless you're testing elements.
 
 MT safe.</doc>
+        <source-position filename="gst/gstelement.h" line="727"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="element" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElement to set the bus of.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="3437">a #GstElement to set the bus of.</doc>
             <type name="Element" c:type="GstElement*"/>
           </instance-parameter>
           <parameter name="bus"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">the #GstBus to set.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="3438">the #GstBus to set.</doc>
             <type name="Bus" c:type="GstBus*"/>
           </parameter>
         </parameters>
       </virtual-method>
       <virtual-method name="set_clock" invoker="set_clock">
-        <doc xml:space="preserve">Sets the clock for the element. This function increases the
+        <doc xml:space="preserve"
+             filename="gst/gstelement.c"
+             line="410">Sets the clock for the element. This function increases the
 refcount on the clock. Any previously set clock on the object
 is unreffed.</doc>
+        <source-position filename="gst/gstelement.h" line="731"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the element accepted the clock. An element can refuse a
+          <doc xml:space="preserve"
+               filename="gst/gstelement.c"
+               line="419">%TRUE if the element accepted the clock. An element can refuse a
 clock when it, for example, is not able to slave its internal clock to the
 @clock or when it requires a specific clock to operate.
 
@@ -13017,38 +19921,51 @@ MT safe.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="element" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElement to set the clock for.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="412">a #GstElement to set the clock for.</doc>
             <type name="Element" c:type="GstElement*"/>
           </instance-parameter>
           <parameter name="clock"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">the #GstClock to set for the element.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="413">the #GstClock to set for the element.</doc>
             <type name="Clock" c:type="GstClock*"/>
           </parameter>
         </parameters>
       </virtual-method>
       <virtual-method name="set_context" invoker="set_context">
-        <doc xml:space="preserve">Sets the context of the element. Increases the refcount of the context.
+        <doc xml:space="preserve"
+             filename="gst/gstelement.c"
+             line="3520">Sets the context of the element. Increases the refcount of the context.
 
 MT safe.</doc>
+        <source-position filename="gst/gstelement.h" line="740"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="element" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElement to set the context of.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="3522">a #GstElement to set the context of.</doc>
             <type name="Element" c:type="GstElement*"/>
           </instance-parameter>
           <parameter name="context" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstContext to set.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="3523">the #GstContext to set.</doc>
             <type name="Context" c:type="GstContext*"/>
           </parameter>
         </parameters>
       </virtual-method>
       <virtual-method name="set_state" invoker="set_state">
-        <doc xml:space="preserve">Sets the state of the element. This function will try to set the
+        <doc xml:space="preserve"
+             filename="gst/gstelement.c"
+             line="2854">Sets the state of the element. This function will try to set the
 requested state by going through all the intermediary states and calling
 the class's state change function for each.
 
@@ -13061,24 +19978,32 @@ of the state change or it can wait for a %GST_MESSAGE_ASYNC_DONE or
 
 State changes to %GST_STATE_READY or %GST_STATE_NULL never return
 #GST_STATE_CHANGE_ASYNC.</doc>
+        <source-position filename="gst/gstelement.h" line="721"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">Result of the state change using #GstStateChangeReturn.
+          <doc xml:space="preserve"
+               filename="gst/gstelement.c"
+               line="2873">Result of the state change using #GstStateChangeReturn.
 
 MT safe.</doc>
           <type name="StateChangeReturn" c:type="GstStateChangeReturn"/>
         </return-value>
         <parameters>
           <instance-parameter name="element" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElement to change state of.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="2856">a #GstElement to change state of.</doc>
             <type name="Element" c:type="GstElement*"/>
           </instance-parameter>
           <parameter name="state" transfer-ownership="none">
-            <doc xml:space="preserve">the element's new #GstState.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="2857">the element's new #GstState.</doc>
             <type name="State" c:type="GstState"/>
           </parameter>
         </parameters>
       </virtual-method>
       <virtual-method name="state_changed">
+        <source-position filename="gst/gstelement.h" line="723"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
@@ -13098,25 +20023,32 @@ MT safe.</doc>
         </parameters>
       </virtual-method>
       <method name="abort_state" c:identifier="gst_element_abort_state">
-        <doc xml:space="preserve">Abort the state change of the element. This function is used
+        <doc xml:space="preserve"
+             filename="gst/gstelement.c"
+             line="2595">Abort the state change of the element. This function is used
 by elements that do asynchronous state changes and find out
 something is wrong.
 
 This function should be called with the STATE_LOCK held.
 
 MT safe.</doc>
+        <source-position filename="gst/gstelement.h" line="1012"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="element" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElement to abort the state of.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="2597">a #GstElement to abort the state of.</doc>
             <type name="Element" c:type="GstElement*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="add_pad" c:identifier="gst_element_add_pad">
-        <doc xml:space="preserve">Adds a pad (link point) to @element. @pad's parent will be set to @element;
+        <doc xml:space="preserve"
+             filename="gst/gstelement.c"
+             line="716">Adds a pad (link point) to @element. @pad's parent will be set to @element;
 see gst_object_set_parent() for refcounting information.
 
 Pads are automatically activated when added in the PAUSED or PLAYING
@@ -13125,8 +20057,11 @@ state.
 The pad and the element should be unlocked when calling this function.
 
 This function will emit the #GstElement::pad-added signal on the element.</doc>
+        <source-position filename="gst/gstelement.h" line="894"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the pad could be added. This function can fail when
+          <doc xml:space="preserve"
+               filename="gst/gstelement.c"
+               line="731">%TRUE if the pad could be added. This function can fail when
 a pad with the same name already existed or the pad already had another
 parent.
 
@@ -13135,11 +20070,15 @@ MT safe.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="element" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElement to add the pad to.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="718">a #GstElement to add the pad to.</doc>
             <type name="Element" c:type="GstElement*"/>
           </instance-parameter>
           <parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstPad to add to the element.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="719">the #GstPad to add to the element.</doc>
             <type name="Pad" c:type="GstPad*"/>
           </parameter>
         </parameters>
@@ -13147,26 +20086,35 @@ MT safe.</doc>
       <method name="add_property_deep_notify_watch"
               c:identifier="gst_element_add_property_deep_notify_watch"
               version="1.10">
+        <source-position filename="gst/gstelement.h" line="1051"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a watch id, which can be used in connection with
+          <doc xml:space="preserve"
+               filename="gst/gstelement.c"
+               line="3720">a watch id, which can be used in connection with
     gst_element_remove_property_notify_watch() to remove the watch again.</doc>
           <type name="gulong" c:type="gulong"/>
         </return-value>
         <parameters>
           <instance-parameter name="element" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElement to watch (recursively) for property changes</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="3715">a #GstElement to watch (recursively) for property changes</doc>
             <type name="Element" c:type="GstElement*"/>
           </instance-parameter>
           <parameter name="property_name"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">name of property to watch for changes, or
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="3716">name of property to watch for changes, or
     NULL to watch all properties</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="include_value" transfer-ownership="none">
-            <doc xml:space="preserve">whether to include the new property value in the message</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="3718">whether to include the new property value in the message</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
@@ -13174,26 +20122,35 @@ MT safe.</doc>
       <method name="add_property_notify_watch"
               c:identifier="gst_element_add_property_notify_watch"
               version="1.10">
+        <source-position filename="gst/gstelement.h" line="1047"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a watch id, which can be used in connection with
+          <doc xml:space="preserve"
+               filename="gst/gstelement.c"
+               line="3688">a watch id, which can be used in connection with
     gst_element_remove_property_notify_watch() to remove the watch again.</doc>
           <type name="gulong" c:type="gulong"/>
         </return-value>
         <parameters>
           <instance-parameter name="element" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElement to watch for property changes</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="3683">a #GstElement to watch for property changes</doc>
             <type name="Element" c:type="GstElement*"/>
           </instance-parameter>
           <parameter name="property_name"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">name of property to watch for changes, or
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="3684">name of property to watch for changes, or
     NULL to watch all properties</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="include_value" transfer-ownership="none">
-            <doc xml:space="preserve">whether to include the new property value in the message</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="3686">whether to include the new property value in the message</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
@@ -13201,7 +20158,9 @@ MT safe.</doc>
       <method name="call_async"
               c:identifier="gst_element_call_async"
               version="1.10">
-        <doc xml:space="preserve">Calls @func from another thread and passes @user_data to it. This is to be
+        <doc xml:space="preserve"
+             filename="gst/gstelement.c"
+             line="3778">Calls @func from another thread and passes @user_data to it. This is to be
 used for cases when a state change has to be performed from a streaming
 thread, directly via gst_element_set_state() or indirectly e.g. via SEEK
 events.
@@ -13211,12 +20170,15 @@ deadlocks in many situations, as they might involve waiting for the
 streaming thread to shut down from this very streaming thread.
 
 MT safe.</doc>
+        <source-position filename="gst/gstelement.h" line="1035"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="element" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElement</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="3780">a #GstElement</doc>
             <type name="Element" c:type="GstElement*"/>
           </instance-parameter>
           <parameter name="func"
@@ -13224,7 +20186,9 @@ MT safe.</doc>
                      scope="notified"
                      closure="1"
                      destroy="2">
-            <doc xml:space="preserve">Function to call asynchronously from another thread</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="3781">Function to call asynchronously from another thread</doc>
             <type name="ElementCallAsyncFunc"
                   c:type="GstElementCallAsyncFunc"/>
           </parameter>
@@ -13232,39 +20196,54 @@ MT safe.</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">Data to pass to @func</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="3782">Data to pass to @func</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
           <parameter name="destroy_notify"
                      transfer-ownership="none"
                      scope="async">
-            <doc xml:space="preserve">GDestroyNotify for @user_data</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="3783">GDestroyNotify for @user_data</doc>
             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
           </parameter>
         </parameters>
       </method>
       <method name="change_state" c:identifier="gst_element_change_state">
-        <doc xml:space="preserve">Perform @transition on @element.
+        <doc xml:space="preserve"
+             filename="gst/gstelement.c"
+             line="3009">Perform @transition on @element.
 
 This function must be called with STATE_LOCK held and is mainly used
 internally.</doc>
+        <source-position filename="gst/gstelement.h" line="1015"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the #GstStateChangeReturn of the state transition.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstelement.c"
+               line="3019">the #GstStateChangeReturn of the state transition.</doc>
           <type name="StateChangeReturn" c:type="GstStateChangeReturn"/>
         </return-value>
         <parameters>
           <instance-parameter name="element" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElement</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="3011">a #GstElement</doc>
             <type name="Element" c:type="GstElement*"/>
           </instance-parameter>
           <parameter name="transition" transfer-ownership="none">
-            <doc xml:space="preserve">the requested transition</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="3012">the requested transition</doc>
             <type name="StateChange" c:type="GstStateChange"/>
           </parameter>
         </parameters>
       </method>
       <method name="continue_state" c:identifier="gst_element_continue_state">
-        <doc xml:space="preserve">Commit the state change of the element and proceed to the next
+        <doc xml:space="preserve"
+             filename="gst/gstelement.c"
+             line="2670">Commit the state change of the element and proceed to the next
 pending state if any. This function is used
 by elements that do asynchronous state changes.
 The core will normally call this method automatically when an
@@ -13277,34 +20256,46 @@ This method is used internally and should normally not be called by plugins
 or applications.
 
 This function must be called with STATE_LOCK held.</doc>
+        <source-position filename="gst/gstelement.h" line="1019"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The result of the commit state change.
+          <doc xml:space="preserve"
+               filename="gst/gstelement.c"
+               line="2689">The result of the commit state change.
 
 MT safe.</doc>
           <type name="StateChangeReturn" c:type="GstStateChangeReturn"/>
         </return-value>
         <parameters>
           <instance-parameter name="element" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElement to continue the state change of.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="2672">a #GstElement to continue the state change of.</doc>
             <type name="Element" c:type="GstElement*"/>
           </instance-parameter>
           <parameter name="ret" transfer-ownership="none">
-            <doc xml:space="preserve">The previous state return value</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="2673">The previous state return value</doc>
             <type name="StateChangeReturn" c:type="GstStateChangeReturn"/>
           </parameter>
         </parameters>
       </method>
       <method name="create_all_pads"
               c:identifier="gst_element_create_all_pads">
-        <doc xml:space="preserve">Creates a pad for each pad template that is always available.
+        <doc xml:space="preserve"
+             filename="gst/gstutils.c"
+             line="881">Creates a pad for each pad template that is always available.
 This function is only useful during object initialization of
 subclasses of #GstElement.</doc>
+        <source-position filename="gst/gstutils.h" line="981"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="element" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElement to create pads for</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="883">a #GstElement to create pads for</doc>
             <type name="Element" c:type="GstElement*"/>
           </instance-parameter>
         </parameters>
@@ -13312,27 +20303,36 @@ subclasses of #GstElement.</doc>
       <method name="foreach_pad"
               c:identifier="gst_element_foreach_pad"
               version="1.14">
-        <doc xml:space="preserve">Call @func with @user_data for each of @element's pads. @func will be called
+        <doc xml:space="preserve"
+             filename="gst/gstelement.c"
+             line="1416">Call @func with @user_data for each of @element's pads. @func will be called
 exactly once for each pad that exists at the time of this call, unless
 one of the calls to @func returns %FALSE in which case we will stop
 iterating pads and return early. If new pads are added or pads are removed
 while pads are being iterated, this will not be taken into account until
 next time this function is used.</doc>
+        <source-position filename="gst/gstelement.h" line="949"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%FALSE if @element had no pads or if one of the calls to @func
+          <doc xml:space="preserve"
+               filename="gst/gstelement.c"
+               line="1429">%FALSE if @element had no pads or if one of the calls to @func
   returned %FALSE.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="element" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElement to iterate pads of</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="1418">a #GstElement to iterate pads of</doc>
             <type name="Element" c:type="GstElement*"/>
           </instance-parameter>
           <parameter name="func"
                      transfer-ownership="none"
                      scope="call"
                      closure="1">
-            <doc xml:space="preserve">function to call for each pad</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="1419">function to call for each pad</doc>
             <type name="ElementForeachPadFunc"
                   c:type="GstElementForeachPadFunc"/>
           </parameter>
@@ -13340,7 +20340,9 @@ next time this function is used.</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">user data passed to @func</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="1420">user data passed to @func</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
         </parameters>
@@ -13348,27 +20350,36 @@ next time this function is used.</doc>
       <method name="foreach_sink_pad"
               c:identifier="gst_element_foreach_sink_pad"
               version="1.14">
-        <doc xml:space="preserve">Call @func with @user_data for each of @element's sink pads. @func will be
+        <doc xml:space="preserve"
+             filename="gst/gstelement.c"
+             line="1364">Call @func with @user_data for each of @element's sink pads. @func will be
 called exactly once for each sink pad that exists at the time of this call,
 unless one of the calls to @func returns %FALSE in which case we will stop
 iterating pads and return early. If new sink pads are added or sink pads
 are removed while the sink pads are being iterated, this will not be taken
 into account until next time this function is used.</doc>
+        <source-position filename="gst/gstelement.h" line="941"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%FALSE if @element had no sink pads or if one of the calls to @func
+          <doc xml:space="preserve"
+               filename="gst/gstelement.c"
+               line="1377">%FALSE if @element had no sink pads or if one of the calls to @func
   returned %FALSE.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="element" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElement to iterate sink pads of</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="1366">a #GstElement to iterate sink pads of</doc>
             <type name="Element" c:type="GstElement*"/>
           </instance-parameter>
           <parameter name="func"
                      transfer-ownership="none"
                      scope="call"
                      closure="1">
-            <doc xml:space="preserve">function to call for each sink pad</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="1367">function to call for each sink pad</doc>
             <type name="ElementForeachPadFunc"
                   c:type="GstElementForeachPadFunc"/>
           </parameter>
@@ -13376,7 +20387,9 @@ into account until next time this function is used.</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">user data passed to @func</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="1368">user data passed to @func</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
         </parameters>
@@ -13384,27 +20397,36 @@ into account until next time this function is used.</doc>
       <method name="foreach_src_pad"
               c:identifier="gst_element_foreach_src_pad"
               version="1.14">
-        <doc xml:space="preserve">Call @func with @user_data for each of @element's source pads. @func will be
+        <doc xml:space="preserve"
+             filename="gst/gstelement.c"
+             line="1390">Call @func with @user_data for each of @element's source pads. @func will be
 called exactly once for each source pad that exists at the time of this call,
 unless one of the calls to @func returns %FALSE in which case we will stop
 iterating pads and return early. If new source pads are added or source pads
 are removed while the source pads are being iterated, this will not be taken
 into account until next time this function is used.</doc>
+        <source-position filename="gst/gstelement.h" line="945"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%FALSE if @element had no source pads or if one of the calls
+          <doc xml:space="preserve"
+               filename="gst/gstelement.c"
+               line="1403">%FALSE if @element had no source pads or if one of the calls
   to @func returned %FALSE.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="element" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElement to iterate source pads of</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="1392">a #GstElement to iterate source pads of</doc>
             <type name="Element" c:type="GstElement*"/>
           </instance-parameter>
           <parameter name="func"
                      transfer-ownership="none"
                      scope="call"
                      closure="1">
-            <doc xml:space="preserve">function to call for each source pad</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="1393">function to call for each source pad</doc>
             <type name="ElementForeachPadFunc"
                   c:type="GstElementForeachPadFunc"/>
           </parameter>
@@ -13412,34 +20434,48 @@ into account until next time this function is used.</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">user data passed to @func</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="1394">user data passed to @func</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_base_time" c:identifier="gst_element_get_base_time">
-        <doc xml:space="preserve">Returns the base time of the element. The base time is the
+        <doc xml:space="preserve"
+             filename="gst/gstelement.c"
+             line="499">Returns the base time of the element. The base time is the
 absolute time of the clock when this element was last put to
 PLAYING. Subtracting the base time from the clock time gives
 the running time of the element.</doc>
+        <source-position filename="gst/gstelement.h" line="855"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the base time of the element.
+          <doc xml:space="preserve"
+               filename="gst/gstelement.c"
+               line="508">the base time of the element.
 
 MT safe.</doc>
           <type name="ClockTime" c:type="GstClockTime"/>
         </return-value>
         <parameters>
           <instance-parameter name="element" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElement.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="501">a #GstElement.</doc>
             <type name="Element" c:type="GstElement*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_bus" c:identifier="gst_element_get_bus">
-        <doc xml:space="preserve">Returns the bus of the element. Note that only a #GstPipeline will provide a
+        <doc xml:space="preserve"
+             filename="gst/gstelement.c"
+             line="3458">Returns the bus of the element. Note that only a #GstPipeline will provide a
 bus for the application.</doc>
+        <source-position filename="gst/gstelement.h" line="875"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">the element's #GstBus. unref after
+          <doc xml:space="preserve"
+               filename="gst/gstelement.c"
+               line="3465">the element's #GstBus. unref after
 usage.
 
 MT safe.</doc>
@@ -13447,79 +20483,108 @@ MT safe.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="element" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElement to get the bus of.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="3460">a #GstElement to get the bus of.</doc>
             <type name="Element" c:type="GstElement*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_clock" c:identifier="gst_element_get_clock">
-        <doc xml:space="preserve">Gets the currently configured clock of the element. This is the clock as was
+        <doc xml:space="preserve"
+             filename="gst/gstelement.c"
+             line="444">Gets the currently configured clock of the element. This is the clock as was
 last set with gst_element_set_clock().
 
 Elements in a pipeline will only have their clock set when the
 pipeline is in the PLAYING state.</doc>
+        <source-position filename="gst/gstelement.h" line="846"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">the #GstClock of the element. unref after usage.
+          <doc xml:space="preserve"
+               filename="gst/gstelement.c"
+               line="454">the #GstClock of the element. unref after usage.
 
 MT safe.</doc>
           <type name="Clock" c:type="GstClock*"/>
         </return-value>
         <parameters>
           <instance-parameter name="element" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElement to get the clock of.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="446">a #GstElement to get the clock of.</doc>
             <type name="Element" c:type="GstElement*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_compatible_pad"
               c:identifier="gst_element_get_compatible_pad">
-        <doc xml:space="preserve">Looks for an unlinked pad to which the given pad can link. It is not
+        <doc xml:space="preserve"
+             filename="gst/gstutils.c"
+             line="1116">Looks for an unlinked pad to which the given pad can link. It is not
 guaranteed that linking the pads will work, though it should work in most
 cases.
 
 This function will first attempt to find a compatible unlinked ALWAYS pad,
 and if none can be found, it will request a compatible REQUEST pad by looking
 at the templates of @element.</doc>
+        <source-position filename="gst/gstutils.h" line="984"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">the #GstPad to which a link
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="1130">the #GstPad to which a link
   can be made, or %NULL if one cannot be found. gst_object_unref()
   after usage.</doc>
           <type name="Pad" c:type="GstPad*"/>
         </return-value>
         <parameters>
           <instance-parameter name="element" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElement in which the pad should be found.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="1118">a #GstElement in which the pad should be found.</doc>
             <type name="Element" c:type="GstElement*"/>
           </instance-parameter>
           <parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstPad to find a compatible one for.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="1119">the #GstPad to find a compatible one for.</doc>
             <type name="Pad" c:type="GstPad*"/>
           </parameter>
           <parameter name="caps"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">the #GstCaps to use as a filter.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="1120">the #GstCaps to use as a filter.</doc>
             <type name="Caps" c:type="GstCaps*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_compatible_pad_template"
               c:identifier="gst_element_get_compatible_pad_template">
-        <doc xml:space="preserve">Retrieves a pad template from @element that is compatible with @compattempl.
+        <doc xml:space="preserve"
+             filename="gst/gstutils.c"
+             line="914">Retrieves a pad template from @element that is compatible with @compattempl.
 Pads from compatible templates can be linked together.</doc>
+        <source-position filename="gst/gstutils.h" line="987"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">a compatible #GstPadTemplate,
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="923">a compatible #GstPadTemplate,
   or %NULL if none was found. No unreferencing is necessary.</doc>
           <type name="PadTemplate" c:type="GstPadTemplate*"/>
         </return-value>
         <parameters>
           <instance-parameter name="element" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElement to get a compatible pad template for</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="916">a #GstElement to get a compatible pad template for</doc>
             <type name="Element" c:type="GstElement*"/>
           </instance-parameter>
           <parameter name="compattempl" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstPadTemplate to find a compatible
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="917">the #GstPadTemplate to find a compatible
     template for</doc>
             <type name="PadTemplate" c:type="GstPadTemplate*"/>
           </parameter>
@@ -13528,20 +20593,29 @@ Pads from compatible templates can be linked together.</doc>
       <method name="get_context"
               c:identifier="gst_element_get_context"
               version="1.8">
-        <doc xml:space="preserve">Gets the context with @context_type set on the element or NULL.
+        <doc xml:space="preserve"
+             filename="gst/gstelement.c"
+             line="3612">Gets the context with @context_type set on the element or NULL.
 
 MT safe.</doc>
+        <source-position filename="gst/gstelement.h" line="886"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">A #GstContext or NULL</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstelement.c"
+               line="3621">A #GstContext or NULL</doc>
           <type name="Context" c:type="GstContext*"/>
         </return-value>
         <parameters>
           <instance-parameter name="element" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElement to get the context of.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="3614">a #GstElement to get the context of.</doc>
             <type name="Element" c:type="GstElement*"/>
           </instance-parameter>
           <parameter name="context_type" transfer-ownership="none">
-            <doc xml:space="preserve">a name of a context to retrieve</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="3615">a name of a context to retrieve</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
@@ -13549,18 +20623,27 @@ MT safe.</doc>
       <method name="get_context_unlocked"
               c:identifier="gst_element_get_context_unlocked"
               version="1.8">
-        <doc xml:space="preserve">Gets the context with @context_type set on the element or NULL.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstelement.c"
+             line="3583">Gets the context with @context_type set on the element or NULL.</doc>
+        <source-position filename="gst/gstelement.h" line="889"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">A #GstContext or NULL</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstelement.c"
+               line="3590">A #GstContext or NULL</doc>
           <type name="Context" c:type="GstContext*"/>
         </return-value>
         <parameters>
           <instance-parameter name="element" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElement to get the context of.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="3585">a #GstElement to get the context of.</doc>
             <type name="Element" c:type="GstElement*"/>
           </instance-parameter>
           <parameter name="context_type" transfer-ownership="none">
-            <doc xml:space="preserve">a name of a context to retrieve</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="3586">a name of a context to retrieve</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
@@ -13568,32 +20651,95 @@ MT safe.</doc>
       <method name="get_contexts"
               c:identifier="gst_element_get_contexts"
               version="1.8">
-        <doc xml:space="preserve">Gets the contexts set on the element.
+        <doc xml:space="preserve"
+             filename="gst/gstelement.c"
+             line="3547">Gets the contexts set on the element.
 
 MT safe.</doc>
+        <source-position filename="gst/gstelement.h" line="883"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">List of #GstContext</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstelement.c"
+               line="3555">List of #GstContext</doc>
           <type name="GLib.List" c:type="GList*">
             <type name="Context"/>
           </type>
         </return-value>
         <parameters>
           <instance-parameter name="element" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElement to set the context of.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="3549">a #GstElement to set the context of.</doc>
+            <type name="Element" c:type="GstElement*"/>
+          </instance-parameter>
+        </parameters>
+      </method>
+      <method name="get_current_clock_time"
+              c:identifier="gst_element_get_current_clock_time"
+              version="1.18">
+        <doc xml:space="preserve"
+             filename="gst/gstelement.c"
+             line="630">Returns the current clock time of the element, as in, the time of the
+element's clock, or GST_CLOCK_TIME_NONE if there is no clock.</doc>
+        <source-position filename="gst/gstelement.h" line="867"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstelement.c"
+               line="637">the clock time of the element, or GST_CLOCK_TIME_NONE if there is
+no clock.</doc>
+          <type name="ClockTime" c:type="GstClockTime"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="element" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="632">a #GstElement.</doc>
+            <type name="Element" c:type="GstElement*"/>
+          </instance-parameter>
+        </parameters>
+      </method>
+      <method name="get_current_running_time"
+              c:identifier="gst_element_get_current_running_time"
+              version="1.18">
+        <doc xml:space="preserve"
+             filename="gst/gstelement.c"
+             line="589">Returns the running time of the element. The running time is the
+element's clock time minus its base time. Will return GST_CLOCK_TIME_NONE
+if the element has no clock, or if its base time has not been set.</doc>
+        <source-position filename="gst/gstelement.h" line="864"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstelement.c"
+               line="597">the running time of the element, or GST_CLOCK_TIME_NONE if the
+element has no clock or its base time has not been set.</doc>
+          <type name="ClockTime" c:type="GstClockTime"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="element" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="591">a #GstElement.</doc>
             <type name="Element" c:type="GstElement*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_factory" c:identifier="gst_element_get_factory">
-        <doc xml:space="preserve">Retrieves the factory that was used to create this element.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstelement.c"
+             line="3304">Retrieves the factory that was used to create this element.</doc>
+        <source-position filename="gst/gstelement.h" line="1042"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">the #GstElementFactory used for creating this
+          <doc xml:space="preserve"
+               filename="gst/gstelement.c"
+               line="3310">the #GstElementFactory used for creating this
     element or %NULL if element has not been registered (static element). no refcounting is needed.</doc>
           <type name="ElementFactory" c:type="GstElementFactory*"/>
         </return-value>
         <parameters>
           <instance-parameter name="element" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElement to request the element factory of.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="3306">a #GstElement to request the element factory of.</doc>
             <type name="Element" c:type="GstElement*"/>
           </instance-parameter>
         </parameters>
@@ -13601,18 +20747,27 @@ MT safe.</doc>
       <method name="get_metadata"
               c:identifier="gst_element_get_metadata"
               version="1.14">
-        <doc xml:space="preserve">Get metadata with @key in @klass.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the metadata for @key.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstelement.c"
+             line="1678">Get metadata with @key in @klass.</doc>
+        <source-position filename="gst/gstelement.h" line="1064"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstelement.c"
+               line="1685">the metadata for @key.</doc>
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
         <parameters>
           <instance-parameter name="element" transfer-ownership="none">
-            <doc xml:space="preserve">class to get metadata for</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="1680">class to get metadata for</doc>
             <type name="Element" c:type="GstElement*"/>
           </instance-parameter>
           <parameter name="key" transfer-ownership="none">
-            <doc xml:space="preserve">the key to get</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="1681">the key to get</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
@@ -13620,20 +20775,29 @@ MT safe.</doc>
       <method name="get_pad_template"
               c:identifier="gst_element_get_pad_template"
               version="1.14">
-        <doc xml:space="preserve">Retrieves a padtemplate from @element with the given name.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstelement.c"
+             line="1777">Retrieves a padtemplate from @element with the given name.</doc>
+        <source-position filename="gst/gstelement.h" line="1059"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">the #GstPadTemplate with the
+          <doc xml:space="preserve"
+               filename="gst/gstelement.c"
+               line="1784">the #GstPadTemplate with the
     given name, or %NULL if none was found. No unreferencing is
     necessary.</doc>
           <type name="PadTemplate" c:type="GstPadTemplate*"/>
         </return-value>
         <parameters>
           <instance-parameter name="element" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElement to get the pad template of.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="1779">a #GstElement to get the pad template of.</doc>
             <type name="Element" c:type="GstElement*"/>
           </instance-parameter>
           <parameter name="name" transfer-ownership="none">
-            <doc xml:space="preserve">the name of the #GstPadTemplate to get.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="1780">the name of the #GstPadTemplate to get.</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
@@ -13641,10 +20805,15 @@ MT safe.</doc>
       <method name="get_pad_template_list"
               c:identifier="gst_element_get_pad_template_list"
               version="1.14">
-        <doc xml:space="preserve">Retrieves a list of the pad templates associated with @element. The
+        <doc xml:space="preserve"
+             filename="gst/gstelement.c"
+             line="1719">Retrieves a list of the pad templates associated with @element. The
 list must not be modified by the calling code.</doc>
+        <source-position filename="gst/gstelement.h" line="1062"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the #GList of
+          <doc xml:space="preserve"
+               filename="gst/gstelement.c"
+               line="1726">the #GList of
     pad templates.</doc>
           <type name="GLib.List" c:type="GList*">
             <type name="PadTemplate"/>
@@ -13652,57 +20821,77 @@ list must not be modified by the calling code.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="element" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElement to get pad templates of.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="1721">a #GstElement to get pad templates of.</doc>
             <type name="Element" c:type="GstElement*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_request_pad"
               c:identifier="gst_element_get_request_pad">
-        <doc xml:space="preserve">Retrieves a pad from the element by name (e.g. "src_\%d"). This version only
+        <doc xml:space="preserve"
+             filename="gst/gstelement.c"
+             line="1157">Retrieves a pad from the element by name (e.g. "src_\%d"). This version only
 retrieves request pads. The pad should be released with
 gst_element_release_request_pad().
 
 This method is slower than manually getting the pad template and calling
 gst_element_request_pad() if the pads should have a specific name (e.g.
 @name is "src_1" instead of "src_\%u").</doc>
+        <source-position filename="gst/gstelement.h" line="906"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">requested #GstPad if found,
+          <doc xml:space="preserve"
+               filename="gst/gstelement.c"
+               line="1170">requested #GstPad if found,
     otherwise %NULL.  Release after usage.</doc>
           <type name="Pad" c:type="GstPad*"/>
         </return-value>
         <parameters>
           <instance-parameter name="element" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElement to find a request pad of.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="1159">a #GstElement to find a request pad of.</doc>
             <type name="Element" c:type="GstElement*"/>
           </instance-parameter>
           <parameter name="name" transfer-ownership="none">
-            <doc xml:space="preserve">the name of the request #GstPad to retrieve.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="1160">the name of the request #GstPad to retrieve.</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_start_time" c:identifier="gst_element_get_start_time">
-        <doc xml:space="preserve">Returns the start time of the element. The start time is the
+        <doc xml:space="preserve"
+             filename="gst/gstelement.c"
+             line="561">Returns the start time of the element. The start time is the
 running time of the clock when this element was last put to PAUSED.
 
 Usually the start_time is managed by a toplevel element such as
 #GstPipeline.
 
 MT safe.</doc>
+        <source-position filename="gst/gstelement.h" line="861"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the start time of the element.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstelement.c"
+               line="573">the start time of the element.</doc>
           <type name="ClockTime" c:type="GstClockTime"/>
         </return-value>
         <parameters>
           <instance-parameter name="element" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElement.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="563">a #GstElement.</doc>
             <type name="Element" c:type="GstElement*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_state" c:identifier="gst_element_get_state">
-        <doc xml:space="preserve">Gets the state of the element.
+        <doc xml:space="preserve"
+             filename="gst/gstelement.c"
+             line="2540">Gets the state of the element.
 
 For elements that performed an ASYNC state change, as reported by
 gst_element_set_state(), this function will block up to the
@@ -13722,8 +20911,11 @@ This mostly happens for live sources that only produce data in
 some sink elements might not be able to complete their state change because
 an element is not producing data to complete the preroll. When setting the
 element to playing, the preroll will complete and playback will start.</doc>
+        <source-position filename="gst/gstelement.h" line="1004"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%GST_STATE_CHANGE_SUCCESS if the element has no more pending state
+          <doc xml:space="preserve"
+               filename="gst/gstelement.c"
+               line="2571">%GST_STATE_CHANGE_SUCCESS if the element has no more pending state
          and the last state change succeeded, %GST_STATE_CHANGE_ASYNC if the
          element is still performing a state change or
          %GST_STATE_CHANGE_FAILURE if the last state change failed.
@@ -13733,7 +20925,9 @@ MT safe.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="element" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElement to get the state of.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="2542">a #GstElement to get the state of.</doc>
             <type name="Element" c:type="GstElement*"/>
           </instance-parameter>
           <parameter name="state"
@@ -13742,7 +20936,9 @@ MT safe.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">a pointer to #GstState to hold the state.
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="2543">a pointer to #GstState to hold the state.
     Can be %NULL.</doc>
             <type name="State" c:type="GstState*"/>
           </parameter>
@@ -13752,22 +20948,31 @@ MT safe.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">a pointer to #GstState to hold the pending
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="2545">a pointer to #GstState to hold the pending
     state. Can be %NULL.</doc>
             <type name="State" c:type="GstState*"/>
           </parameter>
           <parameter name="timeout" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstClockTime to specify the timeout for an async
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="2547">a #GstClockTime to specify the timeout for an async
           state change or %GST_CLOCK_TIME_NONE for infinite timeout.</doc>
             <type name="ClockTime" c:type="GstClockTime"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_static_pad" c:identifier="gst_element_get_static_pad">
-        <doc xml:space="preserve">Retrieves a pad from @element by name. This version only retrieves
+        <doc xml:space="preserve"
+             filename="gst/gstelement.c"
+             line="962">Retrieves a pad from @element by name. This version only retrieves
 already-existing (i.e. 'static') pads.</doc>
+        <source-position filename="gst/gstelement.h" line="903"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">the requested #GstPad if
+          <doc xml:space="preserve"
+               filename="gst/gstelement.c"
+               line="970">the requested #GstPad if
     found, otherwise %NULL.  unref after usage.
 
 MT safe.</doc>
@@ -13775,95 +20980,129 @@ MT safe.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="element" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElement to find a static pad of.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="964">a #GstElement to find a static pad of.</doc>
             <type name="Element" c:type="GstElement*"/>
           </instance-parameter>
           <parameter name="name" transfer-ownership="none">
-            <doc xml:space="preserve">the name of the static #GstPad to retrieve.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="965">the name of the static #GstPad to retrieve.</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </method>
       <method name="is_locked_state"
               c:identifier="gst_element_is_locked_state">
-        <doc xml:space="preserve">Checks if the state of an element is locked.
+        <doc xml:space="preserve"
+             filename="gst/gstelement.c"
+             line="2289">Checks if the state of an element is locked.
 If the state of an element is locked, state changes of the parent don't
 affect the element.
 This way you can leave currently unused elements inside bins. Just lock their
 state before changing the state from #GST_STATE_NULL.
 
 MT safe.</doc>
+        <source-position filename="gst/gstelement.h" line="995"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE, if the element's state is locked.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstelement.c"
+               line="2301">%TRUE, if the element's state is locked.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="element" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElement.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="2291">a #GstElement.</doc>
             <type name="Element" c:type="GstElement*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="iterate_pads" c:identifier="gst_element_iterate_pads">
-        <doc xml:space="preserve">Retrieves an iterator of @element's pads. The iterator should
+        <doc xml:space="preserve"
+             filename="gst/gstelement.c"
+             line="1262">Retrieves an iterator of @element's pads. The iterator should
 be freed after usage. Also more specialized iterators exists such as
 gst_element_iterate_src_pads() or gst_element_iterate_sink_pads().
 
 The order of pads returned by the iterator will be the order in which
 the pads were added to the element.</doc>
+        <source-position filename="gst/gstelement.h" line="915"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the #GstIterator of #GstPad.
+          <doc xml:space="preserve"
+               filename="gst/gstelement.c"
+               line="1273">the #GstIterator of #GstPad.
 
 MT safe.</doc>
           <type name="Iterator" c:type="GstIterator*"/>
         </return-value>
         <parameters>
           <instance-parameter name="element" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElement to iterate pads of.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="1264">a #GstElement to iterate pads of.</doc>
             <type name="Element" c:type="GstElement*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="iterate_sink_pads"
               c:identifier="gst_element_iterate_sink_pads">
-        <doc xml:space="preserve">Retrieves an iterator of @element's sink pads.
+        <doc xml:space="preserve"
+             filename="gst/gstelement.c"
+             line="1306">Retrieves an iterator of @element's sink pads.
 
 The order of pads returned by the iterator will be the order in which
 the pads were added to the element.</doc>
+        <source-position filename="gst/gstelement.h" line="921"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the #GstIterator of #GstPad.
+          <doc xml:space="preserve"
+               filename="gst/gstelement.c"
+               line="1315">the #GstIterator of #GstPad.
 
 MT safe.</doc>
           <type name="Iterator" c:type="GstIterator*"/>
         </return-value>
         <parameters>
           <instance-parameter name="element" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElement.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="1308">a #GstElement.</doc>
             <type name="Element" c:type="GstElement*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="iterate_src_pads"
               c:identifier="gst_element_iterate_src_pads">
-        <doc xml:space="preserve">Retrieves an iterator of @element's source pads.
+        <doc xml:space="preserve"
+             filename="gst/gstelement.c"
+             line="1285">Retrieves an iterator of @element's source pads.
 
 The order of pads returned by the iterator will be the order in which
 the pads were added to the element.</doc>
+        <source-position filename="gst/gstelement.h" line="918"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the #GstIterator of #GstPad.
+          <doc xml:space="preserve"
+               filename="gst/gstelement.c"
+               line="1294">the #GstIterator of #GstPad.
 
 MT safe.</doc>
           <type name="Iterator" c:type="GstIterator*"/>
         </return-value>
         <parameters>
           <instance-parameter name="element" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElement.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="1287">a #GstElement.</doc>
             <type name="Element" c:type="GstElement*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="link" c:identifier="gst_element_link">
-        <doc xml:space="preserve">Links @src to @dest. The link must be from source to
+        <doc xml:space="preserve"
+             filename="gst/gstutils.c"
+             line="2213">Links @src to @dest. The link must be from source to
 destination; the other direction will not be tried. The function looks for
 existing pads that aren't linked yet. It will request new pads if necessary.
 Such pads need to be released manually when unlinking.
@@ -13871,23 +21110,32 @@ If multiple links are possible, only one is established.
 
 Make sure you have added your elements to a bin or pipeline with
 gst_bin_add() before trying to link them.</doc>
+        <source-position filename="gst/gstutils.h" line="999"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the elements could be linked, %FALSE otherwise.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="2227">%TRUE if the elements could be linked, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="src" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElement containing the source pad.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="2215">a #GstElement containing the source pad.</doc>
             <type name="Element" c:type="GstElement*"/>
           </instance-parameter>
           <parameter name="dest" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstElement containing the destination pad.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="2216">the #GstElement containing the destination pad.</doc>
             <type name="Element" c:type="GstElement*"/>
           </parameter>
         </parameters>
       </method>
       <method name="link_filtered" c:identifier="gst_element_link_filtered">
-        <doc xml:space="preserve">Links @src to @dest using the given caps as filtercaps.
+        <doc xml:space="preserve"
+             filename="gst/gstutils.c"
+             line="2273">Links @src to @dest using the given caps as filtercaps.
 The link must be from source to
 destination; the other direction will not be tried. The function looks for
 existing pads that aren't linked yet. It will request new pads if necessary.
@@ -13895,24 +21143,33 @@ If multiple links are possible, only one is established.
 
 Make sure you have added your elements to a bin or pipeline with
 gst_bin_add() before trying to link them.</doc>
+        <source-position filename="gst/gstutils.h" line="1005"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the pads could be linked, %FALSE otherwise.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="2289">%TRUE if the pads could be linked, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="src" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElement containing the source pad.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="2275">a #GstElement containing the source pad.</doc>
             <type name="Element" c:type="GstElement*"/>
           </instance-parameter>
           <parameter name="dest" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstElement containing the destination pad.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="2276">the #GstElement containing the destination pad.</doc>
             <type name="Element" c:type="GstElement*"/>
           </parameter>
           <parameter name="filter"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">the #GstCaps to filter the link,
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="2277">the #GstCaps to filter the link,
     or %NULL for no filter.</doc>
             <type name="Caps" c:type="GstCaps*"/>
           </parameter>
@@ -13921,59 +21178,83 @@ gst_bin_add() before trying to link them.</doc>
       <method name="link_many"
               c:identifier="gst_element_link_many"
               introspectable="0">
-        <doc xml:space="preserve">Chain together a series of elements. Uses gst_element_link().
+        <doc xml:space="preserve"
+             filename="gst/gstutils.c"
+             line="2235">Chain together a series of elements. Uses gst_element_link().
 Make sure you have added your elements to a bin or pipeline with
 gst_bin_add() before trying to link them.</doc>
+        <source-position filename="gst/gstutils.h" line="1002"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE on success, %FALSE otherwise.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="2245">%TRUE on success, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="element_1" transfer-ownership="none">
-            <doc xml:space="preserve">the first #GstElement in the link chain.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="2237">the first #GstElement in the link chain.</doc>
             <type name="Element" c:type="GstElement*"/>
           </instance-parameter>
           <parameter name="element_2" transfer-ownership="none">
-            <doc xml:space="preserve">the second #GstElement in the link chain.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="2238">the second #GstElement in the link chain.</doc>
             <type name="Element" c:type="GstElement*"/>
           </parameter>
           <parameter name="..." transfer-ownership="none">
-            <doc xml:space="preserve">the %NULL-terminated list of elements to link in order.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="2239">the %NULL-terminated list of elements to link in order.</doc>
             <varargs/>
           </parameter>
         </parameters>
       </method>
       <method name="link_pads" c:identifier="gst_element_link_pads">
-        <doc xml:space="preserve">Links the two named pads of the source and destination elements.
+        <doc xml:space="preserve"
+             filename="gst/gstutils.c"
+             line="2102">Links the two named pads of the source and destination elements.
 Side effect is that if one of the pads has no parent, it becomes a
 child of the parent of the other element.  If they have different
 parents, the link fails.</doc>
+        <source-position filename="gst/gstutils.h" line="1015"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the pads could be linked, %FALSE otherwise.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="2116">%TRUE if the pads could be linked, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="src" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElement containing the source pad.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="2104">a #GstElement containing the source pad.</doc>
             <type name="Element" c:type="GstElement*"/>
           </instance-parameter>
           <parameter name="srcpadname"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">the name of the #GstPad in source element
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="2105">the name of the #GstPad in source element
     or %NULL for any pad.</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="dest" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstElement containing the destination pad.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="2107">the #GstElement containing the destination pad.</doc>
             <type name="Element" c:type="GstElement*"/>
           </parameter>
           <parameter name="destpadname"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">the name of the #GstPad in destination element,
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="2108">the name of the #GstPad in destination element,
 or %NULL for any pad.</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
@@ -13981,36 +21262,49 @@ or %NULL for any pad.</doc>
       </method>
       <method name="link_pads_filtered"
               c:identifier="gst_element_link_pads_filtered">
-        <doc xml:space="preserve">Links the two named pads of the source and destination elements. Side effect
+        <doc xml:space="preserve"
+             filename="gst/gstutils.c"
+             line="2126">Links the two named pads of the source and destination elements. Side effect
 is that if one of the pads has no parent, it becomes a child of the parent of
 the other element. If they have different parents, the link fails. If @caps
 is not %NULL, makes sure that the caps of the link is a subset of @caps.</doc>
+        <source-position filename="gst/gstutils.h" line="1025"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the pads could be linked, %FALSE otherwise.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="2142">%TRUE if the pads could be linked, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="src" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElement containing the source pad.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="2128">a #GstElement containing the source pad.</doc>
             <type name="Element" c:type="GstElement*"/>
           </instance-parameter>
           <parameter name="srcpadname"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">the name of the #GstPad in source element
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="2129">the name of the #GstPad in source element
     or %NULL for any pad.</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="dest" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstElement containing the destination pad.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="2131">the #GstElement containing the destination pad.</doc>
             <type name="Element" c:type="GstElement*"/>
           </parameter>
           <parameter name="destpadname"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">the name of the #GstPad in destination element
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="2132">the name of the #GstPad in destination element
     or %NULL for any pad.</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
@@ -14018,14 +21312,18 @@ is not %NULL, makes sure that the caps of the link is a subset of @caps.</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">the #GstCaps to filter the link,
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="2134">the #GstCaps to filter the link,
     or %NULL for no filter.</doc>
             <type name="Caps" c:type="GstCaps*"/>
           </parameter>
         </parameters>
       </method>
       <method name="link_pads_full" c:identifier="gst_element_link_pads_full">
-        <doc xml:space="preserve">Links the two named pads of the source and destination elements.
+        <doc xml:space="preserve"
+             filename="gst/gstutils.c"
+             line="1779">Links the two named pads of the source and destination elements.
 Side effect is that if one of the pads has no parent, it becomes a
 child of the parent of the other element.  If they have different
 parents, the link fails.
@@ -14035,43 +21333,58 @@ is the same as calling gst_element_link_pads() and the recommended way of
 linking pads with safety checks applied.
 
 This is a convenience function for gst_pad_link_full().</doc>
+        <source-position filename="gst/gstutils.h" line="1018"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the pads could be linked, %FALSE otherwise.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="1800">%TRUE if the pads could be linked, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="src" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElement containing the source pad.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="1781">a #GstElement containing the source pad.</doc>
             <type name="Element" c:type="GstElement*"/>
           </instance-parameter>
           <parameter name="srcpadname"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">the name of the #GstPad in source element
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="1782">the name of the #GstPad in source element
     or %NULL for any pad.</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="dest" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstElement containing the destination pad.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="1784">the #GstElement containing the destination pad.</doc>
             <type name="Element" c:type="GstElement*"/>
           </parameter>
           <parameter name="destpadname"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">the name of the #GstPad in destination element,
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="1785">the name of the #GstPad in destination element,
 or %NULL for any pad.</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="flags" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstPadLinkCheck to be performed when linking pads.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="1787">the #GstPadLinkCheck to be performed when linking pads.</doc>
             <type name="PadLinkCheck" c:type="GstPadLinkCheck"/>
           </parameter>
         </parameters>
       </method>
       <method name="lost_state" c:identifier="gst_element_lost_state">
-        <doc xml:space="preserve">Brings the element to the lost state. The current state of the
+        <doc xml:space="preserve"
+             filename="gst/gstelement.c"
+             line="2776">Brings the element to the lost state. The current state of the
 element is copied to the pending state so that any call to
 gst_element_get_state() will return %GST_STATE_CHANGE_ASYNC.
 
@@ -14087,48 +21400,64 @@ not in error or an async state change.
 
 This function is used internally and should normally not be called from
 plugins or applications.</doc>
+        <source-position filename="gst/gstelement.h" line="1022"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="element" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElement the state is lost of</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="2778">a #GstElement the state is lost of</doc>
             <type name="Element" c:type="GstElement*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="message_full" c:identifier="gst_element_message_full">
-        <doc xml:space="preserve">Post an error, warning or info message on the bus from inside an element.
+        <doc xml:space="preserve"
+             filename="gst/gstelement.c"
+             line="2257">Post an error, warning or info message on the bus from inside an element.
 
 @type must be of #GST_MESSAGE_ERROR, #GST_MESSAGE_WARNING or
 #GST_MESSAGE_INFO.
 
 MT safe.</doc>
+        <source-position filename="gst/gstelement.h" line="981"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="element" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElement to send message from</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="2259">a #GstElement to send message from</doc>
             <type name="Element" c:type="GstElement*"/>
           </instance-parameter>
           <parameter name="type" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstMessageType</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="2260">the #GstMessageType</doc>
             <type name="MessageType" c:type="GstMessageType"/>
           </parameter>
           <parameter name="domain" transfer-ownership="none">
-            <doc xml:space="preserve">the GStreamer GError domain this message belongs to</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="2261">the GStreamer GError domain this message belongs to</doc>
             <type name="GLib.Quark" c:type="GQuark"/>
           </parameter>
           <parameter name="code" transfer-ownership="none">
-            <doc xml:space="preserve">the GError code belonging to the domain</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="2262">the GError code belonging to the domain</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="text"
                      transfer-ownership="full"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">an allocated text string to be used
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="2263">an allocated text string to be used
            as a replacement for the default message connected to code,
            or %NULL</doc>
             <type name="utf8" c:type="gchar*"/>
@@ -14137,21 +21466,29 @@ MT safe.</doc>
                      transfer-ownership="full"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">an allocated debug message to be
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="2266">an allocated debug message to be
            used as a replacement for the default debugging information,
            or %NULL</doc>
             <type name="utf8" c:type="gchar*"/>
           </parameter>
           <parameter name="file" transfer-ownership="none">
-            <doc xml:space="preserve">the source code file where the error was generated</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="2269">the source code file where the error was generated</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="function" transfer-ownership="none">
-            <doc xml:space="preserve">the source code function where the error was generated</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="2270">the source code function where the error was generated</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="line" transfer-ownership="none">
-            <doc xml:space="preserve">the source code line where the error was generated</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="2271">the source code line where the error was generated</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
         </parameters>
@@ -14159,35 +21496,48 @@ MT safe.</doc>
       <method name="message_full_with_details"
               c:identifier="gst_element_message_full_with_details"
               version="1.10">
-        <doc xml:space="preserve">Post an error, warning or info message on the bus from inside an element.
+        <doc xml:space="preserve"
+             filename="gst/gstelement.c"
+             line="2153">Post an error, warning or info message on the bus from inside an element.
 
 @type must be of #GST_MESSAGE_ERROR, #GST_MESSAGE_WARNING or
 #GST_MESSAGE_INFO.</doc>
+        <source-position filename="gst/gstelement.h" line="986"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="element" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElement to send message from</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="2155">a #GstElement to send message from</doc>
             <type name="Element" c:type="GstElement*"/>
           </instance-parameter>
           <parameter name="type" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstMessageType</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="2156">the #GstMessageType</doc>
             <type name="MessageType" c:type="GstMessageType"/>
           </parameter>
           <parameter name="domain" transfer-ownership="none">
-            <doc xml:space="preserve">the GStreamer GError domain this message belongs to</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="2157">the GStreamer GError domain this message belongs to</doc>
             <type name="GLib.Quark" c:type="GQuark"/>
           </parameter>
           <parameter name="code" transfer-ownership="none">
-            <doc xml:space="preserve">the GError code belonging to the domain</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="2158">the GError code belonging to the domain</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="text"
                      transfer-ownership="full"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">an allocated text string to be used
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="2159">an allocated text string to be used
            as a replacement for the default message connected to code,
            or %NULL</doc>
             <type name="utf8" c:type="gchar*"/>
@@ -14196,31 +21546,43 @@ MT safe.</doc>
                      transfer-ownership="full"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">an allocated debug message to be
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="2162">an allocated debug message to be
            used as a replacement for the default debugging information,
            or %NULL</doc>
             <type name="utf8" c:type="gchar*"/>
           </parameter>
           <parameter name="file" transfer-ownership="none">
-            <doc xml:space="preserve">the source code file where the error was generated</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="2165">the source code file where the error was generated</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="function" transfer-ownership="none">
-            <doc xml:space="preserve">the source code function where the error was generated</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="2166">the source code function where the error was generated</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="line" transfer-ownership="none">
-            <doc xml:space="preserve">the source code line where the error was generated</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="2167">the source code line where the error was generated</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="structure" transfer-ownership="full">
-            <doc xml:space="preserve">optional details structure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="2168">optional details structure</doc>
             <type name="Structure" c:type="GstStructure*"/>
           </parameter>
         </parameters>
       </method>
       <method name="no_more_pads" c:identifier="gst_element_no_more_pads">
-        <doc xml:space="preserve">Use this function to signal that the element does not expect any more pads
+        <doc xml:space="preserve"
+             filename="gst/gstelement.c"
+             line="928">Use this function to signal that the element does not expect any more pads
 to show up in the current pipeline. This function should be called whenever
 pads have been added by the element itself. Elements with #GST_PAD_SOMETIMES
 pad templates use this in combination with autopluggers to figure out that
@@ -14229,22 +21591,30 @@ the element is done initializing its pads.
 This function emits the #GstElement::no-more-pads signal.
 
 MT safe.</doc>
+        <source-position filename="gst/gstelement.h" line="900"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="element" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElement</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="930">a #GstElement</doc>
             <type name="Element" c:type="GstElement*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="post_message" c:identifier="gst_element_post_message">
-        <doc xml:space="preserve">Post a message on the element's #GstBus. This function takes ownership of the
+        <doc xml:space="preserve"
+             filename="gst/gstelement.c"
+             line="2083">Post a message on the element's #GstBus. This function takes ownership of the
 message; if you want to access the message after this call, you should add an
 additional reference before calling.</doc>
+        <source-position filename="gst/gstelement.h" line="968"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the message was successfully posted. The function returns
+          <doc xml:space="preserve"
+               filename="gst/gstelement.c"
+               line="2092">%TRUE if the message was successfully posted. The function returns
 %FALSE if the element did not have a bus.
 
 MT safe.</doc>
@@ -14252,21 +21622,30 @@ MT safe.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="element" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElement posting the message</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="2085">a #GstElement posting the message</doc>
             <type name="Element" c:type="GstElement*"/>
           </instance-parameter>
           <parameter name="message" transfer-ownership="full">
-            <doc xml:space="preserve">a #GstMessage to post</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="2086">a #GstMessage to post</doc>
             <type name="Message" c:type="GstMessage*"/>
           </parameter>
         </parameters>
       </method>
       <method name="provide_clock" c:identifier="gst_element_provide_clock">
-        <doc xml:space="preserve">Get the clock provided by the given element.
+        <doc xml:space="preserve"
+             filename="gst/gstelement.c"
+             line="368">Get the clock provided by the given element.
 &gt; An element is only required to provide a clock in the PAUSED
 &gt; state. Some elements can provide a clock in other states.</doc>
+        <source-position filename="gst/gstelement.h" line="843"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">the GstClock provided by the
+          <doc xml:space="preserve"
+               filename="gst/gstelement.c"
+               line="376">the GstClock provided by the
 element or %NULL if no clock could be provided.  Unref after usage.
 
 MT safe.</doc>
@@ -14274,70 +21653,98 @@ MT safe.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="element" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElement to query</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="370">a #GstElement to query</doc>
             <type name="Element" c:type="GstElement*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="query" c:identifier="gst_element_query">
-        <doc xml:space="preserve">Performs a query on the given element.
+        <doc xml:space="preserve"
+             filename="gst/gstelement.c"
+             line="2008">Performs a query on the given element.
 
 For elements that don't implement a query handler, this function
 forwards the query to a random srcpad or to the peer of a
 random linked sinkpad of this element.
 
 Please note that some queries might need a running pipeline to work.</doc>
+        <source-position filename="gst/gstelement.h" line="963"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the query could be performed.
+          <doc xml:space="preserve"
+               filename="gst/gstelement.c"
+               line="2021">%TRUE if the query could be performed.
 
 MT safe.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="element" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElement to perform the query on.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="2010">a #GstElement to perform the query on.</doc>
             <type name="Element" c:type="GstElement*"/>
           </instance-parameter>
           <parameter name="query" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstQuery.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="2011">the #GstQuery.</doc>
             <type name="Query" c:type="GstQuery*"/>
           </parameter>
         </parameters>
       </method>
       <method name="query_convert" c:identifier="gst_element_query_convert">
-        <doc xml:space="preserve">Queries an element to convert @src_val in @src_format to @dest_format.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the query could be performed.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstutils.c"
+             line="2534">Queries an element to convert @src_val in @src_format to @dest_format.</doc>
+        <source-position filename="gst/gstutils.h" line="1057"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="2544">%TRUE if the query could be performed.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="element" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElement to invoke the convert query on.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="2536">a #GstElement to invoke the convert query on.</doc>
             <type name="Element" c:type="GstElement*"/>
           </instance-parameter>
           <parameter name="src_format" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstFormat to convert from.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="2537">a #GstFormat to convert from.</doc>
             <type name="Format" c:type="GstFormat"/>
           </parameter>
           <parameter name="src_val" transfer-ownership="none">
-            <doc xml:space="preserve">a value to convert.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="2538">a value to convert.</doc>
             <type name="gint64" c:type="gint64"/>
           </parameter>
           <parameter name="dest_format" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstFormat to convert to.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="2539">the #GstFormat to convert to.</doc>
             <type name="Format" c:type="GstFormat"/>
           </parameter>
           <parameter name="dest_val"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">a pointer to the result.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="2540">a pointer to the result.</doc>
             <type name="gint64" c:type="gint64*"/>
           </parameter>
         </parameters>
       </method>
       <method name="query_duration" c:identifier="gst_element_query_duration">
-        <doc xml:space="preserve">Queries an element (usually top-level pipeline or playbin element) for the
+        <doc xml:space="preserve"
+             filename="gst/gstutils.c"
+             line="2493">Queries an element (usually top-level pipeline or playbin element) for the
 total stream duration in nanoseconds. This query will only work once the
 pipeline is prerolled (i.e. reached PAUSED or PLAYING state). The application
 will receive an ASYNC_DONE message on the pipeline bus when that is the case.
@@ -14345,17 +21752,24 @@ will receive an ASYNC_DONE message on the pipeline bus when that is the case.
 If the duration changes for some reason, you will get a DURATION_CHANGED
 message on the pipeline bus, in which case you should re-query the duration
 using this function.</doc>
+        <source-position filename="gst/gstutils.h" line="1054"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the query could be performed.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="2508">%TRUE if the query could be performed.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="element" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElement to invoke the duration query on.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="2495">a #GstElement to invoke the duration query on.</doc>
             <type name="Element" c:type="GstElement*"/>
           </instance-parameter>
           <parameter name="format" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstFormat requested</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="2496">the #GstFormat requested</doc>
             <type name="Format" c:type="GstFormat"/>
           </parameter>
           <parameter name="duration"
@@ -14364,13 +21778,17 @@ using this function.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">A location in which to store the total duration, or %NULL.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="2497">A location in which to store the total duration, or %NULL.</doc>
             <type name="gint64" c:type="gint64*"/>
           </parameter>
         </parameters>
       </method>
       <method name="query_position" c:identifier="gst_element_query_position">
-        <doc xml:space="preserve">Queries an element (usually top-level pipeline or playbin element) for the
+        <doc xml:space="preserve"
+             filename="gst/gstutils.c"
+             line="2450">Queries an element (usually top-level pipeline or playbin element) for the
 stream position in nanoseconds. This will be a value between 0 and the
 stream duration (if the stream duration is known). This query will usually
 only work once the pipeline is prerolled (i.e. reached PAUSED or PLAYING
@@ -14379,17 +21797,24 @@ bus when that is the case.
 
 If one repeatedly calls this function one can also create a query and reuse
 it in gst_element_query().</doc>
+        <source-position filename="gst/gstutils.h" line="1051"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the query could be performed.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="2467">%TRUE if the query could be performed.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="element" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElement to invoke the position query on.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="2452">a #GstElement to invoke the position query on.</doc>
             <type name="Element" c:type="GstElement*"/>
           </instance-parameter>
           <parameter name="format" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstFormat requested</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="2453">the #GstFormat requested</doc>
             <type name="Format" c:type="GstFormat"/>
           </parameter>
           <parameter name="cur"
@@ -14398,7 +21823,9 @@ it in gst_element_query().</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">a location in which to store the current
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="2454">a location in which to store the current
     position, or %NULL.</doc>
             <type name="gint64" c:type="gint64*"/>
           </parameter>
@@ -14406,7 +21833,9 @@ it in gst_element_query().</doc>
       </method>
       <method name="release_request_pad"
               c:identifier="gst_element_release_request_pad">
-        <doc xml:space="preserve">Makes the element free the previously requested pad as obtained
+        <doc xml:space="preserve"
+             filename="gst/gstelement.c"
+             line="332">Makes the element free the previously requested pad as obtained
 with gst_element_request_pad().
 
 This does not unref the pad. If the pad was created by using
@@ -14414,22 +21843,29 @@ gst_element_request_pad(), gst_element_release_request_pad() needs to be
 followed by gst_object_unref() to free the @pad.
 
 MT safe.</doc>
+        <source-position filename="gst/gstelement.h" line="912"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="element" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElement to release the request pad of.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="334">a #GstElement to release the request pad of.</doc>
             <type name="Element" c:type="GstElement*"/>
           </instance-parameter>
           <parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstPad to release.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="335">the #GstPad to release.</doc>
             <type name="Pad" c:type="GstPad*"/>
           </parameter>
         </parameters>
       </method>
       <method name="remove_pad" c:identifier="gst_element_remove_pad">
-        <doc xml:space="preserve">Removes @pad from @element. @pad will be destroyed if it has not been
+        <doc xml:space="preserve"
+             filename="gst/gstelement.c"
+             line="828">Removes @pad from @element. @pad will be destroyed if it has not been
 referenced elsewhere using gst_object_unparent().
 
 This function is used by plugin developers and should not be used
@@ -14445,8 +21881,11 @@ deactivating pads.
 The pad and the element should be unlocked when calling this function.
 
 This function will emit the #GstElement::pad-removed signal on the element.</doc>
+        <source-position filename="gst/gstelement.h" line="897"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the pad could be removed. Can return %FALSE if the
+          <doc xml:space="preserve"
+               filename="gst/gstelement.c"
+               line="850">%TRUE if the pad could be removed. Can return %FALSE if the
 pad does not belong to the provided element.
 
 MT safe.</doc>
@@ -14454,11 +21893,15 @@ MT safe.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="element" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElement to remove pad from.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="830">a #GstElement to remove pad from.</doc>
             <type name="Element" c:type="GstElement*"/>
           </instance-parameter>
           <parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstPad to remove from the element.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="831">the #GstPad to remove from the element.</doc>
             <type name="Pad" c:type="GstPad*"/>
           </parameter>
         </parameters>
@@ -14466,45 +21909,61 @@ MT safe.</doc>
       <method name="remove_property_notify_watch"
               c:identifier="gst_element_remove_property_notify_watch"
               version="1.10">
+        <source-position filename="gst/gstelement.h" line="1055"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="element" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElement being watched for property changes</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="3747">a #GstElement being watched for property changes</doc>
             <type name="Element" c:type="GstElement*"/>
           </instance-parameter>
           <parameter name="watch_id" transfer-ownership="none">
-            <doc xml:space="preserve">watch id to remove</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="3748">watch id to remove</doc>
             <type name="gulong" c:type="gulong"/>
           </parameter>
         </parameters>
       </method>
       <method name="request_pad" c:identifier="gst_element_request_pad">
-        <doc xml:space="preserve">Retrieves a request pad from the element according to the provided template.
+        <doc xml:space="preserve"
+             filename="gst/gstelement.c"
+             line="1219">Retrieves a request pad from the element according to the provided template.
 Pad templates can be looked up using
 gst_element_factory_get_static_pad_templates().
 
 The pad should be released with gst_element_release_request_pad().</doc>
+        <source-position filename="gst/gstelement.h" line="909"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">requested #GstPad if found,
+          <doc xml:space="preserve"
+               filename="gst/gstelement.c"
+               line="1234">requested #GstPad if found,
     otherwise %NULL.  Release after usage.</doc>
           <type name="Pad" c:type="GstPad*"/>
         </return-value>
         <parameters>
           <instance-parameter name="element" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElement to find a request pad of.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="1221">a #GstElement to find a request pad of.</doc>
             <type name="Element" c:type="GstElement*"/>
           </instance-parameter>
           <parameter name="templ" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstPadTemplate of which we want a pad of.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="1222">a #GstPadTemplate of which we want a pad of.</doc>
             <type name="PadTemplate" c:type="GstPadTemplate*"/>
           </parameter>
           <parameter name="name"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">the name of the request #GstPad
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="1223">the name of the request #GstPad
 to retrieve. Can be %NULL.</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
@@ -14512,60 +21971,85 @@ to retrieve. Can be %NULL.</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">the caps of the pad we want to
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="1225">the caps of the pad we want to
 request. Can be %NULL.</doc>
             <type name="Caps" c:type="const GstCaps*"/>
           </parameter>
         </parameters>
       </method>
       <method name="seek" c:identifier="gst_element_seek">
-        <doc xml:space="preserve">Sends a seek event to an element. See gst_event_new_seek() for the details of
+        <doc xml:space="preserve"
+             filename="gst/gstelement.c"
+             line="1943">Sends a seek event to an element. See gst_event_new_seek() for the details of
 the parameters. The seek event is sent to the element using
 gst_element_send_event().
 
 MT safe.</doc>
+        <source-position filename="gst/gstelement.h" line="958"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the event was handled. Flushing seeks will trigger a
+          <doc xml:space="preserve"
+               filename="gst/gstelement.c"
+               line="1960">%TRUE if the event was handled. Flushing seeks will trigger a
 preroll, which will emit %GST_MESSAGE_ASYNC_DONE.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="element" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElement to send the event to.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="1945">a #GstElement to send the event to.</doc>
             <type name="Element" c:type="GstElement*"/>
           </instance-parameter>
           <parameter name="rate" transfer-ownership="none">
-            <doc xml:space="preserve">The new playback rate</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="1946">The new playback rate</doc>
             <type name="gdouble" c:type="gdouble"/>
           </parameter>
           <parameter name="format" transfer-ownership="none">
-            <doc xml:space="preserve">The format of the seek values</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="1947">The format of the seek values</doc>
             <type name="Format" c:type="GstFormat"/>
           </parameter>
           <parameter name="flags" transfer-ownership="none">
-            <doc xml:space="preserve">The optional seek flags.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="1948">The optional seek flags.</doc>
             <type name="SeekFlags" c:type="GstSeekFlags"/>
           </parameter>
           <parameter name="start_type" transfer-ownership="none">
-            <doc xml:space="preserve">The type and flags for the new start position</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="1949">The type and flags for the new start position</doc>
             <type name="SeekType" c:type="GstSeekType"/>
           </parameter>
           <parameter name="start" transfer-ownership="none">
-            <doc xml:space="preserve">The value of the new start position</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="1950">The value of the new start position</doc>
             <type name="gint64" c:type="gint64"/>
           </parameter>
           <parameter name="stop_type" transfer-ownership="none">
-            <doc xml:space="preserve">The type and flags for the new stop position</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="1951">The type and flags for the new stop position</doc>
             <type name="SeekType" c:type="GstSeekType"/>
           </parameter>
           <parameter name="stop" transfer-ownership="none">
-            <doc xml:space="preserve">The value of the new stop position</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="1952">The value of the new stop position</doc>
             <type name="gint64" c:type="gint64"/>
           </parameter>
         </parameters>
       </method>
       <method name="seek_simple" c:identifier="gst_element_seek_simple">
-        <doc xml:space="preserve">Simple API to perform a seek on the given element, meaning it just seeks
+        <doc xml:space="preserve"
+             filename="gst/gstutils.c"
+             line="2573">Simple API to perform a seek on the given element, meaning it just seeks
 to the given position relative to the start of the stream. For more complex
 operations like segment seeks (e.g. for looping) or changing the playback
 rate or seeking relative to the last configured playback segment you should
@@ -14579,27 +22063,38 @@ Some elements allow for seeking in the READY state, in this
 case they will store the seek event and execute it when they are put to
 PAUSED. If the element supports seek in READY, it will always return %TRUE when
 it receives the event in the READY state.</doc>
+        <source-position filename="gst/gstutils.h" line="1029"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the seek operation succeeded. Flushing seeks will trigger a
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="2599">%TRUE if the seek operation succeeded. Flushing seeks will trigger a
 preroll, which will emit %GST_MESSAGE_ASYNC_DONE.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="element" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElement to seek on</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="2575">a #GstElement to seek on</doc>
             <type name="Element" c:type="GstElement*"/>
           </instance-parameter>
           <parameter name="format" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstFormat to execute the seek in, such as #GST_FORMAT_TIME</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="2576">a #GstFormat to execute the seek in, such as #GST_FORMAT_TIME</doc>
             <type name="Format" c:type="GstFormat"/>
           </parameter>
           <parameter name="seek_flags" transfer-ownership="none">
-            <doc xml:space="preserve">seek options; playback applications will usually want to use
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="2577">seek options; playback applications will usually want to use
            GST_SEEK_FLAG_FLUSH | GST_SEEK_FLAG_KEY_UNIT here</doc>
             <type name="SeekFlags" c:type="GstSeekFlags"/>
           </parameter>
           <parameter name="seek_pos" transfer-ownership="none">
-            <doc xml:space="preserve">position to seek to (relative to the start); if you are doing
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="2579">position to seek to (relative to the start); if you are doing
            a seek in #GST_FORMAT_TIME this value is in nanoseconds -
            multiply with #GST_SECOND to convert seconds to nanoseconds or
            with #GST_MSECOND to convert milliseconds to nanoseconds.</doc>
@@ -14608,7 +22103,9 @@ preroll, which will emit %GST_MESSAGE_ASYNC_DONE.</doc>
         </parameters>
       </method>
       <method name="send_event" c:identifier="gst_element_send_event">
-        <doc xml:space="preserve">Sends an event to an element. If the element doesn't implement an
+        <doc xml:space="preserve"
+             filename="gst/gstelement.c"
+             line="1902">Sends an event to an element. If the element doesn't implement an
 event handler, the event will be pushed on a random linked sink pad for
 downstream events or a random linked source pad for upstream events.
 
@@ -14616,68 +22113,94 @@ This function takes ownership of the provided event so you should
 gst_event_ref() it if you want to reuse the event after this call.
 
 MT safe.</doc>
+        <source-position filename="gst/gstelement.h" line="955"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the event was handled. Events that trigger a preroll (such
+          <doc xml:space="preserve"
+               filename="gst/gstelement.c"
+               line="1916">%TRUE if the event was handled. Events that trigger a preroll (such
 as flushing seeks and steps) will emit %GST_MESSAGE_ASYNC_DONE.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="element" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElement to send the event to.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="1904">a #GstElement to send the event to.</doc>
             <type name="Element" c:type="GstElement*"/>
           </instance-parameter>
           <parameter name="event" transfer-ownership="full">
-            <doc xml:space="preserve">the #GstEvent to send to the element.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="1905">the #GstEvent to send to the element.</doc>
             <type name="Event" c:type="GstEvent*"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_base_time" c:identifier="gst_element_set_base_time">
-        <doc xml:space="preserve">Set the base time of an element. See gst_element_get_base_time().
+        <doc xml:space="preserve"
+             filename="gst/gstelement.c"
+             line="473">Set the base time of an element. See gst_element_get_base_time().
 
 MT safe.</doc>
+        <source-position filename="gst/gstelement.h" line="852"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="element" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElement.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="475">a #GstElement.</doc>
             <type name="Element" c:type="GstElement*"/>
           </instance-parameter>
           <parameter name="time" transfer-ownership="none">
-            <doc xml:space="preserve">the base time to set.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="476">the base time to set.</doc>
             <type name="ClockTime" c:type="GstClockTime"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_bus" c:identifier="gst_element_set_bus">
-        <doc xml:space="preserve">Sets the bus of the element. Increases the refcount on the bus.
+        <doc xml:space="preserve"
+             filename="gst/gstelement.c"
+             line="3435">Sets the bus of the element. Increases the refcount on the bus.
 For internal use only, unless you're testing elements.
 
 MT safe.</doc>
+        <source-position filename="gst/gstelement.h" line="872"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="element" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElement to set the bus of.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="3437">a #GstElement to set the bus of.</doc>
             <type name="Element" c:type="GstElement*"/>
           </instance-parameter>
           <parameter name="bus"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">the #GstBus to set.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="3438">the #GstBus to set.</doc>
             <type name="Bus" c:type="GstBus*"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_clock" c:identifier="gst_element_set_clock">
-        <doc xml:space="preserve">Sets the clock for the element. This function increases the
+        <doc xml:space="preserve"
+             filename="gst/gstelement.c"
+             line="410">Sets the clock for the element. This function increases the
 refcount on the clock. Any previously set clock on the object
 is unreffed.</doc>
+        <source-position filename="gst/gstelement.h" line="849"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the element accepted the clock. An element can refuse a
+          <doc xml:space="preserve"
+               filename="gst/gstelement.c"
+               line="419">%TRUE if the element accepted the clock. An element can refuse a
 clock when it, for example, is not able to slave its internal clock to the
 @clock or when it requires a specific clock to operate.
 
@@ -14686,39 +22209,52 @@ MT safe.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="element" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElement to set the clock for.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="412">a #GstElement to set the clock for.</doc>
             <type name="Element" c:type="GstElement*"/>
           </instance-parameter>
           <parameter name="clock"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">the #GstClock to set for the element.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="413">the #GstClock to set for the element.</doc>
             <type name="Clock" c:type="GstClock*"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_context" c:identifier="gst_element_set_context">
-        <doc xml:space="preserve">Sets the context of the element. Increases the refcount of the context.
+        <doc xml:space="preserve"
+             filename="gst/gstelement.c"
+             line="3520">Sets the context of the element. Increases the refcount of the context.
 
 MT safe.</doc>
+        <source-position filename="gst/gstelement.h" line="880"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="element" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElement to set the context of.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="3522">a #GstElement to set the context of.</doc>
             <type name="Element" c:type="GstElement*"/>
           </instance-parameter>
           <parameter name="context" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstContext to set.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="3523">the #GstContext to set.</doc>
             <type name="Context" c:type="GstContext*"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_locked_state"
               c:identifier="gst_element_set_locked_state">
-        <doc xml:space="preserve">Locks the state of an element, so state changes of the parent don't affect
+        <doc xml:space="preserve"
+             filename="gst/gstelement.c"
+             line="2317">Locks the state of an element, so state changes of the parent don't affect
 this element anymore.
 
 Note that this is racy if the state lock of the parent bin is not taken.
@@ -14726,24 +22262,33 @@ The parent bin might've just checked the flag in another thread and as the
 next step proceed to change the child element's state.
 
 MT safe.</doc>
+        <source-position filename="gst/gstelement.h" line="998"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the state was changed, %FALSE if bad parameters were given
+          <doc xml:space="preserve"
+               filename="gst/gstelement.c"
+               line="2331">%TRUE if the state was changed, %FALSE if bad parameters were given
 or the elements state-locking needed no change.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="element" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElement</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="2319">a #GstElement</doc>
             <type name="Element" c:type="GstElement*"/>
           </instance-parameter>
           <parameter name="locked_state" transfer-ownership="none">
-            <doc xml:space="preserve">%TRUE to lock the element's state</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="2320">%TRUE to lock the element's state</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_start_time" c:identifier="gst_element_set_start_time">
-        <doc xml:space="preserve">Set the start time of an element. The start time of the element is the
+        <doc xml:space="preserve"
+             filename="gst/gstelement.c"
+             line="526">Set the start time of an element. The start time of the element is the
 running time of the element when it last went to the PAUSED state. In READY
 or after a flushing seek, it is set to 0.
 
@@ -14755,22 +22300,29 @@ itself, for example if you want to synchronize capture from multiple
 pipelines, and you can also ensure that the pipelines have the same clock.
 
 MT safe.</doc>
+        <source-position filename="gst/gstelement.h" line="858"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="element" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElement.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="528">a #GstElement.</doc>
             <type name="Element" c:type="GstElement*"/>
           </instance-parameter>
           <parameter name="time" transfer-ownership="none">
-            <doc xml:space="preserve">the base time to set.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="529">the base time to set.</doc>
             <type name="ClockTime" c:type="GstClockTime"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_state" c:identifier="gst_element_set_state">
-        <doc xml:space="preserve">Sets the state of the element. This function will try to set the
+        <doc xml:space="preserve"
+             filename="gst/gstelement.c"
+             line="2854">Sets the state of the element. This function will try to set the
 requested state by going through all the intermediary states and calling
 the class's state change function for each.
 
@@ -14783,56 +22335,77 @@ of the state change or it can wait for a %GST_MESSAGE_ASYNC_DONE or
 
 State changes to %GST_STATE_READY or %GST_STATE_NULL never return
 #GST_STATE_CHANGE_ASYNC.</doc>
+        <source-position filename="gst/gstelement.h" line="1009"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">Result of the state change using #GstStateChangeReturn.
+          <doc xml:space="preserve"
+               filename="gst/gstelement.c"
+               line="2873">Result of the state change using #GstStateChangeReturn.
 
 MT safe.</doc>
           <type name="StateChangeReturn" c:type="GstStateChangeReturn"/>
         </return-value>
         <parameters>
           <instance-parameter name="element" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElement to change state of.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="2856">a #GstElement to change state of.</doc>
             <type name="Element" c:type="GstElement*"/>
           </instance-parameter>
           <parameter name="state" transfer-ownership="none">
-            <doc xml:space="preserve">the element's new #GstState.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="2857">the element's new #GstState.</doc>
             <type name="State" c:type="GstState"/>
           </parameter>
         </parameters>
       </method>
       <method name="sync_state_with_parent"
               c:identifier="gst_element_sync_state_with_parent">
-        <doc xml:space="preserve">Tries to change the state of the element to the same as its parent.
+        <doc xml:space="preserve"
+             filename="gst/gstelement.c"
+             line="2371">Tries to change the state of the element to the same as its parent.
 If this function returns %FALSE, the state of element is undefined.</doc>
+        <source-position filename="gst/gstelement.h" line="1001"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE, if the element's state could be synced to the parent's state.
+          <doc xml:space="preserve"
+               filename="gst/gstelement.c"
+               line="2378">%TRUE, if the element's state could be synced to the parent's state.
 
 MT safe.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="element" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElement.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="2373">a #GstElement.</doc>
             <type name="Element" c:type="GstElement*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="unlink" c:identifier="gst_element_unlink">
-        <doc xml:space="preserve">Unlinks all source pads of the source element with all sink pads
+        <doc xml:space="preserve"
+             filename="gst/gstutils.c"
+             line="2383">Unlinks all source pads of the source element with all sink pads
 of the sink element to which they are linked.
 
 If the link has been made using gst_element_link(), it could have created an
 requestpad, which has to be released using gst_element_release_request_pad().</doc>
+        <source-position filename="gst/gstutils.h" line="1009"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="src" transfer-ownership="none">
-            <doc xml:space="preserve">the source #GstElement to unlink.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="2385">the source #GstElement to unlink.</doc>
             <type name="Element" c:type="GstElement*"/>
           </instance-parameter>
           <parameter name="dest" transfer-ownership="none">
-            <doc xml:space="preserve">the sink #GstElement to unlink.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="2386">the sink #GstElement to unlink.</doc>
             <type name="Element" c:type="GstElement*"/>
           </parameter>
         </parameters>
@@ -14840,47 +22413,67 @@ requestpad, which has to be released using gst_element_release_request_pad().</d
       <method name="unlink_many"
               c:identifier="gst_element_unlink_many"
               introspectable="0">
-        <doc xml:space="preserve">Unlinks a series of elements. Uses gst_element_unlink().</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstutils.c"
+             line="2355">Unlinks a series of elements. Uses gst_element_unlink().</doc>
+        <source-position filename="gst/gstutils.h" line="1012"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="element_1" transfer-ownership="none">
-            <doc xml:space="preserve">the first #GstElement in the link chain.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="2357">the first #GstElement in the link chain.</doc>
             <type name="Element" c:type="GstElement*"/>
           </instance-parameter>
           <parameter name="element_2" transfer-ownership="none">
-            <doc xml:space="preserve">the second #GstElement in the link chain.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="2358">the second #GstElement in the link chain.</doc>
             <type name="Element" c:type="GstElement*"/>
           </parameter>
           <parameter name="..." transfer-ownership="none">
-            <doc xml:space="preserve">the %NULL-terminated list of elements to unlink in order.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="2359">the %NULL-terminated list of elements to unlink in order.</doc>
             <varargs/>
           </parameter>
         </parameters>
       </method>
       <method name="unlink_pads" c:identifier="gst_element_unlink_pads">
-        <doc xml:space="preserve">Unlinks the two named pads of the source and destination elements.
+        <doc xml:space="preserve"
+             filename="gst/gstutils.c"
+             line="2298">Unlinks the two named pads of the source and destination elements.
 
 This is a convenience function for gst_pad_unlink().</doc>
+        <source-position filename="gst/gstutils.h" line="1022"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="src" transfer-ownership="none">
-            <doc xml:space="preserve">a (transfer none): #GstElement containing the source pad.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="2300">a (transfer none): #GstElement containing the source pad.</doc>
             <type name="Element" c:type="GstElement*"/>
           </instance-parameter>
           <parameter name="srcpadname" transfer-ownership="none">
-            <doc xml:space="preserve">the name of the #GstPad in source element.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="2301">the name of the #GstPad in source element.</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="dest" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElement containing the destination pad.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="2302">a #GstElement containing the destination pad.</doc>
             <type name="Element" c:type="GstElement*"/>
           </parameter>
           <parameter name="destpadname" transfer-ownership="none">
-            <doc xml:space="preserve">the name of the #GstPad in destination element.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="2303">the name of the #GstPad in destination element.</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
@@ -14889,107 +22482,149 @@ This is a convenience function for gst_pad_unlink().</doc>
         <type name="Object" c:type="GstObject"/>
       </field>
       <field name="state_lock">
-        <doc xml:space="preserve">Used to serialize execution of gst_element_set_state()</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstelement.h"
+             line="590">Used to serialize execution of gst_element_set_state()</doc>
         <type name="GLib.RecMutex" c:type="GRecMutex"/>
       </field>
       <field name="state_cond">
-        <doc xml:space="preserve">Used to signal completion of a state change</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstelement.h"
+             line="591">Used to signal completion of a state change</doc>
         <type name="GLib.Cond" c:type="GCond"/>
       </field>
       <field name="state_cookie">
-        <doc xml:space="preserve">Used to detect concurrent execution of
+        <doc xml:space="preserve"
+             filename="gst/gstelement.h"
+             line="592">Used to detect concurrent execution of
 gst_element_set_state() and gst_element_get_state()</doc>
         <type name="guint32" c:type="guint32"/>
       </field>
       <field name="target_state">
-        <doc xml:space="preserve">the target state of an element as set by the application</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstelement.h"
+             line="594">the target state of an element as set by the application</doc>
         <type name="State" c:type="GstState"/>
       </field>
       <field name="current_state">
-        <doc xml:space="preserve">the current state of an element</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstelement.h"
+             line="595">the current state of an element</doc>
         <type name="State" c:type="GstState"/>
       </field>
       <field name="next_state">
-        <doc xml:space="preserve">the next state of an element, can be #GST_STATE_VOID_PENDING if
+        <doc xml:space="preserve"
+             filename="gst/gstelement.h"
+             line="596">the next state of an element, can be #GST_STATE_VOID_PENDING if
 the element is in the correct state.</doc>
         <type name="State" c:type="GstState"/>
       </field>
       <field name="pending_state">
-        <doc xml:space="preserve">the final state the element should go to, can be
+        <doc xml:space="preserve"
+             filename="gst/gstelement.h"
+             line="598">the final state the element should go to, can be
 #GST_STATE_VOID_PENDING if the element is in the correct state</doc>
         <type name="State" c:type="GstState"/>
       </field>
       <field name="last_return">
-        <doc xml:space="preserve">the last return value of an element state change</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstelement.h"
+             line="600">the last return value of an element state change</doc>
         <type name="StateChangeReturn" c:type="GstStateChangeReturn"/>
       </field>
       <field name="bus">
-        <doc xml:space="preserve">the bus of the element. This bus is provided to the element by the
+        <doc xml:space="preserve"
+             filename="gst/gstelement.h"
+             line="601">the bus of the element. This bus is provided to the element by the
 parent element or the application. A #GstPipeline has a bus of its own.</doc>
         <type name="Bus" c:type="GstBus*"/>
       </field>
       <field name="clock">
-        <doc xml:space="preserve">the clock of the element. This clock is usually provided to the
+        <doc xml:space="preserve"
+             filename="gst/gstelement.h"
+             line="603">the clock of the element. This clock is usually provided to the
 element by the toplevel #GstPipeline.</doc>
         <type name="Clock" c:type="GstClock*"/>
       </field>
       <field name="base_time">
-        <doc xml:space="preserve">the time of the clock right before the element is set to
+        <doc xml:space="preserve"
+             filename="gst/gstelement.h"
+             line="605">the time of the clock right before the element is set to
 PLAYING. Subtracting @base_time from the current clock time in the PLAYING
 state will yield the running_time against the clock.</doc>
         <type name="ClockTimeDiff" c:type="GstClockTimeDiff"/>
       </field>
       <field name="start_time">
-        <doc xml:space="preserve">the running_time of the last PAUSED state</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstelement.h"
+             line="608">the running_time of the last PAUSED state</doc>
         <type name="ClockTime" c:type="GstClockTime"/>
       </field>
       <field name="numpads">
-        <doc xml:space="preserve">number of pads of the element, includes both source and sink pads.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstelement.h"
+             line="609">number of pads of the element, includes both source and sink pads.</doc>
         <type name="guint16" c:type="guint16"/>
       </field>
       <field name="pads">
-        <doc xml:space="preserve">list of pads</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstelement.h"
+             line="610">list of pads</doc>
         <type name="GLib.List" c:type="GList*">
           <type name="Pad"/>
         </type>
       </field>
       <field name="numsrcpads">
-        <doc xml:space="preserve">number of source pads of the element.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstelement.h"
+             line="611">number of source pads of the element.</doc>
         <type name="guint16" c:type="guint16"/>
       </field>
       <field name="srcpads">
-        <doc xml:space="preserve">list of source pads</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstelement.h"
+             line="612">list of source pads</doc>
         <type name="GLib.List" c:type="GList*">
           <type name="Pad"/>
         </type>
       </field>
       <field name="numsinkpads">
-        <doc xml:space="preserve">number of sink pads of the element.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstelement.h"
+             line="613">number of sink pads of the element.</doc>
         <type name="guint16" c:type="guint16"/>
       </field>
       <field name="sinkpads">
-        <doc xml:space="preserve">list of sink pads</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstelement.h"
+             line="614">list of sink pads</doc>
         <type name="GLib.List" c:type="GList*">
           <type name="Pad"/>
         </type>
       </field>
       <field name="pads_cookie">
-        <doc xml:space="preserve">updated whenever the a pad is added or removed</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstelement.h"
+             line="615">updated whenever the a pad is added or removed</doc>
         <type name="guint32" c:type="guint32"/>
       </field>
       <field name="contexts">
-        <doc xml:space="preserve">list of contexts</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstelement.h"
+             line="616">list of contexts</doc>
         <type name="GLib.List" c:type="GList*">
           <type name="Context"/>
         </type>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="3">
+        <array zero-terminated="0" fixed-size="3">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
       <glib:signal name="no-more-pads" when="last">
-        <doc xml:space="preserve">This signals that the element will not generate more dynamic pads.
+        <doc xml:space="preserve"
+             filename="gst/gstelement.c"
+             line="247">This signals that the element will not generate more dynamic pads.
 Note that this signal will usually be emitted from the context of
 the streaming thread.</doc>
         <return-value transfer-ownership="none">
@@ -14997,7 +22632,9 @@ the streaming thread.</doc>
         </return-value>
       </glib:signal>
       <glib:signal name="pad-added" when="last">
-        <doc xml:space="preserve">a new #GstPad has been added to the element. Note that this signal will
+        <doc xml:space="preserve"
+             filename="gst/gstelement.c"
+             line="221">a new #GstPad has been added to the element. Note that this signal will
 usually be emitted from the context of the streaming thread. Also keep in
 mind that if you add new elements to the pipeline in the signal handler
 you will need to set them to the desired target state with
@@ -15007,30 +22644,43 @@ gst_element_set_state() or gst_element_sync_state_with_parent().</doc>
         </return-value>
         <parameters>
           <parameter name="new_pad" transfer-ownership="none">
-            <doc xml:space="preserve">the pad that has been added</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="224">the pad that has been added</doc>
             <type name="Pad"/>
           </parameter>
         </parameters>
       </glib:signal>
       <glib:signal name="pad-removed" when="last">
-        <doc xml:space="preserve">a #GstPad has been removed from the element</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstelement.c"
+             line="236">a #GstPad has been removed from the element</doc>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <parameter name="old_pad" transfer-ownership="none">
-            <doc xml:space="preserve">the pad that has been removed</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="239">the pad that has been removed</doc>
             <type name="Pad"/>
           </parameter>
         </parameters>
       </glib:signal>
     </class>
     <callback name="ElementCallAsyncFunc" c:type="GstElementCallAsyncFunc">
+      <doc xml:space="preserve"
+           filename="gst/gstelement.h"
+           line="1025">Callback prototype used in #gst_element_call_async</doc>
+      <source-position filename="gst/gstelement.h" line="1032"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="element" transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstelement.h"
+               line="1027">The #GstElement this function has been called against</doc>
           <type name="Element" c:type="GstElement*"/>
         </parameter>
         <parameter name="user_data"
@@ -15038,6 +22688,9 @@ gst_element_set_state() or gst_element_sync_state_with_parent().</doc>
                    nullable="1"
                    allow-none="1"
                    closure="1">
+          <doc xml:space="preserve"
+               filename="gst/gstelement.h"
+               line="1028">Data passed in the function where that callback has been passed</doc>
           <type name="gpointer" c:type="gpointer"/>
         </parameter>
       </parameters>
@@ -15045,36 +22698,52 @@ gst_element_set_state() or gst_element_sync_state_with_parent().</doc>
     <record name="ElementClass"
             c:type="GstElementClass"
             glib:is-gtype-struct-for="Element">
-      <doc xml:space="preserve">GStreamer element class. Override the vmethods to implement the element
+      <doc xml:space="preserve"
+           filename="gst/gstelement.h"
+           line="660">GStreamer element class. Override the vmethods to implement the element
 functionality.</doc>
+      <source-position filename="gst/gstelement.h" line="744"/>
       <field name="parent_class">
-        <doc xml:space="preserve">the parent class structure</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstelement.h"
+             line="662">the parent class structure</doc>
         <type name="ObjectClass" c:type="GstObjectClass"/>
       </field>
       <field name="metadata">
-        <doc xml:space="preserve">metadata for elements of this class</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstelement.h"
+             line="663">metadata for elements of this class</doc>
         <type name="gpointer" c:type="gpointer"/>
       </field>
       <field name="elementfactory">
-        <doc xml:space="preserve">the #GstElementFactory that creates these elements</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstelement.h"
+             line="664">the #GstElementFactory that creates these elements</doc>
         <type name="ElementFactory" c:type="GstElementFactory*"/>
       </field>
       <field name="padtemplates">
-        <doc xml:space="preserve">a #GList of #GstPadTemplate</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstelement.h"
+             line="665">a #GList of #GstPadTemplate</doc>
         <type name="GLib.List" c:type="GList*">
           <type name="gpointer" c:type="gpointer"/>
         </type>
       </field>
       <field name="numpadtemplates">
-        <doc xml:space="preserve">the number of padtemplates</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstelement.h"
+             line="666">the number of padtemplates</doc>
         <type name="gint" c:type="gint"/>
       </field>
       <field name="pad_templ_cookie">
-        <doc xml:space="preserve">changed whenever the padtemplates change</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstelement.h"
+             line="667">changed whenever the padtemplates change</doc>
         <type name="guint32" c:type="guint32"/>
       </field>
       <field name="pad_added">
         <callback name="pad_added">
+          <source-position filename="gst/gstelement.h" line="704"/>
           <return-value transfer-ownership="none">
             <type name="none" c:type="void"/>
           </return-value>
@@ -15090,6 +22759,7 @@ functionality.</doc>
       </field>
       <field name="pad_removed">
         <callback name="pad_removed">
+          <source-position filename="gst/gstelement.h" line="705"/>
           <return-value transfer-ownership="none">
             <type name="none" c:type="void"/>
           </return-value>
@@ -15105,12 +22775,15 @@ functionality.</doc>
       </field>
       <field name="no_more_pads">
         <callback name="no_more_pads">
+          <source-position filename="gst/gstelement.h" line="706"/>
           <return-value transfer-ownership="none">
             <type name="none" c:type="void"/>
           </return-value>
           <parameters>
             <parameter name="element" transfer-ownership="none">
-              <doc xml:space="preserve">a #GstElement</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstelement.c"
+                   line="930">a #GstElement</doc>
               <type name="Element" c:type="GstElement*"/>
             </parameter>
           </parameters>
@@ -15118,25 +22791,34 @@ functionality.</doc>
       </field>
       <field name="request_new_pad">
         <callback name="request_new_pad">
+          <source-position filename="gst/gstelement.h" line="713"/>
           <return-value transfer-ownership="full" nullable="1">
-            <doc xml:space="preserve">requested #GstPad if found,
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="1234">requested #GstPad if found,
     otherwise %NULL.  Release after usage.</doc>
             <type name="Pad" c:type="GstPad*"/>
           </return-value>
           <parameters>
             <parameter name="element" transfer-ownership="none">
-              <doc xml:space="preserve">a #GstElement to find a request pad of.</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstelement.c"
+                   line="1221">a #GstElement to find a request pad of.</doc>
               <type name="Element" c:type="GstElement*"/>
             </parameter>
             <parameter name="templ" transfer-ownership="none">
-              <doc xml:space="preserve">a #GstPadTemplate of which we want a pad of.</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstelement.c"
+                   line="1222">a #GstPadTemplate of which we want a pad of.</doc>
               <type name="PadTemplate" c:type="GstPadTemplate*"/>
             </parameter>
             <parameter name="name"
                        transfer-ownership="none"
                        nullable="1"
                        allow-none="1">
-              <doc xml:space="preserve">the name of the request #GstPad
+              <doc xml:space="preserve"
+                   filename="gst/gstelement.c"
+                   line="1223">the name of the request #GstPad
 to retrieve. Can be %NULL.</doc>
               <type name="utf8" c:type="const gchar*"/>
             </parameter>
@@ -15144,7 +22826,9 @@ to retrieve. Can be %NULL.</doc>
                        transfer-ownership="none"
                        nullable="1"
                        allow-none="1">
-              <doc xml:space="preserve">the caps of the pad we want to
+              <doc xml:space="preserve"
+                   filename="gst/gstelement.c"
+                   line="1225">the caps of the pad we want to
 request. Can be %NULL.</doc>
               <type name="Caps" c:type="const GstCaps*"/>
             </parameter>
@@ -15153,6 +22837,7 @@ request. Can be %NULL.</doc>
       </field>
       <field name="release_pad">
         <callback name="release_pad">
+          <source-position filename="gst/gstelement.h" line="716"/>
           <return-value transfer-ownership="none">
             <type name="none" c:type="void"/>
           </return-value>
@@ -15168,8 +22853,11 @@ request. Can be %NULL.</doc>
       </field>
       <field name="get_state">
         <callback name="get_state">
+          <source-position filename="gst/gstelement.h" line="719"/>
           <return-value transfer-ownership="none">
-            <doc xml:space="preserve">%GST_STATE_CHANGE_SUCCESS if the element has no more pending state
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="2571">%GST_STATE_CHANGE_SUCCESS if the element has no more pending state
          and the last state change succeeded, %GST_STATE_CHANGE_ASYNC if the
          element is still performing a state change or
          %GST_STATE_CHANGE_FAILURE if the last state change failed.
@@ -15179,7 +22867,9 @@ MT safe.</doc>
           </return-value>
           <parameters>
             <parameter name="element" transfer-ownership="none">
-              <doc xml:space="preserve">a #GstElement to get the state of.</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstelement.c"
+                   line="2542">a #GstElement to get the state of.</doc>
               <type name="Element" c:type="GstElement*"/>
             </parameter>
             <parameter name="state"
@@ -15188,7 +22878,9 @@ MT safe.</doc>
                        transfer-ownership="full"
                        optional="1"
                        allow-none="1">
-              <doc xml:space="preserve">a pointer to #GstState to hold the state.
+              <doc xml:space="preserve"
+                   filename="gst/gstelement.c"
+                   line="2543">a pointer to #GstState to hold the state.
     Can be %NULL.</doc>
               <type name="State" c:type="GstState*"/>
             </parameter>
@@ -15198,12 +22890,16 @@ MT safe.</doc>
                        transfer-ownership="full"
                        optional="1"
                        allow-none="1">
-              <doc xml:space="preserve">a pointer to #GstState to hold the pending
+              <doc xml:space="preserve"
+                   filename="gst/gstelement.c"
+                   line="2545">a pointer to #GstState to hold the pending
     state. Can be %NULL.</doc>
               <type name="State" c:type="GstState*"/>
             </parameter>
             <parameter name="timeout" transfer-ownership="none">
-              <doc xml:space="preserve">a #GstClockTime to specify the timeout for an async
+              <doc xml:space="preserve"
+                   filename="gst/gstelement.c"
+                   line="2547">a #GstClockTime to specify the timeout for an async
           state change or %GST_CLOCK_TIME_NONE for infinite timeout.</doc>
               <type name="ClockTime" c:type="GstClockTime"/>
             </parameter>
@@ -15212,19 +22908,26 @@ MT safe.</doc>
       </field>
       <field name="set_state">
         <callback name="set_state">
+          <source-position filename="gst/gstelement.h" line="721"/>
           <return-value transfer-ownership="none">
-            <doc xml:space="preserve">Result of the state change using #GstStateChangeReturn.
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="2873">Result of the state change using #GstStateChangeReturn.
 
 MT safe.</doc>
             <type name="StateChangeReturn" c:type="GstStateChangeReturn"/>
           </return-value>
           <parameters>
             <parameter name="element" transfer-ownership="none">
-              <doc xml:space="preserve">a #GstElement to change state of.</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstelement.c"
+                   line="2856">a #GstElement to change state of.</doc>
               <type name="Element" c:type="GstElement*"/>
             </parameter>
             <parameter name="state" transfer-ownership="none">
-              <doc xml:space="preserve">the element's new #GstState.</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstelement.c"
+                   line="2857">the element's new #GstState.</doc>
               <type name="State" c:type="GstState"/>
             </parameter>
           </parameters>
@@ -15232,17 +22935,24 @@ MT safe.</doc>
       </field>
       <field name="change_state">
         <callback name="change_state">
+          <source-position filename="gst/gstelement.h" line="722"/>
           <return-value transfer-ownership="none">
-            <doc xml:space="preserve">the #GstStateChangeReturn of the state transition.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="3019">the #GstStateChangeReturn of the state transition.</doc>
             <type name="StateChangeReturn" c:type="GstStateChangeReturn"/>
           </return-value>
           <parameters>
             <parameter name="element" transfer-ownership="none">
-              <doc xml:space="preserve">a #GstElement</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstelement.c"
+                   line="3011">a #GstElement</doc>
               <type name="Element" c:type="GstElement*"/>
             </parameter>
             <parameter name="transition" transfer-ownership="none">
-              <doc xml:space="preserve">the requested transition</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstelement.c"
+                   line="3012">the requested transition</doc>
               <type name="StateChange" c:type="GstStateChange"/>
             </parameter>
           </parameters>
@@ -15250,6 +22960,7 @@ MT safe.</doc>
       </field>
       <field name="state_changed">
         <callback name="state_changed">
+          <source-position filename="gst/gstelement.h" line="723"/>
           <return-value transfer-ownership="none">
             <type name="none" c:type="void"/>
           </return-value>
@@ -15271,19 +22982,24 @@ MT safe.</doc>
       </field>
       <field name="set_bus">
         <callback name="set_bus">
+          <source-position filename="gst/gstelement.h" line="727"/>
           <return-value transfer-ownership="none">
             <type name="none" c:type="void"/>
           </return-value>
           <parameters>
             <parameter name="element" transfer-ownership="none">
-              <doc xml:space="preserve">a #GstElement to set the bus of.</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstelement.c"
+                   line="3437">a #GstElement to set the bus of.</doc>
               <type name="Element" c:type="GstElement*"/>
             </parameter>
             <parameter name="bus"
                        transfer-ownership="none"
                        nullable="1"
                        allow-none="1">
-              <doc xml:space="preserve">the #GstBus to set.</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstelement.c"
+                   line="3438">the #GstBus to set.</doc>
               <type name="Bus" c:type="GstBus*"/>
             </parameter>
           </parameters>
@@ -15291,8 +23007,11 @@ MT safe.</doc>
       </field>
       <field name="provide_clock">
         <callback name="provide_clock">
+          <source-position filename="gst/gstelement.h" line="730"/>
           <return-value transfer-ownership="full" nullable="1">
-            <doc xml:space="preserve">the GstClock provided by the
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="376">the GstClock provided by the
 element or %NULL if no clock could be provided.  Unref after usage.
 
 MT safe.</doc>
@@ -15300,7 +23019,9 @@ MT safe.</doc>
           </return-value>
           <parameters>
             <parameter name="element" transfer-ownership="none">
-              <doc xml:space="preserve">a #GstElement to query</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstelement.c"
+                   line="370">a #GstElement to query</doc>
               <type name="Element" c:type="GstElement*"/>
             </parameter>
           </parameters>
@@ -15308,8 +23029,11 @@ MT safe.</doc>
       </field>
       <field name="set_clock">
         <callback name="set_clock">
+          <source-position filename="gst/gstelement.h" line="731"/>
           <return-value transfer-ownership="none">
-            <doc xml:space="preserve">%TRUE if the element accepted the clock. An element can refuse a
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="419">%TRUE if the element accepted the clock. An element can refuse a
 clock when it, for example, is not able to slave its internal clock to the
 @clock or when it requires a specific clock to operate.
 
@@ -15318,14 +23042,18 @@ MT safe.</doc>
           </return-value>
           <parameters>
             <parameter name="element" transfer-ownership="none">
-              <doc xml:space="preserve">a #GstElement to set the clock for.</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstelement.c"
+                   line="412">a #GstElement to set the clock for.</doc>
               <type name="Element" c:type="GstElement*"/>
             </parameter>
             <parameter name="clock"
                        transfer-ownership="none"
                        nullable="1"
                        allow-none="1">
-              <doc xml:space="preserve">the #GstClock to set for the element.</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstelement.c"
+                   line="413">the #GstClock to set for the element.</doc>
               <type name="Clock" c:type="GstClock*"/>
             </parameter>
           </parameters>
@@ -15333,18 +23061,25 @@ MT safe.</doc>
       </field>
       <field name="send_event">
         <callback name="send_event">
+          <source-position filename="gst/gstelement.h" line="734"/>
           <return-value transfer-ownership="none">
-            <doc xml:space="preserve">%TRUE if the event was handled. Events that trigger a preroll (such
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="1916">%TRUE if the event was handled. Events that trigger a preroll (such
 as flushing seeks and steps) will emit %GST_MESSAGE_ASYNC_DONE.</doc>
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
           <parameters>
             <parameter name="element" transfer-ownership="none">
-              <doc xml:space="preserve">a #GstElement to send the event to.</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstelement.c"
+                   line="1904">a #GstElement to send the event to.</doc>
               <type name="Element" c:type="GstElement*"/>
             </parameter>
             <parameter name="event" transfer-ownership="full">
-              <doc xml:space="preserve">the #GstEvent to send to the element.</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstelement.c"
+                   line="1905">the #GstEvent to send to the element.</doc>
               <type name="Event" c:type="GstEvent*"/>
             </parameter>
           </parameters>
@@ -15352,19 +23087,26 @@ as flushing seeks and steps) will emit %GST_MESSAGE_ASYNC_DONE.</doc>
       </field>
       <field name="query">
         <callback name="query">
+          <source-position filename="gst/gstelement.h" line="736"/>
           <return-value transfer-ownership="none">
-            <doc xml:space="preserve">%TRUE if the query could be performed.
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="2021">%TRUE if the query could be performed.
 
 MT safe.</doc>
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
           <parameters>
             <parameter name="element" transfer-ownership="none">
-              <doc xml:space="preserve">a #GstElement to perform the query on.</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstelement.c"
+                   line="2010">a #GstElement to perform the query on.</doc>
               <type name="Element" c:type="GstElement*"/>
             </parameter>
             <parameter name="query" transfer-ownership="none">
-              <doc xml:space="preserve">the #GstQuery.</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstelement.c"
+                   line="2011">the #GstQuery.</doc>
               <type name="Query" c:type="GstQuery*"/>
             </parameter>
           </parameters>
@@ -15372,8 +23114,11 @@ MT safe.</doc>
       </field>
       <field name="post_message">
         <callback name="post_message">
+          <source-position filename="gst/gstelement.h" line="738"/>
           <return-value transfer-ownership="none">
-            <doc xml:space="preserve">%TRUE if the message was successfully posted. The function returns
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="2092">%TRUE if the message was successfully posted. The function returns
 %FALSE if the element did not have a bus.
 
 MT safe.</doc>
@@ -15381,11 +23126,15 @@ MT safe.</doc>
           </return-value>
           <parameters>
             <parameter name="element" transfer-ownership="none">
-              <doc xml:space="preserve">a #GstElement posting the message</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstelement.c"
+                   line="2085">a #GstElement posting the message</doc>
               <type name="Element" c:type="GstElement*"/>
             </parameter>
             <parameter name="message" transfer-ownership="full">
-              <doc xml:space="preserve">a #GstMessage to post</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstelement.c"
+                   line="2086">a #GstMessage to post</doc>
               <type name="Message" c:type="GstMessage*"/>
             </parameter>
           </parameters>
@@ -15393,91 +23142,121 @@ MT safe.</doc>
       </field>
       <field name="set_context">
         <callback name="set_context">
+          <source-position filename="gst/gstelement.h" line="740"/>
           <return-value transfer-ownership="none">
             <type name="none" c:type="void"/>
           </return-value>
           <parameters>
             <parameter name="element" transfer-ownership="none">
-              <doc xml:space="preserve">a #GstElement to set the context of.</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstelement.c"
+                   line="3522">a #GstElement to set the context of.</doc>
               <type name="Element" c:type="GstElement*"/>
             </parameter>
             <parameter name="context" transfer-ownership="none">
-              <doc xml:space="preserve">the #GstContext to set.</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstelement.c"
+                   line="3523">the #GstContext to set.</doc>
               <type name="Context" c:type="GstContext*"/>
             </parameter>
           </parameters>
         </callback>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="18">
+        <array zero-terminated="0" fixed-size="18">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
       <method name="add_metadata"
               c:identifier="gst_element_class_add_metadata">
-        <doc xml:space="preserve">Set @key with @value as metadata in @klass.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstelement.c"
+             line="1528">Set @key with @value as metadata in @klass.</doc>
+        <source-position filename="gst/gstelement.h" line="780"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="klass" transfer-ownership="none">
-            <doc xml:space="preserve">class to set metadata for</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="1530">class to set metadata for</doc>
             <type name="ElementClass" c:type="GstElementClass*"/>
           </instance-parameter>
           <parameter name="key" transfer-ownership="none">
-            <doc xml:space="preserve">the key to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="1531">the key to set</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="value" transfer-ownership="none">
-            <doc xml:space="preserve">the value to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="1532">the value to set</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </method>
       <method name="add_pad_template"
               c:identifier="gst_element_class_add_pad_template">
-        <doc xml:space="preserve">Adds a padtemplate to an element class. This is mainly used in the _class_init
+        <doc xml:space="preserve"
+             filename="gst/gstelement.c"
+             line="1442">Adds a padtemplate to an element class. This is mainly used in the _class_init
 functions of classes. If a pad template with the same name as an already
 existing one is added the old one is replaced by the new one.
 
 @templ's reference count will be incremented, and any floating
 reference will be removed (see gst_object_ref_sink())</doc>
+        <source-position filename="gst/gstelement.h" line="749"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="klass" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstElementClass to add the pad template to.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="1444">the #GstElementClass to add the pad template to.</doc>
             <type name="ElementClass" c:type="GstElementClass*"/>
           </instance-parameter>
           <parameter name="templ" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstPadTemplate to add to the element class.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="1445">a #GstPadTemplate to add to the element class.</doc>
             <type name="PadTemplate" c:type="GstPadTemplate*"/>
           </parameter>
         </parameters>
       </method>
       <method name="add_static_metadata"
               c:identifier="gst_element_class_add_static_metadata">
-        <doc xml:space="preserve">Set @key with @value as metadata in @klass.
+        <doc xml:space="preserve"
+             filename="gst/gstelement.c"
+             line="1548">Set @key with @value as metadata in @klass.
 
 Same as gst_element_class_add_metadata(), but @value must be a static string
 or an inlined string, as it will not be copied. (GStreamer plugins will
 be made resident once loaded, so this function can be used even from
 dynamically loaded plugins.)</doc>
+        <source-position filename="gst/gstelement.h" line="783"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="klass" transfer-ownership="none">
-            <doc xml:space="preserve">class to set metadata for</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="1550">class to set metadata for</doc>
             <type name="ElementClass" c:type="GstElementClass*"/>
           </instance-parameter>
           <parameter name="key" transfer-ownership="none">
-            <doc xml:space="preserve">the key to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="1551">the key to set</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="value" transfer-ownership="none">
-            <doc xml:space="preserve">the value to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="1552">the value to set</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
@@ -15485,20 +23264,27 @@ dynamically loaded plugins.)</doc>
       <method name="add_static_pad_template"
               c:identifier="gst_element_class_add_static_pad_template"
               version="1.8">
-        <doc xml:space="preserve">Adds a pad template to an element class based on the static pad template
+        <doc xml:space="preserve"
+             filename="gst/gstelement.c"
+             line="1486">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.</doc>
+        <source-position filename="gst/gstelement.h" line="752"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="klass" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstElementClass to add the pad template to.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="1488">the #GstElementClass to add the pad template to.</doc>
             <type name="ElementClass" c:type="GstElementClass*"/>
           </instance-parameter>
           <parameter name="static_templ" transfer-ownership="none">
-            <doc xml:space="preserve">#GstStaticPadTemplate to add as pad template to the element class.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="1489">#GstStaticPadTemplate to add as pad template to the element class.</doc>
             <type name="StaticPadTemplate" c:type="GstStaticPadTemplate*"/>
           </parameter>
         </parameters>
@@ -15506,78 +23292,110 @@ the old one is replaced by the new one.</doc>
       <method name="add_static_pad_template_with_gtype"
               c:identifier="gst_element_class_add_static_pad_template_with_gtype"
               version="1.14">
-        <doc xml:space="preserve">Adds a pad template to an element class based on the static pad template
+        <doc xml:space="preserve"
+             filename="gst/gstelement.c"
+             line="1506">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.</doc>
+        <source-position filename="gst/gstelement.h" line="755"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="klass" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstElementClass to add the pad template to.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="1508">the #GstElementClass to add the pad template to.</doc>
             <type name="ElementClass" c:type="GstElementClass*"/>
           </instance-parameter>
           <parameter name="static_templ" transfer-ownership="none">
-            <doc xml:space="preserve">#GstStaticPadTemplate to add as pad template to the element class.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="1509">#GstStaticPadTemplate to add as pad template to the element class.</doc>
             <type name="StaticPadTemplate" c:type="GstStaticPadTemplate*"/>
           </parameter>
           <parameter name="pad_type" transfer-ownership="none">
-            <doc xml:space="preserve">The #GType of the pad to create</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="1510">The #GType of the pad to create</doc>
             <type name="GType" c:type="GType"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_metadata"
               c:identifier="gst_element_class_get_metadata">
-        <doc xml:space="preserve">Get metadata with @key in @klass.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the metadata for @key.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstelement.c"
+             line="1660">Get metadata with @key in @klass.</doc>
+        <source-position filename="gst/gstelement.h" line="786"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstelement.c"
+               line="1667">the metadata for @key.</doc>
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
         <parameters>
           <instance-parameter name="klass" transfer-ownership="none">
-            <doc xml:space="preserve">class to get metadata for</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="1662">class to get metadata for</doc>
             <type name="ElementClass" c:type="GstElementClass*"/>
           </instance-parameter>
           <parameter name="key" transfer-ownership="none">
-            <doc xml:space="preserve">the key to get</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="1663">the key to get</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_pad_template"
               c:identifier="gst_element_class_get_pad_template">
-        <doc xml:space="preserve">Retrieves a padtemplate from @element_class with the given name.
+        <doc xml:space="preserve"
+             filename="gst/gstelement.c"
+             line="1740">Retrieves a padtemplate from @element_class with the given name.
 &gt; If you use this function in the #GInstanceInitFunc of an object class
 &gt; that has subclasses, make sure to pass the g_class parameter of the
 &gt; #GInstanceInitFunc here.</doc>
+        <source-position filename="gst/gstelement.h" line="760"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">the #GstPadTemplate with the
+          <doc xml:space="preserve"
+               filename="gst/gstelement.c"
+               line="1750">the #GstPadTemplate with the
     given name, or %NULL if none was found. No unreferencing is
     necessary.</doc>
           <type name="PadTemplate" c:type="GstPadTemplate*"/>
         </return-value>
         <parameters>
           <instance-parameter name="element_class" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElementClass to get the pad template of.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="1742">a #GstElementClass to get the pad template of.</doc>
             <type name="ElementClass" c:type="GstElementClass*"/>
           </instance-parameter>
           <parameter name="name" transfer-ownership="none">
-            <doc xml:space="preserve">the name of the #GstPadTemplate to get.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="1743">the name of the #GstPadTemplate to get.</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_pad_template_list"
               c:identifier="gst_element_class_get_pad_template_list">
-        <doc xml:space="preserve">Retrieves a list of the pad templates associated with @element_class. The
+        <doc xml:space="preserve"
+             filename="gst/gstelement.c"
+             line="1698">Retrieves a list of the pad templates associated with @element_class. The
 list must not be modified by the calling code.
 &gt; If you use this function in the #GInstanceInitFunc of an object class
 &gt; that has subclasses, make sure to pass the g_class parameter of the
 &gt; #GInstanceInitFunc here.</doc>
+        <source-position filename="gst/gstelement.h" line="763"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the #GList of
+          <doc xml:space="preserve"
+               filename="gst/gstelement.c"
+               line="1708">the #GList of
     pad templates.</doc>
           <type name="GLib.List" c:type="GList*">
             <type name="PadTemplate"/>
@@ -15585,40 +23403,55 @@ list must not be modified by the calling code.
         </return-value>
         <parameters>
           <instance-parameter name="element_class" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElementClass to get pad templates of.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="1700">a #GstElementClass to get pad templates of.</doc>
             <type name="ElementClass" c:type="GstElementClass*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="set_metadata"
               c:identifier="gst_element_class_set_metadata">
-        <doc xml:space="preserve">Sets the detailed information for a #GstElementClass.
+        <doc xml:space="preserve"
+             filename="gst/gstelement.c"
+             line="1576">Sets the detailed information for a #GstElementClass.
 &gt; This function is for use in _class_init functions only.</doc>
+        <source-position filename="gst/gstelement.h" line="768"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="klass" transfer-ownership="none">
-            <doc xml:space="preserve">class to set metadata for</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="1578">class to set metadata for</doc>
             <type name="ElementClass" c:type="GstElementClass*"/>
           </instance-parameter>
           <parameter name="longname" transfer-ownership="none">
-            <doc xml:space="preserve">The long English name of the element. E.g. "File Sink"</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="1579">The long English name of the element. E.g. "File Sink"</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="classification" transfer-ownership="none">
-            <doc xml:space="preserve">String describing the type of element, as an unordered list
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="1580">String describing the type of element, as an unordered list
 separated with slashes ('/'). See draft-klass.txt of the design docs
 for more details and common types. E.g: "Sink/File"</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="description" transfer-ownership="none">
-            <doc xml:space="preserve">Sentence describing the purpose of the element.
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="1583">Sentence describing the purpose of the element.
 E.g: "Write stream to a file"</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="author" transfer-ownership="none">
-            <doc xml:space="preserve">Name and contact details of the author(s). Use \n to separate
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="1585">Name and contact details of the author(s). Use \n to separate
 multiple author metadata. E.g: "Joe Bloggs &amp;lt;joe.blogs at foo.com&amp;gt;"</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
@@ -15626,7 +23459,9 @@ multiple author metadata. E.g: "Joe Bloggs &amp;lt;joe.blogs at foo.com&amp;gt;"
       </method>
       <method name="set_static_metadata"
               c:identifier="gst_element_class_set_static_metadata">
-        <doc xml:space="preserve">Sets the detailed information for a #GstElementClass.
+        <doc xml:space="preserve"
+             filename="gst/gstelement.c"
+             line="1609">Sets the detailed information for a #GstElementClass.
 
 &gt; This function is for use in _class_init functions only.
 
@@ -15634,31 +23469,42 @@ Same as gst_element_class_set_metadata(), but @longname, @classification,
 @description, and @author must be static strings or inlined strings, as
 they will not be copied. (GStreamer plugins will be made resident once
 loaded, so this function can be used even from dynamically loaded plugins.)</doc>
+        <source-position filename="gst/gstelement.h" line="774"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="klass" transfer-ownership="none">
-            <doc xml:space="preserve">class to set metadata for</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="1611">class to set metadata for</doc>
             <type name="ElementClass" c:type="GstElementClass*"/>
           </instance-parameter>
           <parameter name="longname" transfer-ownership="none">
-            <doc xml:space="preserve">The long English name of the element. E.g. "File Sink"</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="1612">The long English name of the element. E.g. "File Sink"</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="classification" transfer-ownership="none">
-            <doc xml:space="preserve">String describing the type of element, as an unordered list
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="1613">String describing the type of element, as an unordered list
 separated with slashes ('/'). See draft-klass.txt of the design docs
 for more details and common types. E.g: "Sink/File"</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="description" transfer-ownership="none">
-            <doc xml:space="preserve">Sentence describing the purpose of the element.
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="1616">Sentence describing the purpose of the element.
 E.g: "Write stream to a file"</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="author" transfer-ownership="none">
-            <doc xml:space="preserve">Name and contact details of the author(s). Use \n to separate
+            <doc xml:space="preserve"
+                 filename="gst/gstelement.c"
+                 line="1618">Name and contact details of the author(s). Use \n to separate
 multiple author metadata. E.g: "Joe Bloggs &amp;lt;joe.blogs at foo.com&amp;gt;"</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
@@ -15672,7 +23518,9 @@ multiple author metadata. E.g: "Joe Bloggs &amp;lt;joe.blogs at foo.com&amp;gt;"
            glib:type-name="GstElementFactory"
            glib:get-type="gst_element_factory_get_type"
            glib:type-struct="ElementFactoryClass">
-      <doc xml:space="preserve">#GstElementFactory is used to create instances of elements. A
+      <doc xml:space="preserve"
+           filename="gst/gstelementfactory.c"
+           line="24">#GstElementFactory is used to create instances of elements. A
 GstElementFactory can be added to a #GstPlugin as it is also a
 #GstPluginFeature.
 
@@ -15697,31 +23545,44 @@ The following code example shows you how to create a GstFileSrc element.
   g_return_if_fail (src != NULL);
   ...
 ]|</doc>
+      <source-position filename="gst/gstelementfactory.h" line="33"/>
       <function name="find" c:identifier="gst_element_factory_find">
-        <doc xml:space="preserve">Search for an element factory of the given name. Refs the returned
+        <doc xml:space="preserve"
+             filename="gst/gstelementfactory.c"
+             line="118">Search for an element factory of the given name. Refs the returned
 element factory; caller is responsible for unreffing.</doc>
+        <source-position filename="gst/gstelementfactory.h" line="57"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">#GstElementFactory if found,
+          <doc xml:space="preserve"
+               filename="gst/gstelementfactory.c"
+               line="125">#GstElementFactory if found,
 %NULL otherwise</doc>
           <type name="ElementFactory" c:type="GstElementFactory*"/>
         </return-value>
         <parameters>
           <parameter name="name" transfer-ownership="none">
-            <doc xml:space="preserve">name of factory to find</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelementfactory.c"
+                 line="120">name of factory to find</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </function>
       <function name="list_filter"
                 c:identifier="gst_element_factory_list_filter">
-        <doc xml:space="preserve">Filter out all the elementfactories in @list that can handle @caps in
+        <doc xml:space="preserve"
+             filename="gst/gstelementfactory.c"
+             line="825">Filter out all the elementfactories in @list that can handle @caps in
 the given direction.
 
 If @subsetonly is %TRUE, then only the elements whose pads templates
 are a complete superset of @caps will be returned. Else any element
 whose pad templates caps can intersect with @caps will be returned.</doc>
+        <source-position filename="gst/gstelementfactory.h" line="241"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a #GList of
+          <doc xml:space="preserve"
+               filename="gst/gstelementfactory.c"
+               line="840">a #GList of
     #GstElementFactory elements that match the given requisites.
     Use #gst_plugin_feature_list_free after usage.</doc>
           <type name="GLib.List" c:type="GList*">
@@ -15730,33 +23591,46 @@ whose pad templates caps can intersect with @caps will be returned.</doc>
         </return-value>
         <parameters>
           <parameter name="list" transfer-ownership="none">
-            <doc xml:space="preserve">a #GList of
+            <doc xml:space="preserve"
+                 filename="gst/gstelementfactory.c"
+                 line="827">a #GList of
     #GstElementFactory to filter</doc>
             <type name="GLib.List" c:type="GList*">
               <type name="ElementFactory"/>
             </type>
           </parameter>
           <parameter name="caps" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstCaps</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelementfactory.c"
+                 line="829">a #GstCaps</doc>
             <type name="Caps" c:type="const GstCaps*"/>
           </parameter>
           <parameter name="direction" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstPadDirection to filter on</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelementfactory.c"
+                 line="830">a #GstPadDirection to filter on</doc>
             <type name="PadDirection" c:type="GstPadDirection"/>
           </parameter>
           <parameter name="subsetonly" transfer-ownership="none">
-            <doc xml:space="preserve">whether to filter on caps subsets or not.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelementfactory.c"
+                 line="831">whether to filter on caps subsets or not.</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </function>
       <function name="list_get_elements"
                 c:identifier="gst_element_factory_list_get_elements">
-        <doc xml:space="preserve">Get a list of factories that match the given @type. Only elements
+        <doc xml:space="preserve"
+             filename="gst/gstelementfactory.c"
+             line="791">Get a list of factories that match the given @type. Only elements
 with a rank greater or equal to @minrank will be returned.
 The list of factories is returned by decreasing rank.</doc>
+        <source-position filename="gst/gstelementfactory.h" line="236"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a #GList of
+          <doc xml:space="preserve"
+               filename="gst/gstelementfactory.c"
+               line="800">a #GList of
     #GstElementFactory elements. Use gst_plugin_feature_list_free() after
     usage.</doc>
           <type name="GLib.List" c:type="GList*">
@@ -15765,36 +23639,49 @@ The list of factories is returned by decreasing rank.</doc>
         </return-value>
         <parameters>
           <parameter name="type" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElementFactoryListType</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelementfactory.c"
+                 line="793">a #GstElementFactoryListType</doc>
             <type name="ElementFactoryListType"
                   c:type="GstElementFactoryListType"/>
           </parameter>
           <parameter name="minrank" transfer-ownership="none">
-            <doc xml:space="preserve">Minimum rank</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelementfactory.c"
+                 line="794">Minimum rank</doc>
             <type name="Rank" c:type="GstRank"/>
           </parameter>
         </parameters>
       </function>
       <function name="make" c:identifier="gst_element_factory_make">
-        <doc xml:space="preserve">Create a new element of the type defined by the given element factory.
+        <doc xml:space="preserve"
+             filename="gst/gstelementfactory.c"
+             line="423">Create a new element of the type defined by the given element factory.
 If name is %NULL, then the element will receive a guaranteed unique name,
 consisting of the element factory name and a number.
 If name is given, it will be given the name supplied.</doc>
+        <source-position filename="gst/gstelementfactory.h" line="87"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">new #GstElement or %NULL
+          <doc xml:space="preserve"
+               filename="gst/gstelementfactory.c"
+               line="434">new #GstElement or %NULL
 if unable to create element</doc>
           <type name="Element" c:type="GstElement*"/>
         </return-value>
         <parameters>
           <parameter name="factoryname" transfer-ownership="none">
-            <doc xml:space="preserve">a named factory to instantiate</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelementfactory.c"
+                 line="425">a named factory to instantiate</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="name"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">name of new element, or %NULL to automatically create
+            <doc xml:space="preserve"
+                 filename="gst/gstelementfactory.c"
+                 line="426">name of new element, or %NULL to automatically create
    a unique name</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
@@ -15802,95 +23689,140 @@ if unable to create element</doc>
       </function>
       <method name="can_sink_all_caps"
               c:identifier="gst_element_factory_can_sink_all_caps">
-        <doc xml:space="preserve">Checks if the factory can sink all possible capabilities.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the caps are fully compatible.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstutils.c"
+             line="1430">Checks if the factory can sink all possible capabilities.</doc>
+        <source-position filename="gst/gstutils.h" line="1037"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="1437">%TRUE if the caps are fully compatible.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="factory" transfer-ownership="none">
-            <doc xml:space="preserve">factory to query</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="1432">factory to query</doc>
             <type name="ElementFactory" c:type="GstElementFactory*"/>
           </instance-parameter>
           <parameter name="caps" transfer-ownership="none">
-            <doc xml:space="preserve">the caps to check</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="1433">the caps to check</doc>
             <type name="Caps" c:type="const GstCaps*"/>
           </parameter>
         </parameters>
       </method>
       <method name="can_sink_any_caps"
               c:identifier="gst_element_factory_can_sink_any_caps">
-        <doc xml:space="preserve">Checks if the factory can sink any possible capability.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the caps have a common subset.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstutils.c"
+             line="1464">Checks if the factory can sink any possible capability.</doc>
+        <source-position filename="gst/gstutils.h" line="1043"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="1471">%TRUE if the caps have a common subset.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="factory" transfer-ownership="none">
-            <doc xml:space="preserve">factory to query</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="1466">factory to query</doc>
             <type name="ElementFactory" c:type="GstElementFactory*"/>
           </instance-parameter>
           <parameter name="caps" transfer-ownership="none">
-            <doc xml:space="preserve">the caps to check</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="1467">the caps to check</doc>
             <type name="Caps" c:type="const GstCaps*"/>
           </parameter>
         </parameters>
       </method>
       <method name="can_src_all_caps"
               c:identifier="gst_element_factory_can_src_all_caps">
-        <doc xml:space="preserve">Checks if the factory can src all possible capabilities.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the caps are fully compatible.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstutils.c"
+             line="1447">Checks if the factory can src all possible capabilities.</doc>
+        <source-position filename="gst/gstutils.h" line="1040"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="1454">%TRUE if the caps are fully compatible.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="factory" transfer-ownership="none">
-            <doc xml:space="preserve">factory to query</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="1449">factory to query</doc>
             <type name="ElementFactory" c:type="GstElementFactory*"/>
           </instance-parameter>
           <parameter name="caps" transfer-ownership="none">
-            <doc xml:space="preserve">the caps to check</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="1450">the caps to check</doc>
             <type name="Caps" c:type="const GstCaps*"/>
           </parameter>
         </parameters>
       </method>
       <method name="can_src_any_caps"
               c:identifier="gst_element_factory_can_src_any_caps">
-        <doc xml:space="preserve">Checks if the factory can src any possible capability.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the caps have a common subset.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstutils.c"
+             line="1481">Checks if the factory can src any possible capability.</doc>
+        <source-position filename="gst/gstutils.h" line="1046"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="1488">%TRUE if the caps have a common subset.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="factory" transfer-ownership="none">
-            <doc xml:space="preserve">factory to query</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="1483">factory to query</doc>
             <type name="ElementFactory" c:type="GstElementFactory*"/>
           </instance-parameter>
           <parameter name="caps" transfer-ownership="none">
-            <doc xml:space="preserve">the caps to check</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="1484">the caps to check</doc>
             <type name="Caps" c:type="const GstCaps*"/>
           </parameter>
         </parameters>
       </method>
       <method name="create" c:identifier="gst_element_factory_create">
-        <doc xml:space="preserve">Create a new element of the type defined by the given elementfactory.
+        <doc xml:space="preserve"
+             filename="gst/gstelementfactory.c"
+             line="326">Create a new element of the type defined by the given elementfactory.
 It will be given the name supplied, since all elements require a name as
 their first argument.</doc>
+        <source-position filename="gst/gstelementfactory.h" line="84"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">new #GstElement or %NULL
+          <doc xml:space="preserve"
+               filename="gst/gstelementfactory.c"
+               line="336">new #GstElement or %NULL
     if the element couldn't be created</doc>
           <type name="Element" c:type="GstElement*"/>
         </return-value>
         <parameters>
           <instance-parameter name="factory" transfer-ownership="none">
-            <doc xml:space="preserve">factory to instantiate</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelementfactory.c"
+                 line="328">factory to instantiate</doc>
             <type name="ElementFactory" c:type="GstElementFactory*"/>
           </instance-parameter>
           <parameter name="name"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">name of new element, or %NULL to automatically create
+            <doc xml:space="preserve"
+                 filename="gst/gstelementfactory.c"
+                 line="329">name of new element, or %NULL to automatically create
    a unique name</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
@@ -15898,45 +23830,66 @@ their first argument.</doc>
       </method>
       <method name="get_element_type"
               c:identifier="gst_element_factory_get_element_type">
-        <doc xml:space="preserve">Get the #GType for elements managed by this factory. The type can
+        <doc xml:space="preserve"
+             filename="gst/gstelementfactory.c"
+             line="488">Get the #GType for elements managed by this factory. The type can
 only be retrieved if the element factory is loaded, which can be
 assured with gst_plugin_feature_load().</doc>
+        <source-position filename="gst/gstelementfactory.h" line="60"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the #GType for elements managed by this factory or 0 if
+          <doc xml:space="preserve"
+               filename="gst/gstelementfactory.c"
+               line="496">the #GType for elements managed by this factory or 0 if
 the factory is not loaded.</doc>
           <type name="GType" c:type="GType"/>
         </return-value>
         <parameters>
           <instance-parameter name="factory" transfer-ownership="none">
-            <doc xml:space="preserve">factory to get managed #GType from</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelementfactory.c"
+                 line="490">factory to get managed #GType from</doc>
             <type name="ElementFactory" c:type="GstElementFactory*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_metadata"
               c:identifier="gst_element_factory_get_metadata">
-        <doc xml:space="preserve">Get the metadata on @factory with @key.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstelementfactory.c"
+             line="507">Get the metadata on @factory with @key.</doc>
+        <source-position filename="gst/gstelementfactory.h" line="63"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">the metadata with @key on @factory or %NULL
+          <doc xml:space="preserve"
+               filename="gst/gstelementfactory.c"
+               line="514">the metadata with @key on @factory or %NULL
 when there was no metadata with the given @key.</doc>
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
         <parameters>
           <instance-parameter name="factory" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElementFactory</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelementfactory.c"
+                 line="509">a #GstElementFactory</doc>
             <type name="ElementFactory" c:type="GstElementFactory*"/>
           </instance-parameter>
           <parameter name="key" transfer-ownership="none">
-            <doc xml:space="preserve">a key</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelementfactory.c"
+                 line="510">a key</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_metadata_keys"
               c:identifier="gst_element_factory_get_metadata_keys">
-        <doc xml:space="preserve">Get the available keys for the metadata on @factory.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstelementfactory.c"
+             line="526">Get the available keys for the metadata on @factory.</doc>
+        <source-position filename="gst/gstelementfactory.h" line="66"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">
+          <doc xml:space="preserve"
+               filename="gst/gstelementfactory.c"
+               line="532">
 a %NULL-terminated array of key strings, or %NULL when there is no
 metadata. Free with g_strfreev() when no longer needed.</doc>
           <array c:type="gchar**">
@@ -15945,30 +23898,44 @@ metadata. Free with g_strfreev() when no longer needed.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="factory" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElementFactory</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelementfactory.c"
+                 line="528">a #GstElementFactory</doc>
             <type name="ElementFactory" c:type="GstElementFactory*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_num_pad_templates"
               c:identifier="gst_element_factory_get_num_pad_templates">
-        <doc xml:space="preserve">Gets the number of pad_templates in this factory.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the number of pad_templates</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstelementfactory.c"
+             line="561">Gets the number of pad_templates in this factory.</doc>
+        <source-position filename="gst/gstelementfactory.h" line="69"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstelementfactory.c"
+               line="567">the number of pad_templates</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="factory" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElementFactory</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelementfactory.c"
+                 line="563">a #GstElementFactory</doc>
             <type name="ElementFactory" c:type="GstElementFactory*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_static_pad_templates"
               c:identifier="gst_element_factory_get_static_pad_templates">
-        <doc xml:space="preserve">Gets the #GList of #GstStaticPadTemplate for this factory.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the
+        <doc xml:space="preserve"
+             filename="gst/gstelementfactory.c"
+             line="598">Gets the #GList of #GstStaticPadTemplate for this factory.</doc>
+        <source-position filename="gst/gstelementfactory.h" line="72"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstelementfactory.c"
+               line="604">the
     static pad templates</doc>
           <type name="GLib.List" c:type="const GList*">
             <type name="StaticPadTemplate"/>
@@ -15976,19 +23943,26 @@ metadata. Free with g_strfreev() when no longer needed.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="factory" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElementFactory</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelementfactory.c"
+                 line="600">a #GstElementFactory</doc>
             <type name="ElementFactory" c:type="GstElementFactory*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_uri_protocols"
               c:identifier="gst_element_factory_get_uri_protocols">
-        <doc xml:space="preserve">Gets a %NULL-terminated array of protocols this element supports or %NULL if
+        <doc xml:space="preserve"
+             filename="gst/gstelementfactory.c"
+             line="631">Gets a %NULL-terminated array of protocols this element supports or %NULL if
 no protocols are supported. You may not change the contents of the returned
 array, as it is still owned by the element factory. Use g_strdupv() to
 make a copy of the protocol string array if you need to.</doc>
+        <source-position filename="gst/gstelementfactory.h" line="78"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the supported protocols
+          <doc xml:space="preserve"
+               filename="gst/gstelementfactory.c"
+               line="640">the supported protocols
     or %NULL</doc>
           <array c:type="const gchar* const*">
             <type name="utf8"/>
@@ -15996,57 +23970,84 @@ make a copy of the protocol string array if you need to.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="factory" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElementFactory</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelementfactory.c"
+                 line="633">a #GstElementFactory</doc>
             <type name="ElementFactory" c:type="GstElementFactory*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_uri_type"
               c:identifier="gst_element_factory_get_uri_type">
-        <doc xml:space="preserve">Gets the type of URIs the element supports or #GST_URI_UNKNOWN if none.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">type of URIs this element supports</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstelementfactory.c"
+             line="615">Gets the type of URIs the element supports or #GST_URI_UNKNOWN if none.</doc>
+        <source-position filename="gst/gstelementfactory.h" line="75"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstelementfactory.c"
+               line="621">type of URIs this element supports</doc>
           <type name="URIType" c:type="GstURIType"/>
         </return-value>
         <parameters>
           <instance-parameter name="factory" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElementFactory</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelementfactory.c"
+                 line="617">a #GstElementFactory</doc>
             <type name="ElementFactory" c:type="GstElementFactory*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="has_interface"
               c:identifier="gst_element_factory_has_interface">
-        <doc xml:space="preserve">Check if @factory implements the interface with name @interfacename.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE when @factory implement the interface.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstelementfactory.c"
+             line="651">Check if @factory implements the interface with name @interfacename.</doc>
+        <source-position filename="gst/gstelementfactory.h" line="81"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstelementfactory.c"
+               line="658">%TRUE when @factory implement the interface.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="factory" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElementFactory</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelementfactory.c"
+                 line="653">a #GstElementFactory</doc>
             <type name="ElementFactory" c:type="GstElementFactory*"/>
           </instance-parameter>
           <parameter name="interfacename" transfer-ownership="none">
-            <doc xml:space="preserve">an interface name</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelementfactory.c"
+                 line="654">an interface name</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </method>
       <method name="list_is_type"
               c:identifier="gst_element_factory_list_is_type">
-        <doc xml:space="preserve">Check if @factory is of the given types.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if @factory is of @type.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstelementfactory.c"
+             line="685">Check if @factory is of the given types.</doc>
+        <source-position filename="gst/gstelementfactory.h" line="232"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstelementfactory.c"
+               line="692">%TRUE if @factory is of @type.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="factory" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElementFactory</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelementfactory.c"
+                 line="687">a #GstElementFactory</doc>
             <type name="ElementFactory" c:type="GstElementFactory*"/>
           </instance-parameter>
           <parameter name="type" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstElementFactoryListType</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstelementfactory.c"
+                 line="688">a #GstElementFactoryListType</doc>
             <type name="ElementFactoryListType"
                   c:type="GstElementFactoryListType"/>
           </parameter>
@@ -16057,71 +24058,97 @@ make a copy of the protocol string array if you need to.</doc>
             c:type="GstElementFactoryClass"
             disguised="1"
             glib:is-gtype-struct-for="ElementFactory">
+      <source-position filename="gst/gstelementfactory.h" line="33"/>
     </record>
     <bitfield name="ElementFlags"
               glib:type-name="GstElementFlags"
               glib:get-type="gst_element_flags_get_type"
               c:type="GstElementFlags">
-      <doc xml:space="preserve">The standard flags that an element may have.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstelement.h"
+           line="260">The standard flags that an element may have.</doc>
       <member name="locked_state"
               value="16"
               c:identifier="GST_ELEMENT_FLAG_LOCKED_STATE"
               glib:nick="locked-state">
-        <doc xml:space="preserve">ignore state changes from parent</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstelement.h"
+             line="262">ignore state changes from parent</doc>
       </member>
       <member name="sink"
               value="32"
               c:identifier="GST_ELEMENT_FLAG_SINK"
               glib:nick="sink">
-        <doc xml:space="preserve">the element is a sink</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstelement.h"
+             line="263">the element is a sink</doc>
       </member>
       <member name="source"
               value="64"
               c:identifier="GST_ELEMENT_FLAG_SOURCE"
               glib:nick="source">
-        <doc xml:space="preserve">the element is a source.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstelement.h"
+             line="264">the element is a source.</doc>
       </member>
       <member name="provide_clock"
               value="128"
               c:identifier="GST_ELEMENT_FLAG_PROVIDE_CLOCK"
               glib:nick="provide-clock">
-        <doc xml:space="preserve">the element can provide a clock</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstelement.h"
+             line="265">the element can provide a clock</doc>
       </member>
       <member name="require_clock"
               value="256"
               c:identifier="GST_ELEMENT_FLAG_REQUIRE_CLOCK"
               glib:nick="require-clock">
-        <doc xml:space="preserve">the element requires a clock</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstelement.h"
+             line="266">the element requires a clock</doc>
       </member>
       <member name="indexable"
               value="512"
               c:identifier="GST_ELEMENT_FLAG_INDEXABLE"
               glib:nick="indexable">
-        <doc xml:space="preserve">the element can use an index</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstelement.h"
+             line="267">the element can use an index</doc>
       </member>
       <member name="last"
               value="16384"
               c:identifier="GST_ELEMENT_FLAG_LAST"
               glib:nick="last">
-        <doc xml:space="preserve">offset to define more flags</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstelement.h"
+             line="268">offset to define more flags</doc>
       </member>
     </bitfield>
     <callback name="ElementForeachPadFunc"
               c:type="GstElementForeachPadFunc"
               version="1.14">
-      <doc xml:space="preserve">Function called for each pad when using gst_element_foreach_sink_pad(),
+      <doc xml:space="preserve"
+           filename="gst/gstelement.h"
+           line="923">Function called for each pad when using gst_element_foreach_sink_pad(),
 gst_element_foreach_src_pad(), or gst_element_foreach_pad().</doc>
+      <source-position filename="gst/gstelement.h" line="936"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%FALSE to stop iterating pads, %TRUE to continue</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstelement.h"
+             line="932">%FALSE to stop iterating pads, %TRUE to continue</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="element" transfer-ownership="none">
-          <doc xml:space="preserve">the #GstElement</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstelement.h"
+               line="925">the #GstElement</doc>
           <type name="Element" c:type="GstElement*"/>
         </parameter>
         <parameter name="pad" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstPad</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstelement.h"
+               line="926">a #GstPad</doc>
           <type name="Pad" c:type="GstPad*"/>
         </parameter>
         <parameter name="user_data"
@@ -16129,7 +24156,9 @@ gst_element_foreach_src_pad(), or gst_element_foreach_pad().</doc>
                    nullable="1"
                    allow-none="1"
                    closure="2">
-          <doc xml:space="preserve">user data passed to the foreach function</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstelement.h"
+               line="927">user data passed to the foreach function</doc>
           <type name="gpointer" c:type="gpointer"/>
         </parameter>
       </parameters>
@@ -16139,7 +24168,9 @@ gst_element_foreach_src_pad(), or gst_element_foreach_pad().</doc>
             glib:type-name="GstEvent"
             glib:get-type="gst_event_get_type"
             c:symbol-prefix="event">
-      <doc xml:space="preserve">The event class provides factory methods to construct events for sending
+      <doc xml:space="preserve"
+           filename="gst/gstevent.c"
+           line="24">The event class provides factory methods to construct events for sending
 and functions to query (parse) received events.
 
 Events are usually created with gst_event_new_*() which takes event-type
@@ -16180,68 +24211,99 @@ the needed parameters to specify seeking time and mode.
     g_warning ("seek failed");
   ...
 ]|</doc>
+      <source-position filename="gst/gstevent.h" line="425"/>
       <field name="mini_object" writable="1">
-        <doc xml:space="preserve">the parent structure</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstevent.h"
+             line="410">the parent structure</doc>
         <type name="MiniObject" c:type="GstMiniObject"/>
       </field>
       <field name="type" writable="1">
-        <doc xml:space="preserve">the #GstEventType of the event</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstevent.h"
+             line="411">the #GstEventType of the event</doc>
         <type name="EventType" c:type="GstEventType"/>
       </field>
       <field name="timestamp" writable="1">
-        <doc xml:space="preserve">the timestamp of the event</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstevent.h"
+             line="412">the timestamp of the event</doc>
         <type name="guint64" c:type="guint64"/>
       </field>
       <field name="seqnum" writable="1">
-        <doc xml:space="preserve">the sequence number of the event</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstevent.h"
+             line="413">the sequence number of the event</doc>
         <type name="guint32" c:type="guint32"/>
       </field>
       <constructor name="new_buffer_size"
                    c:identifier="gst_event_new_buffer_size">
-        <doc xml:space="preserve">Create a new buffersize event. The event is sent downstream and notifies
+        <doc xml:space="preserve"
+             filename="gst/gstevent.c"
+             line="1040">Create a new buffersize event. The event is sent downstream and notifies
 elements that they should provide a buffer of the specified dimensions.
 
 When the @async flag is set, a thread boundary is preferred.</doc>
+        <source-position filename="gst/gstevent.h" line="662"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new #GstEvent</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstevent.c"
+               line="1052">a new #GstEvent</doc>
           <type name="Event" c:type="GstEvent*"/>
         </return-value>
         <parameters>
           <parameter name="format" transfer-ownership="none">
-            <doc xml:space="preserve">buffer format</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="1042">buffer format</doc>
             <type name="Format" c:type="GstFormat"/>
           </parameter>
           <parameter name="minsize" transfer-ownership="none">
-            <doc xml:space="preserve">minimum buffer size</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="1043">minimum buffer size</doc>
             <type name="gint64" c:type="gint64"/>
           </parameter>
           <parameter name="maxsize" transfer-ownership="none">
-            <doc xml:space="preserve">maximum buffer size</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="1044">maximum buffer size</doc>
             <type name="gint64" c:type="gint64"/>
           </parameter>
           <parameter name="async" transfer-ownership="none">
-            <doc xml:space="preserve">thread behavior</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="1045">thread behavior</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </constructor>
       <constructor name="new_caps" c:identifier="gst_event_new_caps">
-        <doc xml:space="preserve">Create a new CAPS event for @caps. The caps event can only travel downstream
+        <doc xml:space="preserve"
+             filename="gst/gstevent.c"
+             line="829">Create a new CAPS event for @caps. The caps event can only travel downstream
 synchronized with the buffer flow and contains the format of the buffers
 that will follow after the event.</doc>
+        <source-position filename="gst/gstevent.h" line="618"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">the new CAPS event.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstevent.c"
+               line="837">the new CAPS event.</doc>
           <type name="Event" c:type="GstEvent*"/>
         </return-value>
         <parameters>
           <parameter name="caps" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstCaps</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="831">a #GstCaps</doc>
             <type name="Caps" c:type="GstCaps*"/>
           </parameter>
         </parameters>
       </constructor>
       <constructor name="new_custom" c:identifier="gst_event_new_custom">
-        <doc xml:space="preserve">Create a new custom-typed event. This can be used for anything not
+        <doc xml:space="preserve"
+             filename="gst/gstevent.c"
+             line="284">Create a new custom-typed event. This can be used for anything not
 handled by other event-specific functions to pass an event to another
 element.
 
@@ -16251,24 +24313,33 @@ serialization flags.
 
 New custom events can also be created by subclassing the event type if
 needed.</doc>
+        <source-position filename="gst/gstevent.h" line="508"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">the new custom event.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstevent.c"
+               line="301">the new custom event.</doc>
           <type name="Event" c:type="GstEvent*"/>
         </return-value>
         <parameters>
           <parameter name="type" transfer-ownership="none">
-            <doc xml:space="preserve">The type of the new event</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="286">The type of the new event</doc>
             <type name="EventType" c:type="GstEventType"/>
           </parameter>
           <parameter name="structure" transfer-ownership="full">
-            <doc xml:space="preserve">the structure for the event. The event will
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="287">the structure for the event. The event will
     take ownership of the structure.</doc>
             <type name="Structure" c:type="GstStructure*"/>
           </parameter>
         </parameters>
       </constructor>
       <constructor name="new_eos" c:identifier="gst_event_new_eos">
-        <doc xml:space="preserve">Create a new EOS event. The eos event can only travel downstream
+        <doc xml:space="preserve"
+             filename="gst/gstevent.c"
+             line="746">Create a new EOS event. The eos event can only travel downstream
 synchronized with the buffer flow. Elements that receive the EOS
 event on a pad can return #GST_FLOW_EOS as a #GstFlowReturn
 when data after the EOS event arrives.
@@ -16281,14 +24352,19 @@ When all sinks have posted an EOS message, an EOS message is
 forwarded to the application.
 
 The EOS event itself will not cause any state transitions of the pipeline.</doc>
+        <source-position filename="gst/gstevent.h" line="603"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the new EOS event.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstevent.c"
+               line="763">the new EOS event.</doc>
           <type name="Event" c:type="GstEvent*"/>
         </return-value>
       </constructor>
       <constructor name="new_flush_start"
                    c:identifier="gst_event_new_flush_start">
-        <doc xml:space="preserve">Allocate a new flush start event. The flush start event can be sent
+        <doc xml:space="preserve"
+             filename="gst/gstevent.c"
+             line="534">Allocate a new flush start event. The flush start event can be sent
 upstream and downstream and travels out-of-bounds with the dataflow.
 
 It marks pads as being flushing and will make them return
@@ -16302,14 +24378,19 @@ functions as fast as possible when this event is received.
 
 This event is typically generated after a seek to flush out all queued data
 in the pipeline so that the new media is played as soon as possible.</doc>
+        <source-position filename="gst/gstevent.h" line="568"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new flush start event.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstevent.c"
+               line="552">a new flush start event.</doc>
           <type name="Event" c:type="GstEvent*"/>
         </return-value>
       </constructor>
       <constructor name="new_flush_stop"
                    c:identifier="gst_event_new_flush_stop">
-        <doc xml:space="preserve">Allocate a new flush stop event. The flush stop event can be sent
+        <doc xml:space="preserve"
+             filename="gst/gstevent.c"
+             line="560">Allocate a new flush stop event. The flush stop event can be sent
 upstream and downstream and travels serialized with the dataflow.
 It is typically sent after sending a FLUSH_START event to make the
 pads accept data again.
@@ -16319,66 +24400,176 @@ the preceding FLUSH_START event stopped the dataflow.
 
 This event is typically generated to complete a seek and to resume
 dataflow.</doc>
+        <source-position filename="gst/gstevent.h" line="571"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new flush stop event.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstevent.c"
+               line="575">a new flush stop event.</doc>
           <type name="Event" c:type="GstEvent*"/>
         </return-value>
         <parameters>
           <parameter name="reset_time" transfer-ownership="none">
-            <doc xml:space="preserve">if time should be reset</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="562">if time should be reset</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </constructor>
       <constructor name="new_gap" c:identifier="gst_event_new_gap">
-        <doc xml:space="preserve">Create a new GAP event. A gap event can be thought of as conceptually
+        <doc xml:space="preserve"
+             filename="gst/gstevent.c"
+             line="771">Create a new GAP event. A gap event can be thought of as conceptually
 equivalent to a buffer to signal that there is no data for a certain
 amount of time. This is useful to signal a gap to downstream elements
 which may wait for data, such as muxers or mixers or overlays, especially
 for sparse streams such as subtitle streams.</doc>
+        <source-position filename="gst/gstevent.h" line="608"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the new GAP event.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstevent.c"
+               line="782">the new GAP event.</doc>
           <type name="Event" c:type="GstEvent*"/>
         </return-value>
         <parameters>
           <parameter name="timestamp" transfer-ownership="none">
-            <doc xml:space="preserve">the start time (pts) of the gap</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="773">the start time (pts) of the gap</doc>
             <type name="ClockTime" c:type="GstClockTime"/>
           </parameter>
           <parameter name="duration" transfer-ownership="none">
-            <doc xml:space="preserve">the duration of the gap</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="774">the duration of the gap</doc>
+            <type name="ClockTime" c:type="GstClockTime"/>
+          </parameter>
+        </parameters>
+      </constructor>
+      <constructor name="new_instant_rate_change"
+                   c:identifier="gst_event_new_instant_rate_change"
+                   version="1.18">
+        <doc xml:space="preserve"
+             filename="gst/gstevent.c"
+             line="2203">Create a new instant-rate-change event. This event is sent by seek
+handlers (e.g. demuxers) when receiving a seek with the
+%GST_SEEK_FLAG_INSTANT_RATE_CHANGE and signals to downstream elements that
+the playback rate in the existing segment should be immediately multiplied
+by the @rate_multiplier factor.
+
+The flags provided replace any flags in the existing segment, for the
+flags within the %GST_SEGMENT_INSTANT_FLAGS set. Other GstSegmentFlags
+are ignored and not transferred in the event.</doc>
+        <source-position filename="gst/gstevent.h" line="749"/>
+        <return-value transfer-ownership="full">
+          <doc xml:space="preserve"
+               filename="gst/gstevent.c"
+               line="2218">the new instant-rate-change event.</doc>
+          <type name="Event" c:type="GstEvent*"/>
+        </return-value>
+        <parameters>
+          <parameter name="rate_multiplier" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="2205">the multiplier to be applied to the playback rate</doc>
+            <type name="gdouble" c:type="gdouble"/>
+          </parameter>
+          <parameter name="new_flags" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="2206">A new subset of segment flags to replace in segments</doc>
+            <type name="SegmentFlags" c:type="GstSegmentFlags"/>
+          </parameter>
+        </parameters>
+      </constructor>
+      <constructor name="new_instant_rate_sync_time"
+                   c:identifier="gst_event_new_instant_rate_sync_time"
+                   version="1.18">
+        <doc xml:space="preserve"
+             filename="gst/gstevent.c"
+             line="2270">Create a new instant-rate-sync-time event. This event is sent by the
+pipeline to notify elements handling the instant-rate-change event about
+the running-time when the new rate should be applied. The running time
+may be in the past when elements handle this event, which can lead to
+switching artifacts. The magnitude of those depends on the exact timing
+of event delivery to each element and the magnitude of the change in
+playback rate being applied.
+
+The @running_time and @upstream_running_time are the same if this
+is the first instant-rate adjustment, but will differ for later ones
+to compensate for the accumulated offset due to playing at a rate
+different to the one indicated in the playback segments.</doc>
+        <source-position filename="gst/gstevent.h" line="758"/>
+        <return-value transfer-ownership="full">
+          <doc xml:space="preserve"
+               filename="gst/gstevent.c"
+               line="2290">the new instant-rate-sync-time event.</doc>
+          <type name="Event" c:type="GstEvent*"/>
+        </return-value>
+        <parameters>
+          <parameter name="rate_multiplier" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="2272">the new playback rate multiplier to be applied</doc>
+            <type name="gdouble" c:type="gdouble"/>
+          </parameter>
+          <parameter name="running_time" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="2273">Running time when the rate change should be applied</doc>
+            <type name="ClockTime" c:type="GstClockTime"/>
+          </parameter>
+          <parameter name="upstream_running_time" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="2274">The upstream-centric running-time when the
+   rate change should be applied.</doc>
             <type name="ClockTime" c:type="GstClockTime"/>
           </parameter>
         </parameters>
       </constructor>
       <constructor name="new_latency" c:identifier="gst_event_new_latency">
-        <doc xml:space="preserve">Create a new latency event. The event is sent upstream from the sinks and
+        <doc xml:space="preserve"
+             filename="gst/gstevent.c"
+             line="1461">Create a new latency event. The event is sent upstream from the sinks and
 notifies elements that they should add an additional @latency to the
 running time before synchronising against the clock.
 
 The latency is mostly used in live sinks and is always expressed in
 the time format.</doc>
+        <source-position filename="gst/gstevent.h" line="711"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new #GstEvent</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstevent.c"
+               line="1472">a new #GstEvent</doc>
           <type name="Event" c:type="GstEvent*"/>
         </return-value>
         <parameters>
           <parameter name="latency" transfer-ownership="none">
-            <doc xml:space="preserve">the new latency value</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="1463">the new latency value</doc>
             <type name="ClockTime" c:type="GstClockTime"/>
           </parameter>
         </parameters>
       </constructor>
       <constructor name="new_navigation"
                    c:identifier="gst_event_new_navigation">
-        <doc xml:space="preserve">Create a new navigation event from the given description.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstevent.c"
+             line="1444">Create a new navigation event from the given description.</doc>
+        <source-position filename="gst/gstevent.h" line="706"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new #GstEvent</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstevent.c"
+               line="1451">a new #GstEvent</doc>
           <type name="Event" c:type="GstEvent*"/>
         </return-value>
         <parameters>
           <parameter name="structure" transfer-ownership="full">
-            <doc xml:space="preserve">description of the event. The event will take
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="1446">description of the event. The event will take
     ownership of the structure.</doc>
             <type name="Structure" c:type="GstStructure*"/>
           </parameter>
@@ -16387,7 +24578,9 @@ the time format.</doc>
       <constructor name="new_protection"
                    c:identifier="gst_event_new_protection"
                    version="1.6">
-        <doc xml:space="preserve">Creates a new event containing information specific to a particular
+        <doc xml:space="preserve"
+             filename="gst/gstevent.c"
+             line="2033">Creates a new event containing information specific to a particular
 protection system (uniquely identified by @system_id), by which that
 protection system can acquire key(s) to decrypt a protected stream.
 
@@ -16416,24 +24609,33 @@ The events returned by gst_event_new_protection() are implemented
 in such a way as to ensure that the most recently-pushed protection info
 event of a particular @origin and @system_id will
 be stuck to the output pad of the sending element.</doc>
+        <source-position filename="gst/gstevent.h" line="653"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a #GST_EVENT_PROTECTION event, if successful; %NULL
+          <doc xml:space="preserve"
+               filename="gst/gstevent.c"
+               line="2073">a #GST_EVENT_PROTECTION event, if successful; %NULL
 if unsuccessful.</doc>
           <type name="Event" c:type="GstEvent*"/>
         </return-value>
         <parameters>
           <parameter name="system_id" transfer-ownership="none">
-            <doc xml:space="preserve">a string holding a UUID that uniquely
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="2035">a string holding a UUID that uniquely
 identifies a protection system.</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="data" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBuffer holding protection system specific
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="2037">a #GstBuffer holding protection system specific
 information. The reference count of the buffer will be incremented by one.</doc>
             <type name="Buffer" c:type="GstBuffer*"/>
           </parameter>
           <parameter name="origin" transfer-ownership="none">
-            <doc xml:space="preserve">a string indicating where the protection
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="2039">a string indicating where the protection
 information carried in the event was extracted from. The allowed values
 of this string will depend upon the protection scheme.</doc>
             <type name="utf8" c:type="const gchar*"/>
@@ -16441,7 +24643,9 @@ of this string will depend upon the protection scheme.</doc>
         </parameters>
       </constructor>
       <constructor name="new_qos" c:identifier="gst_event_new_qos">
-        <doc xml:space="preserve">Allocate a new qos event with the given values.
+        <doc xml:space="preserve"
+             filename="gst/gstevent.c"
+             line="1114">Allocate a new qos event with the given values.
 The QOS event is generated in an element that wants an upstream
 element to either reduce or increase its rate because of
 high/low CPU load or other resource usage such as network performance or
@@ -16483,42 +24687,60 @@ result smaller than 0 is not allowed.
 
 The application can use general event probes to intercept the QoS
 event and implement custom application specific QoS handling.</doc>
+        <source-position filename="gst/gstevent.h" line="679"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">a new QOS event.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstevent.c"
+               line="1164">a new QOS event.</doc>
           <type name="Event" c:type="GstEvent*"/>
         </return-value>
         <parameters>
           <parameter name="type" transfer-ownership="none">
-            <doc xml:space="preserve">the QoS type</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="1116">the QoS type</doc>
             <type name="QOSType" c:type="GstQOSType"/>
           </parameter>
           <parameter name="proportion" transfer-ownership="none">
-            <doc xml:space="preserve">the proportion of the qos message</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="1117">the proportion of the qos message</doc>
             <type name="gdouble" c:type="gdouble"/>
           </parameter>
           <parameter name="diff" transfer-ownership="none">
-            <doc xml:space="preserve">The time difference of the last Clock sync</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="1118">The time difference of the last Clock sync</doc>
             <type name="ClockTimeDiff" c:type="GstClockTimeDiff"/>
           </parameter>
           <parameter name="timestamp" transfer-ownership="none">
-            <doc xml:space="preserve">The timestamp of the buffer</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="1119">The timestamp of the buffer</doc>
             <type name="ClockTime" c:type="GstClockTime"/>
           </parameter>
         </parameters>
       </constructor>
       <constructor name="new_reconfigure"
                    c:identifier="gst_event_new_reconfigure">
-        <doc xml:space="preserve">Create a new reconfigure event. The purpose of the reconfigure event is
+        <doc xml:space="preserve"
+             filename="gst/gstevent.c"
+             line="1595">Create a new reconfigure event. The purpose of the reconfigure event is
 to travel upstream and make elements renegotiate their caps or reconfigure
 their buffer pools. This is useful when changing properties on elements
 or changing the topology of the pipeline.</doc>
+        <source-position filename="gst/gstevent.h" line="728"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new #GstEvent</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstevent.c"
+               line="1603">a new #GstEvent</doc>
           <type name="Event" c:type="GstEvent*"/>
         </return-value>
       </constructor>
       <constructor name="new_seek" c:identifier="gst_event_new_seek">
-        <doc xml:space="preserve">Allocate a new seek event with the given parameters.
+        <doc xml:space="preserve"
+             filename="gst/gstevent.c"
+             line="1248">Allocate a new seek event with the given parameters.
 
 The seek event configures playback of the pipeline between @start to @stop
 at the speed given in @rate, also called a playback segment.
@@ -16549,43 +24771,62 @@ It is not possible to seek relative to the current playback position, to do
 this, PAUSE the pipeline, query the current playback position with
 #GST_QUERY_POSITION and update the playback segment current position with a
 #GST_SEEK_TYPE_SET to the desired position.</doc>
+        <source-position filename="gst/gstevent.h" line="688"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">a new seek event.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstevent.c"
+               line="1290">a new seek event.</doc>
           <type name="Event" c:type="GstEvent*"/>
         </return-value>
         <parameters>
           <parameter name="rate" transfer-ownership="none">
-            <doc xml:space="preserve">The new playback rate</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="1250">The new playback rate</doc>
             <type name="gdouble" c:type="gdouble"/>
           </parameter>
           <parameter name="format" transfer-ownership="none">
-            <doc xml:space="preserve">The format of the seek values</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="1251">The format of the seek values</doc>
             <type name="Format" c:type="GstFormat"/>
           </parameter>
           <parameter name="flags" transfer-ownership="none">
-            <doc xml:space="preserve">The optional seek flags</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="1252">The optional seek flags</doc>
             <type name="SeekFlags" c:type="GstSeekFlags"/>
           </parameter>
           <parameter name="start_type" transfer-ownership="none">
-            <doc xml:space="preserve">The type and flags for the new start position</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="1253">The type and flags for the new start position</doc>
             <type name="SeekType" c:type="GstSeekType"/>
           </parameter>
           <parameter name="start" transfer-ownership="none">
-            <doc xml:space="preserve">The value of the new start position</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="1254">The value of the new start position</doc>
             <type name="gint64" c:type="gint64"/>
           </parameter>
           <parameter name="stop_type" transfer-ownership="none">
-            <doc xml:space="preserve">The type and flags for the new stop position</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="1255">The type and flags for the new stop position</doc>
             <type name="SeekType" c:type="GstSeekType"/>
           </parameter>
           <parameter name="stop" transfer-ownership="none">
-            <doc xml:space="preserve">The value of the new stop position</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="1256">The value of the new stop position</doc>
             <type name="gint64" c:type="gint64"/>
           </parameter>
         </parameters>
       </constructor>
       <constructor name="new_segment" c:identifier="gst_event_new_segment">
-        <doc xml:space="preserve">Create a new SEGMENT event for @segment. The segment event can only travel
+        <doc xml:space="preserve"
+             filename="gst/gstevent.c"
+             line="879">Create a new SEGMENT event for @segment. The segment event can only travel
 downstream synchronized with the buffer flow and contains timing information
 and playback properties for the buffers that will follow.
 
@@ -16616,32 +24857,46 @@ with @rate of 1.0 and @applied_rate of 2.0
 After a segment event, the buffer stream time is calculated with:
 
   time + (TIMESTAMP(buf) - start) * ABS (rate * applied_rate)</doc>
+        <source-position filename="gst/gstevent.h" line="626"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">the new SEGMENT event.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstevent.c"
+               line="915">the new SEGMENT event.</doc>
           <type name="Event" c:type="GstEvent*"/>
         </return-value>
         <parameters>
           <parameter name="segment" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSegment</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="881">a #GstSegment</doc>
             <type name="Segment" c:type="const GstSegment*"/>
           </parameter>
         </parameters>
       </constructor>
       <constructor name="new_segment_done"
                    c:identifier="gst_event_new_segment_done">
-        <doc xml:space="preserve">Create a new segment-done event. This event is sent by elements that
+        <doc xml:space="preserve"
+             filename="gst/gstevent.c"
+             line="2146">Create a new segment-done event. This event is sent by elements that
 finish playback of a segment as a result of a segment seek.</doc>
+        <source-position filename="gst/gstevent.h" line="741"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new #GstEvent</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstevent.c"
+               line="2154">a new #GstEvent</doc>
           <type name="Event" c:type="GstEvent*"/>
         </return-value>
         <parameters>
           <parameter name="format" transfer-ownership="none">
-            <doc xml:space="preserve">The format of the position being done</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="2148">The format of the position being done</doc>
             <type name="Format" c:type="GstFormat"/>
           </parameter>
           <parameter name="position" transfer-ownership="none">
-            <doc xml:space="preserve">The position of the segment being done</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="2149">The position of the segment being done</doc>
             <type name="gint64" c:type="gint64"/>
           </parameter>
         </parameters>
@@ -16649,7 +24904,9 @@ finish playback of a segment as a result of a segment seek.</doc>
       <constructor name="new_select_streams"
                    c:identifier="gst_event_new_select_streams"
                    version="1.10">
-        <doc xml:space="preserve">Allocate a new select-streams event.
+        <doc xml:space="preserve"
+             filename="gst/gstevent.c"
+             line="613">Allocate a new select-streams event.
 
 The select-streams event requests the specified @streams to be activated.
 
@@ -16659,14 +24916,19 @@ in #GST_EVENT_STREAM_START, #GST_EVENT_STREAM_COLLECTION or
 #GST_MESSAGE_STREAM_COLLECTION.
 
 Note: The list of @streams can not be empty.</doc>
+        <source-position filename="gst/gstevent.h" line="587"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new select-streams event or %NULL in case of
+          <doc xml:space="preserve"
+               filename="gst/gstevent.c"
+               line="629">a new select-streams event or %NULL in case of
 an error (like an empty streams list).</doc>
           <type name="Event" c:type="GstEvent*"/>
         </return-value>
         <parameters>
           <parameter name="streams" transfer-ownership="none">
-            <doc xml:space="preserve">the list of streams to
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="615">the list of streams to
 activate</doc>
             <type name="GLib.List" c:type="GList*">
               <type name="utf8"/>
@@ -16676,28 +24938,39 @@ activate</doc>
       </constructor>
       <constructor name="new_sink_message"
                    c:identifier="gst_event_new_sink_message">
-        <doc xml:space="preserve">Create a new sink-message event. The purpose of the sink-message event is
+        <doc xml:space="preserve"
+             filename="gst/gstevent.c"
+             line="1617">Create a new sink-message event. The purpose of the sink-message event is
 to instruct a sink to post the message contained in the event synchronized
 with the stream.
 
 @name is used to store multiple sticky events on one pad.</doc>
+        <source-position filename="gst/gstevent.h" line="671"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new #GstEvent</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstevent.c"
+               line="1628">a new #GstEvent</doc>
           <type name="Event" c:type="GstEvent*"/>
         </return-value>
         <parameters>
           <parameter name="name" transfer-ownership="none">
-            <doc xml:space="preserve">a name for the event</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="1619">a name for the event</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstMessage to be posted</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="1620">the #GstMessage to be posted</doc>
             <type name="Message" c:type="GstMessage*"/>
           </parameter>
         </parameters>
       </constructor>
       <constructor name="new_step" c:identifier="gst_event_new_step">
-        <doc xml:space="preserve">Create a new step event. The purpose of the step event is to instruct a sink
+        <doc xml:space="preserve"
+             filename="gst/gstevent.c"
+             line="1509">Create a new step event. The purpose of the step event is to instruct a sink
 to skip @amount (expressed in @format) of media. It can be used to implement
 stepping through the video frame by frame or for doing fast trick modes.
 
@@ -16710,29 +24983,42 @@ the step operation.
 
 The @intermediate flag instructs the pipeline that this step operation is
 part of a larger step operation.</doc>
+        <source-position filename="gst/gstevent.h" line="719"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">a new #GstEvent</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstevent.c"
+               line="1531">a new #GstEvent</doc>
           <type name="Event" c:type="GstEvent*"/>
         </return-value>
         <parameters>
           <parameter name="format" transfer-ownership="none">
-            <doc xml:space="preserve">the format of @amount</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="1511">the format of @amount</doc>
             <type name="Format" c:type="GstFormat"/>
           </parameter>
           <parameter name="amount" transfer-ownership="none">
-            <doc xml:space="preserve">the amount of data to step</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="1512">the amount of data to step</doc>
             <type name="guint64" c:type="guint64"/>
           </parameter>
           <parameter name="rate" transfer-ownership="none">
-            <doc xml:space="preserve">the step rate</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="1513">the step rate</doc>
             <type name="gdouble" c:type="gdouble"/>
           </parameter>
           <parameter name="flush" transfer-ownership="none">
-            <doc xml:space="preserve">flushing steps</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="1514">flushing steps</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
           <parameter name="intermediate" transfer-ownership="none">
-            <doc xml:space="preserve">intermediate steps</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="1515">intermediate steps</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
@@ -16740,7 +25026,9 @@ part of a larger step operation.</doc>
       <constructor name="new_stream_collection"
                    c:identifier="gst_event_new_stream_collection"
                    version="1.10">
-        <doc xml:space="preserve">Create a new STREAM_COLLECTION event. The stream collection event can only
+        <doc xml:space="preserve"
+             filename="gst/gstevent.c"
+             line="1869">Create a new STREAM_COLLECTION event. The stream collection event can only
 travel downstream synchronized with the buffer flow.
 
 Source elements, demuxers and other elements that manage collections
@@ -16748,13 +25036,18 @@ of streams and post #GstStreamCollection messages on the bus also send
 this event downstream on each pad involved in the collection, so that
 activation of a new collection can be tracked through the downstream
 data flow.</doc>
+        <source-position filename="gst/gstevent.h" line="579"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the new STREAM_COLLECTION event.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstevent.c"
+               line="1882">the new STREAM_COLLECTION event.</doc>
           <type name="Event" c:type="GstEvent*"/>
         </return-value>
         <parameters>
           <parameter name="collection" transfer-ownership="none">
-            <doc xml:space="preserve">Active collection for this data flow</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="1871">Active collection for this data flow</doc>
             <type name="StreamCollection" c:type="GstStreamCollection*"/>
           </parameter>
         </parameters>
@@ -16762,7 +25055,9 @@ data flow.</doc>
       <constructor name="new_stream_group_done"
                    c:identifier="gst_event_new_stream_group_done"
                    version="1.10">
-        <doc xml:space="preserve">Create a new Stream Group Done event. The stream-group-done event can
+        <doc xml:space="preserve"
+             filename="gst/gstevent.c"
+             line="693">Create a new Stream Group Done event. The stream-group-done event can
 only travel downstream synchronized with the buffer flow. Elements
 that receive the event on a pad should handle it mostly like EOS,
 and emit any data or pending buffers that would depend on more data
@@ -16771,20 +25066,27 @@ arriving and unblock, since there won't be any more data.
 This event is followed by EOS at some point in the future, and is
 generally used when switching pads - to unblock downstream so that
 new pads can be exposed before sending EOS on the existing pads.</doc>
+        <source-position filename="gst/gstevent.h" line="595"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the new stream-group-done event.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstevent.c"
+               line="707">the new stream-group-done event.</doc>
           <type name="Event" c:type="GstEvent*"/>
         </return-value>
         <parameters>
           <parameter name="group_id" transfer-ownership="none">
-            <doc xml:space="preserve">the group id of the stream group which is ending</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="695">the group id of the stream group which is ending</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </constructor>
       <constructor name="new_stream_start"
                    c:identifier="gst_event_new_stream_start">
-        <doc xml:space="preserve">Create a new STREAM_START event. The stream start event can only
+        <doc xml:space="preserve"
+             filename="gst/gstevent.c"
+             line="1670">Create a new STREAM_START event. The stream start event can only
 travel downstream synchronized with the buffer flow. It is expected
 to be the first event that is sent for a new stream.
 
@@ -16805,84 +25107,139 @@ 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).</doc>
+        <source-position filename="gst/gstevent.h" line="542"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the new STREAM_START event.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstevent.c"
+               line="1696">the new STREAM_START event.</doc>
           <type name="Event" c:type="GstEvent*"/>
         </return-value>
         <parameters>
           <parameter name="stream_id" transfer-ownership="none">
-            <doc xml:space="preserve">Identifier for this stream</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="1672">Identifier for this stream</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </constructor>
       <constructor name="new_tag" c:identifier="gst_event_new_tag">
-        <doc xml:space="preserve">Generates a metadata tag event from the given @taglist.
+        <doc xml:space="preserve"
+             filename="gst/gstevent.c"
+             line="983">Generates a metadata tag event from the given @taglist.
 
 The scope of the taglist specifies if the taglist applies to the
 complete medium or only to this specific stream. As the tag event
 is a sticky event, elements should merge tags received from
 upstream with a given scope with their own tags with the same
 scope and create a new tag event from it.</doc>
+        <source-position filename="gst/gstevent.h" line="637"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new #GstEvent</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstevent.c"
+               line="996">a new #GstEvent</doc>
           <type name="Event" c:type="GstEvent*"/>
         </return-value>
         <parameters>
           <parameter name="taglist" transfer-ownership="full">
-            <doc xml:space="preserve">metadata list. The event will take ownership
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="985">metadata list. The event will take ownership
     of the taglist.</doc>
             <type name="TagList" c:type="GstTagList*"/>
           </parameter>
         </parameters>
       </constructor>
       <constructor name="new_toc" c:identifier="gst_event_new_toc">
-        <doc xml:space="preserve">Generate a TOC event from the given @toc. The purpose of the TOC event is to
+        <doc xml:space="preserve"
+             filename="gst/gstevent.c"
+             line="1926">Generate a TOC event from the given @toc. The purpose of the TOC event is to
 inform elements that some kind of the TOC was found.</doc>
+        <source-position filename="gst/gstevent.h" line="645"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new #GstEvent.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstevent.c"
+               line="1934">a new #GstEvent.</doc>
           <type name="Event" c:type="GstEvent*"/>
         </return-value>
         <parameters>
           <parameter name="toc" transfer-ownership="none">
-            <doc xml:space="preserve">#GstToc structure.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="1928">#GstToc structure.</doc>
             <type name="Toc" c:type="GstToc*"/>
           </parameter>
           <parameter name="updated" transfer-ownership="none">
-            <doc xml:space="preserve">whether @toc was updated or not.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="1929">whether @toc was updated or not.</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </constructor>
       <constructor name="new_toc_select"
                    c:identifier="gst_event_new_toc_select">
-        <doc xml:space="preserve">Generate a TOC select event with the given @uid. The purpose of the
+        <doc xml:space="preserve"
+             filename="gst/gstevent.c"
+             line="1984">Generate a TOC select event with the given @uid. The purpose of the
 TOC select event is to start playback based on the TOC's entry with the
 given @uid.</doc>
+        <source-position filename="gst/gstevent.h" line="733"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new #GstEvent.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstevent.c"
+               line="1992">a new #GstEvent.</doc>
           <type name="Event" c:type="GstEvent*"/>
         </return-value>
         <parameters>
           <parameter name="uid" transfer-ownership="none">
-            <doc xml:space="preserve">UID in the TOC to start playback from.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="1986">UID in the TOC to start playback from.</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </constructor>
+      <method name="copy" c:identifier="gst_event_copy" introspectable="0">
+        <doc xml:space="preserve"
+             filename="gst/gstevent.h"
+             line="487">Copy the event using the event specific copy function.</doc>
+        <source-position filename="gst/gstevent.h" line="495"/>
+        <return-value transfer-ownership="full">
+          <doc xml:space="preserve"
+               filename="gst/gstevent.h"
+               line="493">the new event</doc>
+          <type name="Event" c:type="GstEvent*"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="event" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.h"
+                 line="489">The event to copy</doc>
+            <type name="Event" c:type="const GstEvent*"/>
+          </instance-parameter>
+        </parameters>
+      </method>
       <method name="copy_segment" c:identifier="gst_event_copy_segment">
-        <doc xml:space="preserve">Parses a segment @event and copies the #GstSegment into the location
+        <doc xml:space="preserve"
+             filename="gst/gstevent.c"
+             line="961">Parses a segment @event and copies the #GstSegment into the location
 given by @segment.</doc>
+        <source-position filename="gst/gstevent.h" line="632"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="event" transfer-ownership="none">
-            <doc xml:space="preserve">The event to parse</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="963">The event to parse</doc>
             <type name="Event" c:type="GstEvent*"/>
           </instance-parameter>
           <parameter name="segment" transfer-ownership="none">
-            <doc xml:space="preserve">a pointer to a #GstSegment</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="964">a pointer to a #GstSegment</doc>
             <type name="Segment" c:type="GstSegment*"/>
           </parameter>
         </parameters>
@@ -16890,7 +25247,9 @@ given by @segment.</doc>
       <method name="get_running_time_offset"
               c:identifier="gst_event_get_running_time_offset"
               version="1.4">
-        <doc xml:space="preserve">Retrieve the accumulated running time offset of the event.
+        <doc xml:space="preserve"
+             filename="gst/gstevent.c"
+             line="485">Retrieve the accumulated running time offset of the event.
 
 Events passing through #GstPads that have a running time
 offset set via gst_pad_set_offset() will get their offset
@@ -16899,21 +25258,28 @@ adjusted according to the pad's offset.
 If the event contains any information that related to the
 running time, this information will need to be updated
 before usage with this offset.</doc>
+        <source-position filename="gst/gstevent.h" line="534"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The event's running time offset
+          <doc xml:space="preserve"
+               filename="gst/gstevent.c"
+               line="499">The event's running time offset
 
 MT safe.</doc>
           <type name="gint64" c:type="gint64"/>
         </return-value>
         <parameters>
           <instance-parameter name="event" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstEvent.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="487">A #GstEvent.</doc>
             <type name="Event" c:type="GstEvent*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_seqnum" c:identifier="gst_event_get_seqnum">
-        <doc xml:space="preserve">Retrieve the sequence number of a event.
+        <doc xml:space="preserve"
+             filename="gst/gstevent.c"
+             line="433">Retrieve the sequence number of a event.
 
 Events have ever-incrementing sequence numbers, which may also be set
 explicitly via gst_event_set_seqnum(). Sequence numbers are typically used to
@@ -16925,23 +25291,33 @@ required.
 Note that events and messages share the same sequence number incrementor;
 two events or messages will never have the same sequence number unless
 that correspondence was made explicitly.</doc>
+        <source-position filename="gst/gstevent.h" line="526"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The event's sequence number.
+          <doc xml:space="preserve"
+               filename="gst/gstevent.c"
+               line="450">The event's sequence number.
 
 MT safe.</doc>
           <type name="guint32" c:type="guint32"/>
         </return-value>
         <parameters>
           <instance-parameter name="event" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstEvent.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="435">A #GstEvent.</doc>
             <type name="Event" c:type="GstEvent*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_structure" c:identifier="gst_event_get_structure">
-        <doc xml:space="preserve">Access the structure of the event.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstevent.c"
+             line="335">Access the structure of the event.</doc>
+        <source-position filename="gst/gstevent.h" line="512"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">The structure of the event. The
+          <doc xml:space="preserve"
+               filename="gst/gstevent.c"
+               line="341">The structure of the event. 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.
 
@@ -16950,118 +25326,190 @@ MT safe.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="event" transfer-ownership="none">
-            <doc xml:space="preserve">The #GstEvent.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="337">The #GstEvent.</doc>
             <type name="Event" c:type="GstEvent*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="has_name" c:identifier="gst_event_has_name">
-        <doc xml:space="preserve">Checks if @event has the given @name. This function is usually used to
+        <doc xml:space="preserve"
+             filename="gst/gstevent.c"
+             line="389">Checks if @event has the given @name. This function is usually used to
 check the name of a custom event.</doc>
+        <source-position filename="gst/gstevent.h" line="518"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if @name matches the name of the event structure.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstevent.c"
+               line="397">%TRUE if @name matches the name of the event structure.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="event" transfer-ownership="none">
-            <doc xml:space="preserve">The #GstEvent.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="391">The #GstEvent.</doc>
             <type name="Event" c:type="GstEvent*"/>
           </instance-parameter>
           <parameter name="name" transfer-ownership="none">
-            <doc xml:space="preserve">name to check</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="392">name to check</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </method>
+      <method name="has_name_id"
+              c:identifier="gst_event_has_name_id"
+              version="1.18">
+        <doc xml:space="preserve"
+             filename="gst/gstevent.c"
+             line="410">Checks if @event has the given @name. This function is usually used to
+check the name of a custom event.</doc>
+        <source-position filename="gst/gstevent.h" line="521"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstevent.c"
+               line="418">%TRUE if @name matches the name of the event structure.</doc>
+          <type name="gboolean" c:type="gboolean"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="event" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="412">The #GstEvent.</doc>
+            <type name="Event" c:type="GstEvent*"/>
+          </instance-parameter>
+          <parameter name="name" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="413">name to check as a GQuark</doc>
+            <type name="GLib.Quark" c:type="GQuark"/>
+          </parameter>
+        </parameters>
+      </method>
       <method name="parse_buffer_size"
               c:identifier="gst_event_parse_buffer_size">
-        <doc xml:space="preserve">Get the format, minsize, maxsize and async-flag in the buffersize event.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstevent.c"
+             line="1076">Get the format, minsize, maxsize and async-flag in the buffersize event.</doc>
+        <source-position filename="gst/gstevent.h" line="665"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="event" transfer-ownership="none">
-            <doc xml:space="preserve">The event to query</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="1078">The event to query</doc>
             <type name="Event" c:type="GstEvent*"/>
           </instance-parameter>
           <parameter name="format"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">A pointer to store the format in</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="1079">A pointer to store the format in</doc>
             <type name="Format" c:type="GstFormat*"/>
           </parameter>
           <parameter name="minsize"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">A pointer to store the minsize in</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="1080">A pointer to store the minsize in</doc>
             <type name="gint64" c:type="gint64*"/>
           </parameter>
           <parameter name="maxsize"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">A pointer to store the maxsize in</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="1081">A pointer to store the maxsize in</doc>
             <type name="gint64" c:type="gint64*"/>
           </parameter>
           <parameter name="async"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">A pointer to store the async-flag in</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="1082">A pointer to store the async-flag in</doc>
             <type name="gboolean" c:type="gboolean*"/>
           </parameter>
         </parameters>
       </method>
       <method name="parse_caps" c:identifier="gst_event_parse_caps">
-        <doc xml:space="preserve">Get the caps from @event. The caps remains valid as long as @event remains
+        <doc xml:space="preserve"
+             filename="gst/gstevent.c"
+             line="856">Get the caps from @event. The caps remains valid as long as @event remains
 valid.</doc>
+        <source-position filename="gst/gstevent.h" line="621"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="event" transfer-ownership="none">
-            <doc xml:space="preserve">The event to parse</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="858">The event to parse</doc>
             <type name="Event" c:type="GstEvent*"/>
           </instance-parameter>
           <parameter name="caps"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="none">
-            <doc xml:space="preserve">A pointer to the caps</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="859">A pointer to the caps</doc>
             <type name="Caps" c:type="GstCaps**"/>
           </parameter>
         </parameters>
       </method>
       <method name="parse_flush_stop"
               c:identifier="gst_event_parse_flush_stop">
-        <doc xml:space="preserve">Parse the FLUSH_STOP event and retrieve the @reset_time member.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstevent.c"
+             line="591">Parse the FLUSH_STOP event and retrieve the @reset_time member.</doc>
+        <source-position filename="gst/gstevent.h" line="574"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="event" transfer-ownership="none">
-            <doc xml:space="preserve">The event to parse</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="593">The event to parse</doc>
             <type name="Event" c:type="GstEvent*"/>
           </instance-parameter>
           <parameter name="reset_time"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">if time should be reset</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="594">if time should be reset</doc>
             <type name="gboolean" c:type="gboolean*"/>
           </parameter>
         </parameters>
       </method>
       <method name="parse_gap" c:identifier="gst_event_parse_gap">
-        <doc xml:space="preserve">Extract timestamp and duration from a new GAP event.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstevent.c"
+             line="804">Extract timestamp and duration from a new GAP event.</doc>
+        <source-position filename="gst/gstevent.h" line="611"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="event" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstEvent of type #GST_EVENT_GAP</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="806">a #GstEvent of type #GST_EVENT_GAP</doc>
             <type name="Event" c:type="GstEvent*"/>
           </instance-parameter>
           <parameter name="timestamp"
@@ -17070,7 +25518,9 @@ valid.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">location where to store the
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="807">location where to store the
     start time (pts) of the gap, or %NULL</doc>
             <type name="ClockTime" c:type="GstClockTime*"/>
           </parameter>
@@ -17080,7 +25530,9 @@ valid.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">location where to store the duration of
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="809">location where to store the duration of
     the gap, or %NULL</doc>
             <type name="ClockTime" c:type="GstClockTime*"/>
           </parameter>
@@ -17089,40 +25541,152 @@ valid.</doc>
       <method name="parse_group_id"
               c:identifier="gst_event_parse_group_id"
               version="1.2">
+        <source-position filename="gst/gstevent.h" line="563"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if a group id was set on the event and could be parsed,
+          <doc xml:space="preserve"
+               filename="gst/gstevent.c"
+               line="1849">%TRUE if a group id was set on the event and could be parsed,
   %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="event" transfer-ownership="none">
-            <doc xml:space="preserve">a stream-start event</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="1846">a stream-start event</doc>
             <type name="Event" c:type="GstEvent*"/>
           </instance-parameter>
           <parameter name="group_id"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">address of variable where to store the group id</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="1847">address of variable where to store the group id</doc>
             <type name="guint" c:type="guint*"/>
           </parameter>
         </parameters>
       </method>
+      <method name="parse_instant_rate_change"
+              c:identifier="gst_event_parse_instant_rate_change"
+              version="1.18">
+        <doc xml:space="preserve"
+             filename="gst/gstevent.c"
+             line="2243">Extract rate and flags from an instant-rate-change event.</doc>
+        <source-position filename="gst/gstevent.h" line="752"/>
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="event" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="2245">a #GstEvent of type #GST_EVENT_INSTANT_RATE_CHANGE</doc>
+            <type name="Event" c:type="GstEvent*"/>
+          </instance-parameter>
+          <parameter name="rate_multiplier"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     optional="1"
+                     allow-none="1">
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="2246">location in which to store the rate
+    multiplier of the instant-rate-change event, or %NULL</doc>
+            <type name="gdouble" c:type="gdouble*"/>
+          </parameter>
+          <parameter name="new_flags"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     optional="1"
+                     allow-none="1">
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="2248">location in which to store the new
+    segment flags of the instant-rate-change event, or %NULL</doc>
+            <type name="SegmentFlags" c:type="GstSegmentFlags*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="parse_instant_rate_sync_time"
+              c:identifier="gst_event_parse_instant_rate_sync_time"
+              version="1.18">
+        <doc xml:space="preserve"
+             filename="gst/gstevent.c"
+             line="2319">Extract the rate multiplier and running times from an instant-rate-sync-time event.</doc>
+        <source-position filename="gst/gstevent.h" line="763"/>
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="event" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="2321">a #GstEvent of type #GST_EVENT_INSTANT_RATE_CHANGE</doc>
+            <type name="Event" c:type="GstEvent*"/>
+          </instance-parameter>
+          <parameter name="rate_multiplier"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     optional="1"
+                     allow-none="1">
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="2322">location where to store the rate of
+    the instant-rate-sync-time event, or %NULL</doc>
+            <type name="gdouble" c:type="gdouble*"/>
+          </parameter>
+          <parameter name="running_time"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     optional="1"
+                     allow-none="1">
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="2324">location in which to store the running time
+    of the instant-rate-sync-time event, or %NULL</doc>
+            <type name="ClockTime" c:type="GstClockTime*"/>
+          </parameter>
+          <parameter name="upstream_running_time"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     optional="1"
+                     allow-none="1">
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="2326">location in which to store the
+    upstream running time of the instant-rate-sync-time event, or %NULL</doc>
+            <type name="ClockTime" c:type="GstClockTime*"/>
+          </parameter>
+        </parameters>
+      </method>
       <method name="parse_latency" c:identifier="gst_event_parse_latency">
-        <doc xml:space="preserve">Get the latency in the latency event.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstevent.c"
+             line="1490">Get the latency in the latency event.</doc>
+        <source-position filename="gst/gstevent.h" line="714"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="event" transfer-ownership="none">
-            <doc xml:space="preserve">The event to query</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="1492">The event to query</doc>
             <type name="Event" c:type="GstEvent*"/>
           </instance-parameter>
           <parameter name="latency"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">A pointer to store the latency in.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="1493">A pointer to store the latency in.</doc>
             <type name="ClockTime" c:type="GstClockTime*"/>
           </parameter>
         </parameters>
@@ -17130,15 +25694,20 @@ valid.</doc>
       <method name="parse_protection"
               c:identifier="gst_event_parse_protection"
               version="1.6">
-        <doc xml:space="preserve">Parses an event containing protection system specific information and stores
+        <doc xml:space="preserve"
+             filename="gst/gstevent.c"
+             line="2105">Parses an event containing protection system specific information and stores
 the results in @system_id, @data and @origin. The data stored in @system_id,
 @origin and @data are valid until @event is released.</doc>
+        <source-position filename="gst/gstevent.h" line="656"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="event" transfer-ownership="none">
-            <doc xml:space="preserve">a #GST_EVENT_PROTECTION event.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="2107">a #GST_EVENT_PROTECTION event.</doc>
             <type name="Event" c:type="GstEvent*"/>
           </instance-parameter>
           <parameter name="system_id"
@@ -17147,7 +25716,9 @@ the results in @system_id, @data and @origin. The data stored in @system_id,
                      transfer-ownership="none"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">pointer to store the UUID
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="2108">pointer to store the UUID
 string uniquely identifying a content protection system.</doc>
             <type name="utf8" c:type="const gchar**"/>
           </parameter>
@@ -17157,7 +25728,9 @@ string uniquely identifying a content protection system.</doc>
                      transfer-ownership="none"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">pointer to store a #GstBuffer
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="2110">pointer to store a #GstBuffer
 holding protection system specific information.</doc>
             <type name="Buffer" c:type="GstBuffer**"/>
           </parameter>
@@ -17167,7 +25740,9 @@ holding protection system specific information.</doc>
                      transfer-ownership="none"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">pointer to store a value that
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="2112">pointer to store a value that
 indicates where the protection information carried by @event was extracted
 from.</doc>
             <type name="utf8" c:type="const gchar**"/>
@@ -17175,105 +25750,137 @@ from.</doc>
         </parameters>
       </method>
       <method name="parse_qos" c:identifier="gst_event_parse_qos">
-        <doc xml:space="preserve">Get the type, proportion, diff and timestamp in the qos event. See
+        <doc xml:space="preserve"
+             filename="gst/gstevent.c"
+             line="1191">Get the type, proportion, diff and timestamp in the qos event. See
 gst_event_new_qos() for more information about the different QoS values.
 
 @timestamp will be adjusted for any pad offsets of pads it was passing through.</doc>
+        <source-position filename="gst/gstevent.h" line="682"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="event" transfer-ownership="none">
-            <doc xml:space="preserve">The event to query</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="1193">The event to query</doc>
             <type name="Event" c:type="GstEvent*"/>
           </instance-parameter>
           <parameter name="type"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">A pointer to store the QoS type in</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="1194">A pointer to store the QoS type in</doc>
             <type name="QOSType" c:type="GstQOSType*"/>
           </parameter>
           <parameter name="proportion"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">A pointer to store the proportion in</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="1195">A pointer to store the proportion in</doc>
             <type name="gdouble" c:type="gdouble*"/>
           </parameter>
           <parameter name="diff"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">A pointer to store the diff in</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="1196">A pointer to store the diff in</doc>
             <type name="ClockTimeDiff" c:type="GstClockTimeDiff*"/>
           </parameter>
           <parameter name="timestamp"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">A pointer to store the timestamp in</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="1197">A pointer to store the timestamp in</doc>
             <type name="ClockTime" c:type="GstClockTime*"/>
           </parameter>
         </parameters>
       </method>
       <method name="parse_seek" c:identifier="gst_event_parse_seek">
-        <doc xml:space="preserve">Parses a seek @event and stores the results in the given result locations.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstevent.c"
+             line="1348">Parses a seek @event and stores the results in the given result locations.</doc>
+        <source-position filename="gst/gstevent.h" line="692"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="event" transfer-ownership="none">
-            <doc xml:space="preserve">a seek event</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="1350">a seek event</doc>
             <type name="Event" c:type="GstEvent*"/>
           </instance-parameter>
           <parameter name="rate"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">result location for the rate</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="1351">result location for the rate</doc>
             <type name="gdouble" c:type="gdouble*"/>
           </parameter>
           <parameter name="format"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">result location for the stream format</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="1352">result location for the stream format</doc>
             <type name="Format" c:type="GstFormat*"/>
           </parameter>
           <parameter name="flags"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">result location for the #GstSeekFlags</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="1353">result location for the #GstSeekFlags</doc>
             <type name="SeekFlags" c:type="GstSeekFlags*"/>
           </parameter>
           <parameter name="start_type"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">result location for the #GstSeekType of the start position</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="1354">result location for the #GstSeekType of the start position</doc>
             <type name="SeekType" c:type="GstSeekType*"/>
           </parameter>
           <parameter name="start"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">result location for the start position expressed in @format</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="1355">result location for the start position expressed in @format</doc>
             <type name="gint64" c:type="gint64*"/>
           </parameter>
           <parameter name="stop_type"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">result location for the #GstSeekType of the stop position</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="1356">result location for the #GstSeekType of the stop position</doc>
             <type name="SeekType" c:type="GstSeekType*"/>
           </parameter>
           <parameter name="stop"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">result location for the stop position expressed in @format</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="1357">result location for the stop position expressed in @format</doc>
             <type name="gint64" c:type="gint64*"/>
           </parameter>
         </parameters>
@@ -17281,8 +25888,11 @@ gst_event_new_qos() for more information about the different QoS values.
       <method name="parse_seek_trickmode_interval"
               c:identifier="gst_event_parse_seek_trickmode_interval"
               version="1.16">
-        <doc xml:space="preserve">Retrieve the trickmode interval that may have been set on a
+        <doc xml:space="preserve"
+             filename="gst/gstevent.c"
+             line="1423">Retrieve the trickmode interval that may have been set on a
 seek event with gst_event_set_seek_trickmode_interval().</doc>
+        <source-position filename="gst/gstevent.h" line="701"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
@@ -17299,35 +25909,47 @@ seek event with gst_event_set_seek_trickmode_interval().</doc>
         </parameters>
       </method>
       <method name="parse_segment" c:identifier="gst_event_parse_segment">
-        <doc xml:space="preserve">Parses a segment @event and stores the result in the given @segment location.
+        <doc xml:space="preserve"
+             filename="gst/gstevent.c"
+             line="937">Parses a segment @event and stores the result in the given @segment location.
 @segment remains valid only until the @event is freed. Don't modify the segment
 and make a copy if you want to modify it or store it for later use.</doc>
+        <source-position filename="gst/gstevent.h" line="629"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="event" transfer-ownership="none">
-            <doc xml:space="preserve">The event to parse</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="939">The event to parse</doc>
             <type name="Event" c:type="GstEvent*"/>
           </instance-parameter>
           <parameter name="segment"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="none">
-            <doc xml:space="preserve">a pointer to a #GstSegment</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="940">a pointer to a #GstSegment</doc>
             <type name="Segment" c:type="const GstSegment**"/>
           </parameter>
         </parameters>
       </method>
       <method name="parse_segment_done"
               c:identifier="gst_event_parse_segment_done">
-        <doc xml:space="preserve">Extracts the position and format from the segment done message.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstevent.c"
+             line="2173">Extracts the position and format from the segment done message.</doc>
+        <source-position filename="gst/gstevent.h" line="744"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="event" transfer-ownership="none">
-            <doc xml:space="preserve">A valid #GstEvent of type GST_EVENT_SEGMENT_DONE.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="2175">A valid #GstEvent of type GST_EVENT_SEGMENT_DONE.</doc>
             <type name="Event" c:type="GstEvent*"/>
           </instance-parameter>
           <parameter name="format"
@@ -17336,7 +25958,9 @@ and make a copy if you want to modify it or store it for later use.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">Result location for the format, or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="2176">Result location for the format, or %NULL</doc>
             <type name="Format" c:type="GstFormat*"/>
           </parameter>
           <parameter name="position"
@@ -17345,7 +25969,9 @@ and make a copy if you want to modify it or store it for later use.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">Result location for the position, or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="2177">Result location for the position, or %NULL</doc>
             <type name="gint64" c:type="gint64*"/>
           </parameter>
         </parameters>
@@ -17353,20 +25979,27 @@ and make a copy if you want to modify it or store it for later use.</doc>
       <method name="parse_select_streams"
               c:identifier="gst_event_parse_select_streams"
               version="1.10">
-        <doc xml:space="preserve">Parse the SELECT_STREAMS event and retrieve the contained streams.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstevent.c"
+             line="661">Parse the SELECT_STREAMS event and retrieve the contained streams.</doc>
+        <source-position filename="gst/gstevent.h" line="590"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="event" transfer-ownership="none">
-            <doc xml:space="preserve">The event to parse</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="663">The event to parse</doc>
             <type name="Event" c:type="GstEvent*"/>
           </instance-parameter>
           <parameter name="streams"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">the streams</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="664">the streams</doc>
             <type name="GLib.List" c:type="GList**">
               <type name="utf8"/>
             </type>
@@ -17375,32 +26008,44 @@ and make a copy if you want to modify it or store it for later use.</doc>
       </method>
       <method name="parse_sink_message"
               c:identifier="gst_event_parse_sink_message">
-        <doc xml:space="preserve">Parse the sink-message event. Unref @msg after usage.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstevent.c"
+             line="1648">Parse the sink-message event. Unref @msg after usage.</doc>
+        <source-position filename="gst/gstevent.h" line="674"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="event" transfer-ownership="none">
-            <doc xml:space="preserve">The event to query</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="1650">The event to query</doc>
             <type name="Event" c:type="GstEvent*"/>
           </instance-parameter>
           <parameter name="msg"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">a pointer to store the #GstMessage in.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="1651">a pointer to store the #GstMessage in.</doc>
             <type name="Message" c:type="GstMessage**"/>
           </parameter>
         </parameters>
       </method>
       <method name="parse_step" c:identifier="gst_event_parse_step">
-        <doc xml:space="preserve">Parse the step event.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstevent.c"
+             line="1555">Parse the step event.</doc>
+        <source-position filename="gst/gstevent.h" line="722"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="event" transfer-ownership="none">
-            <doc xml:space="preserve">The event to query</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="1557">The event to query</doc>
             <type name="Event" c:type="GstEvent*"/>
           </instance-parameter>
           <parameter name="format"
@@ -17409,7 +26054,9 @@ and make a copy if you want to modify it or store it for later use.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">a pointer to store the format in</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="1558">a pointer to store the format in</doc>
             <type name="Format" c:type="GstFormat*"/>
           </parameter>
           <parameter name="amount"
@@ -17418,7 +26065,9 @@ and make a copy if you want to modify it or store it for later use.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">a pointer to store the amount in</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="1559">a pointer to store the amount in</doc>
             <type name="guint64" c:type="guint64*"/>
           </parameter>
           <parameter name="rate"
@@ -17427,7 +26076,9 @@ and make a copy if you want to modify it or store it for later use.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">a pointer to store the rate in</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="1560">a pointer to store the rate in</doc>
             <type name="gdouble" c:type="gdouble*"/>
           </parameter>
           <parameter name="flush"
@@ -17436,7 +26087,9 @@ and make a copy if you want to modify it or store it for later use.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">a pointer to store the flush boolean in</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="1561">a pointer to store the flush boolean in</doc>
             <type name="gboolean" c:type="gboolean*"/>
           </parameter>
           <parameter name="intermediate"
@@ -17445,7 +26098,9 @@ and make a copy if you want to modify it or store it for later use.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">a pointer to store the intermediate
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="1562">a pointer to store the intermediate
     boolean in</doc>
             <type name="gboolean" c:type="gboolean*"/>
           </parameter>
@@ -17454,20 +26109,27 @@ and make a copy if you want to modify it or store it for later use.</doc>
       <method name="parse_stream"
               c:identifier="gst_event_parse_stream"
               version="1.10">
-        <doc xml:space="preserve">Parse a stream-start @event and extract the #GstStream from it.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstevent.c"
+             line="1758">Parse a stream-start @event and extract the #GstStream from it.</doc>
+        <source-position filename="gst/gstevent.h" line="551"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="event" transfer-ownership="none">
-            <doc xml:space="preserve">a stream-start event</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="1760">a stream-start event</doc>
             <type name="Event" c:type="GstEvent*"/>
           </instance-parameter>
           <parameter name="stream"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">address of variable to store the stream</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="1761">address of variable to store the stream</doc>
             <type name="Stream" c:type="GstStream**"/>
           </parameter>
         </parameters>
@@ -17475,20 +26137,27 @@ and make a copy if you want to modify it or store it for later use.</doc>
       <method name="parse_stream_collection"
               c:identifier="gst_event_parse_stream_collection"
               version="1.10">
-        <doc xml:space="preserve">Retrieve new #GstStreamCollection from STREAM_COLLECTION event @event.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstevent.c"
+             line="1900">Retrieve new #GstStreamCollection from STREAM_COLLECTION event @event.</doc>
+        <source-position filename="gst/gstevent.h" line="582"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="event" transfer-ownership="none">
-            <doc xml:space="preserve">a stream-collection event</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="1902">a stream-collection event</doc>
             <type name="Event" c:type="GstEvent*"/>
           </instance-parameter>
           <parameter name="collection"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">pointer to store the collection</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="1903">pointer to store the collection</doc>
             <type name="StreamCollection" c:type="GstStreamCollection**"/>
           </parameter>
         </parameters>
@@ -17496,19 +26165,24 @@ and make a copy if you want to modify it or store it for later use.</doc>
       <method name="parse_stream_flags"
               c:identifier="gst_event_parse_stream_flags"
               version="1.2">
+        <source-position filename="gst/gstevent.h" line="557"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="event" transfer-ownership="none">
-            <doc xml:space="preserve">a stream-start event</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="1800">a stream-start event</doc>
             <type name="Event" c:type="GstEvent*"/>
           </instance-parameter>
           <parameter name="flags"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">address of variable where to store the stream flags</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="1801">address of variable where to store the stream flags</doc>
             <type name="StreamFlags" c:type="GstStreamFlags*"/>
           </parameter>
         </parameters>
@@ -17516,105 +26190,140 @@ and make a copy if you want to modify it or store it for later use.</doc>
       <method name="parse_stream_group_done"
               c:identifier="gst_event_parse_stream_group_done"
               version="1.10">
-        <doc xml:space="preserve">Parse a stream-group-done @event and store the result in the given
+        <doc xml:space="preserve"
+             filename="gst/gstevent.c"
+             line="724">Parse a stream-group-done @event and store the result in the given
 @group_id location.</doc>
+        <source-position filename="gst/gstevent.h" line="598"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="event" transfer-ownership="none">
-            <doc xml:space="preserve">a stream-group-done event.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="726">a stream-group-done event.</doc>
             <type name="Event" c:type="GstEvent*"/>
           </instance-parameter>
           <parameter name="group_id"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">address of variable to store the group id into</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="727">address of variable to store the group id into</doc>
             <type name="guint" c:type="guint*"/>
           </parameter>
         </parameters>
       </method>
       <method name="parse_stream_start"
               c:identifier="gst_event_parse_stream_start">
-        <doc xml:space="preserve">Parse a stream-id @event and store the result in the given @stream_id
+        <doc xml:space="preserve"
+             filename="gst/gstevent.c"
+             line="1712">Parse a stream-id @event and store the result in the given @stream_id
 location. The string stored in @stream_id must not be modified and will
 remain valid only until @event gets freed. Make a copy if you want to
 modify it or store it for later use.</doc>
+        <source-position filename="gst/gstevent.h" line="545"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="event" transfer-ownership="none">
-            <doc xml:space="preserve">a stream-start event.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="1714">a stream-start event.</doc>
             <type name="Event" c:type="GstEvent*"/>
           </instance-parameter>
           <parameter name="stream_id"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="none">
-            <doc xml:space="preserve">pointer to store the stream-id</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="1715">pointer to store the stream-id</doc>
             <type name="utf8" c:type="const gchar**"/>
           </parameter>
         </parameters>
       </method>
       <method name="parse_tag" c:identifier="gst_event_parse_tag">
-        <doc xml:space="preserve">Parses a tag @event and stores the results in the given @taglist location.
+        <doc xml:space="preserve"
+             filename="gst/gstevent.c"
+             line="1014">Parses a tag @event and stores the results in the given @taglist location.
 No reference to the taglist will be returned, it remains valid only until
 the @event is freed. Don't modify or free the taglist, make a copy if you
 want to modify it or store it for later use.</doc>
+        <source-position filename="gst/gstevent.h" line="640"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="event" transfer-ownership="none">
-            <doc xml:space="preserve">a tag event</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="1016">a tag event</doc>
             <type name="Event" c:type="GstEvent*"/>
           </instance-parameter>
           <parameter name="taglist"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="none">
-            <doc xml:space="preserve">pointer to metadata list</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="1017">pointer to metadata list</doc>
             <type name="TagList" c:type="GstTagList**"/>
           </parameter>
         </parameters>
       </method>
       <method name="parse_toc" c:identifier="gst_event_parse_toc">
-        <doc xml:space="preserve">Parse a TOC @event and store the results in the given @toc and @updated locations.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstevent.c"
+             line="1960">Parse a TOC @event and store the results in the given @toc and @updated locations.</doc>
+        <source-position filename="gst/gstevent.h" line="648"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="event" transfer-ownership="none">
-            <doc xml:space="preserve">a TOC event.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="1962">a TOC event.</doc>
             <type name="Event" c:type="GstEvent*"/>
           </instance-parameter>
           <parameter name="toc"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">pointer to #GstToc structure.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="1963">pointer to #GstToc structure.</doc>
             <type name="Toc" c:type="GstToc**"/>
           </parameter>
           <parameter name="updated"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">pointer to store TOC updated flag.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="1964">pointer to store TOC updated flag.</doc>
             <type name="gboolean" c:type="gboolean*"/>
           </parameter>
         </parameters>
       </method>
       <method name="parse_toc_select"
               c:identifier="gst_event_parse_toc_select">
-        <doc xml:space="preserve">Parse a TOC select @event and store the results in the given @uid location.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstevent.c"
+             line="2009">Parse a TOC select @event and store the results in the given @uid location.</doc>
+        <source-position filename="gst/gstevent.h" line="736"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="event" transfer-ownership="none">
-            <doc xml:space="preserve">a TOC select event.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="2011">a TOC select event.</doc>
             <type name="Event" c:type="GstEvent*"/>
           </instance-parameter>
           <parameter name="uid"
@@ -17623,31 +26332,60 @@ want to modify it or store it for later use.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">storage for the selection UID.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="2012">storage for the selection UID.</doc>
             <type name="utf8" c:type="gchar**"/>
           </parameter>
         </parameters>
       </method>
+      <method name="ref" c:identifier="gst_event_ref" introspectable="0">
+        <doc xml:space="preserve"
+             filename="gst/gstevent.h"
+             line="439">Increase the refcount of this event.</doc>
+        <source-position filename="gst/gstevent.h" line="447"/>
+        <return-value transfer-ownership="full">
+          <doc xml:space="preserve"
+               filename="gst/gstevent.h"
+               line="445">@event (for convenience when doing assignments)</doc>
+          <type name="Event" c:type="GstEvent*"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="event" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.h"
+                 line="441">The event to refcount</doc>
+            <type name="Event" c:type="GstEvent*"/>
+          </instance-parameter>
+        </parameters>
+      </method>
       <method name="set_group_id"
               c:identifier="gst_event_set_group_id"
               version="1.2">
-        <doc xml:space="preserve">All streams that have the same group id are supposed to be played
+        <doc xml:space="preserve"
+             filename="gst/gstevent.c"
+             line="1817">All streams that have the same group id are supposed to be played
 together, i.e. all streams inside a container file should have the
 same group id but different stream ids. The group id should change
 each time the stream is started, resulting in different group ids
 each time a file is played for example.
 
 Use gst_util_group_id_next() to get a new group id.</doc>
+        <source-position filename="gst/gstevent.h" line="560"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="event" transfer-ownership="none">
-            <doc xml:space="preserve">a stream-start event</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="1819">a stream-start event</doc>
             <type name="Event" c:type="GstEvent*"/>
           </instance-parameter>
           <parameter name="group_id" transfer-ownership="none">
-            <doc xml:space="preserve">the group id to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="1820">the group id to set</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
@@ -17655,20 +26393,27 @@ Use gst_util_group_id_next() to get a new group id.</doc>
       <method name="set_running_time_offset"
               c:identifier="gst_event_set_running_time_offset"
               version="1.4">
-        <doc xml:space="preserve">Set the running time offset of a event. See
+        <doc xml:space="preserve"
+             filename="gst/gstevent.c"
+             line="513">Set the running time offset of a event. See
 gst_event_get_running_time_offset() for more information.
 
 MT safe.</doc>
+        <source-position filename="gst/gstevent.h" line="537"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="event" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstEvent.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="515">A #GstEvent.</doc>
             <type name="Event" c:type="GstEvent*"/>
           </instance-parameter>
           <parameter name="offset" transfer-ownership="none">
-            <doc xml:space="preserve">A the new running time offset</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="516">A the new running time offset</doc>
             <type name="gint64" c:type="gint64"/>
           </parameter>
         </parameters>
@@ -17676,9 +26421,12 @@ MT safe.</doc>
       <method name="set_seek_trickmode_interval"
               c:identifier="gst_event_set_seek_trickmode_interval"
               version="1.16">
-        <doc xml:space="preserve">Sets a trickmode interval on a (writable) seek event. Elements
+        <doc xml:space="preserve"
+             filename="gst/gstevent.c"
+             line="1402">Sets a trickmode interval on a (writable) seek event. Elements
 that support TRICKMODE_KEY_UNITS seeks SHOULD use this as the minimal
 interval between each frame they may output.</doc>
+        <source-position filename="gst/gstevent.h" line="698"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
@@ -17692,23 +26440,30 @@ interval between each frame they may output.</doc>
         </parameters>
       </method>
       <method name="set_seqnum" c:identifier="gst_event_set_seqnum">
-        <doc xml:space="preserve">Set the sequence number of a event.
+        <doc xml:space="preserve"
+             filename="gst/gstevent.c"
+             line="462">Set the sequence number of a event.
 
 This function might be called by the creator of a event to indicate that the
 event relates to other events or messages. See gst_event_get_seqnum() for
 more information.
 
 MT safe.</doc>
+        <source-position filename="gst/gstevent.h" line="529"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="event" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstEvent.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="464">A #GstEvent.</doc>
             <type name="Event" c:type="GstEvent*"/>
           </instance-parameter>
           <parameter name="seqnum" transfer-ownership="none">
-            <doc xml:space="preserve">A sequence number.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="465">A sequence number.</doc>
             <type name="guint32" c:type="guint32"/>
           </parameter>
         </parameters>
@@ -17716,17 +26471,24 @@ MT safe.</doc>
       <method name="set_stream"
               c:identifier="gst_event_set_stream"
               version="1.10">
-        <doc xml:space="preserve">Set the @stream on the stream-start @event</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstevent.c"
+             line="1738">Set the @stream on the stream-start @event</doc>
+        <source-position filename="gst/gstevent.h" line="548"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="event" transfer-ownership="none">
-            <doc xml:space="preserve">a stream-start event</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="1740">a stream-start event</doc>
             <type name="Event" c:type="GstEvent*"/>
           </instance-parameter>
           <parameter name="stream" transfer-ownership="none">
-            <doc xml:space="preserve">the stream object to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="1741">the stream object to set</doc>
             <type name="Stream" c:type="GstStream*"/>
           </parameter>
         </parameters>
@@ -17734,25 +26496,52 @@ MT safe.</doc>
       <method name="set_stream_flags"
               c:identifier="gst_event_set_stream_flags"
               version="1.2">
+        <source-position filename="gst/gstevent.h" line="554"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="event" transfer-ownership="none">
-            <doc xml:space="preserve">a stream-start event</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="1782">a stream-start event</doc>
             <type name="Event" c:type="GstEvent*"/>
           </instance-parameter>
           <parameter name="flags" transfer-ownership="none">
-            <doc xml:space="preserve">the stream flags to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="1783">the stream flags to set</doc>
             <type name="StreamFlags" c:type="GstStreamFlags"/>
           </parameter>
         </parameters>
       </method>
+      <method name="unref" c:identifier="gst_event_unref" introspectable="0">
+        <doc xml:space="preserve"
+             filename="gst/gstevent.h"
+             line="454">Decrease the refcount of an event, freeing it if the refcount reaches 0.</doc>
+        <source-position filename="gst/gstevent.h" line="460"/>
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="event" transfer-ownership="full">
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.h"
+                 line="456">the event to refcount</doc>
+            <type name="Event" c:type="GstEvent*"/>
+          </instance-parameter>
+        </parameters>
+      </method>
       <method name="writable_structure"
               c:identifier="gst_event_writable_structure">
-        <doc xml:space="preserve">Get a writable version of the structure.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The structure of the event. The structure
+        <doc xml:space="preserve"
+             filename="gst/gstevent.c"
+             line="355">Get a writable version of the structure.</doc>
+        <source-position filename="gst/gstevent.h" line="515"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstevent.c"
+               line="361">The structure of the event. 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.
 This function checks if @event is writable and will never return
@@ -17763,17 +26552,131 @@ MT safe.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="event" transfer-ownership="none">
-            <doc xml:space="preserve">The #GstEvent.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="357">The #GstEvent.</doc>
             <type name="Event" c:type="GstEvent*"/>
           </instance-parameter>
         </parameters>
       </method>
+      <function name="replace"
+                c:identifier="gst_event_replace"
+                introspectable="0">
+        <doc xml:space="preserve"
+             filename="gst/gstevent.h"
+             line="324">Modifies a pointer to a #GstEvent to point to a different #GstEvent. The
+modification is done atomically (so this is useful for ensuring thread safety
+in some cases), and the reference counts are updated appropriately (the old
+event is unreffed, the new one is reffed).
+
+Either @new_event or the #GstEvent pointed to by @old_event may be %NULL.</doc>
+        <source-position filename="gst/gstevent.h" line="340"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstevent.h"
+               line="338">%TRUE if @new_event was different from @old_event</doc>
+          <type name="gboolean" c:type="gboolean"/>
+        </return-value>
+        <parameters>
+          <parameter name="old_event"
+                     direction="inout"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     nullable="1"
+                     allow-none="1">
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.h"
+                 line="326">pointer to a
+    pointer to a #GstEvent to be replaced.</doc>
+            <type name="Event" c:type="GstEvent**"/>
+          </parameter>
+          <parameter name="new_event"
+                     transfer-ownership="none"
+                     nullable="1"
+                     allow-none="1">
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.h"
+                 line="328">pointer to a #GstEvent that will
+    replace the event pointed to by @old_event.</doc>
+            <type name="Event" c:type="GstEvent*"/>
+          </parameter>
+        </parameters>
+      </function>
+      <function name="steal" c:identifier="gst_event_steal" introspectable="0">
+        <doc xml:space="preserve"
+             filename="gst/gstevent.h"
+             line="347">Atomically replace the #GstEvent pointed to by @old_event with %NULL and
+return the original event.</doc>
+        <source-position filename="gst/gstevent.h" line="357"/>
+        <return-value transfer-ownership="full">
+          <doc xml:space="preserve"
+               filename="gst/gstevent.h"
+               line="355">the #GstEvent that was in @old_event</doc>
+          <type name="Event" c:type="GstEvent*"/>
+        </return-value>
+        <parameters>
+          <parameter name="old_event"
+                     direction="inout"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     nullable="1"
+                     allow-none="1">
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.h"
+                 line="349">pointer to a
+    pointer to a #GstEvent to be stolen.</doc>
+            <type name="Event" c:type="GstEvent**"/>
+          </parameter>
+        </parameters>
+      </function>
+      <function name="take" c:identifier="gst_event_take" introspectable="0">
+        <doc xml:space="preserve"
+             filename="gst/gstevent.h"
+             line="364">Modifies a pointer to a #GstEvent to point to a different #GstEvent. This
+function is similar to gst_event_replace() except that it takes ownership of
+@new_event.
+
+Either @new_event or the #GstEvent pointed to by @old_event may be %NULL.</doc>
+        <source-position filename="gst/gstevent.h" line="379"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstevent.h"
+               line="377">%TRUE if @new_event was different from @old_event</doc>
+          <type name="gboolean" c:type="gboolean"/>
+        </return-value>
+        <parameters>
+          <parameter name="old_event"
+                     direction="inout"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     nullable="1"
+                     allow-none="1">
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.h"
+                 line="366">pointer to a
+    pointer to a #GstEvent to be stolen.</doc>
+            <type name="Event" c:type="GstEvent**"/>
+          </parameter>
+          <parameter name="new_event"
+                     transfer-ownership="full"
+                     nullable="1"
+                     allow-none="1">
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.h"
+                 line="368">pointer to a #GstEvent that will
+    replace the event pointed to by @old_event.</doc>
+            <type name="Event" c:type="GstEvent*"/>
+          </parameter>
+        </parameters>
+      </function>
     </record>
     <enumeration name="EventType"
                  glib:type-name="GstEventType"
                  glib:get-type="gst_event_type_get_type"
                  c:type="GstEventType">
-      <doc xml:space="preserve">#GstEventType lists the standard event types that can be sent in a pipeline.
+      <doc xml:space="preserve"
+           filename="gst/gstevent.h"
+           line="75">#GstEventType lists the standard event types that can be sent in a pipeline.
 
 The custom event types can be used for private messages between elements
 that can't be expressed using normal
@@ -17784,27 +26687,35 @@ Specific custom events are distinguished by the name of the structure.</doc>
               value="0"
               c:identifier="GST_EVENT_UNKNOWN"
               glib:nick="unknown">
-        <doc xml:space="preserve">unknown event.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstevent.h"
+             line="77">unknown event.</doc>
       </member>
       <member name="flush_start"
               value="2563"
               c:identifier="GST_EVENT_FLUSH_START"
               glib:nick="flush-start">
-        <doc xml:space="preserve">Start a flush operation. This event clears all data
+        <doc xml:space="preserve"
+             filename="gst/gstevent.h"
+             line="78">Start a flush operation. This event clears all data
                 from the pipeline and unblock all streaming threads.</doc>
       </member>
       <member name="flush_stop"
               value="5127"
               c:identifier="GST_EVENT_FLUSH_STOP"
               glib:nick="flush-stop">
-        <doc xml:space="preserve">Stop a flush operation. This event resets the
+        <doc xml:space="preserve"
+             filename="gst/gstevent.h"
+             line="80">Stop a flush operation. This event resets the
                 running-time of the pipeline.</doc>
       </member>
       <member name="stream_start"
               value="10254"
               c:identifier="GST_EVENT_STREAM_START"
               glib:nick="stream-start">
-        <doc xml:space="preserve">Event to mark the start of a new stream. Sent before any
+        <doc xml:space="preserve"
+             filename="gst/gstevent.h"
+             line="83">Event to mark the start of a new stream. Sent before any
                 other serialized event and only sent at the start of a new stream,
                 not after flushing seeks.</doc>
       </member>
@@ -17812,13 +26723,17 @@ Specific custom events are distinguished by the name of the structure.</doc>
               value="12814"
               c:identifier="GST_EVENT_CAPS"
               glib:nick="caps">
-        <doc xml:space="preserve">#GstCaps event. Notify the pad of a new media type.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstevent.h"
+             line="86">#GstCaps event. Notify the pad of a new media type.</doc>
       </member>
       <member name="segment"
               value="17934"
               c:identifier="GST_EVENT_SEGMENT"
               glib:nick="segment">
-        <doc xml:space="preserve">A new media segment follows in the dataflow. The
+        <doc xml:space="preserve"
+             filename="gst/gstevent.h"
+             line="87">A new media segment follows in the dataflow. The
                 segment events contains information for clipping buffers and
                 converting buffer timestamps to running-time and
                 stream-time.</doc>
@@ -17827,26 +26742,34 @@ Specific custom events are distinguished by the name of the structure.</doc>
               value="19230"
               c:identifier="GST_EVENT_STREAM_COLLECTION"
               glib:nick="stream-collection">
-        <doc xml:space="preserve">A new #GstStreamCollection is available (Since 1.10)</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstevent.h"
+             line="91">A new #GstStreamCollection is available (Since: 1.10)</doc>
       </member>
       <member name="tag"
               value="20510"
               c:identifier="GST_EVENT_TAG"
               glib:nick="tag">
-        <doc xml:space="preserve">A new set of metadata tags has been found in the stream.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstevent.h"
+             line="92">A new set of metadata tags has been found in the stream.</doc>
       </member>
       <member name="buffersize"
               value="23054"
               c:identifier="GST_EVENT_BUFFERSIZE"
               glib:nick="buffersize">
-        <doc xml:space="preserve">Notification of buffering requirements. Currently not
+        <doc xml:space="preserve"
+             filename="gst/gstevent.h"
+             line="93">Notification of buffering requirements. Currently not
                 used yet.</doc>
       </member>
       <member name="sink_message"
               value="25630"
               c:identifier="GST_EVENT_SINK_MESSAGE"
               glib:nick="sink-message">
-        <doc xml:space="preserve">An event that sinks turn into a message. Used to
+        <doc xml:space="preserve"
+             filename="gst/gstevent.h"
+             line="95">An event that sinks turn into a message. Used to
                          send messages that should be emitted in sync with
                          rendering.</doc>
       </member>
@@ -17854,15 +26777,19 @@ Specific custom events are distinguished by the name of the structure.</doc>
               value="26894"
               c:identifier="GST_EVENT_STREAM_GROUP_DONE"
               glib:nick="stream-group-done">
-        <doc xml:space="preserve">Indicates that there is no more data for
+        <doc xml:space="preserve"
+             filename="gst/gstevent.h"
+             line="98">Indicates that there is no more data for
                 the stream group ID in the message. Sent before EOS
-                in some instances and should be handled mostly the same. (Since 1.10)</doc>
+                in some instances and should be handled mostly the same. (Since: 1.10)</doc>
       </member>
       <member name="eos"
               value="28174"
               c:identifier="GST_EVENT_EOS"
               glib:nick="eos">
-        <doc xml:space="preserve">End-Of-Stream. No more data is to be expected to follow
+        <doc xml:space="preserve"
+             filename="gst/gstevent.h"
+             line="101">End-Of-Stream. No more data is to be expected to follow
                 without either a STREAM_START event, or a FLUSH_STOP and a SEGMENT
                 event.</doc>
       </member>
@@ -17870,33 +26797,52 @@ Specific custom events are distinguished by the name of the structure.</doc>
               value="30750"
               c:identifier="GST_EVENT_TOC"
               glib:nick="toc">
-        <doc xml:space="preserve">An event which indicates that a new table of contents (TOC)
+        <doc xml:space="preserve"
+             filename="gst/gstevent.h"
+             line="106">An event which indicates that a new table of contents (TOC)
                 was found or updated.</doc>
       </member>
       <member name="protection"
               value="33310"
               c:identifier="GST_EVENT_PROTECTION"
               glib:nick="protection">
-        <doc xml:space="preserve">An event which indicates that new or updated
+        <doc xml:space="preserve"
+             filename="gst/gstevent.h"
+             line="108">An event which indicates that new or updated
                 encryption information has been found in the stream.</doc>
       </member>
       <member name="segment_done"
               value="38406"
               c:identifier="GST_EVENT_SEGMENT_DONE"
               glib:nick="segment-done">
-        <doc xml:space="preserve">Marks the end of a segment playback.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstevent.h"
+             line="104">Marks the end of a segment playback.</doc>
       </member>
       <member name="gap"
               value="40966"
               c:identifier="GST_EVENT_GAP"
               glib:nick="gap">
-        <doc xml:space="preserve">Marks a gap in the datastream.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstevent.h"
+             line="105">Marks a gap in the datastream.</doc>
+      </member>
+      <member name="instant_rate_change"
+              value="46090"
+              c:identifier="GST_EVENT_INSTANT_RATE_CHANGE"
+              glib:nick="instant-rate-change">
+        <doc xml:space="preserve"
+             filename="gst/gstevent.h"
+             line="124">Notify downstream that a playback rate override
+                                should be applied as soon as possible. (Since: 1.18)</doc>
       </member>
       <member name="qos"
               value="48641"
               c:identifier="GST_EVENT_QOS"
               glib:nick="qos">
-        <doc xml:space="preserve">A quality message. Used to indicate to upstream elements
+        <doc xml:space="preserve"
+             filename="gst/gstevent.h"
+             line="110">A quality message. Used to indicate to upstream elements
                 that the downstream elements should adjust their processing
                 rate.</doc>
       </member>
@@ -17904,13 +26850,17 @@ Specific custom events are distinguished by the name of the structure.</doc>
               value="51201"
               c:identifier="GST_EVENT_SEEK"
               glib:nick="seek">
-        <doc xml:space="preserve">A request for a new playback position and rate.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstevent.h"
+             line="113">A request for a new playback position and rate.</doc>
       </member>
       <member name="navigation"
               value="53761"
               c:identifier="GST_EVENT_NAVIGATION"
               glib:nick="navigation">
-        <doc xml:space="preserve">Navigation events are usually used for communicating
+        <doc xml:space="preserve"
+             filename="gst/gstevent.h"
+             line="114">Navigation events are usually used for communicating
                        user requests, such as mouse or keyboard movements,
                        to upstream elements.</doc>
       </member>
@@ -17918,108 +26868,161 @@ Specific custom events are distinguished by the name of the structure.</doc>
               value="56321"
               c:identifier="GST_EVENT_LATENCY"
               glib:nick="latency">
-        <doc xml:space="preserve">Notification of new latency adjustment. Sinks will use
+        <doc xml:space="preserve"
+             filename="gst/gstevent.h"
+             line="117">Notification of new latency adjustment. Sinks will use
                     the latency information to adjust their synchronisation.</doc>
       </member>
       <member name="step"
               value="58881"
               c:identifier="GST_EVENT_STEP"
               glib:nick="step">
-        <doc xml:space="preserve">A request for stepping through the media. Sinks will usually
+        <doc xml:space="preserve"
+             filename="gst/gstevent.h"
+             line="119">A request for stepping through the media. Sinks will usually
                  execute the step operation.</doc>
       </member>
       <member name="reconfigure"
               value="61441"
               c:identifier="GST_EVENT_RECONFIGURE"
               glib:nick="reconfigure">
-        <doc xml:space="preserve">A request for upstream renegotiating caps and reconfiguring.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstevent.h"
+             line="121">A request for upstream renegotiating caps and reconfiguring.</doc>
       </member>
       <member name="toc_select"
               value="64001"
               c:identifier="GST_EVENT_TOC_SELECT"
               glib:nick="toc-select">
-        <doc xml:space="preserve">A request for a new playback position based on TOC
+        <doc xml:space="preserve"
+             filename="gst/gstevent.h"
+             line="122">A request for a new playback position based on TOC
                        entry's UID.</doc>
       </member>
       <member name="select_streams"
               value="66561"
               c:identifier="GST_EVENT_SELECT_STREAMS"
               glib:nick="select-streams">
-        <doc xml:space="preserve">A request to select one or more streams (Since 1.10)</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstevent.h"
+             line="82">A request to select one or more streams (Since: 1.10)</doc>
+      </member>
+      <member name="instant_rate_sync_time"
+              value="66817"
+              c:identifier="GST_EVENT_INSTANT_RATE_SYNC_TIME"
+              glib:nick="instant-rate-sync-time">
+        <doc xml:space="preserve"
+             filename="gst/gstevent.h"
+             line="126">Sent by the pipeline to notify elements that handle the
+                                   instant-rate-change event about the running-time when
+                                   the rate multiplier should be applied (or was applied). (Since: 1.18)</doc>
       </member>
       <member name="custom_upstream"
               value="69121"
               c:identifier="GST_EVENT_CUSTOM_UPSTREAM"
               glib:nick="custom-upstream">
-        <doc xml:space="preserve">Upstream custom event</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstevent.h"
+             line="129">Upstream custom event</doc>
       </member>
       <member name="custom_downstream"
               value="71686"
               c:identifier="GST_EVENT_CUSTOM_DOWNSTREAM"
               glib:nick="custom-downstream">
-        <doc xml:space="preserve">Downstream custom event that travels in the
+        <doc xml:space="preserve"
+             filename="gst/gstevent.h"
+             line="130">Downstream custom event that travels in the
                        data flow.</doc>
       </member>
       <member name="custom_downstream_oob"
               value="74242"
               c:identifier="GST_EVENT_CUSTOM_DOWNSTREAM_OOB"
               glib:nick="custom-downstream-oob">
-        <doc xml:space="preserve">Custom out-of-band downstream event.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstevent.h"
+             line="132">Custom out-of-band downstream event.</doc>
       </member>
       <member name="custom_downstream_sticky"
               value="76830"
               c:identifier="GST_EVENT_CUSTOM_DOWNSTREAM_STICKY"
               glib:nick="custom-downstream-sticky">
-        <doc xml:space="preserve">Custom sticky downstream event.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstevent.h"
+             line="133">Custom sticky downstream event.</doc>
       </member>
       <member name="custom_both"
               value="79367"
               c:identifier="GST_EVENT_CUSTOM_BOTH"
               glib:nick="custom-both">
-        <doc xml:space="preserve">Custom upstream or downstream event.
+        <doc xml:space="preserve"
+             filename="gst/gstevent.h"
+             line="134">Custom upstream or downstream event.
                         In-band when travelling downstream.</doc>
       </member>
       <member name="custom_both_oob"
               value="81923"
               c:identifier="GST_EVENT_CUSTOM_BOTH_OOB"
               glib:nick="custom-both-oob">
-        <doc xml:space="preserve">Custom upstream or downstream out-of-band event.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstevent.h"
+             line="136">Custom upstream or downstream out-of-band event.</doc>
       </member>
       <function name="get_flags" c:identifier="gst_event_type_get_flags">
-        <doc xml:space="preserve">Gets the #GstEventTypeFlags associated with @type.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstEventTypeFlags.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstevent.c"
+             line="198">Gets the #GstEventTypeFlags associated with @type.</doc>
+        <source-position filename="gst/gstevent.h" line="435"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstevent.c"
+               line="204">a #GstEventTypeFlags.</doc>
           <type name="EventTypeFlags" c:type="GstEventTypeFlags"/>
         </return-value>
         <parameters>
           <parameter name="type" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstEventType</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="200">a #GstEventType</doc>
             <type name="EventType" c:type="GstEventType"/>
           </parameter>
         </parameters>
       </function>
       <function name="get_name" c:identifier="gst_event_type_get_name">
-        <doc xml:space="preserve">Get a printable name for the given event type. Do not modify or free.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a reference to the static name of the event.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstevent.c"
+             line="158">Get a printable name for the given event type. Do not modify or free.</doc>
+        <source-position filename="gst/gstevent.h" line="428"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstevent.c"
+               line="164">a reference to the static name of the event.</doc>
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
         <parameters>
           <parameter name="type" transfer-ownership="none">
-            <doc xml:space="preserve">the event type</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="160">the event type</doc>
             <type name="EventType" c:type="GstEventType"/>
           </parameter>
         </parameters>
       </function>
       <function name="to_quark" c:identifier="gst_event_type_to_quark">
-        <doc xml:space="preserve">Get the unique quark for the given event type.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the quark associated with the event type</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstevent.c"
+             line="178">Get the unique quark for the given event type.</doc>
+        <source-position filename="gst/gstevent.h" line="431"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstevent.c"
+               line="184">the quark associated with the event type</doc>
           <type name="GLib.Quark" c:type="GQuark"/>
         </return-value>
         <parameters>
           <parameter name="type" transfer-ownership="none">
-            <doc xml:space="preserve">the event type</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstevent.c"
+                 line="180">the event type</doc>
             <type name="EventType" c:type="GstEventType"/>
           </parameter>
         </parameters>
@@ -18029,39 +27032,51 @@ Specific custom events are distinguished by the name of the structure.</doc>
               glib:type-name="GstEventTypeFlags"
               glib:get-type="gst_event_type_flags_get_type"
               c:type="GstEventTypeFlags">
-      <doc xml:space="preserve">#GstEventTypeFlags indicate the aspects of the different #GstEventType
+      <doc xml:space="preserve"
+           filename="gst/gstevent.h"
+           line="30">#GstEventTypeFlags indicate the aspects of the different #GstEventType
 values. You can get the type flags of a #GstEventType with the
 gst_event_type_get_flags() function.</doc>
       <member name="upstream"
               value="1"
               c:identifier="GST_EVENT_TYPE_UPSTREAM"
               glib:nick="upstream">
-        <doc xml:space="preserve">Set if the event can travel upstream.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstevent.h"
+             line="32">Set if the event can travel upstream.</doc>
       </member>
       <member name="downstream"
               value="2"
               c:identifier="GST_EVENT_TYPE_DOWNSTREAM"
               glib:nick="downstream">
-        <doc xml:space="preserve">Set if the event can travel downstream.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstevent.h"
+             line="33">Set if the event can travel downstream.</doc>
       </member>
       <member name="serialized"
               value="4"
               c:identifier="GST_EVENT_TYPE_SERIALIZED"
               glib:nick="serialized">
-        <doc xml:space="preserve">Set if the event should be serialized with data
+        <doc xml:space="preserve"
+             filename="gst/gstevent.h"
+             line="34">Set if the event should be serialized with data
                               flow.</doc>
       </member>
       <member name="sticky"
               value="8"
               c:identifier="GST_EVENT_TYPE_STICKY"
               glib:nick="sticky">
-        <doc xml:space="preserve">Set if the event is sticky on the pads.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstevent.h"
+             line="36">Set if the event is sticky on the pads.</doc>
       </member>
       <member name="sticky_multi"
               value="16"
               c:identifier="GST_EVENT_TYPE_STICKY_MULTI"
               glib:nick="sticky-multi">
-        <doc xml:space="preserve">Multiple sticky events can be on a pad, each
+        <doc xml:space="preserve"
+             filename="gst/gstevent.h"
+             line="37">Multiple sticky events can be on a pad, each
                               identified by the event name.</doc>
       </member>
     </bitfield>
@@ -18069,34 +27084,62 @@ gst_event_type_get_flags() function.</doc>
               value="4294967295"
               c:type="GST_FLAG_SET_MASK_EXACT"
               version="1.6">
-      <doc xml:space="preserve">A mask value with all bits set, for use as a
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.h"
+           line="214">A mask value with all bits set, for use as a
 GstFlagSet mask where all flag bits must match
 exactly</doc>
+      <source-position filename="gst/gstvalue.h" line="223"/>
       <type name="guint" c:type="guint"/>
     </constant>
     <constant name="FORMAT_PERCENT_MAX"
               value="1000000"
               c:type="GST_FORMAT_PERCENT_MAX">
-      <doc xml:space="preserve">The PERCENT format is between 0 and this value</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstformat.h"
+           line="62">The PERCENT format is between 0 and this value</doc>
+      <source-position filename="gst/gstformat.h" line="67"/>
       <type name="gint64" c:type="gint64"/>
     </constant>
     <constant name="FORMAT_PERCENT_SCALE"
               value="10000"
               c:type="GST_FORMAT_PERCENT_SCALE">
-      <doc xml:space="preserve">The value used to scale down the reported PERCENT format value to
+      <doc xml:space="preserve"
+           filename="gst/gstformat.h"
+           line="68">The value used to scale down the reported PERCENT format value to
 its real value.</doc>
+      <source-position filename="gst/gstformat.h" line="74"/>
       <type name="gint64" c:type="gint64"/>
     </constant>
+    <function-macro name="FOURCC_ARGS"
+                    c:identifier="GST_FOURCC_ARGS"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.h"
+           line="77">Can be used together with #GST_FOURCC_FORMAT to properly output a
+#guint32 fourcc value in a printf\()-style text message.</doc>
+      <source-position filename="gst/gstvalue.h" line="87"/>
+      <parameters>
+        <parameter name="fourcc">
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.h"
+               line="79">a #guint32 fourcc value to output</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
     <constant name="FOURCC_FORMAT"
               value="c%c%c%c"
               c:type="GST_FOURCC_FORMAT"
               introspectable="0">
-      <doc xml:space="preserve">Can be used together with #GST_FOURCC_ARGS to properly output a
-#guint32 fourcc value in a printf()-style text message.
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.h"
+           line="64">Can be used together with #GST_FOURCC_ARGS to properly output a
+#guint32 fourcc value in a printf\()-style text message.
 
 |[
 printf ("fourcc: %" GST_FOURCC_FORMAT "\n", GST_FOURCC_ARGS (fcc));
 ]|</doc>
+      <source-position filename="gst/gstvalue.h" line="75"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <class name="FlagSet"
@@ -18104,18 +27147,27 @@ printf ("fourcc: %" GST_FOURCC_FORMAT "\n", GST_FOURCC_ARGS (fcc));
            glib:type-name="GstFlagSet"
            glib:get-type="gst_flagset_get_type"
            glib:fundamental="1">
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.h"
+           line="376">A fundamental type that describes a 32-bit flag bitfield, with 32-bit
+mask indicating which of the bits in the field are explicitly set.</doc>
       <function name="register"
                 c:identifier="gst_flagset_register"
                 version="1.6">
-        <doc xml:space="preserve">Create a new sub-class of #GST_TYPE_FLAG_SET
+        <doc xml:space="preserve"
+             filename="gst/gstvalue.c"
+             line="8097">Create a new sub-class of #GST_TYPE_FLAG_SET
 which will pretty-print the human-readable flags
 when serializing, for easier debugging.</doc>
+        <source-position filename="gst/gstvalue.h" line="784"/>
         <return-value transfer-ownership="none">
           <type name="GType" c:type="GType"/>
         </return-value>
         <parameters>
           <parameter name="flags_type" transfer-ownership="none">
-            <doc xml:space="preserve">a #GType of a #G_TYPE_FLAGS type.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstvalue.c"
+                 line="8099">a #GType of a #G_TYPE_FLAGS type.</doc>
             <type name="GType" c:type="GType"/>
           </parameter>
         </parameters>
@@ -18125,7 +27177,9 @@ when serializing, for easier debugging.</doc>
                  glib:type-name="GstFlowReturn"
                  glib:get-type="gst_flow_return_get_type"
                  c:type="GstFlowReturn">
-      <doc xml:space="preserve">The result of passing data to a pad.
+      <doc xml:space="preserve"
+           filename="gst/gstpad.h"
+           line="132">The result of passing data to a pad.
 
 Note that the custom return values should not be exposed outside of the
 element scope.</doc>
@@ -18133,13 +27187,17 @@ element scope.</doc>
               value="102"
               c:identifier="GST_FLOW_CUSTOM_SUCCESS_2"
               glib:nick="custom-success-2">
-        <doc xml:space="preserve">Pre-defined custom success code.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="149">Pre-defined custom success code.</doc>
       </member>
       <member name="custom_success_1"
               value="101"
               c:identifier="GST_FLOW_CUSTOM_SUCCESS_1"
               glib:nick="custom-success-1">
-        <doc xml:space="preserve">Pre-defined custom success code (define your
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="146">Pre-defined custom success code (define your
                               custom success code to this to avoid compiler
                               warnings).</doc>
       </member>
@@ -18147,42 +27205,56 @@ element scope.</doc>
               value="100"
               c:identifier="GST_FLOW_CUSTOM_SUCCESS"
               glib:nick="custom-success">
-        <doc xml:space="preserve">Elements can use values starting from
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="143">Elements can use values starting from
                               this (and higher) to define custom success
                               codes.</doc>
       </member>
       <member name="ok" value="0" c:identifier="GST_FLOW_OK" glib:nick="ok">
-        <doc xml:space="preserve">Data passing was ok.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="134">Data passing was ok.</doc>
       </member>
       <member name="not_linked"
               value="-1"
               c:identifier="GST_FLOW_NOT_LINKED"
               glib:nick="not-linked">
-        <doc xml:space="preserve">Pad is not linked.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="135">Pad is not linked.</doc>
       </member>
       <member name="flushing"
               value="-2"
               c:identifier="GST_FLOW_FLUSHING"
               glib:nick="flushing">
-        <doc xml:space="preserve">Pad is flushing.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="136">Pad is flushing.</doc>
       </member>
       <member name="eos"
               value="-3"
               c:identifier="GST_FLOW_EOS"
               glib:nick="eos">
-        <doc xml:space="preserve">Pad is EOS.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="137">Pad is EOS.</doc>
       </member>
       <member name="not_negotiated"
               value="-4"
               c:identifier="GST_FLOW_NOT_NEGOTIATED"
               glib:nick="not-negotiated">
-        <doc xml:space="preserve">Pad is not negotiated.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="138">Pad is not negotiated.</doc>
       </member>
       <member name="error"
               value="-5"
               c:identifier="GST_FLOW_ERROR"
               glib:nick="error">
-        <doc xml:space="preserve">Some (fatal) error occurred. Element generating
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="139">Some (fatal) error occurred. Element generating
                               this error should post an error message with more
                               details.</doc>
       </member>
@@ -18190,20 +27262,26 @@ element scope.</doc>
               value="-6"
               c:identifier="GST_FLOW_NOT_SUPPORTED"
               glib:nick="not-supported">
-        <doc xml:space="preserve">This operation is not supported.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="142">This operation is not supported.</doc>
       </member>
       <member name="custom_error"
               value="-100"
               c:identifier="GST_FLOW_CUSTOM_ERROR"
               glib:nick="custom-error">
-        <doc xml:space="preserve">Elements can use values starting from
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="150">Elements can use values starting from
                               this (and lower) to define custom error codes.</doc>
       </member>
       <member name="custom_error_1"
               value="-101"
               c:identifier="GST_FLOW_CUSTOM_ERROR_1"
               glib:nick="custom-error-1">
-        <doc xml:space="preserve">Pre-defined custom error code (define your
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="152">Pre-defined custom error code (define your
                               custom error code to this to avoid compiler
                               warnings).</doc>
       </member>
@@ -18211,25 +27289,33 @@ element scope.</doc>
               value="-102"
               c:identifier="GST_FLOW_CUSTOM_ERROR_2"
               glib:nick="custom-error-2">
-        <doc xml:space="preserve">Pre-defined custom error code.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="155">Pre-defined custom error code.</doc>
       </member>
     </enumeration>
     <enumeration name="Format"
                  glib:type-name="GstFormat"
                  glib:get-type="gst_format_get_type"
                  c:type="GstFormat">
-      <doc xml:space="preserve">Standard predefined formats</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstformat.h"
+           line="34">Standard predefined formats</doc>
       <member name="undefined"
               value="0"
               c:identifier="GST_FORMAT_UNDEFINED"
               glib:nick="undefined">
-        <doc xml:space="preserve">undefined format</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstformat.h"
+             line="36">undefined format</doc>
       </member>
       <member name="default"
               value="1"
               c:identifier="GST_FORMAT_DEFAULT"
               glib:nick="default">
-        <doc xml:space="preserve">the default format of the pad/element. This can be
+        <doc xml:space="preserve"
+             filename="gst/gstformat.h"
+             line="37">the default format of the pad/element. This can be
    samples for raw audio, frames/fields for raw video (some, but not all,
    elements support this; use @GST_FORMAT_TIME if you don't have a good
    reason to query for samples/frames)</doc>
@@ -18238,46 +27324,66 @@ element scope.</doc>
               value="2"
               c:identifier="GST_FORMAT_BYTES"
               glib:nick="bytes">
-        <doc xml:space="preserve">bytes</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstformat.h"
+             line="41">bytes</doc>
       </member>
       <member name="time"
               value="3"
               c:identifier="GST_FORMAT_TIME"
               glib:nick="time">
-        <doc xml:space="preserve">time in nanoseconds</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstformat.h"
+             line="42">time in nanoseconds</doc>
       </member>
       <member name="buffers"
               value="4"
               c:identifier="GST_FORMAT_BUFFERS"
               glib:nick="buffers">
-        <doc xml:space="preserve">buffers (few, if any, elements implement this as of
+        <doc xml:space="preserve"
+             filename="gst/gstformat.h"
+             line="43">buffers (few, if any, elements implement this as of
     May 2009)</doc>
       </member>
       <member name="percent"
               value="5"
               c:identifier="GST_FORMAT_PERCENT"
               glib:nick="percent">
-        <doc xml:space="preserve">percentage of stream (few, if any, elements implement
+        <doc xml:space="preserve"
+             filename="gst/gstformat.h"
+             line="45">percentage of stream (few, if any, elements implement
     this as of May 2009)</doc>
       </member>
       <function name="get_by_nick" c:identifier="gst_format_get_by_nick">
-        <doc xml:space="preserve">Return the format registered with the given nick.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The format with @nick or GST_FORMAT_UNDEFINED
+        <doc xml:space="preserve"
+             filename="gst/gstformat.c"
+             line="172">Return the format registered with the given nick.</doc>
+        <source-position filename="gst/gstformat.h" line="108"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstformat.c"
+               line="178">The format with @nick or GST_FORMAT_UNDEFINED
 if the format was not registered.</doc>
           <type name="Format" c:type="GstFormat"/>
         </return-value>
         <parameters>
           <parameter name="nick" transfer-ownership="none">
-            <doc xml:space="preserve">The nick of the format</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstformat.c"
+                 line="174">The nick of the format</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </function>
       <function name="get_details" c:identifier="gst_format_get_details">
-        <doc xml:space="preserve">Get details about the given format.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstformat.c"
+             line="223">Get details about the given format.</doc>
+        <source-position filename="gst/gstformat.h" line="119"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">The #GstFormatDefinition for @format or %NULL
+          <doc xml:space="preserve"
+               filename="gst/gstformat.c"
+               line="229">The #GstFormatDefinition for @format or %NULL
 on failure.
 
 MT safe.</doc>
@@ -18285,39 +27391,58 @@ MT safe.</doc>
         </return-value>
         <parameters>
           <parameter name="format" transfer-ownership="none">
-            <doc xml:space="preserve">The format to get details of</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstformat.c"
+                 line="225">The format to get details of</doc>
             <type name="Format" c:type="GstFormat"/>
           </parameter>
         </parameters>
       </function>
       <function name="get_name" c:identifier="gst_format_get_name">
-        <doc xml:space="preserve">Get a printable name for the given format. Do not modify or free.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstformat.c"
+             line="83">Get a printable name for the given format. Do not modify or free.</doc>
+        <source-position filename="gst/gstformat.h" line="96"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">a reference to the static name of the format
+          <doc xml:space="preserve"
+               filename="gst/gstformat.c"
+               line="89">a reference to the static name of the format
 or %NULL if the format is unknown.</doc>
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
         <parameters>
           <parameter name="format" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstFormat</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstformat.c"
+                 line="85">a #GstFormat</doc>
             <type name="Format" c:type="GstFormat"/>
           </parameter>
         </parameters>
       </function>
       <function name="iterate_definitions"
                 c:identifier="gst_format_iterate_definitions">
-        <doc xml:space="preserve">Iterate all the registered formats. The format definition is read
+        <doc xml:space="preserve"
+             filename="gst/gstformat.c"
+             line="246">Iterate all the registered formats. The format definition is read
 only.</doc>
+        <source-position filename="gst/gstformat.h" line="122"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a GstIterator of #GstFormatDefinition.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstformat.c"
+               line="252">a GstIterator of #GstFormatDefinition.</doc>
           <type name="Iterator" c:type="GstIterator*"/>
         </return-value>
       </function>
       <function name="register" c:identifier="gst_format_register">
-        <doc xml:space="preserve">Create a new GstFormat based on the nick or return an
+        <doc xml:space="preserve"
+             filename="gst/gstformat.c"
+             line="129">Create a new GstFormat based on the nick or return an
 already registered format with that nick.</doc>
+        <source-position filename="gst/gstformat.h" line="104"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">A new GstFormat or an already registered format
+          <doc xml:space="preserve"
+               filename="gst/gstformat.c"
+               line="137">A new GstFormat or an already registered format
 with the same nick.
 
 MT safe.</doc>
@@ -18325,46 +27450,68 @@ MT safe.</doc>
         </return-value>
         <parameters>
           <parameter name="nick" transfer-ownership="none">
-            <doc xml:space="preserve">The nick of the new format</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstformat.c"
+                 line="131">The nick of the new format</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="description" transfer-ownership="none">
-            <doc xml:space="preserve">The description of the new format</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstformat.c"
+                 line="132">The description of the new format</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </function>
       <function name="to_quark" c:identifier="gst_format_to_quark">
-        <doc xml:space="preserve">Get the unique quark for the given format.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the quark associated with the format or 0 if the format
+        <doc xml:space="preserve"
+             filename="gst/gstformat.c"
+             line="106">Get the unique quark for the given format.</doc>
+        <source-position filename="gst/gstformat.h" line="99"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstformat.c"
+               line="112">the quark associated with the format or 0 if the format
 is unknown.</doc>
           <type name="GLib.Quark" c:type="GQuark"/>
         </return-value>
         <parameters>
           <parameter name="format" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstFormat</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstformat.c"
+                 line="108">a #GstFormat</doc>
             <type name="Format" c:type="GstFormat"/>
           </parameter>
         </parameters>
       </function>
     </enumeration>
     <record name="FormatDefinition" c:type="GstFormatDefinition">
-      <doc xml:space="preserve">A format definition</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstformat.h"
+           line="78">A format definition</doc>
+      <source-position filename="gst/gstformat.h" line="93"/>
       <field name="value" writable="1">
-        <doc xml:space="preserve">The unique id of this format</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstformat.h"
+             line="80">The unique id of this format</doc>
         <type name="Format" c:type="GstFormat"/>
       </field>
       <field name="nick" writable="1">
-        <doc xml:space="preserve">A short nick of the format</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstformat.h"
+             line="81">A short nick of the format</doc>
         <type name="utf8" c:type="const gchar*"/>
       </field>
       <field name="description" writable="1">
-        <doc xml:space="preserve">A longer description of the format</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstformat.h"
+             line="82">A longer description of the format</doc>
         <type name="utf8" c:type="const gchar*"/>
       </field>
       <field name="quark" writable="1">
-        <doc xml:space="preserve">A quark for the nick</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstformat.h"
+             line="83">A quark for the nick</doc>
         <type name="GLib.Quark" c:type="GQuark"/>
       </field>
     </record>
@@ -18373,21 +27520,58 @@ is unknown.</doc>
            glib:type-name="GstFraction"
            glib:get-type="gst_fraction_get_type"
            glib:fundamental="1">
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.h"
+           line="338">A fundamental type that describes a fraction of an integer numerator
+over an integer denominator</doc>
     </class>
     <class name="FractionRange"
            c:symbol-prefix="fraction_range"
            glib:type-name="GstFractionRange"
            glib:get-type="gst_fraction_range_get_type"
            glib:fundamental="1">
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.h"
+           line="278">A fundamental type that describes a #GstFractionRange range</doc>
     </class>
+    <function-macro name="GHOST_PAD"
+                    c:identifier="GST_GHOST_PAD"
+                    introspectable="0">
+      <source-position filename="gst/gstghostpad.h" line="84"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="GHOST_PAD_CAST"
+                    c:identifier="GST_GHOST_PAD_CAST"
+                    introspectable="0">
+      <source-position filename="gst/gstghostpad.h" line="86"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="GHOST_PAD_CLASS"
+                    c:identifier="GST_GHOST_PAD_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gstghostpad.h" line="85"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
     <constant name="GROUP_ID_INVALID"
               value="0"
               c:type="GST_GROUP_ID_INVALID"
               version="1.14">
-      <doc xml:space="preserve">A value which is guaranteed to never be returned by
+      <doc xml:space="preserve"
+           filename="gst/gstutils.h"
+           line="120">A value which is guaranteed to never be returned by
 gst_util_group_id_next().
 
 Can be used as a default value in variables used to store group_id.</doc>
+      <source-position filename="gst/gstutils.h" line="130"/>
       <type name="gint" c:type="gint"/>
     </constant>
     <class name="GhostPad"
@@ -18397,7 +27581,9 @@ Can be used as a default value in variables used to store group_id.</doc>
            glib:type-name="GstGhostPad"
            glib:get-type="gst_ghost_pad_get_type"
            glib:type-struct="GhostPadClass">
-      <doc xml:space="preserve">GhostPads are useful when organizing pipelines with #GstBin like elements.
+      <doc xml:space="preserve"
+           filename="gst/gstghostpad.c"
+           line="25">GhostPads are useful when organizing pipelines with #GstBin like elements.
 The idea here is to create hierarchical element graphs. The bin element
 contains a sub-graph. Now one would like to treat the bin-element like any
 other #GstElement. This is where GhostPads come into play. A GhostPad acts as
@@ -18410,13 +27596,19 @@ to create the ghost-pad and use gst_ghost_pad_set_target() to establish the
 association later on.
 
 Note that GhostPads add overhead to the data processing of a pipeline.</doc>
+      <source-position filename="gst/gstghostpad.h" line="111"/>
       <constructor name="new" c:identifier="gst_ghost_pad_new">
-        <doc xml:space="preserve">Create a new ghostpad with @target as the target. The direction will be taken
+        <doc xml:space="preserve"
+             filename="gst/gstghostpad.c"
+             line="680">Create a new ghostpad with @target as the target. The direction will be taken
 from the target pad. @target must be unlinked.
 
 Will ref the target.</doc>
+        <source-position filename="gst/gstghostpad.h" line="118"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">a new #GstPad, or %NULL in
+          <doc xml:space="preserve"
+               filename="gst/gstghostpad.c"
+               line="690">a new #GstPad, or %NULL in
 case of an error.</doc>
           <type name="Pad" c:type="GstPad*"/>
         </return-value>
@@ -18425,23 +27617,32 @@ case of an error.</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">the name of the new pad, or %NULL to assign a default name</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstghostpad.c"
+                 line="682">the name of the new pad, or %NULL to assign a default name</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="target" transfer-ownership="none">
-            <doc xml:space="preserve">the pad to ghost.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstghostpad.c"
+                 line="683">the pad to ghost.</doc>
             <type name="Pad" c:type="GstPad*"/>
           </parameter>
         </parameters>
       </constructor>
       <constructor name="new_from_template"
                    c:identifier="gst_ghost_pad_new_from_template">
-        <doc xml:space="preserve">Create a new ghostpad with @target as the target. The direction will be taken
+        <doc xml:space="preserve"
+             filename="gst/gstghostpad.c"
+             line="720">Create a new ghostpad with @target as the target. The direction will be taken
 from the target pad. The template used on the ghostpad will be @template.
 
 Will ref the target.</doc>
+        <source-position filename="gst/gstghostpad.h" line="124"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">a new #GstPad, or %NULL in
+          <doc xml:space="preserve"
+               filename="gst/gstghostpad.c"
+               line="731">a new #GstPad, or %NULL in
 case of an error.</doc>
           <type name="Pad" c:type="GstPad*"/>
         </return-value>
@@ -18450,28 +27651,39 @@ case of an error.</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">the name of the new pad, or %NULL to assign a default name.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstghostpad.c"
+                 line="722">the name of the new pad, or %NULL to assign a default name.</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="target" transfer-ownership="none">
-            <doc xml:space="preserve">the pad to ghost.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstghostpad.c"
+                 line="723">the pad to ghost.</doc>
             <type name="Pad" c:type="GstPad*"/>
           </parameter>
           <parameter name="templ" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstPadTemplate to use on the ghostpad.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstghostpad.c"
+                 line="724">the #GstPadTemplate to use on the ghostpad.</doc>
             <type name="PadTemplate" c:type="GstPadTemplate*"/>
           </parameter>
         </parameters>
       </constructor>
       <constructor name="new_no_target"
                    c:identifier="gst_ghost_pad_new_no_target">
-        <doc xml:space="preserve">Create a new ghostpad without a target with the given direction.
+        <doc xml:space="preserve"
+             filename="gst/gstghostpad.c"
+             line="652">Create a new ghostpad without a target with the given direction.
 A target can be set on the ghostpad later with the
 gst_ghost_pad_set_target() function.
 
 The created ghostpad will not have a padtemplate.</doc>
+        <source-position filename="gst/gstghostpad.h" line="121"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">a new #GstPad, or %NULL in
+          <doc xml:space="preserve"
+               filename="gst/gstghostpad.c"
+               line="663">a new #GstPad, or %NULL in
 case of an error.</doc>
           <type name="Pad" c:type="GstPad*"/>
         </return-value>
@@ -18480,21 +27692,30 @@ case of an error.</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">the name of the new pad, or %NULL to assign a default name.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstghostpad.c"
+                 line="654">the name of the new pad, or %NULL to assign a default name.</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="dir" transfer-ownership="none">
-            <doc xml:space="preserve">the direction of the ghostpad</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstghostpad.c"
+                 line="655">the direction of the ghostpad</doc>
             <type name="PadDirection" c:type="GstPadDirection"/>
           </parameter>
         </parameters>
       </constructor>
       <constructor name="new_no_target_from_template"
                    c:identifier="gst_ghost_pad_new_no_target_from_template">
-        <doc xml:space="preserve">Create a new ghostpad based on @templ, without setting a target. The
+        <doc xml:space="preserve"
+             filename="gst/gstghostpad.c"
+             line="766">Create a new ghostpad based on @templ, without setting a target. The
 direction will be taken from the @templ.</doc>
+        <source-position filename="gst/gstghostpad.h" line="127"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">a new #GstPad, or %NULL in
+          <doc xml:space="preserve"
+               filename="gst/gstghostpad.c"
+               line="774">a new #GstPad, or %NULL in
 case of an error.</doc>
           <type name="Pad" c:type="GstPad*"/>
         </return-value>
@@ -18503,126 +27724,179 @@ case of an error.</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">the name of the new pad, or %NULL to assign a default name</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstghostpad.c"
+                 line="768">the name of the new pad, or %NULL to assign a default name</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="templ" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstPadTemplate to create the ghostpad from.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstghostpad.c"
+                 line="769">the #GstPadTemplate to create the ghostpad from.</doc>
             <type name="PadTemplate" c:type="GstPadTemplate*"/>
           </parameter>
         </parameters>
       </constructor>
       <function name="activate_mode_default"
                 c:identifier="gst_ghost_pad_activate_mode_default">
-        <doc xml:space="preserve">Invoke the default activate mode function of a ghost pad.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the operation was successful.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstghostpad.c"
+             line="422">Invoke the default activate mode function of a ghost pad.</doc>
+        <source-position filename="gst/gstghostpad.h" line="139"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstghostpad.c"
+               line="431">%TRUE if the operation was successful.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstPad to activate or deactivate.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstghostpad.c"
+                 line="424">the #GstPad to activate or deactivate.</doc>
             <type name="Pad" c:type="GstPad*"/>
           </parameter>
           <parameter name="parent"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">the parent of @pad or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstghostpad.c"
+                 line="425">the parent of @pad or %NULL</doc>
             <type name="Object" c:type="GstObject*"/>
           </parameter>
           <parameter name="mode" transfer-ownership="none">
-            <doc xml:space="preserve">the requested activation mode</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstghostpad.c"
+                 line="426">the requested activation mode</doc>
             <type name="PadMode" c:type="GstPadMode"/>
           </parameter>
           <parameter name="active" transfer-ownership="none">
-            <doc xml:space="preserve">whether the pad should be active or not.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstghostpad.c"
+                 line="427">whether the pad should be active or not.</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </function>
       <function name="internal_activate_mode_default"
                 c:identifier="gst_ghost_pad_internal_activate_mode_default">
-        <doc xml:space="preserve">Invoke the default activate mode function of a proxy pad that is
+        <doc xml:space="preserve"
+             filename="gst/gstghostpad.c"
+             line="331">Invoke the default activate mode function of a proxy pad that is
 owned by a ghost pad.</doc>
+        <source-position filename="gst/gstghostpad.h" line="142"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the operation was successful.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstghostpad.c"
+               line="341">%TRUE if the operation was successful.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstPad to activate or deactivate.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstghostpad.c"
+                 line="333">the #GstPad to activate or deactivate.</doc>
             <type name="Pad" c:type="GstPad*"/>
           </parameter>
           <parameter name="parent"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">the parent of @pad or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstghostpad.c"
+                 line="334">the parent of @pad or %NULL</doc>
             <type name="Object" c:type="GstObject*"/>
           </parameter>
           <parameter name="mode" transfer-ownership="none">
-            <doc xml:space="preserve">the requested activation mode</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstghostpad.c"
+                 line="335">the requested activation mode</doc>
             <type name="PadMode" c:type="GstPadMode"/>
           </parameter>
           <parameter name="active" transfer-ownership="none">
-            <doc xml:space="preserve">whether the pad should be active or not.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstghostpad.c"
+                 line="336">whether the pad should be active or not.</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </function>
       <method name="construct" c:identifier="gst_ghost_pad_construct">
-        <doc xml:space="preserve">Finish initialization of a newly allocated ghost pad.
+        <doc xml:space="preserve"
+             filename="gst/gstghostpad.c"
+             line="519">Finish initialization of a newly allocated ghost pad.
 
 This function is most useful in language bindings and when subclassing
 #GstGhostPad; plugin and application developers normally will not call this
 function. Call this function directly after a call to g_object_new
 (GST_TYPE_GHOST_PAD, "direction", @dir, ..., NULL).</doc>
+        <source-position filename="gst/gstghostpad.h" line="136"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the construction succeeds, %FALSE otherwise.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstghostpad.c"
+               line="530">%TRUE if the construction succeeds, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="gpad" transfer-ownership="none">
-            <doc xml:space="preserve">the newly allocated ghost pad</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstghostpad.c"
+                 line="521">the newly allocated ghost pad</doc>
             <type name="GhostPad" c:type="GstGhostPad*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_target" c:identifier="gst_ghost_pad_get_target">
-        <doc xml:space="preserve">Get the target pad of @gpad. Unref target pad after usage.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstghostpad.c"
+             line="791">Get the target pad of @gpad. Unref target pad after usage.</doc>
+        <source-position filename="gst/gstghostpad.h" line="130"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">the target #GstPad, can be
+          <doc xml:space="preserve"
+               filename="gst/gstghostpad.c"
+               line="797">the target #GstPad, can be
 %NULL if the ghostpad has no target set. Unref target pad after
 usage.</doc>
           <type name="Pad" c:type="GstPad*"/>
         </return-value>
         <parameters>
           <instance-parameter name="gpad" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstGhostPad</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstghostpad.c"
+                 line="793">the #GstGhostPad</doc>
             <type name="GhostPad" c:type="GstGhostPad*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="set_target" c:identifier="gst_ghost_pad_set_target">
-        <doc xml:space="preserve">Set the new target of the ghostpad @gpad. Any existing target
+        <doc xml:space="preserve"
+             filename="gst/gstghostpad.c"
+             line="815">Set the new target of the ghostpad @gpad. Any existing target
 is unlinked and links to the new target are established. if @newtarget is
 %NULL the target will be cleared.</doc>
+        <source-position filename="gst/gstghostpad.h" line="133"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the new target could be set. This function
+          <doc xml:space="preserve"
+               filename="gst/gstghostpad.c"
+               line="824">%TRUE if the new target could be set. This function
     can return %FALSE when the internal pads could not be linked.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="gpad" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstGhostPad</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstghostpad.c"
+                 line="817">the #GstGhostPad</doc>
             <type name="GhostPad" c:type="GstGhostPad*"/>
           </instance-parameter>
           <parameter name="newtarget"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">the new pad target</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstghostpad.c"
+                 line="818">the new pad target</doc>
             <type name="Pad" c:type="GstPad*"/>
           </parameter>
         </parameters>
@@ -18637,35 +27911,862 @@ is unlinked and links to the new target are established. if @newtarget is
     <record name="GhostPadClass"
             c:type="GstGhostPadClass"
             glib:is-gtype-struct-for="GhostPad">
+      <source-position filename="gst/gstghostpad.h" line="111"/>
       <field name="parent_class">
         <type name="ProxyPadClass" c:type="GstProxyPadClass"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
     </record>
     <record name="GhostPadPrivate" c:type="GstGhostPadPrivate" disguised="1">
+      <source-position filename="gst/gstghostpad.h" line="94"/>
     </record>
+    <function-macro name="IS_ALLOCATOR"
+                    c:identifier="GST_IS_ALLOCATOR"
+                    introspectable="0">
+      <source-position filename="gst/gstallocator.h" line="35"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_ALLOCATOR_CLASS"
+                    c:identifier="GST_IS_ALLOCATOR_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gstallocator.h" line="36"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_BIN" c:identifier="GST_IS_BIN" introspectable="0">
+      <source-position filename="gst/gstbin.h" line="34"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_BIN_CLASS"
+                    c:identifier="GST_IS_BIN_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gstbin.h" line="35"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_BUFFER"
+                    c:identifier="GST_IS_BUFFER"
+                    introspectable="0">
+      <source-position filename="gst/gstbuffer.h" line="42"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_BUFFER_LIST"
+                    c:identifier="GST_IS_BUFFER_LIST"
+                    introspectable="0">
+      <source-position filename="gst/gstbufferlist.h" line="33"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_BUFFER_POOL"
+                    c:identifier="GST_IS_BUFFER_POOL"
+                    introspectable="0">
+      <source-position filename="gst/gstbufferpool.h" line="36"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_BUFFER_POOL_CLASS"
+                    c:identifier="GST_IS_BUFFER_POOL_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gstbufferpool.h" line="37"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_BUS" c:identifier="GST_IS_BUS" introspectable="0">
+      <source-position filename="gst/gstbus.h" line="37"/>
+      <parameters>
+        <parameter name="bus">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_BUS_CLASS"
+                    c:identifier="GST_IS_BUS_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gstbus.h" line="39"/>
+      <parameters>
+        <parameter name="bclass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_CAPS"
+                    c:identifier="GST_IS_CAPS"
+                    introspectable="0">
+      <source-position filename="gst/gstcaps.h" line="34"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_CAPS_FEATURES"
+                    c:identifier="GST_IS_CAPS_FEATURES"
+                    introspectable="0">
+      <source-position filename="gst/gstcapsfeatures.h" line="36"/>
+      <parameters>
+        <parameter name="object">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_CHILD_PROXY"
+                    c:identifier="GST_IS_CHILD_PROXY"
+                    introspectable="0">
+      <source-position filename="gst/gstchildproxy.h" line="33"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_CLOCK"
+                    c:identifier="GST_IS_CLOCK"
+                    introspectable="0">
+      <source-position filename="gst/gstclock.h" line="35"/>
+      <parameters>
+        <parameter name="clock">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_CLOCK_CLASS"
+                    c:identifier="GST_IS_CLOCK_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gstclock.h" line="37"/>
+      <parameters>
+        <parameter name="cclass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_CONTEXT"
+                    c:identifier="GST_IS_CONTEXT"
+                    introspectable="0">
+      <source-position filename="gst/gstcontext.h" line="39"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_CONTROL_BINDING"
+                    c:identifier="GST_IS_CONTROL_BINDING"
+                    introspectable="0">
+      <source-position filename="gst/gstcontrolbinding.h" line="37"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_CONTROL_BINDING_CLASS"
+                    c:identifier="GST_IS_CONTROL_BINDING_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gstcontrolbinding.h" line="39"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_CONTROL_SOURCE"
+                    c:identifier="GST_IS_CONTROL_SOURCE"
+                    introspectable="0">
+      <source-position filename="gst/gstcontrolsource.h" line="39"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_CONTROL_SOURCE_CLASS"
+                    c:identifier="GST_IS_CONTROL_SOURCE_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gstcontrolsource.h" line="41"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_DEVICE"
+                    c:identifier="GST_IS_DEVICE"
+                    introspectable="0">
+      <source-position filename="gst/gstdevice.h" line="38"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_DEVICE_CLASS"
+                    c:identifier="GST_IS_DEVICE_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gstdevice.h" line="39"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_DEVICE_MONITOR"
+                    c:identifier="GST_IS_DEVICE_MONITOR"
+                    introspectable="0">
+      <source-position filename="gst/gstdevicemonitor.h" line="38"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_DEVICE_MONITOR_CLASS"
+                    c:identifier="GST_IS_DEVICE_MONITOR_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gstdevicemonitor.h" line="39"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_DEVICE_PROVIDER"
+                    c:identifier="GST_IS_DEVICE_PROVIDER"
+                    introspectable="0">
+      <source-position filename="gst/gstdeviceprovider.h" line="38"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_DEVICE_PROVIDER_CLASS"
+                    c:identifier="GST_IS_DEVICE_PROVIDER_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gstdeviceprovider.h" line="39"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_DEVICE_PROVIDER_FACTORY"
+                    c:identifier="GST_IS_DEVICE_PROVIDER_FACTORY"
+                    introspectable="0">
+      <source-position filename="gst/gstdeviceproviderfactory.h" line="59"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_DEVICE_PROVIDER_FACTORY_CLASS"
+                    c:identifier="GST_IS_DEVICE_PROVIDER_FACTORY_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gstdeviceproviderfactory.h" line="60"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_DYNAMIC_TYPE_FACTORY"
+                    c:identifier="GST_IS_DYNAMIC_TYPE_FACTORY"
+                    introspectable="0">
+      <source-position filename="gst/gstdynamictypefactory.h" line="44"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_DYNAMIC_TYPE_FACTORY_CLASS"
+                    c:identifier="GST_IS_DYNAMIC_TYPE_FACTORY_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gstdynamictypefactory.h" line="45"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_ELEMENT"
+                    c:identifier="GST_IS_ELEMENT"
+                    introspectable="0">
+      <source-position filename="gst/gstelement.h" line="59"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_ELEMENT_CLASS"
+                    c:identifier="GST_IS_ELEMENT_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gstelement.h" line="60"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_ELEMENT_FACTORY"
+                    c:identifier="GST_IS_ELEMENT_FACTORY"
+                    introspectable="0">
+      <source-position filename="gst/gstelementfactory.h" line="49"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_ELEMENT_FACTORY_CLASS"
+                    c:identifier="GST_IS_ELEMENT_FACTORY_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gstelementfactory.h" line="50"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_EVENT"
+                    c:identifier="GST_IS_EVENT"
+                    introspectable="0">
+      <source-position filename="gst/gstevent.h" line="236"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_GHOST_PAD"
+                    c:identifier="GST_IS_GHOST_PAD"
+                    introspectable="0">
+      <source-position filename="gst/gstghostpad.h" line="82"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_GHOST_PAD_CLASS"
+                    c:identifier="GST_IS_GHOST_PAD_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gstghostpad.h" line="83"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_MESSAGE"
+                    c:identifier="GST_IS_MESSAGE"
+                    introspectable="0">
+      <source-position filename="gst/gstmessage.h" line="200"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_MINI_OBJECT_TYPE"
+                    c:identifier="GST_IS_MINI_OBJECT_TYPE"
+                    introspectable="0">
+      <source-position filename="gst/gstminiobject.h" line="32"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+        <parameter name="type">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_OBJECT"
+                    c:identifier="GST_IS_OBJECT"
+                    introspectable="0">
+      <source-position filename="gst/gstobject.h" line="34"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_OBJECT_CLASS"
+                    c:identifier="GST_IS_OBJECT_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gstobject.h" line="35"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_PAD" c:identifier="GST_IS_PAD" introspectable="0">
+      <source-position filename="gst/gstpad.h" line="84"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_PAD_CLASS"
+                    c:identifier="GST_IS_PAD_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gstpad.h" line="85"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_PAD_TEMPLATE"
+                    c:identifier="GST_IS_PAD_TEMPLATE"
+                    introspectable="0">
+      <source-position filename="gst/gstpadtemplate.h" line="47"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_PAD_TEMPLATE_CLASS"
+                    c:identifier="GST_IS_PAD_TEMPLATE_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gstpadtemplate.h" line="48"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_PARAM_SPEC_ARRAY_LIST"
+                    c:identifier="GST_IS_PARAM_SPEC_ARRAY_LIST"
+                    introspectable="0">
+      <source-position filename="gst/gstparamspecs.h" line="115"/>
+      <parameters>
+        <parameter name="pspec">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_PARAM_SPEC_FRACTION"
+                    c:identifier="GST_IS_PARAM_SPEC_FRACTION"
+                    introspectable="0">
+      <source-position filename="gst/gstparamspecs.h" line="104"/>
+      <parameters>
+        <parameter name="pspec">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_PIPELINE"
+                    c:identifier="GST_IS_PIPELINE"
+                    introspectable="0">
+      <source-position filename="gst/gstpipeline.h" line="33"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_PIPELINE_CLASS"
+                    c:identifier="GST_IS_PIPELINE_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gstpipeline.h" line="35"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_PLUGIN"
+                    c:identifier="GST_IS_PLUGIN"
+                    introspectable="0">
+      <source-position filename="gst/gstplugin.h" line="189"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_PLUGIN_CLASS"
+                    c:identifier="GST_IS_PLUGIN_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gstplugin.h" line="190"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_PLUGIN_FEATURE"
+                    c:identifier="GST_IS_PLUGIN_FEATURE"
+                    introspectable="0">
+      <source-position filename="gst/gstpluginfeature.h" line="35"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_PLUGIN_FEATURE_CLASS"
+                    c:identifier="GST_IS_PLUGIN_FEATURE_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gstpluginfeature.h" line="37"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_PRESET"
+                    c:identifier="GST_IS_PRESET"
+                    introspectable="0">
+      <source-position filename="gst/gstpreset.h" line="32"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_PROXY_PAD"
+                    c:identifier="GST_IS_PROXY_PAD"
+                    introspectable="0">
+      <source-position filename="gst/gstghostpad.h" line="35"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_PROXY_PAD_CLASS"
+                    c:identifier="GST_IS_PROXY_PAD_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gstghostpad.h" line="36"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_QUERY"
+                    c:identifier="GST_IS_QUERY"
+                    introspectable="0">
+      <source-position filename="gst/gstquery.h" line="134"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_REGISTRY"
+                    c:identifier="GST_IS_REGISTRY"
+                    introspectable="0">
+      <source-position filename="gst/gstregistry.h" line="35"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_REGISTRY_CLASS"
+                    c:identifier="GST_IS_REGISTRY_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gstregistry.h" line="37"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_SAMPLE"
+                    c:identifier="GST_IS_SAMPLE"
+                    introspectable="0">
+      <source-position filename="gst/gstsample.h" line="37"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_STREAM"
+                    c:identifier="GST_IS_STREAM"
+                    introspectable="0">
+      <source-position filename="gst/gststreams.h" line="33"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_STREAM_CLASS"
+                    c:identifier="GST_IS_STREAM_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gststreams.h" line="34"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_STREAM_COLLECTION"
+                    c:identifier="GST_IS_STREAM_COLLECTION"
+                    introspectable="0">
+      <source-position filename="gst/gststreamcollection.h" line="33"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_STREAM_COLLECTION_CLASS"
+                    c:identifier="GST_IS_STREAM_COLLECTION_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gststreamcollection.h" line="34"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_STRUCTURE"
+                    c:identifier="GST_IS_STRUCTURE"
+                    introspectable="0">
+      <source-position filename="gst/gststructure.h" line="36"/>
+      <parameters>
+        <parameter name="object">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_SYSTEM_CLOCK"
+                    c:identifier="GST_IS_SYSTEM_CLOCK"
+                    introspectable="0">
+      <source-position filename="gst/gstsystemclock.h" line="35"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_SYSTEM_CLOCK_CLASS"
+                    c:identifier="GST_IS_SYSTEM_CLOCK_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gstsystemclock.h" line="37"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_TAG_LIST"
+                    c:identifier="GST_IS_TAG_LIST"
+                    introspectable="0">
+      <source-position filename="gst/gsttaglist.h" line="112"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_TAG_SETTER"
+                    c:identifier="GST_IS_TAG_SETTER"
+                    introspectable="0">
+      <source-position filename="gst/gsttagsetter.h" line="31"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_TASK"
+                    c:identifier="GST_IS_TASK"
+                    introspectable="0">
+      <source-position filename="gst/gsttask.h" line="43"/>
+      <parameters>
+        <parameter name="task">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_TASK_CLASS"
+                    c:identifier="GST_IS_TASK_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gsttask.h" line="45"/>
+      <parameters>
+        <parameter name="tclass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_TASK_POOL"
+                    c:identifier="GST_IS_TASK_POOL"
+                    introspectable="0">
+      <source-position filename="gst/gsttaskpool.h" line="32"/>
+      <parameters>
+        <parameter name="pool">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_TASK_POOL_CLASS"
+                    c:identifier="GST_IS_TASK_POOL_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gsttaskpool.h" line="34"/>
+      <parameters>
+        <parameter name="pclass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_TOC_SETTER"
+                    c:identifier="GST_IS_TOC_SETTER"
+                    introspectable="0">
+      <source-position filename="gst/gsttocsetter.h" line="31"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_TRACER"
+                    c:identifier="GST_IS_TRACER"
+                    introspectable="0">
+      <source-position filename="gst/gsttracer.h" line="39"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_TRACER_CLASS"
+                    c:identifier="GST_IS_TRACER_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gsttracer.h" line="40"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_TRACER_FACTORY"
+                    c:identifier="GST_IS_TRACER_FACTORY"
+                    introspectable="0">
+      <source-position filename="gst/gsttracerfactory.h" line="33"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_TRACER_FACTORY_CLASS"
+                    c:identifier="GST_IS_TRACER_FACTORY_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gsttracerfactory.h" line="35"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_TRACER_RECORD"
+                    c:identifier="GST_IS_TRACER_RECORD"
+                    introspectable="0">
+      <source-position filename="gst/gsttracerrecord.h" line="40"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_TRACER_RECORD_CLASS"
+                    c:identifier="GST_IS_TRACER_RECORD_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gsttracerrecord.h" line="41"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_TYPE_FIND_FACTORY"
+                    c:identifier="GST_IS_TYPE_FIND_FACTORY"
+                    introspectable="0">
+      <source-position filename="gst/gsttypefindfactory.h" line="34"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_TYPE_FIND_FACTORY_CLASS"
+                    c:identifier="GST_IS_TYPE_FIND_FACTORY_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gsttypefindfactory.h" line="36"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_URI" c:identifier="GST_IS_URI" introspectable="0">
+      <source-position filename="gst/gsturi.h" line="189"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_URI_HANDLER"
+                    c:identifier="GST_IS_URI_HANDLER"
+                    introspectable="0">
+      <source-position filename="gst/gsturi.h" line="94"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="ITERATOR"
+                    c:identifier="GST_ITERATOR"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstiterator.h"
+           line="153">Macro to cast to a #GstIterator</doc>
+      <source-position filename="gst/gstiterator.h" line="159"/>
+      <parameters>
+        <parameter name="it">
+          <doc xml:space="preserve"
+               filename="gst/gstiterator.h"
+               line="155">the #GstIterator value</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="ITERATOR_COOKIE"
+                    c:identifier="GST_ITERATOR_COOKIE"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstiterator.h"
+           line="167">Macro to get the cookie of a #GstIterator. The cookie of the
+iterator is the value of the master cookie when the iterator
+was created.
+Whenever the iterator is iterated, the value is compared to the
+value of the master cookie. If they are different, a concurrent
+modification happened to the iterator and a resync is needed.</doc>
+      <source-position filename="gst/gstiterator.h" line="178"/>
+      <parameters>
+        <parameter name="it">
+          <doc xml:space="preserve"
+               filename="gst/gstiterator.h"
+               line="169">the #GstIterator to get the cookie of</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="ITERATOR_LOCK"
+                    c:identifier="GST_ITERATOR_LOCK"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstiterator.h"
+           line="160">Macro to get the lock protecting the datastructure being iterated.</doc>
+      <source-position filename="gst/gstiterator.h" line="166"/>
+      <parameters>
+        <parameter name="it">
+          <doc xml:space="preserve"
+               filename="gst/gstiterator.h"
+               line="162">the #GstIterator to get the lock of</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="ITERATOR_ORIG_COOKIE"
+                    c:identifier="GST_ITERATOR_ORIG_COOKIE"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstiterator.h"
+           line="179">Macro to get a pointer to where the master cookie is stored. The
+master cookie protects the structure being iterated and gets updated
+whenever the datastructure changes.</doc>
+      <source-position filename="gst/gstiterator.h" line="187"/>
+      <parameters>
+        <parameter name="it">
+          <doc xml:space="preserve"
+               filename="gst/gstiterator.h"
+               line="181">the #GstIterator to get the master cookie of</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
     <class name="Int64Range"
            c:symbol-prefix="int64_range"
            glib:type-name="GstInt64Range"
            glib:get-type="gst_int64_range_get_type"
            glib:fundamental="1">
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.h"
+           line="244">A fundamental type that describes a #gint64 range</doc>
     </class>
     <class name="IntRange"
            c:symbol-prefix="int_range"
            glib:type-name="GstIntRange"
            glib:get-type="gst_int_range_get_type"
            glib:fundamental="1">
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.h"
+           line="227">A fundamental type that describes a #gint range</doc>
     </class>
     <record name="Iterator"
             c:type="GstIterator"
             glib:type-name="GstIterator"
             glib:get-type="gst_iterator_get_type"
             c:symbol-prefix="iterator">
-      <doc xml:space="preserve">A GstIterator is used to retrieve multiple objects from another object in
+      <doc xml:space="preserve"
+           filename="gst/gstiterator.c"
+           line="23">A GstIterator is used to retrieve multiple objects from another object in
 a threadsafe way.
 
 Various GStreamer objects provide access to their internal structures using
@@ -18703,111 +28804,157 @@ The basic use pattern of an iterator is as follows:
   g_value_unset (&amp;amp;item);
   gst_iterator_free (it);
 ]|</doc>
+      <source-position filename="gst/gstiterator.h" line="226"/>
       <field name="copy" writable="1">
-        <doc xml:space="preserve">The function to copy the iterator</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstiterator.h"
+             line="191">The function to copy the iterator</doc>
         <type name="IteratorCopyFunction" c:type="GstIteratorCopyFunction"/>
       </field>
       <field name="next" writable="1">
-        <doc xml:space="preserve">The function to get the next item in the iterator</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstiterator.h"
+             line="192">The function to get the next item in the iterator</doc>
         <type name="IteratorNextFunction" c:type="GstIteratorNextFunction"/>
       </field>
       <field name="item" writable="1">
-        <doc xml:space="preserve">The function to be called for each item retrieved</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstiterator.h"
+             line="193">The function to be called for each item retrieved</doc>
         <type name="IteratorItemFunction" c:type="GstIteratorItemFunction"/>
       </field>
       <field name="resync" writable="1">
-        <doc xml:space="preserve">The function to call when a resync is needed.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstiterator.h"
+             line="194">The function to call when a resync is needed.</doc>
         <type name="IteratorResyncFunction"
               c:type="GstIteratorResyncFunction"/>
       </field>
       <field name="free" writable="1">
-        <doc xml:space="preserve">The function to call when the iterator is freed</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstiterator.h"
+             line="195">The function to call when the iterator is freed</doc>
         <type name="IteratorFreeFunction" c:type="GstIteratorFreeFunction"/>
       </field>
       <field name="pushed" writable="1">
-        <doc xml:space="preserve">The iterator that is currently pushed with gst_iterator_push()</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstiterator.h"
+             line="196">The iterator that is currently pushed with gst_iterator_push()</doc>
         <type name="Iterator" c:type="GstIterator*"/>
       </field>
       <field name="type" writable="1">
-        <doc xml:space="preserve">The type of the object that this iterator will return</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstiterator.h"
+             line="197">The type of the object that this iterator will return</doc>
         <type name="GType" c:type="GType"/>
       </field>
       <field name="lock" writable="1">
-        <doc xml:space="preserve">The lock protecting the data structure and the cookie.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstiterator.h"
+             line="198">The lock protecting the data structure and the cookie.</doc>
         <type name="GLib.Mutex" c:type="GMutex*"/>
       </field>
       <field name="cookie" writable="1">
-        <doc xml:space="preserve">The cookie; the value of the master_cookie when this iterator was
+        <doc xml:space="preserve"
+             filename="gst/gstiterator.h"
+             line="199">The cookie; the value of the master_cookie when this iterator was
          created.</doc>
         <type name="guint32" c:type="guint32"/>
       </field>
       <field name="master_cookie" writable="1">
-        <doc xml:space="preserve">A pointer to the master cookie.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstiterator.h"
+             line="201">A pointer to the master cookie.</doc>
         <type name="guint32" c:type="guint32*"/>
       </field>
       <field name="size" writable="1">
-        <doc xml:space="preserve">the size of the iterator</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstiterator.h"
+             line="202">the size of the iterator</doc>
         <type name="guint" c:type="guint"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
       <constructor name="new"
                    c:identifier="gst_iterator_new"
                    introspectable="0">
-        <doc xml:space="preserve">Create a new iterator. This function is mainly used for objects
+        <doc xml:space="preserve"
+             filename="gst/gstiterator.c"
+             line="120">Create a new iterator. This function is mainly used for objects
 implementing the next/resync/free function to iterate a data structure.
 
 For each item retrieved, the @item function is called with the lock
 held. The @free function is called when the iterator is freed.</doc>
+        <source-position filename="gst/gstiterator.h" line="234"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the new #GstIterator.
+          <doc xml:space="preserve"
+               filename="gst/gstiterator.c"
+               line="139">the new #GstIterator.
 
 MT safe.</doc>
           <type name="Iterator" c:type="GstIterator*"/>
         </return-value>
         <parameters>
           <parameter name="size" transfer-ownership="none">
-            <doc xml:space="preserve">the size of the iterator structure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstiterator.c"
+                 line="122">the size of the iterator structure</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="type" transfer-ownership="none">
-            <doc xml:space="preserve">#GType of children</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstiterator.c"
+                 line="123">#GType of children</doc>
             <type name="GType" c:type="GType"/>
           </parameter>
           <parameter name="lock" transfer-ownership="none">
-            <doc xml:space="preserve">pointer to a #GMutex.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstiterator.c"
+                 line="124">pointer to a #GMutex.</doc>
             <type name="GLib.Mutex" c:type="GMutex*"/>
           </parameter>
           <parameter name="master_cookie" transfer-ownership="none">
-            <doc xml:space="preserve">pointer to a guint32 that is changed when the items in the
+            <doc xml:space="preserve"
+                 filename="gst/gstiterator.c"
+                 line="125">pointer to a guint32 that is changed when the items in the
    iterator changed.</doc>
             <type name="guint32" c:type="guint32*"/>
           </parameter>
           <parameter name="copy" transfer-ownership="none">
-            <doc xml:space="preserve">copy function</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstiterator.c"
+                 line="127">copy function</doc>
             <type name="IteratorCopyFunction"
                   c:type="GstIteratorCopyFunction"/>
           </parameter>
           <parameter name="next" transfer-ownership="none">
-            <doc xml:space="preserve">function to get next item</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstiterator.c"
+                 line="128">function to get next item</doc>
             <type name="IteratorNextFunction"
                   c:type="GstIteratorNextFunction"/>
           </parameter>
           <parameter name="item" transfer-ownership="none">
-            <doc xml:space="preserve">function to call on each item retrieved</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstiterator.c"
+                 line="129">function to call on each item retrieved</doc>
             <type name="IteratorItemFunction"
                   c:type="GstIteratorItemFunction"/>
           </parameter>
           <parameter name="resync" transfer-ownership="none">
-            <doc xml:space="preserve">function to resync the iterator</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstiterator.c"
+                 line="130">function to resync the iterator</doc>
             <type name="IteratorResyncFunction"
                   c:type="GstIteratorResyncFunction"/>
           </parameter>
           <parameter name="free" transfer-ownership="none">
-            <doc xml:space="preserve">function to free the iterator</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstiterator.c"
+                 line="131">function to free the iterator</doc>
             <type name="IteratorFreeFunction"
                   c:type="GstIteratorFreeFunction"/>
           </parameter>
@@ -18816,7 +28963,9 @@ MT safe.</doc>
       <constructor name="new_list"
                    c:identifier="gst_iterator_new_list"
                    introspectable="0">
-        <doc xml:space="preserve">Create a new iterator designed for iterating @list.
+        <doc xml:space="preserve"
+             filename="gst/gstiterator.c"
+             line="218">Create a new iterator designed for iterating @list.
 
 The list you iterate is usually part of a data structure @owner and is
 protected with @lock.
@@ -18828,107 +28977,151 @@ When a concurrent update to the list is performed, usually by @owner while
 holding @lock, @master_cookie will be updated. The iterator implementation
 will notice the update of the cookie and will return %GST_ITERATOR_RESYNC to
 the user of the iterator in the next call to gst_iterator_next().</doc>
+        <source-position filename="gst/gstiterator.h" line="244"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the new #GstIterator for @list.
+          <doc xml:space="preserve"
+               filename="gst/gstiterator.c"
+               line="241">the new #GstIterator for @list.
 
 MT safe.</doc>
           <type name="Iterator" c:type="GstIterator*"/>
         </return-value>
         <parameters>
           <parameter name="type" transfer-ownership="none">
-            <doc xml:space="preserve">#GType of elements</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstiterator.c"
+                 line="220">#GType of elements</doc>
             <type name="GType" c:type="GType"/>
           </parameter>
           <parameter name="lock" transfer-ownership="none">
-            <doc xml:space="preserve">pointer to a #GMutex protecting the list.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstiterator.c"
+                 line="221">pointer to a #GMutex protecting the list.</doc>
             <type name="GLib.Mutex" c:type="GMutex*"/>
           </parameter>
           <parameter name="master_cookie" transfer-ownership="none">
-            <doc xml:space="preserve">pointer to a guint32 that is incremented when the list
+            <doc xml:space="preserve"
+                 filename="gst/gstiterator.c"
+                 line="222">pointer to a guint32 that is incremented when the list
     is changed.</doc>
             <type name="guint32" c:type="guint32*"/>
           </parameter>
           <parameter name="list" transfer-ownership="none">
-            <doc xml:space="preserve">pointer to the list</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstiterator.c"
+                 line="224">pointer to the list</doc>
             <type name="GLib.List" c:type="GList**">
               <type name="gpointer" c:type="gpointer"/>
             </type>
           </parameter>
           <parameter name="owner" transfer-ownership="none">
-            <doc xml:space="preserve">object owning the list</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstiterator.c"
+                 line="225">object owning the list</doc>
             <type name="GObject.Object" c:type="GObject*"/>
           </parameter>
           <parameter name="item" transfer-ownership="none">
-            <doc xml:space="preserve">function to call on each item retrieved</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstiterator.c"
+                 line="226">function to call on each item retrieved</doc>
             <type name="IteratorItemFunction"
                   c:type="GstIteratorItemFunction"/>
           </parameter>
         </parameters>
       </constructor>
       <constructor name="new_single" c:identifier="gst_iterator_new_single">
-        <doc xml:space="preserve">This #GstIterator is a convenient iterator for the common
+        <doc xml:space="preserve"
+             filename="gst/gstiterator.c"
+             line="801">This #GstIterator is a convenient iterator for the common
 case where a #GstIterator needs to be returned but only
 a single object has to be considered. This happens often
 for the #GstPadIterIntLinkFunction.</doc>
+        <source-position filename="gst/gstiterator.h" line="251"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the new #GstIterator for @object.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstiterator.c"
+               line="811">the new #GstIterator for @object.</doc>
           <type name="Iterator" c:type="GstIterator*"/>
         </return-value>
         <parameters>
           <parameter name="type" transfer-ownership="none">
-            <doc xml:space="preserve">#GType of the passed object</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstiterator.c"
+                 line="803">#GType of the passed object</doc>
             <type name="GType" c:type="GType"/>
           </parameter>
           <parameter name="object" transfer-ownership="none">
-            <doc xml:space="preserve">object that this iterator should return</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstiterator.c"
+                 line="804">object that this iterator should return</doc>
             <type name="GObject.Value" c:type="const GValue*"/>
           </parameter>
         </parameters>
       </constructor>
       <method name="copy" c:identifier="gst_iterator_copy">
-        <doc xml:space="preserve">Copy the iterator and its state.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstiterator.c"
+             line="73">Copy the iterator and its state.</doc>
+        <source-position filename="gst/gstiterator.h" line="254"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new copy of @it.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstiterator.c"
+               line="79">a new copy of @it.</doc>
           <type name="Iterator" c:type="GstIterator*"/>
         </return-value>
         <parameters>
           <instance-parameter name="it" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstIterator</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstiterator.c"
+                 line="75">a #GstIterator</doc>
             <type name="Iterator" c:type="const GstIterator*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="filter" c:identifier="gst_iterator_filter">
-        <doc xml:space="preserve">Create a new iterator from an existing iterator. The new iterator
+        <doc xml:space="preserve"
+             filename="gst/gstiterator.c"
+             line="527">Create a new iterator from an existing iterator. The new iterator
 will only return those elements that match the given compare function @func.
 The first parameter that is passed to @func is the #GValue of the current
 iterator element and the second parameter is @user_data. @func should
 return 0 for elements that should be included in the filtered iterator.
 
 When this iterator is freed, @it will also be freed.</doc>
+        <source-position filename="gst/gstiterator.h" line="273"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new #GstIterator.
+          <doc xml:space="preserve"
+               filename="gst/gstiterator.c"
+               line="541">a new #GstIterator.
 
 MT safe.</doc>
           <type name="Iterator" c:type="GstIterator*"/>
         </return-value>
         <parameters>
           <instance-parameter name="it" transfer-ownership="none">
-            <doc xml:space="preserve">The #GstIterator to filter</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstiterator.c"
+                 line="529">The #GstIterator to filter</doc>
             <type name="Iterator" c:type="GstIterator*"/>
           </instance-parameter>
           <parameter name="func" transfer-ownership="none" scope="call">
-            <doc xml:space="preserve">the compare function to select elements</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstiterator.c"
+                 line="530">the compare function to select elements</doc>
             <type name="GLib.CompareFunc" c:type="GCompareFunc"/>
           </parameter>
           <parameter name="user_data" transfer-ownership="none">
-            <doc xml:space="preserve">user data passed to the compare function</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstiterator.c"
+                 line="531">user data passed to the compare function</doc>
             <type name="GObject.Value" c:type="const GValue*"/>
           </parameter>
         </parameters>
       </method>
       <method name="find_custom" c:identifier="gst_iterator_find_custom">
-        <doc xml:space="preserve">Find the first element in @it that matches the compare function @func.
+        <doc xml:space="preserve"
+             filename="gst/gstiterator.c"
+             line="702">Find the first element in @it that matches the compare function @func.
 @func should return 0 when the element is found. The first parameter
 to @func will be the current element of the iterator and the
 second parameter will be @user_data.
@@ -18938,42 +29131,55 @@ The iterator will not be freed.
 
 This function will return %FALSE if an error happened to the iterator
 or if the element wasn't found.</doc>
+        <source-position filename="gst/gstiterator.h" line="283"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">Returns %TRUE if the element was found, else %FALSE.
+          <doc xml:space="preserve"
+               filename="gst/gstiterator.c"
+               line="720">Returns %TRUE if the element was found, else %FALSE.
 
 MT safe.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="it" transfer-ownership="none">
-            <doc xml:space="preserve">The #GstIterator to iterate</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstiterator.c"
+                 line="704">The #GstIterator to iterate</doc>
             <type name="Iterator" c:type="GstIterator*"/>
           </instance-parameter>
           <parameter name="func"
                      transfer-ownership="none"
                      scope="call"
                      closure="2">
-            <doc xml:space="preserve">the compare function to use</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstiterator.c"
+                 line="705">the compare function to use</doc>
             <type name="GLib.CompareFunc" c:type="GCompareFunc"/>
           </parameter>
           <parameter name="elem"
                      direction="out"
                      caller-allocates="1"
                      transfer-ownership="none">
-            <doc xml:space="preserve">pointer to a #GValue where to store the result</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstiterator.c"
+                 line="706">pointer to a #GValue where to store the result</doc>
             <type name="GObject.Value" c:type="GValue*"/>
           </parameter>
           <parameter name="user_data"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">user data passed to the compare function</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstiterator.c"
+                 line="707">user data passed to the compare function</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
         </parameters>
       </method>
       <method name="fold" c:identifier="gst_iterator_fold">
-        <doc xml:space="preserve">Folds @func over the elements of @iter. That is to say, @func will be called
+        <doc xml:space="preserve"
+             filename="gst/gstiterator.c"
+             line="577">Folds @func over the elements of @iter. That is to say, @func will be called
 as @func (object, @ret, @user_data) for each object in @it. The normal use
 of this procedure is to accumulate the results of operating on the objects in
 @ret.
@@ -18988,43 +29194,59 @@ will cause fold to return %GST_ITERATOR_ERROR or %GST_ITERATOR_RESYNC as
 appropriate.
 
 The iterator will not be freed.</doc>
+        <source-position filename="gst/gstiterator.h" line="276"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">A #GstIteratorResult, as described above.
+          <doc xml:space="preserve"
+               filename="gst/gstiterator.c"
+               line="600">A #GstIteratorResult, as described above.
 
 MT safe.</doc>
           <type name="IteratorResult" c:type="GstIteratorResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="it" transfer-ownership="none">
-            <doc xml:space="preserve">The #GstIterator to fold over</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstiterator.c"
+                 line="579">The #GstIterator to fold over</doc>
             <type name="Iterator" c:type="GstIterator*"/>
           </instance-parameter>
           <parameter name="func"
                      transfer-ownership="none"
                      scope="call"
                      closure="2">
-            <doc xml:space="preserve">the fold function</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstiterator.c"
+                 line="580">the fold function</doc>
             <type name="IteratorFoldFunction"
                   c:type="GstIteratorFoldFunction"/>
           </parameter>
           <parameter name="ret" transfer-ownership="none">
-            <doc xml:space="preserve">the seed value passed to the fold function</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstiterator.c"
+                 line="581">the seed value passed to the fold function</doc>
             <type name="GObject.Value" c:type="GValue*"/>
           </parameter>
           <parameter name="user_data"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">user data passed to the fold function</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstiterator.c"
+                 line="582">user data passed to the fold function</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
         </parameters>
       </method>
       <method name="foreach" c:identifier="gst_iterator_foreach">
-        <doc xml:space="preserve">Iterate over all element of @it and call the given function @func for
+        <doc xml:space="preserve"
+             filename="gst/gstiterator.c"
+             line="655">Iterate over all element of @it and call the given function @func for
 each element.</doc>
+        <source-position filename="gst/gstiterator.h" line="280"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the result call to gst_iterator_fold(). The iterator will not be
+          <doc xml:space="preserve"
+               filename="gst/gstiterator.c"
+               line="664">the result call to gst_iterator_fold(). The iterator will not be
 freed.
 
 MT safe.</doc>
@@ -19032,14 +29254,18 @@ MT safe.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="it" transfer-ownership="none">
-            <doc xml:space="preserve">The #GstIterator to iterate</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstiterator.c"
+                 line="657">The #GstIterator to iterate</doc>
             <type name="Iterator" c:type="GstIterator*"/>
           </instance-parameter>
           <parameter name="func"
                      transfer-ownership="none"
                      scope="call"
                      closure="1">
-            <doc xml:space="preserve">the function to call for each element.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstiterator.c"
+                 line="658">the function to call for each element.</doc>
             <type name="IteratorForeachFunction"
                   c:type="GstIteratorForeachFunction"/>
           </parameter>
@@ -19047,27 +29273,36 @@ MT safe.</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">user data passed to the function</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstiterator.c"
+                 line="659">user data passed to the function</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
         </parameters>
       </method>
       <method name="free" c:identifier="gst_iterator_free">
-        <doc xml:space="preserve">Free the iterator.
+        <doc xml:space="preserve"
+             filename="gst/gstiterator.c"
+             line="408">Free the iterator.
 
 MT safe.</doc>
+        <source-position filename="gst/gstiterator.h" line="265"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="it" transfer-ownership="none">
-            <doc xml:space="preserve">The #GstIterator to free</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstiterator.c"
+                 line="410">The #GstIterator to free</doc>
             <type name="Iterator" c:type="GstIterator*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="next" c:identifier="gst_iterator_next">
-        <doc xml:space="preserve">Get the next item from the iterator in @elem.
+        <doc xml:space="preserve"
+             filename="gst/gstiterator.c"
+             line="295">Get the next item from the iterator in @elem.
 
 Only when this function returns %GST_ITERATOR_OK, @elem will contain a valid
 value. @elem must have been initialized to the type of the iterator or
@@ -19083,28 +29318,37 @@ concurrently updated. The user of @it should call gst_iterator_resync() to
 get the newly updated list.
 
 A return value of %GST_ITERATOR_ERROR indicates an unrecoverable fatal error.</doc>
+        <source-position filename="gst/gstiterator.h" line="259"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The result of the iteration. Unset @elem after usage.
+          <doc xml:space="preserve"
+               filename="gst/gstiterator.c"
+               line="317">The result of the iteration. Unset @elem after usage.
 
 MT safe.</doc>
           <type name="IteratorResult" c:type="GstIteratorResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="it" transfer-ownership="none">
-            <doc xml:space="preserve">The #GstIterator to iterate</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstiterator.c"
+                 line="297">The #GstIterator to iterate</doc>
             <type name="Iterator" c:type="GstIterator*"/>
           </instance-parameter>
           <parameter name="elem"
                      direction="out"
                      caller-allocates="1"
                      transfer-ownership="none">
-            <doc xml:space="preserve">pointer to hold next element</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstiterator.c"
+                 line="298">pointer to hold next element</doc>
             <type name="GObject.Value" c:type="GValue*"/>
           </parameter>
         </parameters>
       </method>
       <method name="push" c:identifier="gst_iterator_push">
-        <doc xml:space="preserve">Pushes @other iterator onto @it. All calls performed on @it are
+        <doc xml:space="preserve"
+             filename="gst/gstiterator.c"
+             line="428">Pushes @other iterator onto @it. All calls performed on @it are
 forwarded to @other. If @other returns %GST_ITERATOR_DONE, it is
 popped again and calls are handled by @it again.
 
@@ -19115,70 +29359,96 @@ When gst_iterator_resync() is called on @it, @other will automatically be
 popped.
 
 MT safe.</doc>
+        <source-position filename="gst/gstiterator.h" line="268"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="it" transfer-ownership="none">
-            <doc xml:space="preserve">The #GstIterator to use</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstiterator.c"
+                 line="430">The #GstIterator to use</doc>
             <type name="Iterator" c:type="GstIterator*"/>
           </instance-parameter>
           <parameter name="other" transfer-ownership="none">
-            <doc xml:space="preserve">The #GstIterator to push</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstiterator.c"
+                 line="431">The #GstIterator to push</doc>
             <type name="Iterator" c:type="GstIterator*"/>
           </parameter>
         </parameters>
       </method>
       <method name="resync" c:identifier="gst_iterator_resync">
-        <doc xml:space="preserve">Resync the iterator. this function is mostly called
+        <doc xml:space="preserve"
+             filename="gst/gstiterator.c"
+             line="381">Resync the iterator. this function is mostly called
 after gst_iterator_next() returned %GST_ITERATOR_RESYNC.
 
 When an iterator was pushed on @it, it will automatically be popped again
 with this function.
 
 MT safe.</doc>
+        <source-position filename="gst/gstiterator.h" line="262"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="it" transfer-ownership="none">
-            <doc xml:space="preserve">The #GstIterator to resync</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstiterator.c"
+                 line="383">The #GstIterator to resync</doc>
             <type name="Iterator" c:type="GstIterator*"/>
           </instance-parameter>
         </parameters>
       </method>
     </record>
     <callback name="IteratorCopyFunction" c:type="GstIteratorCopyFunction">
-      <doc xml:space="preserve">This function will be called when creating a copy of @it and should
+      <doc xml:space="preserve"
+           filename="gst/gstiterator.h"
+           line="65">This function will be called when creating a copy of @it and should
 create a copy of all custom iterator fields or increase their
 reference counts.</doc>
+      <source-position filename="gst/gstiterator.h" line="74"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="it" transfer-ownership="none">
-          <doc xml:space="preserve">The original iterator</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstiterator.h"
+               line="67">The original iterator</doc>
           <type name="Iterator" c:type="const GstIterator*"/>
         </parameter>
         <parameter name="copy" transfer-ownership="none">
-          <doc xml:space="preserve">The copied iterator</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstiterator.h"
+               line="68">The copied iterator</doc>
           <type name="Iterator" c:type="GstIterator*"/>
         </parameter>
       </parameters>
     </callback>
     <callback name="IteratorFoldFunction" c:type="GstIteratorFoldFunction">
-      <doc xml:space="preserve">A function to be passed to gst_iterator_fold().</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstiterator.h"
+           line="141">A function to be passed to gst_iterator_fold().</doc>
+      <source-position filename="gst/gstiterator.h" line="151"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE if the fold should continue, %FALSE if it should stop.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstiterator.h"
+             line="149">%TRUE if the fold should continue, %FALSE if it should stop.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="item" transfer-ownership="none">
-          <doc xml:space="preserve">the item to fold</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstiterator.h"
+               line="143">the item to fold</doc>
           <type name="GObject.Value" c:type="const GValue*"/>
         </parameter>
         <parameter name="ret" transfer-ownership="none">
-          <doc xml:space="preserve">a #GValue collecting the result</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstiterator.h"
+               line="144">a #GValue collecting the result</doc>
           <type name="GObject.Value" c:type="GValue*"/>
         </parameter>
         <parameter name="user_data"
@@ -19186,20 +29456,27 @@ reference counts.</doc>
                    nullable="1"
                    allow-none="1"
                    closure="2">
-          <doc xml:space="preserve">data passed to gst_iterator_fold()</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstiterator.h"
+               line="145">data passed to gst_iterator_fold()</doc>
           <type name="gpointer" c:type="gpointer"/>
         </parameter>
       </parameters>
     </callback>
     <callback name="IteratorForeachFunction"
               c:type="GstIteratorForeachFunction">
-      <doc xml:space="preserve">A function that is called by gst_iterator_foreach() for every element.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstiterator.h"
+           line="132">A function that is called by gst_iterator_foreach() for every element.</doc>
+      <source-position filename="gst/gstiterator.h" line="139"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="item" transfer-ownership="none">
-          <doc xml:space="preserve">The item</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstiterator.h"
+               line="134">The item</doc>
           <type name="GObject.Value" c:type="const GValue*"/>
         </parameter>
         <parameter name="user_data"
@@ -19207,23 +29484,30 @@ reference counts.</doc>
                    nullable="1"
                    allow-none="1"
                    closure="1">
-          <doc xml:space="preserve">User data</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstiterator.h"
+               line="135">User data</doc>
           <type name="gpointer" c:type="gpointer"/>
         </parameter>
       </parameters>
     </callback>
     <callback name="IteratorFreeFunction" c:type="GstIteratorFreeFunction">
-      <doc xml:space="preserve">This function will be called when the iterator is freed.
+      <doc xml:space="preserve"
+           filename="gst/gstiterator.h"
+           line="120">This function will be called when the iterator is freed.
 
 Implementors of a #GstIterator should implement this
 function and pass it to the constructor of the custom iterator.
 The function will be called with the iterator lock held.</doc>
+      <source-position filename="gst/gstiterator.h" line="130"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="it" transfer-ownership="none">
-          <doc xml:space="preserve">the iterator</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstiterator.h"
+               line="122">the iterator</doc>
           <type name="Iterator" c:type="GstIterator*"/>
         </parameter>
       </parameters>
@@ -19232,65 +29516,91 @@ The function will be called with the iterator lock held.</doc>
                  glib:type-name="GstIteratorItem"
                  glib:get-type="gst_iterator_item_get_type"
                  c:type="GstIteratorItem">
-      <doc xml:space="preserve">The result of a #GstIteratorItemFunction.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstiterator.h"
+           line="51">The result of a #GstIteratorItemFunction.</doc>
       <member name="skip"
               value="0"
               c:identifier="GST_ITERATOR_ITEM_SKIP"
               glib:nick="skip">
-        <doc xml:space="preserve">Skip this item</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstiterator.h"
+             line="53">Skip this item</doc>
       </member>
       <member name="pass"
               value="1"
               c:identifier="GST_ITERATOR_ITEM_PASS"
               glib:nick="pass">
-        <doc xml:space="preserve">Return item</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstiterator.h"
+             line="54">Return item</doc>
       </member>
       <member name="end"
               value="2"
               c:identifier="GST_ITERATOR_ITEM_END"
               glib:nick="end">
-        <doc xml:space="preserve">Stop after this item.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstiterator.h"
+             line="55">Stop after this item.</doc>
       </member>
     </enumeration>
     <callback name="IteratorItemFunction" c:type="GstIteratorItemFunction">
-      <doc xml:space="preserve">The function that will be called after the next item of the iterator
+      <doc xml:space="preserve"
+           filename="gst/gstiterator.h"
+           line="76">The function that will be called after the next item of the iterator
 has been retrieved. This function can be used to skip items or stop
 the iterator.
 
 The function will be called with the iterator lock held.</doc>
+      <source-position filename="gst/gstiterator.h" line="89"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">the result of the operation.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstiterator.h"
+             line="87">the result of the operation.</doc>
         <type name="IteratorItem" c:type="GstIteratorItem"/>
       </return-value>
       <parameters>
         <parameter name="it" transfer-ownership="none">
-          <doc xml:space="preserve">the iterator</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstiterator.h"
+               line="78">the iterator</doc>
           <type name="Iterator" c:type="GstIterator*"/>
         </parameter>
         <parameter name="item" transfer-ownership="none">
-          <doc xml:space="preserve">the item being retrieved.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstiterator.h"
+               line="79">the item being retrieved.</doc>
           <type name="GObject.Value" c:type="const GValue*"/>
         </parameter>
       </parameters>
     </callback>
     <callback name="IteratorNextFunction" c:type="GstIteratorNextFunction">
-      <doc xml:space="preserve">The function that will be called when the next element of the iterator
+      <doc xml:space="preserve"
+           filename="gst/gstiterator.h"
+           line="91">The function that will be called when the next element of the iterator
 should be retrieved.
 
 Implementors of a #GstIterator should implement this
 function and pass it to the constructor of the custom iterator.
 The function will be called with the iterator lock held.</doc>
+      <source-position filename="gst/gstiterator.h" line="105"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">the result of the operation.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstiterator.h"
+             line="103">the result of the operation.</doc>
         <type name="IteratorResult" c:type="GstIteratorResult"/>
       </return-value>
       <parameters>
         <parameter name="it" transfer-ownership="none">
-          <doc xml:space="preserve">the iterator</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstiterator.h"
+               line="93">the iterator</doc>
           <type name="Iterator" c:type="GstIterator*"/>
         </parameter>
         <parameter name="result" transfer-ownership="none">
-          <doc xml:space="preserve">a pointer to hold the next item</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstiterator.h"
+               line="94">a pointer to hold the next item</doc>
           <type name="GObject.Value" c:type="GValue*"/>
         </parameter>
       </parameters>
@@ -19299,34 +29609,46 @@ The function will be called with the iterator lock held.</doc>
                  glib:type-name="GstIteratorResult"
                  glib:get-type="gst_iterator_result_get_type"
                  c:type="GstIteratorResult">
-      <doc xml:space="preserve">The result of gst_iterator_next().</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstiterator.h"
+           line="33">The result of gst_iterator_next().</doc>
       <member name="done"
               value="0"
               c:identifier="GST_ITERATOR_DONE"
               glib:nick="done">
-        <doc xml:space="preserve">No more items in the iterator</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstiterator.h"
+             line="35">No more items in the iterator</doc>
       </member>
       <member name="ok"
               value="1"
               c:identifier="GST_ITERATOR_OK"
               glib:nick="ok">
-        <doc xml:space="preserve">An item was retrieved</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstiterator.h"
+             line="36">An item was retrieved</doc>
       </member>
       <member name="resync"
               value="2"
               c:identifier="GST_ITERATOR_RESYNC"
               glib:nick="resync">
-        <doc xml:space="preserve">Datastructure changed while iterating</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstiterator.h"
+             line="37">Datastructure changed while iterating</doc>
       </member>
       <member name="error"
               value="3"
               c:identifier="GST_ITERATOR_ERROR"
               glib:nick="error">
-        <doc xml:space="preserve">An error happened</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstiterator.h"
+             line="38">An error happened</doc>
       </member>
     </enumeration>
     <callback name="IteratorResyncFunction" c:type="GstIteratorResyncFunction">
-      <doc xml:space="preserve">This function will be called whenever a concurrent update happened
+      <doc xml:space="preserve"
+           filename="gst/gstiterator.h"
+           line="106">This function will be called whenever a concurrent update happened
 to the iterated datastructure. The implementor of the iterator should
 restart the iterator from the beginning and clean up any state it might
 have.
@@ -19334,12 +29656,15 @@ have.
 Implementors of a #GstIterator should implement this
 function and pass it to the constructor of the custom iterator.
 The function will be called with the iterator lock held.</doc>
+      <source-position filename="gst/gstiterator.h" line="119"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="it" transfer-ownership="none">
-          <doc xml:space="preserve">the iterator</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstiterator.h"
+               line="108">the iterator</doc>
           <type name="Iterator" c:type="GstIterator*"/>
         </parameter>
       </parameters>
@@ -19347,13 +29672,19 @@ The function will be called with the iterator lock held.</doc>
     <constant name="LICENSE_UNKNOWN"
               value="unknown"
               c:type="GST_LICENSE_UNKNOWN">
-      <doc xml:space="preserve">To be used in GST_PLUGIN_DEFINE if unsure about the licence.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstplugin.h"
+           line="290">To be used in GST_PLUGIN_DEFINE if unsure about the licence.</doc>
+      <source-position filename="gst/gstplugin.h" line="295"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="LOCK_FLAG_READWRITE"
               value="3"
               c:type="GST_LOCK_FLAG_READWRITE">
-      <doc xml:space="preserve">GstLockFlags value alias for GST_LOCK_FLAG_READ | GST_LOCK_FLAG_WRITE</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstminiobject.h"
+           line="169">GstLockFlags value alias for GST_LOCK_FLAG_READ | GST_LOCK_FLAG_WRITE</doc>
+      <source-position filename="gst/gstminiobject.h" line="174"/>
       <type name="LockFlags" c:type="GstLockFlags"/>
     </constant>
     <enumeration name="LibraryError"
@@ -19361,53 +29692,70 @@ The function will be called with the iterator lock held.</doc>
                  glib:get-type="gst_library_error_get_type"
                  c:type="GstLibraryError"
                  glib:error-domain="gst-library-error-quark">
-      <doc xml:space="preserve">Library errors are for errors from the library being used by elements
+      <doc xml:space="preserve"
+           filename="gst/gsterror.h"
+           line="82">Library errors are for errors from the library being used by elements
 (initializing, finalizing, settings, ...)</doc>
       <member name="failed"
               value="1"
               c:identifier="GST_LIBRARY_ERROR_FAILED"
               glib:nick="failed">
-        <doc xml:space="preserve">a general error which doesn't fit in any other
+        <doc xml:space="preserve"
+             filename="gst/gsterror.h"
+             line="84">a general error which doesn't fit in any other
 category.  Make sure you add a custom message to the error call.</doc>
       </member>
       <member name="too_lazy"
               value="2"
               c:identifier="GST_LIBRARY_ERROR_TOO_LAZY"
               glib:nick="too-lazy">
-        <doc xml:space="preserve">do not use this except as a placeholder for
+        <doc xml:space="preserve"
+             filename="gst/gsterror.h"
+             line="86">do not use this except as a placeholder for
 deciding where to go while developing code.</doc>
       </member>
       <member name="init"
               value="3"
               c:identifier="GST_LIBRARY_ERROR_INIT"
               glib:nick="init">
-        <doc xml:space="preserve">used when the library could not be opened.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsterror.h"
+             line="88">used when the library could not be opened.</doc>
       </member>
       <member name="shutdown"
               value="4"
               c:identifier="GST_LIBRARY_ERROR_SHUTDOWN"
               glib:nick="shutdown">
-        <doc xml:space="preserve">used when the library could not be closed.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsterror.h"
+             line="89">used when the library could not be closed.</doc>
       </member>
       <member name="settings"
               value="5"
               c:identifier="GST_LIBRARY_ERROR_SETTINGS"
               glib:nick="settings">
-        <doc xml:space="preserve">used when the library doesn't accept settings.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsterror.h"
+             line="90">used when the library doesn't accept settings.</doc>
       </member>
       <member name="encode"
               value="6"
               c:identifier="GST_LIBRARY_ERROR_ENCODE"
               glib:nick="encode">
-        <doc xml:space="preserve">used when the library generated an encoding error.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsterror.h"
+             line="91">used when the library generated an encoding error.</doc>
       </member>
       <member name="num_errors"
               value="7"
               c:identifier="GST_LIBRARY_ERROR_NUM_ERRORS"
               glib:nick="num-errors">
-        <doc xml:space="preserve">the number of library error types.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsterror.h"
+             line="92">the number of library error types.</doc>
       </member>
       <function name="quark" c:identifier="gst_library_error_quark">
+        <attribute name="doc.skip" value="true"/>
         <return-value transfer-ownership="none">
           <type name="GLib.Quark" c:type="GQuark"/>
         </return-value>
@@ -19417,66 +29765,93 @@ deciding where to go while developing code.</doc>
               glib:type-name="GstLockFlags"
               glib:get-type="gst_lock_flags_get_type"
               c:type="GstLockFlags">
-      <doc xml:space="preserve">Flags used when locking miniobjects</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstminiobject.h"
+           line="152">Flags used when locking miniobjects</doc>
       <member name="read"
               value="1"
               c:identifier="GST_LOCK_FLAG_READ"
               glib:nick="read">
-        <doc xml:space="preserve">lock for read access</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstminiobject.h"
+             line="154">lock for read access</doc>
       </member>
       <member name="write"
               value="2"
               c:identifier="GST_LOCK_FLAG_WRITE"
               glib:nick="write">
-        <doc xml:space="preserve">lock for write access</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstminiobject.h"
+             line="155">lock for write access</doc>
       </member>
       <member name="exclusive"
               value="4"
               c:identifier="GST_LOCK_FLAG_EXCLUSIVE"
               glib:nick="exclusive">
-        <doc xml:space="preserve">lock for exclusive access</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstminiobject.h"
+             line="156">lock for exclusive access</doc>
       </member>
       <member name="last"
               value="256"
               c:identifier="GST_LOCK_FLAG_LAST"
               glib:nick="last">
-        <doc xml:space="preserve">first flag that can be used for custom purposes</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstminiobject.h"
+             line="157">first flag that can be used for custom purposes</doc>
       </member>
     </bitfield>
     <callback name="LogFunction" c:type="GstLogFunction">
-      <doc xml:space="preserve">Function prototype for a logging function that can be registered with
+      <doc xml:space="preserve"
+           filename="gst/gstinfo.h"
+           line="307">Function prototype for a logging function that can be registered with
 gst_debug_add_log_function().
 Use G_GNUC_NO_INSTRUMENT on that function.</doc>
+      <source-position filename="gst/gstinfo.h" line="322"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="category" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstDebugCategory</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.h"
+               line="309">a #GstDebugCategory</doc>
           <type name="DebugCategory" c:type="GstDebugCategory*"/>
         </parameter>
         <parameter name="level" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstDebugLevel</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.h"
+               line="310">a #GstDebugLevel</doc>
           <type name="DebugLevel" c:type="GstDebugLevel"/>
         </parameter>
         <parameter name="file" transfer-ownership="none">
-          <doc xml:space="preserve">file name</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.h"
+               line="311">file name</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
         <parameter name="function" transfer-ownership="none">
-          <doc xml:space="preserve">function name</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.h"
+               line="312">function name</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
         <parameter name="line" transfer-ownership="none">
-          <doc xml:space="preserve">line number</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.h"
+               line="313">line number</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
         <parameter name="object" transfer-ownership="none">
-          <doc xml:space="preserve">a #GObject</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.h"
+               line="314">a #GObject</doc>
           <type name="GObject.Object" c:type="GObject*"/>
         </parameter>
         <parameter name="message" transfer-ownership="none">
-          <doc xml:space="preserve">the message</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.h"
+               line="315">the message</doc>
           <type name="DebugMessage" c:type="GstDebugMessage*"/>
         </parameter>
         <parameter name="user_data"
@@ -19484,84 +29859,812 @@ Use G_GNUC_NO_INSTRUMENT on that function.</doc>
                    nullable="1"
                    allow-none="1"
                    closure="7">
-          <doc xml:space="preserve">user data for the log function</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.h"
+               line="316">user data for the log function</doc>
           <type name="gpointer" c:type="gpointer"/>
         </parameter>
       </parameters>
     </callback>
+    <function-macro name="MAKE_FOURCC"
+                    c:identifier="GST_MAKE_FOURCC"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.h"
+           line="30">Transform four characters into a #guint32 fourcc value with host
+endianness.
+
+|[
+guint32 fourcc = GST_MAKE_FOURCC ('M', 'J', 'P', 'G');
+]|</doc>
+      <source-position filename="gst/gstvalue.h" line="45"/>
+      <parameters>
+        <parameter name="a">
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.h"
+               line="32">the first character</doc>
+        </parameter>
+        <parameter name="b">
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.h"
+               line="33">the second character</doc>
+        </parameter>
+        <parameter name="c">
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.h"
+               line="34">the third character</doc>
+        </parameter>
+        <parameter name="d">
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.h"
+               line="35">the fourth character</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
     <constant name="MAP_READWRITE" value="3" c:type="GST_MAP_READWRITE">
-      <doc xml:space="preserve">GstMapFlags value alias for GST_MAP_READ | GST_MAP_WRITE</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstmemory.h"
+           line="183">GstMapFlags value alias for GST_MAP_READ | GST_MAP_WRITE</doc>
+      <source-position filename="gst/gstmemory.h" line="188"/>
       <type name="MapFlags" c:type="GstMapFlags"/>
     </constant>
+    <function-macro name="MEMDUMP"
+                    c:identifier="GST_MEMDUMP"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstinfo.h"
+           line="1042">Output a hexdump of @data.
+
+There is no need to finish the end of the message string with a newline
+character, a newline character will be added automatically.</doc>
+      <source-position filename="gst/gstinfo.h" line="711"/>
+      <parameters>
+        <parameter name="msg">
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.h"
+               line="1044">message string to log with the data</doc>
+        </parameter>
+        <parameter name="data">
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.h"
+               line="1045">pointer to the data to output</doc>
+        </parameter>
+        <parameter name="length">
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.h"
+               line="1046">length of the data to output</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="MEMDUMP_OBJECT"
+                    c:identifier="GST_MEMDUMP_OBJECT"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstinfo.h"
+           line="965">Output a logging message belonging to the given object in the default category.
+
+There is no need to finish the end of the message string with a newline
+character, a newline character will be added automatically.</doc>
+      <source-position filename="gst/gstinfo.h" line="709"/>
+      <parameters>
+        <parameter name="obj">
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.h"
+               line="967">the #GObject the message belongs to</doc>
+        </parameter>
+        <parameter name="msg">
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.h"
+               line="968">message string to log with the data</doc>
+        </parameter>
+        <parameter name="data">
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.h"
+               line="969">pointer to the data to output</doc>
+        </parameter>
+        <parameter name="length">
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.h"
+               line="970">length of the data to output</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="MEMORY_CAST"
+                    c:identifier="GST_MEMORY_CAST"
+                    introspectable="0">
+      <source-position filename="gst/gstmemory.h" line="43"/>
+      <parameters>
+        <parameter name="mem">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="MEMORY_FLAGS"
+                    c:identifier="GST_MEMORY_FLAGS"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstmemory.h"
+           line="70">A flags word containing #GstMemoryFlags flags set on @mem</doc>
+      <source-position filename="gst/gstmemory.h" line="76"/>
+      <parameters>
+        <parameter name="mem">
+          <doc xml:space="preserve"
+               filename="gst/gstmemory.h"
+               line="72">a #GstMemory.</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="MEMORY_FLAG_IS_SET"
+                    c:identifier="GST_MEMORY_FLAG_IS_SET"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstmemory.h"
+           line="77">Gives the status of a specific flag on a @mem.</doc>
+      <source-position filename="gst/gstmemory.h" line="84"/>
+      <parameters>
+        <parameter name="mem">
+          <doc xml:space="preserve"
+               filename="gst/gstmemory.h"
+               line="79">a #GstMemory.</doc>
+        </parameter>
+        <parameter name="flag">
+          <doc xml:space="preserve"
+               filename="gst/gstmemory.h"
+               line="80">the #GstMemoryFlags to check.</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="MEMORY_FLAG_UNSET"
+                    c:identifier="GST_MEMORY_FLAG_UNSET"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstmemory.h"
+           line="85">Clear a specific flag on a @mem.</doc>
+      <source-position filename="gst/gstmemory.h" line="92"/>
+      <parameters>
+        <parameter name="mem">
+          <doc xml:space="preserve"
+               filename="gst/gstmemory.h"
+               line="87">a #GstMemory.</doc>
+        </parameter>
+        <parameter name="flag">
+          <doc xml:space="preserve"
+               filename="gst/gstmemory.h"
+               line="88">the #GstMemoryFlags to clear.</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="MEMORY_IS_NOT_MAPPABLE"
+                    c:identifier="GST_MEMORY_IS_NOT_MAPPABLE"
+                    version="1.2"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstmemory.h"
+           line="133">Check if @mem can't be mapped via gst_memory_map() without any preconditions</doc>
+      <source-position filename="gst/gstmemory.h" line="141"/>
+      <parameters>
+        <parameter name="mem">
+          <doc xml:space="preserve"
+               filename="gst/gstmemory.h"
+               line="135">a #GstMemory.</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="MEMORY_IS_NO_SHARE"
+                    c:identifier="GST_MEMORY_IS_NO_SHARE"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstmemory.h"
+           line="101">Check if @mem cannot be shared between buffers</doc>
+      <source-position filename="gst/gstmemory.h" line="107"/>
+      <parameters>
+        <parameter name="mem">
+          <doc xml:space="preserve"
+               filename="gst/gstmemory.h"
+               line="103">a #GstMemory.</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="MEMORY_IS_PHYSICALLY_CONTIGUOUS"
+                    c:identifier="GST_MEMORY_IS_PHYSICALLY_CONTIGUOUS"
+                    version="1.2"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstmemory.h"
+           line="123">Check if @mem is physically contiguous.</doc>
+      <source-position filename="gst/gstmemory.h" line="131"/>
+      <parameters>
+        <parameter name="mem">
+          <doc xml:space="preserve"
+               filename="gst/gstmemory.h"
+               line="125">a #GstMemory.</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="MEMORY_IS_READONLY"
+                    c:identifier="GST_MEMORY_IS_READONLY"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstmemory.h"
+           line="94">Check if @mem is readonly.</doc>
+      <source-position filename="gst/gstmemory.h" line="100"/>
+      <parameters>
+        <parameter name="mem">
+          <doc xml:space="preserve"
+               filename="gst/gstmemory.h"
+               line="96">a #GstMemory.</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="MEMORY_IS_ZERO_PADDED"
+                    c:identifier="GST_MEMORY_IS_ZERO_PADDED"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstmemory.h"
+           line="115">Check if the padding in @mem is 0 filled.</doc>
+      <source-position filename="gst/gstmemory.h" line="121"/>
+      <parameters>
+        <parameter name="mem">
+          <doc xml:space="preserve"
+               filename="gst/gstmemory.h"
+               line="117">a #GstMemory.</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="MEMORY_IS_ZERO_PREFIXED"
+                    c:identifier="GST_MEMORY_IS_ZERO_PREFIXED"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstmemory.h"
+           line="108">Check if the prefix in @mem is 0 filled.</doc>
+      <source-position filename="gst/gstmemory.h" line="114"/>
+      <parameters>
+        <parameter name="mem">
+          <doc xml:space="preserve"
+               filename="gst/gstmemory.h"
+               line="110">a #GstMemory.</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="MESSAGE"
+                    c:identifier="GST_MESSAGE"
+                    introspectable="0">
+      <source-position filename="gst/gstmessage.h" line="202"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="MESSAGE_CAST"
+                    c:identifier="GST_MESSAGE_CAST"
+                    introspectable="0">
+      <source-position filename="gst/gstmessage.h" line="201"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="MESSAGE_GET_COND"
+                    c:identifier="GST_MESSAGE_GET_COND"
+                    introspectable="0">
+      <source-position filename="gst/gstmessage.h" line="210"/>
+      <parameters>
+        <parameter name="message">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="MESSAGE_GET_LOCK"
+                    c:identifier="GST_MESSAGE_GET_LOCK"
+                    introspectable="0">
+      <source-position filename="gst/gstmessage.h" line="207"/>
+      <parameters>
+        <parameter name="message">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="MESSAGE_LOCK"
+                    c:identifier="GST_MESSAGE_LOCK"
+                    introspectable="0">
+      <source-position filename="gst/gstmessage.h" line="208"/>
+      <parameters>
+        <parameter name="message">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="MESSAGE_SEQNUM"
+                    c:identifier="GST_MESSAGE_SEQNUM"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstmessage.h"
+           line="253">Get the sequence number of @message.</doc>
+      <source-position filename="gst/gstmessage.h" line="259"/>
+      <parameters>
+        <parameter name="message">
+          <doc xml:space="preserve"
+               filename="gst/gstmessage.h"
+               line="255">a #GstMessage</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="MESSAGE_SIGNAL"
+                    c:identifier="GST_MESSAGE_SIGNAL"
+                    introspectable="0">
+      <source-position filename="gst/gstmessage.h" line="212"/>
+      <parameters>
+        <parameter name="message">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="MESSAGE_SRC"
+                    c:identifier="GST_MESSAGE_SRC"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstmessage.h"
+           line="245">Get the object that posted @message.</doc>
+      <source-position filename="gst/gstmessage.h" line="251"/>
+      <parameters>
+        <parameter name="message">
+          <doc xml:space="preserve"
+               filename="gst/gstmessage.h"
+               line="247">a #GstMessage</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="MESSAGE_SRC_NAME"
+                    c:identifier="GST_MESSAGE_SRC_NAME"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstmessage.h"
+           line="261">Get the name of the object that posted @message. Returns "(NULL)" if
+the message has no source object set.</doc>
+      <source-position filename="gst/gstmessage.h" line="268"/>
+      <parameters>
+        <parameter name="message">
+          <doc xml:space="preserve"
+               filename="gst/gstmessage.h"
+               line="263">a #GstMessage</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="MESSAGE_TIMESTAMP"
+                    c:identifier="GST_MESSAGE_TIMESTAMP"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstmessage.h"
+           line="237">Get the timestamp of @message. This is the timestamp when the message
+was created.</doc>
+      <source-position filename="gst/gstmessage.h" line="244"/>
+      <parameters>
+        <parameter name="message">
+          <doc xml:space="preserve"
+               filename="gst/gstmessage.h"
+               line="239">a #GstMessage</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="MESSAGE_TYPE"
+                    c:identifier="GST_MESSAGE_TYPE"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstmessage.h"
+           line="214">Get the #GstMessageType of @message.</doc>
+      <source-position filename="gst/gstmessage.h" line="220"/>
+      <parameters>
+        <parameter name="message">
+          <doc xml:space="preserve"
+               filename="gst/gstmessage.h"
+               line="216">a #GstMessage</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="MESSAGE_TYPE_IS_EXTENDED"
+                    c:identifier="GST_MESSAGE_TYPE_IS_EXTENDED"
+                    version="1.4"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstmessage.h"
+           line="221">Check if the message is in the extended message group</doc>
+      <source-position filename="gst/gstmessage.h" line="228"/>
+      <parameters>
+        <parameter name="message">
+          <doc xml:space="preserve"
+               filename="gst/gstmessage.h"
+               line="223">a #GstMessage</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="MESSAGE_TYPE_NAME"
+                    c:identifier="GST_MESSAGE_TYPE_NAME"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstmessage.h"
+           line="230">Get a constant string representation of the #GstMessageType of @message.</doc>
+      <source-position filename="gst/gstmessage.h" line="236"/>
+      <parameters>
+        <parameter name="message">
+          <doc xml:space="preserve"
+               filename="gst/gstmessage.h"
+               line="232">a #GstMessage</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="MESSAGE_UNLOCK"
+                    c:identifier="GST_MESSAGE_UNLOCK"
+                    introspectable="0">
+      <source-position filename="gst/gstmessage.h" line="209"/>
+      <parameters>
+        <parameter name="message">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="MESSAGE_WAIT"
+                    c:identifier="GST_MESSAGE_WAIT"
+                    introspectable="0">
+      <source-position filename="gst/gstmessage.h" line="211"/>
+      <parameters>
+        <parameter name="message">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="META_CAST"
+                    c:identifier="GST_META_CAST"
+                    introspectable="0">
+      <source-position filename="gst/gstmeta.h" line="33"/>
+      <parameters>
+        <parameter name="meta">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="META_FLAGS"
+                    c:identifier="GST_META_FLAGS"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstmeta.h"
+           line="54">A flags word containing #GstMetaFlags flags set on @meta</doc>
+      <source-position filename="gst/gstmeta.h" line="60"/>
+      <parameters>
+        <parameter name="meta">
+          <doc xml:space="preserve"
+               filename="gst/gstmeta.h"
+               line="56">a #GstMeta.</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="META_FLAG_IS_SET"
+                    c:identifier="GST_META_FLAG_IS_SET"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstmeta.h"
+           line="61">Gives the status of a specific flag on a metadata.</doc>
+      <source-position filename="gst/gstmeta.h" line="68"/>
+      <parameters>
+        <parameter name="meta">
+          <doc xml:space="preserve"
+               filename="gst/gstmeta.h"
+               line="63">a #GstMeta.</doc>
+        </parameter>
+        <parameter name="flag">
+          <doc xml:space="preserve"
+               filename="gst/gstmeta.h"
+               line="64">the #GstMetaFlags to check.</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="META_FLAG_SET"
+                    c:identifier="GST_META_FLAG_SET"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstmeta.h"
+           line="69">Sets a metadata flag on a metadata.</doc>
+      <source-position filename="gst/gstmeta.h" line="76"/>
+      <parameters>
+        <parameter name="meta">
+          <doc xml:space="preserve"
+               filename="gst/gstmeta.h"
+               line="71">a #GstMeta.</doc>
+        </parameter>
+        <parameter name="flag">
+          <doc xml:space="preserve"
+               filename="gst/gstmeta.h"
+               line="72">the #GstMetaFlags to set.</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="META_FLAG_UNSET"
+                    c:identifier="GST_META_FLAG_UNSET"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstmeta.h"
+           line="77">Clears a metadata flag.</doc>
+      <source-position filename="gst/gstmeta.h" line="84"/>
+      <parameters>
+        <parameter name="meta">
+          <doc xml:space="preserve"
+               filename="gst/gstmeta.h"
+               line="79">a #GstMeta.</doc>
+        </parameter>
+        <parameter name="flag">
+          <doc xml:space="preserve"
+               filename="gst/gstmeta.h"
+               line="80">the #GstMetaFlags to clear.</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
     <constant name="META_TAG_MEMORY_STR"
               value="memory"
               c:type="GST_META_TAG_MEMORY_STR"
               version="1.2">
-      <doc xml:space="preserve">This metadata stays relevant as long as memory layout is unchanged.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstmeta.h"
+           line="86">This metadata stays relevant as long as memory layout is unchanged.</doc>
+      <source-position filename="gst/gstmeta.h" line="93"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
+    <function-macro name="META_TRANSFORM_IS_COPY"
+                    c:identifier="GST_META_TRANSFORM_IS_COPY"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstmeta.h"
+           line="137">Check if the transform type is a copy transform</doc>
+      <source-position filename="gst/gstmeta.h" line="143"/>
+      <parameters>
+        <parameter name="type">
+          <doc xml:space="preserve"
+               filename="gst/gstmeta.h"
+               line="139">a transform type</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="MINI_OBJECT"
+                    c:identifier="GST_MINI_OBJECT"
+                    introspectable="0">
+      <source-position filename="gst/gstminiobject.h" line="35"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="MINI_OBJECT_CAST"
+                    c:identifier="GST_MINI_OBJECT_CAST"
+                    introspectable="0">
+      <source-position filename="gst/gstminiobject.h" line="33"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="MINI_OBJECT_CONST_CAST"
+                    c:identifier="GST_MINI_OBJECT_CONST_CAST"
+                    introspectable="0">
+      <source-position filename="gst/gstminiobject.h" line="34"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="MINI_OBJECT_FLAGS"
+                    c:identifier="GST_MINI_OBJECT_FLAGS"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstminiobject.h"
+           line="89">This macro returns the entire set of flags for the mini-object.</doc>
+      <source-position filename="gst/gstminiobject.h" line="95"/>
+      <parameters>
+        <parameter name="obj">
+          <doc xml:space="preserve"
+               filename="gst/gstminiobject.h"
+               line="91">MiniObject to return flags for.</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="MINI_OBJECT_FLAG_IS_SET"
+                    c:identifier="GST_MINI_OBJECT_FLAG_IS_SET"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstminiobject.h"
+           line="96">This macro checks to see if the given flag is set.</doc>
+      <source-position filename="gst/gstminiobject.h" line="103"/>
+      <parameters>
+        <parameter name="obj">
+          <doc xml:space="preserve"
+               filename="gst/gstminiobject.h"
+               line="98">MiniObject to check for flags.</doc>
+        </parameter>
+        <parameter name="flag">
+          <doc xml:space="preserve"
+               filename="gst/gstminiobject.h"
+               line="99">Flag to check for</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="MINI_OBJECT_FLAG_SET"
+                    c:identifier="GST_MINI_OBJECT_FLAG_SET"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstminiobject.h"
+           line="104">This macro sets the given bits.</doc>
+      <source-position filename="gst/gstminiobject.h" line="111"/>
+      <parameters>
+        <parameter name="obj">
+          <doc xml:space="preserve"
+               filename="gst/gstminiobject.h"
+               line="106">MiniObject to set flag in.</doc>
+        </parameter>
+        <parameter name="flag">
+          <doc xml:space="preserve"
+               filename="gst/gstminiobject.h"
+               line="107">Flag to set, can by any number of bits in guint32.</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="MINI_OBJECT_FLAG_UNSET"
+                    c:identifier="GST_MINI_OBJECT_FLAG_UNSET"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstminiobject.h"
+           line="112">This macro unsets the given bits.</doc>
+      <source-position filename="gst/gstminiobject.h" line="119"/>
+      <parameters>
+        <parameter name="obj">
+          <doc xml:space="preserve"
+               filename="gst/gstminiobject.h"
+               line="114">MiniObject to unset flag in.</doc>
+        </parameter>
+        <parameter name="flag">
+          <doc xml:space="preserve"
+               filename="gst/gstminiobject.h"
+               line="115">Flag to set, must be a single bit in guint32.</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="MINI_OBJECT_IS_LOCKABLE"
+                    c:identifier="GST_MINI_OBJECT_IS_LOCKABLE"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstminiobject.h"
+           line="143">Check if @obj is lockable. A lockable object can be locked and unlocked with
+gst_mini_object_lock() and gst_mini_object_unlock().</doc>
+      <source-position filename="gst/gstminiobject.h" line="150"/>
+      <parameters>
+        <parameter name="obj">
+          <doc xml:space="preserve"
+               filename="gst/gstminiobject.h"
+               line="145">a #GstMiniObject</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="MINI_OBJECT_REFCOUNT"
+                    c:identifier="GST_MINI_OBJECT_REFCOUNT"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstminiobject.h"
+           line="176">Get access to the reference count field of the mini-object.</doc>
+      <source-position filename="gst/gstminiobject.h" line="182"/>
+      <parameters>
+        <parameter name="obj">
+          <doc xml:space="preserve"
+               filename="gst/gstminiobject.h"
+               line="178">a #GstMiniObject</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="MINI_OBJECT_REFCOUNT_VALUE"
+                    c:identifier="GST_MINI_OBJECT_REFCOUNT_VALUE"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstminiobject.h"
+           line="183">Get the reference count value of the mini-object.</doc>
+      <source-position filename="gst/gstminiobject.h" line="189"/>
+      <parameters>
+        <parameter name="obj">
+          <doc xml:space="preserve"
+               filename="gst/gstminiobject.h"
+               line="185">a #GstMiniObject</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="MINI_OBJECT_TYPE"
+                    c:identifier="GST_MINI_OBJECT_TYPE"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstminiobject.h"
+           line="81">This macro returns the type of the mini-object.</doc>
+      <source-position filename="gst/gstminiobject.h" line="87"/>
+      <parameters>
+        <parameter name="obj">
+          <doc xml:space="preserve"
+               filename="gst/gstminiobject.h"
+               line="83">MiniObject to return type for.</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
     <constant name="MSECOND" value="1000000" c:type="GST_MSECOND">
-      <doc xml:space="preserve">Constant that defines one GStreamer millisecond.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstclock.h"
+           line="104">Constant that defines one GStreamer millisecond.</doc>
+      <source-position filename="gst/gstclock.h" line="109"/>
       <type name="ClockTimeDiff" c:type="GstClockTimeDiff"/>
     </constant>
     <bitfield name="MapFlags"
               glib:type-name="GstMapFlags"
               glib:get-type="gst_map_flags_get_type"
               c:type="GstMapFlags">
-      <doc xml:space="preserve">Flags used when mapping memory</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstmemory.h"
+           line="168">Flags used when mapping memory</doc>
       <member name="read"
               value="1"
               c:identifier="GST_MAP_READ"
               glib:nick="read">
-        <doc xml:space="preserve">map for read access</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmemory.h"
+             line="170">map for read access</doc>
       </member>
       <member name="write"
               value="2"
               c:identifier="GST_MAP_WRITE"
               glib:nick="write">
-        <doc xml:space="preserve">map for write access</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmemory.h"
+             line="171">map for write access</doc>
       </member>
       <member name="flag_last"
               value="65536"
               c:identifier="GST_MAP_FLAG_LAST"
               glib:nick="flag-last">
-        <doc xml:space="preserve">first flag that can be used for custom purposes</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmemory.h"
+             line="172">first flag that can be used for custom purposes</doc>
       </member>
     </bitfield>
     <record name="MapInfo" c:type="GstMapInfo">
-      <doc xml:space="preserve">A structure containing the result of a map operation such as
+      <doc xml:space="preserve"
+           filename="gst/gstmemory.h"
+           line="191">A structure containing the result of a map operation such as
 gst_memory_map(). It contains the data and size.</doc>
+      <source-position filename="gst/gstmemory.h" line="215"/>
       <field name="memory" writable="1">
-        <doc xml:space="preserve">a pointer to the mapped memory</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmemory.h"
+             line="193">a pointer to the mapped memory</doc>
         <type name="Memory" c:type="GstMemory*"/>
       </field>
       <field name="flags" writable="1">
-        <doc xml:space="preserve">flags used when mapping the memory</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmemory.h"
+             line="194">flags used when mapping the memory</doc>
         <type name="MapFlags" c:type="GstMapFlags"/>
       </field>
       <field name="data" writable="1">
-        <doc xml:space="preserve">a pointer to the mapped data</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmemory.h"
+             line="195">a pointer to the mapped data</doc>
         <array length="3" zero-terminated="0" c:type="guint8*">
           <type name="guint8" c:type="guint8"/>
         </array>
       </field>
       <field name="size" writable="1">
-        <doc xml:space="preserve">the valid size in @data</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmemory.h"
+             line="196">the valid size in @data</doc>
         <type name="gsize" c:type="gsize"/>
       </field>
       <field name="maxsize" writable="1">
-        <doc xml:space="preserve">the maximum bytes in @data</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmemory.h"
+             line="197">the maximum bytes in @data</doc>
         <type name="gsize" c:type="gsize"/>
       </field>
       <field name="user_data" writable="1">
-        <doc xml:space="preserve">extra private user_data that the implementation of the memory
+        <doc xml:space="preserve"
+             filename="gst/gstmemory.h"
+             line="198">extra private user_data that the implementation of the memory
             can use to store extra info.</doc>
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -19571,7 +30674,9 @@ gst_memory_map(). It contains the data and size.</doc>
             glib:type-name="GstMemory"
             glib:get-type="gst_memory_get_type"
             c:symbol-prefix="memory">
-      <doc xml:space="preserve">GstMemory is a lightweight refcounted object that wraps a region of memory.
+      <doc xml:space="preserve"
+           filename="gst/gstmemory.c"
+           line="22">GstMemory is a lightweight refcounted object that wraps a region of memory.
 They are typically used to manage the data of a #GstBuffer.
 
 A GstMemory object has an allocated region of memory of maxsize. The maximum
@@ -19607,72 +30712,104 @@ memory with an existing memory block at a custom offset and with a custom
 size.
 
 Memory can be efficiently merged when gst_memory_is_span() returns %TRUE.</doc>
+      <source-position filename="gst/gstmemory.h" line="166"/>
       <field name="mini_object" writable="1">
-        <doc xml:space="preserve">parent structure</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmemory.h"
+             line="145">parent structure</doc>
         <type name="MiniObject" c:type="GstMiniObject"/>
       </field>
       <field name="allocator" writable="1">
-        <doc xml:space="preserve">pointer to the #GstAllocator</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmemory.h"
+             line="146">pointer to the #GstAllocator</doc>
         <type name="Allocator" c:type="GstAllocator*"/>
       </field>
       <field name="parent" writable="1">
-        <doc xml:space="preserve">parent memory block</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmemory.h"
+             line="147">parent memory block</doc>
         <type name="Memory" c:type="GstMemory*"/>
       </field>
       <field name="maxsize" writable="1">
-        <doc xml:space="preserve">the maximum size allocated</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmemory.h"
+             line="148">the maximum size allocated</doc>
         <type name="gsize" c:type="gsize"/>
       </field>
       <field name="align" writable="1">
-        <doc xml:space="preserve">the alignment of the memory</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmemory.h"
+             line="149">the alignment of the memory</doc>
         <type name="gsize" c:type="gsize"/>
       </field>
       <field name="offset" writable="1">
-        <doc xml:space="preserve">the offset where valid data starts</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmemory.h"
+             line="150">the offset where valid data starts</doc>
         <type name="gsize" c:type="gsize"/>
       </field>
       <field name="size" writable="1">
-        <doc xml:space="preserve">the size of valid data</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmemory.h"
+             line="151">the size of valid data</doc>
         <type name="gsize" c:type="gsize"/>
       </field>
       <constructor name="new_wrapped" c:identifier="gst_memory_new_wrapped">
-        <doc xml:space="preserve">Allocate a new memory block that wraps the given @data.
+        <doc xml:space="preserve"
+             filename="gst/gstallocator.c"
+             line="614">Allocate a new memory block that wraps the given @data.
 
 The prefix/padding must be filled with 0 if @flags contains
 #GST_MEMORY_FLAG_ZERO_PREFIXED and #GST_MEMORY_FLAG_ZERO_PADDED respectively.</doc>
+        <source-position filename="gst/gstallocator.h" line="190"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">a new #GstMemory.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstallocator.c"
+               line="630">a new #GstMemory.</doc>
           <type name="Memory" c:type="GstMemory*"/>
         </return-value>
         <parameters>
           <parameter name="flags" transfer-ownership="none">
-            <doc xml:space="preserve">#GstMemoryFlags</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstallocator.c"
+                 line="616">#GstMemoryFlags</doc>
             <type name="MemoryFlags" c:type="GstMemoryFlags"/>
           </parameter>
           <parameter name="data" transfer-ownership="none">
-            <doc xml:space="preserve">data to
+            <doc xml:space="preserve"
+                 filename="gst/gstallocator.c"
+                 line="617">data to
   wrap</doc>
             <array length="4" zero-terminated="0" c:type="gpointer">
               <type name="guint8"/>
             </array>
           </parameter>
           <parameter name="maxsize" transfer-ownership="none">
-            <doc xml:space="preserve">allocated size of @data</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstallocator.c"
+                 line="619">allocated size of @data</doc>
             <type name="gsize" c:type="gsize"/>
           </parameter>
           <parameter name="offset" transfer-ownership="none">
-            <doc xml:space="preserve">offset in @data</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstallocator.c"
+                 line="620">offset in @data</doc>
             <type name="gsize" c:type="gsize"/>
           </parameter>
           <parameter name="size" transfer-ownership="none">
-            <doc xml:space="preserve">size of valid data</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstallocator.c"
+                 line="621">size of valid data</doc>
             <type name="gsize" c:type="gsize"/>
           </parameter>
           <parameter name="user_data"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">user_data</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstallocator.c"
+                 line="622">user_data</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
           <parameter name="notify"
@@ -19681,43 +30818,63 @@ The prefix/padding must be filled with 0 if @flags contains
                      allow-none="1"
                      scope="async"
                      closure="5">
-            <doc xml:space="preserve">called with @user_data when the memory is freed</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstallocator.c"
+                 line="623">called with @user_data when the memory is freed</doc>
             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
           </parameter>
         </parameters>
       </constructor>
       <method name="copy" c:identifier="gst_memory_copy">
-        <doc xml:space="preserve">Return a copy of @size bytes from @mem starting from @offset. This copy is
+        <doc xml:space="preserve"
+             filename="gst/gstmemory.c"
+             line="355">Return a copy of @size bytes from @mem starting from @offset. This copy is
 guaranteed to be writable. @size can be set to -1 to return a copy
 from @offset to the end of the memory region.</doc>
+        <source-position filename="gst/gstmemory.h" line="377"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new #GstMemory.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstmemory.c"
+               line="365">a new #GstMemory.</doc>
           <type name="Memory" c:type="GstMemory*"/>
         </return-value>
         <parameters>
           <instance-parameter name="mem" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstMemory</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmemory.c"
+                 line="357">a #GstMemory</doc>
             <type name="Memory" c:type="GstMemory*"/>
           </instance-parameter>
           <parameter name="offset" transfer-ownership="none">
-            <doc xml:space="preserve">offset to copy from</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmemory.c"
+                 line="358">offset to copy from</doc>
             <type name="gssize" c:type="gssize"/>
           </parameter>
           <parameter name="size" transfer-ownership="none">
-            <doc xml:space="preserve">size to copy, or -1 to copy to the end of the memory region</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmemory.c"
+                 line="359">size to copy, or -1 to copy to the end of the memory region</doc>
             <type name="gssize" c:type="gssize"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_sizes" c:identifier="gst_memory_get_sizes">
-        <doc xml:space="preserve">Get the current @size, @offset and @maxsize of @mem.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the current sizes of @mem</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmemory.c"
+             line="164">Get the current @size, @offset and @maxsize of @mem.</doc>
+        <source-position filename="gst/gstmemory.h" line="353"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstmemory.c"
+               line="172">the current size of @mem</doc>
           <type name="gsize" c:type="gsize"/>
         </return-value>
         <parameters>
           <instance-parameter name="mem" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstMemory</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmemory.c"
+                 line="166">a #GstMemory</doc>
             <type name="Memory" c:type="GstMemory*"/>
           </instance-parameter>
           <parameter name="offset"
@@ -19726,7 +30883,9 @@ from @offset to the end of the memory region.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">pointer to offset</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmemory.c"
+                 line="167">pointer to offset</doc>
             <type name="gsize" c:type="gsize*"/>
           </parameter>
           <parameter name="maxsize"
@@ -19735,130 +30894,184 @@ from @offset to the end of the memory region.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">pointer to maxsize</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmemory.c"
+                 line="168">pointer to maxsize</doc>
             <type name="gsize" c:type="gsize*"/>
           </parameter>
         </parameters>
       </method>
       <method name="init" c:identifier="gst_memory_init" introspectable="0">
-        <doc xml:space="preserve">Initializes a newly allocated @mem with the given parameters. This function
+        <doc xml:space="preserve"
+             filename="gst/gstmemory.c"
+             line="102">Initializes a newly allocated @mem with the given parameters. This function
 will call gst_mini_object_init() with the default memory parameters.</doc>
+        <source-position filename="gst/gstmemory.h" line="314"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="mem" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstMemory</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmemory.c"
+                 line="104">a #GstMemory</doc>
             <type name="Memory" c:type="GstMemory*"/>
           </instance-parameter>
           <parameter name="flags" transfer-ownership="none">
-            <doc xml:space="preserve">#GstMemoryFlags</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmemory.c"
+                 line="105">#GstMemoryFlags</doc>
             <type name="MemoryFlags" c:type="GstMemoryFlags"/>
           </parameter>
           <parameter name="allocator" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstAllocator</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmemory.c"
+                 line="106">the #GstAllocator</doc>
             <type name="Allocator" c:type="GstAllocator*"/>
           </parameter>
           <parameter name="parent" transfer-ownership="none">
-            <doc xml:space="preserve">the parent of @mem</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmemory.c"
+                 line="107">the parent of @mem</doc>
             <type name="Memory" c:type="GstMemory*"/>
           </parameter>
           <parameter name="maxsize" transfer-ownership="none">
-            <doc xml:space="preserve">the total size of the memory</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmemory.c"
+                 line="108">the total size of the memory</doc>
             <type name="gsize" c:type="gsize"/>
           </parameter>
           <parameter name="align" transfer-ownership="none">
-            <doc xml:space="preserve">the alignment of the memory</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmemory.c"
+                 line="109">the alignment of the memory</doc>
             <type name="gsize" c:type="gsize"/>
           </parameter>
           <parameter name="offset" transfer-ownership="none">
-            <doc xml:space="preserve">The offset in the memory</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmemory.c"
+                 line="110">The offset in the memory</doc>
             <type name="gsize" c:type="gsize"/>
           </parameter>
           <parameter name="size" transfer-ownership="none">
-            <doc xml:space="preserve">the size of valid data in the memory</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmemory.c"
+                 line="111">the size of valid data in the memory</doc>
             <type name="gsize" c:type="gsize"/>
           </parameter>
         </parameters>
       </method>
       <method name="is_span" c:identifier="gst_memory_is_span">
-        <doc xml:space="preserve">Check if @mem1 and mem2 share the memory with a common parent memory object
+        <doc xml:space="preserve"
+             filename="gst/gstmemory.c"
+             line="426">Check if @mem1 and mem2 share the memory with a common parent memory object
 and that the memory is contiguous.
 
 If this is the case, the memory of @mem1 and @mem2 can be merged
 efficiently by performing gst_memory_share() on the parent object from
 the returned @offset.</doc>
+        <source-position filename="gst/gstmemory.h" line="385"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the memory is contiguous and of a common parent.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstmemory.c"
+               line="439">%TRUE if the memory is contiguous and of a common parent.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="mem1" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstMemory</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmemory.c"
+                 line="428">a #GstMemory</doc>
             <type name="Memory" c:type="GstMemory*"/>
           </instance-parameter>
           <parameter name="mem2" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstMemory</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmemory.c"
+                 line="429">a #GstMemory</doc>
             <type name="Memory" c:type="GstMemory*"/>
           </parameter>
           <parameter name="offset"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">a pointer to a result offset</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmemory.c"
+                 line="430">a pointer to a result offset</doc>
             <type name="gsize" c:type="gsize*"/>
           </parameter>
         </parameters>
       </method>
       <method name="is_type" c:identifier="gst_memory_is_type" version="1.2">
-        <doc xml:space="preserve">Check if @mem if allocated with an allocator for @mem_type.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if @mem was allocated from an allocator for @mem_type.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmemory.c"
+             line="143">Check if @mem if allocated with an allocator for @mem_type.</doc>
+        <source-position filename="gst/gstmemory.h" line="319"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstmemory.c"
+               line="150">%TRUE if @mem was allocated from an allocator for @mem_type.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="mem" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstMemory</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmemory.c"
+                 line="145">a #GstMemory</doc>
             <type name="Memory" c:type="GstMemory*"/>
           </instance-parameter>
           <parameter name="mem_type" transfer-ownership="none">
-            <doc xml:space="preserve">a memory type</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmemory.c"
+                 line="146">a memory type</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </method>
       <method name="make_mapped" c:identifier="gst_memory_make_mapped">
-        <doc xml:space="preserve">Create a #GstMemory object that is mapped with @flags. If @mem is mappable
+        <doc xml:space="preserve"
+             filename="gst/gstmemory.c"
+             line="219">Create a #GstMemory object that is mapped with @flags. If @mem is mappable
 with @flags, this function returns the mapped @mem directly. Otherwise a
 mapped copy of @mem is returned.
 
 This function takes ownership of old @mem and returns a reference to a new
 #GstMemory.</doc>
+        <source-position filename="gst/gstmemory.h" line="366"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">a #GstMemory object mapped
+          <doc xml:space="preserve"
+               filename="gst/gstmemory.c"
+               line="232">a #GstMemory object mapped
 with @flags or %NULL when a mapping is not possible.</doc>
           <type name="Memory" c:type="GstMemory*"/>
         </return-value>
         <parameters>
           <instance-parameter name="mem" transfer-ownership="full">
-            <doc xml:space="preserve">a #GstMemory</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmemory.c"
+                 line="221">a #GstMemory</doc>
             <type name="Memory" c:type="GstMemory*"/>
           </instance-parameter>
           <parameter name="info"
                      direction="out"
                      caller-allocates="1"
                      transfer-ownership="none">
-            <doc xml:space="preserve">pointer for info</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmemory.c"
+                 line="222">pointer for info</doc>
             <type name="MapInfo" c:type="GstMapInfo*"/>
           </parameter>
           <parameter name="flags" transfer-ownership="none">
-            <doc xml:space="preserve">mapping flags</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmemory.c"
+                 line="223">mapping flags</doc>
             <type name="MapFlags" c:type="GstMapFlags"/>
           </parameter>
         </parameters>
       </method>
       <method name="map" c:identifier="gst_memory_map">
-        <doc xml:space="preserve">Fill @info with the pointer and sizes of the memory in @mem that can be
+        <doc xml:space="preserve"
+             filename="gst/gstmemory.c"
+             line="269">Fill @info with the pointer and sizes of the memory in @mem that can be
 accessed according to @flags.
 
 This function can return %FALSE for various reasons:
@@ -19870,113 +31083,197 @@ until gst_memory_unmap() is called.
 
 For each gst_memory_map() call, a corresponding gst_memory_unmap() call
 should be done.</doc>
+        <source-position filename="gst/gstmemory.h" line="369"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the map operation was successful.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstmemory.c"
+               line="288">%TRUE if the map operation was successful.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="mem" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstMemory</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmemory.c"
+                 line="271">a #GstMemory</doc>
             <type name="Memory" c:type="GstMemory*"/>
           </instance-parameter>
           <parameter name="info"
                      direction="out"
                      caller-allocates="1"
                      transfer-ownership="none">
-            <doc xml:space="preserve">pointer for info</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmemory.c"
+                 line="272">pointer for info</doc>
             <type name="MapInfo" c:type="GstMapInfo*"/>
           </parameter>
           <parameter name="flags" transfer-ownership="none">
-            <doc xml:space="preserve">mapping flags</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmemory.c"
+                 line="273">mapping flags</doc>
             <type name="MapFlags" c:type="GstMapFlags"/>
           </parameter>
         </parameters>
       </method>
+      <method name="ref" c:identifier="gst_memory_ref" introspectable="0">
+        <doc xml:space="preserve"
+             filename="gst/gstmemory.h"
+             line="322">Increase the refcount of this memory.</doc>
+        <source-position filename="gst/gstmemory.h" line="330"/>
+        <return-value transfer-ownership="full">
+          <doc xml:space="preserve"
+               filename="gst/gstmemory.h"
+               line="328">@memory (for convenience when doing assignments)</doc>
+          <type name="Memory" c:type="GstMemory*"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="memory" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst/gstmemory.h"
+                 line="324">The memory to refcount</doc>
+            <type name="Memory" c:type="GstMemory*"/>
+          </instance-parameter>
+        </parameters>
+      </method>
       <method name="resize" c:identifier="gst_memory_resize">
-        <doc xml:space="preserve">Resize the memory region. @mem should be writable and offset + size should be
+        <doc xml:space="preserve"
+             filename="gst/gstmemory.c"
+             line="187">Resize the memory region. @mem should be writable and offset + size should be
 less than the maxsize of @mem.
 
 #GST_MEMORY_FLAG_ZERO_PREFIXED and #GST_MEMORY_FLAG_ZERO_PADDED will be
 cleared when offset or padding is increased respectively.</doc>
+        <source-position filename="gst/gstmemory.h" line="356"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="mem" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstMemory</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmemory.c"
+                 line="189">a #GstMemory</doc>
             <type name="Memory" c:type="GstMemory*"/>
           </instance-parameter>
           <parameter name="offset" transfer-ownership="none">
-            <doc xml:space="preserve">a new offset</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmemory.c"
+                 line="190">a new offset</doc>
             <type name="gssize" c:type="gssize"/>
           </parameter>
           <parameter name="size" transfer-ownership="none">
-            <doc xml:space="preserve">a new size</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmemory.c"
+                 line="191">a new size</doc>
             <type name="gsize" c:type="gsize"/>
           </parameter>
         </parameters>
       </method>
       <method name="share" c:identifier="gst_memory_share">
-        <doc xml:space="preserve">Return a shared copy of @size bytes from @mem starting from @offset. No
+        <doc xml:space="preserve"
+             filename="gst/gstmemory.c"
+             line="379">Return a shared copy of @size bytes from @mem starting from @offset. No
 memory copy is performed and the memory region is simply shared. The result
 is guaranteed to be non-writable. @size can be set to -1 to return a shared
 copy from @offset to the end of the memory region.</doc>
+        <source-position filename="gst/gstmemory.h" line="380"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new #GstMemory.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstmemory.c"
+               line="390">a new #GstMemory.</doc>
           <type name="Memory" c:type="GstMemory*"/>
         </return-value>
         <parameters>
           <instance-parameter name="mem" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstMemory</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmemory.c"
+                 line="381">a #GstMemory</doc>
             <type name="Memory" c:type="GstMemory*"/>
           </instance-parameter>
           <parameter name="offset" transfer-ownership="none">
-            <doc xml:space="preserve">offset to share from</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmemory.c"
+                 line="382">offset to share from</doc>
             <type name="gssize" c:type="gssize"/>
           </parameter>
           <parameter name="size" transfer-ownership="none">
-            <doc xml:space="preserve">size to share, or -1 to share to the end of the memory region</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmemory.c"
+                 line="383">size to share, or -1 to share to the end of the memory region</doc>
             <type name="gssize" c:type="gssize"/>
           </parameter>
         </parameters>
       </method>
       <method name="unmap" c:identifier="gst_memory_unmap">
-        <doc xml:space="preserve">Release the memory obtained with gst_memory_map()</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmemory.c"
+             line="334">Release the memory obtained with gst_memory_map()</doc>
+        <source-position filename="gst/gstmemory.h" line="372"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="mem" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstMemory</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmemory.c"
+                 line="336">a #GstMemory</doc>
             <type name="Memory" c:type="GstMemory*"/>
           </instance-parameter>
           <parameter name="info" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstMapInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmemory.c"
+                 line="337">a #GstMapInfo</doc>
             <type name="MapInfo" c:type="GstMapInfo*"/>
           </parameter>
         </parameters>
       </method>
+      <method name="unref" c:identifier="gst_memory_unref" introspectable="0">
+        <doc xml:space="preserve"
+             filename="gst/gstmemory.h"
+             line="337">Decrease the refcount of a memory, freeing it if the refcount reaches 0.</doc>
+        <source-position filename="gst/gstmemory.h" line="343"/>
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="memory" transfer-ownership="full">
+            <doc xml:space="preserve"
+                 filename="gst/gstmemory.h"
+                 line="339">the memory to refcount</doc>
+            <type name="Memory" c:type="GstMemory*"/>
+          </instance-parameter>
+        </parameters>
+      </method>
     </record>
     <callback name="MemoryCopyFunction" c:type="GstMemoryCopyFunction">
-      <doc xml:space="preserve">Copy @size bytes from @mem starting at @offset and return them wrapped in a
+      <doc xml:space="preserve"
+           filename="gst/gstmemory.h"
+           line="271">Copy @size bytes from @mem starting at @offset and return them wrapped in a
 new GstMemory object.
 If @size is set to -1, all bytes starting at @offset are copied.</doc>
+      <source-position filename="gst/gstmemory.h" line="284"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">a new #GstMemory object wrapping a copy of the requested region in
+        <doc xml:space="preserve"
+             filename="gst/gstmemory.h"
+             line="281">a new #GstMemory object wrapping a copy of the requested region in
 @mem.</doc>
         <type name="Memory" c:type="GstMemory*"/>
       </return-value>
       <parameters>
         <parameter name="mem" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstMemory</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstmemory.h"
+               line="273">a #GstMemory</doc>
           <type name="Memory" c:type="GstMemory*"/>
         </parameter>
         <parameter name="offset" transfer-ownership="none">
-          <doc xml:space="preserve">an offset</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstmemory.h"
+               line="274">an offset</doc>
           <type name="gssize" c:type="gssize"/>
         </parameter>
         <parameter name="size" transfer-ownership="none">
-          <doc xml:space="preserve">a size or -1</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstmemory.h"
+               line="275">a size or -1</doc>
           <type name="gssize" c:type="gssize"/>
         </parameter>
       </parameters>
@@ -19985,170 +31282,242 @@ If @size is set to -1, all bytes starting at @offset are copied.</doc>
               glib:type-name="GstMemoryFlags"
               glib:get-type="gst_memory_flags_get_type"
               c:type="GstMemoryFlags">
-      <doc xml:space="preserve">Flags for wrapped memory.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstmemory.h"
+           line="45">Flags for wrapped memory.</doc>
       <member name="readonly"
               value="2"
               c:identifier="GST_MEMORY_FLAG_READONLY"
               glib:nick="readonly">
-        <doc xml:space="preserve">memory is readonly. It is not allowed to map the
+        <doc xml:space="preserve"
+             filename="gst/gstmemory.h"
+             line="47">memory is readonly. It is not allowed to map the
 memory with #GST_MAP_WRITE.</doc>
       </member>
       <member name="no_share"
               value="16"
               c:identifier="GST_MEMORY_FLAG_NO_SHARE"
               glib:nick="no-share">
-        <doc xml:space="preserve">memory must not be shared. Copies will have to be
+        <doc xml:space="preserve"
+             filename="gst/gstmemory.h"
+             line="49">memory must not be shared. Copies will have to be
 made when this memory needs to be shared between buffers.</doc>
       </member>
       <member name="zero_prefixed"
               value="32"
               c:identifier="GST_MEMORY_FLAG_ZERO_PREFIXED"
               glib:nick="zero-prefixed">
-        <doc xml:space="preserve">the memory prefix is filled with 0 bytes</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmemory.h"
+             line="51">the memory prefix is filled with 0 bytes</doc>
       </member>
       <member name="zero_padded"
               value="64"
               c:identifier="GST_MEMORY_FLAG_ZERO_PADDED"
               glib:nick="zero-padded">
-        <doc xml:space="preserve">the memory padding is filled with 0 bytes</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmemory.h"
+             line="52">the memory padding is filled with 0 bytes</doc>
       </member>
       <member name="physically_contiguous"
               value="128"
               c:identifier="GST_MEMORY_FLAG_PHYSICALLY_CONTIGUOUS"
               glib:nick="physically-contiguous">
-        <doc xml:space="preserve">the memory is physically contiguous. (Since 1.2)</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmemory.h"
+             line="53">the memory is physically contiguous. (Since: 1.2)</doc>
       </member>
       <member name="not_mappable"
               value="256"
               c:identifier="GST_MEMORY_FLAG_NOT_MAPPABLE"
               glib:nick="not-mappable">
-        <doc xml:space="preserve">the memory can't be mapped via gst_memory_map() without any preconditions. (Since 1.2)</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmemory.h"
+             line="54">the memory can't be mapped via gst_memory_map() without any preconditions. (Since: 1.2)</doc>
       </member>
       <member name="last"
               value="1048576"
               c:identifier="GST_MEMORY_FLAG_LAST"
               glib:nick="last">
-        <doc xml:space="preserve">first flag that can be used for custom purposes</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmemory.h"
+             line="55">first flag that can be used for custom purposes</doc>
       </member>
     </bitfield>
     <callback name="MemoryIsSpanFunction" c:type="GstMemoryIsSpanFunction">
-      <doc xml:space="preserve">Check if @mem1 and @mem2 occupy contiguous memory and return the offset of
+      <doc xml:space="preserve"
+           filename="gst/gstmemory.h"
+           line="300">Check if @mem1 and @mem2 occupy contiguous memory and return the offset of
 @mem1 in the parent buffer in @offset.</doc>
+      <source-position filename="gst/gstmemory.h" line="311"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE if @mem1 and @mem2 are in contiguous memory.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmemory.h"
+             line="309">%TRUE if @mem1 and @mem2 are in contiguous memory.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="mem1" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstMemory</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstmemory.h"
+               line="302">a #GstMemory</doc>
           <type name="Memory" c:type="GstMemory*"/>
         </parameter>
         <parameter name="mem2" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstMemory</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstmemory.h"
+               line="303">a #GstMemory</doc>
           <type name="Memory" c:type="GstMemory*"/>
         </parameter>
         <parameter name="offset" transfer-ownership="none">
-          <doc xml:space="preserve">a result offset</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstmemory.h"
+               line="304">a result offset</doc>
           <type name="gsize" c:type="gsize*"/>
         </parameter>
       </parameters>
     </callback>
     <callback name="MemoryMapFullFunction" c:type="GstMemoryMapFullFunction">
-      <doc xml:space="preserve">Get the memory of @mem that can be accessed according to the mode specified
+      <doc xml:space="preserve"
+           filename="gst/gstmemory.h"
+           line="239">Get the memory of @mem that can be accessed according to the mode specified
 in @info's flags. The function should return a pointer that contains at least
 @maxsize bytes.</doc>
+      <source-position filename="gst/gstmemory.h" line="252"/>
       <return-value transfer-ownership="none" nullable="1">
-        <doc xml:space="preserve">a pointer to memory of which at least @maxsize bytes can be
+        <doc xml:space="preserve"
+             filename="gst/gstmemory.h"
+             line="249">a pointer to memory of which at least @maxsize bytes can be
 accessed according to the access pattern in @info's flags.</doc>
         <type name="gpointer" c:type="gpointer"/>
       </return-value>
       <parameters>
         <parameter name="mem" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstMemory</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstmemory.h"
+               line="241">a #GstMemory</doc>
           <type name="Memory" c:type="GstMemory*"/>
         </parameter>
         <parameter name="info" transfer-ownership="none">
-          <doc xml:space="preserve">the #GstMapInfo to map with</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstmemory.h"
+               line="242">the #GstMapInfo to map with</doc>
           <type name="MapInfo" c:type="GstMapInfo*"/>
         </parameter>
         <parameter name="maxsize" transfer-ownership="none">
-          <doc xml:space="preserve">size to map</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstmemory.h"
+               line="243">size to map</doc>
           <type name="gsize" c:type="gsize"/>
         </parameter>
       </parameters>
     </callback>
     <callback name="MemoryMapFunction" c:type="GstMemoryMapFunction">
-      <doc xml:space="preserve">Get the memory of @mem that can be accessed according to the mode specified
+      <doc xml:space="preserve"
+           filename="gst/gstmemory.h"
+           line="224">Get the memory of @mem that can be accessed according to the mode specified
 in @flags. The function should return a pointer that contains at least
 @maxsize bytes.</doc>
+      <source-position filename="gst/gstmemory.h" line="237"/>
       <return-value transfer-ownership="none" nullable="1">
-        <doc xml:space="preserve">a pointer to memory of which at least @maxsize bytes can be
+        <doc xml:space="preserve"
+             filename="gst/gstmemory.h"
+             line="234">a pointer to memory of which at least @maxsize bytes can be
 accessed according to the access pattern in @flags.</doc>
         <type name="gpointer" c:type="gpointer"/>
       </return-value>
       <parameters>
         <parameter name="mem" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstMemory</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstmemory.h"
+               line="226">a #GstMemory</doc>
           <type name="Memory" c:type="GstMemory*"/>
         </parameter>
         <parameter name="maxsize" transfer-ownership="none">
-          <doc xml:space="preserve">size to map</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstmemory.h"
+               line="227">size to map</doc>
           <type name="gsize" c:type="gsize"/>
         </parameter>
         <parameter name="flags" transfer-ownership="none">
-          <doc xml:space="preserve">access mode for the memory</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstmemory.h"
+               line="228">access mode for the memory</doc>
           <type name="MapFlags" c:type="GstMapFlags"/>
         </parameter>
       </parameters>
     </callback>
     <callback name="MemoryShareFunction" c:type="GstMemoryShareFunction">
-      <doc xml:space="preserve">Share @size bytes from @mem starting at @offset and return them wrapped in a
+      <doc xml:space="preserve"
+           filename="gst/gstmemory.h"
+           line="286">Share @size bytes from @mem starting at @offset and return them wrapped in a
 new GstMemory object. If @size is set to -1, all bytes starting at @offset are
 shared. This function does not make a copy of the bytes in @mem.</doc>
+      <source-position filename="gst/gstmemory.h" line="298"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">a new #GstMemory object sharing the requested region in @mem.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmemory.h"
+             line="296">a new #GstMemory object sharing the requested region in @mem.</doc>
         <type name="Memory" c:type="GstMemory*"/>
       </return-value>
       <parameters>
         <parameter name="mem" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstMemory</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstmemory.h"
+               line="288">a #GstMemory</doc>
           <type name="Memory" c:type="GstMemory*"/>
         </parameter>
         <parameter name="offset" transfer-ownership="none">
-          <doc xml:space="preserve">an offset</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstmemory.h"
+               line="289">an offset</doc>
           <type name="gssize" c:type="gssize"/>
         </parameter>
         <parameter name="size" transfer-ownership="none">
-          <doc xml:space="preserve">a size or -1</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstmemory.h"
+               line="290">a size or -1</doc>
           <type name="gssize" c:type="gssize"/>
         </parameter>
       </parameters>
     </callback>
     <callback name="MemoryUnmapFullFunction"
               c:type="GstMemoryUnmapFullFunction">
-      <doc xml:space="preserve">Return the pointer previously retrieved with gst_memory_map() with @info.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstmemory.h"
+           line="262">Release the pointer previously retrieved with gst_memory_map() with @info.</doc>
+      <source-position filename="gst/gstmemory.h" line="269"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="mem" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstMemory</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstmemory.h"
+               line="264">a #GstMemory</doc>
           <type name="Memory" c:type="GstMemory*"/>
         </parameter>
         <parameter name="info" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstMapInfo</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstmemory.h"
+               line="265">a #GstMapInfo</doc>
           <type name="MapInfo" c:type="GstMapInfo*"/>
         </parameter>
       </parameters>
     </callback>
     <callback name="MemoryUnmapFunction" c:type="GstMemoryUnmapFunction">
-      <doc xml:space="preserve">Return the pointer previously retrieved with gst_memory_map().</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstmemory.h"
+           line="254">Release the pointer previously retrieved with gst_memory_map().</doc>
+      <source-position filename="gst/gstmemory.h" line="260"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="mem" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstMemory</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstmemory.h"
+               line="256">a #GstMemory</doc>
           <type name="Memory" c:type="GstMemory*"/>
         </parameter>
       </parameters>
@@ -20158,7 +31527,9 @@ shared. This function does not make a copy of the bytes in @mem.</doc>
             glib:type-name="GstMessage"
             glib:get-type="gst_message_get_type"
             c:symbol-prefix="message">
-      <doc xml:space="preserve">Messages are implemented as a subclass of #GstMiniObject with a generic
+      <doc xml:space="preserve"
+           filename="gst/gstmessage.c"
+           line="22">Messages are implemented as a subclass of #GstMiniObject with a generic
 #GstStructure as the content. This allows for writing custom messages without
 requiring an API change while allowing a wide range of different types
 of messages.
@@ -20173,24 +31544,35 @@ The basic use pattern of posting a message on a #GstBus is as follows:
 
 A #GstElement usually posts messages on the bus provided by the parent
 container using gst_element_post_message().</doc>
+      <source-position filename="gst/gstmessage.h" line="350"/>
       <field name="mini_object" writable="1">
-        <doc xml:space="preserve">the parent structure</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.h"
+             line="329">the parent structure</doc>
         <type name="MiniObject" c:type="GstMiniObject"/>
       </field>
       <field name="type" writable="1">
-        <doc xml:space="preserve">the #GstMessageType of the message</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.h"
+             line="330">the #GstMessageType of the message</doc>
         <type name="MessageType" c:type="GstMessageType"/>
       </field>
       <field name="timestamp" writable="1">
-        <doc xml:space="preserve">the timestamp of the message</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.h"
+             line="331">the timestamp of the message</doc>
         <type name="guint64" c:type="guint64"/>
       </field>
       <field name="src" writable="1">
-        <doc xml:space="preserve">the src of the message</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.h"
+             line="332">the src of the message</doc>
         <type name="Object" c:type="GstObject*"/>
       </field>
       <field name="seqnum" writable="1">
-        <doc xml:space="preserve">the sequence number of the message</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.h"
+             line="333">the sequence number of the message</doc>
         <type name="guint32" c:type="guint32"/>
       </field>
       <field name="lock" readable="0" private="1">
@@ -20201,10 +31583,15 @@ container using gst_element_post_message().</doc>
       </field>
       <constructor name="new_application"
                    c:identifier="gst_message_new_application">
-        <doc xml:space="preserve">Create a new application-typed message. GStreamer will never create these
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="984">Create a new application-typed message. GStreamer will never create these
 messages; they are a gift from us to you. Enjoy.</doc>
+        <source-position filename="gst/gstmessage.h" line="644"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">The new application message.
+          <doc xml:space="preserve"
+               filename="gst/gstmessage.c"
+               line="993">The new application message.
 
 MT safe.</doc>
           <type name="Message" c:type="GstMessage*"/>
@@ -20214,11 +31601,15 @@ MT safe.</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">The object originating the message.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="986">The object originating the message.</doc>
             <type name="Object" c:type="GstObject*"/>
           </parameter>
           <parameter name="structure" transfer-ownership="full">
-            <doc xml:space="preserve">the structure for the message. The message
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="987">the structure for the message. The message
     will take ownership of the structure.</doc>
             <type name="Structure" c:type="GstStructure*"/>
           </parameter>
@@ -20226,13 +31617,18 @@ MT safe.</doc>
       </constructor>
       <constructor name="new_async_done"
                    c:identifier="gst_message_new_async_done">
-        <doc xml:space="preserve">The message is posted when elements completed an ASYNC state change.
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="1072">The message is posted when elements completed an ASYNC state change.
 @running_time contains the time of the desired running_time when this
 elements goes to PLAYING. A value of #GST_CLOCK_TIME_NONE for @running_time
 means that the element has no clock interaction and thus doesn't care about
 the running_time of the pipeline.</doc>
+        <source-position filename="gst/gstmessage.h" line="687"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">The new async_done message.
+          <doc xml:space="preserve"
+               filename="gst/gstmessage.c"
+               line="1083">The new async_done message.
 
 MT safe.</doc>
           <type name="Message" c:type="GstMessage*"/>
@@ -20242,20 +31638,29 @@ MT safe.</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">The object originating the message.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1074">The object originating the message.</doc>
             <type name="Object" c:type="GstObject*"/>
           </parameter>
           <parameter name="running_time" transfer-ownership="none">
-            <doc xml:space="preserve">the desired running_time</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1075">the desired running_time</doc>
             <type name="ClockTime" c:type="GstClockTime"/>
           </parameter>
         </parameters>
       </constructor>
       <constructor name="new_async_start"
                    c:identifier="gst_message_new_async_start">
-        <doc xml:space="preserve">This message is posted by elements when they start an ASYNC state change.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="1052">This message is posted by elements when they start an ASYNC state change.</doc>
+        <source-position filename="gst/gstmessage.h" line="682"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">The new async_start message.
+          <doc xml:space="preserve"
+               filename="gst/gstmessage.c"
+               line="1058">The new async_start message.
 
 MT safe.</doc>
           <type name="Message" c:type="GstMessage*"/>
@@ -20265,14 +31670,18 @@ MT safe.</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">The object originating the message.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1054">The object originating the message.</doc>
             <type name="Object" c:type="GstObject*"/>
           </parameter>
         </parameters>
       </constructor>
       <constructor name="new_buffering"
                    c:identifier="gst_message_new_buffering">
-        <doc xml:space="preserve">Create a new buffering message. This message can be posted by an element that
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="705">Create a new buffering message. This message can be posted by an element that
 needs to buffer data before it can continue processing. @percent should be a
 value between 0 and 100. A value of 100 means that the buffering completed.
 
@@ -20284,8 +31693,11 @@ message with @percent set to 100, which can happen after the pipeline
 completed prerolling.
 
 MT safe.</doc>
+        <source-position filename="gst/gstmessage.h" line="578"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">The new buffering message.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstmessage.c"
+               line="723">The new buffering message.</doc>
           <type name="Message" c:type="GstMessage*"/>
         </return-value>
         <parameters>
@@ -20293,25 +31705,34 @@ MT safe.</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">The object originating the message.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="707">The object originating the message.</doc>
             <type name="Object" c:type="GstObject*"/>
           </parameter>
           <parameter name="percent" transfer-ownership="none">
-            <doc xml:space="preserve">The buffering percent</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="708">The buffering percent</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
         </parameters>
       </constructor>
       <constructor name="new_clock_lost"
                    c:identifier="gst_message_new_clock_lost">
-        <doc xml:space="preserve">Create a clock lost message. This message is posted whenever the
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="831">Create a clock lost message. This message is posted whenever the
 clock is not valid anymore.
 
 If this message is posted by the pipeline, the pipeline will
 select a new clock again when it goes to PLAYING. It might therefore
 be needed to set the pipeline to PAUSED and PLAYING again.</doc>
+        <source-position filename="gst/gstmessage.h" line="628"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">The new clock lost message.
+          <doc xml:space="preserve"
+               filename="gst/gstmessage.c"
+               line="843">The new clock lost message.
 
 MT safe.</doc>
           <type name="Message" c:type="GstMessage*"/>
@@ -20321,25 +31742,34 @@ MT safe.</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">The object originating the message.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="833">The object originating the message.</doc>
             <type name="Object" c:type="GstObject*"/>
           </parameter>
           <parameter name="clock" transfer-ownership="none">
-            <doc xml:space="preserve">the clock that was lost</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="834">the clock that was lost</doc>
             <type name="Clock" c:type="GstClock*"/>
           </parameter>
         </parameters>
       </constructor>
       <constructor name="new_clock_provide"
                    c:identifier="gst_message_new_clock_provide">
-        <doc xml:space="preserve">Create a clock provide message. This message is posted whenever an
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="799">Create a clock provide message. This message is posted whenever an
 element is ready to provide a clock or lost its ability to provide
 a clock (maybe because it paused or became EOS).
 
 This message is mainly used internally to manage the clock
 selection.</doc>
+        <source-position filename="gst/gstmessage.h" line="619"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the new provide clock message.
+          <doc xml:space="preserve"
+               filename="gst/gstmessage.c"
+               line="812">the new provide clock message.
 
 MT safe.</doc>
           <type name="Message" c:type="GstMessage*"/>
@@ -20349,46 +31779,63 @@ MT safe.</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">The object originating the message.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="801">The object originating the message.</doc>
             <type name="Object" c:type="GstObject*"/>
           </parameter>
           <parameter name="clock" transfer-ownership="none">
-            <doc xml:space="preserve">the clock it provides</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="802">the clock it provides</doc>
             <type name="Clock" c:type="GstClock*"/>
           </parameter>
           <parameter name="ready" transfer-ownership="none">
-            <doc xml:space="preserve">%TRUE if the sender can provide a clock</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="803">%TRUE if the sender can provide a clock</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </constructor>
       <constructor name="new_custom" c:identifier="gst_message_new_custom">
-        <doc xml:space="preserve">Create a new custom-typed message. This can be used for anything not
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="281">Create a new custom-typed message. This can be used for anything not
 handled by other message-specific functions to pass a message to the
 app. The structure field can be %NULL.</doc>
+        <source-position filename="gst/gstmessage.h" line="499"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">The new message.
+          <doc xml:space="preserve"
+               filename="gst/gstmessage.c"
+               line="292">The new message.
 
 MT safe.</doc>
           <type name="Message" c:type="GstMessage*"/>
         </return-value>
         <parameters>
           <parameter name="type" transfer-ownership="none">
-            <doc xml:space="preserve">The #GstMessageType to distinguish messages</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="283">The #GstMessageType to distinguish messages</doc>
             <type name="MessageType" c:type="GstMessageType"/>
           </parameter>
           <parameter name="src"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">The object originating the message.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="284">The object originating the message.</doc>
             <type name="Object" c:type="GstObject*"/>
           </parameter>
           <parameter name="structure"
                      transfer-ownership="full"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">the structure for the
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="285">the structure for the
     message. The message will take ownership of the structure.</doc>
             <type name="Structure" c:type="GstStructure*"/>
           </parameter>
@@ -20397,20 +31844,29 @@ MT safe.</doc>
       <constructor name="new_device_added"
                    c:identifier="gst_message_new_device_added"
                    version="1.4">
-        <doc xml:space="preserve">Creates a new device-added message. The device-added message is produced by
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="2592">Creates a new device-added message. The device-added message is produced by
 #GstDeviceProvider or a #GstDeviceMonitor. They announce the appearance
 of monitored devices.</doc>
+        <source-position filename="gst/gstmessage.h" line="809"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a newly allocated #GstMessage</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstmessage.c"
+               line="2601">a newly allocated #GstMessage</doc>
           <type name="Message" c:type="GstMessage*"/>
         </return-value>
         <parameters>
           <parameter name="src" transfer-ownership="none">
-            <doc xml:space="preserve">The #GstObject that created the message</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2594">The #GstObject that created the message</doc>
             <type name="Object" c:type="GstObject*"/>
           </parameter>
           <parameter name="device" transfer-ownership="none">
-            <doc xml:space="preserve">The new #GstDevice</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2595">The new #GstDevice</doc>
             <type name="Device" c:type="GstDevice*"/>
           </parameter>
         </parameters>
@@ -20418,20 +31874,29 @@ of monitored devices.</doc>
       <constructor name="new_device_changed"
                    c:identifier="gst_message_new_device_changed"
                    version="1.16">
-        <doc xml:space="preserve">Creates a new device-changed message. The device-changed message is produced
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="2696">Creates a new device-changed message. The device-changed message is produced
 by #GstDeviceProvider or a #GstDeviceMonitor. They announce that a device
 properties has changed and @device represent the new modified version of @changed_device.</doc>
+        <source-position filename="gst/gstmessage.h" line="825"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a newly allocated #GstMessage</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstmessage.c"
+               line="2706">a newly allocated #GstMessage</doc>
           <type name="Message" c:type="GstMessage*"/>
         </return-value>
         <parameters>
           <parameter name="src" transfer-ownership="none">
-            <doc xml:space="preserve">The #GstObject that created the message</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2698">The #GstObject that created the message</doc>
             <type name="Object" c:type="GstObject*"/>
           </parameter>
           <parameter name="device" transfer-ownership="none">
-            <doc xml:space="preserve">The newly created device representing @replaced_device
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2699">The newly created device representing @replaced_device
         with its new configuration.</doc>
             <type name="Device" c:type="GstDevice*"/>
           </parameter>
@@ -20443,32 +31908,46 @@ properties has changed and @device represent the new modified version of @change
       <constructor name="new_device_removed"
                    c:identifier="gst_message_new_device_removed"
                    version="1.4">
-        <doc xml:space="preserve">Creates a new device-removed message. The device-removed message is produced
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="2644">Creates a new device-removed message. The device-removed message is produced
 by #GstDeviceProvider or a #GstDeviceMonitor. They announce the
 disappearance of monitored devices.</doc>
+        <source-position filename="gst/gstmessage.h" line="817"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a newly allocated #GstMessage</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstmessage.c"
+               line="2653">a newly allocated #GstMessage</doc>
           <type name="Message" c:type="GstMessage*"/>
         </return-value>
         <parameters>
           <parameter name="src" transfer-ownership="none">
-            <doc xml:space="preserve">The #GstObject that created the message</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2646">The #GstObject that created the message</doc>
             <type name="Object" c:type="GstObject*"/>
           </parameter>
           <parameter name="device" transfer-ownership="none">
-            <doc xml:space="preserve">The removed #GstDevice</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2647">The removed #GstDevice</doc>
             <type name="Device" c:type="GstDevice*"/>
           </parameter>
         </parameters>
       </constructor>
       <constructor name="new_duration_changed"
                    c:identifier="gst_message_new_duration_changed">
-        <doc xml:space="preserve">Create a new duration changed message. This message is posted by elements
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="1028">Create a new duration changed message. This message is posted by elements
 that know the duration of a stream when the duration changes. This message
 is received by bins and is used to calculate the total duration of a
 pipeline.</doc>
+        <source-position filename="gst/gstmessage.h" line="672"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">The new duration-changed message.
+          <doc xml:space="preserve"
+               filename="gst/gstmessage.c"
+               line="1037">The new duration-changed message.
 
 MT safe.</doc>
           <type name="Message" c:type="GstMessage*"/>
@@ -20478,18 +31957,25 @@ MT safe.</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">The object originating the message.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1030">The object originating the message.</doc>
             <type name="Object" c:type="GstObject*"/>
           </parameter>
         </parameters>
       </constructor>
       <constructor name="new_element" c:identifier="gst_message_new_element">
-        <doc xml:space="preserve">Create a new element-specific message. This is meant as a generic way of
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="1005">Create a new element-specific message. This is meant as a generic way of
 allowing one-way communication from an element to an application, for example
 "the firewire cable was unplugged". The format of the message should be
 documented in the element's documentation. The structure field can be %NULL.</doc>
+        <source-position filename="gst/gstmessage.h" line="649"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">The new element message.
+          <doc xml:space="preserve"
+               filename="gst/gstmessage.c"
+               line="1016">The new element message.
 
 MT safe.</doc>
           <type name="Message" c:type="GstMessage*"/>
@@ -20499,22 +31985,31 @@ MT safe.</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">The object originating the message.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1007">The object originating the message.</doc>
             <type name="Object" c:type="GstObject*"/>
           </parameter>
           <parameter name="structure" transfer-ownership="full">
-            <doc xml:space="preserve">The structure for the
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1008">The structure for the
     message. The message will take ownership of the structure.</doc>
             <type name="Structure" c:type="GstStructure*"/>
           </parameter>
         </parameters>
       </constructor>
       <constructor name="new_eos" c:identifier="gst_message_new_eos">
-        <doc xml:space="preserve">Create a new eos message. This message is generated and posted in
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="380">Create a new eos message. This message is generated and posted in
 the sink elements of a GstBin. The bin will only forward the EOS
 message to the application if all sinks have posted an EOS message.</doc>
+        <source-position filename="gst/gstmessage.h" line="523"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">The new eos message.
+          <doc xml:space="preserve"
+               filename="gst/gstmessage.c"
+               line="388">The new eos message.
 
 MT safe.</doc>
           <type name="Message" c:type="GstMessage*"/>
@@ -20524,18 +32019,25 @@ MT safe.</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">The object originating the message.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="382">The object originating the message.</doc>
             <type name="Object" c:type="GstObject*"/>
           </parameter>
         </parameters>
       </constructor>
       <constructor name="new_error" c:identifier="gst_message_new_error">
-        <doc xml:space="preserve">Create a new error message. The message will copy @error and
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="447">Create a new error message. The message will copy @error and
 @debug. This message is posted by element when a fatal event
 occurred. The pipeline will probably (partially) stop. The application
 receiving this message should stop the pipeline.</doc>
+        <source-position filename="gst/gstmessage.h" line="528"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the new error message.
+          <doc xml:space="preserve"
+               filename="gst/gstmessage.c"
+               line="458">the new error message.
 
 MT safe.</doc>
           <type name="Message" c:type="GstMessage*"/>
@@ -20545,15 +32047,21 @@ MT safe.</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">The object originating the message.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="449">The object originating the message.</doc>
             <type name="Object" c:type="GstObject*"/>
           </parameter>
           <parameter name="error" transfer-ownership="none">
-            <doc xml:space="preserve">The GError for this message.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="450">The GError for this message.</doc>
             <type name="GLib.Error" c:type="GError*"/>
           </parameter>
           <parameter name="debug" transfer-ownership="none">
-            <doc xml:space="preserve">A debugging string.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="451">A debugging string.</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
@@ -20561,12 +32069,17 @@ MT safe.</doc>
       <constructor name="new_error_with_details"
                    c:identifier="gst_message_new_error_with_details"
                    version="1.10">
-        <doc xml:space="preserve">Create a new error message. The message will copy @error and
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="402">Create a new error message. The message will copy @error and
 @debug. This message is posted by element when a fatal event
 occurred. The pipeline will probably (partially) stop. The application
 receiving this message should stop the pipeline.</doc>
+        <source-position filename="gst/gstmessage.h" line="531"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">the new error message.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstmessage.c"
+               line="414">the new error message.</doc>
           <type name="Message" c:type="GstMessage*"/>
         </return-value>
         <parameters>
@@ -20574,22 +32087,30 @@ receiving this message should stop the pipeline.</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">The object originating the message.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="404">The object originating the message.</doc>
             <type name="Object" c:type="GstObject*"/>
           </parameter>
           <parameter name="error" transfer-ownership="none">
-            <doc xml:space="preserve">The GError for this message.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="405">The GError for this message.</doc>
             <type name="GLib.Error" c:type="GError*"/>
           </parameter>
           <parameter name="debug" transfer-ownership="none">
-            <doc xml:space="preserve">A debugging string.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="406">A debugging string.</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="details"
                      transfer-ownership="full"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">A GstStructure with details</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="407">A GstStructure with details</doc>
             <type name="Structure" c:type="GstStructure*"/>
           </parameter>
         </parameters>
@@ -20597,9 +32118,14 @@ receiving this message should stop the pipeline.</doc>
       <constructor name="new_have_context"
                    c:identifier="gst_message_new_have_context"
                    version="1.2">
-        <doc xml:space="preserve">This message is posted when an element has a new local #GstContext.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="2542">This message is posted when an element has a new local #GstContext.</doc>
+        <source-position filename="gst/gstmessage.h" line="801"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">The new have-context message.
+          <doc xml:space="preserve"
+               filename="gst/gstmessage.c"
+               line="2549">The new have-context message.
 
 MT safe.</doc>
           <type name="Message" c:type="GstMessage*"/>
@@ -20609,20 +32135,29 @@ MT safe.</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">The object originating the message.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2544">The object originating the message.</doc>
             <type name="Object" c:type="GstObject*"/>
           </parameter>
           <parameter name="context" transfer-ownership="full">
-            <doc xml:space="preserve">the context</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2545">the context</doc>
             <type name="Context" c:type="GstContext*"/>
           </parameter>
         </parameters>
       </constructor>
       <constructor name="new_info" c:identifier="gst_message_new_info">
-        <doc xml:space="preserve">Create a new info message. The message will make copies of @error and
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="629">Create a new info message. The message will make copies of @error and
 @debug.</doc>
+        <source-position filename="gst/gstmessage.h" line="556"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the new info message.
+          <doc xml:space="preserve"
+               filename="gst/gstmessage.c"
+               line="638">the new info message.
 
 MT safe.</doc>
           <type name="Message" c:type="GstMessage*"/>
@@ -20632,15 +32167,21 @@ MT safe.</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">The object originating the message.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="631">The object originating the message.</doc>
             <type name="Object" c:type="GstObject*"/>
           </parameter>
           <parameter name="error" transfer-ownership="none">
-            <doc xml:space="preserve">The GError for this message.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="632">The GError for this message.</doc>
             <type name="GLib.Error" c:type="GError*"/>
           </parameter>
           <parameter name="debug" transfer-ownership="none">
-            <doc xml:space="preserve">A debugging string.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="633">A debugging string.</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
@@ -20648,10 +32189,15 @@ MT safe.</doc>
       <constructor name="new_info_with_details"
                    c:identifier="gst_message_new_info_with_details"
                    version="1.10">
-        <doc xml:space="preserve">Create a new info message. The message will make copies of @error and
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="586">Create a new info message. The message will make copies of @error and
 @debug.</doc>
+        <source-position filename="gst/gstmessage.h" line="559"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">the new warning message.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstmessage.c"
+               line="596">the new warning message.</doc>
           <type name="Message" c:type="GstMessage*"/>
         </return-value>
         <parameters>
@@ -20659,31 +32205,77 @@ MT safe.</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">The object originating the message.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="588">The object originating the message.</doc>
             <type name="Object" c:type="GstObject*"/>
           </parameter>
           <parameter name="error" transfer-ownership="none">
-            <doc xml:space="preserve">The GError for this message.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="589">The GError for this message.</doc>
             <type name="GLib.Error" c:type="GError*"/>
           </parameter>
           <parameter name="debug" transfer-ownership="none">
-            <doc xml:space="preserve">A debugging string.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="590">A debugging string.</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="details"
                      transfer-ownership="full"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">A GstStructure with details</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="591">A GstStructure with details</doc>
             <type name="Structure" c:type="GstStructure*"/>
           </parameter>
         </parameters>
       </constructor>
+      <constructor name="new_instant_rate_request"
+                   c:identifier="gst_message_new_instant_rate_request"
+                   version="1.18">
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="3272">Creates a new instant-rate-request message. Elements handling the
+instant-rate-change event must post this message. The message is
+handled at the pipeline, and allows the pipeline to select the
+running time when the rate change should happen and to send an
+@GST_EVENT_INSTANT_RATE_SYNC_TIME event to notify the elements
+in the pipeline.</doc>
+        <source-position filename="gst/gstmessage.h" line="881"/>
+        <return-value transfer-ownership="full">
+          <doc xml:space="preserve"
+               filename="gst/gstmessage.c"
+               line="3284">a newly allocated #GstMessage</doc>
+          <type name="Message" c:type="GstMessage*"/>
+        </return-value>
+        <parameters>
+          <parameter name="src" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="3274">The #GstObject that posted the message</doc>
+            <type name="Object" c:type="GstObject*"/>
+          </parameter>
+          <parameter name="rate_multiplier" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="3275">the rate multiplier factor that should be applied</doc>
+            <type name="gdouble" c:type="gdouble"/>
+          </parameter>
+        </parameters>
+      </constructor>
       <constructor name="new_latency" c:identifier="gst_message_new_latency">
-        <doc xml:space="preserve">This message can be posted by elements when their latency requirements have
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="1100">This message can be posted by elements when their latency requirements have
 changed.</doc>
+        <source-position filename="gst/gstmessage.h" line="677"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">The new latency message.
+          <doc xml:space="preserve"
+               filename="gst/gstmessage.c"
+               line="1107">The new latency message.
 
 MT safe.</doc>
           <type name="Message" c:type="GstMessage*"/>
@@ -20693,7 +32285,9 @@ MT safe.</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">The object originating the message.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1102">The object originating the message.</doc>
             <type name="Object" c:type="GstObject*"/>
           </parameter>
         </parameters>
@@ -20701,9 +32295,14 @@ MT safe.</doc>
       <constructor name="new_need_context"
                    c:identifier="gst_message_new_need_context"
                    version="1.2">
-        <doc xml:space="preserve">This message is posted when an element needs a specific #GstContext.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="2483">This message is posted when an element needs a specific #GstContext.</doc>
+        <source-position filename="gst/gstmessage.h" line="793"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">The new need-context message.
+          <doc xml:space="preserve"
+               filename="gst/gstmessage.c"
+               line="2490">The new need-context message.
 
 MT safe.</doc>
           <type name="Message" c:type="GstMessage*"/>
@@ -20713,21 +32312,30 @@ MT safe.</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">The object originating the message.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2485">The object originating the message.</doc>
             <type name="Object" c:type="GstObject*"/>
           </parameter>
           <parameter name="context_type" transfer-ownership="none">
-            <doc xml:space="preserve">The context type that is needed</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2486">The context type that is needed</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </constructor>
       <constructor name="new_new_clock"
                    c:identifier="gst_message_new_new_clock">
-        <doc xml:space="preserve">Create a new clock message. This message is posted whenever the
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="860">Create a new clock message. This message is posted whenever the
 pipeline selects a new clock for the pipeline.</doc>
+        <source-position filename="gst/gstmessage.h" line="636"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">The new new clock message.
+          <doc xml:space="preserve"
+               filename="gst/gstmessage.c"
+               line="868">The new new clock message.
 
 MT safe.</doc>
           <type name="Message" c:type="GstMessage*"/>
@@ -20737,40 +32345,57 @@ MT safe.</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">The object originating the message.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="862">The object originating the message.</doc>
             <type name="Object" c:type="GstObject*"/>
           </parameter>
           <parameter name="clock" transfer-ownership="none">
-            <doc xml:space="preserve">the new selected clock</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="863">the new selected clock</doc>
             <type name="Clock" c:type="GstClock*"/>
           </parameter>
         </parameters>
       </constructor>
       <constructor name="new_progress" c:identifier="gst_message_new_progress">
-        <doc xml:space="preserve">Progress messages are posted by elements when they use an asynchronous task
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="2223">Progress messages are posted by elements when they use an asynchronous task
 to perform actions triggered by a state change.
 
 @code contains a well defined string describing the action.
 @text should contain a user visible string detailing the current action.</doc>
+        <source-position filename="gst/gstmessage.h" line="757"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">The new qos message.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstmessage.c"
+               line="2236">The new qos message.</doc>
           <type name="Message" c:type="GstMessage*"/>
         </return-value>
         <parameters>
           <parameter name="src" transfer-ownership="none">
-            <doc xml:space="preserve">The object originating the message.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2225">The object originating the message.</doc>
             <type name="Object" c:type="GstObject*"/>
           </parameter>
           <parameter name="type" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstProgressType</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2226">a #GstProgressType</doc>
             <type name="ProgressType" c:type="GstProgressType"/>
           </parameter>
           <parameter name="code" transfer-ownership="none">
-            <doc xml:space="preserve">a progress code</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2227">a progress code</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="text" transfer-ownership="none">
-            <doc xml:space="preserve">free, user visible text describing the progress</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2228">free, user visible text describing the progress</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
@@ -20778,30 +32403,41 @@ to perform actions triggered by a state change.
       <constructor name="new_property_notify"
                    c:identifier="gst_message_new_property_notify"
                    version="1.10">
+        <source-position filename="gst/gstmessage.h" line="834"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a newly allocated #GstMessage</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstmessage.c"
+               line="2765">a newly allocated #GstMessage</doc>
           <type name="Message" c:type="GstMessage*"/>
         </return-value>
         <parameters>
           <parameter name="src" transfer-ownership="none">
-            <doc xml:space="preserve">The #GstObject whose property changed (may or may not be a #GstElement)</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2761">The #GstObject whose property changed (may or may not be a #GstElement)</doc>
             <type name="Object" c:type="GstObject*"/>
           </parameter>
           <parameter name="property_name" transfer-ownership="none">
-            <doc xml:space="preserve">name of the property that changed</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2762">name of the property that changed</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="val"
                      transfer-ownership="full"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">new property value, or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2763">new property value, or %NULL</doc>
             <type name="GObject.Value" c:type="GValue*"/>
           </parameter>
         </parameters>
       </constructor>
       <constructor name="new_qos" c:identifier="gst_message_new_qos">
-        <doc xml:space="preserve">A QOS message is posted on the bus whenever an element decides to drop a
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="2001">A QOS message is posted on the bus whenever an element decides to drop a
 buffer because of QoS reasons or whenever it changes its processing strategy
 because of QoS reasons (quality adjustments such as processing at lower
 accuracy).
@@ -20814,35 +32450,50 @@ events received from a downstream element (!live).
 respective running-time, stream-time, timestamp and duration of the (dropped)
 buffer that generated the QoS event. Values can be left to
 GST_CLOCK_TIME_NONE when unknown.</doc>
+        <source-position filename="gst/gstmessage.h" line="737"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">The new qos message.
+          <doc xml:space="preserve"
+               filename="gst/gstmessage.c"
+               line="2024">The new qos message.
 
 MT safe.</doc>
           <type name="Message" c:type="GstMessage*"/>
         </return-value>
         <parameters>
           <parameter name="src" transfer-ownership="none">
-            <doc xml:space="preserve">The object originating the message.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2003">The object originating the message.</doc>
             <type name="Object" c:type="GstObject*"/>
           </parameter>
           <parameter name="live" transfer-ownership="none">
-            <doc xml:space="preserve">if the message was generated by a live element</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2004">if the message was generated by a live element</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
           <parameter name="running_time" transfer-ownership="none">
-            <doc xml:space="preserve">the running time of the buffer that generated the message</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2005">the running time of the buffer that generated the message</doc>
             <type name="guint64" c:type="guint64"/>
           </parameter>
           <parameter name="stream_time" transfer-ownership="none">
-            <doc xml:space="preserve">the stream time of the buffer that generated the message</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2006">the stream time of the buffer that generated the message</doc>
             <type name="guint64" c:type="guint64"/>
           </parameter>
           <parameter name="timestamp" transfer-ownership="none">
-            <doc xml:space="preserve">the timestamps of the buffer that generated the message</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2007">the timestamps of the buffer that generated the message</doc>
             <type name="guint64" c:type="guint64"/>
           </parameter>
           <parameter name="duration" transfer-ownership="none">
-            <doc xml:space="preserve">the duration of the buffer that generated the message</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2008">the duration of the buffer that generated the message</doc>
             <type name="guint64" c:type="guint64"/>
           </parameter>
         </parameters>
@@ -20850,7 +32501,9 @@ MT safe.</doc>
       <constructor name="new_redirect"
                    c:identifier="gst_message_new_redirect"
                    version="1.10">
-        <doc xml:space="preserve">Creates a new redirect message and adds a new entry to it. Redirect messages
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="3032">Creates a new redirect message and adds a new entry to it. Redirect messages
 are posted when an element detects that the actual data has to be retrieved
 from a different location. This is useful if such a redirection cannot be
 handled inside a source element, for example when HTTP 302/303 redirects
@@ -20866,8 +32519,8 @@ optional. The tag list and structure are useful for additional metadata,
 such as bitrate statistics for the given location.
 
 By default, message recipients should treat entries in the order they are
-stored. The recipient should therefore try entry #0 first, and if this
-entry is not acceptable or working, try entry #1 etc. Senders must make
+stored. The recipient should therefore try entry \#0 first, and if this
+entry is not acceptable or working, try entry \#1 etc. Senders must make
 sure that they add entries in this order. However, recipients are free to
 ignore the order and pick an entry that is "best" for them. One example
 would be a recipient that scans the entries for the one with the highest
@@ -20875,42 +32528,58 @@ bitrate tag.
 
 The specified location string is copied. However, ownership over the tag
 list and structure are transferred to the message.</doc>
+        <source-position filename="gst/gstmessage.h" line="867"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a newly allocated #GstMessage</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstmessage.c"
+               line="3065">a newly allocated #GstMessage</doc>
           <type name="Message" c:type="GstMessage*"/>
         </return-value>
         <parameters>
           <parameter name="src" transfer-ownership="none">
-            <doc xml:space="preserve">The #GstObject whose property changed (may or may not be a #GstElement)</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="3034">The #GstObject whose property changed (may or may not be a #GstElement)</doc>
             <type name="Object" c:type="GstObject*"/>
           </parameter>
           <parameter name="location" transfer-ownership="none">
-            <doc xml:space="preserve">location string for the new entry</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="3035">location string for the new entry</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="tag_list"
                      transfer-ownership="full"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">tag list for the new entry</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="3036">tag list for the new entry</doc>
             <type name="TagList" c:type="GstTagList*"/>
           </parameter>
           <parameter name="entry_struct"
                      transfer-ownership="full"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">structure for the new entry</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="3037">structure for the new entry</doc>
             <type name="Structure" c:type="const GstStructure*"/>
           </parameter>
         </parameters>
       </constructor>
       <constructor name="new_request_state"
                    c:identifier="gst_message_new_request_state">
-        <doc xml:space="preserve">This message can be posted by elements when they want to have their state
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="1121">This message can be posted by elements when they want to have their state
 changed. A typical use case would be an audio server that wants to pause the
 pipeline because a higher priority stream is being played.</doc>
+        <source-position filename="gst/gstmessage.h" line="718"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the new request state message.
+          <doc xml:space="preserve"
+               filename="gst/gstmessage.c"
+               line="1130">the new request state message.
 
 MT safe.</doc>
           <type name="Message" c:type="GstMessage*"/>
@@ -20920,21 +32589,30 @@ MT safe.</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">The object originating the message.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1123">The object originating the message.</doc>
             <type name="Object" c:type="GstObject*"/>
           </parameter>
           <parameter name="state" transfer-ownership="none">
-            <doc xml:space="preserve">The new requested state</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1124">The new requested state</doc>
             <type name="State" c:type="GstState"/>
           </parameter>
         </parameters>
       </constructor>
       <constructor name="new_reset_time"
                    c:identifier="gst_message_new_reset_time">
-        <doc xml:space="preserve">This message is posted when the pipeline running-time should be reset to
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="2339">This message is posted when the pipeline running-time should be reset to
 @running_time, like after a flushing seek.</doc>
+        <source-position filename="gst/gstmessage.h" line="774"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">The new reset_time message.
+          <doc xml:space="preserve"
+               filename="gst/gstmessage.c"
+               line="2347">The new reset_time message.
 
 MT safe.</doc>
           <type name="Message" c:type="GstMessage*"/>
@@ -20944,23 +32622,32 @@ MT safe.</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">The object originating the message.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2341">The object originating the message.</doc>
             <type name="Object" c:type="GstObject*"/>
           </parameter>
           <parameter name="running_time" transfer-ownership="none">
-            <doc xml:space="preserve">the requested running-time</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2342">the requested running-time</doc>
             <type name="ClockTime" c:type="GstClockTime"/>
           </parameter>
         </parameters>
       </constructor>
       <constructor name="new_segment_done"
                    c:identifier="gst_message_new_segment_done">
-        <doc xml:space="preserve">Create a new segment done message. This message is posted by elements that
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="954">Create a new segment done message. This message is posted by elements that
 finish playback of a segment as a result of a segment seek. This message
 is received by the application after all elements that posted a segment_start
 have posted the segment_done.</doc>
+        <source-position filename="gst/gstmessage.h" line="663"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the new segment done message.
+          <doc xml:space="preserve"
+               filename="gst/gstmessage.c"
+               line="965">the new segment done message.
 
 MT safe.</doc>
           <type name="Message" c:type="GstMessage*"/>
@@ -20970,27 +32657,38 @@ MT safe.</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">The object originating the message.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="956">The object originating the message.</doc>
             <type name="Object" c:type="GstObject*"/>
           </parameter>
           <parameter name="format" transfer-ownership="none">
-            <doc xml:space="preserve">The format of the position being done</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="957">The format of the position being done</doc>
             <type name="Format" c:type="GstFormat"/>
           </parameter>
           <parameter name="position" transfer-ownership="none">
-            <doc xml:space="preserve">The position of the segment being done</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="958">The position of the segment being done</doc>
             <type name="gint64" c:type="gint64"/>
           </parameter>
         </parameters>
       </constructor>
       <constructor name="new_segment_start"
                    c:identifier="gst_message_new_segment_start">
-        <doc xml:space="preserve">Create a new segment message. This message is posted by elements that
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="924">Create a new segment message. This message is posted by elements that
 start playback of a segment as a result of a segment seek. This message
 is not received by the application but is used for maintenance reasons in
 container elements.</doc>
+        <source-position filename="gst/gstmessage.h" line="654"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the new segment start message.
+          <doc xml:space="preserve"
+               filename="gst/gstmessage.c"
+               line="935">the new segment start message.
 
 MT safe.</doc>
           <type name="Message" c:type="GstMessage*"/>
@@ -21000,25 +32698,36 @@ MT safe.</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">The object originating the message.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="926">The object originating the message.</doc>
             <type name="Object" c:type="GstObject*"/>
           </parameter>
           <parameter name="format" transfer-ownership="none">
-            <doc xml:space="preserve">The format of the position being played</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="927">The format of the position being played</doc>
             <type name="Format" c:type="GstFormat"/>
           </parameter>
           <parameter name="position" transfer-ownership="none">
-            <doc xml:space="preserve">The position of the segment being played</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="928">The position of the segment being played</doc>
             <type name="gint64" c:type="gint64"/>
           </parameter>
         </parameters>
       </constructor>
       <constructor name="new_state_changed"
                    c:identifier="gst_message_new_state_changed">
-        <doc xml:space="preserve">Create a state change message. This message is posted whenever an element
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="747">Create a state change message. This message is posted whenever an element
 changed its state.</doc>
+        <source-position filename="gst/gstmessage.h" line="595"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the new state change message.
+          <doc xml:space="preserve"
+               filename="gst/gstmessage.c"
+               line="757">the new state change message.
 
 MT safe.</doc>
           <type name="Message" c:type="GstMessage*"/>
@@ -21028,30 +32737,43 @@ MT safe.</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">The object originating the message.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="749">The object originating the message.</doc>
             <type name="Object" c:type="GstObject*"/>
           </parameter>
           <parameter name="oldstate" transfer-ownership="none">
-            <doc xml:space="preserve">the previous state</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="750">the previous state</doc>
             <type name="State" c:type="GstState"/>
           </parameter>
           <parameter name="newstate" transfer-ownership="none">
-            <doc xml:space="preserve">the new (current) state</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="751">the new (current) state</doc>
             <type name="State" c:type="GstState"/>
           </parameter>
           <parameter name="pending" transfer-ownership="none">
-            <doc xml:space="preserve">the pending (target) state</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="752">the pending (target) state</doc>
             <type name="State" c:type="GstState"/>
           </parameter>
         </parameters>
       </constructor>
       <constructor name="new_state_dirty"
                    c:identifier="gst_message_new_state_dirty">
-        <doc xml:space="preserve">Create a state dirty message. This message is posted whenever an element
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="777">Create a state dirty message. This message is posted whenever an element
 changed its state asynchronously and is used internally to update the
 states of container objects.</doc>
+        <source-position filename="gst/gstmessage.h" line="604"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the new state dirty message.
+          <doc xml:space="preserve"
+               filename="gst/gstmessage.c"
+               line="785">the new state dirty message.
 
 MT safe.</doc>
           <type name="Message" c:type="GstMessage*"/>
@@ -21061,62 +32783,87 @@ MT safe.</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">The object originating the message</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="779">The object originating the message</doc>
             <type name="Object" c:type="GstObject*"/>
           </parameter>
         </parameters>
       </constructor>
       <constructor name="new_step_done"
                    c:identifier="gst_message_new_step_done">
-        <doc xml:space="preserve">This message is posted by elements when they complete a part, when @intermediate set
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="1845">This message is posted by elements when they complete a part, when @intermediate set
 to %TRUE, or a complete step operation.
 
 @duration will contain the amount of time (in GST_FORMAT_TIME) of the stepped
 @amount of media in format @format.</doc>
+        <source-position filename="gst/gstmessage.h" line="609"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the new step_done message.
+          <doc xml:space="preserve"
+               filename="gst/gstmessage.c"
+               line="1862">the new step_done message.
 
 MT safe.</doc>
           <type name="Message" c:type="GstMessage*"/>
         </return-value>
         <parameters>
           <parameter name="src" transfer-ownership="none">
-            <doc xml:space="preserve">The object originating the message.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1847">The object originating the message.</doc>
             <type name="Object" c:type="GstObject*"/>
           </parameter>
           <parameter name="format" transfer-ownership="none">
-            <doc xml:space="preserve">the format of @amount</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1848">the format of @amount</doc>
             <type name="Format" c:type="GstFormat"/>
           </parameter>
           <parameter name="amount" transfer-ownership="none">
-            <doc xml:space="preserve">the amount of stepped data</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1849">the amount of stepped data</doc>
             <type name="guint64" c:type="guint64"/>
           </parameter>
           <parameter name="rate" transfer-ownership="none">
-            <doc xml:space="preserve">the rate of the stepped amount</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1850">the rate of the stepped amount</doc>
             <type name="gdouble" c:type="gdouble"/>
           </parameter>
           <parameter name="flush" transfer-ownership="none">
-            <doc xml:space="preserve">is this an flushing step</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1851">is this an flushing step</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
           <parameter name="intermediate" transfer-ownership="none">
-            <doc xml:space="preserve">is this an intermediate step</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1852">is this an intermediate step</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
           <parameter name="duration" transfer-ownership="none">
-            <doc xml:space="preserve">the duration of the data</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1853">the duration of the data</doc>
             <type name="guint64" c:type="guint64"/>
           </parameter>
           <parameter name="eos" transfer-ownership="none">
-            <doc xml:space="preserve">the step caused EOS</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1854">the step caused EOS</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </constructor>
       <constructor name="new_step_start"
                    c:identifier="gst_message_new_step_start">
-        <doc xml:space="preserve">This message is posted by elements when they accept or activate a new step
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="1923">This message is posted by elements when they accept or activate a new step
 event for @amount in @format.
 
 @active is set to %FALSE when the element accepted the new step event and has
@@ -21126,39 +32873,56 @@ queued it for execution in the streaming threads.
 is now ready to start executing the step in the streaming thread. After this
 message is emitted, the application can queue a new step operation in the
 element.</doc>
+        <source-position filename="gst/gstmessage.h" line="726"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">The new step_start message.
+          <doc xml:space="preserve"
+               filename="gst/gstmessage.c"
+               line="1944">The new step_start message.
 
 MT safe.</doc>
           <type name="Message" c:type="GstMessage*"/>
         </return-value>
         <parameters>
           <parameter name="src" transfer-ownership="none">
-            <doc xml:space="preserve">The object originating the message.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1925">The object originating the message.</doc>
             <type name="Object" c:type="GstObject*"/>
           </parameter>
           <parameter name="active" transfer-ownership="none">
-            <doc xml:space="preserve">if the step is active or queued</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1926">if the step is active or queued</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
           <parameter name="format" transfer-ownership="none">
-            <doc xml:space="preserve">the format of @amount</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1927">the format of @amount</doc>
             <type name="Format" c:type="GstFormat"/>
           </parameter>
           <parameter name="amount" transfer-ownership="none">
-            <doc xml:space="preserve">the amount of stepped data</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1928">the amount of stepped data</doc>
             <type name="guint64" c:type="guint64"/>
           </parameter>
           <parameter name="rate" transfer-ownership="none">
-            <doc xml:space="preserve">the rate of the stepped amount</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1929">the rate of the stepped amount</doc>
             <type name="gdouble" c:type="gdouble"/>
           </parameter>
           <parameter name="flush" transfer-ownership="none">
-            <doc xml:space="preserve">is this an flushing step</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1930">is this an flushing step</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
           <parameter name="intermediate" transfer-ownership="none">
-            <doc xml:space="preserve">is this an intermediate step</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1931">is this an intermediate step</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
@@ -21166,30 +32930,44 @@ MT safe.</doc>
       <constructor name="new_stream_collection"
                    c:identifier="gst_message_new_stream_collection"
                    version="1.10">
-        <doc xml:space="preserve">Creates a new stream-collection message. The message is used to announce new
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="2831">Creates a new stream-collection message. The message is used to announce new
 #GstStreamCollection</doc>
+        <source-position filename="gst/gstmessage.h" line="842"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a newly allocated #GstMessage</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstmessage.c"
+               line="2839">a newly allocated #GstMessage</doc>
           <type name="Message" c:type="GstMessage*"/>
         </return-value>
         <parameters>
           <parameter name="src" transfer-ownership="none">
-            <doc xml:space="preserve">The #GstObject that created the message</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2833">The #GstObject that created the message</doc>
             <type name="Object" c:type="GstObject*"/>
           </parameter>
           <parameter name="collection" transfer-ownership="none">
-            <doc xml:space="preserve">The #GstStreamCollection</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2834">The #GstStreamCollection</doc>
             <type name="StreamCollection" c:type="GstStreamCollection*"/>
           </parameter>
         </parameters>
       </constructor>
       <constructor name="new_stream_start"
                    c:identifier="gst_message_new_stream_start">
-        <doc xml:space="preserve">Create a new stream_start message. This message is generated and posted in
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="2389">Create a new stream_start message. This message is generated and posted in
 the sink elements of a GstBin. The bin will only forward the STREAM_START
 message to the application if all sinks have posted an STREAM_START message.</doc>
+        <source-position filename="gst/gstmessage.h" line="782"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">The new stream_start message.
+          <doc xml:space="preserve"
+               filename="gst/gstmessage.c"
+               line="2397">The new stream_start message.
 
 MT safe.</doc>
           <type name="Message" c:type="GstMessage*"/>
@@ -21199,32 +32977,45 @@ MT safe.</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">The object originating the message.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2391">The object originating the message.</doc>
             <type name="Object" c:type="GstObject*"/>
           </parameter>
         </parameters>
       </constructor>
       <constructor name="new_stream_status"
                    c:identifier="gst_message_new_stream_status">
-        <doc xml:space="preserve">Create a new stream status message. This message is posted when a streaming
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="1735">Create a new stream status message. This message is posted when a streaming
 thread is created/destroyed or when the state changed.</doc>
+        <source-position filename="gst/gstmessage.h" line="704"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the new stream status message.
+          <doc xml:space="preserve"
+               filename="gst/gstmessage.c"
+               line="1744">the new stream status message.
 
 MT safe.</doc>
           <type name="Message" c:type="GstMessage*"/>
         </return-value>
         <parameters>
           <parameter name="src" transfer-ownership="none">
-            <doc xml:space="preserve">The object originating the message.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1737">The object originating the message.</doc>
             <type name="Object" c:type="GstObject*"/>
           </parameter>
           <parameter name="type" transfer-ownership="none">
-            <doc xml:space="preserve">The stream status type.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1738">The stream status type.</doc>
             <type name="StreamStatusType" c:type="GstStreamStatusType"/>
           </parameter>
           <parameter name="owner" transfer-ownership="none">
-            <doc xml:space="preserve">the owner element of @src.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1739">the owner element of @src.</doc>
             <type name="Element" c:type="GstElement*"/>
           </parameter>
         </parameters>
@@ -21232,7 +33023,9 @@ MT safe.</doc>
       <constructor name="new_streams_selected"
                    c:identifier="gst_message_new_streams_selected"
                    version="1.10">
-        <doc xml:space="preserve">Creates a new steams-selected message. The message is used to announce
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="2885">Creates a new steams-selected message. The message is used to announce
 that an array of streams has been selected. This is generally in response
 to a #GST_EVENT_SELECT_STREAMS event, or when an element (such as decodebin3)
 makes an initial selection of streams.
@@ -21242,30 +33035,42 @@ belong to.
 
 Users of gst_message_new_streams_selected() can add the selected streams with
 gst_message_streams_selected_add().</doc>
+        <source-position filename="gst/gstmessage.h" line="850"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a newly allocated #GstMessage</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstmessage.c"
+               line="2901">a newly allocated #GstMessage</doc>
           <type name="Message" c:type="GstMessage*"/>
         </return-value>
         <parameters>
           <parameter name="src" transfer-ownership="none">
-            <doc xml:space="preserve">The #GstObject that created the message</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2887">The #GstObject that created the message</doc>
             <type name="Object" c:type="GstObject*"/>
           </parameter>
           <parameter name="collection" transfer-ownership="none">
-            <doc xml:space="preserve">The #GstStreamCollection</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2888">The #GstStreamCollection</doc>
             <type name="StreamCollection" c:type="GstStreamCollection*"/>
           </parameter>
         </parameters>
       </constructor>
       <constructor name="new_structure_change"
                    c:identifier="gst_message_new_structure_change">
-        <doc xml:space="preserve">Create a new structure change message. This message is posted when the
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="885">Create a new structure change message. This message is posted when the
 structure of a pipeline is in the process of being changed, for example
 when pads are linked or unlinked.
 
 @src should be the sinkpad that unlinked or linked.</doc>
+        <source-position filename="gst/gstmessage.h" line="695"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the new structure change message.
+          <doc xml:space="preserve"
+               filename="gst/gstmessage.c"
+               line="898">the new structure change message.
 
 MT safe.</doc>
           <type name="Message" c:type="GstMessage*"/>
@@ -21275,28 +33080,41 @@ MT safe.</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">The object originating the message.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="887">The object originating the message.</doc>
             <type name="Object" c:type="GstObject*"/>
           </parameter>
           <parameter name="type" transfer-ownership="none">
-            <doc xml:space="preserve">The change type.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="888">The change type.</doc>
             <type name="StructureChangeType" c:type="GstStructureChangeType"/>
           </parameter>
           <parameter name="owner" transfer-ownership="none">
-            <doc xml:space="preserve">The owner element of @src.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="889">The owner element of @src.</doc>
             <type name="Element" c:type="GstElement*"/>
           </parameter>
           <parameter name="busy" transfer-ownership="none">
-            <doc xml:space="preserve">Whether the structure change is busy.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="890">Whether the structure change is busy.</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </constructor>
       <constructor name="new_tag" c:identifier="gst_message_new_tag">
-        <doc xml:space="preserve">Create a new tag message. The message will take ownership of the tag list.
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="676">Create a new tag message. The message will take ownership of the tag list.
 The message is posted by elements that discovered a new taglist.</doc>
+        <source-position filename="gst/gstmessage.h" line="570"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the new tag message.
+          <doc xml:space="preserve"
+               filename="gst/gstmessage.c"
+               line="684">the new tag message.
 
 MT safe.</doc>
           <type name="Message" c:type="GstMessage*"/>
@@ -21306,44 +33124,64 @@ MT safe.</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">The object originating the message.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="678">The object originating the message.</doc>
             <type name="Object" c:type="GstObject*"/>
           </parameter>
           <parameter name="tag_list" transfer-ownership="full">
-            <doc xml:space="preserve">the tag list for the message.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="679">the tag list for the message.</doc>
             <type name="TagList" c:type="GstTagList*"/>
           </parameter>
         </parameters>
       </constructor>
       <constructor name="new_toc" c:identifier="gst_message_new_toc">
-        <doc xml:space="preserve">Create a new TOC message. The message is posted by elements
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="2288">Create a new TOC message. The message is posted by elements
 that discovered or updated a TOC.</doc>
+        <source-position filename="gst/gstmessage.h" line="766"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new TOC message.
+          <doc xml:space="preserve"
+               filename="gst/gstmessage.c"
+               line="2297">a new TOC message.
 
 MT safe.</doc>
           <type name="Message" c:type="GstMessage*"/>
         </return-value>
         <parameters>
           <parameter name="src" transfer-ownership="none">
-            <doc xml:space="preserve">the object originating the message.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2290">the object originating the message.</doc>
             <type name="Object" c:type="GstObject*"/>
           </parameter>
           <parameter name="toc" transfer-ownership="none">
-            <doc xml:space="preserve">#GstToc structure for the message.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2291">#GstToc structure for the message.</doc>
             <type name="Toc" c:type="GstToc*"/>
           </parameter>
           <parameter name="updated" transfer-ownership="none">
-            <doc xml:space="preserve">whether TOC was updated or not.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2292">whether TOC was updated or not.</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </constructor>
       <constructor name="new_warning" c:identifier="gst_message_new_warning">
-        <doc xml:space="preserve">Create a new warning message. The message will make copies of @error and
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="539">Create a new warning message. The message will make copies of @error and
 @debug.</doc>
+        <source-position filename="gst/gstmessage.h" line="542"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the new warning message.
+          <doc xml:space="preserve"
+               filename="gst/gstmessage.c"
+               line="548">the new warning message.
 
 MT safe.</doc>
           <type name="Message" c:type="GstMessage*"/>
@@ -21353,15 +33191,21 @@ MT safe.</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">The object originating the message.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="541">The object originating the message.</doc>
             <type name="Object" c:type="GstObject*"/>
           </parameter>
           <parameter name="error" transfer-ownership="none">
-            <doc xml:space="preserve">The GError for this message.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="542">The GError for this message.</doc>
             <type name="GLib.Error" c:type="GError*"/>
           </parameter>
           <parameter name="debug" transfer-ownership="none">
-            <doc xml:space="preserve">A debugging string.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="543">A debugging string.</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
@@ -21369,10 +33213,15 @@ MT safe.</doc>
       <constructor name="new_warning_with_details"
                    c:identifier="gst_message_new_warning_with_details"
                    version="1.10">
-        <doc xml:space="preserve">Create a new warning message. The message will make copies of @error and
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="496">Create a new warning message. The message will make copies of @error and
 @debug.</doc>
+        <source-position filename="gst/gstmessage.h" line="545"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">the new warning message.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstmessage.c"
+               line="506">the new warning message.</doc>
           <type name="Message" c:type="GstMessage*"/>
         </return-value>
         <parameters>
@@ -21380,22 +33229,30 @@ MT safe.</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">The object originating the message.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="498">The object originating the message.</doc>
             <type name="Object" c:type="GstObject*"/>
           </parameter>
           <parameter name="error" transfer-ownership="none">
-            <doc xml:space="preserve">The GError for this message.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="499">The GError for this message.</doc>
             <type name="GLib.Error" c:type="GError*"/>
           </parameter>
           <parameter name="debug" transfer-ownership="none">
-            <doc xml:space="preserve">A debugging string.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="500">A debugging string.</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="details"
                      transfer-ownership="full"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">A GstStructure with details</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="501">A GstStructure with details</doc>
             <type name="Structure" c:type="GstStructure*"/>
           </parameter>
         </parameters>
@@ -21403,54 +33260,94 @@ MT safe.</doc>
       <method name="add_redirect_entry"
               c:identifier="gst_message_add_redirect_entry"
               version="1.10">
-        <doc xml:space="preserve">Creates and appends a new entry.
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="3101">Creates and appends a new entry.
 
 The specified location string is copied. However, ownership over the tag
 list and structure are transferred to the message.</doc>
+        <source-position filename="gst/gstmessage.h" line="870"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="message" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstMessage of type %GST_MESSAGE_REDIRECT</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="3103">a #GstMessage of type %GST_MESSAGE_REDIRECT</doc>
             <type name="Message" c:type="GstMessage*"/>
           </instance-parameter>
           <parameter name="location" transfer-ownership="none">
-            <doc xml:space="preserve">location string for the new entry</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="3104">location string for the new entry</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="tag_list"
                      transfer-ownership="full"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">tag list for the new entry</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="3105">tag list for the new entry</doc>
             <type name="TagList" c:type="GstTagList*"/>
           </parameter>
           <parameter name="entry_struct"
                      transfer-ownership="full"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">structure for the new entry</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="3106">structure for the new entry</doc>
             <type name="Structure" c:type="const GstStructure*"/>
           </parameter>
         </parameters>
       </method>
+      <method name="copy" c:identifier="gst_message_copy" introspectable="0">
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.h"
+             line="413">Creates a copy of the message. Returns a copy of the message.</doc>
+        <source-position filename="gst/gstmessage.h" line="423"/>
+        <return-value transfer-ownership="full">
+          <doc xml:space="preserve"
+               filename="gst/gstmessage.h"
+               line="419">a new copy of @msg.
+
+MT safe</doc>
+          <type name="Message" c:type="GstMessage*"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="msg" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.h"
+                 line="415">the message to copy</doc>
+            <type name="Message" c:type="const GstMessage*"/>
+          </instance-parameter>
+        </parameters>
+      </method>
       <method name="get_num_redirect_entries"
               c:identifier="gst_message_get_num_redirect_entries"
               version="1.10">
+        <source-position filename="gst/gstmessage.h" line="876"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the number of entries stored in the message</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstmessage.c"
+               line="3232">the number of entries stored in the message</doc>
           <type name="gsize" c:type="gsize"/>
         </return-value>
         <parameters>
           <instance-parameter name="message" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstMessage of type %GST_MESSAGE_REDIRECT</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="3230">a #GstMessage of type %GST_MESSAGE_REDIRECT</doc>
             <type name="Message" c:type="GstMessage*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_seqnum" c:identifier="gst_message_get_seqnum">
-        <doc xml:space="preserve">Retrieve the sequence number of a message.
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="329">Retrieve the sequence number of a message.
 
 Messages have ever-incrementing sequence numbers, which may also be set
 explicitly via gst_message_set_seqnum(). Sequence numbers are typically used
@@ -21462,24 +33359,34 @@ it is not required.
 Note that events and messages share the same sequence number incrementor;
 two events or messages will never have the same sequence number unless
 that correspondence was made explicitly.</doc>
+        <source-position filename="gst/gstmessage.h" line="515"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The message's sequence number.
+          <doc xml:space="preserve"
+               filename="gst/gstmessage.c"
+               line="346">The message's sequence number.
 
 MT safe.</doc>
           <type name="guint32" c:type="guint32"/>
         </return-value>
         <parameters>
           <instance-parameter name="message" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstMessage.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="331">A #GstMessage.</doc>
             <type name="Message" c:type="GstMessage*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_stream_status_object"
               c:identifier="gst_message_get_stream_status_object">
-        <doc xml:space="preserve">Extracts the object managing the streaming thread from @message.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="1818">Extracts the object managing the streaming thread from @message.</doc>
+        <source-position filename="gst/gstmessage.h" line="713"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">a GValue containing the object that manages the
+          <doc xml:space="preserve"
+               filename="gst/gstmessage.c"
+               line="1824">a GValue containing the object that manages the
 streaming thread. This object is usually of type GstTask but other types can
 be added in the future. The object remains valid as long as @message is
 valid.</doc>
@@ -21487,15 +33394,22 @@ valid.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="message" transfer-ownership="none">
-            <doc xml:space="preserve">A valid #GstMessage of type GST_MESSAGE_STREAM_STATUS.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1820">A valid #GstMessage of type GST_MESSAGE_STREAM_STATUS.</doc>
             <type name="Message" c:type="GstMessage*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_structure" c:identifier="gst_message_get_structure">
-        <doc xml:space="preserve">Access the structure of the message.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="1147">Access the structure of the message.</doc>
+        <source-position filename="gst/gstmessage.h" line="504"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">The structure of the message. The
+          <doc xml:space="preserve"
+               filename="gst/gstmessage.c"
+               line="1153">The structure of the message. The
 structure is still owned by the message, which means that you should not
 free it and that the pointer becomes invalid when you free the message.
 
@@ -21504,40 +33418,56 @@ MT safe.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="message" transfer-ownership="none">
-            <doc xml:space="preserve">The #GstMessage.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1149">The #GstMessage.</doc>
             <type name="Message" c:type="GstMessage*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="has_name" c:identifier="gst_message_has_name">
-        <doc xml:space="preserve">Checks if @message has the given @name. This function is usually used to
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="1204">Checks if @message has the given @name. This function is usually used to
 check the name of a custom message.</doc>
+        <source-position filename="gst/gstmessage.h" line="510"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if @name matches the name of the message structure.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstmessage.c"
+               line="1212">%TRUE if @name matches the name of the message structure.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="message" transfer-ownership="none">
-            <doc xml:space="preserve">The #GstMessage.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1206">The #GstMessage.</doc>
             <type name="Message" c:type="GstMessage*"/>
           </instance-parameter>
           <parameter name="name" transfer-ownership="none">
-            <doc xml:space="preserve">name to check</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1207">name to check</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </method>
       <method name="parse_async_done"
               c:identifier="gst_message_parse_async_done">
-        <doc xml:space="preserve">Extract the running_time from the async_done message.
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="1687">Extract the running_time from the async_done message.
 
 MT safe.</doc>
+        <source-position filename="gst/gstmessage.h" line="690"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="message" transfer-ownership="none">
-            <doc xml:space="preserve">A valid #GstMessage of type GST_MESSAGE_ASYNC_DONE.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1689">A valid #GstMessage of type GST_MESSAGE_ASYNC_DONE.</doc>
             <type name="Message" c:type="GstMessage*"/>
           </instance-parameter>
           <parameter name="running_time"
@@ -21546,23 +33476,30 @@ MT safe.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">Result location for the running_time or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1690">Result location for the running_time or %NULL</doc>
             <type name="ClockTime" c:type="GstClockTime*"/>
           </parameter>
         </parameters>
       </method>
       <method name="parse_buffering"
               c:identifier="gst_message_parse_buffering">
-        <doc xml:space="preserve">Extracts the buffering percent from the GstMessage. see also
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="1267">Extracts the buffering percent from the GstMessage. see also
 gst_message_new_buffering().
 
 MT safe.</doc>
+        <source-position filename="gst/gstmessage.h" line="581"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="message" transfer-ownership="none">
-            <doc xml:space="preserve">A valid #GstMessage of type GST_MESSAGE_BUFFERING.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1269">A valid #GstMessage of type GST_MESSAGE_BUFFERING.</doc>
             <type name="Message" c:type="GstMessage*"/>
           </instance-parameter>
           <parameter name="percent"
@@ -21571,20 +33508,27 @@ MT safe.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">Return location for the percent.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1270">Return location for the percent.</doc>
             <type name="gint" c:type="gint*"/>
           </parameter>
         </parameters>
       </method>
       <method name="parse_buffering_stats"
               c:identifier="gst_message_parse_buffering_stats">
-        <doc xml:space="preserve">Extracts the buffering stats values from @message.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="1313">Extracts the buffering stats values from @message.</doc>
+        <source-position filename="gst/gstmessage.h" line="588"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="message" transfer-ownership="none">
-            <doc xml:space="preserve">A valid #GstMessage of type GST_MESSAGE_BUFFERING.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1315">A valid #GstMessage of type GST_MESSAGE_BUFFERING.</doc>
             <type name="Message" c:type="GstMessage*"/>
           </instance-parameter>
           <parameter name="mode"
@@ -21593,7 +33537,9 @@ MT safe.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">a buffering mode, or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1316">a buffering mode, or %NULL</doc>
             <type name="BufferingMode" c:type="GstBufferingMode*"/>
           </parameter>
           <parameter name="avg_in"
@@ -21602,7 +33548,9 @@ MT safe.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">the average input rate, or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1317">the average input rate, or %NULL</doc>
             <type name="gint" c:type="gint*"/>
           </parameter>
           <parameter name="avg_out"
@@ -21611,7 +33559,9 @@ MT safe.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">the average output rate, or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1318">the average output rate, or %NULL</doc>
             <type name="gint" c:type="gint*"/>
           </parameter>
           <parameter name="buffering_left"
@@ -21620,7 +33570,9 @@ MT safe.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">amount of buffering time left in
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1319">amount of buffering time left in
     milliseconds, or %NULL</doc>
             <type name="gint64" c:type="gint64*"/>
           </parameter>
@@ -21628,16 +33580,21 @@ MT safe.</doc>
       </method>
       <method name="parse_clock_lost"
               c:identifier="gst_message_parse_clock_lost">
-        <doc xml:space="preserve">Extracts the lost clock from the GstMessage.
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="1439">Extracts the lost clock from the GstMessage.
 The clock object returned remains valid until the message is freed.
 
 MT safe.</doc>
+        <source-position filename="gst/gstmessage.h" line="631"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="message" transfer-ownership="none">
-            <doc xml:space="preserve">A valid #GstMessage of type GST_MESSAGE_CLOCK_LOST.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1441">A valid #GstMessage of type GST_MESSAGE_CLOCK_LOST.</doc>
             <type name="Message" c:type="GstMessage*"/>
           </instance-parameter>
           <parameter name="clock"
@@ -21646,23 +33603,30 @@ MT safe.</doc>
                      transfer-ownership="none"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">a pointer to hold the lost clock</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1442">a pointer to hold the lost clock</doc>
             <type name="Clock" c:type="GstClock**"/>
           </parameter>
         </parameters>
       </method>
       <method name="parse_clock_provide"
               c:identifier="gst_message_parse_clock_provide">
-        <doc xml:space="preserve">Extracts the clock and ready flag from the GstMessage.
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="1404">Extracts the clock and ready flag from the GstMessage.
 The clock object returned remains valid until the message is freed.
 
 MT safe.</doc>
+        <source-position filename="gst/gstmessage.h" line="622"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="message" transfer-ownership="none">
-            <doc xml:space="preserve">A valid #GstMessage of type GST_MESSAGE_CLOCK_PROVIDE.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1406">A valid #GstMessage of type GST_MESSAGE_CLOCK_PROVIDE.</doc>
             <type name="Message" c:type="GstMessage*"/>
           </instance-parameter>
           <parameter name="clock"
@@ -21671,7 +33635,9 @@ MT safe.</doc>
                      transfer-ownership="none"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">a pointer to  hold a clock
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1407">a pointer to  hold a clock
     object, or %NULL</doc>
             <type name="Clock" c:type="GstClock**"/>
           </parameter>
@@ -21681,7 +33647,9 @@ MT safe.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">a pointer to hold the ready flag, or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1409">a pointer to hold the ready flag, or %NULL</doc>
             <type name="gboolean" c:type="gboolean*"/>
           </parameter>
         </parameters>
@@ -21689,14 +33657,21 @@ MT safe.</doc>
       <method name="parse_context_type"
               c:identifier="gst_message_parse_context_type"
               version="1.2">
-        <doc xml:space="preserve">Parse a context type from an existing GST_MESSAGE_NEED_CONTEXT message.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #gboolean indicating if the parsing succeeded.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="2511">Parse a context type from an existing GST_MESSAGE_NEED_CONTEXT message.</doc>
+        <source-position filename="gst/gstmessage.h" line="796"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstmessage.c"
+               line="2518">a #gboolean indicating if the parsing succeeded.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="message" transfer-ownership="none">
-            <doc xml:space="preserve">a GST_MESSAGE_NEED_CONTEXT type message</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2513">a GST_MESSAGE_NEED_CONTEXT type message</doc>
             <type name="Message" c:type="GstMessage*"/>
           </instance-parameter>
           <parameter name="context_type"
@@ -21705,7 +33680,9 @@ MT safe.</doc>
                      transfer-ownership="none"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">the context type, or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2514">the context type, or %NULL</doc>
             <type name="utf8" c:type="const gchar**"/>
           </parameter>
         </parameters>
@@ -21713,15 +33690,20 @@ MT safe.</doc>
       <method name="parse_device_added"
               c:identifier="gst_message_parse_device_added"
               version="1.4">
-        <doc xml:space="preserve">Parses a device-added message. The device-added message is produced by
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="2621">Parses a device-added message. The device-added message is produced by
 #GstDeviceProvider or a #GstDeviceMonitor. It announces the appearance
 of monitored devices.</doc>
+        <source-position filename="gst/gstmessage.h" line="812"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="message" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstMessage of type %GST_MESSAGE_DEVICE_ADDED</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2623">a #GstMessage of type %GST_MESSAGE_DEVICE_ADDED</doc>
             <type name="Message" c:type="GstMessage*"/>
           </instance-parameter>
           <parameter name="device"
@@ -21730,7 +33712,9 @@ of monitored devices.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">A location where to store a
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2624">A location where to store a
  pointer to the new #GstDevice, or %NULL</doc>
             <type name="Device" c:type="GstDevice**"/>
           </parameter>
@@ -21739,16 +33723,21 @@ of monitored devices.</doc>
       <method name="parse_device_changed"
               c:identifier="gst_message_parse_device_changed"
               version="1.16">
-        <doc xml:space="preserve">Parses a device-changed message. The device-changed message is produced by
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="2728">Parses a device-changed message. The device-changed message is produced by
 #GstDeviceProvider or a #GstDeviceMonitor. It announces the
 disappearance of monitored devices. * It announce that a device properties has
 changed and @device represents the new modified version of @changed_device.</doc>
+        <source-position filename="gst/gstmessage.h" line="828"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="message" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstMessage of type %GST_MESSAGE_DEVICE_CHANGED</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2730">a #GstMessage of type %GST_MESSAGE_DEVICE_CHANGED</doc>
             <type name="Message" c:type="GstMessage*"/>
           </instance-parameter>
           <parameter name="device"
@@ -21757,7 +33746,9 @@ changed and @device represents the new modified version of @changed_device.</doc
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">A location where to store a
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2731">A location where to store a
  pointer to the updated version of the #GstDevice, or %NULL</doc>
             <type name="Device" c:type="GstDevice**"/>
           </parameter>
@@ -21767,7 +33758,9 @@ changed and @device represents the new modified version of @changed_device.</doc
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">A location where to store a
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2733">A location where to store a
  pointer to the old version of the #GstDevice, or %NULL</doc>
             <type name="Device" c:type="GstDevice**"/>
           </parameter>
@@ -21776,15 +33769,20 @@ changed and @device represents the new modified version of @changed_device.</doc
       <method name="parse_device_removed"
               c:identifier="gst_message_parse_device_removed"
               version="1.4">
-        <doc xml:space="preserve">Parses a device-removed message. The device-removed message is produced by
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="2673">Parses a device-removed message. The device-removed message is produced by
 #GstDeviceProvider or a #GstDeviceMonitor. It announces the
 disappearance of monitored devices.</doc>
+        <source-position filename="gst/gstmessage.h" line="820"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="message" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstMessage of type %GST_MESSAGE_DEVICE_REMOVED</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2675">a #GstMessage of type %GST_MESSAGE_DEVICE_REMOVED</doc>
             <type name="Message" c:type="GstMessage*"/>
           </instance-parameter>
           <parameter name="device"
@@ -21793,14 +33791,18 @@ disappearance of monitored devices.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">A location where to store a
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2676">A location where to store a
  pointer to the removed #GstDevice, or %NULL</doc>
             <type name="Device" c:type="GstDevice**"/>
           </parameter>
         </parameters>
       </method>
       <method name="parse_error" c:identifier="gst_message_parse_error">
-        <doc xml:space="preserve">Extracts the GError and debug string from the GstMessage. The values returned
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="1536">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:
@@ -21825,12 +33827,15 @@ Typical usage of this function might be:
 ]|
 
 MT safe.</doc>
+        <source-position filename="gst/gstmessage.h" line="534"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="message" transfer-ownership="none">
-            <doc xml:space="preserve">A valid #GstMessage of type GST_MESSAGE_ERROR.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1538">A valid #GstMessage of type GST_MESSAGE_ERROR.</doc>
             <type name="Message" c:type="GstMessage*"/>
           </instance-parameter>
           <parameter name="gerror"
@@ -21839,7 +33844,9 @@ MT safe.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">location for the GError</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1539">location for the GError</doc>
             <type name="GLib.Error" c:type="GError**"/>
           </parameter>
           <parameter name="debug"
@@ -21848,7 +33855,9 @@ MT safe.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">location for the debug message,
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1540">location for the debug message,
     or %NULL</doc>
             <type name="utf8" c:type="gchar**"/>
           </parameter>
@@ -21857,21 +33866,28 @@ MT safe.</doc>
       <method name="parse_error_details"
               c:identifier="gst_message_parse_error_details"
               version="1.10">
-        <doc xml:space="preserve">Returns the optional details structure, may be NULL if none.
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="468">Returns the optional details structure, may be NULL if none.
 The returned structure must not be freed.</doc>
+        <source-position filename="gst/gstmessage.h" line="537"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="message" transfer-ownership="none">
-            <doc xml:space="preserve">The message object</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="470">The message object</doc>
             <type name="Message" c:type="GstMessage*"/>
           </instance-parameter>
           <parameter name="structure"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="none">
-            <doc xml:space="preserve">A pointer to the returned details</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="471">A pointer to the returned details</doc>
             <type name="Structure" c:type="const GstStructure**"/>
           </parameter>
         </parameters>
@@ -21879,16 +33895,23 @@ The returned structure must not be freed.</doc>
       <method name="parse_group_id"
               c:identifier="gst_message_parse_group_id"
               version="1.2">
-        <doc xml:space="preserve">Extract the group from the STREAM_START message.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="2446">Extract the group from the STREAM_START message.</doc>
+        <source-position filename="gst/gstmessage.h" line="788"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the message had a group id set, %FALSE otherwise
+          <doc xml:space="preserve"
+               filename="gst/gstmessage.c"
+               line="2454">%TRUE if the message had a group id set, %FALSE otherwise
 
 MT safe.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="message" transfer-ownership="none">
-            <doc xml:space="preserve">A valid #GstMessage of type GST_MESSAGE_STREAM_START.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2448">A valid #GstMessage of type GST_MESSAGE_STREAM_START.</doc>
             <type name="Message" c:type="GstMessage*"/>
           </instance-parameter>
           <parameter name="group_id"
@@ -21897,7 +33920,9 @@ MT safe.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">Result location for the group id or
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2449">Result location for the group id or
      %NULL</doc>
             <type name="guint" c:type="guint*"/>
           </parameter>
@@ -21906,15 +33931,20 @@ MT safe.</doc>
       <method name="parse_have_context"
               c:identifier="gst_message_parse_have_context"
               version="1.2">
-        <doc xml:space="preserve">Extract the context from the HAVE_CONTEXT message.
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="2569">Extract the context from the HAVE_CONTEXT message.
 
 MT safe.</doc>
+        <source-position filename="gst/gstmessage.h" line="804"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="message" transfer-ownership="none">
-            <doc xml:space="preserve">A valid #GstMessage of type GST_MESSAGE_HAVE_CONTEXT.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2571">A valid #GstMessage of type GST_MESSAGE_HAVE_CONTEXT.</doc>
             <type name="Message" c:type="GstMessage*"/>
           </instance-parameter>
           <parameter name="context"
@@ -21923,23 +33953,30 @@ MT safe.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">Result location for the
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2572">Result location for the
      context or %NULL</doc>
             <type name="Context" c:type="GstContext**"/>
           </parameter>
         </parameters>
       </method>
       <method name="parse_info" c:identifier="gst_message_parse_info">
-        <doc xml:space="preserve">Extracts the GError and debug string from the GstMessage. The values returned
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="1604">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.
 
 MT safe.</doc>
+        <source-position filename="gst/gstmessage.h" line="562"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="message" transfer-ownership="none">
-            <doc xml:space="preserve">A valid #GstMessage of type GST_MESSAGE_INFO.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1606">A valid #GstMessage of type GST_MESSAGE_INFO.</doc>
             <type name="Message" c:type="GstMessage*"/>
           </instance-parameter>
           <parameter name="gerror"
@@ -21948,7 +33985,9 @@ MT safe.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">location for the GError</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1607">location for the GError</doc>
             <type name="GLib.Error" c:type="GError**"/>
           </parameter>
           <parameter name="debug"
@@ -21957,7 +33996,9 @@ MT safe.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">location for the debug message,
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1608">location for the debug message,
     or %NULL</doc>
             <type name="utf8" c:type="gchar**"/>
           </parameter>
@@ -21966,37 +34007,79 @@ MT safe.</doc>
       <method name="parse_info_details"
               c:identifier="gst_message_parse_info_details"
               version="1.10">
-        <doc xml:space="preserve">Returns the optional details structure, may be NULL if none
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="648">Returns the optional details structure, may be NULL if none
 The returned structure must not be freed.</doc>
+        <source-position filename="gst/gstmessage.h" line="565"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="message" transfer-ownership="none">
-            <doc xml:space="preserve">The message object</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="650">The message object</doc>
             <type name="Message" c:type="GstMessage*"/>
           </instance-parameter>
           <parameter name="structure"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="none">
-            <doc xml:space="preserve">A pointer to the returned details structure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="651">A pointer to the returned details structure</doc>
             <type name="Structure" c:type="const GstStructure**"/>
           </parameter>
         </parameters>
       </method>
+      <method name="parse_instant_rate_request"
+              c:identifier="gst_message_parse_instant_rate_request"
+              version="1.18">
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="3304">Parses the rate_multiplier from the instant-rate-request message.</doc>
+        <source-position filename="gst/gstmessage.h" line="883"/>
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="message" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="3306">a #GstMessage of type %GST_MESSAGE_INSTANT_RATE_REQUEST</doc>
+            <type name="Message" c:type="GstMessage*"/>
+          </instance-parameter>
+          <parameter name="rate_multiplier"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     optional="1"
+                     allow-none="1">
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="3307">return location for the rate, or %NULL</doc>
+            <type name="gdouble" c:type="gdouble*"/>
+          </parameter>
+        </parameters>
+      </method>
       <method name="parse_new_clock"
               c:identifier="gst_message_parse_new_clock">
-        <doc xml:space="preserve">Extracts the new clock from the GstMessage.
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="1467">Extracts the new clock from the GstMessage.
 The clock object returned remains valid until the message is freed.
 
 MT safe.</doc>
+        <source-position filename="gst/gstmessage.h" line="639"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="message" transfer-ownership="none">
-            <doc xml:space="preserve">A valid #GstMessage of type GST_MESSAGE_NEW_CLOCK.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1469">A valid #GstMessage of type GST_MESSAGE_NEW_CLOCK.</doc>
             <type name="Message" c:type="GstMessage*"/>
           </instance-parameter>
           <parameter name="clock"
@@ -22005,20 +34088,27 @@ MT safe.</doc>
                      transfer-ownership="none"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">a pointer to hold the selected
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1470">a pointer to hold the selected
     new clock</doc>
             <type name="Clock" c:type="GstClock**"/>
           </parameter>
         </parameters>
       </method>
       <method name="parse_progress" c:identifier="gst_message_parse_progress">
-        <doc xml:space="preserve">Parses the progress @type, @code and @text.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="2263">Parses the progress @type, @code and @text.</doc>
+        <source-position filename="gst/gstmessage.h" line="760"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="message" transfer-ownership="none">
-            <doc xml:space="preserve">A valid #GstMessage of type GST_MESSAGE_PROGRESS.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2265">A valid #GstMessage of type GST_MESSAGE_PROGRESS.</doc>
             <type name="Message" c:type="GstMessage*"/>
           </instance-parameter>
           <parameter name="type"
@@ -22027,7 +34117,9 @@ MT safe.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">location for the type</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2266">location for the type</doc>
             <type name="ProgressType" c:type="GstProgressType*"/>
           </parameter>
           <parameter name="code"
@@ -22036,7 +34128,9 @@ MT safe.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">location for the code</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2267">location for the code</doc>
             <type name="utf8" c:type="gchar**"/>
           </parameter>
           <parameter name="text"
@@ -22045,7 +34139,9 @@ MT safe.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">location for the text</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2268">location for the text</doc>
             <type name="utf8" c:type="gchar**"/>
           </parameter>
         </parameters>
@@ -22053,15 +34149,20 @@ MT safe.</doc>
       <method name="parse_property_notify"
               c:identifier="gst_message_parse_property_notify"
               version="1.10">
-        <doc xml:space="preserve">Parses a property-notify message. These will be posted on the bus only
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="2789">Parses a property-notify message. These will be posted on the bus only
 when set up with gst_element_add_property_notify_watch() or
 gst_element_add_property_deep_notify_watch().</doc>
+        <source-position filename="gst/gstmessage.h" line="837"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="message" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstMessage of type %GST_MESSAGE_PROPERTY_NOTIFY</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2791">a #GstMessage of type %GST_MESSAGE_PROPERTY_NOTIFY</doc>
             <type name="Message" c:type="GstMessage*"/>
           </instance-parameter>
           <parameter name="object"
@@ -22070,7 +34171,9 @@ gst_element_add_property_deep_notify_watch().</doc>
                      transfer-ownership="none"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">location where to store a
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2792">location where to store a
     pointer to the object whose property got changed, or %NULL</doc>
             <type name="Object" c:type="GstObject**"/>
           </parameter>
@@ -22080,7 +34183,9 @@ gst_element_add_property_deep_notify_watch().</doc>
                      transfer-ownership="none"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">return location for
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2794">return location for
     the name of the property that got changed, or %NULL</doc>
             <type name="utf8" c:type="const gchar**"/>
           </parameter>
@@ -22090,7 +34195,9 @@ gst_element_add_property_deep_notify_watch().</doc>
                      transfer-ownership="none"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">return location for
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2796">return location for
     the new value of the property that got changed, or %NULL. This will
     only be set if the property notify watch was told to include the value
     when it was set up</doc>
@@ -22099,19 +34206,24 @@ gst_element_add_property_deep_notify_watch().</doc>
         </parameters>
       </method>
       <method name="parse_qos" c:identifier="gst_message_parse_qos">
-        <doc xml:space="preserve">Extract the timestamps and live status from the QoS message.
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="2116">Extract the timestamps and live status from the QoS message.
 
 The returned values give the running_time, stream_time, timestamp and
 duration of the dropped buffer. Values of GST_CLOCK_TIME_NONE mean unknown
 values.
 
 MT safe.</doc>
+        <source-position filename="gst/gstmessage.h" line="746"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="message" transfer-ownership="none">
-            <doc xml:space="preserve">A valid #GstMessage of type GST_MESSAGE_QOS.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2118">A valid #GstMessage of type GST_MESSAGE_QOS.</doc>
             <type name="Message" c:type="GstMessage*"/>
           </instance-parameter>
           <parameter name="live"
@@ -22120,7 +34232,9 @@ MT safe.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">if the message was generated by a live element</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2119">if the message was generated by a live element</doc>
             <type name="gboolean" c:type="gboolean*"/>
           </parameter>
           <parameter name="running_time"
@@ -22129,7 +34243,9 @@ MT safe.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">the running time of the buffer that
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2120">the running time of the buffer that
     generated the message</doc>
             <type name="guint64" c:type="guint64*"/>
           </parameter>
@@ -22139,7 +34255,9 @@ MT safe.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">the stream time of the buffer that
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2122">the stream time of the buffer that
     generated the message</doc>
             <type name="guint64" c:type="guint64*"/>
           </parameter>
@@ -22149,7 +34267,9 @@ MT safe.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">the timestamps of the buffer that
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2124">the timestamps of the buffer that
     generated the message</doc>
             <type name="guint64" c:type="guint64*"/>
           </parameter>
@@ -22159,7 +34279,9 @@ MT safe.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">the duration of the buffer that
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2126">the duration of the buffer that
     generated the message</doc>
             <type name="guint64" c:type="guint64*"/>
           </parameter>
@@ -22167,19 +34289,24 @@ MT safe.</doc>
       </method>
       <method name="parse_qos_stats"
               c:identifier="gst_message_parse_qos_stats">
-        <doc xml:space="preserve">Extract the QoS stats representing the history of the current continuous
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="2187">Extract the QoS stats representing the history of the current continuous
 pipeline playback period.
 
 When @format is @GST_FORMAT_UNDEFINED both @dropped and @processed are
 invalid. Values of -1 for either @processed or @dropped mean unknown values.
 
 MT safe.</doc>
+        <source-position filename="gst/gstmessage.h" line="752"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="message" transfer-ownership="none">
-            <doc xml:space="preserve">A valid #GstMessage of type GST_MESSAGE_QOS.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2189">A valid #GstMessage of type GST_MESSAGE_QOS.</doc>
             <type name="Message" c:type="GstMessage*"/>
           </instance-parameter>
           <parameter name="format"
@@ -22188,7 +34315,9 @@ MT safe.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">Units of the 'processed' and 'dropped' fields.
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2190">Units of the 'processed' and 'dropped' fields.
     Video sinks and video filters will use GST_FORMAT_BUFFERS (frames).
     Audio sinks and audio filters will likely use GST_FORMAT_DEFAULT
     (samples).</doc>
@@ -22200,7 +34329,9 @@ MT safe.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">Total number of units correctly processed
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2194">Total number of units correctly processed
     since the last state change to READY or a flushing operation.</doc>
             <type name="guint64" c:type="guint64*"/>
           </parameter>
@@ -22210,7 +34341,9 @@ MT safe.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">Total number of units dropped since the last
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2196">Total number of units dropped since the last
     state change to READY or a flushing operation.</doc>
             <type name="guint64" c:type="guint64*"/>
           </parameter>
@@ -22218,15 +34351,20 @@ MT safe.</doc>
       </method>
       <method name="parse_qos_values"
               c:identifier="gst_message_parse_qos_values">
-        <doc xml:space="preserve">Extract the QoS values that have been calculated/analysed from the QoS data
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="2156">Extract the QoS values that have been calculated/analysed from the QoS data
 
 MT safe.</doc>
+        <source-position filename="gst/gstmessage.h" line="749"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="message" transfer-ownership="none">
-            <doc xml:space="preserve">A valid #GstMessage of type GST_MESSAGE_QOS.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2158">A valid #GstMessage of type GST_MESSAGE_QOS.</doc>
             <type name="Message" c:type="GstMessage*"/>
           </instance-parameter>
           <parameter name="jitter"
@@ -22235,7 +34373,9 @@ MT safe.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">The difference of the running-time against
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2159">The difference of the running-time against
     the deadline.</doc>
             <type name="gint64" c:type="gint64*"/>
           </parameter>
@@ -22245,7 +34385,9 @@ MT safe.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">Long term prediction of the ideal rate
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2161">Long term prediction of the ideal rate
     relative to normal rate to get optimal quality.</doc>
             <type name="gdouble" c:type="gdouble*"/>
           </parameter>
@@ -22255,7 +34397,9 @@ MT safe.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">An element dependent integer value that
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2163">An element dependent integer value that
     specifies the current quality level of the element. The default
     maximum quality is 1000000.</doc>
             <type name="gint" c:type="gint*"/>
@@ -22265,19 +34409,26 @@ MT safe.</doc>
       <method name="parse_redirect_entry"
               c:identifier="gst_message_parse_redirect_entry"
               version="1.10">
-        <doc xml:space="preserve">Parses the location and/or structure from the entry with the given index.
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="3160">Parses the location and/or structure from the entry with the given index.
 The index must be between 0 and gst_message_get_num_redirect_entries() - 1.
 Returned pointers are valid for as long as this message exists.</doc>
+        <source-position filename="gst/gstmessage.h" line="873"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="message" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstMessage of type %GST_MESSAGE_REDIRECT</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="3162">a #GstMessage of type %GST_MESSAGE_REDIRECT</doc>
             <type name="Message" c:type="GstMessage*"/>
           </instance-parameter>
           <parameter name="entry_index" transfer-ownership="none">
-            <doc xml:space="preserve">index of the entry to parse</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="3163">index of the entry to parse</doc>
             <type name="gsize" c:type="gsize"/>
           </parameter>
           <parameter name="location"
@@ -22286,7 +34437,9 @@ Returned pointers are valid for as long as this message exists.</doc>
                      transfer-ownership="none"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">return location for
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="3164">return location for
     the pointer to the entry's location string, or %NULL</doc>
             <type name="utf8" c:type="const gchar**"/>
           </parameter>
@@ -22296,7 +34449,9 @@ Returned pointers are valid for as long as this message exists.</doc>
                      transfer-ownership="none"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">return location for
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="3166">return location for
     the pointer to the entry's tag list, or %NULL</doc>
             <type name="TagList" c:type="GstTagList**"/>
           </parameter>
@@ -22306,7 +34461,9 @@ Returned pointers are valid for as long as this message exists.</doc>
                      transfer-ownership="none"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">return location
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="3168">return location
     for the pointer to the entry's structure, or %NULL</doc>
             <type name="Structure" c:type="const GstStructure**"/>
           </parameter>
@@ -22314,15 +34471,20 @@ Returned pointers are valid for as long as this message exists.</doc>
       </method>
       <method name="parse_request_state"
               c:identifier="gst_message_parse_request_state">
-        <doc xml:space="preserve">Extract the requested state from the request_state message.
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="1711">Extract the requested state from the request_state message.
 
 MT safe.</doc>
+        <source-position filename="gst/gstmessage.h" line="721"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="message" transfer-ownership="none">
-            <doc xml:space="preserve">A valid #GstMessage of type GST_MESSAGE_REQUEST_STATE.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1713">A valid #GstMessage of type GST_MESSAGE_REQUEST_STATE.</doc>
             <type name="Message" c:type="GstMessage*"/>
           </instance-parameter>
           <parameter name="state"
@@ -22331,22 +34493,29 @@ MT safe.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">Result location for the requested state or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1714">Result location for the requested state or %NULL</doc>
             <type name="State" c:type="GstState*"/>
           </parameter>
         </parameters>
       </method>
       <method name="parse_reset_time"
               c:identifier="gst_message_parse_reset_time">
-        <doc xml:space="preserve">Extract the running-time from the RESET_TIME message.
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="2364">Extract the running-time from the RESET_TIME message.
 
 MT safe.</doc>
+        <source-position filename="gst/gstmessage.h" line="777"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="message" transfer-ownership="none">
-            <doc xml:space="preserve">A valid #GstMessage of type GST_MESSAGE_RESET_TIME.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2366">A valid #GstMessage of type GST_MESSAGE_RESET_TIME.</doc>
             <type name="Message" c:type="GstMessage*"/>
           </instance-parameter>
           <parameter name="running_time"
@@ -22355,7 +34524,9 @@ MT safe.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">Result location for the running_time or
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2367">Result location for the running_time or
      %NULL</doc>
             <type name="ClockTime" c:type="GstClockTime*"/>
           </parameter>
@@ -22363,15 +34534,20 @@ MT safe.</doc>
       </method>
       <method name="parse_segment_done"
               c:identifier="gst_message_parse_segment_done">
-        <doc xml:space="preserve">Extracts the position and format from the segment done message.
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="1657">Extracts the position and format from the segment done message.
 
 MT safe.</doc>
+        <source-position filename="gst/gstmessage.h" line="666"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="message" transfer-ownership="none">
-            <doc xml:space="preserve">A valid #GstMessage of type GST_MESSAGE_SEGMENT_DONE.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1659">A valid #GstMessage of type GST_MESSAGE_SEGMENT_DONE.</doc>
             <type name="Message" c:type="GstMessage*"/>
           </instance-parameter>
           <parameter name="format"
@@ -22380,7 +34556,9 @@ MT safe.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">Result location for the format, or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1660">Result location for the format, or %NULL</doc>
             <type name="Format" c:type="GstFormat*"/>
           </parameter>
           <parameter name="position"
@@ -22389,22 +34567,29 @@ MT safe.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">Result location for the position, or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1661">Result location for the position, or %NULL</doc>
             <type name="gint64" c:type="gint64*"/>
           </parameter>
         </parameters>
       </method>
       <method name="parse_segment_start"
               c:identifier="gst_message_parse_segment_start">
-        <doc xml:space="preserve">Extracts the position and format from the segment start message.
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="1627">Extracts the position and format from the segment start message.
 
 MT safe.</doc>
+        <source-position filename="gst/gstmessage.h" line="657"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="message" transfer-ownership="none">
-            <doc xml:space="preserve">A valid #GstMessage of type GST_MESSAGE_SEGMENT_START.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1629">A valid #GstMessage of type GST_MESSAGE_SEGMENT_START.</doc>
             <type name="Message" c:type="GstMessage*"/>
           </instance-parameter>
           <parameter name="format"
@@ -22413,7 +34598,9 @@ MT safe.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">Result location for the format, or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1630">Result location for the format, or %NULL</doc>
             <type name="Format" c:type="GstFormat*"/>
           </parameter>
           <parameter name="position"
@@ -22422,14 +34609,18 @@ MT safe.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">Result location for the position, or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1631">Result location for the position, or %NULL</doc>
             <type name="gint64" c:type="gint64*"/>
           </parameter>
         </parameters>
       </method>
       <method name="parse_state_changed"
               c:identifier="gst_message_parse_state_changed">
-        <doc xml:space="preserve">Extracts the old and new states from the GstMessage.
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="1350">Extracts the old and new states from the GstMessage.
 
 Typical usage of this function might be:
 |[&lt;!-- language="C" --&gt;
@@ -22451,12 +34642,15 @@ Typical usage of this function might be:
 ]|
 
 MT safe.</doc>
+        <source-position filename="gst/gstmessage.h" line="598"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="message" transfer-ownership="none">
-            <doc xml:space="preserve">a valid #GstMessage of type GST_MESSAGE_STATE_CHANGED</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1352">a valid #GstMessage of type GST_MESSAGE_STATE_CHANGED</doc>
             <type name="Message" c:type="GstMessage*"/>
           </instance-parameter>
           <parameter name="oldstate"
@@ -22465,7 +34659,9 @@ MT safe.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">the previous state, or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1353">the previous state, or %NULL</doc>
             <type name="State" c:type="GstState*"/>
           </parameter>
           <parameter name="newstate"
@@ -22474,7 +34670,9 @@ MT safe.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">the new (current) state, or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1354">the new (current) state, or %NULL</doc>
             <type name="State" c:type="GstState*"/>
           </parameter>
           <parameter name="pending"
@@ -22483,22 +34681,29 @@ MT safe.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">the pending (target) state, or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1355">the pending (target) state, or %NULL</doc>
             <type name="State" c:type="GstState*"/>
           </parameter>
         </parameters>
       </method>
       <method name="parse_step_done"
               c:identifier="gst_message_parse_step_done">
-        <doc xml:space="preserve">Extract the values the step_done message.
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="1887">Extract the values the step_done message.
 
 MT safe.</doc>
+        <source-position filename="gst/gstmessage.h" line="613"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="message" transfer-ownership="none">
-            <doc xml:space="preserve">A valid #GstMessage of type GST_MESSAGE_STEP_DONE.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1889">A valid #GstMessage of type GST_MESSAGE_STEP_DONE.</doc>
             <type name="Message" c:type="GstMessage*"/>
           </instance-parameter>
           <parameter name="format"
@@ -22507,7 +34712,9 @@ MT safe.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">result location for the format</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1890">result location for the format</doc>
             <type name="Format" c:type="GstFormat*"/>
           </parameter>
           <parameter name="amount"
@@ -22516,7 +34723,9 @@ MT safe.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">result location for the amount</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1891">result location for the amount</doc>
             <type name="guint64" c:type="guint64*"/>
           </parameter>
           <parameter name="rate"
@@ -22525,7 +34734,9 @@ MT safe.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">result location for the rate</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1892">result location for the rate</doc>
             <type name="gdouble" c:type="gdouble*"/>
           </parameter>
           <parameter name="flush"
@@ -22534,7 +34745,9 @@ MT safe.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">result location for the flush flag</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1893">result location for the flush flag</doc>
             <type name="gboolean" c:type="gboolean*"/>
           </parameter>
           <parameter name="intermediate"
@@ -22543,7 +34756,9 @@ MT safe.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">result location for the intermediate flag</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1894">result location for the intermediate flag</doc>
             <type name="gboolean" c:type="gboolean*"/>
           </parameter>
           <parameter name="duration"
@@ -22552,7 +34767,9 @@ MT safe.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">result location for the duration</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1895">result location for the duration</doc>
             <type name="guint64" c:type="guint64*"/>
           </parameter>
           <parameter name="eos"
@@ -22561,22 +34778,29 @@ MT safe.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">result location for the EOS flag</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1896">result location for the EOS flag</doc>
             <type name="gboolean" c:type="gboolean*"/>
           </parameter>
         </parameters>
       </method>
       <method name="parse_step_start"
               c:identifier="gst_message_parse_step_start">
-        <doc xml:space="preserve">Extract the values from step_start message.
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="1967">Extract the values from step_start message.
 
 MT safe.</doc>
+        <source-position filename="gst/gstmessage.h" line="730"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="message" transfer-ownership="none">
-            <doc xml:space="preserve">A valid #GstMessage of type GST_MESSAGE_STEP_DONE.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1969">A valid #GstMessage of type GST_MESSAGE_STEP_DONE.</doc>
             <type name="Message" c:type="GstMessage*"/>
           </instance-parameter>
           <parameter name="active"
@@ -22585,7 +34809,9 @@ MT safe.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">result location for the active flag</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1970">result location for the active flag</doc>
             <type name="gboolean" c:type="gboolean*"/>
           </parameter>
           <parameter name="format"
@@ -22594,7 +34820,9 @@ MT safe.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">result location for the format</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1971">result location for the format</doc>
             <type name="Format" c:type="GstFormat*"/>
           </parameter>
           <parameter name="amount"
@@ -22603,7 +34831,9 @@ MT safe.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">result location for the amount</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1972">result location for the amount</doc>
             <type name="guint64" c:type="guint64*"/>
           </parameter>
           <parameter name="rate"
@@ -22612,7 +34842,9 @@ MT safe.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">result location for the rate</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1973">result location for the rate</doc>
             <type name="gdouble" c:type="gdouble*"/>
           </parameter>
           <parameter name="flush"
@@ -22621,7 +34853,9 @@ MT safe.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">result location for the flush flag</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1974">result location for the flush flag</doc>
             <type name="gboolean" c:type="gboolean*"/>
           </parameter>
           <parameter name="intermediate"
@@ -22630,7 +34864,9 @@ MT safe.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">result location for the intermediate flag</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1975">result location for the intermediate flag</doc>
             <type name="gboolean" c:type="gboolean*"/>
           </parameter>
         </parameters>
@@ -22638,13 +34874,18 @@ MT safe.</doc>
       <method name="parse_stream_collection"
               c:identifier="gst_message_parse_stream_collection"
               version="1.10">
-        <doc xml:space="preserve">Parses a stream-collection message.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="2862">Parses a stream-collection message.</doc>
+        <source-position filename="gst/gstmessage.h" line="845"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="message" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstMessage of type %GST_MESSAGE_STREAM_COLLECTION</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2864">a #GstMessage of type %GST_MESSAGE_STREAM_COLLECTION</doc>
             <type name="Message" c:type="GstMessage*"/>
           </instance-parameter>
           <parameter name="collection"
@@ -22653,7 +34894,9 @@ MT safe.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">A location where to store a
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2865">A location where to store a
  pointer to the #GstStreamCollection, or %NULL</doc>
             <type name="StreamCollection" c:type="GstStreamCollection**"/>
           </parameter>
@@ -22661,31 +34904,40 @@ MT safe.</doc>
       </method>
       <method name="parse_stream_status"
               c:identifier="gst_message_parse_stream_status">
-        <doc xml:space="preserve">Extracts the stream status type and owner the GstMessage. The returned
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="1763">Extracts the stream status type and owner the GstMessage. The returned
 owner remains valid for as long as the reference to @message is valid and
 should thus not be unreffed.
 
 MT safe.</doc>
+        <source-position filename="gst/gstmessage.h" line="707"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="message" transfer-ownership="none">
-            <doc xml:space="preserve">A valid #GstMessage of type GST_MESSAGE_STREAM_STATUS.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1765">A valid #GstMessage of type GST_MESSAGE_STREAM_STATUS.</doc>
             <type name="Message" c:type="GstMessage*"/>
           </instance-parameter>
           <parameter name="type"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">A pointer to hold the status type</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1766">A pointer to hold the status type</doc>
             <type name="StreamStatusType" c:type="GstStreamStatusType*"/>
           </parameter>
           <parameter name="owner"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="none">
-            <doc xml:space="preserve">The owner element of the message source</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1767">The owner element of the message source</doc>
             <type name="Element" c:type="GstElement**"/>
           </parameter>
         </parameters>
@@ -22693,13 +34945,18 @@ MT safe.</doc>
       <method name="parse_streams_selected"
               c:identifier="gst_message_parse_streams_selected"
               version="1.10">
-        <doc xml:space="preserve">Parses a streams-selected message.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="3010">Parses a streams-selected message.</doc>
+        <source-position filename="gst/gstmessage.h" line="856"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="message" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstMessage of type %GST_MESSAGE_STREAMS_SELECTED</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="3012">a #GstMessage of type %GST_MESSAGE_STREAMS_SELECTED</doc>
             <type name="Message" c:type="GstMessage*"/>
           </instance-parameter>
           <parameter name="collection"
@@ -22708,7 +34965,9 @@ MT safe.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">A location where to store a
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="3013">A location where to store a
  pointer to the #GstStreamCollection, or %NULL</doc>
             <type name="StreamCollection" c:type="GstStreamCollection**"/>
           </parameter>
@@ -22716,22 +34975,29 @@ MT safe.</doc>
       </method>
       <method name="parse_structure_change"
               c:identifier="gst_message_parse_structure_change">
-        <doc xml:space="preserve">Extracts the change type and completion status from the GstMessage.
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="1496">Extracts the change type and completion status from the GstMessage.
 
 MT safe.</doc>
+        <source-position filename="gst/gstmessage.h" line="698"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="message" transfer-ownership="none">
-            <doc xml:space="preserve">A valid #GstMessage of type GST_MESSAGE_STRUCTURE_CHANGE.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1498">A valid #GstMessage of type GST_MESSAGE_STRUCTURE_CHANGE.</doc>
             <type name="Message" c:type="GstMessage*"/>
           </instance-parameter>
           <parameter name="type"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">A pointer to hold the change type</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1499">A pointer to hold the change type</doc>
             <type name="StructureChangeType" c:type="GstStructureChangeType*"/>
           </parameter>
           <parameter name="owner"
@@ -22740,7 +35006,9 @@ MT safe.</doc>
                      transfer-ownership="none"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">The owner element of the
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1500">The owner element of the
     message source</doc>
             <type name="Element" c:type="GstElement**"/>
           </parameter>
@@ -22750,14 +35018,18 @@ MT safe.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">a pointer to hold whether the change is in
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1502">a pointer to hold whether the change is in
     progress or has been completed</doc>
             <type name="gboolean" c:type="gboolean*"/>
           </parameter>
         </parameters>
       </method>
       <method name="parse_tag" c:identifier="gst_message_parse_tag">
-        <doc xml:space="preserve">Extracts the tag list from the GstMessage. The tag list returned in the
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="1228">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:
@@ -22779,64 +35051,83 @@ Typical usage of this function might be:
 ]|
 
 MT safe.</doc>
+        <source-position filename="gst/gstmessage.h" line="573"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="message" transfer-ownership="none">
-            <doc xml:space="preserve">A valid #GstMessage of type GST_MESSAGE_TAG.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1230">A valid #GstMessage of type GST_MESSAGE_TAG.</doc>
             <type name="Message" c:type="GstMessage*"/>
           </instance-parameter>
           <parameter name="tag_list"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">return location for the tag-list.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1231">return location for the tag-list.</doc>
             <type name="TagList" c:type="GstTagList**"/>
           </parameter>
         </parameters>
       </method>
       <method name="parse_toc" c:identifier="gst_message_parse_toc">
-        <doc xml:space="preserve">Extract the TOC from the #GstMessage. The TOC returned in the
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="2315">Extract the TOC from the #GstMessage. The TOC returned in the
 output argument is a copy; the caller must free it with
 gst_toc_unref() when done.
 
 MT safe.</doc>
+        <source-position filename="gst/gstmessage.h" line="769"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="message" transfer-ownership="none">
-            <doc xml:space="preserve">a valid #GstMessage of type GST_MESSAGE_TOC.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2317">a valid #GstMessage of type GST_MESSAGE_TOC.</doc>
             <type name="Message" c:type="GstMessage*"/>
           </instance-parameter>
           <parameter name="toc"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">return location for the TOC.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2318">return location for the TOC.</doc>
             <type name="Toc" c:type="GstToc**"/>
           </parameter>
           <parameter name="updated"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">return location for the updated flag.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2319">return location for the updated flag.</doc>
             <type name="gboolean" c:type="gboolean*"/>
           </parameter>
         </parameters>
       </method>
       <method name="parse_warning" c:identifier="gst_message_parse_warning">
-        <doc xml:space="preserve">Extracts the GError and debug string from the GstMessage. The values returned
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="1580">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.
 
 MT safe.</doc>
+        <source-position filename="gst/gstmessage.h" line="548"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="message" transfer-ownership="none">
-            <doc xml:space="preserve">A valid #GstMessage of type GST_MESSAGE_WARNING.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1582">A valid #GstMessage of type GST_MESSAGE_WARNING.</doc>
             <type name="Message" c:type="GstMessage*"/>
           </instance-parameter>
           <parameter name="gerror"
@@ -22845,7 +35136,9 @@ MT safe.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">location for the GError</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1583">location for the GError</doc>
             <type name="GLib.Error" c:type="GError**"/>
           </parameter>
           <parameter name="debug"
@@ -22854,7 +35147,9 @@ MT safe.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">location for the debug message,
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1584">location for the debug message,
     or %NULL</doc>
             <type name="utf8" c:type="gchar**"/>
           </parameter>
@@ -22863,50 +35158,90 @@ MT safe.</doc>
       <method name="parse_warning_details"
               c:identifier="gst_message_parse_warning_details"
               version="1.10">
-        <doc xml:space="preserve">Returns the optional details structure, may be NULL if none
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="558">Returns the optional details structure, may be NULL if none
 The returned structure must not be freed.</doc>
+        <source-position filename="gst/gstmessage.h" line="551"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="message" transfer-ownership="none">
-            <doc xml:space="preserve">The message object</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="560">The message object</doc>
             <type name="Message" c:type="GstMessage*"/>
           </instance-parameter>
           <parameter name="structure"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="none">
-            <doc xml:space="preserve">A pointer to the returned details structure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="561">A pointer to the returned details structure</doc>
             <type name="Structure" c:type="const GstStructure**"/>
           </parameter>
         </parameters>
       </method>
+      <method name="ref" c:identifier="gst_message_ref" introspectable="0">
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.h"
+             line="364">Convenience macro to increase the reference count of the message.</doc>
+        <source-position filename="gst/gstmessage.h" line="372"/>
+        <return-value transfer-ownership="full">
+          <doc xml:space="preserve"
+               filename="gst/gstmessage.h"
+               line="370">@msg (for convenience when doing assignments)</doc>
+          <type name="Message" c:type="GstMessage*"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="msg" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.h"
+                 line="366">the message to ref</doc>
+            <type name="Message" c:type="GstMessage*"/>
+          </instance-parameter>
+        </parameters>
+      </method>
       <method name="set_buffering_stats"
               c:identifier="gst_message_set_buffering_stats">
-        <doc xml:space="preserve">Configures the buffering stats values in @message.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="1289">Configures the buffering stats values in @message.</doc>
+        <source-position filename="gst/gstmessage.h" line="584"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="message" transfer-ownership="none">
-            <doc xml:space="preserve">A valid #GstMessage of type GST_MESSAGE_BUFFERING.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1291">A valid #GstMessage of type GST_MESSAGE_BUFFERING.</doc>
             <type name="Message" c:type="GstMessage*"/>
           </instance-parameter>
           <parameter name="mode" transfer-ownership="none">
-            <doc xml:space="preserve">a buffering mode</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1292">a buffering mode</doc>
             <type name="BufferingMode" c:type="GstBufferingMode"/>
           </parameter>
           <parameter name="avg_in" transfer-ownership="none">
-            <doc xml:space="preserve">the average input rate</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1293">the average input rate</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="avg_out" transfer-ownership="none">
-            <doc xml:space="preserve">the average output rate</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1294">the average output rate</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="buffering_left" transfer-ownership="none">
-            <doc xml:space="preserve">amount of buffering time left in milliseconds</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1295">amount of buffering time left in milliseconds</doc>
             <type name="gint64" c:type="gint64"/>
           </parameter>
         </parameters>
@@ -22914,7 +35249,9 @@ The returned structure must not be freed.</doc>
       <method name="set_group_id"
               c:identifier="gst_message_set_group_id"
               version="1.2">
-        <doc xml:space="preserve">Sets the group id on the stream-start message.
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="2414">Sets the group id on the stream-start message.
 
 All streams that have the same group id are supposed to be played
 together, i.e. all streams inside a container file should have the
@@ -22923,118 +35260,159 @@ each time the stream is started, resulting in different group ids
 each time a file is played for example.
 
 MT safe.</doc>
+        <source-position filename="gst/gstmessage.h" line="785"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="message" transfer-ownership="none">
-            <doc xml:space="preserve">the message</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2416">the message</doc>
             <type name="Message" c:type="GstMessage*"/>
           </instance-parameter>
           <parameter name="group_id" transfer-ownership="none">
-            <doc xml:space="preserve">the group id</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2417">the group id</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_qos_stats" c:identifier="gst_message_set_qos_stats">
-        <doc xml:space="preserve">Set the QoS stats representing the history of the current continuous pipeline
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="2081">Set the QoS stats representing the history of the current continuous pipeline
 playback period.
 
 When @format is @GST_FORMAT_UNDEFINED both @dropped and @processed are
 invalid. Values of -1 for either @processed or @dropped mean unknown values.
 
 MT safe.</doc>
+        <source-position filename="gst/gstmessage.h" line="743"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="message" transfer-ownership="none">
-            <doc xml:space="preserve">A valid #GstMessage of type GST_MESSAGE_QOS.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2083">A valid #GstMessage of type GST_MESSAGE_QOS.</doc>
             <type name="Message" c:type="GstMessage*"/>
           </instance-parameter>
           <parameter name="format" transfer-ownership="none">
-            <doc xml:space="preserve">Units of the 'processed' and 'dropped' fields. Video sinks and video
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2084">Units of the 'processed' and 'dropped' fields. Video sinks and video
 filters will use GST_FORMAT_BUFFERS (frames). Audio sinks and audio filters
 will likely use GST_FORMAT_DEFAULT (samples).</doc>
             <type name="Format" c:type="GstFormat"/>
           </parameter>
           <parameter name="processed" transfer-ownership="none">
-            <doc xml:space="preserve">Total number of units correctly processed since the last state
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2087">Total number of units correctly processed since the last state
 change to READY or a flushing operation.</doc>
             <type name="guint64" c:type="guint64"/>
           </parameter>
           <parameter name="dropped" transfer-ownership="none">
-            <doc xml:space="preserve">Total number of units dropped since the last state change to READY
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2089">Total number of units dropped since the last state change to READY
 or a flushing operation.</doc>
             <type name="guint64" c:type="guint64"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_qos_values" c:identifier="gst_message_set_qos_values">
-        <doc xml:space="preserve">Set the QoS values that have been calculated/analysed from the QoS data
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="2052">Set the QoS values that have been calculated/analysed from the QoS data
 
 MT safe.</doc>
+        <source-position filename="gst/gstmessage.h" line="740"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="message" transfer-ownership="none">
-            <doc xml:space="preserve">A valid #GstMessage of type GST_MESSAGE_QOS.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2054">A valid #GstMessage of type GST_MESSAGE_QOS.</doc>
             <type name="Message" c:type="GstMessage*"/>
           </instance-parameter>
           <parameter name="jitter" transfer-ownership="none">
-            <doc xml:space="preserve">The difference of the running-time against the deadline.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2055">The difference of the running-time against the deadline.</doc>
             <type name="gint64" c:type="gint64"/>
           </parameter>
           <parameter name="proportion" transfer-ownership="none">
-            <doc xml:space="preserve">Long term prediction of the ideal rate relative to normal rate
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2056">Long term prediction of the ideal rate relative to normal rate
 to get optimal quality.</doc>
             <type name="gdouble" c:type="gdouble"/>
           </parameter>
           <parameter name="quality" transfer-ownership="none">
-            <doc xml:space="preserve">An element dependent integer value that specifies the current
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2058">An element dependent integer value that specifies the current
 quality level of the element. The default maximum quality is 1000000.</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_seqnum" c:identifier="gst_message_set_seqnum">
-        <doc xml:space="preserve">Set the sequence number of a message.
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="358">Set the sequence number of a message.
 
 This function might be called by the creator of a message to indicate that
 the message relates to other messages or events. See gst_message_get_seqnum()
 for more information.
 
 MT safe.</doc>
+        <source-position filename="gst/gstmessage.h" line="518"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="message" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstMessage.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="360">A #GstMessage.</doc>
             <type name="Message" c:type="GstMessage*"/>
           </instance-parameter>
           <parameter name="seqnum" transfer-ownership="none">
-            <doc xml:space="preserve">A sequence number.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="361">A sequence number.</doc>
             <type name="guint32" c:type="guint32"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_stream_status_object"
               c:identifier="gst_message_set_stream_status_object">
-        <doc xml:space="preserve">Configures the object handling the streaming thread. This is usually a
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="1797">Configures the object handling the streaming thread. This is usually a
 GstTask object but other objects might be added in the future.</doc>
+        <source-position filename="gst/gstmessage.h" line="710"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="message" transfer-ownership="none">
-            <doc xml:space="preserve">A valid #GstMessage of type GST_MESSAGE_STREAM_STATUS.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1799">A valid #GstMessage of type GST_MESSAGE_STREAM_STATUS.</doc>
             <type name="Message" c:type="GstMessage*"/>
           </instance-parameter>
           <parameter name="object" transfer-ownership="none">
-            <doc xml:space="preserve">the object controlling the streaming</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1800">the object controlling the streaming</doc>
             <type name="GObject.Value" c:type="const GValue*"/>
           </parameter>
         </parameters>
@@ -23042,17 +35420,24 @@ GstTask object but other objects might be added in the future.</doc>
       <method name="streams_selected_add"
               c:identifier="gst_message_streams_selected_add"
               version="1.10">
-        <doc xml:space="preserve">Adds the @stream to the @message.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="2952">Adds the @stream to the @message.</doc>
+        <source-position filename="gst/gstmessage.h" line="853"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="message" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstMessage of type %GST_MESSAGE_STREAMS_SELECTED</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2954">a #GstMessage of type %GST_MESSAGE_STREAMS_SELECTED</doc>
             <type name="Message" c:type="GstMessage*"/>
           </instance-parameter>
           <parameter name="stream" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStream to add to @message</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2955">a #GstStream to add to @message</doc>
             <type name="Stream" c:type="GstStream*"/>
           </parameter>
         </parameters>
@@ -23060,14 +35445,21 @@ GstTask object but other objects might be added in the future.</doc>
       <method name="streams_selected_get_size"
               c:identifier="gst_message_streams_selected_get_size"
               version="1.10">
-        <doc xml:space="preserve">Returns the number of streams contained in the @message.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The number of streams contained within.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="2927">Returns the number of streams contained in the @message.</doc>
+        <source-position filename="gst/gstmessage.h" line="859"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstmessage.c"
+               line="2933">The number of streams contained within.</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="message" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstMessage of type %GST_MESSAGE_STREAMS_SELECTED</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2929">a #GstMessage of type %GST_MESSAGE_STREAMS_SELECTED</doc>
             <type name="Message" c:type="GstMessage*"/>
           </instance-parameter>
         </parameters>
@@ -23075,28 +35467,60 @@ GstTask object but other objects might be added in the future.</doc>
       <method name="streams_selected_get_stream"
               c:identifier="gst_message_streams_selected_get_stream"
               version="1.10">
-        <doc xml:space="preserve">Retrieves the #GstStream with index @index from the @message.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="2979">Retrieves the #GstStream with index @index from the @message.</doc>
+        <source-position filename="gst/gstmessage.h" line="862"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">A #GstStream</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstmessage.c"
+               line="2986">A #GstStream</doc>
           <type name="Stream" c:type="GstStream*"/>
         </return-value>
         <parameters>
           <instance-parameter name="message" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstMessage of type %GST_MESSAGE_STREAMS_SELECTED</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2981">a #GstMessage of type %GST_MESSAGE_STREAMS_SELECTED</doc>
             <type name="Message" c:type="GstMessage*"/>
           </instance-parameter>
           <parameter name="idx" transfer-ownership="none">
-            <doc xml:space="preserve">Index of the stream to retrieve</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="2982">Index of the stream to retrieve</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
+      <method name="unref" c:identifier="gst_message_unref" introspectable="0">
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.h"
+             line="379">Convenience macro to decrease the reference count of the message, possibly
+freeing it.</doc>
+        <source-position filename="gst/gstmessage.h" line="386"/>
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="msg" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.h"
+                 line="381">the message to unref</doc>
+            <type name="Message" c:type="GstMessage*"/>
+          </instance-parameter>
+        </parameters>
+      </method>
       <method name="writable_structure"
               c:identifier="gst_message_writable_structure"
               version="1.14">
-        <doc xml:space="preserve">Get a writable version of the structure.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The structure of the message. The structure
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="1167">Get a writable version of the structure.</doc>
+        <source-position filename="gst/gstmessage.h" line="507"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstmessage.c"
+               line="1173">The structure of the message. The structure
 is still owned by the message, which means that you should not free
 it and that the pointer becomes invalid when you free the message.
 This function checks if @message is writable and will never return
@@ -23107,28 +35531,79 @@ MT safe.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="message" transfer-ownership="none">
-            <doc xml:space="preserve">The #GstMessage.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="1169">The #GstMessage.</doc>
             <type name="Message" c:type="GstMessage*"/>
           </instance-parameter>
         </parameters>
       </method>
+      <function name="replace"
+                c:identifier="gst_message_replace"
+                introspectable="0">
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.h"
+             line="450">Modifies a pointer to a #GstMessage to point to a different #GstMessage. The
+modification is done atomically (so this is useful for ensuring thread safety
+in some cases), and the reference counts are updated appropriately (the old
+message is unreffed, the new one is reffed).
+
+Either @new_message or the #GstMessage pointed to by @old_message may be %NULL.</doc>
+        <source-position filename="gst/gstmessage.h" line="466"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstmessage.h"
+               line="464">%TRUE if @new_message was different from @old_message</doc>
+          <type name="gboolean" c:type="gboolean"/>
+        </return-value>
+        <parameters>
+          <parameter name="old_message"
+                     direction="inout"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     nullable="1"
+                     allow-none="1">
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.h"
+                 line="452">pointer to a
+    pointer to a #GstMessage to be replaced.</doc>
+            <type name="Message" c:type="GstMessage**"/>
+          </parameter>
+          <parameter name="new_message"
+                     transfer-ownership="none"
+                     nullable="1"
+                     allow-none="1">
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.h"
+                 line="454">pointer to a #GstMessage that will
+    replace the message pointed to by @old_message.</doc>
+            <type name="Message" c:type="GstMessage*"/>
+          </parameter>
+        </parameters>
+      </function>
     </record>
     <bitfield name="MessageType"
               glib:type-name="GstMessageType"
               glib:get-type="gst_message_type_get_type"
               c:type="GstMessageType">
-      <doc xml:space="preserve">The different message types that are available.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstmessage.h"
+           line="31">The different message types that are available.</doc>
       <member name="unknown"
               value="0"
               c:identifier="GST_MESSAGE_UNKNOWN"
               glib:nick="unknown">
-        <doc xml:space="preserve">an undefined message</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.h"
+             line="33">an undefined message</doc>
       </member>
       <member name="eos"
               value="1"
               c:identifier="GST_MESSAGE_EOS"
               glib:nick="eos">
-        <doc xml:space="preserve">end-of-stream reached in a pipeline. The application will
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.h"
+             line="34">end-of-stream reached in a pipeline. The application will
 only receive this message in the PLAYING state and every time it sets a
 pipeline to PLAYING that is in the EOS state. The application can perform a
 flushing seek in the pipeline, which will undo the EOS state again.</doc>
@@ -23137,33 +35612,45 @@ flushing seek in the pipeline, which will undo the EOS state again.</doc>
               value="2"
               c:identifier="GST_MESSAGE_ERROR"
               glib:nick="error">
-        <doc xml:space="preserve">an error occurred. When the application receives an error
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.h"
+             line="38">an error occurred. When the application receives an error
 message it should stop playback of the pipeline and not assume that more
-data will be played.</doc>
+data will be played. It is possible to specify a redirection url to the error
+messages by setting a `redirect-location` field into the error message, application
+or high level bins might use the information as required.</doc>
       </member>
       <member name="warning"
               value="4"
               c:identifier="GST_MESSAGE_WARNING"
               glib:nick="warning">
-        <doc xml:space="preserve">a warning occurred.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.h"
+             line="43">a warning occurred.</doc>
       </member>
       <member name="info"
               value="8"
               c:identifier="GST_MESSAGE_INFO"
               glib:nick="info">
-        <doc xml:space="preserve">an info message occurred</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.h"
+             line="44">an info message occurred</doc>
       </member>
       <member name="tag"
               value="16"
               c:identifier="GST_MESSAGE_TAG"
               glib:nick="tag">
-        <doc xml:space="preserve">a tag was found.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.h"
+             line="45">a tag was found.</doc>
       </member>
       <member name="buffering"
               value="32"
               c:identifier="GST_MESSAGE_BUFFERING"
               glib:nick="buffering">
-        <doc xml:space="preserve">the pipeline is buffering. When the application
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.h"
+             line="46">the pipeline is buffering. When the application
 receives a buffering message in the PLAYING state for a non-live pipeline it
 must PAUSE the pipeline until the buffering completes, when the percentage
 field in the message is 100%. For live pipelines, no action must be
@@ -23174,26 +35661,34 @@ the progress.</doc>
               value="64"
               c:identifier="GST_MESSAGE_STATE_CHANGED"
               glib:nick="state-changed">
-        <doc xml:space="preserve">a state change happened</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.h"
+             line="52">a state change happened</doc>
       </member>
       <member name="state_dirty"
               value="128"
               c:identifier="GST_MESSAGE_STATE_DIRTY"
               glib:nick="state-dirty">
-        <doc xml:space="preserve">an element changed state in a streaming thread.
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.h"
+             line="53">an element changed state in a streaming thread.
 This message is deprecated.</doc>
       </member>
       <member name="step_done"
               value="256"
               c:identifier="GST_MESSAGE_STEP_DONE"
               glib:nick="step-done">
-        <doc xml:space="preserve">a stepping operation finished.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.h"
+             line="55">a stepping operation finished.</doc>
       </member>
       <member name="clock_provide"
               value="512"
               c:identifier="GST_MESSAGE_CLOCK_PROVIDE"
               glib:nick="clock-provide">
-        <doc xml:space="preserve">an element notifies its capability of providing
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.h"
+             line="56">an element notifies its capability of providing
                             a clock. This message is used internally and
                             never forwarded to the application.</doc>
       </member>
@@ -23201,7 +35696,9 @@ This message is deprecated.</doc>
               value="1024"
               c:identifier="GST_MESSAGE_CLOCK_LOST"
               glib:nick="clock-lost">
-        <doc xml:space="preserve">The current clock as selected by the pipeline became
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.h"
+             line="59">The current clock as selected by the pipeline became
                          unusable. The pipeline will select a new clock on
                          the next PLAYING state change. The application
                          should set the pipeline to PAUSED and back to
@@ -23211,48 +35708,62 @@ This message is deprecated.</doc>
               value="2048"
               c:identifier="GST_MESSAGE_NEW_CLOCK"
               glib:nick="new-clock">
-        <doc xml:space="preserve">a new clock was selected in the pipeline.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.h"
+             line="64">a new clock was selected in the pipeline.</doc>
       </member>
       <member name="structure_change"
               value="4096"
               c:identifier="GST_MESSAGE_STRUCTURE_CHANGE"
               glib:nick="structure-change">
-        <doc xml:space="preserve">the structure of the pipeline changed. This
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.h"
+             line="65">the structure of the pipeline changed. This
 message is used internally and never forwarded to the application.</doc>
       </member>
       <member name="stream_status"
               value="8192"
               c:identifier="GST_MESSAGE_STREAM_STATUS"
               glib:nick="stream-status">
-        <doc xml:space="preserve">status about a stream, emitted when it starts,
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.h"
+             line="67">status about a stream, emitted when it starts,
                             stops, errors, etc..</doc>
       </member>
       <member name="application"
               value="16384"
               c:identifier="GST_MESSAGE_APPLICATION"
               glib:nick="application">
-        <doc xml:space="preserve">message posted by the application, possibly
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.h"
+             line="69">message posted by the application, possibly
                           via an application-specific element.</doc>
       </member>
       <member name="element"
               value="32768"
               c:identifier="GST_MESSAGE_ELEMENT"
               glib:nick="element">
-        <doc xml:space="preserve">element-specific message, see the specific element's
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.h"
+             line="71">element-specific message, see the specific element's
                       documentation</doc>
       </member>
       <member name="segment_start"
               value="65536"
               c:identifier="GST_MESSAGE_SEGMENT_START"
               glib:nick="segment-start">
-        <doc xml:space="preserve">pipeline started playback of a segment. This
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.h"
+             line="73">pipeline started playback of a segment. This
 message is used internally and never forwarded to the application.</doc>
       </member>
       <member name="segment_done"
               value="131072"
               c:identifier="GST_MESSAGE_SEGMENT_DONE"
               glib:nick="segment-done">
-        <doc xml:space="preserve">pipeline completed playback of a segment. This
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.h"
+             line="75">pipeline completed playback of a segment. This
 message is forwarded to the application after all elements that posted
 @GST_MESSAGE_SEGMENT_START posted a GST_MESSAGE_SEGMENT_DONE message.</doc>
       </member>
@@ -23260,21 +35771,27 @@ message is forwarded to the application after all elements that posted
               value="262144"
               c:identifier="GST_MESSAGE_DURATION_CHANGED"
               glib:nick="duration-changed">
-        <doc xml:space="preserve">The duration of a pipeline changed. The
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.h"
+             line="78">The duration of a pipeline changed. The
 application can get the new duration with a duration query.</doc>
       </member>
       <member name="latency"
               value="524288"
               c:identifier="GST_MESSAGE_LATENCY"
               glib:nick="latency">
-        <doc xml:space="preserve">Posted by elements when their latency changes. The
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.h"
+             line="86">Posted by elements when their latency changes. The
 application should recalculate and distribute a new latency.</doc>
       </member>
       <member name="async_start"
               value="1048576"
               c:identifier="GST_MESSAGE_ASYNC_START"
               glib:nick="async-start">
-        <doc xml:space="preserve">Posted by elements when they start an ASYNC
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.h"
+             line="80">Posted by elements when they start an ASYNC
 #GstStateChange. This message is not forwarded to the application but is used
 internally.</doc>
       </member>
@@ -23282,7 +35799,9 @@ internally.</doc>
               value="2097152"
               c:identifier="GST_MESSAGE_ASYNC_DONE"
               glib:nick="async-done">
-        <doc xml:space="preserve">Posted by elements when they complete an ASYNC
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.h"
+             line="83">Posted by elements when they complete an ASYNC
 #GstStateChange. The application will only receive this message from the toplevel
 pipeline.</doc>
       </member>
@@ -23290,7 +35809,9 @@ pipeline.</doc>
               value="4194304"
               c:identifier="GST_MESSAGE_REQUEST_STATE"
               glib:nick="request-state">
-        <doc xml:space="preserve">Posted by elements when they want the pipeline to
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.h"
+             line="88">Posted by elements when they want the pipeline to
 change state. This message is a suggestion to the application which can
 decide to perform the state change on (part of) the pipeline.</doc>
       </member>
@@ -23298,33 +35819,43 @@ decide to perform the state change on (part of) the pipeline.</doc>
               value="8388608"
               c:identifier="GST_MESSAGE_STEP_START"
               glib:nick="step-start">
-        <doc xml:space="preserve">A stepping operation was started.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.h"
+             line="91">A stepping operation was started.</doc>
       </member>
       <member name="qos"
               value="16777216"
               c:identifier="GST_MESSAGE_QOS"
               glib:nick="qos">
-        <doc xml:space="preserve">A buffer was dropped or an element changed its processing
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.h"
+             line="92">A buffer was dropped or an element changed its processing
 strategy for Quality of Service reasons.</doc>
       </member>
       <member name="progress"
               value="33554432"
               c:identifier="GST_MESSAGE_PROGRESS"
               glib:nick="progress">
-        <doc xml:space="preserve">A progress message.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.h"
+             line="94">A progress message.</doc>
       </member>
       <member name="toc"
               value="67108864"
               c:identifier="GST_MESSAGE_TOC"
               glib:nick="toc">
-        <doc xml:space="preserve">A new table of contents (TOC) was found or previously found TOC
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.h"
+             line="95">A new table of contents (TOC) was found or previously found TOC
 was updated.</doc>
       </member>
       <member name="reset_time"
               value="134217728"
               c:identifier="GST_MESSAGE_RESET_TIME"
               glib:nick="reset-time">
-        <doc xml:space="preserve">Message to request resetting the pipeline's
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.h"
+             line="97">Message to request resetting the pipeline's
     running time from the pipeline. This is an internal message which
     applications will likely never receive.</doc>
       </member>
@@ -23332,7 +35863,9 @@ was updated.</doc>
               value="268435456"
               c:identifier="GST_MESSAGE_STREAM_START"
               glib:nick="stream-start">
-        <doc xml:space="preserve">Message indicating start of a new stream. Useful
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.h"
+             line="100">Message indicating start of a new stream. Useful
     e.g. when using playbin in gapless playback mode, to get notified when
     the next title actually starts playing (which will be some time after
     the URI for the next title has been set).</doc>
@@ -23341,109 +35874,157 @@ was updated.</doc>
               value="536870912"
               c:identifier="GST_MESSAGE_NEED_CONTEXT"
               glib:nick="need-context">
-        <doc xml:space="preserve">Message indicating that an element wants a specific context (Since 1.2)</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.h"
+             line="104">Message indicating that an element wants a specific context (Since: 1.2)</doc>
       </member>
       <member name="have_context"
               value="1073741824"
               c:identifier="GST_MESSAGE_HAVE_CONTEXT"
               glib:nick="have-context">
-        <doc xml:space="preserve">Message indicating that an element created a context (Since 1.2)</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.h"
+             line="105">Message indicating that an element created a context (Since: 1.2)</doc>
       </member>
       <member name="extended"
               value="2147483648"
               c:identifier="GST_MESSAGE_EXTENDED"
               glib:nick="extended">
-        <doc xml:space="preserve">Message is an extended message type (see below).
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.h"
+             line="106">Message is an extended message type (see below).
     These extended message IDs can't be used directly with mask-based API
     like gst_bus_poll() or gst_bus_timed_pop_filtered(), but you can still
     filter for GST_MESSAGE_EXTENDED and then check the result for the
-    specific type. (Since 1.4)</doc>
+    specific type. (Since: 1.4)</doc>
       </member>
       <member name="device_added"
               value="2147483649"
               c:identifier="GST_MESSAGE_DEVICE_ADDED"
               glib:nick="device-added">
-        <doc xml:space="preserve">Message indicating a #GstDevice was added to
-    a #GstDeviceProvider (Since 1.4)</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.h"
+             line="111">Message indicating a #GstDevice was added to
+    a #GstDeviceProvider (Since: 1.4)</doc>
       </member>
       <member name="device_removed"
               value="2147483650"
               c:identifier="GST_MESSAGE_DEVICE_REMOVED"
               glib:nick="device-removed">
-        <doc xml:space="preserve">Message indicating a #GstDevice was removed
-    from a #GstDeviceProvider (Since 1.4)</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.h"
+             line="113">Message indicating a #GstDevice was removed
+    from a #GstDeviceProvider (Since: 1.4)</doc>
       </member>
       <member name="property_notify"
               value="2147483651"
               c:identifier="GST_MESSAGE_PROPERTY_NOTIFY"
               glib:nick="property-notify">
-        <doc xml:space="preserve">Message indicating a #GObject property has
-    changed (Since 1.10)</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.h"
+             line="115">Message indicating a #GObject property has
+    changed (Since: 1.10)</doc>
       </member>
       <member name="stream_collection"
               value="2147483652"
               c:identifier="GST_MESSAGE_STREAM_COLLECTION"
               glib:nick="stream-collection">
-        <doc xml:space="preserve">Message indicating a new #GstStreamCollection
-    is available (Since 1.10)</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.h"
+             line="117">Message indicating a new #GstStreamCollection
+    is available (Since: 1.10)</doc>
       </member>
       <member name="streams_selected"
               value="2147483653"
               c:identifier="GST_MESSAGE_STREAMS_SELECTED"
               glib:nick="streams-selected">
-        <doc xml:space="preserve">Message indicating the active selection of
-    #GstStreams has changed (Since 1.10)</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.h"
+             line="119">Message indicating the active selection of
+    #GstStreams has changed (Since: 1.10)</doc>
       </member>
       <member name="redirect"
               value="2147483654"
               c:identifier="GST_MESSAGE_REDIRECT"
               glib:nick="redirect">
-        <doc xml:space="preserve">Message indicating to request the application to
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.h"
+             line="121">Message indicating to request the application to
     try to play the given URL(s). Useful if for example a HTTP 302/303
-    response is received with a non-HTTP URL inside. (Since 1.10)</doc>
+    response is received with a non-HTTP URL inside. (Since: 1.10)</doc>
       </member>
       <member name="device_changed"
-              value="2147483654"
+              value="2147483655"
               c:identifier="GST_MESSAGE_DEVICE_CHANGED"
               glib:nick="device-changed">
-        <doc xml:space="preserve">Message indicating a #GstDevice was changed
-    a #GstDeviceProvider (Since 1.16)</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.h"
+             line="124">Message indicating a #GstDevice was changed
+    a #GstDeviceProvider (Since: 1.16)</doc>
+      </member>
+      <member name="instant_rate_request"
+              value="2147483656"
+              c:identifier="GST_MESSAGE_INSTANT_RATE_REQUEST"
+              glib:nick="instant-rate-request">
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.h"
+             line="126">Message sent by elements to request the
+    running time from the pipeline when an instant rate change should
+    be applied (which may be in the past when the answer arrives). (Since: 1.18)</doc>
       </member>
       <member name="any"
               value="4294967295"
               c:identifier="GST_MESSAGE_ANY"
               glib:nick="any">
-        <doc xml:space="preserve">mask for all of the above messages.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.h"
+             line="129">mask for all of the above messages.</doc>
       </member>
       <function name="get_name" c:identifier="gst_message_type_get_name">
-        <doc xml:space="preserve">Get a printable name for the given message type. Do not modify or free.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a reference to the static name of the message.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="140">Get a printable name for the given message type. Do not modify or free.</doc>
+        <source-position filename="gst/gstmessage.h" line="358"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstmessage.c"
+               line="146">a reference to the static name of the message.</doc>
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
         <parameters>
           <parameter name="type" transfer-ownership="none">
-            <doc xml:space="preserve">the message type</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="142">the message type</doc>
             <type name="MessageType" c:type="GstMessageType"/>
           </parameter>
         </parameters>
       </function>
       <function name="to_quark" c:identifier="gst_message_type_to_quark">
-        <doc xml:space="preserve">Get the unique quark for the given message type.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the quark associated with the message type</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="160">Get the unique quark for the given message type.</doc>
+        <source-position filename="gst/gstmessage.h" line="361"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstmessage.c"
+               line="166">the quark associated with the message type</doc>
           <type name="GLib.Quark" c:type="GQuark"/>
         </return-value>
         <parameters>
           <parameter name="type" transfer-ownership="none">
-            <doc xml:space="preserve">the message type</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmessage.c"
+                 line="162">the message type</doc>
             <type name="MessageType" c:type="GstMessageType"/>
           </parameter>
         </parameters>
       </function>
     </bitfield>
     <record name="Meta" c:type="GstMeta">
-      <doc xml:space="preserve">The #GstMeta structure should be included as the first member of a #GstBuffer
+      <doc xml:space="preserve"
+           filename="gst/gstmeta.c"
+           line="22">The #GstMeta structure should be included as the first member of a #GstBuffer
 metadata structure. The structure defines the API of the metadata and should
 be accessible to all elements using the metadata.
 
@@ -23462,32 +36043,46 @@ A specific implementation can be retrieved by name with gst_meta_get_info().
 
 See #GstBuffer for how the metadata can be added, retrieved and removed from
 buffers.</doc>
+      <source-position filename="gst/gstmeta.h" line="106"/>
       <field name="flags" writable="1">
-        <doc xml:space="preserve">extra flags for the metadata</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmeta.h"
+             line="97">extra flags for the metadata</doc>
         <type name="MetaFlags" c:type="GstMetaFlags"/>
       </field>
       <field name="info" writable="1">
-        <doc xml:space="preserve">pointer to the #GstMetaInfo</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmeta.h"
+             line="98">pointer to the #GstMetaInfo</doc>
         <type name="MetaInfo" c:type="const GstMetaInfo*"/>
       </field>
       <method name="compare_seqnum"
               c:identifier="gst_meta_compare_seqnum"
               version="1.16">
-        <doc xml:space="preserve">Meta sequence number compare function. Can be used as #GCompareFunc
+        <doc xml:space="preserve"
+             filename="gst/gstmeta.c"
+             line="253">Meta sequence number compare function. Can be used as #GCompareFunc
 or a #GCompareDataFunc.</doc>
+        <source-position filename="gst/gstmeta.h" line="229"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a negative number if @meta1 comes before @meta2, 0 if both metas
+          <doc xml:space="preserve"
+               filename="gst/gstmeta.c"
+               line="261">a negative number if @meta1 comes before @meta2, 0 if both metas
   have an equal sequence number, or a positive integer if @meta1 comes
   after @meta2.</doc>
           <type name="gint" c:type="gint"/>
         </return-value>
         <parameters>
           <instance-parameter name="meta1" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstMeta</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmeta.c"
+                 line="255">a #GstMeta</doc>
             <type name="Meta" c:type="const GstMeta*"/>
           </instance-parameter>
           <parameter name="meta2" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstMeta</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmeta.c"
+                 line="256">a #GstMeta</doc>
             <type name="Meta" c:type="const GstMeta*"/>
           </parameter>
         </parameters>
@@ -23495,13 +36090,18 @@ or a #GCompareDataFunc.</doc>
       <method name="get_seqnum"
               c:identifier="gst_meta_get_seqnum"
               version="1.16">
-        <doc xml:space="preserve">Gets seqnum for this meta.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmeta.c"
+             line="231">Gets seqnum for this meta.</doc>
+        <source-position filename="gst/gstmeta.h" line="226"/>
         <return-value transfer-ownership="none">
           <type name="guint64" c:type="guint64"/>
         </return-value>
         <parameters>
           <instance-parameter name="meta" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstMeta</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmeta.c"
+                 line="233">a #GstMeta</doc>
             <type name="Meta" c:type="const GstMeta*"/>
           </instance-parameter>
         </parameters>
@@ -23509,52 +36109,75 @@ or a #GCompareDataFunc.</doc>
       <function name="api_type_get_tags"
                 c:identifier="gst_meta_api_type_get_tags"
                 version="1.2">
+        <source-position filename="gst/gstmeta.h" line="223"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">an array of tags as strings.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstmeta.c"
+               line="129">an array of tags as strings.</doc>
           <array c:type="const gchar* const*">
             <type name="utf8"/>
           </array>
         </return-value>
         <parameters>
           <parameter name="api" transfer-ownership="none">
-            <doc xml:space="preserve">an API</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmeta.c"
+                 line="127">an API</doc>
             <type name="GType" c:type="GType"/>
           </parameter>
         </parameters>
       </function>
       <function name="api_type_has_tag"
                 c:identifier="gst_meta_api_type_has_tag">
-        <doc xml:space="preserve">Check if @api was registered with @tag.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if @api was registered with @tag.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmeta.c"
+             line="107">Check if @api was registered with @tag.</doc>
+        <source-position filename="gst/gstmeta.h" line="211"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstmeta.c"
+               line="114">%TRUE if @api was registered with @tag.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <parameter name="api" transfer-ownership="none">
-            <doc xml:space="preserve">an API</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmeta.c"
+                 line="109">an API</doc>
             <type name="GType" c:type="GType"/>
           </parameter>
           <parameter name="tag" transfer-ownership="none">
-            <doc xml:space="preserve">the tag to check</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmeta.c"
+                 line="110">the tag to check</doc>
             <type name="GLib.Quark" c:type="GQuark"/>
           </parameter>
         </parameters>
       </function>
       <function name="api_type_register"
                 c:identifier="gst_meta_api_type_register">
-        <doc xml:space="preserve">Register and return a GType for the @api and associate it with
+        <doc xml:space="preserve"
+             filename="gst/gstmeta.c"
+             line="71">Register and return a GType for the @api and associate it with
 @tags.</doc>
+        <source-position filename="gst/gstmeta.h" line="208"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a unique GType for @api.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstmeta.c"
+               line="79">a unique GType for @api.</doc>
           <type name="GType" c:type="GType"/>
         </return-value>
         <parameters>
           <parameter name="api" transfer-ownership="none">
-            <doc xml:space="preserve">an API to register</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmeta.c"
+                 line="73">an API to register</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="tags" transfer-ownership="none">
-            <doc xml:space="preserve">tags for @api</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmeta.c"
+                 line="74">tags for @api</doc>
             <array c:type="const gchar**">
               <type name="utf8" c:type="gchar*"/>
             </array>
@@ -23562,55 +36185,79 @@ or a #GCompareDataFunc.</doc>
         </parameters>
       </function>
       <function name="get_info" c:identifier="gst_meta_get_info">
-        <doc xml:space="preserve">Lookup a previously registered meta info structure by its implementation name
+        <doc xml:space="preserve"
+             filename="gst/gstmeta.c"
+             line="207">Lookup a previously registered meta info structure by its implementation name
 @impl.</doc>
+        <source-position filename="gst/gstmeta.h" line="220"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">a #GstMetaInfo with @impl, or
+          <doc xml:space="preserve"
+               filename="gst/gstmeta.c"
+               line="214">a #GstMetaInfo with @impl, or
 %NULL when no such metainfo exists.</doc>
           <type name="MetaInfo" c:type="const GstMetaInfo*"/>
         </return-value>
         <parameters>
           <parameter name="impl" transfer-ownership="none">
-            <doc xml:space="preserve">the name</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmeta.c"
+                 line="209">the name</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </function>
       <function name="register" c:identifier="gst_meta_register">
-        <doc xml:space="preserve">Register a new #GstMeta implementation.
+        <doc xml:space="preserve"
+             filename="gst/gstmeta.c"
+             line="147">Register a new #GstMeta implementation.
 
 The same @info can be retrieved later with gst_meta_get_info() by using
 @impl as the key.</doc>
+        <source-position filename="gst/gstmeta.h" line="214"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">a #GstMetaInfo that can be used to
+          <doc xml:space="preserve"
+               filename="gst/gstmeta.c"
+               line="161">a #GstMetaInfo that can be used to
 access metadata.</doc>
           <type name="MetaInfo" c:type="const GstMetaInfo*"/>
         </return-value>
         <parameters>
           <parameter name="api" transfer-ownership="none">
-            <doc xml:space="preserve">the type of the #GstMeta API</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmeta.c"
+                 line="149">the type of the #GstMeta API</doc>
             <type name="GType" c:type="GType"/>
           </parameter>
           <parameter name="impl" transfer-ownership="none">
-            <doc xml:space="preserve">the name of the #GstMeta implementation</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmeta.c"
+                 line="150">the name of the #GstMeta implementation</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="size" transfer-ownership="none">
-            <doc xml:space="preserve">the size of the #GstMeta structure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmeta.c"
+                 line="151">the size of the #GstMeta structure</doc>
             <type name="gsize" c:type="gsize"/>
           </parameter>
           <parameter name="init_func" transfer-ownership="none" scope="async">
-            <doc xml:space="preserve">a #GstMetaInitFunction</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmeta.c"
+                 line="152">a #GstMetaInitFunction</doc>
             <type name="MetaInitFunction" c:type="GstMetaInitFunction"/>
           </parameter>
           <parameter name="free_func" transfer-ownership="none" scope="async">
-            <doc xml:space="preserve">a #GstMetaFreeFunction</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmeta.c"
+                 line="153">a #GstMetaFreeFunction</doc>
             <type name="MetaFreeFunction" c:type="GstMetaFreeFunction"/>
           </parameter>
           <parameter name="transform_func"
                      transfer-ownership="none"
                      scope="async">
-            <doc xml:space="preserve">a #GstMetaTransformFunction</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstmeta.c"
+                 line="154">a #GstMetaTransformFunction</doc>
             <type name="MetaTransformFunction"
                   c:type="GstMetaTransformFunction"/>
           </parameter>
@@ -23621,160 +36268,229 @@ access metadata.</doc>
               glib:type-name="GstMetaFlags"
               glib:get-type="gst_meta_flags_get_type"
               c:type="GstMetaFlags">
-      <doc xml:space="preserve">Extra metadata flags.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstmeta.h"
+           line="35">Extra metadata flags.</doc>
       <member name="none"
               value="0"
               c:identifier="GST_META_FLAG_NONE"
               glib:nick="none">
-        <doc xml:space="preserve">no flags</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmeta.h"
+             line="37">no flags</doc>
       </member>
       <member name="readonly"
               value="1"
               c:identifier="GST_META_FLAG_READONLY"
               glib:nick="readonly">
-        <doc xml:space="preserve">metadata should not be modified</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmeta.h"
+             line="38">metadata should not be modified</doc>
       </member>
       <member name="pooled"
               value="2"
               c:identifier="GST_META_FLAG_POOLED"
               glib:nick="pooled">
-        <doc xml:space="preserve">metadata is managed by a bufferpool</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmeta.h"
+             line="39">metadata is managed by a bufferpool</doc>
       </member>
       <member name="locked"
               value="4"
               c:identifier="GST_META_FLAG_LOCKED"
               glib:nick="locked">
-        <doc xml:space="preserve">metadata should not be removed</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmeta.h"
+             line="40">metadata should not be removed</doc>
       </member>
       <member name="last"
               value="65536"
               c:identifier="GST_META_FLAG_LAST"
               glib:nick="last">
-        <doc xml:space="preserve">additional flags can be added starting from this flag.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmeta.h"
+             line="41">additional flags can be added starting from this flag.</doc>
       </member>
     </bitfield>
     <callback name="MetaFreeFunction" c:type="GstMetaFreeFunction">
-      <doc xml:space="preserve">Function called when @meta is freed in @buffer.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstmeta.h"
+           line="120">Function called when @meta is freed in @buffer.</doc>
+      <source-position filename="gst/gstmeta.h" line="127"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="meta" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstMeta</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstmeta.h"
+               line="122">a #GstMeta</doc>
           <type name="Meta" c:type="GstMeta*"/>
         </parameter>
         <parameter name="buffer" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstBuffer</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstmeta.h"
+               line="123">a #GstBuffer</doc>
           <type name="Buffer" c:type="GstBuffer*"/>
         </parameter>
       </parameters>
     </callback>
     <record name="MetaInfo" c:type="GstMetaInfo">
-      <doc xml:space="preserve">The #GstMetaInfo provides information about a specific metadata
+      <doc xml:space="preserve"
+           filename="gst/gstmeta.h"
+           line="181">The #GstMetaInfo provides information about a specific metadata
 structure.</doc>
+      <source-position filename="gst/gstmeta.h" line="205"/>
       <field name="api" writable="1">
-        <doc xml:space="preserve">tag identifying the metadata structure and api</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmeta.h"
+             line="183">tag identifying the metadata structure and api</doc>
         <type name="GType" c:type="GType"/>
       </field>
       <field name="type" writable="1">
-        <doc xml:space="preserve">type identifying the implementor of the api</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmeta.h"
+             line="184">type identifying the implementor of the api</doc>
         <type name="GType" c:type="GType"/>
       </field>
       <field name="size" writable="1">
-        <doc xml:space="preserve">size of the metadata</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmeta.h"
+             line="185">size of the metadata</doc>
         <type name="gsize" c:type="gsize"/>
       </field>
       <field name="init_func" writable="1">
-        <doc xml:space="preserve">function for initializing the metadata</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmeta.h"
+             line="186">function for initializing the metadata</doc>
         <type name="MetaInitFunction" c:type="GstMetaInitFunction"/>
       </field>
       <field name="free_func" writable="1">
-        <doc xml:space="preserve">function for freeing the metadata</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmeta.h"
+             line="187">function for freeing the metadata</doc>
         <type name="MetaFreeFunction" c:type="GstMetaFreeFunction"/>
       </field>
       <field name="transform_func" writable="1">
-        <doc xml:space="preserve">function for transforming the metadata</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmeta.h"
+             line="188">function for transforming the metadata</doc>
         <type name="MetaTransformFunction" c:type="GstMetaTransformFunction"/>
       </field>
     </record>
     <callback name="MetaInitFunction" c:type="GstMetaInitFunction">
-      <doc xml:space="preserve">Function called when @meta is initialized in @buffer.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstmeta.h"
+           line="110">Function called when @meta is initialized in @buffer.</doc>
+      <source-position filename="gst/gstmeta.h" line="118"/>
       <return-value transfer-ownership="none">
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="meta" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstMeta</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstmeta.h"
+               line="112">a #GstMeta</doc>
           <type name="Meta" c:type="GstMeta*"/>
         </parameter>
         <parameter name="params"
                    transfer-ownership="none"
                    nullable="1"
                    allow-none="1">
-          <doc xml:space="preserve">parameters passed to the init function</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstmeta.h"
+               line="113">parameters passed to the init function</doc>
           <type name="gpointer" c:type="gpointer"/>
         </parameter>
         <parameter name="buffer" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstBuffer</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstmeta.h"
+               line="114">a #GstBuffer</doc>
           <type name="Buffer" c:type="GstBuffer*"/>
         </parameter>
       </parameters>
     </callback>
     <record name="MetaTransformCopy" c:type="GstMetaTransformCopy">
-      <doc xml:space="preserve">Extra data passed to a "gst-copy" transform #GstMetaTransformFunction.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstmeta.h"
+           line="145">Extra data passed to a "gst-copy" transform #GstMetaTransformFunction.</doc>
+      <source-position filename="gst/gstmeta.h" line="157"/>
       <field name="region" writable="1">
-        <doc xml:space="preserve">%TRUE if only region is copied</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmeta.h"
+             line="147">%TRUE if only region is copied</doc>
         <type name="gboolean" c:type="gboolean"/>
       </field>
       <field name="offset" writable="1">
-        <doc xml:space="preserve">the offset to copy, 0 if @region is %FALSE, otherwise &gt; 0</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmeta.h"
+             line="148">the offset to copy, 0 if @region is %FALSE, otherwise &gt; 0</doc>
         <type name="gsize" c:type="gsize"/>
       </field>
       <field name="size" writable="1">
-        <doc xml:space="preserve">the size to copy, -1 or the buffer size when @region is %FALSE</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmeta.h"
+             line="149">the size to copy, -1 or the buffer size when @region is %FALSE</doc>
         <type name="gsize" c:type="gsize"/>
       </field>
     </record>
     <callback name="MetaTransformFunction" c:type="GstMetaTransformFunction">
-      <doc xml:space="preserve">Function called for each @meta in @buffer as a result of performing a
+      <doc xml:space="preserve"
+           filename="gst/gstmeta.h"
+           line="159">Function called for each @meta in @buffer as a result of performing a
 transformation on @transbuf. Additional @type specific transform data
 is passed to the function as @data.
 
 Implementations should check the @type of the transform and parse
 additional type specific fields in @data that should be used to update
 the metadata on @transbuf.</doc>
+      <source-position filename="gst/gstmeta.h" line="177"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE if the transform could be performed</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmeta.h"
+             line="175">%TRUE if the transform could be performed</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="transbuf" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstBuffer</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstmeta.h"
+               line="161">a #GstBuffer</doc>
           <type name="Buffer" c:type="GstBuffer*"/>
         </parameter>
         <parameter name="meta" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstMeta</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstmeta.h"
+               line="162">a #GstMeta</doc>
           <type name="Meta" c:type="GstMeta*"/>
         </parameter>
         <parameter name="buffer" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstBuffer</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstmeta.h"
+               line="163">a #GstBuffer</doc>
           <type name="Buffer" c:type="GstBuffer*"/>
         </parameter>
         <parameter name="type" transfer-ownership="none">
-          <doc xml:space="preserve">the transform type</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstmeta.h"
+               line="164">the transform type</doc>
           <type name="GLib.Quark" c:type="GQuark"/>
         </parameter>
         <parameter name="data"
                    transfer-ownership="none"
                    nullable="1"
                    allow-none="1">
-          <doc xml:space="preserve">transform specific data.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstmeta.h"
+               line="165">transform specific data.</doc>
           <type name="gpointer" c:type="gpointer"/>
         </parameter>
       </parameters>
     </callback>
     <record name="MiniObject" c:type="GstMiniObject">
-      <doc xml:space="preserve">#GstMiniObject is a simple structure that can be used to implement refcounted
+      <doc xml:space="preserve"
+           filename="gst/gstminiobject.c"
+           line="21">#GstMiniObject is a simple structure that can be used to implement refcounted
 types.
 
 Subclasses will include #GstMiniObject as the first member in their structure
@@ -23800,34 +36516,49 @@ with gst_mini_object_copy() or similar methods.
 
 A weak reference can be added and remove with gst_mini_object_weak_ref()
 and gst_mini_object_weak_unref() respectively.</doc>
+      <source-position filename="gst/gstminiobject.h" line="219"/>
       <field name="type" writable="1">
-        <doc xml:space="preserve">the GType of the object</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstminiobject.h"
+             line="193">the GType of the object</doc>
         <type name="GType" c:type="GType"/>
       </field>
       <field name="refcount" writable="1">
-        <doc xml:space="preserve">atomic refcount</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstminiobject.h"
+             line="194">atomic refcount</doc>
         <type name="gint" c:type="gint"/>
       </field>
       <field name="lockstate" writable="1">
-        <doc xml:space="preserve">atomic state of the locks</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstminiobject.h"
+             line="195">atomic state of the locks</doc>
         <type name="gint" c:type="gint"/>
       </field>
       <field name="flags" writable="1">
-        <doc xml:space="preserve">extra flags.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstminiobject.h"
+             line="196">extra flags.</doc>
         <type name="guint" c:type="guint"/>
       </field>
       <field name="copy" introspectable="0" writable="1">
-        <doc xml:space="preserve">a copy function</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstminiobject.h"
+             line="197">a copy function</doc>
         <type name="MiniObjectCopyFunction"
               c:type="GstMiniObjectCopyFunction"/>
       </field>
       <field name="dispose" writable="1">
-        <doc xml:space="preserve">a dispose function</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstminiobject.h"
+             line="198">a dispose function</doc>
         <type name="MiniObjectDisposeFunction"
               c:type="GstMiniObjectDisposeFunction"/>
       </field>
       <field name="free" writable="1">
-        <doc xml:space="preserve">the free function</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstminiobject.h"
+             line="199">the free function</doc>
         <type name="MiniObjectFreeFunction"
               c:type="GstMiniObjectFreeFunction"/>
       </field>
@@ -23840,7 +36571,9 @@ and gst_mini_object_weak_unref() respectively.</doc>
       <method name="add_parent"
               c:identifier="gst_mini_object_add_parent"
               version="1.16">
-        <doc xml:space="preserve">This adds @parent as a parent for @object. Having one ore more parents affects the
+        <doc xml:space="preserve"
+             filename="gst/gstminiobject.c"
+             line="984">This adds @parent as a parent for @object. Having one ore more parents affects the
 writability of @object: if a @parent is not writable, @object is also not
 writable, regardless of its refcount. @object is only writable if all
 the parents are writable and its own refcount is exactly 1.
@@ -23848,16 +36581,21 @@ the parents are writable and its own refcount is exactly 1.
 Note: This function does not take ownership of @parent and also does not
 take an additional reference. It is the responsibility of the caller to
 remove the parent again at a later time.</doc>
+        <source-position filename="gst/gstminiobject.h" line="280"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="object" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstMiniObject</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstminiobject.c"
+                 line="986">a #GstMiniObject</doc>
             <type name="MiniObject" c:type="GstMiniObject*"/>
           </instance-parameter>
           <parameter name="parent" transfer-ownership="none">
-            <doc xml:space="preserve">a parent #GstMiniObject</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstminiobject.c"
+                 line="987">a parent #GstMiniObject</doc>
             <type name="MiniObject" c:type="GstMiniObject*"/>
           </parameter>
         </parameters>
@@ -23865,36 +36603,52 @@ remove the parent again at a later time.</doc>
       <method name="copy"
               c:identifier="gst_mini_object_copy"
               introspectable="0">
-        <doc xml:space="preserve">Creates a copy of the mini-object.
+        <doc xml:space="preserve"
+             filename="gst/gstminiobject.c"
+             line="169">Creates a copy of the mini-object.
 
 MT safe</doc>
+        <source-position filename="gst/gstminiobject.h" line="267"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">the new mini-object if copying is
+          <doc xml:space="preserve"
+               filename="gst/gstminiobject.c"
+               line="177">the new mini-object if copying is
 possible, %NULL otherwise.</doc>
           <type name="MiniObject" c:type="GstMiniObject*"/>
         </return-value>
         <parameters>
           <instance-parameter name="mini_object" transfer-ownership="none">
-            <doc xml:space="preserve">the mini-object to copy</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstminiobject.c"
+                 line="171">the mini-object to copy</doc>
             <type name="MiniObject" c:type="const GstMiniObject*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_qdata" c:identifier="gst_mini_object_get_qdata">
-        <doc xml:space="preserve">This function gets back user data pointers stored via
+        <doc xml:space="preserve"
+             filename="gst/gstminiobject.c"
+             line="918">This function gets back user data pointers stored via
 gst_mini_object_set_qdata().</doc>
+        <source-position filename="gst/gstminiobject.h" line="274"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">The user data pointer set, or
+          <doc xml:space="preserve"
+               filename="gst/gstminiobject.c"
+               line="926">The user data pointer set, or
 %NULL</doc>
           <type name="gpointer" c:type="gpointer"/>
         </return-value>
         <parameters>
           <instance-parameter name="object" transfer-ownership="none">
-            <doc xml:space="preserve">The GstMiniObject to get a stored user data pointer from</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstminiobject.c"
+                 line="920">The GstMiniObject to get a stored user data pointer from</doc>
             <type name="MiniObject" c:type="GstMiniObject*"/>
           </instance-parameter>
           <parameter name="quark" transfer-ownership="none">
-            <doc xml:space="preserve">A #GQuark, naming the user data pointer</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstminiobject.c"
+                 line="921">A #GQuark, naming the user data pointer</doc>
             <type name="GLib.Quark" c:type="GQuark"/>
           </parameter>
         </parameters>
@@ -23902,29 +36656,40 @@ gst_mini_object_set_qdata().</doc>
       <method name="init"
               c:identifier="gst_mini_object_init"
               introspectable="0">
-        <doc xml:space="preserve">Initializes a mini-object with the desired type and copy/dispose/free
+        <doc xml:space="preserve"
+             filename="gst/gstminiobject.c"
+             line="135">Initializes a mini-object with the desired type and copy/dispose/free
 functions.</doc>
+        <source-position filename="gst/gstminiobject.h" line="222"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="mini_object" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstMiniObject</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstminiobject.c"
+                 line="137">a #GstMiniObject</doc>
             <type name="MiniObject" c:type="GstMiniObject*"/>
           </instance-parameter>
           <parameter name="flags" transfer-ownership="none">
-            <doc xml:space="preserve">initial #GstMiniObjectFlags</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstminiobject.c"
+                 line="138">initial #GstMiniObjectFlags</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="type" transfer-ownership="none">
-            <doc xml:space="preserve">the #GType of the mini-object to create</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstminiobject.c"
+                 line="139">the #GType of the mini-object to create</doc>
             <type name="GType" c:type="GType"/>
           </parameter>
           <parameter name="copy_func"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">the copy function, or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstminiobject.c"
+                 line="140">the copy function, or %NULL</doc>
             <type name="MiniObjectCopyFunction"
                   c:type="GstMiniObjectCopyFunction"/>
           </parameter>
@@ -23932,7 +36697,9 @@ functions.</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">the dispose function, or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstminiobject.c"
+                 line="141">the dispose function, or %NULL</doc>
             <type name="MiniObjectDisposeFunction"
                   c:type="GstMiniObjectDisposeFunction"/>
           </parameter>
@@ -23940,14 +36707,18 @@ functions.</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">the free function or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstminiobject.c"
+                 line="142">the free function or %NULL</doc>
             <type name="MiniObjectFreeFunction"
                   c:type="GstMiniObjectFreeFunction"/>
           </parameter>
         </parameters>
       </method>
       <method name="is_writable" c:identifier="gst_mini_object_is_writable">
-        <doc xml:space="preserve">If @mini_object has the LOCKABLE flag set, check if the current EXCLUSIVE
+        <doc xml:space="preserve"
+             filename="gst/gstminiobject.c"
+             line="328">If @mini_object has the LOCKABLE flag set, check if the current EXCLUSIVE
 lock on @object is the only one, this means that changes to the object will
 not be visible to any other object.
 
@@ -23957,30 +36728,44 @@ object is therefore writable.
 
 Modification of a mini-object should only be done after verifying that it
 is writable.</doc>
+        <source-position filename="gst/gstminiobject.h" line="259"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the object is writable.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstminiobject.c"
+               line="343">%TRUE if the object is writable.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="mini_object" transfer-ownership="none">
-            <doc xml:space="preserve">the mini-object to check</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstminiobject.c"
+                 line="330">the mini-object to check</doc>
             <type name="MiniObject" c:type="const GstMiniObject*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="lock" c:identifier="gst_mini_object_lock">
-        <doc xml:space="preserve">Lock the mini-object with the specified access mode in @flags.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if @object could be locked.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstminiobject.c"
+             line="195">Lock the mini-object with the specified access mode in @flags.</doc>
+        <source-position filename="gst/gstminiobject.h" line="253"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstminiobject.c"
+               line="202">%TRUE if @object could be locked.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="object" transfer-ownership="none">
-            <doc xml:space="preserve">the mini-object to lock</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstminiobject.c"
+                 line="197">the mini-object to lock</doc>
             <type name="MiniObject" c:type="GstMiniObject*"/>
           </instance-parameter>
           <parameter name="flags" transfer-ownership="none">
-            <doc xml:space="preserve">#GstLockFlags</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstminiobject.c"
+                 line="198">#GstLockFlags</doc>
             <type name="LockFlags" c:type="GstLockFlags"/>
           </parameter>
         </parameters>
@@ -23988,25 +36773,34 @@ is writable.</doc>
       <method name="make_writable"
               c:identifier="gst_mini_object_make_writable"
               introspectable="0">
-        <doc xml:space="preserve">Checks if a mini-object is writable.  If not, a writable copy is made and
+        <doc xml:space="preserve"
+             filename="gst/gstminiobject.c"
+             line="403">Checks if a mini-object is writable.  If not, a writable copy is made and
 returned.  This gives away the reference to the original mini object,
 and returns a reference to the new object.
 
 MT safe</doc>
+        <source-position filename="gst/gstminiobject.h" line="262"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a mini-object (possibly the same pointer) that
+          <doc xml:space="preserve"
+               filename="gst/gstminiobject.c"
+               line="413">a mini-object (possibly the same pointer) that
     is writable.</doc>
           <type name="MiniObject" c:type="GstMiniObject*"/>
         </return-value>
         <parameters>
           <instance-parameter name="mini_object" transfer-ownership="full">
-            <doc xml:space="preserve">the mini-object to make writable</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstminiobject.c"
+                 line="405">the mini-object to make writable</doc>
             <type name="MiniObject" c:type="GstMiniObject*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="ref" c:identifier="gst_mini_object_ref" introspectable="0">
-        <doc xml:space="preserve">Increase the reference count of the mini-object.
+        <doc xml:space="preserve"
+             filename="gst/gstminiobject.c"
+             line="435">Increase the reference count of the mini-object.
 
 Note that the refcount affects the writability
 of @mini-object, see gst_mini_object_is_writable(). It is
@@ -24014,13 +36808,18 @@ important to note that keeping additional references to
 GstMiniObject instances can potentially increase the number
 of memcpy operations in a pipeline, especially if the miniobject
 is a #GstBuffer.</doc>
+        <source-position filename="gst/gstminiobject.h" line="232"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the mini-object.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstminiobject.c"
+               line="448">the mini-object.</doc>
           <type name="MiniObject" c:type="GstMiniObject*"/>
         </return-value>
         <parameters>
           <instance-parameter name="mini_object" transfer-ownership="none">
-            <doc xml:space="preserve">the mini-object</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstminiobject.c"
+                 line="437">the mini-object</doc>
             <type name="MiniObject" c:type="GstMiniObject*"/>
           </instance-parameter>
         </parameters>
@@ -24028,24 +36827,33 @@ is a #GstBuffer.</doc>
       <method name="remove_parent"
               c:identifier="gst_mini_object_remove_parent"
               version="1.16">
-        <doc xml:space="preserve">This removes @parent as a parent for @object. See
+        <doc xml:space="preserve"
+             filename="gst/gstminiobject.c"
+             line="1052">This removes @parent as a parent for @object. See
 gst_mini_object_add_parent().</doc>
+        <source-position filename="gst/gstminiobject.h" line="282"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="object" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstMiniObject</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstminiobject.c"
+                 line="1054">a #GstMiniObject</doc>
             <type name="MiniObject" c:type="GstMiniObject*"/>
           </instance-parameter>
           <parameter name="parent" transfer-ownership="none">
-            <doc xml:space="preserve">a parent #GstMiniObject</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstminiobject.c"
+                 line="1055">a parent #GstMiniObject</doc>
             <type name="MiniObject" c:type="GstMiniObject*"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_qdata" c:identifier="gst_mini_object_set_qdata">
-        <doc xml:space="preserve">This sets an opaque, named pointer on a miniobject.
+        <doc xml:space="preserve"
+             filename="gst/gstminiobject.c"
+             line="868">This sets an opaque, named pointer on a miniobject.
 The name is specified through a #GQuark (retrieved e.g. via
 g_quark_from_static_string()), and the pointer
 can be gotten back from the @object with gst_mini_object_get_qdata()
@@ -24057,64 +36865,89 @@ removes the data stored.
 @destroy may be specified which is called with @data as argument
 when the @object is disposed, or the data is being overwritten by
 a call to gst_mini_object_set_qdata() with the same @quark.</doc>
+        <source-position filename="gst/gstminiobject.h" line="271"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="object" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstMiniObject</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstminiobject.c"
+                 line="870">a #GstMiniObject</doc>
             <type name="MiniObject" c:type="GstMiniObject*"/>
           </instance-parameter>
           <parameter name="quark" transfer-ownership="none">
-            <doc xml:space="preserve">A #GQuark, naming the user data pointer</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstminiobject.c"
+                 line="871">A #GQuark, naming the user data pointer</doc>
             <type name="GLib.Quark" c:type="GQuark"/>
           </parameter>
           <parameter name="data"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">An opaque user data pointer</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstminiobject.c"
+                 line="872">An opaque user data pointer</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
           <parameter name="destroy" transfer-ownership="none" scope="async">
-            <doc xml:space="preserve">Function to invoke with @data as argument, when @data
+            <doc xml:space="preserve"
+                 filename="gst/gstminiobject.c"
+                 line="873">Function to invoke with @data as argument, when @data
           needs to be freed</doc>
             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
           </parameter>
         </parameters>
       </method>
       <method name="steal_qdata" c:identifier="gst_mini_object_steal_qdata">
-        <doc xml:space="preserve">This function gets back user data pointers stored via gst_mini_object_set_qdata()
-and removes the data from @object without invoking its destroy() function (if
+        <doc xml:space="preserve"
+             filename="gst/gstminiobject.c"
+             line="950">This function gets back user data pointers stored via gst_mini_object_set_qdata()
+and removes the data from @object without invoking its `destroy()` function (if
 any was set).</doc>
+        <source-position filename="gst/gstminiobject.h" line="277"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">The user data pointer set, or
+          <doc xml:space="preserve"
+               filename="gst/gstminiobject.c"
+               line="959">The user data pointer set, or
 %NULL</doc>
           <type name="gpointer" c:type="gpointer"/>
         </return-value>
         <parameters>
           <instance-parameter name="object" transfer-ownership="none">
-            <doc xml:space="preserve">The GstMiniObject to get a stored user data pointer from</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstminiobject.c"
+                 line="952">The GstMiniObject to get a stored user data pointer from</doc>
             <type name="MiniObject" c:type="GstMiniObject*"/>
           </instance-parameter>
           <parameter name="quark" transfer-ownership="none">
-            <doc xml:space="preserve">A #GQuark, naming the user data pointer</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstminiobject.c"
+                 line="953">A #GQuark, naming the user data pointer</doc>
             <type name="GLib.Quark" c:type="GQuark"/>
           </parameter>
         </parameters>
       </method>
       <method name="unlock" c:identifier="gst_mini_object_unlock">
-        <doc xml:space="preserve">Unlock the mini-object with the specified access mode in @flags.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstminiobject.c"
+             line="261">Unlock the mini-object with the specified access mode in @flags.</doc>
+        <source-position filename="gst/gstminiobject.h" line="256"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="object" transfer-ownership="none">
-            <doc xml:space="preserve">the mini-object to unlock</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstminiobject.c"
+                 line="263">the mini-object to unlock</doc>
             <type name="MiniObject" c:type="GstMiniObject*"/>
           </instance-parameter>
           <parameter name="flags" transfer-ownership="none">
-            <doc xml:space="preserve">#GstLockFlags</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstminiobject.c"
+                 line="264">#GstLockFlags</doc>
             <type name="LockFlags" c:type="GstLockFlags"/>
           </parameter>
         </parameters>
@@ -24122,14 +36955,19 @@ any was set).</doc>
       <method name="unref"
               c:identifier="gst_mini_object_unref"
               introspectable="0">
-        <doc xml:space="preserve">Decreases the reference count of the mini-object, possibly freeing
+        <doc xml:space="preserve"
+             filename="gst/gstminiobject.c"
+             line="627">Decreases the reference count of the mini-object, possibly freeing
 the mini-object.</doc>
+        <source-position filename="gst/gstminiobject.h" line="235"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="mini_object" transfer-ownership="none">
-            <doc xml:space="preserve">the mini-object</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstminiobject.c"
+                 line="629">the mini-object</doc>
             <type name="MiniObject" c:type="GstMiniObject*"/>
           </instance-parameter>
         </parameters>
@@ -24137,29 +36975,38 @@ the mini-object.</doc>
       <method name="weak_ref"
               c:identifier="gst_mini_object_weak_ref"
               introspectable="0">
-        <doc xml:space="preserve">Adds a weak reference callback to a mini object. Weak references are
+        <doc xml:space="preserve"
+             filename="gst/gstminiobject.c"
+             line="815">Adds a weak reference callback to a mini object. Weak references are
 used for notification when a mini object is finalized. They are called
 "weak references" because they allow you to safely hold a pointer
 to the mini object without calling gst_mini_object_ref()
 (gst_mini_object_ref() adds a strong reference, that is, forces the object
 to stay alive).</doc>
+        <source-position filename="gst/gstminiobject.h" line="242"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="object" transfer-ownership="none">
-            <doc xml:space="preserve">#GstMiniObject to reference weakly</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstminiobject.c"
+                 line="817">#GstMiniObject to reference weakly</doc>
             <type name="MiniObject" c:type="GstMiniObject*"/>
           </instance-parameter>
           <parameter name="notify" transfer-ownership="none" closure="1">
-            <doc xml:space="preserve">callback to invoke before the mini object is freed</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstminiobject.c"
+                 line="818">callback to invoke before the mini object is freed</doc>
             <type name="MiniObjectNotify" c:type="GstMiniObjectNotify"/>
           </parameter>
           <parameter name="data"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">extra data to pass to notify</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstminiobject.c"
+                 line="819">extra data to pass to notify</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
         </parameters>
@@ -24167,36 +37014,50 @@ to stay alive).</doc>
       <method name="weak_unref"
               c:identifier="gst_mini_object_weak_unref"
               introspectable="0">
-        <doc xml:space="preserve">Removes a weak reference callback from a mini object.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstminiobject.c"
+             line="841">Removes a weak reference callback from a mini object.</doc>
+        <source-position filename="gst/gstminiobject.h" line="246"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="object" transfer-ownership="none">
-            <doc xml:space="preserve">#GstMiniObject to remove a weak reference from</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstminiobject.c"
+                 line="843">#GstMiniObject to remove a weak reference from</doc>
             <type name="MiniObject" c:type="GstMiniObject*"/>
           </instance-parameter>
           <parameter name="notify" transfer-ownership="none" closure="1">
-            <doc xml:space="preserve">callback to search for</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstminiobject.c"
+                 line="844">callback to search for</doc>
             <type name="MiniObjectNotify" c:type="GstMiniObjectNotify"/>
           </parameter>
           <parameter name="data"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">data to search for</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstminiobject.c"
+                 line="845">data to search for</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
         </parameters>
       </method>
       <function name="replace" c:identifier="gst_mini_object_replace">
-        <doc xml:space="preserve">Atomically modifies a pointer to point to a new mini-object.
+        <doc xml:space="preserve"
+             filename="gst/gstminiobject.c"
+             line="700">Atomically modifies a pointer to point to a new mini-object.
 The reference count of @olddata is decreased and the reference count of
 @newdata is increased.
 
 Either @newdata and the value pointed to by @olddata may be %NULL.</doc>
+        <source-position filename="gst/gstminiobject.h" line="285"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if @newdata was different from @olddata</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstminiobject.c"
+               line="712">%TRUE if @newdata was different from @olddata</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
@@ -24206,7 +37067,9 @@ Either @newdata and the value pointed to by @olddata may be %NULL.</doc>
                      transfer-ownership="full"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">pointer to a pointer to a
+            <doc xml:space="preserve"
+                 filename="gst/gstminiobject.c"
+                 line="702">pointer to a pointer to a
     mini-object to be replaced</doc>
             <type name="MiniObject" c:type="GstMiniObject**"/>
           </parameter>
@@ -24214,7 +37077,9 @@ Either @newdata and the value pointed to by @olddata may be %NULL.</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">pointer to new mini-object</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstminiobject.c"
+                 line="704">pointer to new mini-object</doc>
             <type name="MiniObject" c:type="GstMiniObject*"/>
           </parameter>
         </parameters>
@@ -24222,10 +37087,15 @@ Either @newdata and the value pointed to by @olddata may be %NULL.</doc>
       <function name="steal"
                 c:identifier="gst_mini_object_steal"
                 introspectable="0">
-        <doc xml:space="preserve">Replace the current #GstMiniObject pointer to by @olddata with %NULL and
+        <doc xml:space="preserve"
+             filename="gst/gstminiobject.c"
+             line="746">Replace the current #GstMiniObject pointer to by @olddata with %NULL and
 return the old value.</doc>
+        <source-position filename="gst/gstminiobject.h" line="291"/>
         <return-value nullable="1">
-          <doc xml:space="preserve">the #GstMiniObject at @oldata</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstminiobject.c"
+               line="754">the #GstMiniObject at @oldata</doc>
           <type name="MiniObject" c:type="GstMiniObject*"/>
         </return-value>
         <parameters>
@@ -24233,21 +37103,28 @@ return the old value.</doc>
                      direction="inout"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">pointer to a pointer to a mini-object to
+            <doc xml:space="preserve"
+                 filename="gst/gstminiobject.c"
+                 line="748">pointer to a pointer to a mini-object to
     be stolen</doc>
             <type name="MiniObject" c:type="GstMiniObject**"/>
           </parameter>
         </parameters>
       </function>
       <function name="take" c:identifier="gst_mini_object_take">
-        <doc xml:space="preserve">Modifies a pointer to point to a new mini-object. The modification
+        <doc xml:space="preserve"
+             filename="gst/gstminiobject.c"
+             line="776">Modifies a pointer to point to a new mini-object. The modification
 is done atomically. This version is similar to gst_mini_object_replace()
 except that it does not increase the refcount of @newdata and thus
 takes ownership of @newdata.
 
 Either @newdata and the value pointed to by @olddata may be %NULL.</doc>
+        <source-position filename="gst/gstminiobject.h" line="288"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if @newdata was different from @olddata</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstminiobject.c"
+               line="789">%TRUE if @newdata was different from @olddata</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
@@ -24255,12 +37132,16 @@ Either @newdata and the value pointed to by @olddata may be %NULL.</doc>
                      direction="inout"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">pointer to a pointer to a mini-object to
+            <doc xml:space="preserve"
+                 filename="gst/gstminiobject.c"
+                 line="778">pointer to a pointer to a mini-object to
     be replaced</doc>
             <type name="MiniObject" c:type="GstMiniObject**"/>
           </parameter>
           <parameter name="newdata" transfer-ownership="none">
-            <doc xml:space="preserve">pointer to new mini-object</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstminiobject.c"
+                 line="780">pointer to new mini-object</doc>
             <type name="MiniObject" c:type="GstMiniObject*"/>
           </parameter>
         </parameters>
@@ -24269,32 +37150,46 @@ Either @newdata and the value pointed to by @olddata may be %NULL.</doc>
     <callback name="MiniObjectCopyFunction"
               c:type="GstMiniObjectCopyFunction"
               introspectable="0">
-      <doc xml:space="preserve">Function prototype for methods to create copies of instances.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstminiobject.h"
+           line="39">Function prototype for methods to create copies of instances.</doc>
+      <source-position filename="gst/gstminiobject.h" line="47"/>
       <return-value>
-        <doc xml:space="preserve">reference to cloned instance.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstminiobject.h"
+             line="45">reference to cloned instance.</doc>
         <type name="MiniObject" c:type="GstMiniObject*"/>
       </return-value>
       <parameters>
         <parameter name="obj" transfer-ownership="none">
-          <doc xml:space="preserve">MiniObject to copy</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstminiobject.h"
+               line="41">MiniObject to copy</doc>
           <type name="MiniObject" c:type="const GstMiniObject*"/>
         </parameter>
       </parameters>
     </callback>
     <callback name="MiniObjectDisposeFunction"
               c:type="GstMiniObjectDisposeFunction">
-      <doc xml:space="preserve">Function prototype for when a miniobject has lost its last refcount.
+      <doc xml:space="preserve"
+           filename="gst/gstminiobject.h"
+           line="48">Function prototype for when a miniobject has lost its last refcount.
 Implementation of the mini object are allowed to revive the
 passed object by doing a gst_mini_object_ref(). If the object is not
 revived after the dispose function, the function should return %TRUE
 and the memory associated with the object is freed.</doc>
+      <source-position filename="gst/gstminiobject.h" line="60"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE if the object should be cleaned up.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstminiobject.h"
+             line="58">%TRUE if the object should be cleaned up.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="obj" transfer-ownership="none">
-          <doc xml:space="preserve">MiniObject to dispose</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstminiobject.h"
+               line="50">MiniObject to dispose</doc>
           <type name="MiniObject" c:type="GstMiniObject*"/>
         </parameter>
       </parameters>
@@ -24303,53 +37198,71 @@ and the memory associated with the object is freed.</doc>
               glib:type-name="GstMiniObjectFlags"
               glib:get-type="gst_mini_object_flags_get_type"
               c:type="GstMiniObjectFlags">
-      <doc xml:space="preserve">Flags for the mini object</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstminiobject.h"
+           line="121">Flags for the mini object</doc>
       <member name="lockable"
               value="1"
               c:identifier="GST_MINI_OBJECT_FLAG_LOCKABLE"
               glib:nick="lockable">
-        <doc xml:space="preserve">the object can be locked and unlocked with
+        <doc xml:space="preserve"
+             filename="gst/gstminiobject.h"
+             line="123">the object can be locked and unlocked with
 gst_mini_object_lock() and gst_mini_object_unlock().</doc>
       </member>
       <member name="lock_readonly"
               value="2"
               c:identifier="GST_MINI_OBJECT_FLAG_LOCK_READONLY"
               glib:nick="lock-readonly">
-        <doc xml:space="preserve">the object is permanently locked in
+        <doc xml:space="preserve"
+             filename="gst/gstminiobject.h"
+             line="125">the object is permanently locked in
 READONLY mode. Only read locks can be performed on the object.</doc>
       </member>
       <member name="may_be_leaked"
               value="4"
               c:identifier="GST_MINI_OBJECT_FLAG_MAY_BE_LEAKED"
               glib:nick="may-be-leaked">
-        <doc xml:space="preserve">the object is expected to stay alive
+        <doc xml:space="preserve"
+             filename="gst/gstminiobject.h"
+             line="127">the object is expected to stay alive
 even after gst_deinit() has been called and so should be ignored by leak
-detection tools. (Since 1.10)</doc>
+detection tools. (Since: 1.10)</doc>
       </member>
       <member name="last"
               value="16"
               c:identifier="GST_MINI_OBJECT_FLAG_LAST"
               glib:nick="last">
-        <doc xml:space="preserve">first flag that can be used by subclasses.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstminiobject.h"
+             line="130">first flag that can be used by subclasses.</doc>
       </member>
     </bitfield>
     <callback name="MiniObjectFreeFunction" c:type="GstMiniObjectFreeFunction">
-      <doc xml:space="preserve">Virtual function prototype for methods to free resources used by
+      <doc xml:space="preserve"
+           filename="gst/gstminiobject.h"
+           line="61">Virtual function prototype for methods to free resources used by
 mini-objects.</doc>
+      <source-position filename="gst/gstminiobject.h" line="68"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="obj" transfer-ownership="none">
-          <doc xml:space="preserve">MiniObject to free</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstminiobject.h"
+               line="63">MiniObject to free</doc>
           <type name="MiniObject" c:type="GstMiniObject*"/>
         </parameter>
       </parameters>
     </callback>
     <callback name="MiniObjectNotify" c:type="GstMiniObjectNotify">
-      <doc xml:space="preserve">A #GstMiniObjectNotify function can be added to a mini object as a
+      <doc xml:space="preserve"
+           filename="gst/gstminiobject.h"
+           line="70">A #GstMiniObjectNotify function can be added to a mini object as a
 callback that gets triggered when gst_mini_object_unref() drops the
 last ref and @obj is about to be freed.</doc>
+      <source-position filename="gst/gstminiobject.h" line="79"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
@@ -24359,19 +37272,270 @@ last ref and @obj is about to be freed.</doc>
                    nullable="1"
                    allow-none="1"
                    closure="0">
-          <doc xml:space="preserve">data that was provided when the notify was added</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstminiobject.h"
+               line="72">data that was provided when the notify was added</doc>
           <type name="gpointer" c:type="gpointer"/>
         </parameter>
         <parameter name="obj" transfer-ownership="none">
-          <doc xml:space="preserve">the mini object</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstminiobject.h"
+               line="73">the mini object</doc>
           <type name="MiniObject" c:type="GstMiniObject*"/>
         </parameter>
       </parameters>
     </callback>
     <constant name="NSECOND" value="1" c:type="GST_NSECOND">
-      <doc xml:space="preserve">Constant that defines one GStreamer nanosecond</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstclock.h"
+           line="116">Constant that defines one GStreamer nanosecond</doc>
+      <source-position filename="gst/gstclock.h" line="121"/>
       <type name="ClockTimeDiff" c:type="GstClockTimeDiff"/>
     </constant>
+    <function-macro name="OBJECT" c:identifier="GST_OBJECT" introspectable="0">
+      <source-position filename="gst/gstobject.h" line="37"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="OBJECT_CAST"
+                    c:identifier="GST_OBJECT_CAST"
+                    introspectable="0">
+      <source-position filename="gst/gstobject.h" line="39"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="OBJECT_CLASS"
+                    c:identifier="GST_OBJECT_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gstobject.h" line="38"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="OBJECT_CLASS_CAST"
+                    c:identifier="GST_OBJECT_CLASS_CAST"
+                    introspectable="0">
+      <source-position filename="gst/gstobject.h" line="40"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="OBJECT_FLAGS"
+                    c:identifier="GST_OBJECT_FLAGS"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstobject.h"
+           line="128">This macro returns the entire set of flags for the object.</doc>
+      <source-position filename="gst/gstobject.h" line="134"/>
+      <parameters>
+        <parameter name="obj">
+          <doc xml:space="preserve"
+               filename="gst/gstobject.h"
+               line="130">a #GstObject</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="OBJECT_FLAG_IS_SET"
+                    c:identifier="GST_OBJECT_FLAG_IS_SET"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstobject.h"
+           line="135">This macro checks to see if the given flag is set.</doc>
+      <source-position filename="gst/gstobject.h" line="142"/>
+      <parameters>
+        <parameter name="obj">
+          <doc xml:space="preserve"
+               filename="gst/gstobject.h"
+               line="137">a #GstObject</doc>
+        </parameter>
+        <parameter name="flag">
+          <doc xml:space="preserve"
+               filename="gst/gstobject.h"
+               line="138">Flag to check for</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="OBJECT_FLAG_SET"
+                    c:identifier="GST_OBJECT_FLAG_SET"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstobject.h"
+           line="143">This macro sets the given bits.</doc>
+      <source-position filename="gst/gstobject.h" line="150"/>
+      <parameters>
+        <parameter name="obj">
+          <doc xml:space="preserve"
+               filename="gst/gstobject.h"
+               line="145">a #GstObject</doc>
+        </parameter>
+        <parameter name="flag">
+          <doc xml:space="preserve"
+               filename="gst/gstobject.h"
+               line="146">Flag to set</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="OBJECT_FLAG_UNSET"
+                    c:identifier="GST_OBJECT_FLAG_UNSET"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstobject.h"
+           line="151">This macro unsets the given bits.</doc>
+      <source-position filename="gst/gstobject.h" line="158"/>
+      <parameters>
+        <parameter name="obj">
+          <doc xml:space="preserve"
+               filename="gst/gstobject.h"
+               line="153">a #GstObject</doc>
+        </parameter>
+        <parameter name="flag">
+          <doc xml:space="preserve"
+               filename="gst/gstobject.h"
+               line="154">Flag to set</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="OBJECT_GET_CLASS"
+                    c:identifier="GST_OBJECT_GET_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gstobject.h" line="36"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="OBJECT_GET_LOCK"
+                    c:identifier="GST_OBJECT_GET_LOCK"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstobject.h"
+           line="76">Acquire a reference to the mutex of this object.</doc>
+      <source-position filename="gst/gstobject.h" line="82"/>
+      <parameters>
+        <parameter name="obj">
+          <doc xml:space="preserve"
+               filename="gst/gstobject.h"
+               line="78">a #GstObject</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="OBJECT_LOCK"
+                    c:identifier="GST_OBJECT_LOCK"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstobject.h"
+           line="83">This macro will obtain a lock on the object, making serialization possible.
+It blocks until the lock can be obtained.</doc>
+      <source-position filename="gst/gstobject.h" line="90"/>
+      <parameters>
+        <parameter name="obj">
+          <doc xml:space="preserve"
+               filename="gst/gstobject.h"
+               line="85">a #GstObject to lock</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="OBJECT_NAME"
+                    c:identifier="GST_OBJECT_NAME"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstobject.h"
+           line="108">Get the name of this object. This is not thread-safe by default
+(i.e. you will have to make sure the object lock is taken yourself).
+If in doubt use gst_object_get_name() instead.</doc>
+      <source-position filename="gst/gstobject.h" line="116"/>
+      <parameters>
+        <parameter name="obj">
+          <doc xml:space="preserve"
+               filename="gst/gstobject.h"
+               line="110">a #GstObject</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="OBJECT_PARENT"
+                    c:identifier="GST_OBJECT_PARENT"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstobject.h"
+           line="117">Get the parent of this object. This is not thread-safe by default
+(i.e. you will have to make sure the object lock is taken yourself).
+If in doubt use gst_object_get_parent() instead.</doc>
+      <source-position filename="gst/gstobject.h" line="125"/>
+      <parameters>
+        <parameter name="obj">
+          <doc xml:space="preserve"
+               filename="gst/gstobject.h"
+               line="119">a #GstObject</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="OBJECT_REFCOUNT"
+                    c:identifier="GST_OBJECT_REFCOUNT"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstobject.h"
+           line="58">Get access to the reference count field of the object.</doc>
+      <source-position filename="gst/gstobject.h" line="64"/>
+      <parameters>
+        <parameter name="obj">
+          <doc xml:space="preserve"
+               filename="gst/gstobject.h"
+               line="60">a #GstObject</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="OBJECT_REFCOUNT_VALUE"
+                    c:identifier="GST_OBJECT_REFCOUNT_VALUE"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstobject.h"
+           line="65">Get the reference count value of the object.</doc>
+      <source-position filename="gst/gstobject.h" line="71"/>
+      <parameters>
+        <parameter name="obj">
+          <doc xml:space="preserve"
+               filename="gst/gstobject.h"
+               line="67">a #GstObject</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="OBJECT_TRYLOCK"
+                    c:identifier="GST_OBJECT_TRYLOCK"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstobject.h"
+           line="91">This macro will try to obtain a lock on the object, but will return with
+%FALSE if it can't get it immediately.</doc>
+      <source-position filename="gst/gstobject.h" line="98"/>
+      <parameters>
+        <parameter name="obj">
+          <doc xml:space="preserve"
+               filename="gst/gstobject.h"
+               line="93">a #GstObject.</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="OBJECT_UNLOCK"
+                    c:identifier="GST_OBJECT_UNLOCK"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstobject.h"
+           line="99">This macro releases a lock on the object.</doc>
+      <source-position filename="gst/gstobject.h" line="105"/>
+      <parameters>
+        <parameter name="obj">
+          <doc xml:space="preserve"
+               filename="gst/gstobject.h"
+               line="101">a #GstObject to unlock.</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
     <class name="Object"
            c:symbol-prefix="object"
            c:type="GstObject"
@@ -24380,7 +37544,9 @@ last ref and @obj is about to be freed.</doc>
            glib:type-name="GstObject"
            glib:get-type="gst_object_get_type"
            glib:type-struct="ObjectClass">
-      <doc xml:space="preserve">#GstObject provides a root for the object hierarchy tree filed in by the
+      <doc xml:space="preserve"
+           filename="gst/gstobject.c"
+           line="24">#GstObject provides a root for the object hierarchy tree filed in by the
 GStreamer library.  It is currently a thin wrapper on top of
 #GInitiallyUnowned. It is an abstract class that is not very usable on its own.
 
@@ -24429,15 +37595,21 @@ What needs to be done in applications? Again it's not a lot to change.
     gst_timed_value_control_source_set ((GstTimedValueControlSource *)csource,1 * GST_SECOND, value2);
 
   * start your pipeline</doc>
+      <source-position filename="gst/gstobject.h" line="210"/>
       <function name="check_uniqueness"
                 c:identifier="gst_object_check_uniqueness">
-        <doc xml:space="preserve">Checks to see if there is any object named @name in @list. This function
+        <doc xml:space="preserve"
+             filename="gst/gstobject.c"
+             line="885">Checks to see if there is any object named @name in @list. This function
 does not do any locking of any kind. You might want to protect the
 provided list with the lock of the owner of the list. This function
 will lock each #GstObject in the list to compare the name, so be
 careful when passing a list with a locked object.</doc>
+        <source-position filename="gst/gstobject.h" line="277"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if a #GstObject named @name does not appear in @list,
+          <doc xml:space="preserve"
+               filename="gst/gstobject.c"
+               line="897">%TRUE if a #GstObject named @name does not appear in @list,
 %FALSE if it does.
 
 MT safe. Grabs and releases the LOCK of each object in the list.</doc>
@@ -24445,48 +37617,63 @@ MT safe. Grabs and releases the LOCK of each object in the list.</doc>
         </return-value>
         <parameters>
           <parameter name="list" transfer-ownership="none">
-            <doc xml:space="preserve">a list of #GstObject to
+            <doc xml:space="preserve"
+                 filename="gst/gstobject.c"
+                 line="887">a list of #GstObject to
      check through</doc>
             <type name="GLib.List" c:type="GList*">
               <type name="Object"/>
             </type>
           </parameter>
           <parameter name="name" transfer-ownership="none">
-            <doc xml:space="preserve">the name to search for</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstobject.c"
+                 line="889">the name to search for</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </function>
       <function name="default_deep_notify"
                 c:identifier="gst_object_default_deep_notify">
-        <doc xml:space="preserve">A default deep_notify signal callback for an object. The user data
+        <doc xml:space="preserve"
+             filename="gst/gstobject.c"
+             line="488">A default deep_notify signal callback for an object. The user data
 should contain a pointer to an array of strings that should be excluded
 from the notify. The default handler will print the new value of the property
 using g_print.
 
 MT safe. This function grabs and releases @object's LOCK for getting its
          path string.</doc>
+        <source-position filename="gst/gstobject.h" line="246"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <parameter name="object" transfer-ownership="none">
-            <doc xml:space="preserve">the #GObject that signalled the notify.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstobject.c"
+                 line="490">the #GObject that signalled the notify.</doc>
             <type name="GObject.Object" c:type="GObject*"/>
           </parameter>
           <parameter name="orig" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstObject that initiated the notify.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstobject.c"
+                 line="491">a #GstObject that initiated the notify.</doc>
             <type name="Object" c:type="GstObject*"/>
           </parameter>
           <parameter name="pspec" transfer-ownership="none">
-            <doc xml:space="preserve">a #GParamSpec of the property.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstobject.c"
+                 line="492">a #GParamSpec of the property.</doc>
             <type name="GObject.ParamSpec" c:type="GParamSpec*"/>
           </parameter>
           <parameter name="excluded_props"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">
+            <doc xml:space="preserve"
+                 filename="gst/gstobject.c"
+                 line="493">
     a set of user-specified properties to exclude or %NULL to show
     all changes.</doc>
             <array c:type="gchar**">
@@ -24498,7 +37685,9 @@ MT safe. This function grabs and releases @object's LOCK for getting its
       <function name="ref_sink"
                 c:identifier="gst_object_ref_sink"
                 introspectable="0">
-        <doc xml:space="preserve">Increase the reference count of @object, and possibly remove the floating
+        <doc xml:space="preserve"
+             filename="gst/gstobject.c"
+             line="270">Increase the reference count of @object, and possibly remove the floating
 reference, if @object has a floating reference.
 
 In other words, if the object is floating, then this call "assumes ownership"
@@ -24509,6 +37698,7 @@ reference count by one.
 
 For more background on "floating references" please see the #GObject
 documentation.</doc>
+        <source-position filename="gst/gstobject.h" line="262"/>
         <return-value transfer-ownership="none" nullable="1">
           <type name="gpointer" c:type="gpointer"/>
         </return-value>
@@ -24517,19 +37707,26 @@ documentation.</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">a #GstObject to sink</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstobject.c"
+                 line="272">a #GstObject to sink</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
         </parameters>
       </function>
       <function name="replace" c:identifier="gst_object_replace">
-        <doc xml:space="preserve">Atomically modifies a pointer to point to a new object.
+        <doc xml:space="preserve"
+             filename="gst/gstobject.c"
+             line="323">Atomically modifies a pointer to point to a new object.
 The reference count of @oldobj is decreased and the reference count of
 @newobj is increased.
 
 Either @newobj and the value pointed to by @oldobj may be %NULL.</doc>
+        <source-position filename="gst/gstobject.h" line="267"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if @newobj was different from @oldobj</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstobject.c"
+               line="335">%TRUE if @newobj was different from @oldobj</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
@@ -24539,7 +37736,9 @@ Either @newobj and the value pointed to by @oldobj may be %NULL.</doc>
                      transfer-ownership="full"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">pointer to a place of
+            <doc xml:space="preserve"
+                 filename="gst/gstobject.c"
+                 line="325">pointer to a place of
     a #GstObject to replace</doc>
             <type name="Object" c:type="GstObject**"/>
           </parameter>
@@ -24547,12 +37746,15 @@ Either @newobj and the value pointed to by @oldobj may be %NULL.</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">a new #GstObject</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstobject.c"
+                 line="327">a new #GstObject</doc>
             <type name="Object" c:type="GstObject*"/>
           </parameter>
         </parameters>
       </function>
       <virtual-method name="deep_notify">
+        <source-position filename="gst/gstobject.h" line="203"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
@@ -24570,76 +37772,105 @@ Either @newobj and the value pointed to by @oldobj may be %NULL.</doc>
       </virtual-method>
       <method name="add_control_binding"
               c:identifier="gst_object_add_control_binding">
-        <doc xml:space="preserve">Attach the #GstControlBinding to the object. If there already was a
+        <doc xml:space="preserve"
+             filename="gst/gstobject.c"
+             line="1240">Attach the #GstControlBinding to the object. If there already was a
 #GstControlBinding for this property it will be replaced.
 
 The object's reference count will be incremented, and any floating
 reference will be removed (see gst_object_ref_sink())</doc>
+        <source-position filename="gst/gstobject.h" line="301"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%FALSE if the given @binding has not been setup for this object or
+          <doc xml:space="preserve"
+               filename="gst/gstobject.c"
+               line="1251">%FALSE if the given @binding has not been setup for this object or
 has been setup for a non suitable property, %TRUE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="object" transfer-ownership="none">
-            <doc xml:space="preserve">the controller object</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstobject.c"
+                 line="1242">the controller object</doc>
             <type name="Object" c:type="GstObject*"/>
           </instance-parameter>
           <parameter name="binding" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstControlBinding that should be used</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstobject.c"
+                 line="1243">the #GstControlBinding that should be used</doc>
             <type name="ControlBinding" c:type="GstControlBinding*"/>
           </parameter>
         </parameters>
       </method>
       <method name="default_error" c:identifier="gst_object_default_error">
-        <doc xml:space="preserve">A default error function that uses g_printerr() to display the error message
+        <doc xml:space="preserve"
+             filename="gst/gstutils.c"
+             line="2660">A default error function that uses g_printerr() to display the error message
 and the optional debug string..
 
 The default handler will simply print the error string using g_print.</doc>
+        <source-position filename="gst/gstutils.h" line="974"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="source" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstObject that initiated the error.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="2662">the #GstObject that initiated the error.</doc>
             <type name="Object" c:type="GstObject*"/>
           </instance-parameter>
           <parameter name="error" transfer-ownership="none">
-            <doc xml:space="preserve">the GError.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="2663">the GError.</doc>
             <type name="GLib.Error" c:type="const GError*"/>
           </parameter>
           <parameter name="debug"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">an additional debug information string, or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="2664">an additional debug information string, or %NULL</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_control_binding"
               c:identifier="gst_object_get_control_binding">
-        <doc xml:space="preserve">Gets the corresponding #GstControlBinding for the property. This should be
+        <doc xml:space="preserve"
+             filename="gst/gstobject.c"
+             line="1277">Gets the corresponding #GstControlBinding for the property. This should be
 unreferenced again after use.</doc>
+        <source-position filename="gst/gstobject.h" line="305"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">the #GstControlBinding for
+          <doc xml:space="preserve"
+               filename="gst/gstobject.c"
+               line="1285">the #GstControlBinding for
 @property_name or %NULL if the property is not controlled.</doc>
           <type name="ControlBinding" c:type="GstControlBinding*"/>
         </return-value>
         <parameters>
           <instance-parameter name="object" transfer-ownership="none">
-            <doc xml:space="preserve">the object</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstobject.c"
+                 line="1279">the object</doc>
             <type name="Object" c:type="GstObject*"/>
           </instance-parameter>
           <parameter name="property_name" transfer-ownership="none">
-            <doc xml:space="preserve">name of the property</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstobject.c"
+                 line="1280">name of the property</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_control_rate"
               c:identifier="gst_object_get_control_rate">
-        <doc xml:space="preserve">Obtain the control-rate for this @object. Audio processing #GstElement
+        <doc xml:space="preserve"
+             filename="gst/gstobject.c"
+             line="1456">Obtain the control-rate for this @object. Audio processing #GstElement
 objects will use this rate to sub-divide their processing loop and call
 gst_object_sync_values() in between. The length of the processing segment
 should be up to @control-rate nanoseconds.
@@ -24649,52 +37880,74 @@ If the @object is not under property control, this will return
 
 The control-rate is not expected to change if the element is in
 %GST_STATE_PAUSED or %GST_STATE_PLAYING.</doc>
+        <source-position filename="gst/gstobject.h" line="322"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the control rate in nanoseconds</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstobject.c"
+               line="1471">the control rate in nanoseconds</doc>
           <type name="ClockTime" c:type="GstClockTime"/>
         </return-value>
         <parameters>
           <instance-parameter name="object" transfer-ownership="none">
-            <doc xml:space="preserve">the object that has controlled properties</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstobject.c"
+                 line="1458">the object that has controlled properties</doc>
             <type name="Object" c:type="GstObject*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_g_value_array"
               c:identifier="gst_object_get_g_value_array">
-        <doc xml:space="preserve">Gets a number of #GValues for the given controlled property starting at the
+        <doc xml:space="preserve"
+             filename="gst/gstobject.c"
+             line="1414">Gets a number of #GValues for the given controlled property starting at the
 requested time. The array @values need to hold enough space for @n_values of
 #GValue.
 
 This function is useful if one wants to e.g. draw a graph of the control
 curve or apply a control curve sample by sample.</doc>
+        <source-position filename="gst/gstobject.h" line="318"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the given array could be filled, %FALSE otherwise</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstobject.c"
+               line="1430">%TRUE if the given array could be filled, %FALSE otherwise</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="object" transfer-ownership="none">
-            <doc xml:space="preserve">the object that has controlled properties</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstobject.c"
+                 line="1416">the object that has controlled properties</doc>
             <type name="Object" c:type="GstObject*"/>
           </instance-parameter>
           <parameter name="property_name" transfer-ownership="none">
-            <doc xml:space="preserve">the name of the property to get</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstobject.c"
+                 line="1417">the name of the property to get</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="timestamp" transfer-ownership="none">
-            <doc xml:space="preserve">the time that should be processed</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstobject.c"
+                 line="1418">the time that should be processed</doc>
             <type name="ClockTime" c:type="GstClockTime"/>
           </parameter>
           <parameter name="interval" transfer-ownership="none">
-            <doc xml:space="preserve">the time spacing between subsequent values</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstobject.c"
+                 line="1419">the time spacing between subsequent values</doc>
             <type name="ClockTime" c:type="GstClockTime"/>
           </parameter>
           <parameter name="n_values" transfer-ownership="none">
-            <doc xml:space="preserve">the number of values</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstobject.c"
+                 line="1420">the number of values</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="values" transfer-ownership="none">
-            <doc xml:space="preserve">array to put control-values in</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstobject.c"
+                 line="1421">array to put control-values in</doc>
             <array length="3" zero-terminated="0" c:type="GValue*">
               <type name="GObject.Value" c:type="GValue"/>
             </array>
@@ -24702,14 +37955,19 @@ curve or apply a control curve sample by sample.</doc>
         </parameters>
       </method>
       <method name="get_name" c:identifier="gst_object_get_name">
-        <doc xml:space="preserve">Returns a copy of the name of @object.
+        <doc xml:space="preserve"
+             filename="gst/gstobject.c"
+             line="658">Returns a copy of the name of @object.
 Caller should g_free() the return value after usage.
 For a nameless object, this returns %NULL, which you can safely g_free()
 as well.
 
 Free-function: g_free</doc>
+        <source-position filename="gst/gstobject.h" line="223"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">the name of @object. g_free()
+          <doc xml:space="preserve"
+               filename="gst/gstobject.c"
+               line="669">the name of @object. g_free()
 after usage.
 
 MT safe. This function grabs and releases @object's LOCK.</doc>
@@ -24717,16 +37975,23 @@ MT safe. This function grabs and releases @object's LOCK.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="object" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstObject</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstobject.c"
+                 line="660">a #GstObject</doc>
             <type name="Object" c:type="GstObject*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_parent" c:identifier="gst_object_get_parent">
-        <doc xml:space="preserve">Returns the parent of @object. This function increases the refcount
+        <doc xml:space="preserve"
+             filename="gst/gstobject.c"
+             line="740">Returns the parent of @object. This function increases the refcount
 of the parent object so you should gst_object_unref() it after usage.</doc>
+        <source-position filename="gst/gstobject.h" line="231"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">parent of @object, this can be
+          <doc xml:space="preserve"
+               filename="gst/gstobject.c"
+               line="747">parent of @object, this can be
   %NULL if @object has no parent. unref after usage.
 
 MT safe. Grabs and releases @object's LOCK.</doc>
@@ -24734,18 +37999,25 @@ MT safe. Grabs and releases @object's LOCK.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="object" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstObject</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstobject.c"
+                 line="742">a #GstObject</doc>
             <type name="Object" c:type="GstObject*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_path_string" c:identifier="gst_object_get_path_string">
-        <doc xml:space="preserve">Generates a string describing the path of @object in
+        <doc xml:space="preserve"
+             filename="gst/gstobject.c"
+             line="970">Generates a string describing the path of @object in
 the object hierarchy. Only useful (or used) for debugging.
 
 Free-function: g_free</doc>
+        <source-position filename="gst/gstobject.h" line="272"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a string describing the path of @object. You must
+          <doc xml:space="preserve"
+               filename="gst/gstobject.c"
+               line="979">a string describing the path of @object. You must
          g_free() the string after usage.
 
 MT safe. Grabs and releases the #GstObject's LOCK for all objects
@@ -24754,29 +38026,42 @@ MT safe. Grabs and releases the #GstObject's LOCK for all objects
         </return-value>
         <parameters>
           <instance-parameter name="object" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstObject</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstobject.c"
+                 line="972">a #GstObject</doc>
             <type name="Object" c:type="GstObject*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_value" c:identifier="gst_object_get_value">
-        <doc xml:space="preserve">Gets the value for the given controlled property at the requested time.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstobject.c"
+             line="1338">Gets the value for the given controlled property at the requested time.</doc>
+        <source-position filename="gst/gstobject.h" line="311"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">the GValue of the property at the given time,
+          <doc xml:space="preserve"
+               filename="gst/gstobject.c"
+               line="1346">the GValue of the property at the given time,
 or %NULL if the property isn't controlled.</doc>
           <type name="GObject.Value" c:type="GValue*"/>
         </return-value>
         <parameters>
           <instance-parameter name="object" transfer-ownership="none">
-            <doc xml:space="preserve">the object that has controlled properties</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstobject.c"
+                 line="1340">the object that has controlled properties</doc>
             <type name="Object" c:type="GstObject*"/>
           </instance-parameter>
           <parameter name="property_name" transfer-ownership="none">
-            <doc xml:space="preserve">the name of the property to get</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstobject.c"
+                 line="1341">the name of the property to get</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="timestamp" transfer-ownership="none">
-            <doc xml:space="preserve">the time the control-change should be read from</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstobject.c"
+                 line="1342">the time the control-change should be read from</doc>
             <type name="ClockTime" c:type="GstClockTime"/>
           </parameter>
         </parameters>
@@ -24784,7 +38069,9 @@ or %NULL if the property isn't controlled.</doc>
       <method name="get_value_array"
               c:identifier="gst_object_get_value_array"
               introspectable="0">
-        <doc xml:space="preserve">Gets a number of values for the given controlled property starting at the
+        <doc xml:space="preserve"
+             filename="gst/gstobject.c"
+             line="1369">Gets a number of values for the given controlled property starting at the
 requested time. The array @values need to hold enough space for @n_values of
 the same type as the objects property's type.
 
@@ -24794,50 +38081,72 @@ curve or apply a control curve sample by sample.
 The values are unboxed and ready to be used. The similar function
 gst_object_get_g_value_array() returns the array as #GValues and is
 better suites for bindings.</doc>
+        <source-position filename="gst/gstobject.h" line="314"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the given array could be filled, %FALSE otherwise</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstobject.c"
+               line="1389">%TRUE if the given array could be filled, %FALSE otherwise</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="object" transfer-ownership="none">
-            <doc xml:space="preserve">the object that has controlled properties</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstobject.c"
+                 line="1371">the object that has controlled properties</doc>
             <type name="Object" c:type="GstObject*"/>
           </instance-parameter>
           <parameter name="property_name" transfer-ownership="none">
-            <doc xml:space="preserve">the name of the property to get</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstobject.c"
+                 line="1372">the name of the property to get</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="timestamp" transfer-ownership="none">
-            <doc xml:space="preserve">the time that should be processed</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstobject.c"
+                 line="1373">the time that should be processed</doc>
             <type name="ClockTime" c:type="GstClockTime"/>
           </parameter>
           <parameter name="interval" transfer-ownership="none">
-            <doc xml:space="preserve">the time spacing between subsequent values</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstobject.c"
+                 line="1374">the time spacing between subsequent values</doc>
             <type name="ClockTime" c:type="GstClockTime"/>
           </parameter>
           <parameter name="n_values" transfer-ownership="none">
-            <doc xml:space="preserve">the number of values</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstobject.c"
+                 line="1375">the number of values</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="values"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">array to put control-values in</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstobject.c"
+                 line="1376">array to put control-values in</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
         </parameters>
       </method>
       <method name="has_active_control_bindings"
               c:identifier="gst_object_has_active_control_bindings">
-        <doc xml:space="preserve">Check if the @object has active controlled properties.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the object has active controlled properties</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstobject.c"
+             line="1164">Check if the @object has active controlled properties.</doc>
+        <source-position filename="gst/gstobject.h" line="290"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstobject.c"
+               line="1170">%TRUE if the object has active controlled properties</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="object" transfer-ownership="none">
-            <doc xml:space="preserve">the object that has controlled properties</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstobject.c"
+                 line="1166">the object that has controlled properties</doc>
             <type name="Object" c:type="GstObject*"/>
           </instance-parameter>
         </parameters>
@@ -24845,42 +38154,60 @@ better suites for bindings.</doc>
       <method name="has_ancestor"
               c:identifier="gst_object_has_ancestor"
               deprecated="1">
-        <doc xml:space="preserve">Check if @object has an ancestor @ancestor somewhere up in
+        <doc xml:space="preserve"
+             filename="gst/gstobject.c"
+             line="863">Check if @object has an ancestor @ancestor somewhere up in
 the hierarchy. One can e.g. check if a #GstElement is inside a #GstPipeline.</doc>
         <doc-deprecated xml:space="preserve">Use gst_object_has_as_ancestor() instead.
 
 MT safe. Grabs and releases @object's locks.</doc-deprecated>
+        <source-position filename="gst/gstobject.h" line="243"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if @ancestor is an ancestor of @object.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstobject.c"
+               line="871">%TRUE if @ancestor is an ancestor of @object.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="object" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstObject to check</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstobject.c"
+                 line="865">a #GstObject to check</doc>
             <type name="Object" c:type="GstObject*"/>
           </instance-parameter>
           <parameter name="ancestor" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstObject to check as ancestor</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstobject.c"
+                 line="866">a #GstObject to check as ancestor</doc>
             <type name="Object" c:type="GstObject*"/>
           </parameter>
         </parameters>
       </method>
       <method name="has_as_ancestor" c:identifier="gst_object_has_as_ancestor">
-        <doc xml:space="preserve">Check if @object has an ancestor @ancestor somewhere up in
+        <doc xml:space="preserve"
+             filename="gst/gstobject.c"
+             line="828">Check if @object has an ancestor @ancestor somewhere up in
 the hierarchy. One can e.g. check if a #GstElement is inside a #GstPipeline.</doc>
+        <source-position filename="gst/gstobject.h" line="240"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if @ancestor is an ancestor of @object.
+          <doc xml:space="preserve"
+               filename="gst/gstobject.c"
+               line="836">%TRUE if @ancestor is an ancestor of @object.
 
 MT safe. Grabs and releases @object's locks.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="object" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstObject to check</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstobject.c"
+                 line="830">a #GstObject to check</doc>
             <type name="Object" c:type="GstObject*"/>
           </instance-parameter>
           <parameter name="ancestor" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstObject to check as ancestor</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstobject.c"
+                 line="831">a #GstObject to check as ancestor</doc>
             <type name="Object" c:type="GstObject*"/>
           </parameter>
         </parameters>
@@ -24888,10 +38215,15 @@ MT safe. Grabs and releases @object's locks.</doc>
       <method name="has_as_parent"
               c:identifier="gst_object_has_as_parent"
               version="1.6">
-        <doc xml:space="preserve">Check if @parent is the parent of @object.
+        <doc xml:space="preserve"
+             filename="gst/gstobject.c"
+             line="800">Check if @parent is the parent of @object.
 E.g. a #GstElement can check if it owns a given #GstPad.</doc>
+        <source-position filename="gst/gstobject.h" line="237"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%FALSE if either @object or @parent is %NULL. %TRUE if @parent is
+          <doc xml:space="preserve"
+               filename="gst/gstobject.c"
+               line="808">%FALSE if either @object or @parent is %NULL. %TRUE if @parent is
          the parent of @object. Otherwise %FALSE.
 
 MT safe. Grabs and releases @object's locks.</doc>
@@ -24899,72 +38231,101 @@ MT safe. Grabs and releases @object's locks.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="object" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstObject to check</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstobject.c"
+                 line="802">a #GstObject to check</doc>
             <type name="Object" c:type="GstObject*"/>
           </instance-parameter>
           <parameter name="parent" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstObject to check as parent</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstobject.c"
+                 line="803">a #GstObject to check as parent</doc>
             <type name="Object" c:type="GstObject*"/>
           </parameter>
         </parameters>
       </method>
       <method name="ref" c:identifier="gst_object_ref">
-        <doc xml:space="preserve">Increments the reference count on @object. This function
+        <doc xml:space="preserve"
+             filename="gst/gstobject.c"
+             line="216">Increments the reference count on @object. This function
 does not take the lock on @object because it relies on
 atomic refcounting.
 
 This object returns the input parameter to ease writing
 constructs like :
  result = gst_object_ref (object-&gt;parent);</doc>
+        <source-position filename="gst/gstobject.h" line="252"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">A pointer to @object</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstobject.c"
+               line="228">A pointer to @object</doc>
           <type name="Object" c:type="gpointer"/>
         </return-value>
         <parameters>
           <instance-parameter name="object" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstObject to reference</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstobject.c"
+                 line="218">a #GstObject to reference</doc>
             <type name="Object" c:type="gpointer"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="remove_control_binding"
               c:identifier="gst_object_remove_control_binding">
-        <doc xml:space="preserve">Removes the corresponding #GstControlBinding. If it was the
+        <doc xml:space="preserve"
+             filename="gst/gstobject.c"
+             line="1305">Removes the corresponding #GstControlBinding. If it was the
 last ref of the binding, it will be disposed.</doc>
+        <source-position filename="gst/gstobject.h" line="308"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the binding could be removed.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstobject.c"
+               line="1313">%TRUE if the binding could be removed.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="object" transfer-ownership="none">
-            <doc xml:space="preserve">the object</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstobject.c"
+                 line="1307">the object</doc>
             <type name="Object" c:type="GstObject*"/>
           </instance-parameter>
           <parameter name="binding" transfer-ownership="none">
-            <doc xml:space="preserve">the binding</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstobject.c"
+                 line="1308">the binding</doc>
             <type name="ControlBinding" c:type="GstControlBinding*"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_control_binding_disabled"
               c:identifier="gst_object_set_control_binding_disabled">
-        <doc xml:space="preserve">This function is used to disable the control bindings on a property for
+        <doc xml:space="preserve"
+             filename="gst/gstobject.c"
+             line="1212">This function is used to disable the control bindings on a property for
 some time, i.e. gst_object_sync_values() will do nothing for the
 property.</doc>
+        <source-position filename="gst/gstobject.h" line="296"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="object" transfer-ownership="none">
-            <doc xml:space="preserve">the object that has controlled properties</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstobject.c"
+                 line="1214">the object that has controlled properties</doc>
             <type name="Object" c:type="GstObject*"/>
           </instance-parameter>
           <parameter name="property_name" transfer-ownership="none">
-            <doc xml:space="preserve">property to disable</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstobject.c"
+                 line="1215">property to disable</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="disabled" transfer-ownership="none">
-            <doc xml:space="preserve">boolean that specifies whether to disable the controller
+            <doc xml:space="preserve"
+                 filename="gst/gstobject.c"
+                 line="1216">boolean that specifies whether to disable the controller
 or not.</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
@@ -24972,18 +38333,25 @@ or not.</doc>
       </method>
       <method name="set_control_bindings_disabled"
               c:identifier="gst_object_set_control_bindings_disabled">
-        <doc xml:space="preserve">This function is used to disable all controlled properties of the @object for
+        <doc xml:space="preserve"
+             filename="gst/gstobject.c"
+             line="1188">This function is used to disable all controlled properties of the @object for
 some time, i.e. gst_object_sync_values() will do nothing.</doc>
+        <source-position filename="gst/gstobject.h" line="293"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="object" transfer-ownership="none">
-            <doc xml:space="preserve">the object that has controlled properties</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstobject.c"
+                 line="1190">the object that has controlled properties</doc>
             <type name="Object" c:type="GstObject*"/>
           </instance-parameter>
           <parameter name="disabled" transfer-ownership="none">
-            <doc xml:space="preserve">boolean that specifies whether to disable the controller
+            <doc xml:space="preserve"
+                 filename="gst/gstobject.c"
+                 line="1191">boolean that specifies whether to disable the controller
 or not.</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
@@ -24991,34 +38359,46 @@ or not.</doc>
       </method>
       <method name="set_control_rate"
               c:identifier="gst_object_set_control_rate">
-        <doc xml:space="preserve">Change the control-rate for this @object. Audio processing #GstElement
+        <doc xml:space="preserve"
+             filename="gst/gstobject.c"
+             line="1481">Change the control-rate for this @object. Audio processing #GstElement
 objects will use this rate to sub-divide their processing loop and call
 gst_object_sync_values() in between. The length of the processing segment
 should be up to @control-rate nanoseconds.
 
 The control-rate should not change if the element is in %GST_STATE_PAUSED or
 %GST_STATE_PLAYING.</doc>
+        <source-position filename="gst/gstobject.h" line="325"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="object" transfer-ownership="none">
-            <doc xml:space="preserve">the object that has controlled properties</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstobject.c"
+                 line="1483">the object that has controlled properties</doc>
             <type name="Object" c:type="GstObject*"/>
           </instance-parameter>
           <parameter name="control_rate" transfer-ownership="none">
-            <doc xml:space="preserve">the new control-rate in nanoseconds.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstobject.c"
+                 line="1484">the new control-rate in nanoseconds.</doc>
             <type name="ClockTime" c:type="GstClockTime"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_name" c:identifier="gst_object_set_name">
-        <doc xml:space="preserve">Sets the name of @object, or gives @object a guaranteed unique
+        <doc xml:space="preserve"
+             filename="gst/gstobject.c"
+             line="630">Sets the name of @object, or gives @object a guaranteed unique
 name (if @name is %NULL).
 This function makes a copy of the provided name, so the caller
 retains ownership of the name it sent.</doc>
+        <source-position filename="gst/gstobject.h" line="220"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the name could be set. Since Objects that have
+          <doc xml:space="preserve"
+               filename="gst/gstobject.c"
+               line="640">%TRUE if the name could be set. Since Objects that have
 a parent cannot be renamed, this function returns %FALSE in those
 cases.
 
@@ -25027,23 +38407,32 @@ MT safe.  This function grabs and releases @object's LOCK.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="object" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstObject</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstobject.c"
+                 line="632">a #GstObject</doc>
             <type name="Object" c:type="GstObject*"/>
           </instance-parameter>
           <parameter name="name"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">new name of object</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstobject.c"
+                 line="633">new name of object</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_parent" c:identifier="gst_object_set_parent">
-        <doc xml:space="preserve">Sets the parent of @object to @parent. The object's reference count will
+        <doc xml:space="preserve"
+             filename="gst/gstobject.c"
+             line="688">Sets the parent of @object to @parent. The object's reference count will
 be incremented, and any floating reference will be removed (see gst_object_ref_sink()).</doc>
+        <source-position filename="gst/gstobject.h" line="228"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if @parent could be set or %FALSE when @object
+          <doc xml:space="preserve"
+               filename="gst/gstobject.c"
+               line="696">%TRUE if @parent could be set or %FALSE when @object
 already had a parent or @object and @parent are the same.
 
 MT safe. Grabs and releases @object's LOCK.</doc>
@@ -25051,81 +38440,111 @@ MT safe. Grabs and releases @object's LOCK.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="object" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstObject</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstobject.c"
+                 line="690">a #GstObject</doc>
             <type name="Object" c:type="GstObject*"/>
           </instance-parameter>
           <parameter name="parent" transfer-ownership="none">
-            <doc xml:space="preserve">new parent of object</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstobject.c"
+                 line="691">new parent of object</doc>
             <type name="Object" c:type="GstObject*"/>
           </parameter>
         </parameters>
       </method>
       <method name="suggest_next_sync"
               c:identifier="gst_object_suggest_next_sync">
-        <doc xml:space="preserve">Returns a suggestion for timestamps where buffers should be split
+        <doc xml:space="preserve"
+             filename="gst/gstobject.c"
+             line="1089">Returns a suggestion for timestamps where buffers should be split
 to get best controller results.</doc>
+        <source-position filename="gst/gstobject.h" line="284"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">Returns the suggested timestamp or %GST_CLOCK_TIME_NONE
+          <doc xml:space="preserve"
+               filename="gst/gstobject.c"
+               line="1096">Returns the suggested timestamp or %GST_CLOCK_TIME_NONE
 if no control-rate was set.</doc>
           <type name="ClockTime" c:type="GstClockTime"/>
         </return-value>
         <parameters>
           <instance-parameter name="object" transfer-ownership="none">
-            <doc xml:space="preserve">the object that has controlled properties</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstobject.c"
+                 line="1091">the object that has controlled properties</doc>
             <type name="Object" c:type="GstObject*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="sync_values" c:identifier="gst_object_sync_values">
-        <doc xml:space="preserve">Sets the properties of the object, according to the #GstControlSources that
+        <doc xml:space="preserve"
+             filename="gst/gstobject.c"
+             line="1121">Sets the properties of the object, according to the #GstControlSources that
 (maybe) handle them and for the given timestamp.
 
 If this function fails, it is most likely the application developers fault.
 Most probably the control sources are not setup correctly.</doc>
+        <source-position filename="gst/gstobject.h" line="287"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the controller values could be applied to the object
+          <doc xml:space="preserve"
+               filename="gst/gstobject.c"
+               line="1132">%TRUE if the controller values could be applied to the object
 properties, %FALSE otherwise</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="object" transfer-ownership="none">
-            <doc xml:space="preserve">the object that has controlled properties</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstobject.c"
+                 line="1123">the object that has controlled properties</doc>
             <type name="Object" c:type="GstObject*"/>
           </instance-parameter>
           <parameter name="timestamp" transfer-ownership="none">
-            <doc xml:space="preserve">the time that should be processed</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstobject.c"
+                 line="1124">the time that should be processed</doc>
             <type name="ClockTime" c:type="GstClockTime"/>
           </parameter>
         </parameters>
       </method>
       <method name="unparent" c:identifier="gst_object_unparent">
-        <doc xml:space="preserve">Clear the parent of @object, removing the associated reference.
+        <doc xml:space="preserve"
+             filename="gst/gstobject.c"
+             line="768">Clear the parent of @object, removing the associated reference.
 This function decreases the refcount of @object.
 
 MT safe. Grabs and releases @object's lock.</doc>
+        <source-position filename="gst/gstobject.h" line="234"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="object" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstObject to unparent</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstobject.c"
+                 line="770">a #GstObject to unparent</doc>
             <type name="Object" c:type="GstObject*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="unref" c:identifier="gst_object_unref">
-        <doc xml:space="preserve">Decrements the reference count on @object.  If reference count hits
+        <doc xml:space="preserve"
+             filename="gst/gstobject.c"
+             line="245">Decrements the reference count on @object.  If reference count hits
 zero, destroy @object. This function does not take the lock
 on @object as it relies on atomic refcounting.
 
 The unref method should never be called with the LOCK held since
 this might deadlock the dispose function.</doc>
+        <source-position filename="gst/gstobject.h" line="255"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="object" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstObject to unreference</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstobject.c"
+                 line="247">a #GstObject to unreference</doc>
             <type name="Object" c:type="gpointer"/>
           </instance-parameter>
         </parameters>
@@ -25137,7 +38556,9 @@ this might deadlock the dispose function.</doc>
         <type name="utf8" c:type="gchar*"/>
       </property>
       <property name="parent" writable="1" transfer-ownership="none">
-        <doc xml:space="preserve">The parent of the object. Please note, that when changing the 'parent'
+        <doc xml:space="preserve"
+             filename="gst/gstobject.c"
+             line="159">The parent of the object. Please note, that when changing the 'parent'
 property, we don't emit #GObject::notify and #GstObject::deep-notify
 signals due to locking issues. In some cases one can use
 #GstBin::element-added or #GstBin::element-removed signals on the parent to
@@ -25148,19 +38569,27 @@ achieve a similar effect.</doc>
         <type name="GObject.InitiallyUnowned" c:type="GInitiallyUnowned"/>
       </field>
       <field name="lock">
-        <doc xml:space="preserve">object LOCK</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstobject.h"
+             line="165">object LOCK</doc>
         <type name="GLib.Mutex" c:type="GMutex"/>
       </field>
       <field name="name">
-        <doc xml:space="preserve">The name of the object</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstobject.h"
+             line="166">The name of the object</doc>
         <type name="utf8" c:type="gchar*"/>
       </field>
       <field name="parent">
-        <doc xml:space="preserve">this object's parent, weak ref</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstobject.h"
+             line="167">this object's parent, weak ref</doc>
         <type name="Object" c:type="GstObject*"/>
       </field>
       <field name="flags">
-        <doc xml:space="preserve">flags for this object</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstobject.h"
+             line="168">flags for this object</doc>
         <type name="guint32" c:type="guint32"/>
       </field>
       <field name="control_bindings" readable="0" private="1">
@@ -25182,7 +38611,9 @@ achieve a similar effect.</doc>
                    no-recurse="1"
                    detailed="1"
                    no-hooks="1">
-        <doc xml:space="preserve">The deep notify signal is used to be notified of property changes. It is
+        <doc xml:space="preserve"
+             filename="gst/gstobject.c"
+             line="175">The deep notify signal is used to be notified of property changes. It is
 typically attached to the toplevel bin to receive notifications from all
 the elements contained in that bin.</doc>
         <return-value transfer-ownership="none">
@@ -25190,11 +38621,15 @@ the elements contained in that bin.</doc>
         </return-value>
         <parameters>
           <parameter name="prop_object" transfer-ownership="none">
-            <doc xml:space="preserve">the object that originated the signal</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstobject.c"
+                 line="178">the object that originated the signal</doc>
             <type name="Object"/>
           </parameter>
           <parameter name="prop" transfer-ownership="none">
-            <doc xml:space="preserve">the property that changed</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstobject.c"
+                 line="179">the property that changed</doc>
             <type name="GObject.ParamSpec"/>
           </parameter>
         </parameters>
@@ -25203,18 +38638,26 @@ the elements contained in that bin.</doc>
     <record name="ObjectClass"
             c:type="GstObjectClass"
             glib:is-gtype-struct-for="Object">
-      <doc xml:space="preserve">GStreamer base object class.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstobject.h"
+           line="189">GStreamer base object class.</doc>
+      <source-position filename="gst/gstobject.h" line="210"/>
       <field name="parent_class">
-        <doc xml:space="preserve">parent</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstobject.h"
+             line="191">parent</doc>
         <type name="GObject.InitiallyUnownedClass"
               c:type="GInitiallyUnownedClass"/>
       </field>
       <field name="path_string_separator">
-        <doc xml:space="preserve">separator used by gst_object_get_path_string()</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstobject.h"
+             line="192">separator used by gst_object_get_path_string()</doc>
         <type name="utf8" c:type="const gchar*"/>
       </field>
       <field name="deep_notify">
         <callback name="deep_notify">
+          <source-position filename="gst/gstobject.h" line="203"/>
           <return-value transfer-ownership="none">
             <type name="none" c:type="void"/>
           </return-value>
@@ -25232,7 +38675,7 @@ the elements contained in that bin.</doc>
         </callback>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -25241,71 +38684,1540 @@ the elements contained in that bin.</doc>
               glib:type-name="GstObjectFlags"
               glib:get-type="gst_object_flags_get_type"
               c:type="GstObjectFlags">
-      <doc xml:space="preserve">The standard flags that an gstobject may have.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstobject.h"
+           line="42">The standard flags that an gstobject may have.</doc>
       <member name="may_be_leaked"
               value="1"
               c:identifier="GST_OBJECT_FLAG_MAY_BE_LEAKED"
               glib:nick="may-be-leaked">
-        <doc xml:space="preserve">the object is expected to stay alive even
+        <doc xml:space="preserve"
+             filename="gst/gstobject.h"
+             line="44">the object is expected to stay alive even
 after gst_deinit() has been called and so should be ignored by leak
-detection tools. (Since 1.10)</doc>
+detection tools. (Since: 1.10)</doc>
       </member>
       <member name="last"
               value="16"
               c:identifier="GST_OBJECT_FLAG_LAST"
               glib:nick="last">
-        <doc xml:space="preserve">subclasses can add additional flags starting from this flag</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstobject.h"
+             line="47">subclasses can add additional flags starting from this flag</doc>
       </member>
     </bitfield>
+    <function-macro name="PAD" c:identifier="GST_PAD" introspectable="0">
+      <source-position filename="gst/gstpad.h" line="86"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PAD_ACTIVATEFUNC"
+                    c:identifier="GST_PAD_ACTIVATEFUNC"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstpad.h"
+           line="882">Get the #GstPadActivateFunction from @pad.</doc>
+      <source-position filename="gst/gstpad.h" line="888"/>
+      <parameters>
+        <parameter name="pad">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="884">a #GstPad</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PAD_ACTIVATEMODEFUNC"
+                    c:identifier="GST_PAD_ACTIVATEMODEFUNC"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstpad.h"
+           line="889">Get the #GstPadActivateModeFunction from the given @pad.</doc>
+      <source-position filename="gst/gstpad.h" line="895"/>
+      <parameters>
+        <parameter name="pad">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="891">a #GstPad</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PAD_BLOCK_BROADCAST"
+                    c:identifier="GST_PAD_BLOCK_BROADCAST"
+                    introspectable="0">
+      <source-position filename="gst/gstpad.h" line="1277"/>
+      <parameters>
+        <parameter name="pad">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PAD_BLOCK_GET_COND"
+                    c:identifier="GST_PAD_BLOCK_GET_COND"
+                    introspectable="0">
+      <source-position filename="gst/gstpad.h" line="1274"/>
+      <parameters>
+        <parameter name="pad">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PAD_BLOCK_SIGNAL"
+                    c:identifier="GST_PAD_BLOCK_SIGNAL"
+                    introspectable="0">
+      <source-position filename="gst/gstpad.h" line="1276"/>
+      <parameters>
+        <parameter name="pad">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PAD_BLOCK_WAIT"
+                    c:identifier="GST_PAD_BLOCK_WAIT"
+                    introspectable="0">
+      <source-position filename="gst/gstpad.h" line="1275"/>
+      <parameters>
+        <parameter name="pad">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PAD_CAST"
+                    c:identifier="GST_PAD_CAST"
+                    introspectable="0">
+      <source-position filename="gst/gstpad.h" line="88"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PAD_CHAINFUNC"
+                    c:identifier="GST_PAD_CHAINFUNC"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstpad.h"
+           line="896">Get the #GstPadChainFunction from the given @pad.</doc>
+      <source-position filename="gst/gstpad.h" line="902"/>
+      <parameters>
+        <parameter name="pad">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="898">a #GstPad</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PAD_CHAINLISTFUNC"
+                    c:identifier="GST_PAD_CHAINLISTFUNC"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstpad.h"
+           line="903">Get the #GstPadChainListFunction from the given @pad.</doc>
+      <source-position filename="gst/gstpad.h" line="909"/>
+      <parameters>
+        <parameter name="pad">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="905">a #GstPad</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PAD_CLASS"
+                    c:identifier="GST_PAD_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gstpad.h" line="87"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PAD_DIRECTION"
+                    c:identifier="GST_PAD_DIRECTION"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstpad.h"
+           line="856">Get the #GstPadDirection of the given @pad. Accessor macro, use
+gst_pad_get_direction() instead.</doc>
+      <source-position filename="gst/gstpad.h" line="863"/>
+      <parameters>
+        <parameter name="pad">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="858">a #GstPad</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PAD_ELEMENT_PRIVATE"
+                    c:identifier="GST_PAD_ELEMENT_PRIVATE"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstpad.h"
+           line="839">Get the private data of @pad, which is usually some pad- or stream-specific
+structure created by the element and set on the pad when creating it.
+No locking is performed in this function.</doc>
+      <source-position filename="gst/gstpad.h" line="847"/>
+      <parameters>
+        <parameter name="pad">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="841">a #GstPad</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PAD_EVENTFULLFUNC"
+                    c:identifier="GST_PAD_EVENTFULLFUNC"
+                    version="1.8"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstpad.h"
+           line="928">Get the #GstPadEventFullFunction from the given @pad, which
+is the function that handles events on the pad. You can
+use this to set your own event handling function on a pad
+after you create it.  If your element derives from a base
+class, use the base class's virtual functions instead.</doc>
+      <source-position filename="gst/gstpad.h" line="940"/>
+      <parameters>
+        <parameter name="pad">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="930">a #GstPad</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PAD_EVENTFUNC"
+                    c:identifier="GST_PAD_EVENTFUNC"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstpad.h"
+           line="917">Get the #GstPadEventFunction from the given @pad, which
+is the function that handles events on the pad. You can
+use this to set your own event handling function on a pad
+after you create it.  If your element derives from a base
+class, use the base class's virtual functions instead.</doc>
+      <source-position filename="gst/gstpad.h" line="927"/>
+      <parameters>
+        <parameter name="pad">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="919">a #GstPad</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PAD_GETRANGEFUNC"
+                    c:identifier="GST_PAD_GETRANGEFUNC"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstpad.h"
+           line="910">Get the #GstPadGetRangeFunction from the given @pad.</doc>
+      <source-position filename="gst/gstpad.h" line="916"/>
+      <parameters>
+        <parameter name="pad">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="912">a #GstPad</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PAD_GET_STREAM_LOCK"
+                    c:identifier="GST_PAD_GET_STREAM_LOCK"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstpad.h"
+           line="1231">Get the stream lock of @pad. The stream lock is protecting the
+resources used in the data processing functions of @pad. Accessor
+macro, use GST_PAD_STREAM_LOCK() and GST_PAD_STREAM_UNLOCK() instead
+to take/release the pad's stream lock.</doc>
+      <source-position filename="gst/gstpad.h" line="1240"/>
+      <parameters>
+        <parameter name="pad">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="1233">a #GstPad</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PAD_HAS_PENDING_EVENTS"
+                    c:identifier="GST_PAD_HAS_PENDING_EVENTS"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstpad.h"
+           line="1067">Check if the given @pad has pending events. This is used internally by
+GStreamer.</doc>
+      <source-position filename="gst/gstpad.h" line="1074"/>
+      <parameters>
+        <parameter name="pad">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="1069">a #GstPad</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PAD_IS_ACCEPT_INTERSECT"
+                    c:identifier="GST_PAD_IS_ACCEPT_INTERSECT"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstpad.h"
+           line="1173">Check if the pad's accept intersect flag is set. The default accept-caps
+handler will check if the caps intersect the query-caps result instead of
+checking for a subset. This is interesting for parser elements that can
+accept incompletely specified caps.</doc>
+      <source-position filename="gst/gstpad.h" line="1182"/>
+      <parameters>
+        <parameter name="pad">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="1175">a #GstPad</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PAD_IS_ACCEPT_TEMPLATE"
+                    c:identifier="GST_PAD_IS_ACCEPT_TEMPLATE"
+                    version="1.6"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstpad.h"
+           line="1199">Check if the pad's accept caps operation will use the pad template caps.
+The default accept-caps will do a query caps to get the caps, which might
+be querying downstream causing unnecessary overhead. It is recommended to
+implement a proper accept-caps query handler or to use this flag to prevent
+recursive accept-caps handling.</doc>
+      <source-position filename="gst/gstpad.h" line="1211"/>
+      <parameters>
+        <parameter name="pad">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="1201">a #GstPad</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PAD_IS_ACTIVE"
+                    c:identifier="GST_PAD_IS_ACTIVE"
+                    introspectable="0">
+      <source-position filename="gst/gstpad.h" line="1009"/>
+      <parameters>
+        <parameter name="pad">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="1005">a #GstPad</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PAD_IS_BLOCKED"
+                    c:identifier="GST_PAD_IS_BLOCKED"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstpad.h"
+           line="1010">Check if the dataflow on a @pad is blocked. Use gst_pad_is_blocked() instead.</doc>
+      <source-position filename="gst/gstpad.h" line="1016"/>
+      <parameters>
+        <parameter name="pad">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="1012">a #GstPad</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PAD_IS_BLOCKING"
+                    c:identifier="GST_PAD_IS_BLOCKING"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstpad.h"
+           line="1017">Check if the @pad is currently blocking on a buffer or event. Use
+gst_pad_is_blocking() instead.</doc>
+      <source-position filename="gst/gstpad.h" line="1024"/>
+      <parameters>
+        <parameter name="pad">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="1019">a #GstPad</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PAD_IS_EOS"
+                    c:identifier="GST_PAD_IS_EOS"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstpad.h"
+           line="1051">Check if the @pad is in EOS state.</doc>
+      <source-position filename="gst/gstpad.h" line="1057"/>
+      <parameters>
+        <parameter name="pad">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="1053">a #GstPad</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PAD_IS_FIXED_CAPS"
+                    c:identifier="GST_PAD_IS_FIXED_CAPS"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstpad.h"
+           line="1075">Check if the given @pad is using fixed caps, which means that
+once the caps are set on the @pad, the caps query function will
+only return those caps. See gst_pad_use_fixed_caps().</doc>
+      <source-position filename="gst/gstpad.h" line="1083"/>
+      <parameters>
+        <parameter name="pad">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="1077">a #GstPad</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PAD_IS_FLUSHING"
+                    c:identifier="GST_PAD_IS_FLUSHING"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstpad.h"
+           line="1025">Check if the given @pad is flushing.</doc>
+      <source-position filename="gst/gstpad.h" line="1031"/>
+      <parameters>
+        <parameter name="pad">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="1027">a #GstPad</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PAD_IS_LINKED"
+                    c:identifier="GST_PAD_IS_LINKED"
+                    introspectable="0">
+      <source-position filename="gst/gstpad.h" line="1002"/>
+      <parameters>
+        <parameter name="pad">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="997">a #GstPad</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PAD_IS_PROXY_ALLOCATION"
+                    c:identifier="GST_PAD_IS_PROXY_ALLOCATION"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstpad.h"
+           line="1119">Check if the given @pad is set as proxy allocation which means
+that the default query handler will forward allocation queries to the
+internally linked @pads instead of discarding them.</doc>
+      <source-position filename="gst/gstpad.h" line="1127"/>
+      <parameters>
+        <parameter name="pad">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="1121">a #GstPad</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PAD_IS_PROXY_CAPS"
+                    c:identifier="GST_PAD_IS_PROXY_CAPS"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstpad.h"
+           line="1092">Check if the given @pad is set to proxy caps. This means that the default
+event and query handler will forward all events and queries to the
+internally linked @pads instead of discarding them.</doc>
+      <source-position filename="gst/gstpad.h" line="1100"/>
+      <parameters>
+        <parameter name="pad">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="1094">a #GstPad</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PAD_IS_PROXY_SCHEDULING"
+                    c:identifier="GST_PAD_IS_PROXY_SCHEDULING"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstpad.h"
+           line="1147">Check if the given @pad is set to proxy scheduling queries, which means that
+the default query handler will forward scheduling queries to the internally
+linked @pads instead of discarding them.</doc>
+      <source-position filename="gst/gstpad.h" line="1155"/>
+      <parameters>
+        <parameter name="pad">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="1149">a #GstPad</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PAD_IS_SINK"
+                    c:identifier="GST_PAD_IS_SINK"
+                    introspectable="0">
+      <source-position filename="gst/gstpad.h" line="994"/>
+      <parameters>
+        <parameter name="pad">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="990">a #GstPad</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PAD_IS_SRC"
+                    c:identifier="GST_PAD_IS_SRC"
+                    introspectable="0">
+      <source-position filename="gst/gstpad.h" line="987"/>
+      <parameters>
+        <parameter name="pad">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="983">a #GstPad</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PAD_ITERINTLINKFUNC"
+                    c:identifier="GST_PAD_ITERINTLINKFUNC"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstpad.h"
+           line="952">Get the #GstPadIterIntLinkFunction from the given @pad.</doc>
+      <source-position filename="gst/gstpad.h" line="958"/>
+      <parameters>
+        <parameter name="pad">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="954">a #GstPad</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PAD_LAST_FLOW_RETURN"
+                    c:identifier="GST_PAD_LAST_FLOW_RETURN"
+                    version="1.4"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstpad.h"
+           line="1264">Gets the last flow return on this pad</doc>
+      <source-position filename="gst/gstpad.h" line="1272"/>
+      <parameters>
+        <parameter name="pad">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="1266">a #GstPad</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PAD_LINKFUNC"
+                    c:identifier="GST_PAD_LINKFUNC"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstpad.h"
+           line="967">Get the #GstPadLinkFunction for the given @pad.</doc>
+      <source-position filename="gst/gstpad.h" line="973"/>
+      <parameters>
+        <parameter name="pad">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="969">a #GstPad</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PAD_LINK_FAILED"
+                    c:identifier="GST_PAD_LINK_FAILED"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstpad.h"
+           line="114">Macro to test if the given #GstPadLinkReturn value indicates a failed
+link step.</doc>
+      <source-position filename="gst/gstpad.h" line="121"/>
+      <parameters>
+        <parameter name="ret">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="116">the #GstPadLinkReturn value</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PAD_LINK_SUCCESSFUL"
+                    c:identifier="GST_PAD_LINK_SUCCESSFUL"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstpad.h"
+           line="123">Macro to test if the given #GstPadLinkReturn value indicates a successful
+link step.</doc>
+      <source-position filename="gst/gstpad.h" line="130"/>
+      <parameters>
+        <parameter name="ret">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="125">the #GstPadLinkReturn value</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PAD_MODE"
+                    c:identifier="GST_PAD_MODE"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstpad.h"
+           line="873">Get the #GstPadMode of pad, which will be GST_PAD_MODE_NONE if the pad
+has not been activated yet, and otherwise either GST_PAD_MODE_PUSH or
+GST_PAD_MODE_PULL depending on which mode the pad was activated in.</doc>
+      <source-position filename="gst/gstpad.h" line="881"/>
+      <parameters>
+        <parameter name="pad">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="875">a #GstPad</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PAD_NAME"
+                    c:identifier="GST_PAD_NAME"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstpad.h"
+           line="823">Get name of the given pad.
+No locking is performed in this function, use gst_pad_get_name() instead.</doc>
+      <source-position filename="gst/gstpad.h" line="830"/>
+      <parameters>
+        <parameter name="pad">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="825">a #GstPad</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PAD_NEEDS_PARENT"
+                    c:identifier="GST_PAD_NEEDS_PARENT"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstpad.h"
+           line="1084">Check if there is a parent object before calling into the @pad callbacks.
+This is used internally by GStreamer.</doc>
+      <source-position filename="gst/gstpad.h" line="1091"/>
+      <parameters>
+        <parameter name="pad">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="1086">a #GstPad</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PAD_NEEDS_RECONFIGURE"
+                    c:identifier="GST_PAD_NEEDS_RECONFIGURE"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstpad.h"
+           line="1058">Check if the @pad should be reconfigured/renegotiated.
+The flag has to be unset manually after reconfiguration happened.
+Use gst_pad_needs_reconfigure() or gst_pad_check_reconfigure() instead.</doc>
+      <source-position filename="gst/gstpad.h" line="1066"/>
+      <parameters>
+        <parameter name="pad">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="1060">a #GstPad</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PAD_PAD_TEMPLATE"
+                    c:identifier="GST_PAD_PAD_TEMPLATE"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstpad.h"
+           line="848">Get the @pad #GstPadTemplate. It describes the possible media types
+a @pad or an element factory can handle.</doc>
+      <source-position filename="gst/gstpad.h" line="855"/>
+      <parameters>
+        <parameter name="pad">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="850">a #GstPad</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PAD_PARENT"
+                    c:identifier="GST_PAD_PARENT"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstpad.h"
+           line="831">Get the @pad parent.
+No locking is performed in this function, use gst_pad_get_parent() instead.</doc>
+      <source-position filename="gst/gstpad.h" line="838"/>
+      <parameters>
+        <parameter name="pad">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="833">a #GstPad</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PAD_PEER"
+                    c:identifier="GST_PAD_PEER"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstpad.h"
+           line="959">Return the pad's peer member. This member is a pointer to the linked @pad.
+No locking is performed in this function, use gst_pad_get_peer() instead.</doc>
+      <source-position filename="gst/gstpad.h" line="966"/>
+      <parameters>
+        <parameter name="pad">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="961">a #GstPad</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PAD_PROBE_INFO_BUFFER"
+                    c:identifier="GST_PAD_PROBE_INFO_BUFFER"
+                    introspectable="0">
+      <source-position filename="gst/gstpad.h" line="610"/>
+      <parameters>
+        <parameter name="d">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PAD_PROBE_INFO_BUFFER_LIST"
+                    c:identifier="GST_PAD_PROBE_INFO_BUFFER_LIST"
+                    introspectable="0">
+      <source-position filename="gst/gstpad.h" line="611"/>
+      <parameters>
+        <parameter name="d">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PAD_PROBE_INFO_DATA"
+                    c:identifier="GST_PAD_PROBE_INFO_DATA"
+                    introspectable="0">
+      <source-position filename="gst/gstpad.h" line="607"/>
+      <parameters>
+        <parameter name="d">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PAD_PROBE_INFO_EVENT"
+                    c:identifier="GST_PAD_PROBE_INFO_EVENT"
+                    introspectable="0">
+      <source-position filename="gst/gstpad.h" line="612"/>
+      <parameters>
+        <parameter name="d">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PAD_PROBE_INFO_FLOW_RETURN"
+                    c:identifier="GST_PAD_PROBE_INFO_FLOW_RETURN"
+                    introspectable="0">
+      <source-position filename="gst/gstpad.h" line="608"/>
+      <parameters>
+        <parameter name="d">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PAD_PROBE_INFO_ID"
+                    c:identifier="GST_PAD_PROBE_INFO_ID"
+                    introspectable="0">
+      <source-position filename="gst/gstpad.h" line="606"/>
+      <parameters>
+        <parameter name="d">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PAD_PROBE_INFO_OFFSET"
+                    c:identifier="GST_PAD_PROBE_INFO_OFFSET"
+                    introspectable="0">
+      <source-position filename="gst/gstpad.h" line="615"/>
+      <parameters>
+        <parameter name="d">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PAD_PROBE_INFO_QUERY"
+                    c:identifier="GST_PAD_PROBE_INFO_QUERY"
+                    introspectable="0">
+      <source-position filename="gst/gstpad.h" line="613"/>
+      <parameters>
+        <parameter name="d">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PAD_PROBE_INFO_SIZE"
+                    c:identifier="GST_PAD_PROBE_INFO_SIZE"
+                    introspectable="0">
+      <source-position filename="gst/gstpad.h" line="616"/>
+      <parameters>
+        <parameter name="d">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PAD_PROBE_INFO_TYPE"
+                    c:identifier="GST_PAD_PROBE_INFO_TYPE"
+                    introspectable="0">
+      <source-position filename="gst/gstpad.h" line="605"/>
+      <parameters>
+        <parameter name="d">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PAD_QUERYFUNC"
+                    c:identifier="GST_PAD_QUERYFUNC"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstpad.h"
+           line="941">Get the #GstPadQueryFunction from @pad, which is the function
+that handles queries on the pad. You can  use this to set your
+own query handling function on a pad after you create it. If your
+element derives from a base class, use the base class's virtual
+functions instead.</doc>
+      <source-position filename="gst/gstpad.h" line="951"/>
+      <parameters>
+        <parameter name="pad">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="943">a #GstPad</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PAD_SET_ACCEPT_INTERSECT"
+                    c:identifier="GST_PAD_SET_ACCEPT_INTERSECT"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstpad.h"
+           line="1183">Set @pad to by default accept caps by intersecting the result instead of
+checking for a subset. This is interesting for parser elements that can
+accept incompletely specified caps.</doc>
+      <source-position filename="gst/gstpad.h" line="1191"/>
+      <parameters>
+        <parameter name="pad">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="1185">a #GstPad</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PAD_SET_ACCEPT_TEMPLATE"
+                    c:identifier="GST_PAD_SET_ACCEPT_TEMPLATE"
+                    version="1.6"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstpad.h"
+           line="1212">Set @pad to by default use the pad template caps to compare with
+the accept caps instead of using a caps query result.</doc>
+      <source-position filename="gst/gstpad.h" line="1221"/>
+      <parameters>
+        <parameter name="pad">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="1214">a #GstPad</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PAD_SET_FLUSHING"
+                    c:identifier="GST_PAD_SET_FLUSHING"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstpad.h"
+           line="1032">Set the given @pad to flushing state, which means it will not accept any
+more events, queries or buffers, and return GST_FLOW_FLUSHING if any buffers
+are pushed on it. This usually happens when the pad is shut down or when
+a flushing seek happens. This is used inside GStreamer when flush start/stop
+events pass through pads, or when an element state is changed and pads are
+activated or deactivated.</doc>
+      <source-position filename="gst/gstpad.h" line="1043"/>
+      <parameters>
+        <parameter name="pad">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="1034">a #GstPad</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PAD_SET_PROXY_ALLOCATION"
+                    c:identifier="GST_PAD_SET_PROXY_ALLOCATION"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstpad.h"
+           line="1128">Set @pad to proxy allocation queries, which means that the default query
+handler will forward allocation queries to the internally linked @pads
+instead of discarding them.
+Set this if the element always outputs data in the exact same format as it
+receives as input. This is just for convenience to avoid implementing some
+standard query handling code in an element.</doc>
+      <source-position filename="gst/gstpad.h" line="1139"/>
+      <parameters>
+        <parameter name="pad">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="1130">a #GstPad</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PAD_SET_PROXY_CAPS"
+                    c:identifier="GST_PAD_SET_PROXY_CAPS"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstpad.h"
+           line="1101">Set @pad to proxy caps, so that all caps-related events and queries are
+proxied down- or upstream to the other side of the element automatically.
+Set this if the element always outputs data in the exact same format as it
+receives as input. This is just for convenience to avoid implementing some
+standard event and query handling code in an element.</doc>
+      <source-position filename="gst/gstpad.h" line="1111"/>
+      <parameters>
+        <parameter name="pad">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="1103">a #GstPad</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PAD_SET_PROXY_SCHEDULING"
+                    c:identifier="GST_PAD_SET_PROXY_SCHEDULING"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstpad.h"
+           line="1156">Set @pad to proxy scheduling queries, which means that the default query
+handler will forward scheduling queries to the internally linked @pads
+instead of discarding them. You will usually want to handle scheduling
+queries explicitly if your element supports multiple scheduling modes.</doc>
+      <source-position filename="gst/gstpad.h" line="1165"/>
+      <parameters>
+        <parameter name="pad">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="1158">a #GstPad</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PAD_STREAM_LOCK"
+                    c:identifier="GST_PAD_STREAM_LOCK"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstpad.h"
+           line="1241">Take the pad's stream lock. The stream lock is recursive and will be taken
+when buffers or serialized downstream events are pushed on a pad.</doc>
+      <source-position filename="gst/gstpad.h" line="1248"/>
+      <parameters>
+        <parameter name="pad">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="1243">a #GstPad</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PAD_STREAM_TRYLOCK"
+                    c:identifier="GST_PAD_STREAM_TRYLOCK"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstpad.h"
+           line="1249">Try to take the pad's stream lock, and return %TRUE if the lock could be
+taken, and otherwise %FALSE.</doc>
+      <source-position filename="gst/gstpad.h" line="1256"/>
+      <parameters>
+        <parameter name="pad">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="1251">a #GstPad</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PAD_STREAM_UNLOCK"
+                    c:identifier="GST_PAD_STREAM_UNLOCK"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstpad.h"
+           line="1257">Release the pad's stream lock.</doc>
+      <source-position filename="gst/gstpad.h" line="1263"/>
+      <parameters>
+        <parameter name="pad">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="1259">a #GstPad</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PAD_TASK"
+                    c:identifier="GST_PAD_TASK"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstpad.h"
+           line="864">Get the #GstTask of @pad. Accessor macro used by GStreamer. Use the
+gst_pad_start_task(), gst_pad_stop_task() and gst_pad_pause_task()
+functions instead.</doc>
+      <source-position filename="gst/gstpad.h" line="872"/>
+      <parameters>
+        <parameter name="pad">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="866">a #GstPad</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PAD_TEMPLATE"
+                    c:identifier="GST_PAD_TEMPLATE"
+                    introspectable="0">
+      <source-position filename="gst/gstpadtemplate.h" line="45"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PAD_TEMPLATE_CAPS"
+                    c:identifier="GST_PAD_TEMPLATE_CAPS"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstpadtemplate.h"
+           line="89">Get a handle to the padtemplate #GstCaps</doc>
+      <source-position filename="gst/gstpadtemplate.h" line="95"/>
+      <parameters>
+        <parameter name="templ">
+          <doc xml:space="preserve"
+               filename="gst/gstpadtemplate.h"
+               line="91">the template to query</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PAD_TEMPLATE_CLASS"
+                    c:identifier="GST_PAD_TEMPLATE_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gstpadtemplate.h" line="46"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PAD_TEMPLATE_DIRECTION"
+                    c:identifier="GST_PAD_TEMPLATE_DIRECTION"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstpadtemplate.h"
+           line="73">Get the #GstPadDirection of the padtemplate.</doc>
+      <source-position filename="gst/gstpadtemplate.h" line="79"/>
+      <parameters>
+        <parameter name="templ">
+          <doc xml:space="preserve"
+               filename="gst/gstpadtemplate.h"
+               line="75">the template to query</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PAD_TEMPLATE_GTYPE"
+                    c:identifier="GST_PAD_TEMPLATE_GTYPE"
+                    version="1.14"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstpadtemplate.h"
+           line="97">Get the #GType of the padtemplate</doc>
+      <source-position filename="gst/gstpadtemplate.h" line="105"/>
+      <parameters>
+        <parameter name="templ">
+          <doc xml:space="preserve"
+               filename="gst/gstpadtemplate.h"
+               line="99">the template to query</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PAD_TEMPLATE_IS_FIXED"
+                    c:identifier="GST_PAD_TEMPLATE_IS_FIXED"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstpadtemplate.h"
+           line="118">Check if the properties of the padtemplate are fixed</doc>
+      <source-position filename="gst/gstpadtemplate.h" line="124"/>
+      <parameters>
+        <parameter name="templ">
+          <doc xml:space="preserve"
+               filename="gst/gstpadtemplate.h"
+               line="120">the template to query</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PAD_TEMPLATE_NAME_TEMPLATE"
+                    c:identifier="GST_PAD_TEMPLATE_NAME_TEMPLATE"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstpadtemplate.h"
+           line="65">Get the nametemplate of the padtemplate.</doc>
+      <source-position filename="gst/gstpadtemplate.h" line="71"/>
+      <parameters>
+        <parameter name="templ">
+          <doc xml:space="preserve"
+               filename="gst/gstpadtemplate.h"
+               line="67">the template to query</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PAD_TEMPLATE_PRESENCE"
+                    c:identifier="GST_PAD_TEMPLATE_PRESENCE"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstpadtemplate.h"
+           line="81">Get the #GstPadPresence of the padtemplate.</doc>
+      <source-position filename="gst/gstpadtemplate.h" line="87"/>
+      <parameters>
+        <parameter name="templ">
+          <doc xml:space="preserve"
+               filename="gst/gstpadtemplate.h"
+               line="83">the template to query</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PAD_UNLINKFUNC"
+                    c:identifier="GST_PAD_UNLINKFUNC"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstpad.h"
+           line="974">Get the #GstPadUnlinkFunction from the given @pad.</doc>
+      <source-position filename="gst/gstpad.h" line="980"/>
+      <parameters>
+        <parameter name="pad">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="976">a #GstPad</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PAD_UNSET_ACCEPT_INTERSECT"
+                    c:identifier="GST_PAD_UNSET_ACCEPT_INTERSECT"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstpad.h"
+           line="1192">Unset accept intersect flag.</doc>
+      <source-position filename="gst/gstpad.h" line="1198"/>
+      <parameters>
+        <parameter name="pad">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="1194">a #GstPad</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PAD_UNSET_ACCEPT_TEMPLATE"
+                    c:identifier="GST_PAD_UNSET_ACCEPT_TEMPLATE"
+                    version="1.6"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstpad.h"
+           line="1222">Unset accept template flag.</doc>
+      <source-position filename="gst/gstpad.h" line="1230"/>
+      <parameters>
+        <parameter name="pad">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="1224">a #GstPad</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PAD_UNSET_FLUSHING"
+                    c:identifier="GST_PAD_UNSET_FLUSHING"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstpad.h"
+           line="1044">Unset the flushing flag.</doc>
+      <source-position filename="gst/gstpad.h" line="1050"/>
+      <parameters>
+        <parameter name="pad">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="1046">a #GstPad</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PAD_UNSET_PROXY_ALLOCATION"
+                    c:identifier="GST_PAD_UNSET_PROXY_ALLOCATION"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstpad.h"
+           line="1140">Unset proxy allocation flag.</doc>
+      <source-position filename="gst/gstpad.h" line="1146"/>
+      <parameters>
+        <parameter name="pad">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="1142">a #GstPad</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PAD_UNSET_PROXY_CAPS"
+                    c:identifier="GST_PAD_UNSET_PROXY_CAPS"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstpad.h"
+           line="1112">Unset proxy caps flag.</doc>
+      <source-position filename="gst/gstpad.h" line="1118"/>
+      <parameters>
+        <parameter name="pad">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="1114">a #GstPad</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PAD_UNSET_PROXY_SCHEDULING"
+                    c:identifier="GST_PAD_UNSET_PROXY_SCHEDULING"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstpad.h"
+           line="1166">Unset proxy scheduling flag.</doc>
+      <source-position filename="gst/gstpad.h" line="1172"/>
+      <parameters>
+        <parameter name="pad">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="1168">a #GstPad</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <constant name="PARAM_CONDITIONALLY_AVAILABLE"
+              value="16384"
+              c:type="GST_PARAM_CONDITIONALLY_AVAILABLE"
+              version="1.18">
+      <doc xml:space="preserve"
+           filename="gst/gstparamspecs.h"
+           line="74">Use this flag on GObject properties of GstObject to indicate that
+they might not be available depending on environment such as OS, device, etc,
+so such properties will be installed conditionally only if the GstObject is
+able to support it.</doc>
+      <source-position filename="gst/gstparamspecs.h" line="84"/>
+      <type name="gint" c:type="gint"/>
+    </constant>
     <constant name="PARAM_CONTROLLABLE"
               value="512"
               c:type="GST_PARAM_CONTROLLABLE">
-      <doc xml:space="preserve">Use this flag on GObject properties to signal they can make sense to be.
+      <doc xml:space="preserve"
+           filename="gst/gstparamspecs.h"
+           line="29">Use this flag on GObject properties to signal they can make sense to be.
 controlled over time. This hint is used by the GstController.</doc>
+      <source-position filename="gst/gstparamspecs.h" line="35"/>
+      <type name="gint" c:type="gint"/>
+    </constant>
+    <constant name="PARAM_DOC_SHOW_DEFAULT"
+              value="8192"
+              c:type="GST_PARAM_DOC_SHOW_DEFAULT"
+              version="1.18">
+      <doc xml:space="preserve"
+           filename="gst/gstparamspecs.h"
+           line="63">Use this flag on GObject properties of GstObject to indicate that
+during `gst-inspect` and friends, the default value should be used
+as default instead of the current value.</doc>
+      <source-position filename="gst/gstparamspecs.h" line="72"/>
       <type name="gint" c:type="gint"/>
     </constant>
     <constant name="PARAM_MUTABLE_PAUSED"
               value="2048"
               c:type="GST_PARAM_MUTABLE_PAUSED">
-      <doc xml:space="preserve">Use this flag on GObject properties of GstElements to indicate that
+      <doc xml:space="preserve"
+           filename="gst/gstparamspecs.h"
+           line="45">Use this flag on GObject properties of GstElements to indicate that
 they can be changed when the element is in the PAUSED or lower state.
 This flag implies GST_PARAM_MUTABLE_READY.</doc>
+      <source-position filename="gst/gstparamspecs.h" line="52"/>
       <type name="gint" c:type="gint"/>
     </constant>
     <constant name="PARAM_MUTABLE_PLAYING"
               value="4096"
               c:type="GST_PARAM_MUTABLE_PLAYING">
-      <doc xml:space="preserve">Use this flag on GObject properties of GstElements to indicate that
+      <doc xml:space="preserve"
+           filename="gst/gstparamspecs.h"
+           line="54">Use this flag on GObject properties of GstElements to indicate that
 they can be changed when the element is in the PLAYING or lower state.
 This flag implies GST_PARAM_MUTABLE_PAUSED.</doc>
+      <source-position filename="gst/gstparamspecs.h" line="61"/>
       <type name="gint" c:type="gint"/>
     </constant>
     <constant name="PARAM_MUTABLE_READY"
               value="1024"
               c:type="GST_PARAM_MUTABLE_READY">
-      <doc xml:space="preserve">Use this flag on GObject properties of GstElements to indicate that
+      <doc xml:space="preserve"
+           filename="gst/gstparamspecs.h"
+           line="37">Use this flag on GObject properties of GstElements to indicate that
 they can be changed when the element is in the READY or lower state.</doc>
+      <source-position filename="gst/gstparamspecs.h" line="43"/>
       <type name="gint" c:type="gint"/>
     </constant>
+    <function-macro name="PARAM_SPEC_ARRAY_LIST"
+                    c:identifier="GST_PARAM_SPEC_ARRAY_LIST"
+                    introspectable="0">
+      <source-position filename="gst/gstparamspecs.h" line="116"/>
+      <parameters>
+        <parameter name="pspec">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PARAM_SPEC_FRACTION"
+                    c:identifier="GST_PARAM_SPEC_FRACTION"
+                    introspectable="0">
+      <source-position filename="gst/gstparamspecs.h" line="105"/>
+      <parameters>
+        <parameter name="pspec">
+        </parameter>
+      </parameters>
+    </function-macro>
     <constant name="PARAM_USER_SHIFT"
               value="65536"
               c:type="GST_PARAM_USER_SHIFT">
-      <doc xml:space="preserve">Bits based on GST_PARAM_USER_SHIFT can be used by 3rd party applications.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstparamspecs.h"
+           line="86">Bits based on GST_PARAM_USER_SHIFT can be used by 3rd party applications.</doc>
+      <source-position filename="gst/gstparamspecs.h" line="91"/>
       <type name="gint" c:type="gint"/>
     </constant>
+    <function-macro name="PIPELINE"
+                    c:identifier="GST_PIPELINE"
+                    introspectable="0">
+      <source-position filename="gst/gstpipeline.h" line="32"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PIPELINE_CAST"
+                    c:identifier="GST_PIPELINE_CAST"
+                    introspectable="0">
+      <source-position filename="gst/gstpipeline.h" line="37"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PIPELINE_CLASS"
+                    c:identifier="GST_PIPELINE_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gstpipeline.h" line="34"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PIPELINE_GET_CLASS"
+                    c:identifier="GST_PIPELINE_GET_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gstpipeline.h" line="36"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PLUGIN" c:identifier="GST_PLUGIN" introspectable="0">
+      <source-position filename="gst/gstplugin.h" line="192"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PLUGIN_CAST"
+                    c:identifier="GST_PLUGIN_CAST"
+                    introspectable="0">
+      <source-position filename="gst/gstplugin.h" line="194"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PLUGIN_CLASS"
+                    c:identifier="GST_PLUGIN_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gstplugin.h" line="193"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PLUGIN_DEFINE"
+                    c:identifier="GST_PLUGIN_DEFINE"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstplugin.h"
+           line="230">This macro needs to be used to define the entry point and meta data of a
+plugin. One would use this macro to export a plugin, so that it can be used
+by other applications.
+
+The macro uses a define named PACKAGE for the #GstPluginDesc,source field.
+When using autoconf, this is usually set automatically via the AC_INIT
+macro, and set in config.h. If you are not using autoconf, you will need to
+define PACKAGE yourself and set it to a short mnemonic string identifying
+your application/package, e.g. 'someapp' or 'my-plugins-foo.
+
+If defined, the GST_PACKAGE_RELEASE_DATETIME will also be used for the
+#GstPluginDesc,release_datetime field.</doc>
+      <source-position filename="gst/gstplugin.h" line="255"/>
+      <parameters>
+        <parameter name="major">
+          <doc xml:space="preserve"
+               filename="gst/gstplugin.h"
+               line="232">major version number of the gstreamer-core that plugin was compiled for</doc>
+        </parameter>
+        <parameter name="minor">
+          <doc xml:space="preserve"
+               filename="gst/gstplugin.h"
+               line="233">minor version number of the gstreamer-core that plugin was compiled for</doc>
+        </parameter>
+        <parameter name="name">
+          <doc xml:space="preserve"
+               filename="gst/gstplugin.h"
+               line="234">short, but unique name of the plugin</doc>
+        </parameter>
+        <parameter name="description">
+          <doc xml:space="preserve"
+               filename="gst/gstplugin.h"
+               line="235">information about the purpose of the plugin</doc>
+        </parameter>
+        <parameter name="init">
+          <doc xml:space="preserve"
+               filename="gst/gstplugin.h"
+               line="236">function pointer to the plugin_init method with the signature of &lt;code&gt;static gboolean plugin_init (GstPlugin * plugin)&lt;/code&gt;.</doc>
+        </parameter>
+        <parameter name="version">
+          <doc xml:space="preserve"
+               filename="gst/gstplugin.h"
+               line="237">full version string (e.g. VERSION from config.h)</doc>
+        </parameter>
+        <parameter name="license">
+          <doc xml:space="preserve"
+               filename="gst/gstplugin.h"
+               line="238">under which licence the package has been released, e.g. GPL, LGPL.</doc>
+        </parameter>
+        <parameter name="package">
+          <doc xml:space="preserve"
+               filename="gst/gstplugin.h"
+               line="239">the package-name (e.g. PACKAGE_NAME from config.h)</doc>
+        </parameter>
+        <parameter name="origin">
+          <doc xml:space="preserve"
+               filename="gst/gstplugin.h"
+               line="240">a description from where the package comes from (e.g. the homepage URL)</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PLUGIN_FEATURE"
+                    c:identifier="GST_PLUGIN_FEATURE"
+                    introspectable="0">
+      <source-position filename="gst/gstpluginfeature.h" line="34"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PLUGIN_FEATURE_CAST"
+                    c:identifier="GST_PLUGIN_FEATURE_CAST"
+                    introspectable="0">
+      <source-position filename="gst/gstpluginfeature.h" line="39"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PLUGIN_FEATURE_CLASS"
+                    c:identifier="GST_PLUGIN_FEATURE_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gstpluginfeature.h" line="36"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PLUGIN_FEATURE_GET_CLASS"
+                    c:identifier="GST_PLUGIN_FEATURE_GET_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gstpluginfeature.h" line="38"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PLUGIN_FEATURE_LIST_DEBUG"
+                    c:identifier="GST_PLUGIN_FEATURE_LIST_DEBUG"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstpluginfeature.h"
+           line="136">Debug the plugin feature names in @list.</doc>
+      <source-position filename="gst/gstpluginfeature.h" line="144"/>
+      <parameters>
+        <parameter name="list">
+          <doc xml:space="preserve"
+               filename="gst/gstpluginfeature.h"
+               line="138">a #GList of
+    plugin features</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PLUGIN_GET_CLASS"
+                    c:identifier="GST_PLUGIN_GET_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gstplugin.h" line="191"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PLUGIN_STATIC_DECLARE"
+                    c:identifier="GST_PLUGIN_STATIC_DECLARE"
+                    version="1.2"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstplugin.h"
+           line="202">This macro can be used to initialize statically linked plugins. It is
+necessary to call this macro before the plugin can be used.
+It has to be used in combination with GST_PLUGIN_STATIC_REGISTER
+and must be placed outside any block to declare the plugin initialization
+function.</doc>
+      <source-position filename="gst/gstplugin.h" line="214"/>
+      <parameters>
+        <parameter name="name">
+          <doc xml:space="preserve"
+               filename="gst/gstplugin.h"
+               line="204">short, but unique name of the plugin</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PLUGIN_STATIC_REGISTER"
+                    c:identifier="GST_PLUGIN_STATIC_REGISTER"
+                    version="1.2"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstplugin.h"
+           line="217">This macro can be used to initialize statically linked plugins. It is
+necessary to call this macro before the plugin can be used.
+It has to be used in combination with GST_PLUGIN_STATIC_DECLARE and
+calls the plugin initialization function.</doc>
+      <source-position filename="gst/gstplugin.h" line="228"/>
+      <parameters>
+        <parameter name="name">
+          <doc xml:space="preserve"
+               filename="gst/gstplugin.h"
+               line="219">short, but unique name of the plugin</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PRESET" c:identifier="GST_PRESET" introspectable="0">
+      <source-position filename="gst/gstpreset.h" line="31"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PRESET_GET_INTERFACE"
+                    c:identifier="GST_PRESET_GET_INTERFACE"
+                    introspectable="0">
+      <source-position filename="gst/gstpreset.h" line="33"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PROMISE"
+                    c:identifier="GST_PROMISE"
+                    introspectable="0">
+      <source-position filename="gst/gstpromise.h" line="30"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
     <constant name="PROTECTION_SYSTEM_ID_CAPS_FIELD"
               value="protection-system"
               c:type="GST_PROTECTION_SYSTEM_ID_CAPS_FIELD"
               version="1.6">
-      <doc xml:space="preserve">The field name in a GstCaps that is used to signal the UUID of the protection
+      <doc xml:space="preserve"
+           filename="gst/gstprotection.h"
+           line="27">The field name in a GstCaps that is used to signal the UUID of the protection
 system.</doc>
+      <source-position filename="gst/gstprotection.h" line="35"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="PROTECTION_UNSPECIFIED_SYSTEM_ID"
               value="unspecified-system-id"
               c:type="GST_PROTECTION_UNSPECIFIED_SYSTEM_ID"
               version="1.16">
-      <doc xml:space="preserve">The protection system value of the unspecified UUID.
+      <doc xml:space="preserve"
+           filename="gst/gstprotection.h"
+           line="37">The protection system value of the unspecified UUID.
 In some cases the system protection ID is not present in the contents or in their
 metadata, as encrypted WebM.
 This define is used to set the value of the "system_id" field in GstProtectionEvent,
@@ -25315,13 +40227,34 @@ protection system to use.
 Example: The matroskademux uses this value in the case of encrypted WebM,
 the application will choose the appropriate protection system based on the information
 received through EME API.</doc>
+      <source-position filename="gst/gstprotection.h" line="53"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
+    <function-macro name="PROXY_PAD"
+                    c:identifier="GST_PROXY_PAD"
+                    introspectable="0">
+      <source-position filename="gst/gstghostpad.h" line="37"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PROXY_PAD_CLASS"
+                    c:identifier="GST_PROXY_PAD_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gstghostpad.h" line="38"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
     <constant name="PTR_FORMAT"
               value="paA"
               c:type="GST_PTR_FORMAT"
               introspectable="0">
-      <doc xml:space="preserve">printf format type used to debug GStreamer types. You can use this in
+      <doc xml:space="preserve"
+           filename="gst/gstinfo.h"
+           line="278">printf format type used to debug GStreamer types. You can use this in
 combination with GStreamer's debug logging system as well as the functions
 gst_info_vasprintf(), gst_info_strdup_vprintf() and gst_info_strdup_printf()
 to pretty-print the following types: #GstCaps, #GstStructure,
@@ -25331,6 +40264,7 @@ to pretty-print the following types: #GstCaps, #GstStructure,
 else will simply be printed as pointer address.
 
 This can only be used on types whose size is &gt;= sizeof(gpointer).</doc>
+      <source-position filename="gst/gstinfo.h" line="292"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <class name="Pad"
@@ -25340,7 +40274,9 @@ This can only be used on types whose size is &gt;= sizeof(gpointer).</doc>
            glib:type-name="GstPad"
            glib:get-type="gst_pad_get_type"
            glib:type-struct="PadClass">
-      <doc xml:space="preserve">A #GstElement is linked to other elements via "pads", which are extremely
+      <doc xml:space="preserve"
+           filename="gst/gstpad.c"
+           line="22">A #GstElement is linked to other elements via "pads", which are extremely
 light-weight generic link points.
 
 Pads have a #GstPadDirection, source pads produce data, sink pads consume
@@ -25357,7 +40293,7 @@ which takes a direction and a name as an argument.  If the name is %NULL,
 then a guaranteed unique name will be assigned to it.
 
 A #GstElement creating a pad will typically use the various
-gst_pad_set_*_function() calls to register callbacks for events, queries or
+gst_pad_set_*_function\() calls to register callbacks for events, queries or
 dataflow on the pads.
 
 gst_pad_get_parent() will retrieve the #GstElement that owns the pad.
@@ -25399,13 +40335,19 @@ gst_pad_set_offset() can be used to change the offset.
 Convenience functions exist to start, pause and stop the task on a pad with
 gst_pad_start_task(), gst_pad_pause_task() and gst_pad_stop_task()
 respectively.</doc>
+      <source-position filename="gst/gstpad.h" line="817"/>
       <constructor name="new" c:identifier="gst_pad_new">
-        <doc xml:space="preserve">Creates a new pad with the given name in the given direction.
+        <doc xml:space="preserve"
+             filename="gst/gstpad.c"
+             line="825">Creates a new pad with the given name in the given direction.
 If name is %NULL, a guaranteed unique name (across all pads)
 will be assigned.
 This function makes a copy of the name so you can safely free the name.</doc>
+        <source-position filename="gst/gstpad.h" line="1285"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a new #GstPad.
+          <doc xml:space="preserve"
+               filename="gst/gstpad.c"
+               line="835">a new #GstPad.
 
 MT safe.</doc>
           <type name="Pad" c:type="GstPad*"/>
@@ -25415,56 +40357,78 @@ MT safe.</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">the name of the new pad.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="827">the name of the new pad.</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="direction" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstPadDirection of the pad.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="828">the #GstPadDirection of the pad.</doc>
             <type name="PadDirection" c:type="GstPadDirection"/>
           </parameter>
         </parameters>
       </constructor>
       <constructor name="new_from_static_template"
                    c:identifier="gst_pad_new_from_static_template">
-        <doc xml:space="preserve">Creates a new pad with the given name from the given static template.
+        <doc xml:space="preserve"
+             filename="gst/gstpad.c"
+             line="871">Creates a new pad with the given name from the given static template.
 If name is %NULL, a guaranteed unique name (across all pads)
 will be assigned.
 This function makes a copy of the name so you can safely free the name.</doc>
+        <source-position filename="gst/gstpad.h" line="1291"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a new #GstPad.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstpad.c"
+               line="881">a new #GstPad.</doc>
           <type name="Pad" c:type="GstPad*"/>
         </return-value>
         <parameters>
           <parameter name="templ" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstStaticPadTemplate to use</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="873">the #GstStaticPadTemplate to use</doc>
             <type name="StaticPadTemplate" c:type="GstStaticPadTemplate*"/>
           </parameter>
           <parameter name="name" transfer-ownership="none">
-            <doc xml:space="preserve">the name of the pad</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="874">the name of the pad</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </constructor>
       <constructor name="new_from_template"
                    c:identifier="gst_pad_new_from_template">
-        <doc xml:space="preserve">Creates a new pad with the given name from the given template.
+        <doc xml:space="preserve"
+             filename="gst/gstpad.c"
+             line="846">Creates a new pad with the given name from the given template.
 If name is %NULL, a guaranteed unique name (across all pads)
 will be assigned.
 This function makes a copy of the name so you can safely free the name.</doc>
+        <source-position filename="gst/gstpad.h" line="1288"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a new #GstPad.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstpad.c"
+               line="856">a new #GstPad.</doc>
           <type name="Pad" c:type="GstPad*"/>
         </return-value>
         <parameters>
           <parameter name="templ" transfer-ownership="none">
-            <doc xml:space="preserve">the pad template to use</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="848">the pad template to use</doc>
             <type name="PadTemplate" c:type="GstPadTemplate*"/>
           </parameter>
           <parameter name="name"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">the name of the pad</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="849">the name of the pad</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
@@ -25472,19 +40436,27 @@ This function makes a copy of the name so you can safely free the name.</doc>
       <function name="link_get_name"
                 c:identifier="gst_pad_link_get_name"
                 version="1.4">
-        <doc xml:space="preserve">Gets a string representing the given pad-link return.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a static string with the name of the pad-link return.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpad.c"
+             line="271">Gets a string representing the given pad-link return.</doc>
+        <source-position filename="gst/gstpad.h" line="192"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.c"
+               line="277">a static string with the name of the pad-link return.</doc>
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
         <parameters>
           <parameter name="ret" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstPadLinkReturn to get the name of.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="273">a #GstPadLinkReturn to get the name of.</doc>
             <type name="PadLinkReturn" c:type="GstPadLinkReturn"/>
           </parameter>
         </parameters>
       </function>
       <virtual-method name="linked">
+        <source-position filename="gst/gstpad.h" line="812"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
@@ -25498,6 +40470,7 @@ This function makes a copy of the name so you can safely free the name.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="unlinked">
+        <source-position filename="gst/gstpad.h" line="813"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
@@ -25511,33 +40484,46 @@ This function makes a copy of the name so you can safely free the name.</doc>
         </parameters>
       </virtual-method>
       <method name="activate_mode" c:identifier="gst_pad_activate_mode">
-        <doc xml:space="preserve">Activates or deactivates the given pad in @mode via dispatching to the
+        <doc xml:space="preserve"
+             filename="gst/gstpad.c"
+             line="1287">Activates or deactivates the given pad in @mode via dispatching to the
 pad's activatemodefunc. For use from within pad activation functions only.
 
 If you don't know what this is, you probably don't want to call it.</doc>
+        <source-position filename="gst/gstpad.h" line="1327"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the operation was successful.
+          <doc xml:space="preserve"
+               filename="gst/gstpad.c"
+               line="1298">%TRUE if the operation was successful.
 
 MT safe.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstPad to activate or deactivate.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="1289">the #GstPad to activate or deactivate.</doc>
             <type name="Pad" c:type="GstPad*"/>
           </instance-parameter>
           <parameter name="mode" transfer-ownership="none">
-            <doc xml:space="preserve">the requested activation mode</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="1290">the requested activation mode</doc>
             <type name="PadMode" c:type="GstPadMode"/>
           </parameter>
           <parameter name="active" transfer-ownership="none">
-            <doc xml:space="preserve">whether or not the pad should be active.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="1291">whether or not the pad should be active.</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </method>
       <method name="add_probe" c:identifier="gst_pad_add_probe">
-        <doc xml:space="preserve">Be notified of different states of pads. The provided callback is called for
+        <doc xml:space="preserve"
+             filename="gst/gstpad.c"
+             line="1398">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
@@ -25546,8 +40532,11 @@ 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.</doc>
+        <source-position filename="gst/gstpad.h" line="1330"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">an id or 0 if no probe is pending. The id can be used to remove the
+          <doc xml:space="preserve"
+               filename="gst/gstpad.c"
+               line="1417">an id or 0 if no probe is pending. The id can be used to remove the
 probe with gst_pad_remove_probe(). When using GST_PAD_PROBE_TYPE_IDLE it can
 happen that the probe can be run immediately and if the probe returns
 GST_PAD_PROBE_REMOVE this functions returns 0.
@@ -25557,11 +40546,15 @@ MT safe.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstPad to add the probe to</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="1400">the #GstPad to add the probe to</doc>
             <type name="Pad" c:type="GstPad*"/>
           </instance-parameter>
           <parameter name="mask" transfer-ownership="none">
-            <doc xml:space="preserve">the probe mask</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="1401">the probe mask</doc>
             <type name="PadProbeType" c:type="GstPadProbeType"/>
           </parameter>
           <parameter name="callback"
@@ -25569,7 +40562,9 @@ MT safe.</doc>
                      scope="notified"
                      closure="2"
                      destroy="3">
-            <doc xml:space="preserve">#GstPadProbeCallback that will be called with notifications of
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="1402">#GstPadProbeCallback that will be called with notifications of
           the pad state</doc>
             <type name="PadProbeCallback" c:type="GstPadProbeCallback"/>
           </parameter>
@@ -25577,37 +40572,52 @@ MT safe.</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">user data passed to the callback</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="1404">user data passed to the callback</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
           <parameter name="destroy_data"
                      transfer-ownership="none"
                      scope="async">
-            <doc xml:space="preserve">#GDestroyNotify for user_data</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="1405">#GDestroyNotify for user_data</doc>
             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
           </parameter>
         </parameters>
       </method>
       <method name="can_link" c:identifier="gst_pad_can_link">
-        <doc xml:space="preserve">Checks if the source pad and the sink pad are compatible so they can be
+        <doc xml:space="preserve"
+             filename="gst/gstpad.c"
+             line="2441">Checks if the source pad and the sink pad are compatible so they can be
 linked.</doc>
+        <source-position filename="gst/gstpad.h" line="1437"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the pads can be linked.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstpad.c"
+               line="2449">%TRUE if the pads can be linked.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="srcpad" transfer-ownership="none">
-            <doc xml:space="preserve">the source #GstPad.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="2443">the source #GstPad.</doc>
             <type name="Pad" c:type="GstPad*"/>
           </instance-parameter>
           <parameter name="sinkpad" transfer-ownership="none">
-            <doc xml:space="preserve">the sink #GstPad.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="2444">the sink #GstPad.</doc>
             <type name="Pad" c:type="GstPad*"/>
           </parameter>
         </parameters>
       </method>
       <method name="chain" c:identifier="gst_pad_chain">
-        <doc xml:space="preserve">Chain a buffer to @pad.
+        <doc xml:space="preserve"
+             filename="gst/gstpad.c"
+             line="4496">Chain a buffer to @pad.
 
 The function returns #GST_FLOW_FLUSHING if the pad was flushing.
 
@@ -25622,26 +40632,35 @@ chain function.
 
 In all cases, success or failure, the caller loses its reference to @buffer
 after calling this function.</doc>
+        <source-position filename="gst/gstpad.h" line="1501"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstFlowReturn from the pad.
+          <doc xml:space="preserve"
+               filename="gst/gstpad.c"
+               line="4518">a #GstFlowReturn from the pad.
 
 MT safe.</doc>
           <type name="FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">a sink #GstPad, returns GST_FLOW_ERROR if not.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="4498">a sink #GstPad, returns GST_FLOW_ERROR if not.</doc>
             <type name="Pad" c:type="GstPad*"/>
           </instance-parameter>
           <parameter name="buffer" transfer-ownership="full">
-            <doc xml:space="preserve">the #GstBuffer to send, return GST_FLOW_ERROR
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="4499">the #GstBuffer to send, return GST_FLOW_ERROR
     if not.</doc>
             <type name="Buffer" c:type="GstBuffer*"/>
           </parameter>
         </parameters>
       </method>
       <method name="chain_list" c:identifier="gst_pad_chain_list">
-        <doc xml:space="preserve">Chain a bufferlist to @pad.
+        <doc xml:space="preserve"
+             filename="gst/gstpad.c"
+             line="4560">Chain a bufferlist to @pad.
 
 The function returns #GST_FLOW_FLUSHING if the pad was flushing.
 
@@ -25657,17 +40676,24 @@ In all cases, success or failure, the caller loses its reference to @list
 after calling this function.
 
 MT safe.</doc>
+        <source-position filename="gst/gstpad.h" line="1504"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstFlowReturn from the pad.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstpad.c"
+               line="4583">a #GstFlowReturn from the pad.</doc>
           <type name="FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">a sink #GstPad, returns GST_FLOW_ERROR if not.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="4562">a sink #GstPad, returns GST_FLOW_ERROR if not.</doc>
             <type name="Pad" c:type="GstPad*"/>
           </instance-parameter>
           <parameter name="list" transfer-ownership="full">
-            <doc xml:space="preserve">the #GstBufferList to send, return GST_FLOW_ERROR
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="4563">the #GstBufferList to send, return GST_FLOW_ERROR
     if not.</doc>
             <type name="BufferList" c:type="GstBufferList*"/>
           </parameter>
@@ -25675,21 +40701,30 @@ MT safe.</doc>
       </method>
       <method name="check_reconfigure"
               c:identifier="gst_pad_check_reconfigure">
-        <doc xml:space="preserve">Check and clear the #GST_PAD_FLAG_NEED_RECONFIGURE flag on @pad and return %TRUE
+        <doc xml:space="preserve"
+             filename="gst/gstpad.c"
+             line="1654">Check and clear the #GST_PAD_FLAG_NEED_RECONFIGURE flag on @pad and return %TRUE
 if the flag was set.</doc>
+        <source-position filename="gst/gstpad.h" line="1351"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE is the GST_PAD_FLAG_NEED_RECONFIGURE flag was set on @pad.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstpad.c"
+               line="1661">%TRUE is the GST_PAD_FLAG_NEED_RECONFIGURE flag was set on @pad.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstPad to check</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="1656">the #GstPad to check</doc>
             <type name="Pad" c:type="GstPad*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="create_stream_id" c:identifier="gst_pad_create_stream_id">
-        <doc xml:space="preserve">Creates a stream-id for the source #GstPad @pad by combining the
+        <doc xml:space="preserve"
+             filename="gst/gstutils.c"
+             line="4123">Creates a stream-id for the source #GstPad @pad by combining the
 upstream information with the optional @stream_id of the stream
 of @pad. @pad must have a parent #GstElement and which must have zero
 or one sinkpad. @stream_id can only be %NULL if the parent element
@@ -25706,24 +40741,33 @@ stream-id manually instead.
 Since stream IDs are sorted alphabetically, any numbers in the
 stream ID should be printed with a fixed number of characters,
 preceded by 0's, such as by using the format \%03u instead of \%u.</doc>
+        <source-position filename="gst/gstutils.h" line="1114"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">A stream-id for @pad. g_free() after usage.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="4147">A stream-id for @pad. g_free() after usage.</doc>
           <type name="utf8" c:type="gchar*"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">A source #GstPad</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="4125">A source #GstPad</doc>
             <type name="Pad" c:type="GstPad*"/>
           </instance-parameter>
           <parameter name="parent" transfer-ownership="none">
-            <doc xml:space="preserve">Parent #GstElement of @pad</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="4126">Parent #GstElement of @pad</doc>
             <type name="Element" c:type="GstElement*"/>
           </parameter>
           <parameter name="stream_id"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">The stream-id</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="4127">The stream-id</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
@@ -25731,7 +40775,9 @@ preceded by 0's, such as by using the format \%03u instead of \%u.</doc>
       <method name="create_stream_id_printf"
               c:identifier="gst_pad_create_stream_id_printf"
               introspectable="0">
-        <doc xml:space="preserve">Creates a stream-id for the source #GstPad @pad by combining the
+        <doc xml:space="preserve"
+             filename="gst/gstutils.c"
+             line="4085">Creates a stream-id for the source #GstPad @pad by combining the
 upstream information with the optional @stream_id of the stream
 of @pad. @pad must have a parent #GstElement and which must have zero
 or one sinkpad. @stream_id can only be %NULL if the parent element
@@ -25744,28 +40790,39 @@ doing an URI query on the element and in the worst case just uses
 a random number. Source elements that don't implement the URI
 handler interface should ideally generate a unique, deterministic
 stream-id manually instead.</doc>
+        <source-position filename="gst/gstutils.h" line="1117"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">A stream-id for @pad. g_free() after usage.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="4106">A stream-id for @pad. g_free() after usage.</doc>
           <type name="utf8" c:type="gchar*"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">A source #GstPad</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="4087">A source #GstPad</doc>
             <type name="Pad" c:type="GstPad*"/>
           </instance-parameter>
           <parameter name="parent" transfer-ownership="none">
-            <doc xml:space="preserve">Parent #GstElement of @pad</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="4088">Parent #GstElement of @pad</doc>
             <type name="Element" c:type="GstElement*"/>
           </parameter>
           <parameter name="stream_id"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">The stream-id</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="4089">The stream-id</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="..." transfer-ownership="none">
-            <doc xml:space="preserve">parameters for the @stream_id format string</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="4090">parameters for the @stream_id format string</doc>
             <varargs/>
           </parameter>
         </parameters>
@@ -25773,7 +40830,9 @@ stream-id manually instead.</doc>
       <method name="create_stream_id_printf_valist"
               c:identifier="gst_pad_create_stream_id_printf_valist"
               introspectable="0">
-        <doc xml:space="preserve">Creates a stream-id for the source #GstPad @pad by combining the
+        <doc xml:space="preserve"
+             filename="gst/gstutils.c"
+             line="4046">Creates a stream-id for the source #GstPad @pad by combining the
 upstream information with the optional @stream_id of the stream
 of @pad. @pad must have a parent #GstElement and which must have zero
 or one sinkpad. @stream_id can only be %NULL if the parent element
@@ -25786,102 +40845,140 @@ doing an URI query on the element and in the worst case just uses
 a random number. Source elements that don't implement the URI
 handler interface should ideally generate a unique, deterministic
 stream-id manually instead.</doc>
+        <source-position filename="gst/gstutils.h" line="1120"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">A stream-id for @pad. g_free() after usage.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="4067">A stream-id for @pad. g_free() after usage.</doc>
           <type name="utf8" c:type="gchar*"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">A source #GstPad</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="4048">A source #GstPad</doc>
             <type name="Pad" c:type="GstPad*"/>
           </instance-parameter>
           <parameter name="parent" transfer-ownership="none">
-            <doc xml:space="preserve">Parent #GstElement of @pad</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="4049">Parent #GstElement of @pad</doc>
             <type name="Element" c:type="GstElement*"/>
           </parameter>
           <parameter name="stream_id"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">The stream-id</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="4050">The stream-id</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="var_args" transfer-ownership="none">
-            <doc xml:space="preserve">parameters for the @stream_id format string</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="4051">parameters for the @stream_id format string</doc>
             <type name="va_list" c:type="va_list"/>
           </parameter>
         </parameters>
       </method>
       <method name="event_default" c:identifier="gst_pad_event_default">
-        <doc xml:space="preserve">Invokes the default event handler for the given pad.
+        <doc xml:space="preserve"
+             filename="gst/gstpad.c"
+             line="3128">Invokes the default event handler for the given pad.
 
 The EOS event will pause the task associated with @pad before it is forwarded
 to all internally linked pads,
 
 The event is sent to all pads internally linked to @pad. This function
 takes ownership of @event.</doc>
+        <source-position filename="gst/gstpad.h" line="1493"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the event was sent successfully.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstpad.c"
+               line="3142">%TRUE if the event was sent successfully.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstPad to call the default event handler on.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="3130">a #GstPad to call the default event handler on.</doc>
             <type name="Pad" c:type="GstPad*"/>
           </instance-parameter>
           <parameter name="parent"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">the parent of @pad or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="3131">the parent of @pad or %NULL</doc>
             <type name="Object" c:type="GstObject*"/>
           </parameter>
           <parameter name="event" transfer-ownership="full">
-            <doc xml:space="preserve">the #GstEvent to handle.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="3132">the #GstEvent to handle.</doc>
             <type name="Event" c:type="GstEvent*"/>
           </parameter>
         </parameters>
       </method>
       <method name="forward" c:identifier="gst_pad_forward">
-        <doc xml:space="preserve">Calls @forward for all internally linked pads of @pad. This function deals with
+        <doc xml:space="preserve"
+             filename="gst/gstpad.c"
+             line="3029">Calls @forward for all internally linked pads of @pad. This function deals with
 dynamically changing internal pads and will make sure that the @forward
 function is only called once for each pad.
 
 When @forward returns %TRUE, no further pads will be processed.</doc>
+        <source-position filename="gst/gstpad.h" line="1566"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if one of the dispatcher functions returned %TRUE.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstpad.c"
+               line="3041">%TRUE if one of the dispatcher functions returned %TRUE.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstPad</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="3031">a #GstPad</doc>
             <type name="Pad" c:type="GstPad*"/>
           </instance-parameter>
           <parameter name="forward"
                      transfer-ownership="none"
                      scope="call"
                      closure="1">
-            <doc xml:space="preserve">a #GstPadForwardFunction</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="3032">a #GstPadForwardFunction</doc>
             <type name="PadForwardFunction" c:type="GstPadForwardFunction"/>
           </parameter>
           <parameter name="user_data"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">user data passed to @forward</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="3033">user data passed to @forward</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_allowed_caps" c:identifier="gst_pad_get_allowed_caps">
-        <doc xml:space="preserve">Gets the capabilities of the allowed media types that can flow through
+        <doc xml:space="preserve"
+             filename="gst/gstpad.c"
+             line="2786">Gets the capabilities of the allowed media types that can flow through
 @pad and its peer.
 
 The allowed capabilities is calculated as the intersection of the results of
 calling gst_pad_query_caps() on @pad and its peer. The caller owns a reference
 on the resulting caps.</doc>
+        <source-position filename="gst/gstpad.h" line="1468"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">the allowed #GstCaps of the
+          <doc xml:space="preserve"
+               filename="gst/gstpad.c"
+               line="2797">the allowed #GstCaps of the
     pad link. Unref the caps when you no longer need it. This
     function returns %NULL when @pad has no peer.
 
@@ -25890,54 +40987,77 @@ MT safe.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstPad.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="2788">a #GstPad.</doc>
             <type name="Pad" c:type="GstPad*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_current_caps" c:identifier="gst_pad_get_current_caps">
-        <doc xml:space="preserve">Gets the capabilities currently configured on @pad with the last
+        <doc xml:space="preserve"
+             filename="gst/gstpad.c"
+             line="2712">Gets the capabilities currently configured on @pad with the last
 #GST_EVENT_CAPS event.</doc>
+        <source-position filename="gst/gstpad.h" line="1460"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">the current caps of the pad with
+          <doc xml:space="preserve"
+               filename="gst/gstpad.c"
+               line="2719">the current caps of the pad with
 incremented ref-count or %NULL when pad has no caps. Unref after usage.</doc>
           <type name="Caps" c:type="GstCaps*"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">a  #GstPad to get the current capabilities of.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="2714">a  #GstPad to get the current capabilities of.</doc>
             <type name="Pad" c:type="GstPad*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_direction" c:identifier="gst_pad_get_direction">
-        <doc xml:space="preserve">Gets the direction of the pad. The direction of the pad is
+        <doc xml:space="preserve"
+             filename="gst/gstpad.c"
+             line="910">Gets the direction of the pad. The direction of the pad is
 decided at construction time so this function does not take
 the LOCK.</doc>
+        <source-position filename="gst/gstpad.h" line="1318"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the #GstPadDirection of the pad.
+          <doc xml:space="preserve"
+               filename="gst/gstpad.c"
+               line="918">the #GstPadDirection of the pad.
 
 MT safe.</doc>
           <type name="PadDirection" c:type="GstPadDirection"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstPad to get the direction of.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="912">a #GstPad to get the direction of.</doc>
             <type name="Pad" c:type="GstPad*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_element_private"
               c:identifier="gst_pad_get_element_private">
-        <doc xml:space="preserve">Gets the private data of a pad.
+        <doc xml:space="preserve"
+             filename="gst/gstpad.c"
+             line="6052">Gets the private data of a pad.
 No locking is performed in this function.</doc>
+        <source-position filename="gst/gstpad.h" line="1357"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">a #gpointer to the private data.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstpad.c"
+               line="6059">a #gpointer to the private data.</doc>
           <type name="gpointer" c:type="gpointer"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstPad to get the private data of.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="6054">the #GstPad to get the private data of.</doc>
             <type name="Pad" c:type="GstPad*"/>
           </instance-parameter>
         </parameters>
@@ -25945,67 +41065,98 @@ No locking is performed in this function.</doc>
       <method name="get_last_flow_return"
               c:identifier="gst_pad_get_last_flow_return"
               version="1.4">
-        <doc xml:space="preserve">Gets the #GstFlowReturn return from the last data passed by this pad.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpad.c"
+             line="6482">Gets the #GstFlowReturn return from the last data passed by this pad.</doc>
+        <source-position filename="gst/gstpad.h" line="1496"/>
         <return-value transfer-ownership="none">
           <type name="FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstPad</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="6484">the #GstPad</doc>
             <type name="Pad" c:type="GstPad*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_offset" c:identifier="gst_pad_get_offset">
-        <doc xml:space="preserve">Get the offset applied to the running time of @pad. @pad has to be a source
+        <doc xml:space="preserve"
+             filename="gst/gstpad.c"
+             line="3903">Get the offset applied to the running time of @pad. @pad has to be a source
 pad.</doc>
+        <source-position filename="gst/gstpad.h" line="1473"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the offset.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstpad.c"
+               line="3910">the offset.</doc>
           <type name="gint64" c:type="gint64"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstPad</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="3905">a #GstPad</doc>
             <type name="Pad" c:type="GstPad*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_pad_template" c:identifier="gst_pad_get_pad_template">
-        <doc xml:space="preserve">Gets the template for @pad.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpad.c"
+             line="2664">Gets the template for @pad.</doc>
+        <source-position filename="gst/gstpad.h" line="1360"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">the #GstPadTemplate from which
+          <doc xml:space="preserve"
+               filename="gst/gstpad.c"
+               line="2670">the #GstPadTemplate from which
     this pad was instantiated, or %NULL if this pad has no
     template. Unref after usage.</doc>
           <type name="PadTemplate" c:type="GstPadTemplate*"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstPad.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="2666">a #GstPad.</doc>
             <type name="Pad" c:type="GstPad*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_pad_template_caps"
               c:identifier="gst_pad_get_pad_template_caps">
-        <doc xml:space="preserve">Gets the capabilities for @pad's template.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpad.c"
+             line="2739">Gets the capabilities for @pad's template.</doc>
+        <source-position filename="gst/gstpad.h" line="1455"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the #GstCaps of this pad template.
+          <doc xml:space="preserve"
+               filename="gst/gstpad.c"
+               line="2745">the #GstCaps of this pad template.
 Unref after usage.</doc>
           <type name="Caps" c:type="GstCaps*"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstPad to get the template capabilities from.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="2741">a #GstPad to get the template capabilities from.</doc>
             <type name="Pad" c:type="GstPad*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_parent_element"
               c:identifier="gst_pad_get_parent_element">
-        <doc xml:space="preserve">Gets the parent of @pad, cast to a #GstElement. If a @pad has no parent or
+        <doc xml:space="preserve"
+             filename="gst/gstutils.c"
+             line="2631">Gets the parent of @pad, cast to a #GstElement. If a @pad has no parent or
 its parent is not an element, return %NULL.</doc>
+        <source-position filename="gst/gstutils.h" line="1066"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">the parent of the pad. The
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="2638">the parent of the pad. The
 caller has a reference on the parent, so unref when you're finished
 with it.
 
@@ -26014,29 +41165,40 @@ MT safe.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">a pad</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="2633">a pad</doc>
             <type name="Pad" c:type="GstPad*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_peer" c:identifier="gst_pad_get_peer">
-        <doc xml:space="preserve">Gets the peer of @pad. This function refs the peer pad so
+        <doc xml:space="preserve"
+             filename="gst/gstpad.c"
+             line="2759">Gets the peer of @pad. This function refs the peer pad so
 you need to unref it after use.</doc>
+        <source-position filename="gst/gstpad.h" line="1452"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">the peer #GstPad. Unref after usage.
+          <doc xml:space="preserve"
+               filename="gst/gstpad.c"
+               line="2766">the peer #GstPad. Unref after usage.
 
 MT safe.</doc>
           <type name="Pad" c:type="GstPad*"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstPad to get the peer of.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="2761">a #GstPad to get the peer of.</doc>
             <type name="Pad" c:type="GstPad*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_range" c:identifier="gst_pad_get_range">
-        <doc xml:space="preserve">When @pad is flushing this function returns #GST_FLOW_FLUSHING
+        <doc xml:space="preserve"
+             filename="gst/gstpad.c"
+             line="4981">When @pad is flushing this function returns #GST_FLOW_FLUSHING
 immediately and @buffer is %NULL.
 
 Calls the getrange function of @pad, see #GstPadGetRangeFunction for a
@@ -26062,55 +41224,102 @@ When this function returns any other result value than #GST_FLOW_OK, @buffer
 will be unchanged.
 
 This is a lowlevel function. Usually gst_pad_pull_range() is used.</doc>
+        <source-position filename="gst/gstpad.h" line="1507"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstFlowReturn from the pad.
+          <doc xml:space="preserve"
+               filename="gst/gstpad.c"
+               line="5016">a #GstFlowReturn from the pad.
 
 MT safe.</doc>
           <type name="FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">a src #GstPad, returns #GST_FLOW_ERROR if not.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="4983">a src #GstPad, returns #GST_FLOW_ERROR if not.</doc>
             <type name="Pad" c:type="GstPad*"/>
           </instance-parameter>
           <parameter name="offset" transfer-ownership="none">
-            <doc xml:space="preserve">The start offset of the buffer</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="4984">The start offset of the buffer</doc>
             <type name="guint64" c:type="guint64"/>
           </parameter>
           <parameter name="size" transfer-ownership="none">
-            <doc xml:space="preserve">The length of the buffer</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="4985">The length of the buffer</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="buffer"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">a pointer to hold the #GstBuffer,
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="4986">a pointer to hold the #GstBuffer,
     returns #GST_FLOW_ERROR if %NULL.</doc>
             <type name="Buffer" c:type="GstBuffer**"/>
           </parameter>
         </parameters>
       </method>
+      <method name="get_single_internal_link"
+              c:identifier="gst_pad_get_single_internal_link"
+              version="1.18">
+        <doc xml:space="preserve"
+             filename="gst/gstpad.c"
+             line="2853">If there is a single internal link of the given pad, this function will
+return it. Otherwise, it will return NULL.</doc>
+        <source-position filename="gst/gstpad.h" line="1543"/>
+        <return-value transfer-ownership="full" nullable="1">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.c"
+               line="2860">a #GstPad, or %NULL if @pad has none
+or more than one internal links. Unref returned pad with
+gst_object_unref().</doc>
+          <type name="Pad" c:type="GstPad*"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="pad" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="2855">the #GstPad to get the internal link of.</doc>
+            <type name="Pad" c:type="GstPad*"/>
+          </instance-parameter>
+        </parameters>
+      </method>
       <method name="get_sticky_event" c:identifier="gst_pad_get_sticky_event">
-        <doc xml:space="preserve">Returns a new reference of the sticky event of type @event_type
+        <doc xml:space="preserve"
+             filename="gst/gstpad.c"
+             line="6067">Returns a new reference of the sticky event of type @event_type
 from the event.</doc>
+        <source-position filename="gst/gstpad.h" line="1366"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">a #GstEvent of type
+          <doc xml:space="preserve"
+               filename="gst/gstpad.c"
+               line="6076">a #GstEvent of type
 @event_type or %NULL when no event of @event_type was on
 @pad. Unref after usage.</doc>
           <type name="Event" c:type="GstEvent*"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstPad to get the event from.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="6069">the #GstPad to get the event from.</doc>
             <type name="Pad" c:type="GstPad*"/>
           </instance-parameter>
           <parameter name="event_type" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstEventType that should be retrieved.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="6070">the #GstEventType that should be retrieved.</doc>
             <type name="EventType" c:type="GstEventType"/>
           </parameter>
           <parameter name="idx" transfer-ownership="none">
-            <doc xml:space="preserve">the index of the event</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="6071">the index of the event</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
@@ -26118,19 +41327,26 @@ from the event.</doc>
       <method name="get_stream"
               c:identifier="gst_pad_get_stream"
               version="1.10">
-        <doc xml:space="preserve">Returns the current #GstStream for the @pad, or %NULL if none has been
+        <doc xml:space="preserve"
+             filename="gst/gstutils.c"
+             line="4197">Returns the current #GstStream for the @pad, or %NULL if none has been
 set yet, i.e. the pad has not received a stream-start event yet.
 
 This is a convenience wrapper around gst_pad_get_sticky_event() and
 gst_event_parse_stream().</doc>
+        <source-position filename="gst/gstutils.h" line="1126"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">the current #GstStream for @pad, or %NULL.
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="4207">the current #GstStream for @pad, or %NULL.
     unref the returned stream when no longer needed.</doc>
           <type name="Stream" c:type="GstStream*"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">A source #GstPad</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="4199">A source #GstPad</doc>
             <type name="Pad" c:type="GstPad*"/>
           </instance-parameter>
         </parameters>
@@ -26138,7 +41354,9 @@ gst_event_parse_stream().</doc>
       <method name="get_stream_id"
               c:identifier="gst_pad_get_stream_id"
               version="1.2">
-        <doc xml:space="preserve">Returns the current stream-id for the @pad, or %NULL if none has been
+        <doc xml:space="preserve"
+             filename="gst/gstutils.c"
+             line="4156">Returns the current stream-id for the @pad, or %NULL if none has been
 set yet, i.e. the pad has not received a stream-start event yet.
 
 This is a convenience wrapper around gst_pad_get_sticky_event() and
@@ -26146,15 +41364,20 @@ gst_event_parse_stream_start().
 
 The returned stream-id string should be treated as an opaque string, its
 contents should not be interpreted.</doc>
+        <source-position filename="gst/gstutils.h" line="1123"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">a newly-allocated copy of the stream-id for
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="4169">a newly-allocated copy of the stream-id for
     @pad, or %NULL.  g_free() the returned string when no longer
     needed.</doc>
           <type name="utf8" c:type="gchar*"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">A source #GstPad</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="4158">A source #GstPad</doc>
             <type name="Pad" c:type="GstPad*"/>
           </instance-parameter>
         </parameters>
@@ -26162,148 +41385,211 @@ contents should not be interpreted.</doc>
       <method name="get_task_state"
               c:identifier="gst_pad_get_task_state"
               version="1.12">
-        <doc xml:space="preserve">Get @pad task state. If no task is currently
+        <doc xml:space="preserve"
+             filename="gst/gstpad.c"
+             line="6309">Get @pad task state. If no task is currently
 set, #GST_TASK_STOPPED is returned.</doc>
+        <source-position filename="gst/gstpad.h" line="1524"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The current state of @pad's task.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstpad.c"
+               line="6316">The current state of @pad's task.</doc>
           <type name="TaskState" c:type="GstTaskState"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstPad to get task state from</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="6311">the #GstPad to get task state from</doc>
             <type name="Pad" c:type="GstPad*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="has_current_caps" c:identifier="gst_pad_has_current_caps">
-        <doc xml:space="preserve">Check if @pad has caps set on it with a #GST_EVENT_CAPS event.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE when @pad has caps associated with it.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpad.c"
+             line="2686">Check if @pad has caps set on it with a #GST_EVENT_CAPS event.</doc>
+        <source-position filename="gst/gstpad.h" line="1463"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.c"
+               line="2692">%TRUE when @pad has caps associated with it.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">a  #GstPad to check</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="2688">a  #GstPad to check</doc>
             <type name="Pad" c:type="GstPad*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="is_active" c:identifier="gst_pad_is_active">
-        <doc xml:space="preserve">Query if a pad is active</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpad.c"
+             line="1343">Query if a pad is active</doc>
+        <source-position filename="gst/gstpad.h" line="1324"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the pad is active.
+          <doc xml:space="preserve"
+               filename="gst/gstpad.c"
+               line="1349">%TRUE if the pad is active.
 
 MT safe.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstPad to query</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="1345">the #GstPad to query</doc>
             <type name="Pad" c:type="GstPad*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="is_blocked" c:identifier="gst_pad_is_blocked">
-        <doc xml:space="preserve">Checks if the pad is blocked or not. This function returns the
+        <doc xml:space="preserve"
+             filename="gst/gstpad.c"
+             line="1578">Checks if the pad is blocked or not. This function returns the
 last requested state of the pad. It is not certain that the pad
 is actually blocking at this point (see gst_pad_is_blocking()).</doc>
+        <source-position filename="gst/gstpad.h" line="1339"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the pad is blocked.
+          <doc xml:space="preserve"
+               filename="gst/gstpad.c"
+               line="1586">%TRUE if the pad is blocked.
 
 MT safe.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstPad to query</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="1580">the #GstPad to query</doc>
             <type name="Pad" c:type="GstPad*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="is_blocking" c:identifier="gst_pad_is_blocking">
-        <doc xml:space="preserve">Checks if the pad is blocking or not. This is a guaranteed state
+        <doc xml:space="preserve"
+             filename="gst/gstpad.c"
+             line="1604">Checks if the pad is blocking or not. This is a guaranteed state
 of whether the pad is actually blocking on a #GstBuffer or a #GstEvent.</doc>
+        <source-position filename="gst/gstpad.h" line="1342"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the pad is blocking.
+          <doc xml:space="preserve"
+               filename="gst/gstpad.c"
+               line="1611">%TRUE if the pad is blocking.
 
 MT safe.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstPad to query</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="1606">the #GstPad to query</doc>
             <type name="Pad" c:type="GstPad*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="is_linked" c:identifier="gst_pad_is_linked">
-        <doc xml:space="preserve">Checks if a @pad is linked to another pad or not.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpad.c"
+             line="2213">Checks if a @pad is linked to another pad or not.</doc>
+        <source-position filename="gst/gstpad.h" line="1449"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the pad is linked, %FALSE otherwise.
+          <doc xml:space="preserve"
+               filename="gst/gstpad.c"
+               line="2219">%TRUE if the pad is linked, %FALSE otherwise.
 
 MT safe.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">pad to check</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="2215">pad to check</doc>
             <type name="Pad" c:type="GstPad*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="iterate_internal_links"
               c:identifier="gst_pad_iterate_internal_links">
-        <doc xml:space="preserve">Gets an iterator for the pads to which the given pad is linked to inside
+        <doc xml:space="preserve"
+             filename="gst/gstpad.c"
+             line="2985">Gets an iterator for the pads to which the given pad is linked to inside
 of the parent element.
 
 Each #GstPad element yielded by the iterator will have its refcount increased,
 so unref after use.
 
 Free-function: gst_iterator_free</doc>
+        <source-position filename="gst/gstpad.h" line="1535"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">a new #GstIterator of #GstPad
+          <doc xml:space="preserve"
+               filename="gst/gstpad.c"
+               line="2997">a new #GstIterator of #GstPad
     or %NULL when the pad does not have an iterator function
     configured. Use gst_iterator_free() after usage.</doc>
           <type name="Iterator" c:type="GstIterator*"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">the GstPad to get the internal links of.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="2987">the GstPad to get the internal links of.</doc>
             <type name="Pad" c:type="GstPad*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="iterate_internal_links_default"
               c:identifier="gst_pad_iterate_internal_links_default">
-        <doc xml:space="preserve">Iterate the list of pads to which the given pad is linked to inside of
+        <doc xml:space="preserve"
+             filename="gst/gstpad.c"
+             line="2919">Iterate the list of pads to which the given pad is linked to inside of
 the parent element.
 This is the default handler, and thus returns an iterator of all of the
 pads inside the parent element with opposite direction.
 
 The caller must free this iterator after use with gst_iterator_free().</doc>
+        <source-position filename="gst/gstpad.h" line="1538"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">a #GstIterator of #GstPad, or %NULL if @pad
+          <doc xml:space="preserve"
+               filename="gst/gstpad.c"
+               line="2931">a #GstIterator of #GstPad, or %NULL if @pad
 has no parent. Unref each returned pad with gst_object_unref().</doc>
           <type name="Iterator" c:type="GstIterator*"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstPad to get the internal links of.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="2921">the #GstPad to get the internal links of.</doc>
             <type name="Pad" c:type="GstPad*"/>
           </instance-parameter>
           <parameter name="parent"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">the parent of @pad or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="2922">the parent of @pad or %NULL</doc>
             <type name="Object" c:type="GstObject*"/>
           </parameter>
         </parameters>
       </method>
       <method name="link" c:identifier="gst_pad_link">
-        <doc xml:space="preserve">Links the source pad and the sink pad.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">A result code indicating if the connection worked or
+        <doc xml:space="preserve"
+             filename="gst/gstpad.c"
+             line="2630">Links the source pad and the sink pad.</doc>
+        <source-position filename="gst/gstpad.h" line="1440"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.c"
+               line="2637">A result code indicating if the connection worked or
          what went wrong.
 
 MT Safe.</doc>
@@ -26311,17 +41597,23 @@ MT Safe.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="srcpad" transfer-ownership="none">
-            <doc xml:space="preserve">the source #GstPad to link.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="2632">the source #GstPad to link.</doc>
             <type name="Pad" c:type="GstPad*"/>
           </instance-parameter>
           <parameter name="sinkpad" transfer-ownership="none">
-            <doc xml:space="preserve">the sink #GstPad to link.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="2633">the sink #GstPad to link.</doc>
             <type name="Pad" c:type="GstPad*"/>
           </parameter>
         </parameters>
       </method>
       <method name="link_full" c:identifier="gst_pad_link_full">
-        <doc xml:space="preserve">Links the source pad and the sink pad.
+        <doc xml:space="preserve"
+             filename="gst/gstpad.c"
+             line="2477">Links the source pad and the sink pad.
 
 This variant of #gst_pad_link provides a more granular control on the
 checks being done when linking. While providing some considerable speedups
@@ -26330,22 +41622,31 @@ can cause severe issues. Refer to the documentation of #GstPadLinkCheck
 for more information.
 
 MT Safe.</doc>
+        <source-position filename="gst/gstpad.h" line="1443"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">A result code indicating if the connection worked or
+          <doc xml:space="preserve"
+               filename="gst/gstpad.c"
+               line="2493">A result code indicating if the connection worked or
          what went wrong.</doc>
           <type name="PadLinkReturn" c:type="GstPadLinkReturn"/>
         </return-value>
         <parameters>
           <instance-parameter name="srcpad" transfer-ownership="none">
-            <doc xml:space="preserve">the source #GstPad to link.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="2479">the source #GstPad to link.</doc>
             <type name="Pad" c:type="GstPad*"/>
           </instance-parameter>
           <parameter name="sinkpad" transfer-ownership="none">
-            <doc xml:space="preserve">the sink #GstPad to link.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="2480">the sink #GstPad to link.</doc>
             <type name="Pad" c:type="GstPad*"/>
           </parameter>
           <parameter name="flags" transfer-ownership="none">
-            <doc xml:space="preserve">the checks to validate when linking</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="2481">the checks to validate when linking</doc>
             <type name="PadLinkCheck" c:type="GstPadLinkCheck"/>
           </parameter>
         </parameters>
@@ -26353,24 +41654,33 @@ MT Safe.</doc>
       <method name="link_maybe_ghosting"
               c:identifier="gst_pad_link_maybe_ghosting"
               version="1.10">
-        <doc xml:space="preserve">Links @src to @sink, creating any #GstGhostPad's in between as necessary.
+        <doc xml:space="preserve"
+             filename="gst/gstutils.c"
+             line="1742">Links @src to @sink, creating any #GstGhostPad's in between as necessary.
 
 This is a convenience function to save having to create and add intermediate
 #GstGhostPad's as required for linking across #GstBin boundaries.
 
 If @src or @sink pads don't have parent elements or do not share a common
 ancestor, the link will fail.</doc>
+        <source-position filename="gst/gstutils.h" line="1092"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">whether the link succeeded.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="1755">whether the link succeeded.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="src" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstPad</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="1744">a #GstPad</doc>
             <type name="Pad" c:type="GstPad*"/>
           </instance-parameter>
           <parameter name="sink" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstPad</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="1745">a #GstPad</doc>
             <type name="Pad" c:type="GstPad*"/>
           </parameter>
         </parameters>
@@ -26378,7 +41688,9 @@ ancestor, the link will fail.</doc>
       <method name="link_maybe_ghosting_full"
               c:identifier="gst_pad_link_maybe_ghosting_full"
               version="1.10">
-        <doc xml:space="preserve">Links @src to @sink, creating any #GstGhostPad's in between as necessary.
+        <doc xml:space="preserve"
+             filename="gst/gstutils.c"
+             line="1710">Links @src to @sink, creating any #GstGhostPad's in between as necessary.
 
 This is a convenience function to save having to create and add intermediate
 #GstGhostPad's as required for linking across #GstBin boundaries.
@@ -26389,111 +41701,159 @@ ancestor, the link will fail.
 Calling gst_pad_link_maybe_ghosting_full() with
 @flags == %GST_PAD_LINK_CHECK_DEFAULT is the recommended way of linking
 pads with safety checks applied.</doc>
+        <source-position filename="gst/gstutils.h" line="1095"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">whether the link succeeded.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="1728">whether the link succeeded.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="src" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstPad</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="1712">a #GstPad</doc>
             <type name="Pad" c:type="GstPad*"/>
           </instance-parameter>
           <parameter name="sink" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstPad</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="1713">a #GstPad</doc>
             <type name="Pad" c:type="GstPad*"/>
           </parameter>
           <parameter name="flags" transfer-ownership="none">
-            <doc xml:space="preserve">some #GstPadLinkCheck flags</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="1714">some #GstPadLinkCheck flags</doc>
             <type name="PadLinkCheck" c:type="GstPadLinkCheck"/>
           </parameter>
         </parameters>
       </method>
       <method name="mark_reconfigure" c:identifier="gst_pad_mark_reconfigure">
-        <doc xml:space="preserve">Mark a pad for needing reconfiguration. The next call to
+        <doc xml:space="preserve"
+             filename="gst/gstpad.c"
+             line="1681">Mark a pad for needing reconfiguration. The next call to
 gst_pad_check_reconfigure() will return %TRUE after this call.</doc>
+        <source-position filename="gst/gstpad.h" line="1345"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstPad to mark</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="1683">the #GstPad to mark</doc>
             <type name="Pad" c:type="GstPad*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="needs_reconfigure"
               c:identifier="gst_pad_needs_reconfigure">
-        <doc xml:space="preserve">Check the #GST_PAD_FLAG_NEED_RECONFIGURE flag on @pad and return %TRUE
+        <doc xml:space="preserve"
+             filename="gst/gstpad.c"
+             line="1630">Check the #GST_PAD_FLAG_NEED_RECONFIGURE flag on @pad and return %TRUE
 if the flag was set.</doc>
+        <source-position filename="gst/gstpad.h" line="1348"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE is the GST_PAD_FLAG_NEED_RECONFIGURE flag is set on @pad.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstpad.c"
+               line="1637">%TRUE is the GST_PAD_FLAG_NEED_RECONFIGURE flag is set on @pad.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstPad to check</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="1632">the #GstPad to check</doc>
             <type name="Pad" c:type="GstPad*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="pause_task" c:identifier="gst_pad_pause_task">
-        <doc xml:space="preserve">Pause the task of @pad. This function will also wait until the
+        <doc xml:space="preserve"
+             filename="gst/gstpad.c"
+             line="6263">Pause the task of @pad. This function will also wait until the
 function executed by the task is finished if this function is not
 called from the task function.</doc>
+        <source-position filename="gst/gstpad.h" line="1518"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a %TRUE if the task could be paused or %FALSE when the pad
+          <doc xml:space="preserve"
+               filename="gst/gstpad.c"
+               line="6271">a %TRUE if the task could be paused or %FALSE when the pad
 has no task.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstPad to pause the task of</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="6265">the #GstPad to pause the task of</doc>
             <type name="Pad" c:type="GstPad*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="peer_query" c:identifier="gst_pad_peer_query">
-        <doc xml:space="preserve">Performs gst_pad_query() on the peer of @pad.
+        <doc xml:space="preserve"
+             filename="gst/gstpad.c"
+             line="4217">Performs gst_pad_query() on the peer of @pad.
 
 The caller is responsible for both the allocation and deallocation of
 the query structure.</doc>
+        <source-position filename="gst/gstpad.h" line="1551"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the query could be performed. This function returns %FALSE
+          <doc xml:space="preserve"
+               filename="gst/gstpad.c"
+               line="4227">%TRUE if the query could be performed. This function returns %FALSE
 if @pad has no peer.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstPad to invoke the peer query on.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="4219">a #GstPad to invoke the peer query on.</doc>
             <type name="Pad" c:type="GstPad*"/>
           </instance-parameter>
           <parameter name="query" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstQuery to perform.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="4220">the #GstQuery to perform.</doc>
             <type name="Query" c:type="GstQuery*"/>
           </parameter>
         </parameters>
       </method>
       <method name="peer_query_accept_caps"
               c:identifier="gst_pad_peer_query_accept_caps">
-        <doc xml:space="preserve">Check if the peer of @pad accepts @caps. If @pad has no peer, this function
+        <doc xml:space="preserve"
+             filename="gst/gstutils.c"
+             line="3198">Check if the peer of @pad accepts @caps. If @pad has no peer, this function
 returns %TRUE.</doc>
+        <source-position filename="gst/gstutils.h" line="1111"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the peer of @pad can accept the caps or @pad has no peer.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="3206">%TRUE if the peer of @pad can accept the caps or @pad has no peer.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">a  #GstPad to check the peer of</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="3200">a  #GstPad to check the peer of</doc>
             <type name="Pad" c:type="GstPad*"/>
           </instance-parameter>
           <parameter name="caps" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstCaps to check on the pad</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="3201">a #GstCaps to check on the pad</doc>
             <type name="Caps" c:type="GstCaps*"/>
           </parameter>
         </parameters>
       </method>
       <method name="peer_query_caps" c:identifier="gst_pad_peer_query_caps">
-        <doc xml:space="preserve">Gets the capabilities of the peer connected to this pad. Similar to
+        <doc xml:space="preserve"
+             filename="gst/gstutils.c"
+             line="3121">Gets the capabilities of the peer connected to this pad. Similar to
 gst_pad_query_caps().
 
 When called on srcpads @filter contains the caps that
@@ -26501,76 +41861,107 @@ upstream could produce in the order preferred by upstream. When
 called on sinkpads @filter contains the caps accepted by
 downstream in the preferred order. @filter might be %NULL but
 if it is not %NULL the returned caps will be a subset of @filter.</doc>
+        <source-position filename="gst/gstutils.h" line="1108"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the caps of the peer pad with incremented
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="3135">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.</doc>
           <type name="Caps" c:type="GstCaps*"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">a  #GstPad to get the capabilities of.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="3123">a  #GstPad to get the capabilities of.</doc>
             <type name="Pad" c:type="GstPad*"/>
           </instance-parameter>
           <parameter name="filter"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">a #GstCaps filter, or %NULL.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="3124">a #GstCaps filter, or %NULL.</doc>
             <type name="Caps" c:type="GstCaps*"/>
           </parameter>
         </parameters>
       </method>
       <method name="peer_query_convert"
               c:identifier="gst_pad_peer_query_convert">
-        <doc xml:space="preserve">Queries the peer pad of a given sink pad to convert @src_val in @src_format
+        <doc xml:space="preserve"
+             filename="gst/gstutils.c"
+             line="3036">Queries the peer pad of a given sink pad to convert @src_val in @src_format
 to @dest_format.</doc>
+        <source-position filename="gst/gstutils.h" line="1105"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the query could be performed.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="3048">%TRUE if the query could be performed.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstPad, on whose peer pad to invoke the convert query on.
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="3038">a #GstPad, on whose peer pad to invoke the convert query on.
       Must be a sink pad.</doc>
             <type name="Pad" c:type="GstPad*"/>
           </instance-parameter>
           <parameter name="src_format" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstFormat to convert from.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="3040">a #GstFormat to convert from.</doc>
             <type name="Format" c:type="GstFormat"/>
           </parameter>
           <parameter name="src_val" transfer-ownership="none">
-            <doc xml:space="preserve">a value to convert.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="3041">a value to convert.</doc>
             <type name="gint64" c:type="gint64"/>
           </parameter>
           <parameter name="dest_format" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstFormat to convert to.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="3042">the #GstFormat to convert to.</doc>
             <type name="Format" c:type="GstFormat"/>
           </parameter>
           <parameter name="dest_val"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">a pointer to the result.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="3043">a pointer to the result.</doc>
             <type name="gint64" c:type="gint64*"/>
           </parameter>
         </parameters>
       </method>
       <method name="peer_query_duration"
               c:identifier="gst_pad_peer_query_duration">
-        <doc xml:space="preserve">Queries the peer pad of a given sink pad for the total stream duration.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the query could be performed.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstutils.c"
+             line="2967">Queries the peer pad of a given sink pad for the total stream duration.</doc>
+        <source-position filename="gst/gstutils.h" line="1102"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="2977">%TRUE if the query could be performed.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstPad on whose peer pad to invoke the duration query on.
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="2969">a #GstPad on whose peer pad to invoke the duration query on.
       Must be a sink pad.</doc>
             <type name="Pad" c:type="GstPad*"/>
           </instance-parameter>
           <parameter name="format" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstFormat requested</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="2971">the #GstFormat requested</doc>
             <type name="Format" c:type="GstFormat"/>
           </parameter>
           <parameter name="duration"
@@ -26579,7 +41970,9 @@ to @dest_format.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">a location in which to store the total
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="2972">a location in which to store the total
     duration, or %NULL.</doc>
             <type name="gint64" c:type="gint64*"/>
           </parameter>
@@ -26587,19 +41980,28 @@ to @dest_format.</doc>
       </method>
       <method name="peer_query_position"
               c:identifier="gst_pad_peer_query_position">
-        <doc xml:space="preserve">Queries the peer of a given sink pad for the stream position.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the query could be performed.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstutils.c"
+             line="2904">Queries the peer of a given sink pad for the stream position.</doc>
+        <source-position filename="gst/gstutils.h" line="1099"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="2914">%TRUE if the query could be performed.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstPad on whose peer to invoke the position query on.
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="2906">a #GstPad on whose peer to invoke the position query on.
       Must be a sink pad.</doc>
             <type name="Pad" c:type="GstPad*"/>
           </instance-parameter>
           <parameter name="format" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstFormat requested</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="2908">the #GstFormat requested</doc>
             <type name="Format" c:type="GstFormat"/>
           </parameter>
           <parameter name="cur"
@@ -26608,7 +42010,9 @@ to @dest_format.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">a location in which to store the current
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="2909">a location in which to store the current
     position, or %NULL.</doc>
             <type name="gint64" c:type="gint64*"/>
           </parameter>
@@ -26616,51 +42020,71 @@ to @dest_format.</doc>
       </method>
       <method name="proxy_query_accept_caps"
               c:identifier="gst_pad_proxy_query_accept_caps">
-        <doc xml:space="preserve">Checks if all internally linked pads of @pad accepts the caps in @query and
+        <doc xml:space="preserve"
+             filename="gst/gstutils.c"
+             line="2759">Checks if all internally linked pads of @pad accepts the caps in @query and
 returns the intersection of the results.
 
 This function is useful as a default accept caps query function for an element
 that can handle any stream format, but requires caps that are acceptable for
 all opposite pads.</doc>
+        <source-position filename="gst/gstutils.h" line="1071"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if @query could be executed</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="2771">%TRUE if @query could be executed</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstPad to proxy.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="2761">a #GstPad to proxy.</doc>
             <type name="Pad" c:type="GstPad*"/>
           </instance-parameter>
           <parameter name="query" transfer-ownership="none">
-            <doc xml:space="preserve">an ACCEPT_CAPS #GstQuery.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="2762">an ACCEPT_CAPS #GstQuery.</doc>
             <type name="Query" c:type="GstQuery*"/>
           </parameter>
         </parameters>
       </method>
       <method name="proxy_query_caps" c:identifier="gst_pad_proxy_query_caps">
-        <doc xml:space="preserve">Calls gst_pad_query_caps() for all internally linked pads of @pad and returns
+        <doc xml:space="preserve"
+             filename="gst/gstutils.c"
+             line="2827">Calls gst_pad_query_caps() for all internally linked pads of @pad and returns
 the intersection of the results.
 
 This function is useful as a default caps query function for an element
 that can handle any stream format, but requires all its pads to have
 the same caps.  Two such elements are tee and adder.</doc>
+        <source-position filename="gst/gstutils.h" line="1074"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if @query could be executed</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="2839">%TRUE if @query could be executed</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstPad to proxy.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="2829">a #GstPad to proxy.</doc>
             <type name="Pad" c:type="GstPad*"/>
           </instance-parameter>
           <parameter name="query" transfer-ownership="none">
-            <doc xml:space="preserve">a CAPS #GstQuery.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="2830">a CAPS #GstQuery.</doc>
             <type name="Query" c:type="GstQuery*"/>
           </parameter>
         </parameters>
       </method>
       <method name="pull_range" c:identifier="gst_pad_pull_range">
-        <doc xml:space="preserve">Pulls a @buffer from the peer pad or fills up a provided buffer.
+        <doc xml:space="preserve"
+             filename="gst/gstpad.c"
+             line="5033">Pulls a @buffer from the peer pad or fills up a provided buffer.
 
 This function will first trigger the pad block signal if it was
 installed.
@@ -26685,37 +42109,50 @@ accordingly.
 Note that less than @size bytes can be returned in @buffer when, for example,
 an EOS condition is near or when @buffer is not large enough to hold @size
 bytes. The caller should check the result buffer size to get the result size.</doc>
+        <source-position filename="gst/gstpad.h" line="1487"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstFlowReturn from the peer pad.
+          <doc xml:space="preserve"
+               filename="gst/gstpad.c"
+               line="5067">a #GstFlowReturn from the peer pad.
 
 MT safe.</doc>
           <type name="FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">a sink #GstPad, returns GST_FLOW_ERROR if not.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="5035">a sink #GstPad, returns GST_FLOW_ERROR if not.</doc>
             <type name="Pad" c:type="GstPad*"/>
           </instance-parameter>
           <parameter name="offset" transfer-ownership="none">
-            <doc xml:space="preserve">The start offset of the buffer</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="5036">The start offset of the buffer</doc>
             <type name="guint64" c:type="guint64"/>
           </parameter>
           <parameter name="size" transfer-ownership="none">
-            <doc xml:space="preserve">The length of the buffer</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="5037">The length of the buffer</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="buffer"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">a pointer to hold the #GstBuffer, returns
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="5038">a pointer to hold the #GstBuffer, returns
     GST_FLOW_ERROR if %NULL.</doc>
             <type name="Buffer" c:type="GstBuffer**"/>
           </parameter>
         </parameters>
       </method>
       <method name="push" c:identifier="gst_pad_push">
-        <doc xml:space="preserve">Pushes a buffer to the peer of @pad.
+        <doc xml:space="preserve"
+             filename="gst/gstpad.c"
+             line="4742">Pushes a buffer to the peer of @pad.
 
 This function will call installed block probes before triggering any
 installed data probes.
@@ -26726,50 +42163,68 @@ be returned.
 
 In all cases, success or failure, the caller loses its reference to @buffer
 after calling this function.</doc>
+        <source-position filename="gst/gstpad.h" line="1481"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstFlowReturn from the peer pad.
+          <doc xml:space="preserve"
+               filename="gst/gstpad.c"
+               line="4760">a #GstFlowReturn from the peer pad.
 
 MT safe.</doc>
           <type name="FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">a source #GstPad, returns #GST_FLOW_ERROR if not.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="4744">a source #GstPad, returns #GST_FLOW_ERROR if not.</doc>
             <type name="Pad" c:type="GstPad*"/>
           </instance-parameter>
           <parameter name="buffer" transfer-ownership="full">
-            <doc xml:space="preserve">the #GstBuffer to push returns GST_FLOW_ERROR
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="4745">the #GstBuffer to push returns GST_FLOW_ERROR
     if not.</doc>
             <type name="Buffer" c:type="GstBuffer*"/>
           </parameter>
         </parameters>
       </method>
       <method name="push_event" c:identifier="gst_pad_push_event">
-        <doc xml:space="preserve">Sends the event to the peer of the given pad. This function is
+        <doc xml:space="preserve"
+             filename="gst/gstpad.c"
+             line="5559">Sends the event to the peer of the given pad. This function is
 mainly used by elements to send events to their peer
 elements.
 
 This function takes ownership of the provided event so you should
 gst_event_ref() it if you want to reuse the event after this call.</doc>
+        <source-position filename="gst/gstpad.h" line="1490"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the event was handled.
+          <doc xml:space="preserve"
+               filename="gst/gstpad.c"
+               line="5571">%TRUE if the event was handled.
 
 MT safe.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstPad to push the event to.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="5561">a #GstPad to push the event to.</doc>
             <type name="Pad" c:type="GstPad*"/>
           </instance-parameter>
           <parameter name="event" transfer-ownership="full">
-            <doc xml:space="preserve">the #GstEvent to send to the pad.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="5562">the #GstEvent to send to the pad.</doc>
             <type name="Event" c:type="GstEvent*"/>
           </parameter>
         </parameters>
       </method>
       <method name="push_list" c:identifier="gst_pad_push_list">
-        <doc xml:space="preserve">Pushes a buffer list to the peer of @pad.
+        <doc xml:space="preserve"
+             filename="gst/gstpad.c"
+             line="4780">Pushes a buffer list to the peer of @pad.
 
 This function will call installed block probes before triggering any
 installed data probes.
@@ -26782,26 +42237,35 @@ chained via gst_pad_chain().
 
 In all cases, success or failure, the caller loses its reference to @list
 after calling this function.</doc>
+        <source-position filename="gst/gstpad.h" line="1484"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstFlowReturn from the peer pad.
+          <doc xml:space="preserve"
+               filename="gst/gstpad.c"
+               line="4800">a #GstFlowReturn from the peer pad.
 
 MT safe.</doc>
           <type name="FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">a source #GstPad, returns #GST_FLOW_ERROR if not.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="4782">a source #GstPad, returns #GST_FLOW_ERROR if not.</doc>
             <type name="Pad" c:type="GstPad*"/>
           </instance-parameter>
           <parameter name="list" transfer-ownership="full">
-            <doc xml:space="preserve">the #GstBufferList to push returns GST_FLOW_ERROR
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="4783">the #GstBufferList to push returns GST_FLOW_ERROR
     if not.</doc>
             <type name="BufferList" c:type="GstBufferList*"/>
           </parameter>
         </parameters>
       </method>
       <method name="query" c:identifier="gst_pad_query">
-        <doc xml:space="preserve">Dispatches a query to a pad. The query should have been allocated by the
+        <doc xml:space="preserve"
+             filename="gst/gstpad.c"
+             line="4084">Dispatches a query to a pad. The query should have been allocated by the
 caller via one of the type-specific allocation functions. The element that
 the pad belongs to is responsible for filling the query with an appropriate
 response, which should then be parsed with a type-specific query parsing
@@ -26811,41 +42275,59 @@ Again, the caller is responsible for both the allocation and deallocation of
 the query structure.
 
 Please also note that some queries might need a running pipeline to work.</doc>
+        <source-position filename="gst/gstpad.h" line="1548"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the query could be performed.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstpad.c"
+               line="4100">%TRUE if the query could be performed.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstPad to invoke the default query on.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="4086">a #GstPad to invoke the default query on.</doc>
             <type name="Pad" c:type="GstPad*"/>
           </instance-parameter>
           <parameter name="query" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstQuery to perform.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="4087">the #GstQuery to perform.</doc>
             <type name="Query" c:type="GstQuery*"/>
           </parameter>
         </parameters>
       </method>
       <method name="query_accept_caps"
               c:identifier="gst_pad_query_accept_caps">
-        <doc xml:space="preserve">Check if the given pad accepts the caps.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the pad can accept the caps.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstutils.c"
+             line="3167">Check if the given pad accepts the caps.</doc>
+        <source-position filename="gst/gstutils.h" line="1089"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="3174">%TRUE if the pad can accept the caps.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstPad to check</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="3169">a #GstPad to check</doc>
             <type name="Pad" c:type="GstPad*"/>
           </instance-parameter>
           <parameter name="caps" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstCaps to check on the pad</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="3170">a #GstCaps to check on the pad</doc>
             <type name="Caps" c:type="GstCaps*"/>
           </parameter>
         </parameters>
       </method>
       <method name="query_caps" c:identifier="gst_pad_query_caps">
-        <doc xml:space="preserve">Gets the capabilities this pad can produce or consume.
+        <doc xml:space="preserve"
+             filename="gst/gstutils.c"
+             line="3070">Gets the capabilities this pad can produce or consume.
 Note that this method doesn't necessarily return the caps set by sending a
 gst_event_new_caps() - use gst_pad_get_current_caps() for that instead.
 gst_pad_query_caps returns all possible caps a pad can operate with, using
@@ -26860,97 +42342,139 @@ if it is not %NULL the returned caps will be a subset of @filter.
 
 Note that this function does not return writable #GstCaps, use
 gst_caps_make_writable() before modifying the caps.</doc>
+        <source-position filename="gst/gstutils.h" line="1086"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the caps of the pad with incremented ref-count.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="3091">the caps of the pad with incremented ref-count.</doc>
           <type name="Caps" c:type="GstCaps*"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">a  #GstPad to get the capabilities of.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="3072">a  #GstPad to get the capabilities of.</doc>
             <type name="Pad" c:type="GstPad*"/>
           </instance-parameter>
           <parameter name="filter"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">suggested #GstCaps, or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="3073">suggested #GstCaps, or %NULL</doc>
             <type name="Caps" c:type="GstCaps*"/>
           </parameter>
         </parameters>
       </method>
       <method name="query_convert" c:identifier="gst_pad_query_convert">
-        <doc xml:space="preserve">Queries a pad to convert @src_val in @src_format to @dest_format.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the query could be performed.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstutils.c"
+             line="3000">Queries a pad to convert @src_val in @src_format to @dest_format.</doc>
+        <source-position filename="gst/gstutils.h" line="1083"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="3010">%TRUE if the query could be performed.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstPad to invoke the convert query on.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="3002">a #GstPad to invoke the convert query on.</doc>
             <type name="Pad" c:type="GstPad*"/>
           </instance-parameter>
           <parameter name="src_format" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstFormat to convert from.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="3003">a #GstFormat to convert from.</doc>
             <type name="Format" c:type="GstFormat"/>
           </parameter>
           <parameter name="src_val" transfer-ownership="none">
-            <doc xml:space="preserve">a value to convert.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="3004">a value to convert.</doc>
             <type name="gint64" c:type="gint64"/>
           </parameter>
           <parameter name="dest_format" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstFormat to convert to.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="3005">the #GstFormat to convert to.</doc>
             <type name="Format" c:type="GstFormat"/>
           </parameter>
           <parameter name="dest_val"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">a pointer to the result.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="3006">a pointer to the result.</doc>
             <type name="gint64" c:type="gint64*"/>
           </parameter>
         </parameters>
       </method>
       <method name="query_default" c:identifier="gst_pad_query_default">
-        <doc xml:space="preserve">Invokes the default query handler for the given pad.
+        <doc xml:space="preserve"
+             filename="gst/gstpad.c"
+             line="3456">Invokes the default query handler for the given pad.
 The query is sent to all pads internally linked to @pad. Note that
 if there are many possible sink pads that are internally linked to
 @pad, only one will be sent the query.
 Multi-sinkpad elements should implement custom query handlers.</doc>
+        <source-position filename="gst/gstpad.h" line="1558"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the query was performed successfully.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstpad.c"
+               line="3468">%TRUE if the query was performed successfully.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstPad to call the default query handler on.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="3458">a #GstPad to call the default query handler on.</doc>
             <type name="Pad" c:type="GstPad*"/>
           </instance-parameter>
           <parameter name="parent"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">the parent of @pad or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="3459">the parent of @pad or %NULL</doc>
             <type name="Object" c:type="GstObject*"/>
           </parameter>
           <parameter name="query" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstQuery to handle.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="3460">the #GstQuery to handle.</doc>
             <type name="Query" c:type="GstQuery*"/>
           </parameter>
         </parameters>
       </method>
       <method name="query_duration" c:identifier="gst_pad_query_duration">
-        <doc xml:space="preserve">Queries a pad for the total stream duration.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the query could be performed.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstutils.c"
+             line="2936">Queries a pad for the total stream duration.</doc>
+        <source-position filename="gst/gstutils.h" line="1080"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="2945">%TRUE if the query could be performed.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstPad to invoke the duration query on.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="2938">a #GstPad to invoke the duration query on.</doc>
             <type name="Pad" c:type="GstPad*"/>
           </instance-parameter>
           <parameter name="format" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstFormat requested</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="2939">the #GstFormat requested</doc>
             <type name="Format" c:type="GstFormat"/>
           </parameter>
           <parameter name="duration"
@@ -26959,25 +42483,36 @@ Multi-sinkpad elements should implement custom query handlers.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">a location in which to store the total
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="2940">a location in which to store the total
     duration, or %NULL.</doc>
             <type name="gint64" c:type="gint64*"/>
           </parameter>
         </parameters>
       </method>
       <method name="query_position" c:identifier="gst_pad_query_position">
-        <doc xml:space="preserve">Queries a pad for the stream position.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the query could be performed.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstutils.c"
+             line="2874">Queries a pad for the stream position.</doc>
+        <source-position filename="gst/gstutils.h" line="1077"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="2882">%TRUE if the query could be performed.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstPad to invoke the position query on.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="2876">a #GstPad to invoke the position query on.</doc>
             <type name="Pad" c:type="GstPad*"/>
           </instance-parameter>
           <parameter name="format" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstFormat requested</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="2877">the #GstFormat requested</doc>
             <type name="Format" c:type="GstFormat"/>
           </parameter>
           <parameter name="cur"
@@ -26986,31 +42521,42 @@ Multi-sinkpad elements should implement custom query handlers.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">A location in which to store the current position, or %NULL.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="2878">A location in which to store the current position, or %NULL.</doc>
             <type name="gint64" c:type="gint64*"/>
           </parameter>
         </parameters>
       </method>
       <method name="remove_probe" c:identifier="gst_pad_remove_probe">
-        <doc xml:space="preserve">Remove the probe with @id from @pad.
+        <doc xml:space="preserve"
+             filename="gst/gstpad.c"
+             line="1541">Remove the probe with @id from @pad.
 
 MT safe.</doc>
+        <source-position filename="gst/gstpad.h" line="1336"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstPad with the probe</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="1543">the #GstPad with the probe</doc>
             <type name="Pad" c:type="GstPad*"/>
           </instance-parameter>
           <parameter name="id" transfer-ownership="none">
-            <doc xml:space="preserve">the probe id to remove</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="1544">the probe id to remove</doc>
             <type name="gulong" c:type="gulong"/>
           </parameter>
         </parameters>
       </method>
       <method name="send_event" c:identifier="gst_pad_send_event">
-        <doc xml:space="preserve">Sends the event to the pad. This function can be used
+        <doc xml:space="preserve"
+             filename="gst/gstpad.c"
+             line="5966">Sends the event to the pad. This function can be used
 by applications to send events in the pipeline.
 
 If @pad is a source pad, @event should be an upstream event. If @pad is a
@@ -27030,34 +42576,46 @@ all necessary locks and checks.
 
 This function takes ownership of the provided event so you should
 gst_event_ref() it if you want to reuse the event after this call.</doc>
+        <source-position filename="gst/gstpad.h" line="1510"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the event was handled.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstpad.c"
+               line="5992">%TRUE if the event was handled.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstPad to send the event to.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="5968">a #GstPad to send the event to.</doc>
             <type name="Pad" c:type="GstPad*"/>
           </instance-parameter>
           <parameter name="event" transfer-ownership="full">
-            <doc xml:space="preserve">the #GstEvent to send to the pad.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="5969">the #GstEvent to send to the pad.</doc>
             <type name="Event" c:type="GstEvent*"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_activate_function_full"
               c:identifier="gst_pad_set_activate_function_full">
-        <doc xml:space="preserve">Sets the given activate function for @pad. The activate function will
+        <doc xml:space="preserve"
+             filename="gst/gstpad.c"
+             line="1706">Sets the given activate function for @pad. The activate function will
 dispatch to gst_pad_activate_mode() to perform the actual activation.
 Only makes sense to set on sink pads.
 
 Call this function if your sink pad can start a pull-based task.</doc>
+        <source-position filename="gst/gstpad.h" line="1375"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstPad.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="1708">a #GstPad.</doc>
             <type name="Pad" c:type="GstPad*"/>
           </instance-parameter>
           <parameter name="activate"
@@ -27065,32 +42623,43 @@ Call this function if your sink pad can start a pull-based task.</doc>
                      scope="notified"
                      closure="1"
                      destroy="2">
-            <doc xml:space="preserve">the #GstPadActivateFunction to set.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="1709">the #GstPadActivateFunction to set.</doc>
             <type name="PadActivateFunction" c:type="GstPadActivateFunction"/>
           </parameter>
           <parameter name="user_data"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">user_data passed to @notify</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="1710">user_data passed to @notify</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
           <parameter name="notify" transfer-ownership="none" scope="async">
-            <doc xml:space="preserve">notify called when @activate will not be used anymore.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="1711">notify called when @activate will not be used anymore.</doc>
             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_activatemode_function_full"
               c:identifier="gst_pad_set_activatemode_function_full">
-        <doc xml:space="preserve">Sets the given activate_mode function for the pad. An activate_mode function
+        <doc xml:space="preserve"
+             filename="gst/gstpad.c"
+             line="1743">Sets the given activate_mode function for the pad. An activate_mode function
 prepares the element for data passing.</doc>
+        <source-position filename="gst/gstpad.h" line="1380"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstPad.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="1745">a #GstPad.</doc>
             <type name="Pad" c:type="GstPad*"/>
           </instance-parameter>
           <parameter name="activatemode"
@@ -27098,7 +42667,9 @@ prepares the element for data passing.</doc>
                      scope="notified"
                      closure="1"
                      destroy="2">
-            <doc xml:space="preserve">the #GstPadActivateModeFunction to set.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="1746">the #GstPadActivateModeFunction to set.</doc>
             <type name="PadActivateModeFunction"
                   c:type="GstPadActivateModeFunction"/>
           </parameter>
@@ -27106,17 +42677,23 @@ prepares the element for data passing.</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">user_data passed to @notify</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="1747">user_data passed to @notify</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
           <parameter name="notify" transfer-ownership="none" scope="async">
-            <doc xml:space="preserve">notify called when @activatemode will not be used anymore.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="1748">notify called when @activatemode will not be used anymore.</doc>
             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_active" c:identifier="gst_pad_set_active">
-        <doc xml:space="preserve">Activates or deactivates the given pad.
+        <doc xml:space="preserve"
+             filename="gst/gstpad.c"
+             line="1064">Activates or deactivates the given pad.
 Normally called from within core state change functions.
 
 If @active, makes sure the pad is active. If it is already active, either in
@@ -27125,33 +42702,45 @@ function to perform the actual activation.
 
 If not @active, calls gst_pad_activate_mode() with the pad's current mode
 and a %FALSE argument.</doc>
+        <source-position filename="gst/gstpad.h" line="1321"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the operation was successful.
+          <doc xml:space="preserve"
+               filename="gst/gstpad.c"
+               line="1079">%TRUE if the operation was successful.
 
 MT safe.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstPad to activate or deactivate.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="1066">the #GstPad to activate or deactivate.</doc>
             <type name="Pad" c:type="GstPad*"/>
           </instance-parameter>
           <parameter name="active" transfer-ownership="none">
-            <doc xml:space="preserve">whether or not the pad should be active.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="1067">whether or not the pad should be active.</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_chain_function_full"
               c:identifier="gst_pad_set_chain_function_full">
-        <doc xml:space="preserve">Sets the given chain function for the pad. The chain function is called to
+        <doc xml:space="preserve"
+             filename="gst/gstpad.c"
+             line="1778">Sets the given chain function for the pad. The chain function is called to
 process a #GstBuffer input buffer. see #GstPadChainFunction for more details.</doc>
+        <source-position filename="gst/gstpad.h" line="1387"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">a sink #GstPad.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="1780">a sink #GstPad.</doc>
             <type name="Pad" c:type="GstPad*"/>
           </instance-parameter>
           <parameter name="chain"
@@ -27159,33 +42748,44 @@ process a #GstBuffer input buffer. see #GstPadChainFunction for more details.</d
                      scope="notified"
                      closure="1"
                      destroy="2">
-            <doc xml:space="preserve">the #GstPadChainFunction to set.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="1781">the #GstPadChainFunction to set.</doc>
             <type name="PadChainFunction" c:type="GstPadChainFunction"/>
           </parameter>
           <parameter name="user_data"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">user_data passed to @notify</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="1782">user_data passed to @notify</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
           <parameter name="notify" transfer-ownership="none" scope="async">
-            <doc xml:space="preserve">notify called when @chain will not be used anymore.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="1783">notify called when @chain will not be used anymore.</doc>
             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_chain_list_function_full"
               c:identifier="gst_pad_set_chain_list_function_full">
-        <doc xml:space="preserve">Sets the given chain list function for the pad. The chainlist function is
+        <doc xml:space="preserve"
+             filename="gst/gstpad.c"
+             line="1813">Sets the given chain list function for the pad. The chainlist function is
 called to process a #GstBufferList input buffer list. See
 #GstPadChainListFunction for more details.</doc>
+        <source-position filename="gst/gstpad.h" line="1392"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">a sink #GstPad.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="1815">a sink #GstPad.</doc>
             <type name="Pad" c:type="GstPad*"/>
           </instance-parameter>
           <parameter name="chainlist"
@@ -27193,7 +42793,9 @@ called to process a #GstBufferList input buffer list. See
                      scope="notified"
                      closure="1"
                      destroy="2">
-            <doc xml:space="preserve">the #GstPadChainListFunction to set.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="1816">the #GstPadChainListFunction to set.</doc>
             <type name="PadChainListFunction"
                   c:type="GstPadChainListFunction"/>
           </parameter>
@@ -27201,33 +42803,44 @@ called to process a #GstBufferList input buffer list. See
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">user_data passed to @notify</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="1817">user_data passed to @notify</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
           <parameter name="notify" transfer-ownership="none" scope="async">
-            <doc xml:space="preserve">notify called when @chainlist will not be used anymore.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="1818">notify called when @chainlist will not be used anymore.</doc>
             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_element_private"
               c:identifier="gst_pad_set_element_private">
-        <doc xml:space="preserve">Set the given private data gpointer on the pad.
+        <doc xml:space="preserve"
+             filename="gst/gstpad.c"
+             line="6037">Set the given private data gpointer on the pad.
 This function can only be used by the element that owns the pad.
 No locking is performed in this function.</doc>
+        <source-position filename="gst/gstpad.h" line="1354"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstPad to set the private data of.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="6039">the #GstPad to set the private data of.</doc>
             <type name="Pad" c:type="GstPad*"/>
           </instance-parameter>
           <parameter name="priv"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">The private data to attach to the pad.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="6040">The private data to attach to the pad.</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
         </parameters>
@@ -27235,13 +42848,18 @@ No locking is performed in this function.</doc>
       <method name="set_event_full_function_full"
               c:identifier="gst_pad_set_event_full_function_full"
               version="1.8">
-        <doc xml:space="preserve">Sets the given event handler for the pad.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpad.c"
+             line="1930">Sets the given event handler for the pad.</doc>
+        <source-position filename="gst/gstpad.h" line="1407"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstPad of either direction.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="1932">a #GstPad of either direction.</doc>
             <type name="Pad" c:type="GstPad*"/>
           </instance-parameter>
           <parameter name="event"
@@ -27249,7 +42867,9 @@ No locking is performed in this function.</doc>
                      scope="notified"
                      closure="1"
                      destroy="2">
-            <doc xml:space="preserve">the #GstPadEventFullFunction to set.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="1933">the #GstPadEventFullFunction to set.</doc>
             <type name="PadEventFullFunction"
                   c:type="GstPadEventFullFunction"/>
           </parameter>
@@ -27257,24 +42877,33 @@ No locking is performed in this function.</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">user_data passed to @notify</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="1934">user_data passed to @notify</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
           <parameter name="notify" transfer-ownership="none" scope="async">
-            <doc xml:space="preserve">notify called when @event will not be used anymore.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="1935">notify called when @event will not be used anymore.</doc>
             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_event_function_full"
               c:identifier="gst_pad_set_event_function_full">
-        <doc xml:space="preserve">Sets the given event handler for the pad.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpad.c"
+             line="1886">Sets the given event handler for the pad.</doc>
+        <source-position filename="gst/gstpad.h" line="1402"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstPad of either direction.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="1888">a #GstPad of either direction.</doc>
             <type name="Pad" c:type="GstPad*"/>
           </instance-parameter>
           <parameter name="event"
@@ -27282,33 +42911,44 @@ No locking is performed in this function.</doc>
                      scope="notified"
                      closure="1"
                      destroy="2">
-            <doc xml:space="preserve">the #GstPadEventFunction to set.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="1889">the #GstPadEventFunction to set.</doc>
             <type name="PadEventFunction" c:type="GstPadEventFunction"/>
           </parameter>
           <parameter name="user_data"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">user_data passed to @notify</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="1890">user_data passed to @notify</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
           <parameter name="notify" transfer-ownership="none" scope="async">
-            <doc xml:space="preserve">notify called when @event will not be used anymore.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="1891">notify called when @event will not be used anymore.</doc>
             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_getrange_function_full"
               c:identifier="gst_pad_set_getrange_function_full">
-        <doc xml:space="preserve">Sets the given getrange function for the pad. The getrange function is
+        <doc xml:space="preserve"
+             filename="gst/gstpad.c"
+             line="1850">Sets the given getrange function for the pad. The getrange function is
 called to produce a new #GstBuffer to start the processing pipeline. see
 #GstPadGetRangeFunction for a description of the getrange function.</doc>
+        <source-position filename="gst/gstpad.h" line="1397"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">a source #GstPad.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="1852">a source #GstPad.</doc>
             <type name="Pad" c:type="GstPad*"/>
           </instance-parameter>
           <parameter name="get"
@@ -27316,31 +42956,42 @@ called to produce a new #GstBuffer to start the processing pipeline. see
                      scope="notified"
                      closure="1"
                      destroy="2">
-            <doc xml:space="preserve">the #GstPadGetRangeFunction to set.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="1853">the #GstPadGetRangeFunction to set.</doc>
             <type name="PadGetRangeFunction" c:type="GstPadGetRangeFunction"/>
           </parameter>
           <parameter name="user_data"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">user_data passed to @notify</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="1854">user_data passed to @notify</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
           <parameter name="notify" transfer-ownership="none" scope="async">
-            <doc xml:space="preserve">notify called when @get will not be used anymore.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="1855">notify called when @get will not be used anymore.</doc>
             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_iterate_internal_links_function_full"
               c:identifier="gst_pad_set_iterate_internal_links_function_full">
-        <doc xml:space="preserve">Sets the given internal link iterator function for the pad.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpad.c"
+             line="1999">Sets the given internal link iterator function for the pad.</doc>
+        <source-position filename="gst/gstpad.h" line="1529"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstPad of either direction.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="2001">a #GstPad of either direction.</doc>
             <type name="Pad" c:type="GstPad*"/>
           </instance-parameter>
           <parameter name="iterintlink"
@@ -27348,7 +42999,9 @@ called to produce a new #GstBuffer to start the processing pipeline. see
                      scope="notified"
                      closure="1"
                      destroy="2">
-            <doc xml:space="preserve">the #GstPadIterIntLinkFunction to set.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="2002">the #GstPadIterIntLinkFunction to set.</doc>
             <type name="PadIterIntLinkFunction"
                   c:type="GstPadIterIntLinkFunction"/>
           </parameter>
@@ -27356,18 +43009,24 @@ called to produce a new #GstBuffer to start the processing pipeline. see
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">user_data passed to @notify</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="2003">user_data passed to @notify</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
           <parameter name="notify" transfer-ownership="none" scope="async">
-            <doc xml:space="preserve">notify called when @iterintlink will not be used anymore.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="2004">notify called when @iterintlink will not be used anymore.</doc>
             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_link_function_full"
               c:identifier="gst_pad_set_link_function_full">
-        <doc xml:space="preserve">Sets the given link function for the pad. It will be called when
+        <doc xml:space="preserve"
+             filename="gst/gstpad.c"
+             line="2033">Sets the given link function for the pad. It will be called when
 the pad is linked with another pad.
 
 The return value #GST_PAD_LINK_OK should be used when the connection can be
@@ -27378,12 +43037,15 @@ cannot be made for some reason.
 
 If @link is installed on a source pad, it should call the #GstPadLinkFunction
 of the peer sink pad, if present.</doc>
+        <source-position filename="gst/gstpad.h" line="1423"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstPad.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="2035">a #GstPad.</doc>
             <type name="Pad" c:type="GstPad*"/>
           </instance-parameter>
           <parameter name="link"
@@ -27391,47 +43053,65 @@ of the peer sink pad, if present.</doc>
                      scope="notified"
                      closure="1"
                      destroy="2">
-            <doc xml:space="preserve">the #GstPadLinkFunction to set.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="2036">the #GstPadLinkFunction to set.</doc>
             <type name="PadLinkFunction" c:type="GstPadLinkFunction"/>
           </parameter>
           <parameter name="user_data"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">user_data passed to @notify</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="2037">user_data passed to @notify</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
           <parameter name="notify" transfer-ownership="none" scope="async">
-            <doc xml:space="preserve">notify called when @link will not be used anymore.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="2038">notify called when @link will not be used anymore.</doc>
             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_offset" c:identifier="gst_pad_set_offset">
-        <doc xml:space="preserve">Set the offset that will be applied to the running time of @pad.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpad.c"
+             line="3933">Set the offset that will be applied to the running time of @pad.</doc>
+        <source-position filename="gst/gstpad.h" line="1476"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstPad</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="3935">a #GstPad</doc>
             <type name="Pad" c:type="GstPad*"/>
           </instance-parameter>
           <parameter name="offset" transfer-ownership="none">
-            <doc xml:space="preserve">the offset</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="3936">the offset</doc>
             <type name="gint64" c:type="gint64"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_query_function_full"
               c:identifier="gst_pad_set_query_function_full">
-        <doc xml:space="preserve">Set the given query function for the pad.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpad.c"
+             line="1966">Set the given query function for the pad.</doc>
+        <source-position filename="gst/gstpad.h" line="1554"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstPad of either direction.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="1968">a #GstPad of either direction.</doc>
             <type name="Pad" c:type="GstPad*"/>
           </instance-parameter>
           <parameter name="query"
@@ -27439,36 +43119,47 @@ of the peer sink pad, if present.</doc>
                      scope="notified"
                      closure="1"
                      destroy="2">
-            <doc xml:space="preserve">the #GstPadQueryFunction to set.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="1969">the #GstPadQueryFunction to set.</doc>
             <type name="PadQueryFunction" c:type="GstPadQueryFunction"/>
           </parameter>
           <parameter name="user_data"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">user_data passed to @notify</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="1970">user_data passed to @notify</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
           <parameter name="notify" transfer-ownership="none" scope="async">
-            <doc xml:space="preserve">notify called when @query will not be used anymore.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="1971">notify called when @query will not be used anymore.</doc>
             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_unlink_function_full"
               c:identifier="gst_pad_set_unlink_function_full">
-        <doc xml:space="preserve">Sets the given unlink function for the pad. It will be called
+        <doc xml:space="preserve"
+             filename="gst/gstpad.c"
+             line="2076">Sets the given unlink function for the pad. It will be called
 when the pad is unlinked.
 
 Note that the pad's lock is already held when the unlink
 function is called, so most pad functions cannot be called
 from within the callback.</doc>
+        <source-position filename="gst/gstpad.h" line="1428"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstPad.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="2078">a #GstPad.</doc>
             <type name="Pad" c:type="GstPad*"/>
           </instance-parameter>
           <parameter name="unlink"
@@ -27476,34 +43167,47 @@ from within the callback.</doc>
                      scope="notified"
                      closure="1"
                      destroy="2">
-            <doc xml:space="preserve">the #GstPadUnlinkFunction to set.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="2079">the #GstPadUnlinkFunction to set.</doc>
             <type name="PadUnlinkFunction" c:type="GstPadUnlinkFunction"/>
           </parameter>
           <parameter name="user_data"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">user_data passed to @notify</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="2080">user_data passed to @notify</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
           <parameter name="notify" transfer-ownership="none" scope="async">
-            <doc xml:space="preserve">notify called when @unlink will not be used anymore.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="2081">notify called when @unlink will not be used anymore.</doc>
             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
           </parameter>
         </parameters>
       </method>
       <method name="start_task" c:identifier="gst_pad_start_task">
-        <doc xml:space="preserve">Starts a task that repeatedly calls @func with @user_data. This function
+        <doc xml:space="preserve"
+             filename="gst/gstpad.c"
+             line="6202">Starts a task that repeatedly calls @func with @user_data. This function
 is mostly used in pad activation functions to start the dataflow.
 The #GST_PAD_STREAM_LOCK of @pad will automatically be acquired
 before @func is called.</doc>
+        <source-position filename="gst/gstpad.h" line="1515"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a %TRUE if the task could be started.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstpad.c"
+               line="6214">a %TRUE if the task could be started.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstPad to start the task of</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="6204">the #GstPad to start the task of</doc>
             <type name="Pad" c:type="GstPad*"/>
           </instance-parameter>
           <parameter name="func"
@@ -27511,39 +43215,52 @@ before @func is called.</doc>
                      scope="notified"
                      closure="1"
                      destroy="2">
-            <doc xml:space="preserve">the task function to call</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="6205">the task function to call</doc>
             <type name="TaskFunction" c:type="GstTaskFunction"/>
           </parameter>
           <parameter name="user_data"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">user data passed to the task function</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="6206">user data passed to the task function</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
           <parameter name="notify" transfer-ownership="none" scope="async">
-            <doc xml:space="preserve">called when @user_data is no longer referenced</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="6207">called when @user_data is no longer referenced</doc>
             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
           </parameter>
         </parameters>
       </method>
       <method name="sticky_events_foreach"
               c:identifier="gst_pad_sticky_events_foreach">
-        <doc xml:space="preserve">Iterates all sticky events on @pad and calls @foreach_func for every
+        <doc xml:space="preserve"
+             filename="gst/gstpad.c"
+             line="6121">Iterates all sticky events on @pad and calls @foreach_func for every
 event. If @foreach_func returns %FALSE the iteration is immediately stopped.</doc>
+        <source-position filename="gst/gstpad.h" line="1370"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstPad that should be used for iteration.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="6123">the #GstPad that should be used for iteration.</doc>
             <type name="Pad" c:type="GstPad*"/>
           </instance-parameter>
           <parameter name="foreach_func"
                      transfer-ownership="none"
                      scope="call"
                      closure="1">
-            <doc xml:space="preserve">the #GstPadStickyEventsForeachFunction that
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="6124">the #GstPadStickyEventsForeachFunction that
                should be called for every event.</doc>
             <type name="PadStickyEventsForeachFunction"
                   c:type="GstPadStickyEventsForeachFunction"/>
@@ -27552,13 +43269,17 @@ event. If @foreach_func returns %FALSE the iteration is immediately stopped.</do
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">the optional user data.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="6126">the optional user data.</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
         </parameters>
       </method>
       <method name="stop_task" c:identifier="gst_pad_stop_task">
-        <doc xml:space="preserve">Stop the task of @pad. This function will also make sure that the
+        <doc xml:space="preserve"
+             filename="gst/gstpad.c"
+             line="6345">Stop the task of @pad. This function will also make sure that the
 function executed by the task will effectively stop if not called
 from the GstTaskFunction.
 
@@ -27567,13 +43288,18 @@ the task. Use gst_task_pause() instead.
 
 Regardless of whether the pad has a task, the stream lock is acquired and
 released so as to ensure that streaming through this pad has finished.</doc>
+        <source-position filename="gst/gstpad.h" line="1521"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a %TRUE if the task could be stopped or %FALSE on error.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstpad.c"
+               line="6359">a %TRUE if the task could be stopped or %FALSE on error.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstPad to stop the task of</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="6347">the #GstPad to stop the task of</doc>
             <type name="Pad" c:type="GstPad*"/>
           </instance-parameter>
         </parameters>
@@ -27581,28 +43307,42 @@ released so as to ensure that streaming through this pad has finished.</doc>
       <method name="store_sticky_event"
               c:identifier="gst_pad_store_sticky_event"
               version="1.2">
-        <doc xml:space="preserve">Store the sticky @event on @pad</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">#GST_FLOW_OK on success, #GST_FLOW_FLUSHING when the pad
+        <doc xml:space="preserve"
+             filename="gst/gstpad.c"
+             line="5336">Store the sticky @event on @pad</doc>
+        <source-position filename="gst/gstpad.h" line="1363"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.c"
+               line="5343">#GST_FLOW_OK on success, #GST_FLOW_FLUSHING when the pad
 was flushing or #GST_FLOW_EOS when the pad was EOS.</doc>
           <type name="FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstPad</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="5338">a #GstPad</doc>
             <type name="Pad" c:type="GstPad*"/>
           </instance-parameter>
           <parameter name="event" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstEvent</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="5339">a #GstEvent</doc>
             <type name="Event" c:type="GstEvent*"/>
           </parameter>
         </parameters>
       </method>
       <method name="unlink" c:identifier="gst_pad_unlink">
-        <doc xml:space="preserve">Unlinks the source pad from the sink pad. Will emit the #GstPad::unlinked
+        <doc xml:space="preserve"
+             filename="gst/gstpad.c"
+             line="2106">Unlinks the source pad from the sink pad. Will emit the #GstPad::unlinked
 signal on both pads.</doc>
+        <source-position filename="gst/gstpad.h" line="1446"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the pads were unlinked. This function returns %FALSE if
+          <doc xml:space="preserve"
+               filename="gst/gstpad.c"
+               line="2114">%TRUE if the pads were unlinked. This function returns %FALSE if
 the pads were not linked together.
 
 MT safe.</doc>
@@ -27610,29 +43350,38 @@ MT safe.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="srcpad" transfer-ownership="none">
-            <doc xml:space="preserve">the source #GstPad to unlink.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="2108">the source #GstPad to unlink.</doc>
             <type name="Pad" c:type="GstPad*"/>
           </instance-parameter>
           <parameter name="sinkpad" transfer-ownership="none">
-            <doc xml:space="preserve">the sink #GstPad to unlink.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="2109">the sink #GstPad to unlink.</doc>
             <type name="Pad" c:type="GstPad*"/>
           </parameter>
         </parameters>
       </method>
       <method name="use_fixed_caps" c:identifier="gst_pad_use_fixed_caps">
-        <doc xml:space="preserve">A helper function you can use that sets the FIXED_CAPS flag
+        <doc xml:space="preserve"
+             filename="gst/gstutils.c"
+             line="2613">A helper function you can use that sets the FIXED_CAPS flag
 This way the default CAPS query will always return the negotiated caps
 or in case the pad is not negotiated, the padtemplate caps.
 
 The negotiated caps are the caps of the last CAPS event that passed on the
 pad. Use this function on a pad that, once it negotiated to a CAPS, cannot
 be renegotiated to something else.</doc>
+        <source-position filename="gst/gstutils.h" line="1063"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">the pad to use</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="2615">the pad to use</doc>
             <type name="Pad" c:type="GstPad*"/>
           </instance-parameter>
         </parameters>
@@ -27650,7 +43399,9 @@ be renegotiated to something else.</doc>
                 version="1.6"
                 writable="1"
                 transfer-ownership="none">
-        <doc xml:space="preserve">The offset that will be applied to the running time of the pad.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpad.c"
+             line="376">The offset that will be applied to the running time of the pad.</doc>
         <type name="gint64" c:type="gint64"/>
       </property>
       <property name="template" writable="1" transfer-ownership="none">
@@ -27660,15 +43411,21 @@ be renegotiated to something else.</doc>
         <type name="Object" c:type="GstObject"/>
       </field>
       <field name="element_private">
-        <doc xml:space="preserve">private data owned by the parent element</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="723">private data owned by the parent element</doc>
         <type name="gpointer" c:type="gpointer"/>
       </field>
       <field name="padtemplate">
-        <doc xml:space="preserve">padtemplate for this pad</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="724">padtemplate for this pad</doc>
         <type name="PadTemplate" c:type="GstPadTemplate*"/>
       </field>
       <field name="direction">
-        <doc xml:space="preserve">the direction of the pad, cannot change after creating
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="725">the direction of the pad, cannot change after creating
             the pad.</doc>
         <type name="PadDirection" c:type="GstPadDirection"/>
       </field>
@@ -27795,12 +43552,14 @@ be renegotiated to something else.</doc>
         <type name="PadPrivate" c:type="GstPadPrivate*"/>
       </field>
       <union name="ABI" c:type="ABI">
+        <source-position filename="gst/gstpad.h" line="805"/>
         <field name="_gst_reserved" writable="1">
-          <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+          <array zero-terminated="0" fixed-size="4">
             <type name="gpointer" c:type="gpointer"/>
           </array>
         </field>
         <record name="abi" c:type="abi">
+          <source-position filename="gst/gstpad.h" line="804"/>
           <field name="last_flowret" writable="1">
             <type name="FlowReturn" c:type="GstFlowReturn"/>
           </field>
@@ -27811,78 +43570,110 @@ be renegotiated to something else.</doc>
         </record>
       </union>
       <glib:signal name="linked" when="last">
-        <doc xml:space="preserve">Signals that a pad has been linked to the peer pad.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpad.c"
+             line="337">Signals that a pad has been linked to the peer pad.</doc>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <parameter name="peer" transfer-ownership="none">
-            <doc xml:space="preserve">the peer pad that has been connected</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="340">the peer pad that has been connected</doc>
             <type name="Pad"/>
           </parameter>
         </parameters>
       </glib:signal>
       <glib:signal name="unlinked" when="last">
-        <doc xml:space="preserve">Signals that a pad has been unlinked from the peer pad.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpad.c"
+             line="348">Signals that a pad has been unlinked from the peer pad.</doc>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <parameter name="peer" transfer-ownership="none">
-            <doc xml:space="preserve">the peer pad that has been disconnected</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="351">the peer pad that has been disconnected</doc>
             <type name="Pad"/>
           </parameter>
         </parameters>
       </glib:signal>
     </class>
     <callback name="PadActivateFunction" c:type="GstPadActivateFunction">
-      <doc xml:space="preserve">This function is called when the pad is activated during the element
+      <doc xml:space="preserve"
+           filename="gst/gstpad.h"
+           line="235">This function is called when the pad is activated during the element
 READY to PAUSED state change. By default this function will call the
 activate function that puts the pad in push mode but elements can
 override this function to activate the pad in pull mode if they wish.</doc>
+      <source-position filename="gst/gstpad.h" line="247"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE if the pad could be activated.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="245">%TRUE if the pad could be activated.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="pad" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstPad</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="237">a #GstPad</doc>
           <type name="Pad" c:type="GstPad*"/>
         </parameter>
         <parameter name="parent" transfer-ownership="none">
-          <doc xml:space="preserve">the parent of @pad</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="238">the parent of @pad</doc>
           <type name="Object" c:type="GstObject*"/>
         </parameter>
       </parameters>
     </callback>
     <callback name="PadActivateModeFunction"
               c:type="GstPadActivateModeFunction">
-      <doc xml:space="preserve">The prototype of the push and pull activate functions.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstpad.h"
+           line="248">The prototype of the push and pull activate functions.</doc>
+      <source-position filename="gst/gstpad.h" line="259"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE if the pad could be activated or deactivated.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="257">%TRUE if the pad could be activated or deactivated.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="pad" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstPad</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="250">a #GstPad</doc>
           <type name="Pad" c:type="GstPad*"/>
         </parameter>
         <parameter name="parent" transfer-ownership="none">
-          <doc xml:space="preserve">the parent of @pad</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="251">the parent of @pad</doc>
           <type name="Object" c:type="GstObject*"/>
         </parameter>
         <parameter name="mode" transfer-ownership="none">
-          <doc xml:space="preserve">the requested activation mode of @pad</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="252">the requested activation mode of @pad</doc>
           <type name="PadMode" c:type="GstPadMode"/>
         </parameter>
         <parameter name="active" transfer-ownership="none">
-          <doc xml:space="preserve">activate or deactivate the pad.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="253">activate or deactivate the pad.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </parameter>
       </parameters>
     </callback>
     <callback name="PadChainFunction" c:type="GstPadChainFunction">
-      <doc xml:space="preserve">A function that will be called on sinkpads when chaining buffers.
+      <doc xml:space="preserve"
+           filename="gst/gstpad.h"
+           line="264">A function that will be called on sinkpads when chaining buffers.
 The function typically processes the data contained in the buffer and
 either consumes the data or passes it on to the internally linked pad(s).
 
@@ -27891,32 +43682,43 @@ gst_buffer_unref() when the buffer is no longer needed.
 
 When a chain function detects an error in the data stream, it must post an
 error on the bus and return an appropriate #GstFlowReturn value.</doc>
+      <source-position filename="gst/gstpad.h" line="284"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">#GST_FLOW_OK for success</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="282">#GST_FLOW_OK for success</doc>
         <type name="FlowReturn" c:type="GstFlowReturn"/>
       </return-value>
       <parameters>
         <parameter name="pad" transfer-ownership="none">
-          <doc xml:space="preserve">the sink #GstPad that performed the chain.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="266">the sink #GstPad that performed the chain.</doc>
           <type name="Pad" c:type="GstPad*"/>
         </parameter>
         <parameter name="parent"
                    transfer-ownership="none"
                    nullable="1"
                    allow-none="1">
-          <doc xml:space="preserve">the parent of @pad. If the #GST_PAD_FLAG_NEED_PARENT
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="267">the parent of @pad. If the #GST_PAD_FLAG_NEED_PARENT
          flag is set, @parent is guaranteed to be not-%NULL and remain valid
          during the execution of this function.</doc>
           <type name="Object" c:type="GstObject*"/>
         </parameter>
         <parameter name="buffer" transfer-ownership="full">
-          <doc xml:space="preserve">the #GstBuffer that is chained, not %NULL.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="270">the #GstBuffer that is chained, not %NULL.</doc>
           <type name="Buffer" c:type="GstBuffer*"/>
         </parameter>
       </parameters>
     </callback>
     <callback name="PadChainListFunction" c:type="GstPadChainListFunction">
-      <doc xml:space="preserve">A function that will be called on sinkpads when chaining buffer lists.
+      <doc xml:space="preserve"
+           filename="gst/gstpad.h"
+           line="287">A function that will be called on sinkpads when chaining buffer lists.
 The function typically processes the data contained in the buffer list and
 either consumes the data or passes it on to the internally linked pad(s).
 
@@ -27925,26 +43727,35 @@ should gst_buffer_list_unref() when the list is no longer needed.
 
 When a chainlist function detects an error in the data stream, it must
 post an error on the bus and return an appropriate #GstFlowReturn value.</doc>
+      <source-position filename="gst/gstpad.h" line="307"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">#GST_FLOW_OK for success</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="305">#GST_FLOW_OK for success</doc>
         <type name="FlowReturn" c:type="GstFlowReturn"/>
       </return-value>
       <parameters>
         <parameter name="pad" transfer-ownership="none">
-          <doc xml:space="preserve">the sink #GstPad that performed the chain.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="289">the sink #GstPad that performed the chain.</doc>
           <type name="Pad" c:type="GstPad*"/>
         </parameter>
         <parameter name="parent"
                    transfer-ownership="none"
                    nullable="1"
                    allow-none="1">
-          <doc xml:space="preserve">the parent of @pad. If the #GST_PAD_FLAG_NEED_PARENT
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="290">the parent of @pad. If the #GST_PAD_FLAG_NEED_PARENT
          flag is set, @parent is guaranteed to be not-%NULL and remain valid
          during the execution of this function.</doc>
           <type name="Object" c:type="GstObject*"/>
         </parameter>
         <parameter name="list" transfer-ownership="full">
-          <doc xml:space="preserve">the #GstBufferList that is chained, not %NULL.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="293">the #GstBufferList that is chained, not %NULL.</doc>
           <type name="BufferList" c:type="GstBufferList*"/>
         </parameter>
       </parameters>
@@ -27952,11 +43763,13 @@ post an error on the bus and return an appropriate #GstFlowReturn value.</doc>
     <record name="PadClass"
             c:type="GstPadClass"
             glib:is-gtype-struct-for="Pad">
+      <source-position filename="gst/gstpad.h" line="817"/>
       <field name="parent_class">
         <type name="ObjectClass" c:type="GstObjectClass"/>
       </field>
       <field name="linked">
         <callback name="linked">
+          <source-position filename="gst/gstpad.h" line="812"/>
           <return-value transfer-ownership="none">
             <type name="none" c:type="void"/>
           </return-value>
@@ -27972,6 +43785,7 @@ post an error on the bus and return an appropriate #GstFlowReturn value.</doc>
       </field>
       <field name="unlinked">
         <callback name="unlinked">
+          <source-position filename="gst/gstpad.h" line="813"/>
           <return-value transfer-ownership="none">
             <type name="none" c:type="void"/>
           </return-value>
@@ -27986,7 +43800,7 @@ post an error on the bus and return an appropriate #GstFlowReturn value.</doc>
         </callback>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -27995,78 +43809,108 @@ post an error on the bus and return an appropriate #GstFlowReturn value.</doc>
                  glib:type-name="GstPadDirection"
                  glib:get-type="gst_pad_direction_get_type"
                  c:type="GstPadDirection">
-      <doc xml:space="preserve">The direction of a pad.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstpad.h"
+           line="34">The direction of a pad.</doc>
       <member name="unknown"
               value="0"
               c:identifier="GST_PAD_UNKNOWN"
               glib:nick="unknown">
-        <doc xml:space="preserve">direction is unknown.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="36">direction is unknown.</doc>
       </member>
       <member name="src" value="1" c:identifier="GST_PAD_SRC" glib:nick="src">
-        <doc xml:space="preserve">the pad is a source pad.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="37">the pad is a source pad.</doc>
       </member>
       <member name="sink"
               value="2"
               c:identifier="GST_PAD_SINK"
               glib:nick="sink">
-        <doc xml:space="preserve">the pad is a sink pad.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="38">the pad is a sink pad.</doc>
       </member>
     </enumeration>
     <callback name="PadEventFullFunction"
               c:type="GstPadEventFullFunction"
               version="1.8">
-      <doc xml:space="preserve">Function signature to handle an event for the pad.
+      <doc xml:space="preserve"
+           filename="gst/gstpad.h"
+           line="376">Function signature to handle an event for the pad.
 
 This variant is for specific elements that will take into account the
 last downstream flow return (from a pad push), in which case they can
 return it.</doc>
+      <source-position filename="gst/gstpad.h" line="395"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%GST_FLOW_OK if the event was handled properly, or any other
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="390">%GST_FLOW_OK if the event was handled properly, or any other
 #GstFlowReturn dependent on downstream state.</doc>
         <type name="FlowReturn" c:type="GstFlowReturn"/>
       </return-value>
       <parameters>
         <parameter name="pad" transfer-ownership="none">
-          <doc xml:space="preserve">the #GstPad to handle the event.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="378">the #GstPad to handle the event.</doc>
           <type name="Pad" c:type="GstPad*"/>
         </parameter>
         <parameter name="parent"
                    transfer-ownership="none"
                    nullable="1"
                    allow-none="1">
-          <doc xml:space="preserve">the parent of @pad. If the #GST_PAD_FLAG_NEED_PARENT
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="379">the parent of @pad. If the #GST_PAD_FLAG_NEED_PARENT
          flag is set, @parent is guaranteed to be not-%NULL and remain valid
          during the execution of this function.</doc>
           <type name="Object" c:type="GstObject*"/>
         </parameter>
         <parameter name="event" transfer-ownership="full">
-          <doc xml:space="preserve">the #GstEvent to handle.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="382">the #GstEvent to handle.</doc>
           <type name="Event" c:type="GstEvent*"/>
         </parameter>
       </parameters>
     </callback>
     <callback name="PadEventFunction" c:type="GstPadEventFunction">
-      <doc xml:space="preserve">Function signature to handle an event for the pad.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstpad.h"
+           line="361">Function signature to handle an event for the pad.</doc>
+      <source-position filename="gst/gstpad.h" line="373"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE if the pad could handle the event.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="371">%TRUE if the pad could handle the event.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="pad" transfer-ownership="none">
-          <doc xml:space="preserve">the #GstPad to handle the event.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="363">the #GstPad to handle the event.</doc>
           <type name="Pad" c:type="GstPad*"/>
         </parameter>
         <parameter name="parent"
                    transfer-ownership="none"
                    nullable="1"
                    allow-none="1">
-          <doc xml:space="preserve">the parent of @pad. If the #GST_PAD_FLAG_NEED_PARENT
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="364">the parent of @pad. If the #GST_PAD_FLAG_NEED_PARENT
          flag is set, @parent is guaranteed to be not-%NULL and remain valid
          during the execution of this function.</doc>
           <type name="Object" c:type="GstObject*"/>
         </parameter>
         <parameter name="event" transfer-ownership="full">
-          <doc xml:space="preserve">the #GstEvent to handle.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="367">the #GstEvent to handle.</doc>
           <type name="Event" c:type="GstEvent*"/>
         </parameter>
       </parameters>
@@ -28075,43 +43919,57 @@ return it.</doc>
               glib:type-name="GstPadFlags"
               glib:get-type="gst_pad_flags_get_type"
               c:type="GstPadFlags">
-      <doc xml:space="preserve">Pad state flags</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstpad.h"
+           line="667">Pad state flags</doc>
       <member name="blocked"
               value="16"
               c:identifier="GST_PAD_FLAG_BLOCKED"
               glib:nick="blocked">
-        <doc xml:space="preserve">is dataflow on a pad blocked</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="669">is dataflow on a pad blocked</doc>
       </member>
       <member name="flushing"
               value="32"
               c:identifier="GST_PAD_FLAG_FLUSHING"
               glib:nick="flushing">
-        <doc xml:space="preserve">is pad flushing</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="670">is pad flushing</doc>
       </member>
       <member name="eos"
               value="64"
               c:identifier="GST_PAD_FLAG_EOS"
               glib:nick="eos">
-        <doc xml:space="preserve">is pad in EOS state</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="671">is pad in EOS state</doc>
       </member>
       <member name="blocking"
               value="128"
               c:identifier="GST_PAD_FLAG_BLOCKING"
               glib:nick="blocking">
-        <doc xml:space="preserve">is pad currently blocking on a buffer or event</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="672">is pad currently blocking on a buffer or event</doc>
       </member>
       <member name="need_parent"
               value="256"
               c:identifier="GST_PAD_FLAG_NEED_PARENT"
               glib:nick="need-parent">
-        <doc xml:space="preserve">ensure that there is a parent object before calling
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="673">ensure that there is a parent object before calling
                       into the pad callbacks.</doc>
       </member>
       <member name="need_reconfigure"
               value="512"
               c:identifier="GST_PAD_FLAG_NEED_RECONFIGURE"
               glib:nick="need-reconfigure">
-        <doc xml:space="preserve">the pad should be reconfigured/renegotiated.
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="675">the pad should be reconfigured/renegotiated.
                            The flag has to be unset manually after
                            reconfiguration happened.</doc>
       </member>
@@ -28119,13 +43977,17 @@ return it.</doc>
               value="1024"
               c:identifier="GST_PAD_FLAG_PENDING_EVENTS"
               glib:nick="pending-events">
-        <doc xml:space="preserve">the pad has pending events</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="678">the pad has pending events</doc>
       </member>
       <member name="fixed_caps"
               value="2048"
               c:identifier="GST_PAD_FLAG_FIXED_CAPS"
               glib:nick="fixed-caps">
-        <doc xml:space="preserve">the pad is using fixed caps. This means that
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="679">the pad is using fixed caps. This means that
     once the caps are set on the pad, the default caps query function
     will only return those caps.</doc>
       </member>
@@ -28133,7 +43995,9 @@ return it.</doc>
               value="4096"
               c:identifier="GST_PAD_FLAG_PROXY_CAPS"
               glib:nick="proxy-caps">
-        <doc xml:space="preserve">the default event and query handler will forward
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="682">the default event and query handler will forward
                      all events and queries to the internally linked pads
                      instead of discarding them.</doc>
       </member>
@@ -28141,7 +44005,9 @@ return it.</doc>
               value="8192"
               c:identifier="GST_PAD_FLAG_PROXY_ALLOCATION"
               glib:nick="proxy-allocation">
-        <doc xml:space="preserve">the default query handler will forward
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="685">the default query handler will forward
                      allocation queries to the internally linked pads
                      instead of discarding them.</doc>
       </member>
@@ -28149,7 +44015,9 @@ return it.</doc>
               value="16384"
               c:identifier="GST_PAD_FLAG_PROXY_SCHEDULING"
               glib:nick="proxy-scheduling">
-        <doc xml:space="preserve">the default query handler will forward
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="688">the default query handler will forward
                      scheduling queries to the internally linked pads
                      instead of discarding them.</doc>
       </member>
@@ -28157,7 +44025,9 @@ return it.</doc>
               value="32768"
               c:identifier="GST_PAD_FLAG_ACCEPT_INTERSECT"
               glib:nick="accept-intersect">
-        <doc xml:space="preserve">the default accept-caps handler will check
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="691">the default accept-caps handler will check
                      it the caps intersect the query-caps result instead
                      of checking for a subset. This is interesting for
                      parsers that can accept incompletely specified caps.</doc>
@@ -28166,28 +44036,39 @@ return it.</doc>
               value="65536"
               c:identifier="GST_PAD_FLAG_ACCEPT_TEMPLATE"
               glib:nick="accept-template">
-        <doc xml:space="preserve">the default accept-caps handler will use
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="695">the default accept-caps handler will use
                      the template pad caps instead of query caps to
                      compare with the accept caps. Use this in combination
-                     with %GST_PAD_FLAG_ACCEPT_INTERSECT. (Since 1.6)</doc>
+                     with %GST_PAD_FLAG_ACCEPT_INTERSECT. (Since: 1.6)</doc>
       </member>
       <member name="last"
               value="1048576"
               c:identifier="GST_PAD_FLAG_LAST"
               glib:nick="last">
-        <doc xml:space="preserve">offset to define more flags</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="699">offset to define more flags</doc>
       </member>
     </bitfield>
     <callback name="PadForwardFunction" c:type="GstPadForwardFunction">
-      <doc xml:space="preserve">A forward function is called for all internally linked pads, see
+      <doc xml:space="preserve"
+           filename="gst/gstpad.h"
+           line="463">A forward function is called for all internally linked pads, see
 gst_pad_forward().</doc>
+      <source-position filename="gst/gstpad.h" line="473"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE if the dispatching procedure has to be stopped.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="471">%TRUE if the dispatching procedure has to be stopped.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="pad" transfer-ownership="none">
-          <doc xml:space="preserve">the #GstPad that is forwarded.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="465">the #GstPad that is forwarded.</doc>
           <type name="Pad" c:type="GstPad*"/>
         </parameter>
         <parameter name="user_data"
@@ -28195,13 +44076,17 @@ gst_pad_forward().</doc>
                    nullable="1"
                    allow-none="1"
                    closure="1">
-          <doc xml:space="preserve">the gpointer to optional user data.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="466">the gpointer to optional user data.</doc>
           <type name="gpointer" c:type="gpointer"/>
         </parameter>
       </parameters>
     </callback>
     <callback name="PadGetRangeFunction" c:type="GstPadGetRangeFunction">
-      <doc xml:space="preserve">This function will be called on source pads when a peer element
+      <doc xml:space="preserve"
+           filename="gst/gstpad.h"
+           line="310">This function will be called on source pads when a peer element
 request a buffer at the specified @offset and @length. If this function
 returns #GST_FLOW_OK, the result buffer will be stored in @buffer. The
 contents of @buffer is invalid for any other return value.
@@ -28234,43 +44119,61 @@ of length @length in the stream is returned.
 When this function is called with a -1 @length, a buffer with a default
 optimal length is returned in @buffer. The length might depend on the value
 of @offset.</doc>
+      <source-position filename="gst/gstpad.h" line="357"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">#GST_FLOW_OK for success and a valid buffer in @buffer. Any other
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="354">#GST_FLOW_OK for success and a valid buffer in @buffer. Any other
 return value leaves @buffer undefined.</doc>
         <type name="FlowReturn" c:type="GstFlowReturn"/>
       </return-value>
       <parameters>
         <parameter name="pad" transfer-ownership="none">
-          <doc xml:space="preserve">the src #GstPad to perform the getrange on.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="312">the src #GstPad to perform the getrange on.</doc>
           <type name="Pad" c:type="GstPad*"/>
         </parameter>
         <parameter name="parent"
                    transfer-ownership="none"
                    nullable="1"
                    allow-none="1">
-          <doc xml:space="preserve">the parent of @pad. If the #GST_PAD_FLAG_NEED_PARENT
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="313">the parent of @pad. If the #GST_PAD_FLAG_NEED_PARENT
          flag is set, @parent is guaranteed to be not-%NULL and remain valid
          during the execution of this function.</doc>
           <type name="Object" c:type="GstObject*"/>
         </parameter>
         <parameter name="offset" transfer-ownership="none">
-          <doc xml:space="preserve">the offset of the range</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="316">the offset of the range</doc>
           <type name="guint64" c:type="guint64"/>
         </parameter>
         <parameter name="length" transfer-ownership="none">
-          <doc xml:space="preserve">the length of the range</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="317">the length of the range</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
         <parameter name="buffer" transfer-ownership="none">
-          <doc xml:space="preserve">a memory location to hold the result buffer, cannot be %NULL.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="318">a memory location to hold the result buffer, cannot be %NULL.</doc>
           <type name="Buffer" c:type="GstBuffer**"/>
         </parameter>
       </parameters>
     </callback>
     <callback name="PadIterIntLinkFunction" c:type="GstPadIterIntLinkFunction">
-      <doc xml:space="preserve">The signature of the internal pad link iterator function.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstpad.h"
+           line="400">The signature of the internal pad link iterator function.</doc>
+      <source-position filename="gst/gstpad.h" line="414"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">a new #GstIterator that will iterate over all pads that are
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="409">a new #GstIterator that will iterate over all pads that are
 linked to the given pad on the inside of the parent element.
 
 the caller must call gst_iterator_free() after usage.</doc>
@@ -28278,14 +44181,18 @@ the caller must call gst_iterator_free() after usage.</doc>
       </return-value>
       <parameters>
         <parameter name="pad" transfer-ownership="none">
-          <doc xml:space="preserve">The #GstPad to query.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="402">The #GstPad to query.</doc>
           <type name="Pad" c:type="GstPad*"/>
         </parameter>
         <parameter name="parent"
                    transfer-ownership="none"
                    nullable="1"
                    allow-none="1">
-          <doc xml:space="preserve">the parent of @pad. If the #GST_PAD_FLAG_NEED_PARENT
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="403">the parent of @pad. If the #GST_PAD_FLAG_NEED_PARENT
          flag is set, @parent is guaranteed to be not-%NULL and remain valid
          during the execution of this function.</doc>
           <type name="Object" c:type="GstObject*"/>
@@ -28296,7 +44203,9 @@ the caller must call gst_iterator_free() after usage.</doc>
               glib:type-name="GstPadLinkCheck"
               glib:get-type="gst_pad_link_check_get_type"
               c:type="GstPadLinkCheck">
-      <doc xml:space="preserve">The amount of checking to be done when linking pads. @GST_PAD_LINK_CHECK_CAPS
+      <doc xml:space="preserve"
+           filename="gst/gstpad.h"
+           line="194">The amount of checking to be done when linking pads. @GST_PAD_LINK_CHECK_CAPS
 and @GST_PAD_LINK_CHECK_TEMPLATE_CAPS are mutually exclusive. If both are
 specified, expensive but safe @GST_PAD_LINK_CHECK_CAPS are performed.
 
@@ -28308,13 +44217,17 @@ specified, expensive but safe @GST_PAD_LINK_CHECK_CAPS are performed.
               value="0"
               c:identifier="GST_PAD_LINK_CHECK_NOTHING"
               glib:nick="nothing">
-        <doc xml:space="preserve">Don't check hierarchy or caps compatibility.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="196">Don't check hierarchy or caps compatibility.</doc>
       </member>
       <member name="hierarchy"
               value="1"
               c:identifier="GST_PAD_LINK_CHECK_HIERARCHY"
               glib:nick="hierarchy">
-        <doc xml:space="preserve">Check the pads have same parents/grandparents.
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="197">Check the pads have same parents/grandparents.
   Could be omitted if it is already known that the two elements that own the
   pads are in the same bin.</doc>
       </member>
@@ -28322,7 +44235,9 @@ specified, expensive but safe @GST_PAD_LINK_CHECK_CAPS are performed.
               value="2"
               c:identifier="GST_PAD_LINK_CHECK_TEMPLATE_CAPS"
               glib:nick="template-caps">
-        <doc xml:space="preserve">Check if the pads are compatible by using
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="200">Check if the pads are compatible by using
   their template caps. This is much faster than @GST_PAD_LINK_CHECK_CAPS, but
   would be unsafe e.g. if one pad has %GST_CAPS_ANY.</doc>
       </member>
@@ -28330,46 +44245,63 @@ specified, expensive but safe @GST_PAD_LINK_CHECK_CAPS are performed.
               value="4"
               c:identifier="GST_PAD_LINK_CHECK_CAPS"
               glib:nick="caps">
-        <doc xml:space="preserve">Check if the pads are compatible by comparing the
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="203">Check if the pads are compatible by comparing the
   caps returned by gst_pad_query_caps().</doc>
       </member>
       <member name="no_reconfigure"
               value="8"
               c:identifier="GST_PAD_LINK_CHECK_NO_RECONFIGURE"
               glib:nick="no-reconfigure">
-        <doc xml:space="preserve">Disables pushing a reconfigure event when pads are
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="205">Disables pushing a reconfigure event when pads are
   linked.</doc>
       </member>
       <member name="default"
               value="5"
               c:identifier="GST_PAD_LINK_CHECK_DEFAULT"
               glib:nick="default">
-        <doc xml:space="preserve">The default checks done when linking
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="207">The default checks done when linking
   pads (i.e. the ones used by gst_pad_link()).</doc>
       </member>
     </bitfield>
     <callback name="PadLinkFunction" c:type="GstPadLinkFunction">
-      <doc xml:space="preserve">Function signature to handle a new link on the pad.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstpad.h"
+           line="434">Function signature to handle a new link on the pad.</doc>
+      <source-position filename="gst/gstpad.h" line="446"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">the result of the link with the specified peer.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="444">the result of the link with the specified peer.</doc>
         <type name="PadLinkReturn" c:type="GstPadLinkReturn"/>
       </return-value>
       <parameters>
         <parameter name="pad" transfer-ownership="none">
-          <doc xml:space="preserve">the #GstPad that is linked.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="436">the #GstPad that is linked.</doc>
           <type name="Pad" c:type="GstPad*"/>
         </parameter>
         <parameter name="parent"
                    transfer-ownership="none"
                    nullable="1"
                    allow-none="1">
-          <doc xml:space="preserve">the parent of @pad. If the #GST_PAD_FLAG_NEED_PARENT
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="437">the parent of @pad. If the #GST_PAD_FLAG_NEED_PARENT
          flag is set, @parent is guaranteed to be not-%NULL and remain valid
          during the execution of this function.</doc>
           <type name="Object" c:type="GstObject*"/>
         </parameter>
         <parameter name="peer" transfer-ownership="none">
-          <doc xml:space="preserve">the peer #GstPad of the link</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="440">the peer #GstPad of the link</doc>
           <type name="Pad" c:type="GstPad*"/>
         </parameter>
       </parameters>
@@ -28378,84 +44310,115 @@ specified, expensive but safe @GST_PAD_LINK_CHECK_CAPS are performed.
                  glib:type-name="GstPadLinkReturn"
                  glib:get-type="gst_pad_link_return_get_type"
                  c:type="GstPadLinkReturn">
-      <doc xml:space="preserve">Result values from gst_pad_link and friends.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstpad.h"
+           line="92">Result values from gst_pad_link and friends.</doc>
       <member name="ok"
               value="0"
               c:identifier="GST_PAD_LINK_OK"
               glib:nick="ok">
-        <doc xml:space="preserve">link succeeded</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="94">link succeeded</doc>
       </member>
       <member name="wrong_hierarchy"
               value="-1"
               c:identifier="GST_PAD_LINK_WRONG_HIERARCHY"
               glib:nick="wrong-hierarchy">
-        <doc xml:space="preserve">pads have no common grandparent</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="95">pads have no common grandparent</doc>
       </member>
       <member name="was_linked"
               value="-2"
               c:identifier="GST_PAD_LINK_WAS_LINKED"
               glib:nick="was-linked">
-        <doc xml:space="preserve">pad was already linked</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="96">pad was already linked</doc>
       </member>
       <member name="wrong_direction"
               value="-3"
               c:identifier="GST_PAD_LINK_WRONG_DIRECTION"
               glib:nick="wrong-direction">
-        <doc xml:space="preserve">pads have wrong direction</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="97">pads have wrong direction</doc>
       </member>
       <member name="noformat"
               value="-4"
               c:identifier="GST_PAD_LINK_NOFORMAT"
               glib:nick="noformat">
-        <doc xml:space="preserve">pads do not have common format</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="98">pads do not have common format</doc>
       </member>
       <member name="nosched"
               value="-5"
               c:identifier="GST_PAD_LINK_NOSCHED"
               glib:nick="nosched">
-        <doc xml:space="preserve">pads cannot cooperate in scheduling</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="99">pads cannot cooperate in scheduling</doc>
       </member>
       <member name="refused"
               value="-6"
               c:identifier="GST_PAD_LINK_REFUSED"
               glib:nick="refused">
-        <doc xml:space="preserve">refused for some reason</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="100">refused for some reason</doc>
       </member>
     </enumeration>
     <enumeration name="PadMode"
                  glib:type-name="GstPadMode"
                  glib:get-type="gst_pad_mode_get_type"
                  c:type="GstPadMode">
-      <doc xml:space="preserve">The status of a GstPad. After activating a pad, which usually happens when the
+      <doc xml:space="preserve"
+           filename="gst/gstpad.h"
+           line="48">The status of a GstPad. After activating a pad, which usually happens when the
 parent element goes from READY to PAUSED, the GstPadMode defines if the
 pad operates in push or pull mode.</doc>
       <member name="none"
               value="0"
               c:identifier="GST_PAD_MODE_NONE"
               glib:nick="none">
-        <doc xml:space="preserve">Pad will not handle dataflow</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="50">Pad will not handle dataflow</doc>
       </member>
       <member name="push"
               value="1"
               c:identifier="GST_PAD_MODE_PUSH"
               glib:nick="push">
-        <doc xml:space="preserve">Pad handles dataflow in downstream push mode</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="51">Pad handles dataflow in downstream push mode</doc>
       </member>
       <member name="pull"
               value="2"
               c:identifier="GST_PAD_MODE_PULL"
               glib:nick="pull">
-        <doc xml:space="preserve">Pad handles dataflow in upstream pull mode</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="52">Pad handles dataflow in upstream pull mode</doc>
       </member>
       <function name="get_name" c:identifier="gst_pad_mode_get_name">
-        <doc xml:space="preserve">Return the name of a pad mode, for use in debug messages mostly.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">short mnemonic for pad mode @mode</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpad.c"
+             line="944">Return the name of a pad mode, for use in debug messages mostly.</doc>
+        <source-position filename="gst/gstpad.h" line="67"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.c"
+               line="950">short mnemonic for pad mode @mode</doc>
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
         <parameters>
           <parameter name="mode" transfer-ownership="none">
-            <doc xml:space="preserve">the pad mode</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="946">the pad mode</doc>
             <type name="PadMode" c:type="GstPadMode"/>
           </parameter>
         </parameters>
@@ -28465,45 +44428,63 @@ pad operates in push or pull mode.</doc>
                  glib:type-name="GstPadPresence"
                  glib:get-type="gst_pad_presence_get_type"
                  c:type="GstPadPresence">
-      <doc xml:space="preserve">Indicates when this pad will become available.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstpadtemplate.h"
+           line="50">Indicates when this pad will become available.</doc>
       <member name="always"
               value="0"
               c:identifier="GST_PAD_ALWAYS"
               glib:nick="always">
-        <doc xml:space="preserve">the pad is always available</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpadtemplate.h"
+             line="52">the pad is always available</doc>
       </member>
       <member name="sometimes"
               value="1"
               c:identifier="GST_PAD_SOMETIMES"
               glib:nick="sometimes">
-        <doc xml:space="preserve">the pad will become available depending on the media stream</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpadtemplate.h"
+             line="53">the pad will become available depending on the media stream</doc>
       </member>
       <member name="request"
               value="2"
               c:identifier="GST_PAD_REQUEST"
               glib:nick="request">
-        <doc xml:space="preserve">the pad is only available on request with
+        <doc xml:space="preserve"
+             filename="gst/gstpadtemplate.h"
+             line="54">the pad is only available on request with
  gst_element_request_pad().</doc>
       </member>
     </enumeration>
     <record name="PadPrivate" c:type="GstPadPrivate" disguised="1">
+      <source-position filename="gst/gstpad.h" line="30"/>
     </record>
     <callback name="PadProbeCallback" c:type="GstPadProbeCallback">
-      <doc xml:space="preserve">Callback used by gst_pad_add_probe(). Gets called to notify about the current
+      <doc xml:space="preserve"
+           filename="gst/gstpad.h"
+           line="630">Callback used by gst_pad_add_probe(). Gets called to notify about the current
 blocking type.
 
 The callback is allowed to modify the data pointer in @info.</doc>
+      <source-position filename="gst/gstpad.h" line="643"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">a #GstPadProbeReturn</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="641">a #GstPadProbeReturn</doc>
         <type name="PadProbeReturn" c:type="GstPadProbeReturn"/>
       </return-value>
       <parameters>
         <parameter name="pad" transfer-ownership="none">
-          <doc xml:space="preserve">the #GstPad that is blocked</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="632">the #GstPad that is blocked</doc>
           <type name="Pad" c:type="GstPad*"/>
         </parameter>
         <parameter name="info" transfer-ownership="none">
-          <doc xml:space="preserve">#GstPadProbeInfo</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="633">#GstPadProbeInfo</doc>
           <type name="PadProbeInfo" c:type="GstPadProbeInfo*"/>
         </parameter>
         <parameter name="user_data"
@@ -28511,93 +44492,130 @@ The callback is allowed to modify the data pointer in @info.</doc>
                    nullable="1"
                    allow-none="1"
                    closure="2">
-          <doc xml:space="preserve">the gpointer to optional user data.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="634">the gpointer to optional user data.</doc>
           <type name="gpointer" c:type="gpointer"/>
         </parameter>
       </parameters>
     </callback>
     <record name="PadProbeInfo" c:type="GstPadProbeInfo">
-      <doc xml:space="preserve">Info passed in the #GstPadProbeCallback.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstpad.h"
+           line="575">Info passed in the #GstPadProbeCallback.</doc>
+      <source-position filename="gst/gstpad.h" line="603"/>
       <field name="type" writable="1">
-        <doc xml:space="preserve">the current probe type</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="577">the current probe type</doc>
         <type name="PadProbeType" c:type="GstPadProbeType"/>
       </field>
       <field name="id" writable="1">
-        <doc xml:space="preserve">the id of the probe</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="578">the id of the probe</doc>
         <type name="gulong" c:type="gulong"/>
       </field>
       <field name="data" writable="1">
-        <doc xml:space="preserve">type specific data, check the @type field to know the
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="579">type specific data, check the @type field to know the
    datatype.  This field can be %NULL.</doc>
         <type name="gpointer" c:type="gpointer"/>
       </field>
       <field name="offset" writable="1">
-        <doc xml:space="preserve">offset of pull probe, this field is valid when @type contains
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="581">offset of pull probe, this field is valid when @type contains
    #GST_PAD_PROBE_TYPE_PULL</doc>
         <type name="guint64" c:type="guint64"/>
       </field>
       <field name="size" writable="1">
-        <doc xml:space="preserve">size of pull probe, this field is valid when @type contains
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="583">size of pull probe, this field is valid when @type contains
    #GST_PAD_PROBE_TYPE_PULL</doc>
         <type name="guint" c:type="guint"/>
       </field>
       <union name="ABI" c:type="ABI">
+        <source-position filename="gst/gstpad.h" line="602"/>
         <field name="_gst_reserved" writable="1">
-          <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+          <array zero-terminated="0" fixed-size="4">
             <type name="gpointer" c:type="gpointer"/>
           </array>
         </field>
         <record name="abi" c:type="abi">
+          <source-position filename="gst/gstpad.h" line="601"/>
           <field name="flow_ret" writable="1">
             <type name="FlowReturn" c:type="GstFlowReturn"/>
           </field>
         </record>
       </union>
       <method name="get_buffer" c:identifier="gst_pad_probe_info_get_buffer">
+        <source-position filename="gst/gstpad.h" line="625"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">The #GstBuffer from the probe</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstpad.c"
+               line="6456">The #GstBuffer from the probe</doc>
           <type name="Buffer" c:type="GstBuffer*"/>
         </return-value>
         <parameters>
           <instance-parameter name="info" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstPadProbeInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="6454">a #GstPadProbeInfo</doc>
             <type name="PadProbeInfo" c:type="GstPadProbeInfo*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_buffer_list"
               c:identifier="gst_pad_probe_info_get_buffer_list">
+        <source-position filename="gst/gstpad.h" line="628"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">The #GstBufferList from the probe</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstpad.c"
+               line="6471">The #GstBufferList from the probe</doc>
           <type name="BufferList" c:type="GstBufferList*"/>
         </return-value>
         <parameters>
           <instance-parameter name="info" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstPadProbeInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="6469">a #GstPadProbeInfo</doc>
             <type name="PadProbeInfo" c:type="GstPadProbeInfo*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_event" c:identifier="gst_pad_probe_info_get_event">
+        <source-position filename="gst/gstpad.h" line="619"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">The #GstEvent from the probe</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstpad.c"
+               line="6423">The #GstEvent from the probe</doc>
           <type name="Event" c:type="GstEvent*"/>
         </return-value>
         <parameters>
           <instance-parameter name="info" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstPadProbeInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="6421">a #GstPadProbeInfo</doc>
             <type name="PadProbeInfo" c:type="GstPadProbeInfo*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_query" c:identifier="gst_pad_probe_info_get_query">
+        <source-position filename="gst/gstpad.h" line="622"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">The #GstQuery from the probe</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstpad.c"
+               line="6440">The #GstQuery from the probe</doc>
           <type name="Query" c:type="GstQuery*"/>
         </return-value>
         <parameters>
           <instance-parameter name="info" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstPadProbeInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpad.c"
+                 line="6438">a #GstPadProbeInfo</doc>
             <type name="PadProbeInfo" c:type="GstPadProbeInfo*"/>
           </instance-parameter>
         </parameters>
@@ -28607,12 +44625,16 @@ The callback is allowed to modify the data pointer in @info.</doc>
                  glib:type-name="GstPadProbeReturn"
                  glib:get-type="gst_pad_probe_return_get_type"
                  c:type="GstPadProbeReturn">
-      <doc xml:space="preserve">Different return values for the #GstPadProbeCallback.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstpad.h"
+           line="539">Different return values for the #GstPadProbeCallback.</doc>
       <member name="drop"
               value="0"
               c:identifier="GST_PAD_PROBE_DROP"
               glib:nick="drop">
-        <doc xml:space="preserve">drop data in data probes. For push mode this means that
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="546">drop data in data probes. For push mode this means that
        the data item is not sent downstream. For pull mode, it means that
        the data item is not passed upstream. In both cases, no other probes
        are called for this item and %GST_FLOW_OK or %TRUE is returned to the
@@ -28622,7 +44644,9 @@ The callback is allowed to modify the data pointer in @info.</doc>
               value="1"
               c:identifier="GST_PAD_PROBE_OK"
               glib:nick="ok">
-        <doc xml:space="preserve">normal probe return value. This leaves the probe in
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="541">normal probe return value. This leaves the probe in
        place, and defers decisions about dropping or passing data to other
        probes, if any. If there are no other probes, the default behaviour
        for the probe type applies ('block' for blocking probes,
@@ -28632,20 +44656,26 @@ The callback is allowed to modify the data pointer in @info.</doc>
               value="2"
               c:identifier="GST_PAD_PROBE_REMOVE"
               glib:nick="remove">
-        <doc xml:space="preserve">remove this probe.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="551">remove this probe.</doc>
       </member>
       <member name="pass"
               value="3"
               c:identifier="GST_PAD_PROBE_PASS"
               glib:nick="pass">
-        <doc xml:space="preserve">pass the data item in the block probe and block on the
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="552">pass the data item in the block probe and block on the
        next item.</doc>
       </member>
       <member name="handled"
               value="4"
               c:identifier="GST_PAD_PROBE_HANDLED"
               glib:nick="handled">
-        <doc xml:space="preserve">Data has been handled in the probe and will not be
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="554">Data has been handled in the probe and will not be
        forwarded further. For events and buffers this is the same behaviour as
        %GST_PAD_PROBE_DROP (except that in this case you need to unref the buffer
        or event yourself). For queries it will also return %TRUE to the caller.
@@ -28659,56 +44689,74 @@ The callback is allowed to modify the data pointer in @info.</doc>
               glib:type-name="GstPadProbeType"
               glib:get-type="gst_pad_probe_type_get_type"
               c:type="GstPadProbeType">
-      <doc xml:space="preserve">The different probing types that can occur. When either one of
+      <doc xml:space="preserve"
+           filename="gst/gstpad.h"
+           line="475">The different probing types that can occur. When either one of
 @GST_PAD_PROBE_TYPE_IDLE or @GST_PAD_PROBE_TYPE_BLOCK is used, the probe will be a
 blocking probe.</doc>
       <member name="invalid"
               value="0"
               c:identifier="GST_PAD_PROBE_TYPE_INVALID"
               glib:nick="invalid">
-        <doc xml:space="preserve">invalid probe type</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="477">invalid probe type</doc>
       </member>
       <member name="idle"
               value="1"
               c:identifier="GST_PAD_PROBE_TYPE_IDLE"
               glib:nick="idle">
-        <doc xml:space="preserve">probe idle pads and block while the callback is called</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="478">probe idle pads and block while the callback is called</doc>
       </member>
       <member name="block"
               value="2"
               c:identifier="GST_PAD_PROBE_TYPE_BLOCK"
               glib:nick="block">
-        <doc xml:space="preserve">probe and block pads</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="479">probe and block pads</doc>
       </member>
       <member name="buffer"
               value="16"
               c:identifier="GST_PAD_PROBE_TYPE_BUFFER"
               glib:nick="buffer">
-        <doc xml:space="preserve">probe buffers</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="480">probe buffers</doc>
       </member>
       <member name="buffer_list"
               value="32"
               c:identifier="GST_PAD_PROBE_TYPE_BUFFER_LIST"
               glib:nick="buffer-list">
-        <doc xml:space="preserve">probe buffer lists</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="481">probe buffer lists</doc>
       </member>
       <member name="event_downstream"
               value="64"
               c:identifier="GST_PAD_PROBE_TYPE_EVENT_DOWNSTREAM"
               glib:nick="event-downstream">
-        <doc xml:space="preserve">probe downstream events</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="482">probe downstream events</doc>
       </member>
       <member name="event_upstream"
               value="128"
               c:identifier="GST_PAD_PROBE_TYPE_EVENT_UPSTREAM"
               glib:nick="event-upstream">
-        <doc xml:space="preserve">probe upstream events</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="483">probe upstream events</doc>
       </member>
       <member name="event_flush"
               value="256"
               c:identifier="GST_PAD_PROBE_TYPE_EVENT_FLUSH"
               glib:nick="event-flush">
-        <doc xml:space="preserve">probe flush events. This probe has to be
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="484">probe flush events. This probe has to be
     explicitly enabled and is not included in the
     @@GST_PAD_PROBE_TYPE_EVENT_DOWNSTREAM or
     @@GST_PAD_PROBE_TYPE_EVENT_UPSTREAM probe types.</doc>
@@ -28717,116 +44765,157 @@ blocking probe.</doc>
               value="512"
               c:identifier="GST_PAD_PROBE_TYPE_QUERY_DOWNSTREAM"
               glib:nick="query-downstream">
-        <doc xml:space="preserve">probe downstream queries</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="488">probe downstream queries</doc>
       </member>
       <member name="query_upstream"
               value="1024"
               c:identifier="GST_PAD_PROBE_TYPE_QUERY_UPSTREAM"
               glib:nick="query-upstream">
-        <doc xml:space="preserve">probe upstream queries</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="489">probe upstream queries</doc>
       </member>
       <member name="push"
               value="4096"
               c:identifier="GST_PAD_PROBE_TYPE_PUSH"
               glib:nick="push">
-        <doc xml:space="preserve">probe push</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="490">probe push</doc>
       </member>
       <member name="pull"
               value="8192"
               c:identifier="GST_PAD_PROBE_TYPE_PULL"
               glib:nick="pull">
-        <doc xml:space="preserve">probe pull</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="491">probe pull</doc>
       </member>
       <member name="blocking"
               value="3"
               c:identifier="GST_PAD_PROBE_TYPE_BLOCKING"
               glib:nick="blocking">
-        <doc xml:space="preserve">probe and block at the next opportunity, at data flow or when idle</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="492">probe and block at the next opportunity, at data flow or when idle</doc>
       </member>
       <member name="data_downstream"
               value="112"
               c:identifier="GST_PAD_PROBE_TYPE_DATA_DOWNSTREAM"
               glib:nick="data-downstream">
-        <doc xml:space="preserve">probe downstream data (buffers, buffer lists, and events)</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="493">probe downstream data (buffers, buffer lists, and events)</doc>
       </member>
       <member name="data_upstream"
               value="128"
               c:identifier="GST_PAD_PROBE_TYPE_DATA_UPSTREAM"
               glib:nick="data-upstream">
-        <doc xml:space="preserve">probe upstream data (events)</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="494">probe upstream data (events)</doc>
       </member>
       <member name="data_both"
               value="240"
               c:identifier="GST_PAD_PROBE_TYPE_DATA_BOTH"
               glib:nick="data-both">
-        <doc xml:space="preserve">probe upstream and downstream data (buffers, buffer lists, and events)</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="495">probe upstream and downstream data (buffers, buffer lists, and events)</doc>
       </member>
       <member name="block_downstream"
               value="114"
               c:identifier="GST_PAD_PROBE_TYPE_BLOCK_DOWNSTREAM"
               glib:nick="block-downstream">
-        <doc xml:space="preserve">probe and block downstream data (buffers, buffer lists, and events)</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="496">probe and block downstream data (buffers, buffer lists, and events)</doc>
       </member>
       <member name="block_upstream"
               value="130"
               c:identifier="GST_PAD_PROBE_TYPE_BLOCK_UPSTREAM"
               glib:nick="block-upstream">
-        <doc xml:space="preserve">probe and block upstream data (events)</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="497">probe and block upstream data (events)</doc>
       </member>
       <member name="event_both"
               value="192"
               c:identifier="GST_PAD_PROBE_TYPE_EVENT_BOTH"
               glib:nick="event-both">
-        <doc xml:space="preserve">probe upstream and downstream events</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="498">probe upstream and downstream events</doc>
       </member>
       <member name="query_both"
               value="1536"
               c:identifier="GST_PAD_PROBE_TYPE_QUERY_BOTH"
               glib:nick="query-both">
-        <doc xml:space="preserve">probe upstream and downstream queries</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="499">probe upstream and downstream queries</doc>
       </member>
       <member name="all_both"
               value="1776"
               c:identifier="GST_PAD_PROBE_TYPE_ALL_BOTH"
               glib:nick="all-both">
-        <doc xml:space="preserve">probe upstream events and queries and downstream buffers, buffer lists, events and queries</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="500">probe upstream events and queries and downstream buffers, buffer lists, events and queries</doc>
       </member>
       <member name="scheduling"
               value="12288"
               c:identifier="GST_PAD_PROBE_TYPE_SCHEDULING"
               glib:nick="scheduling">
-        <doc xml:space="preserve">probe push and pull</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="501">probe push and pull</doc>
       </member>
     </bitfield>
     <callback name="PadQueryFunction" c:type="GstPadQueryFunction">
-      <doc xml:space="preserve">The signature of the query function.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstpad.h"
+           line="417">The signature of the query function.</doc>
+      <source-position filename="gst/gstpad.h" line="429"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE if the query could be performed.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="427">%TRUE if the query could be performed.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="pad" transfer-ownership="none">
-          <doc xml:space="preserve">the #GstPad to query.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="419">the #GstPad to query.</doc>
           <type name="Pad" c:type="GstPad*"/>
         </parameter>
         <parameter name="parent"
                    transfer-ownership="none"
                    nullable="1"
                    allow-none="1">
-          <doc xml:space="preserve">the parent of @pad. If the #GST_PAD_FLAG_NEED_PARENT
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="420">the parent of @pad. If the #GST_PAD_FLAG_NEED_PARENT
          flag is set, @parent is guaranteed to be not-%NULL and remain valid
          during the execution of this function.</doc>
           <type name="Object" c:type="GstObject*"/>
         </parameter>
         <parameter name="query" transfer-ownership="none">
-          <doc xml:space="preserve">the #GstQuery object to execute</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="423">the #GstQuery object to execute</doc>
           <type name="Query" c:type="GstQuery*"/>
         </parameter>
       </parameters>
     </callback>
     <callback name="PadStickyEventsForeachFunction"
               c:type="GstPadStickyEventsForeachFunction">
-      <doc xml:space="preserve">Callback used by gst_pad_sticky_events_foreach().
+      <doc xml:space="preserve"
+           filename="gst/gstpad.h"
+           line="646">Callback used by gst_pad_sticky_events_foreach().
 
 When this function returns %TRUE, the next event will be
 returned. When %FALSE is returned, gst_pad_sticky_events_foreach() will return.
@@ -28835,20 +44924,27 @@ When @event is set to %NULL, the item will be removed from the list of sticky ev
 @event can be replaced by assigning a new reference to it.
 This function is responsible for unreffing the old event when
 removing or modifying.</doc>
+      <source-position filename="gst/gstpad.h" line="664"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE if the iteration should continue</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpad.h"
+             line="662">%TRUE if the iteration should continue</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="pad" transfer-ownership="none">
-          <doc xml:space="preserve">the #GstPad.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="648">the #GstPad.</doc>
           <type name="Pad" c:type="GstPad*"/>
         </parameter>
         <parameter name="event"
                    transfer-ownership="none"
                    nullable="1"
                    allow-none="1">
-          <doc xml:space="preserve">a sticky #GstEvent.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="649">a sticky #GstEvent.</doc>
           <type name="Event" c:type="GstEvent**"/>
         </parameter>
         <parameter name="user_data"
@@ -28856,7 +44952,9 @@ removing or modifying.</doc>
                    nullable="1"
                    allow-none="1"
                    closure="2">
-          <doc xml:space="preserve">the #gpointer to optional user data.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="650">the #gpointer to optional user data.</doc>
           <type name="gpointer" c:type="gpointer"/>
         </parameter>
       </parameters>
@@ -28868,7 +44966,9 @@ removing or modifying.</doc>
            glib:type-name="GstPadTemplate"
            glib:get-type="gst_pad_template_get_type"
            glib:type-struct="PadTemplateClass">
-      <doc xml:space="preserve">Padtemplates describe the possible media types a pad or an elementfactory can
+      <doc xml:space="preserve"
+           filename="gst/gstpadtemplate.c"
+           line="23">Padtemplates describe the possible media types a pad or an elementfactory can
 handle. This allows for both inspection of handled types before loading the
 element plugin as well as identifying pads on elements that are not yet
 created (request or sometimes pads).
@@ -28928,28 +45028,42 @@ element class, this is usually done in the class_init of the class:
     gst_element_class_add_static_pad_template (gstelement_class, &amp;amp;my_template);
   }
 ]|</doc>
+      <source-position filename="gst/gstpadtemplate.h" line="157"/>
       <constructor name="new" c:identifier="gst_pad_template_new">
-        <doc xml:space="preserve">Creates a new pad template with a name according to the given template
+        <doc xml:space="preserve"
+             filename="gst/gstpadtemplate.c"
+             line="366">Creates a new pad template with a name according to the given template
 and with the given arguments.</doc>
+        <source-position filename="gst/gstpadtemplate.h" line="211"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">a new #GstPadTemplate.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstpadtemplate.c"
+               line="376">a new #GstPadTemplate.</doc>
           <type name="PadTemplate" c:type="GstPadTemplate*"/>
         </return-value>
         <parameters>
           <parameter name="name_template" transfer-ownership="none">
-            <doc xml:space="preserve">the name template.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpadtemplate.c"
+                 line="368">the name template.</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="direction" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstPadDirection of the template.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpadtemplate.c"
+                 line="369">the #GstPadDirection of the template.</doc>
             <type name="PadDirection" c:type="GstPadDirection"/>
           </parameter>
           <parameter name="presence" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstPadPresence of the pad.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpadtemplate.c"
+                 line="370">the #GstPadPresence of the pad.</doc>
             <type name="PadPresence" c:type="GstPadPresence"/>
           </parameter>
           <parameter name="caps" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstCaps set for the template.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpadtemplate.c"
+                 line="371">a #GstCaps set for the template.</doc>
             <type name="Caps" c:type="GstCaps*"/>
           </parameter>
         </parameters>
@@ -28957,18 +45071,27 @@ and with the given arguments.</doc>
       <constructor name="new_from_static_pad_template_with_gtype"
                    c:identifier="gst_pad_template_new_from_static_pad_template_with_gtype"
                    version="1.14">
-        <doc xml:space="preserve">Converts a #GstStaticPadTemplate into a #GstPadTemplate with a type.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpadtemplate.c"
+             line="329">Converts a #GstStaticPadTemplate into a #GstPadTemplate with a type.</doc>
+        <source-position filename="gst/gstpadtemplate.h" line="222"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">a new #GstPadTemplate.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstpadtemplate.c"
+               line="336">a new #GstPadTemplate.</doc>
           <type name="PadTemplate" c:type="GstPadTemplate*"/>
         </return-value>
         <parameters>
           <parameter name="pad_template" transfer-ownership="none">
-            <doc xml:space="preserve">the static pad template</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpadtemplate.c"
+                 line="331">the static pad template</doc>
             <type name="StaticPadTemplate" c:type="GstStaticPadTemplate*"/>
           </parameter>
           <parameter name="pad_type" transfer-ownership="none">
-            <doc xml:space="preserve">The #GType of the pad to create</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpadtemplate.c"
+                 line="332">The #GType of the pad to create</doc>
             <type name="GType" c:type="GType"/>
           </parameter>
         </parameters>
@@ -28976,93 +45099,184 @@ and with the given arguments.</doc>
       <constructor name="new_with_gtype"
                    c:identifier="gst_pad_template_new_with_gtype"
                    version="1.14">
-        <doc xml:space="preserve">Creates a new pad template with a name according to the given template
+        <doc xml:space="preserve"
+             filename="gst/gstpadtemplate.c"
+             line="402">Creates a new pad template with a name according to the given template
 and with the given arguments.</doc>
+        <source-position filename="gst/gstpadtemplate.h" line="215"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">a new #GstPadTemplate.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstpadtemplate.c"
+               line="413">a new #GstPadTemplate.</doc>
           <type name="PadTemplate" c:type="GstPadTemplate*"/>
         </return-value>
         <parameters>
           <parameter name="name_template" transfer-ownership="none">
-            <doc xml:space="preserve">the name template.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpadtemplate.c"
+                 line="404">the name template.</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="direction" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstPadDirection of the template.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpadtemplate.c"
+                 line="405">the #GstPadDirection of the template.</doc>
             <type name="PadDirection" c:type="GstPadDirection"/>
           </parameter>
           <parameter name="presence" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstPadPresence of the pad.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpadtemplate.c"
+                 line="406">the #GstPadPresence of the pad.</doc>
             <type name="PadPresence" c:type="GstPadPresence"/>
           </parameter>
           <parameter name="caps" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstCaps set for the template.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpadtemplate.c"
+                 line="407">a #GstCaps set for the template.</doc>
             <type name="Caps" c:type="GstCaps*"/>
           </parameter>
           <parameter name="pad_type" transfer-ownership="none">
-            <doc xml:space="preserve">The #GType of the pad to create</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpadtemplate.c"
+                 line="408">The #GType of the pad to create</doc>
             <type name="GType" c:type="GType"/>
           </parameter>
         </parameters>
       </constructor>
       <virtual-method name="pad_created" invoker="pad_created">
-        <doc xml:space="preserve">Emit the pad-created signal for this template when created by this pad.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpadtemplate.c"
+             line="527">Emit the pad-created signal for this template when created by this pad.</doc>
+        <source-position filename="gst/gstpadtemplate.h" line="153"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="templ" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstPadTemplate that has been created</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpadtemplate.c"
+                 line="529">a #GstPadTemplate that has been created</doc>
             <type name="PadTemplate" c:type="GstPadTemplate*"/>
           </instance-parameter>
           <parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstPad that created it</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpadtemplate.c"
+                 line="530">the #GstPad that created it</doc>
             <type name="Pad" c:type="GstPad*"/>
           </parameter>
         </parameters>
       </virtual-method>
       <method name="get_caps" c:identifier="gst_pad_template_get_caps">
-        <doc xml:space="preserve">Gets the capabilities of the pad template.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpadtemplate.c"
+             line="463">Gets the capabilities of the pad template.</doc>
+        <source-position filename="gst/gstpadtemplate.h" line="230"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the #GstCaps of the pad template.
+          <doc xml:space="preserve"
+               filename="gst/gstpadtemplate.c"
+               line="469">the #GstCaps of the pad template.
 Unref after usage.</doc>
           <type name="Caps" c:type="GstCaps*"/>
         </return-value>
         <parameters>
           <instance-parameter name="templ" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstPadTemplate to get capabilities of.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpadtemplate.c"
+                 line="465">a #GstPadTemplate to get capabilities of.</doc>
+            <type name="PadTemplate" c:type="GstPadTemplate*"/>
+          </instance-parameter>
+        </parameters>
+      </method>
+      <method name="get_documentation_caps"
+              c:identifier="gst_pad_template_get_documentation_caps"
+              version="1.18">
+        <doc xml:space="preserve"
+             filename="gst/gstpadtemplate.c"
+             line="505">See gst_pad_template_set_documentation_caps().</doc>
+        <source-position filename="gst/gstpadtemplate.h" line="236"/>
+        <return-value transfer-ownership="full">
+          <doc xml:space="preserve"
+               filename="gst/gstpadtemplate.c"
+               line="511">The caps to document. For convenience, this will return
+  gst_pad_template_get_caps() when no documentation caps were set.</doc>
+          <type name="Caps" c:type="GstCaps*"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="templ" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst/gstpadtemplate.c"
+                 line="507">the pad template to get documented capabilities on</doc>
             <type name="PadTemplate" c:type="GstPadTemplate*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="pad_created" c:identifier="gst_pad_template_pad_created">
-        <doc xml:space="preserve">Emit the pad-created signal for this template when created by this pad.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpadtemplate.c"
+             line="527">Emit the pad-created signal for this template when created by this pad.</doc>
+        <source-position filename="gst/gstpadtemplate.h" line="239"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="templ" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstPadTemplate that has been created</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpadtemplate.c"
+                 line="529">a #GstPadTemplate that has been created</doc>
             <type name="PadTemplate" c:type="GstPadTemplate*"/>
           </instance-parameter>
           <parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstPad that created it</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpadtemplate.c"
+                 line="530">the #GstPad that created it</doc>
             <type name="Pad" c:type="GstPad*"/>
           </parameter>
         </parameters>
       </method>
+      <method name="set_documentation_caps"
+              c:identifier="gst_pad_template_set_documentation_caps"
+              version="1.18">
+        <doc xml:space="preserve"
+             filename="gst/gstpadtemplate.c"
+             line="483">Certain elements will dynamically construct the caps of their
+pad templates. In order not to let environment-specific information
+into the documentation, element authors should use this method to
+expose "stable" caps to the reader.</doc>
+        <source-position filename="gst/gstpadtemplate.h" line="233"/>
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="templ" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst/gstpadtemplate.c"
+                 line="485">the pad template to set documented capabilities on</doc>
+            <type name="PadTemplate" c:type="GstPadTemplate*"/>
+          </instance-parameter>
+          <parameter name="caps" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst/gstpadtemplate.c"
+                 line="486">the documented capabilities</doc>
+            <type name="Caps" c:type="GstCaps*"/>
+          </parameter>
+        </parameters>
+      </method>
       <property name="caps"
                 writable="1"
                 construct-only="1"
                 transfer-ownership="none">
-        <doc xml:space="preserve">The capabilities of the pad described by the pad template.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpadtemplate.c"
+             line="188">The capabilities of the pad described by the pad template.</doc>
         <type name="Caps"/>
       </property>
       <property name="direction"
                 writable="1"
                 construct-only="1"
                 transfer-ownership="none">
-        <doc xml:space="preserve">The direction of the pad described by the pad template.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpadtemplate.c"
+             line="166">The direction of the pad described by the pad template.</doc>
         <type name="PadDirection"/>
       </property>
       <property name="gtype"
@@ -29070,21 +45284,27 @@ Unref after usage.</doc>
                 writable="1"
                 construct-only="1"
                 transfer-ownership="none">
-        <doc xml:space="preserve">The type of the pad described by the pad template.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpadtemplate.c"
+             line="199">The type of the pad described by the pad template.</doc>
         <type name="GType" c:type="GType"/>
       </property>
       <property name="name-template"
                 writable="1"
                 construct-only="1"
                 transfer-ownership="none">
-        <doc xml:space="preserve">The name template of the pad template.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpadtemplate.c"
+             line="156">The name template of the pad template.</doc>
         <type name="utf8" c:type="gchar*"/>
       </property>
       <property name="presence"
                 writable="1"
                 construct-only="1"
                 transfer-ownership="none">
-        <doc xml:space="preserve">When the pad described by the pad template will become available.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpadtemplate.c"
+             line="177">When the pad described by the pad template will become available.</doc>
         <type name="PadPresence"/>
       </property>
       <field name="object">
@@ -29103,25 +45323,34 @@ Unref after usage.</doc>
         <type name="Caps" c:type="GstCaps*"/>
       </field>
       <union name="ABI" c:type="ABI">
+        <source-position filename="gst/gstpadtemplate.h" line="146"/>
         <field name="_gst_reserved" writable="1">
-          <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+          <array zero-terminated="0" fixed-size="4">
             <type name="gpointer" c:type="gpointer"/>
           </array>
         </field>
         <record name="abi" c:type="abi">
+          <source-position filename="gst/gstpadtemplate.h" line="145"/>
           <field name="gtype" writable="1">
             <type name="GType" c:type="GType"/>
           </field>
+          <field name="documentation_caps" writable="1">
+            <type name="Caps" c:type="GstCaps*"/>
+          </field>
         </record>
       </union>
       <glib:signal name="pad-created" when="last">
-        <doc xml:space="preserve">This signal is fired when an element creates a pad from this template.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpadtemplate.c"
+             line="139">This signal is fired when an element creates a pad from this template.</doc>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">the pad that was created.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpadtemplate.c"
+                 line="142">the pad that was created.</doc>
             <type name="Pad"/>
           </parameter>
         </parameters>
@@ -29130,28 +45359,34 @@ Unref after usage.</doc>
     <record name="PadTemplateClass"
             c:type="GstPadTemplateClass"
             glib:is-gtype-struct-for="PadTemplate">
+      <source-position filename="gst/gstpadtemplate.h" line="157"/>
       <field name="parent_class">
         <type name="ObjectClass" c:type="GstObjectClass"/>
       </field>
       <field name="pad_created">
         <callback name="pad_created">
+          <source-position filename="gst/gstpadtemplate.h" line="153"/>
           <return-value transfer-ownership="none">
             <type name="none" c:type="void"/>
           </return-value>
           <parameters>
             <parameter name="templ" transfer-ownership="none">
-              <doc xml:space="preserve">a #GstPadTemplate that has been created</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstpadtemplate.c"
+                   line="529">a #GstPadTemplate that has been created</doc>
               <type name="PadTemplate" c:type="GstPadTemplate*"/>
             </parameter>
             <parameter name="pad" transfer-ownership="none">
-              <doc xml:space="preserve">the #GstPad that created it</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstpadtemplate.c"
+                   line="530">the #GstPad that created it</doc>
               <type name="Pad" c:type="GstPad*"/>
             </parameter>
           </parameters>
         </callback>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -29160,32 +45395,43 @@ Unref after usage.</doc>
               glib:type-name="GstPadTemplateFlags"
               glib:get-type="gst_pad_template_flags_get_type"
               c:type="GstPadTemplateFlags">
-      <doc xml:space="preserve">Flags for the padtemplate</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstpadtemplate.h"
+           line="107">Flags for the padtemplate</doc>
       <member name="last"
               value="256"
               c:identifier="GST_PAD_TEMPLATE_FLAG_LAST"
               glib:nick="last">
-        <doc xml:space="preserve">first flag that can be used by subclasses.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpadtemplate.h"
+             line="109">first flag that can be used by subclasses.</doc>
       </member>
     </bitfield>
     <callback name="PadUnlinkFunction" c:type="GstPadUnlinkFunction">
-      <doc xml:space="preserve">Function signature to handle a unlinking the pad prom its peer.
+      <doc xml:space="preserve"
+           filename="gst/gstpad.h"
+           line="447">Function signature to handle a unlinking the pad prom its peer.
 
 The pad's lock is already held when the unlink function is called, so most
 pad functions cannot be called from within the callback.</doc>
+      <source-position filename="gst/gstpad.h" line="459"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="pad" transfer-ownership="none">
-          <doc xml:space="preserve">the #GstPad that is linked.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="449">the #GstPad that is linked.</doc>
           <type name="Pad" c:type="GstPad*"/>
         </parameter>
         <parameter name="parent"
                    transfer-ownership="none"
                    nullable="1"
                    allow-none="1">
-          <doc xml:space="preserve">the parent of @pad. If the #GST_PAD_FLAG_NEED_PARENT
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="450">the parent of @pad. If the #GST_PAD_FLAG_NEED_PARENT
          flag is set, @parent is guaranteed to be not-%NULL and remain valid
          during the execution of this function.</doc>
           <type name="Object" c:type="GstObject*"/>
@@ -29198,6 +45444,10 @@ pad functions cannot be called from within the callback.</doc>
            glib:type-name="GstParamArray"
            glib:get-type="gst_param_spec_array_get_type"
            glib:fundamental="1">
+      <doc xml:space="preserve"
+           filename="gst/gstparamspecs.h"
+           line="96">A fundamental type that describes a #GParamSpec for arrays of
+values</doc>
     </class>
     <class name="ParamFraction"
            c:symbol-prefix="param_spec_fraction"
@@ -29205,52 +45455,82 @@ pad functions cannot be called from within the callback.</doc>
            glib:type-name="GstParamFraction"
            glib:get-type="gst_param_spec_fraction_get_type"
            glib:fundamental="1">
+      <doc xml:space="preserve"
+           filename="gst/gstparamspecs.h"
+           line="107">A fundamental type that describes a #GParamSpec for fractional
+properties</doc>
     </class>
     <record name="ParamSpecArray" c:type="GstParamSpecArray">
-      <doc xml:space="preserve">A GParamSpec derived structure for arrays of values.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstparamspecs.h"
+           line="154">A GParamSpec derived structure for arrays of values.</doc>
+      <source-position filename="gst/gstparamspecs.h" line="165"/>
       <field name="parent_instance" writable="1">
-        <doc xml:space="preserve">super class</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstparamspecs.h"
+             line="156">super class</doc>
         <type name="GObject.ParamSpec" c:type="GParamSpec"/>
       </field>
       <field name="element_spec" writable="1">
-        <doc xml:space="preserve">the #GParamSpec of the type of values in the array</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstparamspecs.h"
+             line="157">the #GParamSpec of the type of values in the array</doc>
         <type name="GObject.ParamSpec" c:type="GParamSpec*"/>
       </field>
     </record>
     <record name="ParamSpecFraction" c:type="GstParamSpecFraction">
-      <doc xml:space="preserve">A GParamSpec derived structure that contains the meta data for fractional
+      <doc xml:space="preserve"
+           filename="gst/gstparamspecs.h"
+           line="133">A GParamSpec derived structure that contains the meta data for fractional
 properties.</doc>
+      <source-position filename="gst/gstparamspecs.h" line="152"/>
       <field name="parent_instance" writable="1">
-        <doc xml:space="preserve">super class</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstparamspecs.h"
+             line="135">super class</doc>
         <type name="GObject.ParamSpec" c:type="GParamSpec"/>
       </field>
       <field name="min_num" writable="1">
-        <doc xml:space="preserve">minimal numerator</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstparamspecs.h"
+             line="136">minimal numerator</doc>
         <type name="gint" c:type="gint"/>
       </field>
       <field name="min_den" writable="1">
-        <doc xml:space="preserve">minimal denominator</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstparamspecs.h"
+             line="137">minimal denominator</doc>
         <type name="gint" c:type="gint"/>
       </field>
       <field name="max_num" writable="1">
-        <doc xml:space="preserve">maximal numerator</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstparamspecs.h"
+             line="138">maximal numerator</doc>
         <type name="gint" c:type="gint"/>
       </field>
       <field name="max_den" writable="1">
-        <doc xml:space="preserve">maximal denominator</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstparamspecs.h"
+             line="139">maximal denominator</doc>
         <type name="gint" c:type="gint"/>
       </field>
       <field name="def_num" writable="1">
-        <doc xml:space="preserve">default numerator</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstparamspecs.h"
+             line="140">default numerator</doc>
         <type name="gint" c:type="gint"/>
       </field>
       <field name="def_den" writable="1">
-        <doc xml:space="preserve">default denominator</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstparamspecs.h"
+             line="141">default denominator</doc>
         <type name="gint" c:type="gint"/>
       </field>
     </record>
     <record name="ParentBufferMeta" c:type="GstParentBufferMeta" version="1.6">
-      <doc xml:space="preserve">The #GstParentBufferMeta is a #GstMeta which can be attached to a #GstBuffer
+      <doc xml:space="preserve"
+           filename="gst/gstbuffer.h"
+           line="697">The #GstParentBufferMeta is a #GstMeta which can be attached to a #GstBuffer
 to hold a reference to another buffer that is only released when the child
 #GstBuffer is released.
 
@@ -29258,20 +45538,30 @@ Typically, #GstParentBufferMeta is used when the child buffer is directly
 using the #GstMemory of the parent buffer, and wants to prevent the parent
 buffer from being returned to a buffer pool until the #GstMemory is available
 for re-use.</doc>
+      <source-position filename="gst/gstbuffer.h" line="719"/>
       <field name="parent" writable="1">
-        <doc xml:space="preserve">the parent #GstMeta structure</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.h"
+             line="699">the parent #GstMeta structure</doc>
         <type name="Meta" c:type="GstMeta"/>
       </field>
       <field name="buffer" writable="1">
-        <doc xml:space="preserve">the #GstBuffer on which a reference is being held.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.h"
+             line="700">the #GstBuffer on which a reference is being held.</doc>
         <type name="Buffer" c:type="GstBuffer*"/>
       </field>
       <function name="get_info"
                 c:identifier="gst_parent_buffer_meta_get_info"
                 version="1.6">
-        <doc xml:space="preserve">Get the global #GstMetaInfo describing  the #GstParentBufferMeta meta.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The #GstMetaInfo</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.c"
+             line="2672">Get the global #GstMetaInfo describing  the #GstParentBufferMeta meta.</doc>
+        <source-position filename="gst/gstbuffer.h" line="739"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstbuffer.c"
+               line="2677">The #GstMetaInfo</doc>
           <type name="MetaInfo" c:type="const GstMetaInfo*"/>
         </return-value>
       </function>
@@ -29281,50 +45571,75 @@ for re-use.</doc>
             glib:type-name="GstParseContext"
             glib:get-type="gst_parse_context_get_type"
             c:symbol-prefix="parse_context">
-      <doc xml:space="preserve">Opaque structure.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstparse.h"
+           line="90">Opaque structure.</doc>
+      <source-position filename="gst/gstparse.h" line="95"/>
       <constructor name="new" c:identifier="gst_parse_context_new">
-        <doc xml:space="preserve">Allocates a parse context for use with gst_parse_launch_full() or
+        <doc xml:space="preserve"
+             filename="gst/gstparse.c"
+             line="70">Allocates a parse context for use with gst_parse_launch_full() or
 gst_parse_launchv_full().
 
 Free-function: gst_parse_context_free</doc>
+        <source-position filename="gst/gstparse.h" line="103"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">a newly-allocated parse context. Free
+          <doc xml:space="preserve"
+               filename="gst/gstparse.c"
+               line="78">a newly-allocated parse context. Free
     with gst_parse_context_free() when no longer needed.</doc>
           <type name="ParseContext" c:type="GstParseContext*"/>
         </return-value>
       </constructor>
       <method name="copy" c:identifier="gst_parse_context_copy">
-        <doc xml:space="preserve">Copies the @context.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstparse.c"
+             line="96">Copies the @context.</doc>
+        <source-position filename="gst/gstparse.h" line="112"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">A copied #GstParseContext</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstparse.c"
+               line="102">A copied #GstParseContext</doc>
           <type name="ParseContext" c:type="GstParseContext*"/>
         </return-value>
         <parameters>
           <instance-parameter name="context" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstParseContext</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstparse.c"
+                 line="98">a #GstParseContext</doc>
             <type name="ParseContext" c:type="const GstParseContext*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="free" c:identifier="gst_parse_context_free">
-        <doc xml:space="preserve">Frees a parse context previously allocated with gst_parse_context_new().</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstparse.c"
+             line="124">Frees a parse context previously allocated with gst_parse_context_new().</doc>
+        <source-position filename="gst/gstparse.h" line="109"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="context" transfer-ownership="full">
-            <doc xml:space="preserve">a #GstParseContext</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstparse.c"
+                 line="126">a #GstParseContext</doc>
             <type name="ParseContext" c:type="GstParseContext*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_missing_elements"
               c:identifier="gst_parse_context_get_missing_elements">
-        <doc xml:space="preserve">Retrieve missing elements from a previous run of gst_parse_launch_full()
+        <doc xml:space="preserve"
+             filename="gst/gstparse.c"
+             line="142">Retrieve missing elements from a previous run of gst_parse_launch_full()
 or gst_parse_launchv_full(). Will only return results if an error code
 of %GST_PARSE_ERROR_NO_SUCH_ELEMENT was returned.</doc>
+        <source-position filename="gst/gstparse.h" line="106"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">a
+          <doc xml:space="preserve"
+               filename="gst/gstparse.c"
+               line="150">a
     %NULL-terminated array of element factory name strings of missing
     elements. Free with g_strfreev() when no longer needed.</doc>
           <array c:type="gchar**">
@@ -29333,7 +45648,9 @@ of %GST_PARSE_ERROR_NO_SUCH_ELEMENT was returned.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="context" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstParseContext</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstparse.c"
+                 line="144">a #GstParseContext</doc>
             <type name="ParseContext" c:type="GstParseContext*"/>
           </instance-parameter>
         </parameters>
@@ -29344,59 +45661,81 @@ of %GST_PARSE_ERROR_NO_SUCH_ELEMENT was returned.</doc>
                  glib:get-type="gst_parse_error_get_type"
                  c:type="GstParseError"
                  glib:error-domain="gst_parse_error">
-      <doc xml:space="preserve">The different parsing errors that can occur.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstparse.h"
+           line="41">The different parsing errors that can occur.</doc>
       <member name="syntax"
               value="0"
               c:identifier="GST_PARSE_ERROR_SYNTAX"
               glib:nick="syntax">
-        <doc xml:space="preserve">A syntax error occurred.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstparse.h"
+             line="43">A syntax error occurred.</doc>
       </member>
       <member name="no_such_element"
               value="1"
               c:identifier="GST_PARSE_ERROR_NO_SUCH_ELEMENT"
               glib:nick="no-such-element">
-        <doc xml:space="preserve">The description contained an unknown element</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstparse.h"
+             line="44">The description contained an unknown element</doc>
       </member>
       <member name="no_such_property"
               value="2"
               c:identifier="GST_PARSE_ERROR_NO_SUCH_PROPERTY"
               glib:nick="no-such-property">
-        <doc xml:space="preserve">An element did not have a specified property</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstparse.h"
+             line="45">An element did not have a specified property</doc>
       </member>
       <member name="link"
               value="3"
               c:identifier="GST_PARSE_ERROR_LINK"
               glib:nick="link">
-        <doc xml:space="preserve">There was an error linking two pads.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstparse.h"
+             line="46">There was an error linking two pads.</doc>
       </member>
       <member name="could_not_set_property"
               value="4"
               c:identifier="GST_PARSE_ERROR_COULD_NOT_SET_PROPERTY"
               glib:nick="could-not-set-property">
-        <doc xml:space="preserve">There was an error setting a property</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstparse.h"
+             line="47">There was an error setting a property</doc>
       </member>
       <member name="empty_bin"
               value="5"
               c:identifier="GST_PARSE_ERROR_EMPTY_BIN"
               glib:nick="empty-bin">
-        <doc xml:space="preserve">An empty bin was specified.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstparse.h"
+             line="48">An empty bin was specified.</doc>
       </member>
       <member name="empty"
               value="6"
               c:identifier="GST_PARSE_ERROR_EMPTY"
               glib:nick="empty">
-        <doc xml:space="preserve">An empty description was specified</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstparse.h"
+             line="49">An empty description was specified</doc>
       </member>
       <member name="delayed_link"
               value="7"
               c:identifier="GST_PARSE_ERROR_DELAYED_LINK"
               glib:nick="delayed-link">
-        <doc xml:space="preserve">A delayed link did not get resolved.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstparse.h"
+             line="50">A delayed link did not get resolved.</doc>
       </member>
       <function name="quark" c:identifier="gst_parse_error_quark">
-        <doc xml:space="preserve">Get the error quark used by the parsing subsystem.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstparse.c"
+             line="52">Get the error quark used by the parsing subsystem.</doc>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the quark of the parse errors.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstparse.c"
+               line="57">the quark of the parse errors.</doc>
           <type name="GLib.Quark" c:type="GQuark"/>
         </return-value>
       </function>
@@ -29405,18 +45744,24 @@ of %GST_PARSE_ERROR_NO_SUCH_ELEMENT was returned.</doc>
               glib:type-name="GstParseFlags"
               glib:get-type="gst_parse_flags_get_type"
               c:type="GstParseFlags">
-      <doc xml:space="preserve">Parsing options.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstparse.h"
+           line="66">Parsing options.</doc>
       <member name="none"
               value="0"
               c:identifier="GST_PARSE_FLAG_NONE"
               glib:nick="none">
-        <doc xml:space="preserve">Do not use any special parsing options.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstparse.h"
+             line="68">Do not use any special parsing options.</doc>
       </member>
       <member name="fatal_errors"
               value="1"
               c:identifier="GST_PARSE_FLAG_FATAL_ERRORS"
               glib:nick="fatal-errors">
-        <doc xml:space="preserve">Always return %NULL when an error occurs
+        <doc xml:space="preserve"
+             filename="gst/gstparse.h"
+             line="69">Always return %NULL when an error occurs
     (default behaviour is to return partially constructed bins or elements
      in some cases)</doc>
       </member>
@@ -29424,16 +45769,20 @@ of %GST_PARSE_ERROR_NO_SUCH_ELEMENT was returned.</doc>
               value="2"
               c:identifier="GST_PARSE_FLAG_NO_SINGLE_ELEMENT_BINS"
               glib:nick="no-single-element-bins">
-        <doc xml:space="preserve">If a bin only has a single element,
+        <doc xml:space="preserve"
+             filename="gst/gstparse.h"
+             line="72">If a bin only has a single element,
     just return the element.</doc>
       </member>
       <member name="place_in_bin"
               value="4"
               c:identifier="GST_PARSE_FLAG_PLACE_IN_BIN"
               glib:nick="place-in-bin">
-        <doc xml:space="preserve">If more than one toplevel element is described
+        <doc xml:space="preserve"
+             filename="gst/gstparse.h"
+             line="74">If more than one toplevel element is described
     by the pipeline description string, put them in a #GstBin instead of a
-    #GstPipeline. (Since 1.10)</doc>
+    #GstPipeline. (Since: 1.10)</doc>
       </member>
     </bitfield>
     <class name="Pipeline"
@@ -29443,7 +45792,9 @@ of %GST_PARSE_ERROR_NO_SUCH_ELEMENT was returned.</doc>
            glib:type-name="GstPipeline"
            glib:get-type="gst_pipeline_get_type"
            glib:type-struct="PipelineClass">
-      <doc xml:space="preserve">A #GstPipeline is a special #GstBin used as the toplevel container for
+      <doc xml:space="preserve"
+           filename="gst/gstpipeline.c"
+           line="23">A #GstPipeline is a special #GstBin used as the toplevel container for
 the filter graph. The #GstPipeline will manage the selection and
 distribution of a global #GstClock as well as provide a #GstBus to the
 application.
@@ -29488,11 +45839,17 @@ to PLAYING again. The effect is that the running time (as the difference
 between the clock time and the base time) will count how much time was spent
 in the PLAYING state. This default behaviour can be changed with the
 gst_element_set_start_time() method.</doc>
+      <source-position filename="gst/gstpipeline.h" line="89"/>
       <implements name="ChildProxy"/>
       <constructor name="new" c:identifier="gst_pipeline_new">
-        <doc xml:space="preserve">Create a new pipeline with the given name.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpipeline.c"
+             line="331">Create a new pipeline with the given name.</doc>
+        <source-position filename="gst/gstpipeline.h" line="95"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">newly created GstPipeline
+          <doc xml:space="preserve"
+               filename="gst/gstpipeline.c"
+               line="337">newly created GstPipeline
 
 MT safe.</doc>
           <type name="Element" c:type="GstElement*"/>
@@ -29502,13 +45859,17 @@ MT safe.</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">name of new pipeline</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpipeline.c"
+                 line="333">name of new pipeline</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </constructor>
       <method name="auto_clock" c:identifier="gst_pipeline_auto_clock">
-        <doc xml:space="preserve">Let @pipeline select a clock automatically. This is the default
+        <doc xml:space="preserve"
+             filename="gst/gstpipeline.c"
+             line="887">Let @pipeline select a clock automatically. This is the default
 behaviour.
 
 Use this function if you previous forced a fixed clock with
@@ -29516,22 +45877,30 @@ gst_pipeline_use_clock() and want to restore the default
 pipeline clock selection algorithm.
 
 MT safe.</doc>
+        <source-position filename="gst/gstpipeline.h" line="113"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="pipeline" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstPipeline</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpipeline.c"
+                 line="889">a #GstPipeline</doc>
             <type name="Pipeline" c:type="GstPipeline*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_auto_flush_bus"
               c:identifier="gst_pipeline_get_auto_flush_bus">
-        <doc xml:space="preserve">Check if @pipeline will automatically flush messages when going to
+        <doc xml:space="preserve"
+             filename="gst/gstpipeline.c"
+             line="1000">Check if @pipeline will automatically flush messages when going to
 the NULL state.</doc>
+        <source-position filename="gst/gstpipeline.h" line="131"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">whether the pipeline will automatically flush its bus when
+          <doc xml:space="preserve"
+               filename="gst/gstpipeline.c"
+               line="1007">whether the pipeline will automatically flush its bus when
 going from READY to NULL state or not.
 
 MT safe.</doc>
@@ -29539,23 +45908,32 @@ MT safe.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="pipeline" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstPipeline</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpipeline.c"
+                 line="1002">a #GstPipeline</doc>
             <type name="Pipeline" c:type="GstPipeline*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_bus" c:identifier="gst_pipeline_get_bus">
-        <doc xml:space="preserve">Gets the #GstBus of @pipeline. The bus allows applications to receive
+        <doc xml:space="preserve"
+             filename="gst/gstpipeline.c"
+             line="737">Gets the #GstBus of @pipeline. The bus allows applications to receive
 #GstMessage packets.</doc>
+        <source-position filename="gst/gstpipeline.h" line="98"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a #GstBus, unref after usage.
+          <doc xml:space="preserve"
+               filename="gst/gstpipeline.c"
+               line="744">a #GstBus, unref after usage.
 
 MT safe.</doc>
           <type name="Bus" c:type="GstBus*"/>
         </return-value>
         <parameters>
           <instance-parameter name="pipeline" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstPipeline</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpipeline.c"
+                 line="739">a #GstPipeline</doc>
             <type name="Pipeline" c:type="GstPipeline*"/>
           </instance-parameter>
         </parameters>
@@ -29563,34 +45941,48 @@ MT safe.</doc>
       <method name="get_clock"
               c:identifier="gst_pipeline_get_clock"
               introspectable="0">
-        <doc xml:space="preserve">Gets the current clock used by @pipeline. Users of object
+        <doc xml:space="preserve"
+             filename="gst/gstpipeline.c"
+             line="790">Gets the current clock used by @pipeline. Users of object
 oriented languages should use gst_pipeline_get_pipeline_clock()
 to avoid confusion with gst_element_get_clock() which has a different behavior.
 
 Unlike gst_element_get_clock(), this function will always return a
 clock, even if the pipeline is not in the PLAYING state.</doc>
+        <source-position filename="gst/gstpipeline.h" line="107"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a #GstClock, unref after usage.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstpipeline.c"
+               line="801">a #GstClock, unref after usage.</doc>
           <type name="Clock" c:type="GstClock*"/>
         </return-value>
         <parameters>
           <instance-parameter name="pipeline" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstPipeline</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpipeline.c"
+                 line="792">a #GstPipeline</doc>
             <type name="Pipeline" c:type="GstPipeline*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_delay" c:identifier="gst_pipeline_get_delay">
-        <doc xml:space="preserve">Get the configured delay (see gst_pipeline_set_delay()).</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpipeline.c"
+             line="945">Get the configured delay (see gst_pipeline_set_delay()).</doc>
+        <source-position filename="gst/gstpipeline.h" line="119"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The configured delay.
+          <doc xml:space="preserve"
+               filename="gst/gstpipeline.c"
+               line="951">The configured delay.
 
 MT safe.</doc>
           <type name="ClockTime" c:type="GstClockTime"/>
         </return-value>
         <parameters>
           <instance-parameter name="pipeline" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstPipeline</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpipeline.c"
+                 line="947">a #GstPipeline</doc>
             <type name="Pipeline" c:type="GstPipeline*"/>
           </instance-parameter>
         </parameters>
@@ -29598,15 +45990,22 @@ MT safe.</doc>
       <method name="get_latency"
               c:identifier="gst_pipeline_get_latency"
               version="1.6">
-        <doc xml:space="preserve">Gets the latency that should be configured on the pipeline. See
+        <doc xml:space="preserve"
+             filename="gst/gstpipeline.c"
+             line="1057">Gets the latency that should be configured on the pipeline. See
 gst_pipeline_set_latency().</doc>
+        <source-position filename="gst/gstpipeline.h" line="125"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">Latency to configure on the pipeline or GST_CLOCK_TIME_NONE</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstpipeline.c"
+               line="1064">Latency to configure on the pipeline or GST_CLOCK_TIME_NONE</doc>
           <type name="ClockTime" c:type="GstClockTime"/>
         </return-value>
         <parameters>
           <instance-parameter name="pipeline" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstPipeline</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpipeline.c"
+                 line="1059">a #GstPipeline</doc>
             <type name="Pipeline" c:type="GstPipeline*"/>
           </instance-parameter>
         </parameters>
@@ -29614,24 +46013,33 @@ gst_pipeline_set_latency().</doc>
       <method name="get_pipeline_clock"
               c:identifier="gst_pipeline_get_pipeline_clock"
               version="1.6">
-        <doc xml:space="preserve">Gets the current clock used by @pipeline.
+        <doc xml:space="preserve"
+             filename="gst/gstpipeline.c"
+             line="809">Gets the current clock used by @pipeline.
 
 Unlike gst_element_get_clock(), this function will always return a
 clock, even if the pipeline is not in the PLAYING state.</doc>
+        <source-position filename="gst/gstpipeline.h" line="110"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a #GstClock, unref after usage.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstpipeline.c"
+               line="818">a #GstClock, unref after usage.</doc>
           <type name="Clock" c:type="GstClock*"/>
         </return-value>
         <parameters>
           <instance-parameter name="pipeline" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstPipeline</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpipeline.c"
+                 line="811">a #GstPipeline</doc>
             <type name="Pipeline" c:type="GstPipeline*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="set_auto_flush_bus"
               c:identifier="gst_pipeline_set_auto_flush_bus">
-        <doc xml:space="preserve">Usually, when a pipeline goes from READY to NULL state, it automatically
+        <doc xml:space="preserve"
+             filename="gst/gstpipeline.c"
+             line="969">Usually, when a pipeline goes from READY to NULL state, it automatically
 flushes all pending messages on the bus, which is done for refcounting
 purposes, to break circular references.
 
@@ -29645,16 +46053,21 @@ It is important that all messages on the bus are handled when the
 automatic flushing is disabled else memory leaks will be introduced.
 
 MT safe.</doc>
+        <source-position filename="gst/gstpipeline.h" line="128"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="pipeline" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstPipeline</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpipeline.c"
+                 line="971">a #GstPipeline</doc>
             <type name="Pipeline" c:type="GstPipeline*"/>
           </instance-parameter>
           <parameter name="auto_flush" transfer-ownership="none">
-            <doc xml:space="preserve">whether or not to automatically flush the bus when
+            <doc xml:space="preserve"
+                 filename="gst/gstpipeline.c"
+                 line="972">whether or not to automatically flush the bus when
 the pipeline goes from READY to NULL state</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
@@ -29663,10 +46076,15 @@ the pipeline goes from READY to NULL state</doc>
       <method name="set_clock"
               c:identifier="gst_pipeline_set_clock"
               introspectable="0">
-        <doc xml:space="preserve">Set the clock for @pipeline. The clock will be distributed
+        <doc xml:space="preserve"
+             filename="gst/gstpipeline.c"
+             line="863">Set the clock for @pipeline. The clock will be distributed
 to all the elements managed by the pipeline.</doc>
+        <source-position filename="gst/gstpipeline.h" line="104"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the clock could be set on the pipeline. %FALSE if
+          <doc xml:space="preserve"
+               filename="gst/gstpipeline.c"
+               line="871">%TRUE if the clock could be set on the pipeline. %FALSE if
   some element did not accept the clock.
 
 MT safe.</doc>
@@ -29674,17 +46092,23 @@ MT safe.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="pipeline" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstPipeline</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpipeline.c"
+                 line="865">a #GstPipeline</doc>
             <type name="Pipeline" c:type="GstPipeline*"/>
           </instance-parameter>
           <parameter name="clock" transfer-ownership="none">
-            <doc xml:space="preserve">the clock to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpipeline.c"
+                 line="866">the clock to set</doc>
             <type name="Clock" c:type="GstClock*"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_delay" c:identifier="gst_pipeline_set_delay">
-        <doc xml:space="preserve">Set the expected delay needed for all elements to perform the
+        <doc xml:space="preserve"
+             filename="gst/gstpipeline.c"
+             line="918">Set the expected delay needed for all elements to perform the
 PAUSED to PLAYING state change. @delay will be added to the
 base time of the elements so that they wait an additional @delay
 amount of time before starting to process buffers and cannot be
@@ -29694,16 +46118,21 @@ This option is used for tuning purposes and should normally not be
 used.
 
 MT safe.</doc>
+        <source-position filename="gst/gstpipeline.h" line="116"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="pipeline" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstPipeline</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpipeline.c"
+                 line="920">a #GstPipeline</doc>
             <type name="Pipeline" c:type="GstPipeline*"/>
           </instance-parameter>
           <parameter name="delay" transfer-ownership="none">
-            <doc xml:space="preserve">the delay</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpipeline.c"
+                 line="921">the delay</doc>
             <type name="ClockTime" c:type="GstClockTime"/>
           </parameter>
         </parameters>
@@ -29711,29 +46140,38 @@ MT safe.</doc>
       <method name="set_latency"
               c:identifier="gst_pipeline_set_latency"
               version="1.6">
-        <doc xml:space="preserve">Sets the latency that should be configured on the pipeline. Setting
+        <doc xml:space="preserve"
+             filename="gst/gstpipeline.c"
+             line="1026">Sets the latency that should be configured on the pipeline. Setting
 GST_CLOCK_TIME_NONE will restore the default behaviour of using the minimum
 latency from the LATENCY query. Setting this is usually not required and
 the pipeline will figure out an appropriate latency automatically.
 
 Setting a too low latency, especially lower than the minimum latency from
 the LATENCY query, will most likely cause the pipeline to fail.</doc>
+        <source-position filename="gst/gstpipeline.h" line="122"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="pipeline" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstPipeline</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpipeline.c"
+                 line="1028">a #GstPipeline</doc>
             <type name="Pipeline" c:type="GstPipeline*"/>
           </instance-parameter>
           <parameter name="latency" transfer-ownership="none">
-            <doc xml:space="preserve">latency to configure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpipeline.c"
+                 line="1029">latency to configure</doc>
             <type name="ClockTime" c:type="GstClockTime"/>
           </parameter>
         </parameters>
       </method>
       <method name="use_clock" c:identifier="gst_pipeline_use_clock">
-        <doc xml:space="preserve">Force @pipeline to use the given @clock. The pipeline will
+        <doc xml:space="preserve"
+             filename="gst/gstpipeline.c"
+             line="831">Force @pipeline to use the given @clock. The pipeline will
 always use the given clock even if new clock providers are added
 to this pipeline.
 
@@ -29741,31 +46179,40 @@ If @clock is %NULL all clocking will be disabled which will make
 the pipeline run as fast as possible.
 
 MT safe.</doc>
+        <source-position filename="gst/gstpipeline.h" line="101"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="pipeline" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstPipeline</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpipeline.c"
+                 line="833">a #GstPipeline</doc>
             <type name="Pipeline" c:type="GstPipeline*"/>
           </instance-parameter>
           <parameter name="clock"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">the clock to use</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpipeline.c"
+                 line="834">the clock to use</doc>
             <type name="Clock" c:type="GstClock*"/>
           </parameter>
         </parameters>
       </method>
       <property name="auto-flush-bus" writable="1" transfer-ownership="none">
-        <doc xml:space="preserve">Whether or not to automatically flush all messages on the
+        <doc xml:space="preserve"
+             filename="gst/gstpipeline.c"
+             line="179">Whether or not to automatically flush all messages on the
 pipeline's bus when going from READY to NULL state. Please see
 gst_pipeline_set_auto_flush_bus() for more information on this option.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </property>
       <property name="delay" writable="1" transfer-ownership="none">
-        <doc xml:space="preserve">The expected delay needed for elements to spin up to the
+        <doc xml:space="preserve"
+             filename="gst/gstpipeline.c"
+             line="166">The expected delay needed for elements to spin up to the
 PLAYING state expressed in nanoseconds.
 see gst_pipeline_set_delay() for more information on this option.</doc>
         <type name="guint64" c:type="guint64"/>
@@ -29774,26 +46221,34 @@ see gst_pipeline_set_delay() for more information on this option.</doc>
                 version="1.6"
                 writable="1"
                 transfer-ownership="none">
-        <doc xml:space="preserve">Latency to configure on the pipeline. See gst_pipeline_set_latency().</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpipeline.c"
+             line="192">Latency to configure on the pipeline. See gst_pipeline_set_latency().</doc>
         <type name="guint64" c:type="guint64"/>
       </property>
       <field name="bin">
         <type name="Bin" c:type="GstBin"/>
       </field>
       <field name="fixed_clock">
-        <doc xml:space="preserve">The fixed clock of the pipeline, used when
+        <doc xml:space="preserve"
+             filename="gst/gstpipeline.h"
+             line="58">The fixed clock of the pipeline, used when
               GST_PIPELINE_FLAG_FIXED_CLOCK is set.</doc>
         <type name="Clock" c:type="GstClock*"/>
       </field>
       <field name="stream_time">
-        <doc xml:space="preserve">The stream time of the pipeline. A better name for this
+        <doc xml:space="preserve"
+             filename="gst/gstpipeline.h"
+             line="60">The stream time of the pipeline. A better name for this
         property would be the running_time, the total time spent in the
         PLAYING state without being flushed. (deprecated, use the start_time
         on GstElement).</doc>
         <type name="ClockTime" c:type="GstClockTime"/>
       </field>
       <field name="delay">
-        <doc xml:space="preserve">Extra delay added to base_time to compensate for computing delays
+        <doc xml:space="preserve"
+             filename="gst/gstpipeline.h"
+             line="64">Extra delay added to base_time to compensate for computing delays
         when setting elements to PLAYING.</doc>
         <type name="ClockTime" c:type="GstClockTime"/>
       </field>
@@ -29801,7 +46256,7 @@ see gst_pipeline_set_delay() for more information on this option.</doc>
         <type name="PipelinePrivate" c:type="GstPipelinePrivate*"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -29809,11 +46264,12 @@ see gst_pipeline_set_delay() for more information on this option.</doc>
     <record name="PipelineClass"
             c:type="GstPipelineClass"
             glib:is-gtype-struct-for="Pipeline">
+      <source-position filename="gst/gstpipeline.h" line="89"/>
       <field name="parent_class">
         <type name="BinClass" c:type="GstBinClass"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -29822,21 +46278,28 @@ see gst_pipeline_set_delay() for more information on this option.</doc>
               glib:type-name="GstPipelineFlags"
               glib:get-type="gst_pipeline_flags_get_type"
               c:type="GstPipelineFlags">
-      <doc xml:space="preserve">Pipeline flags</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstpipeline.h"
+           line="43">Pipeline flags</doc>
       <member name="fixed_clock"
               value="524288"
               c:identifier="GST_PIPELINE_FLAG_FIXED_CLOCK"
               glib:nick="fixed-clock">
-        <doc xml:space="preserve">this pipeline works with a fixed clock</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpipeline.h"
+             line="45">this pipeline works with a fixed clock</doc>
       </member>
       <member name="last"
               value="8388608"
               c:identifier="GST_PIPELINE_FLAG_LAST"
               glib:nick="last">
-        <doc xml:space="preserve">offset to define more flags</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpipeline.h"
+             line="46">offset to define more flags</doc>
       </member>
     </bitfield>
     <record name="PipelinePrivate" c:type="GstPipelinePrivate" disguised="1">
+      <source-position filename="gst/gstpipeline.h" line="41"/>
     </record>
     <class name="Plugin"
            c:symbol-prefix="plugin"
@@ -29845,16 +46308,18 @@ see gst_pipeline_set_delay() for more information on this option.</doc>
            glib:type-name="GstPlugin"
            glib:get-type="gst_plugin_get_type"
            glib:type-struct="PluginClass">
-      <doc xml:space="preserve">GStreamer is extensible, so #GstElement instances can be loaded at runtime.
-A plugin system can provide one or more of the basic
-&lt;application&gt;GStreamer&lt;/application&gt; #GstPluginFeature subclasses.
+      <doc xml:space="preserve"
+           filename="gst/gstplugin.c"
+           line="23">GStreamer is extensible, so #GstElement instances can be loaded at runtime.
+A plugin system can provide one or more of the basic GStreamer
+#GstPluginFeature subclasses.
 
-A plugin should export a symbol &lt;symbol&gt;gst_plugin_desc&lt;/symbol&gt; that is a
+A plugin should export a symbol `gst_plugin_desc` that is a
 struct of type #GstPluginDesc.
 the plugin loader will check the version of the core library the plugin was
 linked against and will create a new #GstPlugin. It will then call the
 #GstPluginInitFunc function that was provided in the
-&lt;symbol&gt;gst_plugin_desc&lt;/symbol&gt;.
+`gst_plugin_desc`.
 
 Once you have a handle to a #GstPlugin (e.g. from the #GstRegistry), you
 can add any object that subclasses #GstPluginFeature.
@@ -29864,14 +46329,20 @@ gst_plugin_load() explicitly to bring it into memory. There are options to
 statically link plugins to an app or even use GStreamer without a plugin
 repository in which case gst_plugin_load() can be needed to bring the plugin
 into memory.</doc>
+      <source-position filename="gst/gstplugin.h" line="41"/>
       <function name="list_free" c:identifier="gst_plugin_list_free">
-        <doc xml:space="preserve">Unrefs each member of @list, then frees the list.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstplugin.c"
+             line="1396">Unrefs each member of @list, then frees the list.</doc>
+        <source-position filename="gst/gstplugin.h" line="396"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <parameter name="list" transfer-ownership="full">
-            <doc xml:space="preserve">list of #GstPlugin</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstplugin.c"
+                 line="1398">list of #GstPlugin</doc>
             <type name="GLib.List" c:type="GList*">
               <type name="Plugin"/>
             </type>
@@ -29879,15 +46350,22 @@ into memory.</doc>
         </parameters>
       </function>
       <function name="load_by_name" c:identifier="gst_plugin_load_by_name">
-        <doc xml:space="preserve">Load the named plugin. Refs the plugin.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstplugin.c"
+             line="1320">Load the named plugin. Refs the plugin.</doc>
+        <source-position filename="gst/gstplugin.h" line="381"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">a reference to a loaded plugin, or
+          <doc xml:space="preserve"
+               filename="gst/gstplugin.c"
+               line="1326">a reference to a loaded plugin, or
 %NULL on error.</doc>
           <type name="Plugin" c:type="GstPlugin*"/>
         </return-value>
         <parameters>
           <parameter name="name" transfer-ownership="none">
-            <doc xml:space="preserve">name of plugin to load</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstplugin.c"
+                 line="1322">name of plugin to load</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
@@ -29895,82 +46373,116 @@ into memory.</doc>
       <function name="load_file"
                 c:identifier="gst_plugin_load_file"
                 throws="1">
-        <doc xml:space="preserve">Loads the given plugin and refs it.  Caller needs to unref after use.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstplugin.c"
+             line="676">Loads the given plugin and refs it.  Caller needs to unref after use.</doc>
+        <source-position filename="gst/gstplugin.h" line="375"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a reference to the existing loaded GstPlugin, a
+          <doc xml:space="preserve"
+               filename="gst/gstplugin.c"
+               line="683">a reference to the existing loaded GstPlugin, a
 reference to the newly-loaded GstPlugin, or %NULL if an error occurred.</doc>
           <type name="Plugin" c:type="GstPlugin*"/>
         </return-value>
         <parameters>
           <parameter name="filename" transfer-ownership="none">
-            <doc xml:space="preserve">the plugin filename to load</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstplugin.c"
+                 line="678">the plugin filename to load</doc>
             <type name="filename" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </function>
       <function name="register_static"
                 c:identifier="gst_plugin_register_static">
-        <doc xml:space="preserve">Registers a static plugin, ie. a plugin which is private to an application
+        <doc xml:space="preserve"
+             filename="gst/gstplugin.c"
+             line="179">Registers a static plugin, ie. a plugin which is private to an application
 or library and contained within the application or library (as opposed to
 being shipped as a separate module file).
 
 You must make sure that GStreamer has been initialised (with gst_init() or
 via gst_init_get_option_group()) before calling this function.</doc>
+        <source-position filename="gst/gstplugin.h" line="316"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the plugin was registered correctly, otherwise %FALSE.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstplugin.c"
+               line="204">%TRUE if the plugin was registered correctly, otherwise %FALSE.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <parameter name="major_version" transfer-ownership="none">
-            <doc xml:space="preserve">the major version number of the GStreamer core that the
+            <doc xml:space="preserve"
+                 filename="gst/gstplugin.c"
+                 line="181">the major version number of the GStreamer core that the
     plugin was compiled for, you can just use GST_VERSION_MAJOR here</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="minor_version" transfer-ownership="none">
-            <doc xml:space="preserve">the minor version number of the GStreamer core that the
+            <doc xml:space="preserve"
+                 filename="gst/gstplugin.c"
+                 line="183">the minor version number of the GStreamer core that the
     plugin was compiled for, you can just use GST_VERSION_MINOR here</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="name" transfer-ownership="none">
-            <doc xml:space="preserve">a unique name of the plugin (ideally prefixed with an application- or
+            <doc xml:space="preserve"
+                 filename="gst/gstplugin.c"
+                 line="185">a unique name of the plugin (ideally prefixed with an application- or
     library-specific namespace prefix in order to avoid name conflicts in
     case a similar plugin with the same name ever gets added to GStreamer)</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="description" transfer-ownership="none">
-            <doc xml:space="preserve">description of the plugin</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstplugin.c"
+                 line="188">description of the plugin</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="init_func" transfer-ownership="none" scope="call">
-            <doc xml:space="preserve">pointer to the init function of this plugin.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstplugin.c"
+                 line="189">pointer to the init function of this plugin.</doc>
             <type name="PluginInitFunc" c:type="GstPluginInitFunc"/>
           </parameter>
           <parameter name="version" transfer-ownership="none">
-            <doc xml:space="preserve">version string of the plugin</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstplugin.c"
+                 line="190">version string of the plugin</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="license" transfer-ownership="none">
-            <doc xml:space="preserve">effective license of plugin. Must be one of the approved licenses
+            <doc xml:space="preserve"
+                 filename="gst/gstplugin.c"
+                 line="191">effective license of plugin. Must be one of the approved licenses
     (see #GstPluginDesc above) or the plugin will not be registered.</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="source" transfer-ownership="none">
-            <doc xml:space="preserve">source module plugin belongs to</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstplugin.c"
+                 line="193">source module plugin belongs to</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="package" transfer-ownership="none">
-            <doc xml:space="preserve">shipped package plugin belongs to</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstplugin.c"
+                 line="194">shipped package plugin belongs to</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="origin" transfer-ownership="none">
-            <doc xml:space="preserve">URL to provider of plugin</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstplugin.c"
+                 line="195">URL to provider of plugin</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </function>
       <function name="register_static_full"
                 c:identifier="gst_plugin_register_static_full">
-        <doc xml:space="preserve">Registers a static plugin, ie. a plugin which is private to an application
+        <doc xml:space="preserve"
+             filename="gst/gstplugin.c"
+             line="240">Registers a static plugin, ie. a plugin which is private to an application
 or library and contained within the application or library (as opposed to
 being shipped as a separate module file) with a #GstPluginInitFullFunc
 which allows user data to be passed to the callback function (useful
@@ -29978,71 +46490,98 @@ for bindings).
 
 You must make sure that GStreamer has been initialised (with gst_init() or
 via gst_init_get_option_group()) before calling this function.</doc>
+        <source-position filename="gst/gstplugin.h" line="327"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the plugin was registered correctly, otherwise %FALSE.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstplugin.c"
+               line="269">%TRUE if the plugin was registered correctly, otherwise %FALSE.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <parameter name="major_version" transfer-ownership="none">
-            <doc xml:space="preserve">the major version number of the GStreamer core that the
+            <doc xml:space="preserve"
+                 filename="gst/gstplugin.c"
+                 line="242">the major version number of the GStreamer core that the
     plugin was compiled for, you can just use GST_VERSION_MAJOR here</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="minor_version" transfer-ownership="none">
-            <doc xml:space="preserve">the minor version number of the GStreamer core that the
+            <doc xml:space="preserve"
+                 filename="gst/gstplugin.c"
+                 line="244">the minor version number of the GStreamer core that the
     plugin was compiled for, you can just use GST_VERSION_MINOR here</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="name" transfer-ownership="none">
-            <doc xml:space="preserve">a unique name of the plugin (ideally prefixed with an application- or
+            <doc xml:space="preserve"
+                 filename="gst/gstplugin.c"
+                 line="246">a unique name of the plugin (ideally prefixed with an application- or
     library-specific namespace prefix in order to avoid name conflicts in
     case a similar plugin with the same name ever gets added to GStreamer)</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="description" transfer-ownership="none">
-            <doc xml:space="preserve">description of the plugin</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstplugin.c"
+                 line="249">description of the plugin</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="init_full_func"
                      transfer-ownership="none"
                      scope="call"
                      closure="10">
-            <doc xml:space="preserve">pointer to the init function with user data
+            <doc xml:space="preserve"
+                 filename="gst/gstplugin.c"
+                 line="250">pointer to the init function with user data
     of this plugin.</doc>
             <type name="PluginInitFullFunc" c:type="GstPluginInitFullFunc"/>
           </parameter>
           <parameter name="version" transfer-ownership="none">
-            <doc xml:space="preserve">version string of the plugin</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstplugin.c"
+                 line="252">version string of the plugin</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="license" transfer-ownership="none">
-            <doc xml:space="preserve">effective license of plugin. Must be one of the approved licenses
+            <doc xml:space="preserve"
+                 filename="gst/gstplugin.c"
+                 line="253">effective license of plugin. Must be one of the approved licenses
     (see #GstPluginDesc above) or the plugin will not be registered.</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="source" transfer-ownership="none">
-            <doc xml:space="preserve">source module plugin belongs to</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstplugin.c"
+                 line="255">source module plugin belongs to</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="package" transfer-ownership="none">
-            <doc xml:space="preserve">shipped package plugin belongs to</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstplugin.c"
+                 line="256">shipped package plugin belongs to</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="origin" transfer-ownership="none">
-            <doc xml:space="preserve">URL to provider of plugin</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstplugin.c"
+                 line="257">URL to provider of plugin</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="user_data"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">gpointer to user data</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstplugin.c"
+                 line="258">gpointer to user data</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
         </parameters>
       </function>
       <method name="add_dependency" c:identifier="gst_plugin_add_dependency">
-        <doc xml:space="preserve">Make GStreamer aware of external dependencies which affect the feature
+        <doc xml:space="preserve"
+             filename="gst/gstplugin.c"
+             line="1828">Make GStreamer aware of external dependencies which affect the feature
 set of this plugin (ie. the elements or typefinders associated with it).
 
 GStreamer will re-inspect plugins with external dependencies whenever any
@@ -30051,19 +46590,24 @@ other plugin systems, e.g. a plugin which wraps a plugin-based visualisation
 library and makes visualisations available as GStreamer elements, or a
 codec loader which exposes elements and/or caps dependent on what external
 codec libraries are currently installed.</doc>
+        <source-position filename="gst/gstplugin.h" line="384"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="plugin" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstPlugin</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstplugin.c"
+                 line="1830">a #GstPlugin</doc>
             <type name="Plugin" c:type="GstPlugin*"/>
           </instance-parameter>
           <parameter name="env_vars"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">%NULL-terminated array of environment variables affecting the
+            <doc xml:space="preserve"
+                 filename="gst/gstplugin.c"
+                 line="1831">%NULL-terminated array of environment variables affecting the
     feature set of the plugin (e.g. an environment variable containing
     paths where to look for additional modules/plugins of a library),
     or %NULL. Environment variable names may be followed by a path component
@@ -30077,7 +46621,9 @@ codec libraries are currently installed.</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">%NULL-terminated array of directories/paths where dependent files
+            <doc xml:space="preserve"
+                 filename="gst/gstplugin.c"
+                 line="1837">%NULL-terminated array of directories/paths where dependent files
     may be, or %NULL.</doc>
             <array c:type="const gchar**">
               <type name="utf8" c:type="gchar*"/>
@@ -30087,7 +46633,9 @@ codec libraries are currently installed.</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">%NULL-terminated array of file names (or file name suffixes,
+            <doc xml:space="preserve"
+                 filename="gst/gstplugin.c"
+                 line="1839">%NULL-terminated array of file names (or file name suffixes,
     depending on @flags) to be used in combination with the paths from
     @paths and/or the paths extracted from the environment variables in
     @env_vars, or %NULL.</doc>
@@ -30096,7 +46644,9 @@ codec libraries are currently installed.</doc>
             </array>
           </parameter>
           <parameter name="flags" transfer-ownership="none">
-            <doc xml:space="preserve">optional flags, or #GST_PLUGIN_DEPENDENCY_FLAG_NONE</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstplugin.c"
+                 line="1843">optional flags, or #GST_PLUGIN_DEPENDENCY_FLAG_NONE</doc>
             <type name="PluginDependencyFlags"
                   c:type="GstPluginDependencyFlags"/>
           </parameter>
@@ -30104,7 +46654,9 @@ codec libraries are currently installed.</doc>
       </method>
       <method name="add_dependency_simple"
               c:identifier="gst_plugin_add_dependency_simple">
-        <doc xml:space="preserve">Make GStreamer aware of external dependencies which affect the feature
+        <doc xml:space="preserve"
+             filename="gst/gstplugin.c"
+             line="1899">Make GStreamer aware of external dependencies which affect the feature
 set of this plugin (ie. the elements or typefinders associated with it).
 
 GStreamer will re-inspect plugins with external dependencies whenever any
@@ -30117,19 +46669,24 @@ codec libraries are currently installed.
 Convenience wrapper function for gst_plugin_add_dependency() which
 takes simple strings as arguments instead of string arrays, with multiple
 arguments separated by predefined delimiters (see above).</doc>
+        <source-position filename="gst/gstplugin.h" line="390"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="plugin" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstPlugin</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstplugin.c"
+                 line="1901">the #GstPlugin</doc>
             <type name="Plugin" c:type="GstPlugin*"/>
           </instance-parameter>
           <parameter name="env_vars"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">one or more environment variables (separated by ':', ';' or ','),
+            <doc xml:space="preserve"
+                 filename="gst/gstplugin.c"
+                 line="1902">one or more environment variables (separated by ':', ';' or ','),
      or %NULL. Environment variable names may be followed by a path component
      which will be added to the content of the environment variable, e.g.
      "HOME/.mystuff/plugins:MYSTUFF_PLUGINS_PATH"</doc>
@@ -30139,7 +46696,9 @@ arguments separated by predefined delimiters (see above).</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">one ore more directory paths (separated by ':' or ';' or ','),
+            <doc xml:space="preserve"
+                 filename="gst/gstplugin.c"
+                 line="1906">one ore more directory paths (separated by ':' or ';' or ','),
      or %NULL. Example: "/usr/lib/mystuff/plugins"</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
@@ -30147,113 +46706,168 @@ arguments separated by predefined delimiters (see above).</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">one or more file names or file name suffixes (separated by commas),
+            <doc xml:space="preserve"
+                 filename="gst/gstplugin.c"
+                 line="1908">one or more file names or file name suffixes (separated by commas),
      or %NULL</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="flags" transfer-ownership="none">
-            <doc xml:space="preserve">optional flags, or #GST_PLUGIN_DEPENDENCY_FLAG_NONE</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstplugin.c"
+                 line="1910">optional flags, or #GST_PLUGIN_DEPENDENCY_FLAG_NONE</doc>
             <type name="PluginDependencyFlags"
                   c:type="GstPluginDependencyFlags"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_cache_data" c:identifier="gst_plugin_get_cache_data">
-        <doc xml:space="preserve">Gets the plugin specific data cache. If it is %NULL there is no cached data
+        <doc xml:space="preserve"
+             filename="gst/gstplugin.c"
+             line="1118">Gets the plugin specific data cache. If it is %NULL there is no cached data
 stored. This is the case when the registry is getting rebuilt.</doc>
+        <source-position filename="gst/gstplugin.h" line="366"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">The cached data as a
+          <doc xml:space="preserve"
+               filename="gst/gstplugin.c"
+               line="1125">The cached data as a
 #GstStructure or %NULL.</doc>
           <type name="Structure" c:type="const GstStructure*"/>
         </return-value>
         <parameters>
           <instance-parameter name="plugin" transfer-ownership="none">
-            <doc xml:space="preserve">a plugin</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstplugin.c"
+                 line="1120">a plugin</doc>
             <type name="Plugin" c:type="GstPlugin*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_description" c:identifier="gst_plugin_get_description">
-        <doc xml:space="preserve">Get the long descriptive name of the plugin</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the long name of the plugin</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstplugin.c"
+             line="966">Get the long descriptive name of the plugin</doc>
+        <source-position filename="gst/gstplugin.h" line="342"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstplugin.c"
+               line="972">the long name of the plugin</doc>
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
         <parameters>
           <instance-parameter name="plugin" transfer-ownership="none">
-            <doc xml:space="preserve">plugin to get long name of</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstplugin.c"
+                 line="968">plugin to get long name of</doc>
             <type name="Plugin" c:type="GstPlugin*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_filename" c:identifier="gst_plugin_get_filename">
-        <doc xml:space="preserve">get the filename of the plugin</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the filename of the plugin</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstplugin.c"
+             line="982">get the filename of the plugin</doc>
+        <source-position filename="gst/gstplugin.h" line="345"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstplugin.c"
+               line="988">the filename of the plugin</doc>
           <type name="filename" c:type="const gchar*"/>
         </return-value>
         <parameters>
           <instance-parameter name="plugin" transfer-ownership="none">
-            <doc xml:space="preserve">plugin to get the filename of</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstplugin.c"
+                 line="984">plugin to get the filename of</doc>
             <type name="Plugin" c:type="GstPlugin*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_license" c:identifier="gst_plugin_get_license">
-        <doc xml:space="preserve">get the license of the plugin</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the license of the plugin</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstplugin.c"
+             line="1014">get the license of the plugin</doc>
+        <source-position filename="gst/gstplugin.h" line="351"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstplugin.c"
+               line="1020">the license of the plugin</doc>
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
         <parameters>
           <instance-parameter name="plugin" transfer-ownership="none">
-            <doc xml:space="preserve">plugin to get the license of</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstplugin.c"
+                 line="1016">plugin to get the license of</doc>
             <type name="Plugin" c:type="GstPlugin*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_name" c:identifier="gst_plugin_get_name">
-        <doc xml:space="preserve">Get the short name of the plugin</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the name of the plugin</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstplugin.c"
+             line="950">Get the short name of the plugin</doc>
+        <source-position filename="gst/gstplugin.h" line="339"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstplugin.c"
+               line="956">the name of the plugin</doc>
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
         <parameters>
           <instance-parameter name="plugin" transfer-ownership="none">
-            <doc xml:space="preserve">plugin to get the name of</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstplugin.c"
+                 line="952">plugin to get the name of</doc>
             <type name="Plugin" c:type="GstPlugin*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_origin" c:identifier="gst_plugin_get_origin">
-        <doc xml:space="preserve">get the URL where the plugin comes from</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the origin of the plugin</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstplugin.c"
+             line="1062">get the URL where the plugin comes from</doc>
+        <source-position filename="gst/gstplugin.h" line="360"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstplugin.c"
+               line="1068">the origin of the plugin</doc>
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
         <parameters>
           <instance-parameter name="plugin" transfer-ownership="none">
-            <doc xml:space="preserve">plugin to get the origin of</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstplugin.c"
+                 line="1064">plugin to get the origin of</doc>
             <type name="Plugin" c:type="GstPlugin*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_package" c:identifier="gst_plugin_get_package">
-        <doc xml:space="preserve">get the package the plugin belongs to.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the package of the plugin</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstplugin.c"
+             line="1046">get the package the plugin belongs to.</doc>
+        <source-position filename="gst/gstplugin.h" line="357"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstplugin.c"
+               line="1052">the package of the plugin</doc>
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
         <parameters>
           <instance-parameter name="plugin" transfer-ownership="none">
-            <doc xml:space="preserve">plugin to get the package of</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstplugin.c"
+                 line="1048">plugin to get the package of</doc>
             <type name="Plugin" c:type="GstPlugin*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_release_date_string"
               c:identifier="gst_plugin_get_release_date_string">
-        <doc xml:space="preserve">Get the release date (and possibly time) in form of a string, if available.
+        <doc xml:space="preserve"
+             filename="gst/gstplugin.c"
+             line="1078">Get the release date (and possibly time) in form of a string, if available.
 
 For normal GStreamer plugin releases this will usually just be a date in
 the form of "YYYY-MM-DD", while pre-releases and builds from git may contain
@@ -30261,59 +46875,87 @@ a time component after the date as well, in which case the string will be
 formatted like "YYYY-MM-DDTHH:MMZ" (e.g. "2012-04-30T09:30Z").
 
 There may be plugins that do not have a valid release date set on them.</doc>
+        <source-position filename="gst/gstplugin.h" line="363"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">the date string of the plugin, or %NULL if not
+          <doc xml:space="preserve"
+               filename="gst/gstplugin.c"
+               line="1091">the date string of the plugin, or %NULL if not
 available.</doc>
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
         <parameters>
           <instance-parameter name="plugin" transfer-ownership="none">
-            <doc xml:space="preserve">plugin to get the release date of</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstplugin.c"
+                 line="1080">plugin to get the release date of</doc>
             <type name="Plugin" c:type="GstPlugin*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_source" c:identifier="gst_plugin_get_source">
-        <doc xml:space="preserve">get the source module the plugin belongs to.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the source of the plugin</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstplugin.c"
+             line="1030">get the source module the plugin belongs to.</doc>
+        <source-position filename="gst/gstplugin.h" line="354"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstplugin.c"
+               line="1036">the source of the plugin</doc>
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
         <parameters>
           <instance-parameter name="plugin" transfer-ownership="none">
-            <doc xml:space="preserve">plugin to get the source of</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstplugin.c"
+                 line="1032">plugin to get the source of</doc>
             <type name="Plugin" c:type="GstPlugin*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_version" c:identifier="gst_plugin_get_version">
-        <doc xml:space="preserve">get the version of the plugin</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the version of the plugin</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstplugin.c"
+             line="998">get the version of the plugin</doc>
+        <source-position filename="gst/gstplugin.h" line="348"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstplugin.c"
+               line="1004">the version of the plugin</doc>
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
         <parameters>
           <instance-parameter name="plugin" transfer-ownership="none">
-            <doc xml:space="preserve">plugin to get the version of</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstplugin.c"
+                 line="1000">plugin to get the version of</doc>
             <type name="Plugin" c:type="GstPlugin*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="is_loaded" c:identifier="gst_plugin_is_loaded">
-        <doc xml:space="preserve">queries if the plugin is loaded into memory</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE is loaded, %FALSE otherwise</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstplugin.c"
+             line="1102">queries if the plugin is loaded into memory</doc>
+        <source-position filename="gst/gstplugin.h" line="372"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstplugin.c"
+               line="1108">%TRUE is loaded, %FALSE otherwise</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="plugin" transfer-ownership="none">
-            <doc xml:space="preserve">plugin to query</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstplugin.c"
+                 line="1104">plugin to query</doc>
             <type name="Plugin" c:type="GstPlugin*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="load" c:identifier="gst_plugin_load">
-        <doc xml:space="preserve">Loads @plugin. Note that the *return value* is the loaded plugin; @plugin is
+        <doc xml:space="preserve"
+             filename="gst/gstplugin.c"
+             line="1355">Loads @plugin. Note that the *return value* is the loaded plugin; @plugin is
 untouched. The normal use pattern of this function goes like this:
 
 |[
@@ -30323,72 +46965,111 @@ loaded_plugin = gst_plugin_load (plugin);
 gst_object_unref (plugin);
 plugin = loaded_plugin;
 ]|</doc>
+        <source-position filename="gst/gstplugin.h" line="378"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">a reference to a loaded plugin, or
+          <doc xml:space="preserve"
+               filename="gst/gstplugin.c"
+               line="1370">a reference to a loaded plugin, or
 %NULL on error.</doc>
           <type name="Plugin" c:type="GstPlugin*"/>
         </return-value>
         <parameters>
           <instance-parameter name="plugin" transfer-ownership="none">
-            <doc xml:space="preserve">plugin to load</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstplugin.c"
+                 line="1357">plugin to load</doc>
             <type name="Plugin" c:type="GstPlugin*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="set_cache_data" c:identifier="gst_plugin_set_cache_data">
-        <doc xml:space="preserve">Adds plugin specific data to cache. Passes the ownership of the structure to
+        <doc xml:space="preserve"
+             filename="gst/gstplugin.c"
+             line="1136">Adds plugin specific data to cache. Passes the ownership of the structure to
 the @plugin.
 
 The cache is flushed every time the registry is rebuilt.</doc>
+        <source-position filename="gst/gstplugin.h" line="369"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="plugin" transfer-ownership="none">
-            <doc xml:space="preserve">a plugin</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstplugin.c"
+                 line="1138">a plugin</doc>
             <type name="Plugin" c:type="GstPlugin*"/>
           </instance-parameter>
           <parameter name="cache_data" transfer-ownership="full">
-            <doc xml:space="preserve">a structure containing the data to cache</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstplugin.c"
+                 line="1139">a structure containing the data to cache</doc>
             <type name="Structure" c:type="GstStructure*"/>
           </parameter>
         </parameters>
       </method>
     </class>
+    <bitfield name="PluginAPIFlags"
+              version="1.18"
+              glib:type-name="GstPluginAPIFlags"
+              glib:get-type="gst_plugin_api_flags_get_type"
+              c:type="GstPluginAPIFlags">
+      <member name="members"
+              value="1"
+              c:identifier="GST_PLUGIN_API_FLAG_IGNORE_ENUM_MEMBERS"
+              glib:nick="members">
+        <doc xml:space="preserve"
+             filename="gst/gstutils.h"
+             line="1173">Ignore enum members when generating
+  the plugins cache. This is useful if the members of the enum are generated
+  dynamically, in order not to expose incorrect documentation to the end user.</doc>
+      </member>
+    </bitfield>
     <record name="PluginClass"
             c:type="GstPluginClass"
             disguised="1"
             glib:is-gtype-struct-for="Plugin">
+      <source-position filename="gst/gstplugin.h" line="41"/>
     </record>
     <bitfield name="PluginDependencyFlags"
               glib:type-name="GstPluginDependencyFlags"
               glib:get-type="gst_plugin_dependency_flags_get_type"
               c:type="GstPluginDependencyFlags">
-      <doc xml:space="preserve">Flags used in connection with gst_plugin_add_dependency().</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstplugin.h"
+           line="89">Flags used in connection with gst_plugin_add_dependency().</doc>
       <member name="none"
               value="0"
               c:identifier="GST_PLUGIN_DEPENDENCY_FLAG_NONE"
               glib:nick="none">
-        <doc xml:space="preserve">no special flags</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstplugin.h"
+             line="91">no special flags</doc>
       </member>
       <member name="recurse"
               value="1"
               c:identifier="GST_PLUGIN_DEPENDENCY_FLAG_RECURSE"
               glib:nick="recurse">
-        <doc xml:space="preserve">recurse into subdirectories</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstplugin.h"
+             line="92">recurse into subdirectories</doc>
       </member>
       <member name="paths_are_default_only"
               value="2"
               c:identifier="GST_PLUGIN_DEPENDENCY_FLAG_PATHS_ARE_DEFAULT_ONLY"
               glib:nick="paths-are-default-only">
-        <doc xml:space="preserve">use paths
+        <doc xml:space="preserve"
+             filename="gst/gstplugin.h"
+             line="93">use paths
         argument only if none of the environment variables is set</doc>
       </member>
       <member name="file_name_is_suffix"
               value="4"
               c:identifier="GST_PLUGIN_DEPENDENCY_FLAG_FILE_NAME_IS_SUFFIX"
               glib:nick="file-name-is-suffix">
-        <doc xml:space="preserve">interpret
+        <doc xml:space="preserve"
+             filename="gst/gstplugin.h"
+             line="95">interpret
         filename argument as filter suffix and check all matching files in
         the directory</doc>
       </member>
@@ -30396,67 +47077,96 @@ The cache is flushed every time the registry is rebuilt.</doc>
               value="8"
               c:identifier="GST_PLUGIN_DEPENDENCY_FLAG_FILE_NAME_IS_PREFIX"
               glib:nick="file-name-is-prefix">
-        <doc xml:space="preserve">interpret
+        <doc xml:space="preserve"
+             filename="gst/gstplugin.h"
+             line="98">interpret
         filename argument as filter prefix and check all matching files in
-        the directory. Since 1.8.</doc>
+        the directory. Since: 1.8.</doc>
       </member>
       <member name="paths_are_relative_to_exe"
               value="16"
               c:identifier="GST_PLUGIN_DEPENDENCY_FLAG_PATHS_ARE_RELATIVE_TO_EXE"
               glib:nick="paths-are-relative-to-exe">
-        <doc xml:space="preserve">interpret
+        <doc xml:space="preserve"
+             filename="gst/gstplugin.h"
+             line="101">interpret
   non-absolute paths as relative to the main executable directory. Since
   1.14.</doc>
       </member>
     </bitfield>
     <record name="PluginDesc" c:type="GstPluginDesc">
-      <doc xml:space="preserve">A plugin should export a variable of this type called plugin_desc. The plugin
+      <doc xml:space="preserve"
+           filename="gst/gstplugin.h"
+           line="146">A plugin should export a variable of this type called plugin_desc. The plugin
 loader will use the data provided there to initialize the plugin.
 
 The @licence parameter must be one of: LGPL, GPL, QPL, GPL/QPL, MPL,
 BSD, MIT/X11, Proprietary, unknown.</doc>
+      <source-position filename="gst/gstplugin.h" line="185"/>
       <field name="major_version" writable="1">
-        <doc xml:space="preserve">the major version number of core that plugin was compiled for</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstplugin.h"
+             line="148">the major version number of core that plugin was compiled for</doc>
         <type name="gint" c:type="gint"/>
       </field>
       <field name="minor_version" writable="1">
-        <doc xml:space="preserve">the minor version number of core that plugin was compiled for</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstplugin.h"
+             line="149">the minor version number of core that plugin was compiled for</doc>
         <type name="gint" c:type="gint"/>
       </field>
       <field name="name" writable="1">
-        <doc xml:space="preserve">a unique name of the plugin</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstplugin.h"
+             line="150">a unique name of the plugin</doc>
         <type name="utf8" c:type="const gchar*"/>
       </field>
       <field name="description" writable="1">
-        <doc xml:space="preserve">description of plugin</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstplugin.h"
+             line="151">description of plugin</doc>
         <type name="utf8" c:type="const gchar*"/>
       </field>
       <field name="plugin_init" writable="1">
-        <doc xml:space="preserve">pointer to the init function of this plugin.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstplugin.h"
+             line="152">pointer to the init function of this plugin.</doc>
         <type name="PluginInitFunc" c:type="GstPluginInitFunc"/>
       </field>
       <field name="version" writable="1">
-        <doc xml:space="preserve">version of the plugin</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstplugin.h"
+             line="153">version of the plugin</doc>
         <type name="utf8" c:type="const gchar*"/>
       </field>
       <field name="license" writable="1">
-        <doc xml:space="preserve">effective license of plugin</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstplugin.h"
+             line="154">effective license of plugin</doc>
         <type name="utf8" c:type="const gchar*"/>
       </field>
       <field name="source" writable="1">
-        <doc xml:space="preserve">source module plugin belongs to</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstplugin.h"
+             line="155">source module plugin belongs to</doc>
         <type name="utf8" c:type="const gchar*"/>
       </field>
       <field name="package" writable="1">
-        <doc xml:space="preserve">shipped package plugin belongs to</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstplugin.h"
+             line="156">shipped package plugin belongs to</doc>
         <type name="utf8" c:type="const gchar*"/>
       </field>
       <field name="origin" writable="1">
-        <doc xml:space="preserve">URL to provider of plugin</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstplugin.h"
+             line="157">URL to provider of plugin</doc>
         <type name="utf8" c:type="const gchar*"/>
       </field>
       <field name="release_datetime" writable="1">
-        <doc xml:space="preserve">date time string in ISO 8601
+        <doc xml:space="preserve"
+             filename="gst/gstplugin.h"
+             line="158">date time string in ISO 8601
     format (or rather, a subset thereof), or %NULL. Allowed are the
     following formats: "YYYY-MM-DD" and "YYY-MM-DDTHH:MMZ" (with
     'T' a separator and 'Z' indicating UTC/Zulu time). This field
@@ -30465,7 +47175,7 @@ BSD, MIT/X11, Proprietary, unknown.</doc>
         <type name="utf8" c:type="const gchar*"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -30475,29 +47185,41 @@ BSD, MIT/X11, Proprietary, unknown.</doc>
                  glib:get-type="gst_plugin_error_get_type"
                  c:type="GstPluginError"
                  glib:error-domain="gst_plugin_error">
-      <doc xml:space="preserve">The plugin loading errors</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstplugin.h"
+           line="61">The plugin loading errors</doc>
       <member name="module"
               value="0"
               c:identifier="GST_PLUGIN_ERROR_MODULE"
               glib:nick="module">
-        <doc xml:space="preserve">The plugin could not be loaded</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstplugin.h"
+             line="63">The plugin could not be loaded</doc>
       </member>
       <member name="dependencies"
               value="1"
               c:identifier="GST_PLUGIN_ERROR_DEPENDENCIES"
               glib:nick="dependencies">
-        <doc xml:space="preserve">The plugin has unresolved dependencies</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstplugin.h"
+             line="64">The plugin has unresolved dependencies</doc>
       </member>
       <member name="name_mismatch"
               value="2"
               c:identifier="GST_PLUGIN_ERROR_NAME_MISMATCH"
               glib:nick="name-mismatch">
-        <doc xml:space="preserve">The plugin has already be loaded from a different file</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstplugin.h"
+             line="65">The plugin has already be loaded from a different file</doc>
       </member>
       <function name="quark" c:identifier="gst_plugin_error_quark">
-        <doc xml:space="preserve">Get the error quark.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstplugin.h"
+             line="44">Get the error quark.</doc>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The error quark used in GError messages</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstplugin.h"
+               line="49">The error quark used in GError messages</doc>
           <type name="GLib.Quark" c:type="GQuark"/>
         </return-value>
       </function>
@@ -30510,12 +47232,20 @@ BSD, MIT/X11, Proprietary, unknown.</doc>
            glib:type-name="GstPluginFeature"
            glib:get-type="gst_plugin_feature_get_type"
            glib:type-struct="PluginFeatureClass">
-      <doc xml:space="preserve">This is a base class for anything that can be added to a #GstPlugin.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstpluginfeature.c"
+           line="23">This is a base class for anything that can be added to a #GstPlugin.</doc>
+      <source-position filename="gst/gstpluginfeature.h" line="47"/>
       <function name="list_copy" c:identifier="gst_plugin_feature_list_copy">
-        <doc xml:space="preserve">Copies the list of features. Caller should call @gst_plugin_feature_list_free
+        <doc xml:space="preserve"
+             filename="gst/gstpluginfeature.c"
+             line="248">Copies the list of features. Caller should call @gst_plugin_feature_list_free
 when done with the list.</doc>
+        <source-position filename="gst/gstpluginfeature.h" line="131"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a copy of @list,
+          <doc xml:space="preserve"
+               filename="gst/gstpluginfeature.c"
+               line="256">a copy of @list,
     with each feature's reference count incremented.</doc>
           <type name="GLib.List" c:type="GList*">
             <type name="PluginFeature"/>
@@ -30523,7 +47253,9 @@ when done with the list.</doc>
         </return-value>
         <parameters>
           <parameter name="list" transfer-ownership="none">
-            <doc xml:space="preserve">list
+            <doc xml:space="preserve"
+                 filename="gst/gstpluginfeature.c"
+                 line="250">list
     of #GstPluginFeature</doc>
             <type name="GLib.List" c:type="GList*">
               <type name="PluginFeature"/>
@@ -30532,13 +47264,18 @@ when done with the list.</doc>
         </parameters>
       </function>
       <function name="list_debug" c:identifier="gst_plugin_feature_list_debug">
-        <doc xml:space="preserve">Debug the plugin feature names in @list.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpluginfeature.c"
+             line="285">Debug the plugin feature names in @list.</doc>
+        <source-position filename="gst/gstpluginfeature.h" line="134"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <parameter name="list" transfer-ownership="none">
-            <doc xml:space="preserve">a #GList of
+            <doc xml:space="preserve"
+                 filename="gst/gstpluginfeature.c"
+                 line="287">a #GList of
     plugin features</doc>
             <type name="GLib.List" c:type="GList*">
               <type name="PluginFeature"/>
@@ -30547,13 +47284,18 @@ when done with the list.</doc>
         </parameters>
       </function>
       <function name="list_free" c:identifier="gst_plugin_feature_list_free">
-        <doc xml:space="preserve">Unrefs each member of @list, then frees the list.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpluginfeature.c"
+             line="228">Unrefs each member of @list, then frees the list.</doc>
+        <source-position filename="gst/gstpluginfeature.h" line="128"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <parameter name="list" transfer-ownership="full">
-            <doc xml:space="preserve">list
+            <doc xml:space="preserve"
+                 filename="gst/gstpluginfeature.c"
+                 line="230">list
     of #GstPluginFeature</doc>
             <type name="GLib.List" c:type="GList*">
               <type name="PluginFeature"/>
@@ -30563,10 +47305,15 @@ when done with the list.</doc>
       </function>
       <function name="rank_compare_func"
                 c:identifier="gst_plugin_feature_rank_compare_func">
-        <doc xml:space="preserve">Compares the two given #GstPluginFeature instances. This function can be
+        <doc xml:space="preserve"
+             filename="gst/gstpluginfeature.c"
+             line="378">Compares the two given #GstPluginFeature instances. This function can be
 used as a #GCompareFunc when sorting by rank and then by name.</doc>
+        <source-position filename="gst/gstpluginfeature.h" line="155"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">negative value if the rank of p1 &gt; the rank of p2 or the ranks are
+          <doc xml:space="preserve"
+               filename="gst/gstpluginfeature.c"
+               line="386">negative value if the rank of p1 &gt; the rank of p2 or the ranks are
 equal but the name of p1 comes before the name of p2; zero if the rank
 and names are equal; positive value if the rank of p1 &lt; the rank of p2 or the
 ranks are equal but the name of p2 comes before the name of p1</doc>
@@ -30577,57 +47324,81 @@ ranks are equal but the name of p2 comes before the name of p1</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">a #GstPluginFeature</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpluginfeature.c"
+                 line="380">a #GstPluginFeature</doc>
             <type name="gpointer" c:type="gconstpointer"/>
           </parameter>
           <parameter name="p2"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">a #GstPluginFeature</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpluginfeature.c"
+                 line="381">a #GstPluginFeature</doc>
             <type name="gpointer" c:type="gconstpointer"/>
           </parameter>
         </parameters>
       </function>
       <method name="check_version"
               c:identifier="gst_plugin_feature_check_version">
-        <doc xml:space="preserve">Checks whether the given plugin feature is at least
+        <doc xml:space="preserve"
+             filename="gst/gstpluginfeature.c"
+             line="304">Checks whether the given plugin feature is at least
  the required version</doc>
+        <source-position filename="gst/gstpluginfeature.h" line="150"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the plugin feature has at least
+          <doc xml:space="preserve"
+               filename="gst/gstpluginfeature.c"
+               line="314">%TRUE if the plugin feature has at least
  the required version, otherwise %FALSE.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="feature" transfer-ownership="none">
-            <doc xml:space="preserve">a feature</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpluginfeature.c"
+                 line="306">a feature</doc>
             <type name="PluginFeature" c:type="GstPluginFeature*"/>
           </instance-parameter>
           <parameter name="min_major" transfer-ownership="none">
-            <doc xml:space="preserve">minimum required major version</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpluginfeature.c"
+                 line="307">minimum required major version</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="min_minor" transfer-ownership="none">
-            <doc xml:space="preserve">minimum required minor version</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpluginfeature.c"
+                 line="308">minimum required minor version</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="min_micro" transfer-ownership="none">
-            <doc xml:space="preserve">minimum required micro version</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpluginfeature.c"
+                 line="309">minimum required micro version</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_plugin" c:identifier="gst_plugin_feature_get_plugin">
-        <doc xml:space="preserve">Get the plugin that provides this feature.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpluginfeature.c"
+             line="184">Get the plugin that provides this feature.</doc>
+        <source-position filename="gst/gstpluginfeature.h" line="122"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">the plugin that provides this
+          <doc xml:space="preserve"
+               filename="gst/gstpluginfeature.c"
+               line="190">the plugin that provides this
     feature, or %NULL.  Unref with gst_object_unref() when no
     longer needed.</doc>
           <type name="Plugin" c:type="GstPlugin*"/>
         </return-value>
         <parameters>
           <instance-parameter name="feature" transfer-ownership="none">
-            <doc xml:space="preserve">a feature</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpluginfeature.c"
+                 line="186">a feature</doc>
             <type name="PluginFeature" c:type="GstPluginFeature*"/>
           </instance-parameter>
         </parameters>
@@ -30635,35 +47406,51 @@ ranks are equal but the name of p2 comes before the name of p1</doc>
       <method name="get_plugin_name"
               c:identifier="gst_plugin_feature_get_plugin_name"
               version="1.2">
-        <doc xml:space="preserve">Get the name of the plugin that provides this feature.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpluginfeature.c"
+             line="205">Get the name of the plugin that provides this feature.</doc>
+        <source-position filename="gst/gstpluginfeature.h" line="125"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">the name of the plugin that provides this
+          <doc xml:space="preserve"
+               filename="gst/gstpluginfeature.c"
+               line="211">the name of the plugin that provides this
     feature, or %NULL if the feature is not associated with a
     plugin.</doc>
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
         <parameters>
           <instance-parameter name="feature" transfer-ownership="none">
-            <doc xml:space="preserve">a feature</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpluginfeature.c"
+                 line="207">a feature</doc>
             <type name="PluginFeature" c:type="GstPluginFeature*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_rank" c:identifier="gst_plugin_feature_get_rank">
-        <doc xml:space="preserve">Gets the rank of a plugin feature.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The rank of the feature</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpluginfeature.c"
+             line="168">Gets the rank of a plugin feature.</doc>
+        <source-position filename="gst/gstpluginfeature.h" line="119"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstpluginfeature.c"
+               line="174">The rank of the feature</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="feature" transfer-ownership="none">
-            <doc xml:space="preserve">a feature</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpluginfeature.c"
+                 line="170">a feature</doc>
             <type name="PluginFeature" c:type="GstPluginFeature*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="load" c:identifier="gst_plugin_feature_load">
-        <doc xml:space="preserve">Loads the plugin containing @feature if it's not already loaded. @feature is
+        <doc xml:space="preserve"
+             filename="gst/gstpluginfeature.c"
+             line="77">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:
@@ -30675,31 +47462,43 @@ loaded_feature = gst_plugin_feature_load (feature);
 gst_object_unref (feature);
 feature = loaded_feature;
 ]|</doc>
+        <source-position filename="gst/gstpluginfeature.h" line="113"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">a reference to the loaded
+          <doc xml:space="preserve"
+               filename="gst/gstpluginfeature.c"
+               line="94">a reference to the loaded
 feature, or %NULL on error</doc>
           <type name="PluginFeature" c:type="GstPluginFeature*"/>
         </return-value>
         <parameters>
           <instance-parameter name="feature" transfer-ownership="none">
-            <doc xml:space="preserve">the plugin feature to check</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpluginfeature.c"
+                 line="79">the plugin feature to check</doc>
             <type name="PluginFeature" c:type="GstPluginFeature*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="set_rank" c:identifier="gst_plugin_feature_set_rank">
-        <doc xml:space="preserve">Specifies a rank for a plugin feature, so that autoplugging uses
+        <doc xml:space="preserve"
+             filename="gst/gstpluginfeature.c"
+             line="151">Specifies a rank for a plugin feature, so that autoplugging uses
 the most appropriate feature.</doc>
+        <source-position filename="gst/gstpluginfeature.h" line="116"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="feature" transfer-ownership="none">
-            <doc xml:space="preserve">feature to rank</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpluginfeature.c"
+                 line="153">feature to rank</doc>
             <type name="PluginFeature" c:type="GstPluginFeature*"/>
           </instance-parameter>
           <parameter name="rank" transfer-ownership="none">
-            <doc xml:space="preserve">rank value - higher number means more priority rank</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpluginfeature.c"
+                 line="154">rank value - higher number means more priority rank</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
@@ -30709,17 +47508,25 @@ the most appropriate feature.</doc>
             c:type="GstPluginFeatureClass"
             disguised="1"
             glib:is-gtype-struct-for="PluginFeature">
+      <source-position filename="gst/gstpluginfeature.h" line="47"/>
     </record>
     <callback name="PluginFeatureFilter" c:type="GstPluginFeatureFilter">
-      <doc xml:space="preserve">A function that can be used with e.g. gst_registry_feature_filter()
+      <doc xml:space="preserve"
+           filename="gst/gstpluginfeature.h"
+           line="92">A function that can be used with e.g. gst_registry_feature_filter()
 to get a list of pluginfeature that match certain criteria.</doc>
+      <source-position filename="gst/gstpluginfeature.h" line="103"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE for a positive match, %FALSE otherwise</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpluginfeature.h"
+             line="101">%TRUE for a positive match, %FALSE otherwise</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="feature" transfer-ownership="none">
-          <doc xml:space="preserve">the pluginfeature to check</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstpluginfeature.h"
+               line="94">the pluginfeature to check</doc>
           <type name="PluginFeature" c:type="GstPluginFeature*"/>
         </parameter>
         <parameter name="user_data"
@@ -30727,22 +47534,31 @@ to get a list of pluginfeature that match certain criteria.</doc>
                    nullable="1"
                    allow-none="1"
                    closure="1">
-          <doc xml:space="preserve">the user_data that has been passed on e.g.
+          <doc xml:space="preserve"
+               filename="gst/gstpluginfeature.h"
+               line="95">the user_data that has been passed on e.g.
  gst_registry_feature_filter()</doc>
           <type name="gpointer" c:type="gpointer"/>
         </parameter>
       </parameters>
     </callback>
     <callback name="PluginFilter" c:type="GstPluginFilter">
-      <doc xml:space="preserve">A function that can be used with e.g. gst_registry_plugin_filter()
+      <doc xml:space="preserve"
+           filename="gst/gstplugin.h"
+           line="299">A function that can be used with e.g. gst_registry_plugin_filter()
 to get a list of plugins that match certain criteria.</doc>
+      <source-position filename="gst/gstplugin.h" line="309"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE for a positive match, %FALSE otherwise</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstplugin.h"
+             line="307">%TRUE for a positive match, %FALSE otherwise</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="plugin" transfer-ownership="none">
-          <doc xml:space="preserve">the plugin to check</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstplugin.h"
+               line="301">the plugin to check</doc>
           <type name="Plugin" c:type="GstPlugin*"/>
         </parameter>
         <parameter name="user_data"
@@ -30750,7 +47566,9 @@ to get a list of plugins that match certain criteria.</doc>
                    nullable="1"
                    allow-none="1"
                    closure="1">
-          <doc xml:space="preserve">the user_data that has been passed on e.g. gst_registry_plugin_filter()</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstplugin.h"
+               line="302">the user_data that has been passed on e.g. gst_registry_plugin_filter()</doc>
           <type name="gpointer" c:type="gpointer"/>
         </parameter>
       </parameters>
@@ -30759,33 +47577,46 @@ to get a list of plugins that match certain criteria.</doc>
               glib:type-name="GstPluginFlags"
               glib:get-type="gst_plugin_flags_get_type"
               c:type="GstPluginFlags">
-      <doc xml:space="preserve">The plugin loading state</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstplugin.h"
+           line="76">The plugin loading state</doc>
       <member name="cached"
               value="16"
               c:identifier="GST_PLUGIN_FLAG_CACHED"
               glib:nick="cached">
-        <doc xml:space="preserve">Temporarily loaded plugins</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstplugin.h"
+             line="78">Temporarily loaded plugins</doc>
       </member>
       <member name="blacklisted"
               value="32"
               c:identifier="GST_PLUGIN_FLAG_BLACKLISTED"
               glib:nick="blacklisted">
-        <doc xml:space="preserve">The plugin won't be scanned (again)</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstplugin.h"
+             line="79">The plugin won't be scanned (again)</doc>
       </member>
     </bitfield>
     <callback name="PluginInitFullFunc" c:type="GstPluginInitFullFunc">
-      <doc xml:space="preserve">A plugin should provide a pointer to a function of either #GstPluginInitFunc
+      <doc xml:space="preserve"
+           filename="gst/gstplugin.h"
+           line="130">A plugin should provide a pointer to a function of either #GstPluginInitFunc
 or this type in the plugin_desc struct.
 The function will be called by the loader at startup. One would then
 register each #GstPluginFeature. This version allows
 user data to be passed to init function (useful for bindings).</doc>
+      <source-position filename="gst/gstplugin.h" line="144"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE if plugin initialised successfully</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstplugin.h"
+             line="141">%TRUE if plugin initialised successfully</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="plugin" transfer-ownership="none">
-          <doc xml:space="preserve">The plugin object</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstplugin.h"
+               line="132">The plugin object</doc>
           <type name="Plugin" c:type="GstPlugin*"/>
         </parameter>
         <parameter name="user_data"
@@ -30793,30 +47624,41 @@ user data to be passed to init function (useful for bindings).</doc>
                    nullable="1"
                    allow-none="1"
                    closure="1">
-          <doc xml:space="preserve">extra data</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstplugin.h"
+               line="133">extra data</doc>
           <type name="gpointer" c:type="gpointer"/>
         </parameter>
       </parameters>
     </callback>
     <callback name="PluginInitFunc" c:type="GstPluginInitFunc">
-      <doc xml:space="preserve">A plugin should provide a pointer to a function of this type in the
+      <doc xml:space="preserve"
+           filename="gst/gstplugin.h"
+           line="116">A plugin should provide a pointer to a function of this type in the
 plugin_desc struct.
 This function will be called by the loader at startup. One would then
 register each #GstPluginFeature.</doc>
+      <source-position filename="gst/gstplugin.h" line="128"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE if plugin initialised successfully</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstplugin.h"
+             line="125">%TRUE if plugin initialised successfully</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="plugin" transfer-ownership="none">
-          <doc xml:space="preserve">The plugin object</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstplugin.h"
+               line="118">The plugin object</doc>
           <type name="Plugin" c:type="GstPlugin*"/>
         </parameter>
       </parameters>
     </callback>
     <record name="Poll" c:type="GstPoll" disguised="1">
-      <doc xml:space="preserve">A #GstPoll keeps track of file descriptors much like fd_set (used with
-select()) or a struct pollfd array (used with poll()). Once created with
+      <doc xml:space="preserve"
+           filename="gst/gstpoll.c"
+           line="24">A #GstPoll keeps track of file descriptors much like fd_set (used with
+select ()) or a struct pollfd array (used with poll ()). Once created with
 gst_poll_new(), the set can be used to wait for file descriptors to be
 readable and/or writable. It is possible to make this wait be controlled
 by specifying %TRUE for the @controllable flag when creating the set (or
@@ -30838,53 +47680,81 @@ gst_poll_fd_has_error() to see if it has generated an error,
 gst_poll_fd_can_read() to see if it is possible to read from the file
 descriptor, and gst_poll_fd_can_write() to see if it is possible to
 write to it.</doc>
+      <source-position filename="gst/gstpoll.h" line="39"/>
       <method name="add_fd" c:identifier="gst_poll_add_fd">
-        <doc xml:space="preserve">Add a file descriptor to the file descriptor set.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the file descriptor was successfully added to the set.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpoll.c"
+             line="885">Add a file descriptor to the file descriptor set.</doc>
+        <source-position filename="gst/gstpoll.h" line="80"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstpoll.c"
+               line="892">%TRUE if the file descriptor was successfully added to the set.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="set" transfer-ownership="none">
-            <doc xml:space="preserve">a file descriptor set.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpoll.c"
+                 line="887">a file descriptor set.</doc>
             <type name="Poll" c:type="GstPoll*"/>
           </instance-parameter>
           <parameter name="fd" transfer-ownership="none">
-            <doc xml:space="preserve">a file descriptor.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpoll.c"
+                 line="888">a file descriptor.</doc>
             <type name="PollFD" c:type="GstPollFD*"/>
           </parameter>
         </parameters>
       </method>
       <method name="fd_can_read" c:identifier="gst_poll_fd_can_read">
-        <doc xml:space="preserve">Check if @fd in @set has data to be read.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the descriptor has data to be read.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpoll.c"
+             line="1271">Check if @fd in @set has data to be read.</doc>
+        <source-position filename="gst/gstpoll.h" line="104"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstpoll.c"
+               line="1278">%TRUE if the descriptor has data to be read.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="set" transfer-ownership="none">
-            <doc xml:space="preserve">a file descriptor set.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpoll.c"
+                 line="1273">a file descriptor set.</doc>
             <type name="Poll" c:type="const GstPoll*"/>
           </instance-parameter>
           <parameter name="fd" transfer-ownership="none">
-            <doc xml:space="preserve">a file descriptor.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpoll.c"
+                 line="1274">a file descriptor.</doc>
             <type name="PollFD" c:type="GstPollFD*"/>
           </parameter>
         </parameters>
       </method>
       <method name="fd_can_write" c:identifier="gst_poll_fd_can_write">
-        <doc xml:space="preserve">Check if @fd in @set can be used for writing.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the descriptor can be used for writing.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpoll.c"
+             line="1298">Check if @fd in @set can be used for writing.</doc>
+        <source-position filename="gst/gstpoll.h" line="107"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstpoll.c"
+               line="1305">%TRUE if the descriptor can be used for writing.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="set" transfer-ownership="none">
-            <doc xml:space="preserve">a file descriptor set.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpoll.c"
+                 line="1300">a file descriptor set.</doc>
             <type name="Poll" c:type="const GstPoll*"/>
           </instance-parameter>
           <parameter name="fd" transfer-ownership="none">
-            <doc xml:space="preserve">a file descriptor.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpoll.c"
+                 line="1301">a file descriptor.</doc>
             <type name="PollFD" c:type="GstPollFD*"/>
           </parameter>
         </parameters>
@@ -30892,103 +47762,154 @@ write to it.</doc>
       <method name="fd_ctl_pri"
               c:identifier="gst_poll_fd_ctl_pri"
               version="1.16">
-        <doc xml:space="preserve">Control whether the descriptor @fd in @set will be monitored for
+        <doc xml:space="preserve"
+             filename="gst/gstpoll.c"
+             line="1067">Control whether the descriptor @fd in @set will be monitored for
 exceptional conditions (POLLPRI).
 
 Not implemented on Windows (will just return %FALSE there).</doc>
+        <source-position filename="gst/gstpoll.h" line="92"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the descriptor was successfully updated.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstpoll.c"
+               line="1078">%TRUE if the descriptor was successfully updated.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="set" transfer-ownership="none">
-            <doc xml:space="preserve">a file descriptor set.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpoll.c"
+                 line="1069">a file descriptor set.</doc>
             <type name="Poll" c:type="GstPoll*"/>
           </instance-parameter>
           <parameter name="fd" transfer-ownership="none">
-            <doc xml:space="preserve">a file descriptor.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpoll.c"
+                 line="1070">a file descriptor.</doc>
             <type name="PollFD" c:type="GstPollFD*"/>
           </parameter>
           <parameter name="active" transfer-ownership="none">
-            <doc xml:space="preserve">a new status.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpoll.c"
+                 line="1071">a new status.</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </method>
       <method name="fd_ctl_read" c:identifier="gst_poll_fd_ctl_read">
-        <doc xml:space="preserve">Control whether the descriptor @fd in @set will be monitored for
+        <doc xml:space="preserve"
+             filename="gst/gstpoll.c"
+             line="1038">Control whether the descriptor @fd in @set will be monitored for
 readability.</doc>
+        <source-position filename="gst/gstpoll.h" line="89"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the descriptor was successfully updated.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstpoll.c"
+               line="1047">%TRUE if the descriptor was successfully updated.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="set" transfer-ownership="none">
-            <doc xml:space="preserve">a file descriptor set.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpoll.c"
+                 line="1040">a file descriptor set.</doc>
             <type name="Poll" c:type="GstPoll*"/>
           </instance-parameter>
           <parameter name="fd" transfer-ownership="none">
-            <doc xml:space="preserve">a file descriptor.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpoll.c"
+                 line="1041">a file descriptor.</doc>
             <type name="PollFD" c:type="GstPollFD*"/>
           </parameter>
           <parameter name="active" transfer-ownership="none">
-            <doc xml:space="preserve">a new status.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpoll.c"
+                 line="1042">a new status.</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </method>
       <method name="fd_ctl_write" c:identifier="gst_poll_fd_ctl_write">
-        <doc xml:space="preserve">Control whether the descriptor @fd in @set will be monitored for
+        <doc xml:space="preserve"
+             filename="gst/gstpoll.c"
+             line="959">Control whether the descriptor @fd in @set will be monitored for
 writability.</doc>
+        <source-position filename="gst/gstpoll.h" line="86"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the descriptor was successfully updated.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstpoll.c"
+               line="968">%TRUE if the descriptor was successfully updated.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="set" transfer-ownership="none">
-            <doc xml:space="preserve">a file descriptor set.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpoll.c"
+                 line="961">a file descriptor set.</doc>
             <type name="Poll" c:type="GstPoll*"/>
           </instance-parameter>
           <parameter name="fd" transfer-ownership="none">
-            <doc xml:space="preserve">a file descriptor.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpoll.c"
+                 line="962">a file descriptor.</doc>
             <type name="PollFD" c:type="GstPollFD*"/>
           </parameter>
           <parameter name="active" transfer-ownership="none">
-            <doc xml:space="preserve">a new status.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpoll.c"
+                 line="963">a new status.</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </method>
       <method name="fd_has_closed" c:identifier="gst_poll_fd_has_closed">
-        <doc xml:space="preserve">Check if @fd in @set has closed the connection.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the connection was closed.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpoll.c"
+             line="1158">Check if @fd in @set has closed the connection.</doc>
+        <source-position filename="gst/gstpoll.h" line="98"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstpoll.c"
+               line="1165">%TRUE if the connection was closed.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="set" transfer-ownership="none">
-            <doc xml:space="preserve">a file descriptor set.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpoll.c"
+                 line="1160">a file descriptor set.</doc>
             <type name="Poll" c:type="const GstPoll*"/>
           </instance-parameter>
           <parameter name="fd" transfer-ownership="none">
-            <doc xml:space="preserve">a file descriptor.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpoll.c"
+                 line="1161">a file descriptor.</doc>
             <type name="PollFD" c:type="GstPollFD*"/>
           </parameter>
         </parameters>
       </method>
       <method name="fd_has_error" c:identifier="gst_poll_fd_has_error">
-        <doc xml:space="preserve">Check if @fd in @set has an error.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the descriptor has an error.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpoll.c"
+             line="1200">Check if @fd in @set has an error.</doc>
+        <source-position filename="gst/gstpoll.h" line="101"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstpoll.c"
+               line="1207">%TRUE if the descriptor has an error.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="set" transfer-ownership="none">
-            <doc xml:space="preserve">a file descriptor set.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpoll.c"
+                 line="1202">a file descriptor set.</doc>
             <type name="Poll" c:type="const GstPoll*"/>
           </instance-parameter>
           <parameter name="fd" transfer-ownership="none">
-            <doc xml:space="preserve">a file descriptor.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpoll.c"
+                 line="1203">a file descriptor.</doc>
             <type name="PollFD" c:type="GstPollFD*"/>
           </parameter>
         </parameters>
@@ -30996,26 +47917,37 @@ writability.</doc>
       <method name="fd_has_pri"
               c:identifier="gst_poll_fd_has_pri"
               version="1.16">
-        <doc xml:space="preserve">Check if @fd in @set has an exceptional condition (POLLPRI).
+        <doc xml:space="preserve"
+             filename="gst/gstpoll.c"
+             line="1340">Check if @fd in @set has an exceptional condition (POLLPRI).
 
 Not implemented on Windows (will just return %FALSE there).</doc>
+        <source-position filename="gst/gstpoll.h" line="110"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the descriptor has an exceptional condition.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstpoll.c"
+               line="1349">%TRUE if the descriptor has an exceptional condition.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="set" transfer-ownership="none">
-            <doc xml:space="preserve">a file descriptor set.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpoll.c"
+                 line="1342">a file descriptor set.</doc>
             <type name="Poll" c:type="const GstPoll*"/>
           </instance-parameter>
           <parameter name="fd" transfer-ownership="none">
-            <doc xml:space="preserve">a file descriptor.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpoll.c"
+                 line="1343">a file descriptor.</doc>
             <type name="PollFD" c:type="GstPollFD*"/>
           </parameter>
         </parameters>
       </method>
       <method name="fd_ignored" c:identifier="gst_poll_fd_ignored">
-        <doc xml:space="preserve">Mark @fd as ignored so that the next call to gst_poll_wait() will yield
+        <doc xml:space="preserve"
+             filename="gst/gstpoll.c"
+             line="1120">Mark @fd as ignored so that the next call to gst_poll_wait() will yield
 the same result for @fd as last time. This function must be called if no
 operation (read/write/recv/send/etc.) will be performed on @fd before
 the next call to gst_poll_wait().
@@ -31023,56 +47955,78 @@ the next call to gst_poll_wait().
 The reason why this is needed is because the underlying implementation
 might not allow querying the fd more than once between calls to one of
 the re-enabling operations.</doc>
+        <source-position filename="gst/gstpoll.h" line="95"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="set" transfer-ownership="none">
-            <doc xml:space="preserve">a file descriptor set.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpoll.c"
+                 line="1122">a file descriptor set.</doc>
             <type name="Poll" c:type="GstPoll*"/>
           </instance-parameter>
           <parameter name="fd" transfer-ownership="none">
-            <doc xml:space="preserve">a file descriptor.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpoll.c"
+                 line="1123">a file descriptor.</doc>
             <type name="PollFD" c:type="GstPollFD*"/>
           </parameter>
         </parameters>
       </method>
       <method name="free" c:identifier="gst_poll_free">
-        <doc xml:space="preserve">Free a file descriptor set.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpoll.c"
+             line="761">Free a file descriptor set.</doc>
+        <source-position filename="gst/gstpoll.h" line="71"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="set" transfer-ownership="full">
-            <doc xml:space="preserve">a file descriptor set.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpoll.c"
+                 line="763">a file descriptor set.</doc>
             <type name="Poll" c:type="GstPoll*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_read_gpollfd" c:identifier="gst_poll_get_read_gpollfd">
-        <doc xml:space="preserve">Get a GPollFD for the reading part of the control socket. This is useful when
+        <doc xml:space="preserve"
+             filename="gst/gstpoll.c"
+             line="800">Get a GPollFD for the reading part of the control socket. This is useful when
 integrating with a GSource and GMainLoop.</doc>
+        <source-position filename="gst/gstpoll.h" line="74"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="set" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstPoll</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpoll.c"
+                 line="802">a #GstPoll</doc>
             <type name="Poll" c:type="GstPoll*"/>
           </instance-parameter>
           <parameter name="fd" transfer-ownership="none">
-            <doc xml:space="preserve">a #GPollFD</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpoll.c"
+                 line="803">a #GPollFD</doc>
             <type name="GLib.PollFD" c:type="GPollFD*"/>
           </parameter>
         </parameters>
       </method>
       <method name="read_control" c:identifier="gst_poll_read_control">
-        <doc xml:space="preserve">Read a byte from the control socket of the controllable @set.
+        <doc xml:space="preserve"
+             filename="gst/gstpoll.c"
+             line="1764">Read a byte from the control socket of the controllable @set.
 
 This function only works for timer #GstPoll objects created with
 gst_poll_new_timer().</doc>
+        <source-position filename="gst/gstpoll.h" line="128"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE on success. %FALSE when when there was no byte to read or
+          <doc xml:space="preserve"
+               filename="gst/gstpoll.c"
+               line="1773">%TRUE on success. %FALSE when when there was no byte to read or
 reading the byte failed. If there was no byte to read, and only then, errno
 will contain EWOULDBLOCK or EAGAIN. For all other values of errno this always signals a
 critical error.</doc>
@@ -31080,92 +48034,126 @@ critical error.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="set" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstPoll.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpoll.c"
+                 line="1766">a #GstPoll.</doc>
             <type name="Poll" c:type="GstPoll*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="remove_fd" c:identifier="gst_poll_remove_fd">
-        <doc xml:space="preserve">Remove a file descriptor from the file descriptor set.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the file descriptor was successfully removed from the set.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpoll.c"
+             line="912">Remove a file descriptor from the file descriptor set.</doc>
+        <source-position filename="gst/gstpoll.h" line="83"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstpoll.c"
+               line="919">%TRUE if the file descriptor was successfully removed from the set.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="set" transfer-ownership="none">
-            <doc xml:space="preserve">a file descriptor set.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpoll.c"
+                 line="914">a file descriptor set.</doc>
             <type name="Poll" c:type="GstPoll*"/>
           </instance-parameter>
           <parameter name="fd" transfer-ownership="none">
-            <doc xml:space="preserve">a file descriptor.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpoll.c"
+                 line="915">a file descriptor.</doc>
             <type name="PollFD" c:type="GstPollFD*"/>
           </parameter>
         </parameters>
       </method>
       <method name="restart" c:identifier="gst_poll_restart">
-        <doc xml:space="preserve">Restart any gst_poll_wait() that is in progress. This function is typically
+        <doc xml:space="preserve"
+             filename="gst/gstpoll.c"
+             line="1674">Restart any gst_poll_wait() that is in progress. This function is typically
 used after adding or removing descriptors to @set.
 
 If @set is not controllable, then this call will have no effect.
 
 This function only works for non-timer #GstPoll objects created with
 gst_poll_new().</doc>
+        <source-position filename="gst/gstpoll.h" line="119"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="set" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstPoll.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpoll.c"
+                 line="1676">a #GstPoll.</doc>
             <type name="Poll" c:type="GstPoll*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="set_controllable" c:identifier="gst_poll_set_controllable">
-        <doc xml:space="preserve">When @controllable is %TRUE, this function ensures that future calls to
+        <doc xml:space="preserve"
+             filename="gst/gstpoll.c"
+             line="1647">When @controllable is %TRUE, this function ensures that future calls to
 gst_poll_wait() will be affected by gst_poll_restart() and
 gst_poll_set_flushing().
 
 This function only works for non-timer #GstPoll objects created with
 gst_poll_new().</doc>
+        <source-position filename="gst/gstpoll.h" line="116"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the controllability of @set could be updated.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstpoll.c"
+               line="1659">%TRUE if the controllability of @set could be updated.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="set" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstPoll.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpoll.c"
+                 line="1649">a #GstPoll.</doc>
             <type name="Poll" c:type="GstPoll*"/>
           </instance-parameter>
           <parameter name="controllable" transfer-ownership="none">
-            <doc xml:space="preserve">new controllable state.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpoll.c"
+                 line="1650">new controllable state.</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_flushing" c:identifier="gst_poll_set_flushing">
-        <doc xml:space="preserve">When @flushing is %TRUE, this function ensures that current and future calls
+        <doc xml:space="preserve"
+             filename="gst/gstpoll.c"
+             line="1699">When @flushing is %TRUE, this function ensures that current and future calls
 to gst_poll_wait() will return -1, with errno set to EBUSY.
 
 Unsetting the flushing state will restore normal operation of @set.
 
 This function only works for non-timer #GstPoll objects created with
 gst_poll_new().</doc>
+        <source-position filename="gst/gstpoll.h" line="122"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="set" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstPoll.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpoll.c"
+                 line="1701">a #GstPoll.</doc>
             <type name="Poll" c:type="GstPoll*"/>
           </instance-parameter>
           <parameter name="flushing" transfer-ownership="none">
-            <doc xml:space="preserve">new flushing state.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpoll.c"
+                 line="1702">new flushing state.</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </method>
       <method name="wait" c:identifier="gst_poll_wait">
-        <doc xml:space="preserve">Wait for activity on the file descriptors in @set. This function waits up to
+        <doc xml:space="preserve"
+             filename="gst/gstpoll.c"
+             line="1384">Wait for activity on the file descriptors in @set. This function waits up to
 the specified @timeout.  A timeout of #GST_CLOCK_TIME_NONE waits forever.
 
 For #GstPoll objects created with gst_poll_new(), this function can only be
@@ -31175,25 +48163,34 @@ called from a single thread at a time.  If called from multiple threads,
 This is not true for timer #GstPoll objects created with
 gst_poll_new_timer(), where it is allowed to have multiple threads waiting
 simultaneously.</doc>
+        <source-position filename="gst/gstpoll.h" line="113"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The number of #GstPollFD in @set that have activity or 0 when no
+          <doc xml:space="preserve"
+               filename="gst/gstpoll.c"
+               line="1400">The number of #GstPollFD in @set that have activity or 0 when no
 activity was detected after @timeout. If an error occurs, -1 is returned
 and errno is set.</doc>
           <type name="gint" c:type="gint"/>
         </return-value>
         <parameters>
           <instance-parameter name="set" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstPoll.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpoll.c"
+                 line="1386">a #GstPoll.</doc>
             <type name="Poll" c:type="GstPoll*"/>
           </instance-parameter>
           <parameter name="timeout" transfer-ownership="none">
-            <doc xml:space="preserve">a timeout in nanoseconds.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpoll.c"
+                 line="1387">a timeout in nanoseconds.</doc>
             <type name="ClockTime" c:type="GstClockTime"/>
           </parameter>
         </parameters>
       </method>
       <method name="write_control" c:identifier="gst_poll_write_control">
-        <doc xml:space="preserve">Write a byte to the control socket of the controllable @set.
+        <doc xml:space="preserve"
+             filename="gst/gstpoll.c"
+             line="1731">Write a byte to the control socket of the controllable @set.
 This function is mostly useful for timer #GstPoll objects created with
 gst_poll_new_timer().
 
@@ -31204,33 +48201,45 @@ block again until their timeout expired.
 
 This function only works for timer #GstPoll objects created with
 gst_poll_new_timer().</doc>
+        <source-position filename="gst/gstpoll.h" line="125"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE on success. %FALSE when when the byte could not be written.
+          <doc xml:space="preserve"
+               filename="gst/gstpoll.c"
+               line="1747">%TRUE on success. %FALSE when when the byte could not be written.
 errno contains the detailed error code but will never be EAGAIN, EINTR or
 EWOULDBLOCK. %FALSE always signals a critical error.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="set" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstPoll.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpoll.c"
+                 line="1733">a #GstPoll.</doc>
             <type name="Poll" c:type="GstPoll*"/>
           </instance-parameter>
         </parameters>
       </method>
       <function name="new" c:identifier="gst_poll_new" introspectable="0">
-        <doc xml:space="preserve">Create a new file descriptor set. If @controllable, it
+        <doc xml:space="preserve"
+             filename="gst/gstpoll.c"
+             line="662">Create a new file descriptor set. If @controllable, it
 is possible to restart or flush a call to gst_poll_wait() with
 gst_poll_restart() and gst_poll_set_flushing() respectively.
 
 Free-function: gst_poll_free</doc>
+        <source-position filename="gst/gstpoll.h" line="65"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">a new #GstPoll, or %NULL in
+          <doc xml:space="preserve"
+               filename="gst/gstpoll.c"
+               line="672">a new #GstPoll, or %NULL in
     case of an error.  Free with gst_poll_free().</doc>
           <type name="Poll" c:type="GstPoll*"/>
         </return-value>
         <parameters>
           <parameter name="controllable" transfer-ownership="none">
-            <doc xml:space="preserve">whether it should be possible to control a wait.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpoll.c"
+                 line="664">whether it should be possible to control a wait.</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
@@ -31238,38 +48247,53 @@ Free-function: gst_poll_free</doc>
       <function name="new_timer"
                 c:identifier="gst_poll_new_timer"
                 introspectable="0">
-        <doc xml:space="preserve">Create a new poll object that can be used for scheduling cancellable
+        <doc xml:space="preserve"
+             filename="gst/gstpoll.c"
+             line="731">Create a new poll object that can be used for scheduling cancellable
 timeouts.
 
 A timeout is performed with gst_poll_wait(). Multiple timeouts can be
 performed from different threads.
 
 Free-function: gst_poll_free</doc>
+        <source-position filename="gst/gstpoll.h" line="68"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">a new #GstPoll, or %NULL in
+          <doc xml:space="preserve"
+               filename="gst/gstpoll.c"
+               line="742">a new #GstPoll, or %NULL in
     case of an error.  Free with gst_poll_free().</doc>
           <type name="Poll" c:type="GstPoll*"/>
         </return-value>
       </function>
     </record>
     <record name="PollFD" c:type="GstPollFD">
-      <doc xml:space="preserve">A file descriptor object.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstpoll.h"
+           line="41">A file descriptor object.</doc>
+      <source-position filename="gst/gstpoll.h" line="52"/>
       <field name="fd" writable="1">
-        <doc xml:space="preserve">a file descriptor</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpoll.h"
+             line="43">a file descriptor</doc>
         <type name="gint" c:type="int"/>
       </field>
       <field name="idx" readable="0" private="1">
         <type name="gint" c:type="gint"/>
       </field>
       <method name="init" c:identifier="gst_poll_fd_init">
-        <doc xml:space="preserve">Initializes @fd. Alternatively you can initialize it with
+        <doc xml:space="preserve"
+             filename="gst/gstpoll.c"
+             line="827">Initializes @fd. Alternatively you can initialize it with
 #GST_POLL_FD_INIT.</doc>
+        <source-position filename="gst/gstpoll.h" line="77"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="fd" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstPollFD</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpoll.c"
+                 line="829">a #GstPollFD</doc>
             <type name="PollFD" c:type="GstPollFD*"/>
           </instance-parameter>
         </parameters>
@@ -31281,7 +48305,9 @@ Free-function: gst_poll_free</doc>
                glib:type-name="GstPreset"
                glib:get-type="gst_preset_get_type"
                glib:type-struct="PresetInterface">
-      <doc xml:space="preserve">This interface offers methods to query and manipulate parameter preset sets.
+      <doc xml:space="preserve"
+           filename="gst/gstpreset.c"
+           line="21">This interface offers methods to query and manipulate parameter preset sets.
 A preset is a bunch of property settings, together with meta data and a name.
 The name of a preset serves as key for subsequent method calls to manipulate
 single presets.
@@ -31304,81 +48330,121 @@ a list of presets individual presets are read and overlaid in 1) system,
 later entries will be updated. Since 1.8 you can also provide extra paths
 where to find presets through the GST_PRESET_PATH environment variable.
 Presets found in those paths will be considered as "app presets".</doc>
+      <source-position filename="gst/gstpreset.h" line="78"/>
       <function name="get_app_dir" c:identifier="gst_preset_get_app_dir">
-        <doc xml:space="preserve">Gets the directory for application specific presets if set by the
+        <doc xml:space="preserve"
+             filename="gst/gstpreset.c"
+             line="1234">Gets the directory for application specific presets if set by the
 application.</doc>
+        <source-position filename="gst/gstpreset.h" line="111"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">the directory or %NULL, don't free or modify
+          <doc xml:space="preserve"
+               filename="gst/gstpreset.c"
+               line="1240">the directory or %NULL, don't free or modify
 the string</doc>
           <type name="filename" c:type="const gchar*"/>
         </return-value>
       </function>
       <function name="set_app_dir" c:identifier="gst_preset_set_app_dir">
-        <doc xml:space="preserve">Sets an extra directory as an absolute path that should be considered when
+        <doc xml:space="preserve"
+             filename="gst/gstpreset.c"
+             line="1212">Sets an extra directory as an absolute path that should be considered when
 looking for presets. Any presets in the application dir will shadow the
 system presets.</doc>
+        <source-position filename="gst/gstpreset.h" line="108"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE for success, %FALSE if the dir already has been set</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstpreset.c"
+               line="1220">%TRUE for success, %FALSE if the dir already has been set</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <parameter name="app_dir" transfer-ownership="none">
-            <doc xml:space="preserve">the application specific preset dir</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpreset.c"
+                 line="1214">the application specific preset dir</doc>
             <type name="filename" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </function>
       <virtual-method name="delete_preset" invoker="delete_preset">
-        <doc xml:space="preserve">Delete the given preset.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE for success, %FALSE if e.g. there is no preset with that @name</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpreset.c"
+             line="1145">Delete the given preset.</doc>
+        <source-position filename="gst/gstpreset.h" line="70"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstpreset.c"
+               line="1152">%TRUE for success, %FALSE if e.g. there is no preset with that @name</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="preset" transfer-ownership="none">
-            <doc xml:space="preserve">a #GObject that implements #GstPreset</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpreset.c"
+                 line="1147">a #GObject that implements #GstPreset</doc>
             <type name="Preset" c:type="GstPreset*"/>
           </instance-parameter>
           <parameter name="name" transfer-ownership="none">
-            <doc xml:space="preserve">preset name to remove</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpreset.c"
+                 line="1148">preset name to remove</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </virtual-method>
       <virtual-method name="get_meta" invoker="get_meta">
-        <doc xml:space="preserve">Gets the @value for an existing meta data @tag. Meta data @tag names can be
+        <doc xml:space="preserve"
+             filename="gst/gstpreset.c"
+             line="1187">Gets the @value for an existing meta data @tag. Meta data @tag names can be
 something like e.g. "comment". Returned values need to be released when done.</doc>
+        <source-position filename="gst/gstpreset.h" line="74"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE for success, %FALSE if e.g. there is no preset with that @name
+          <doc xml:space="preserve"
+               filename="gst/gstpreset.c"
+               line="1197">%TRUE for success, %FALSE if e.g. there is no preset with that @name
 or no value for the given @tag</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="preset" transfer-ownership="none">
-            <doc xml:space="preserve">a #GObject that implements #GstPreset</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpreset.c"
+                 line="1189">a #GObject that implements #GstPreset</doc>
             <type name="Preset" c:type="GstPreset*"/>
           </instance-parameter>
           <parameter name="name" transfer-ownership="none">
-            <doc xml:space="preserve">preset name</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpreset.c"
+                 line="1190">preset name</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="tag" transfer-ownership="none">
-            <doc xml:space="preserve">meta data item name</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpreset.c"
+                 line="1191">meta data item name</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="value"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">value</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpreset.c"
+                 line="1192">value</doc>
             <type name="utf8" c:type="gchar**"/>
           </parameter>
         </parameters>
       </virtual-method>
       <virtual-method name="get_preset_names" invoker="get_preset_names">
-        <doc xml:space="preserve">Get a copy of preset names as a %NULL terminated string array.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpreset.c"
+             line="1051">Get a copy of preset names as a %NULL terminated string array.</doc>
+        <source-position filename="gst/gstpreset.h" line="62"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">
+          <doc xml:space="preserve"
+               filename="gst/gstpreset.c"
+               line="1057">
     list with names, use g_strfreev() after usage.</doc>
           <array c:type="gchar**">
             <type name="utf8"/>
@@ -31386,15 +48452,22 @@ or no value for the given @tag</doc>
         </return-value>
         <parameters>
           <instance-parameter name="preset" transfer-ownership="none">
-            <doc xml:space="preserve">a #GObject that implements #GstPreset</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpreset.c"
+                 line="1053">a #GObject that implements #GstPreset</doc>
             <type name="Preset" c:type="GstPreset*"/>
           </instance-parameter>
         </parameters>
       </virtual-method>
       <virtual-method name="get_property_names" invoker="get_property_names">
-        <doc xml:space="preserve">Get a the names of the GObject properties that can be used for presets.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpreset.c"
+             line="1068">Get a the names of the GObject properties that can be used for presets.</doc>
+        <source-position filename="gst/gstpreset.h" line="64"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">an
+          <doc xml:space="preserve"
+               filename="gst/gstpreset.c"
+               line="1074">an
   array of property names which should be freed with g_strfreev() after use.</doc>
           <array c:type="gchar**">
             <type name="utf8"/>
@@ -31402,150 +48475,221 @@ or no value for the given @tag</doc>
         </return-value>
         <parameters>
           <instance-parameter name="preset" transfer-ownership="none">
-            <doc xml:space="preserve">a #GObject that implements #GstPreset</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpreset.c"
+                 line="1070">a #GObject that implements #GstPreset</doc>
             <type name="Preset" c:type="GstPreset*"/>
           </instance-parameter>
         </parameters>
       </virtual-method>
       <virtual-method name="load_preset" invoker="load_preset">
-        <doc xml:space="preserve">Load the given preset.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE for success, %FALSE if e.g. there is no preset with that @name</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpreset.c"
+             line="1085">Load the given preset.</doc>
+        <source-position filename="gst/gstpreset.h" line="66"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstpreset.c"
+               line="1092">%TRUE for success, %FALSE if e.g. there is no preset with that @name</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="preset" transfer-ownership="none">
-            <doc xml:space="preserve">a #GObject that implements #GstPreset</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpreset.c"
+                 line="1087">a #GObject that implements #GstPreset</doc>
             <type name="Preset" c:type="GstPreset*"/>
           </instance-parameter>
           <parameter name="name" transfer-ownership="none">
-            <doc xml:space="preserve">preset name to load</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpreset.c"
+                 line="1088">preset name to load</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </virtual-method>
       <virtual-method name="rename_preset" invoker="rename_preset">
-        <doc xml:space="preserve">Renames a preset. If there is already a preset by the @new_name it will be
+        <doc xml:space="preserve"
+             filename="gst/gstpreset.c"
+             line="1122">Renames a preset. If there is already a preset by the @new_name it will be
 overwritten.</doc>
+        <source-position filename="gst/gstpreset.h" line="68"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE for success, %FALSE if e.g. there is no preset with @old_name</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstpreset.c"
+               line="1131">%TRUE for success, %FALSE if e.g. there is no preset with @old_name</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="preset" transfer-ownership="none">
-            <doc xml:space="preserve">a #GObject that implements #GstPreset</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpreset.c"
+                 line="1124">a #GObject that implements #GstPreset</doc>
             <type name="Preset" c:type="GstPreset*"/>
           </instance-parameter>
           <parameter name="old_name" transfer-ownership="none">
-            <doc xml:space="preserve">current preset name</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpreset.c"
+                 line="1125">current preset name</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="new_name" transfer-ownership="none">
-            <doc xml:space="preserve">new preset name</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpreset.c"
+                 line="1126">new preset name</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </virtual-method>
       <virtual-method name="save_preset" invoker="save_preset">
-        <doc xml:space="preserve">Save the current object settings as a preset under the given name. If there
+        <doc xml:space="preserve"
+             filename="gst/gstpreset.c"
+             line="1103">Save the current object settings as a preset under the given name. If there
 is already a preset by this @name it will be overwritten.</doc>
+        <source-position filename="gst/gstpreset.h" line="67"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE for success, %FALSE</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstpreset.c"
+               line="1111">%TRUE for success, %FALSE</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="preset" transfer-ownership="none">
-            <doc xml:space="preserve">a #GObject that implements #GstPreset</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpreset.c"
+                 line="1105">a #GObject that implements #GstPreset</doc>
             <type name="Preset" c:type="GstPreset*"/>
           </instance-parameter>
           <parameter name="name" transfer-ownership="none">
-            <doc xml:space="preserve">preset name to save</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpreset.c"
+                 line="1106">preset name to save</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </virtual-method>
       <virtual-method name="set_meta" invoker="set_meta">
-        <doc xml:space="preserve">Sets a new @value for an existing meta data item or adds a new item. Meta
+        <doc xml:space="preserve"
+             filename="gst/gstpreset.c"
+             line="1163">Sets a new @value for an existing meta data item or adds a new item. Meta
 data @tag names can be something like e.g. "comment". Supplying %NULL for the
 @value will unset an existing value.</doc>
+        <source-position filename="gst/gstpreset.h" line="72"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE for success, %FALSE if e.g. there is no preset with that @name</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstpreset.c"
+               line="1174">%TRUE for success, %FALSE if e.g. there is no preset with that @name</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="preset" transfer-ownership="none">
-            <doc xml:space="preserve">a #GObject that implements #GstPreset</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpreset.c"
+                 line="1165">a #GObject that implements #GstPreset</doc>
             <type name="Preset" c:type="GstPreset*"/>
           </instance-parameter>
           <parameter name="name" transfer-ownership="none">
-            <doc xml:space="preserve">preset name</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpreset.c"
+                 line="1166">preset name</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="tag" transfer-ownership="none">
-            <doc xml:space="preserve">meta data item name</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpreset.c"
+                 line="1167">meta data item name</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="value"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">new value</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpreset.c"
+                 line="1168">new value</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </virtual-method>
       <method name="delete_preset" c:identifier="gst_preset_delete_preset">
-        <doc xml:space="preserve">Delete the given preset.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE for success, %FALSE if e.g. there is no preset with that @name</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpreset.c"
+             line="1145">Delete the given preset.</doc>
+        <source-position filename="gst/gstpreset.h" line="99"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstpreset.c"
+               line="1152">%TRUE for success, %FALSE if e.g. there is no preset with that @name</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="preset" transfer-ownership="none">
-            <doc xml:space="preserve">a #GObject that implements #GstPreset</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpreset.c"
+                 line="1147">a #GObject that implements #GstPreset</doc>
             <type name="Preset" c:type="GstPreset*"/>
           </instance-parameter>
           <parameter name="name" transfer-ownership="none">
-            <doc xml:space="preserve">preset name to remove</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpreset.c"
+                 line="1148">preset name to remove</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_meta" c:identifier="gst_preset_get_meta">
-        <doc xml:space="preserve">Gets the @value for an existing meta data @tag. Meta data @tag names can be
+        <doc xml:space="preserve"
+             filename="gst/gstpreset.c"
+             line="1187">Gets the @value for an existing meta data @tag. Meta data @tag names can be
 something like e.g. "comment". Returned values need to be released when done.</doc>
+        <source-position filename="gst/gstpreset.h" line="105"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE for success, %FALSE if e.g. there is no preset with that @name
+          <doc xml:space="preserve"
+               filename="gst/gstpreset.c"
+               line="1197">%TRUE for success, %FALSE if e.g. there is no preset with that @name
 or no value for the given @tag</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="preset" transfer-ownership="none">
-            <doc xml:space="preserve">a #GObject that implements #GstPreset</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpreset.c"
+                 line="1189">a #GObject that implements #GstPreset</doc>
             <type name="Preset" c:type="GstPreset*"/>
           </instance-parameter>
           <parameter name="name" transfer-ownership="none">
-            <doc xml:space="preserve">preset name</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpreset.c"
+                 line="1190">preset name</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="tag" transfer-ownership="none">
-            <doc xml:space="preserve">meta data item name</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpreset.c"
+                 line="1191">meta data item name</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="value"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">value</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpreset.c"
+                 line="1192">value</doc>
             <type name="utf8" c:type="gchar**"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_preset_names"
               c:identifier="gst_preset_get_preset_names">
-        <doc xml:space="preserve">Get a copy of preset names as a %NULL terminated string array.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpreset.c"
+             line="1051">Get a copy of preset names as a %NULL terminated string array.</doc>
+        <source-position filename="gst/gstpreset.h" line="84"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">
+          <doc xml:space="preserve"
+               filename="gst/gstpreset.c"
+               line="1057">
     list with names, use g_strfreev() after usage.</doc>
           <array c:type="gchar**">
             <type name="utf8"/>
@@ -31553,16 +48697,23 @@ or no value for the given @tag</doc>
         </return-value>
         <parameters>
           <instance-parameter name="preset" transfer-ownership="none">
-            <doc xml:space="preserve">a #GObject that implements #GstPreset</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpreset.c"
+                 line="1053">a #GObject that implements #GstPreset</doc>
             <type name="Preset" c:type="GstPreset*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_property_names"
               c:identifier="gst_preset_get_property_names">
-        <doc xml:space="preserve">Get a the names of the GObject properties that can be used for presets.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpreset.c"
+             line="1068">Get a the names of the GObject properties that can be used for presets.</doc>
+        <source-position filename="gst/gstpreset.h" line="87"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">an
+          <doc xml:space="preserve"
+               filename="gst/gstpreset.c"
+               line="1074">an
   array of property names which should be freed with g_strfreev() after use.</doc>
           <array c:type="gchar**">
             <type name="utf8"/>
@@ -31570,7 +48721,9 @@ or no value for the given @tag</doc>
         </return-value>
         <parameters>
           <instance-parameter name="preset" transfer-ownership="none">
-            <doc xml:space="preserve">a #GObject that implements #GstPreset</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpreset.c"
+                 line="1070">a #GObject that implements #GstPreset</doc>
             <type name="Preset" c:type="GstPreset*"/>
           </instance-parameter>
         </parameters>
@@ -31578,101 +48731,150 @@ or no value for the given @tag</doc>
       <method name="is_editable"
               c:identifier="gst_preset_is_editable"
               version="1.6">
-        <doc xml:space="preserve">Check if one can add new presets, change existing ones and remove presets.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if presets are editable or %FALSE if they are static</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpreset.c"
+             line="1249">Check if one can add new presets, change existing ones and remove presets.</doc>
+        <source-position filename="gst/gstpreset.h" line="114"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstpreset.c"
+               line="1255">%TRUE if presets are editable or %FALSE if they are static</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="preset" transfer-ownership="none">
-            <doc xml:space="preserve">a #GObject that implements #GstPreset</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpreset.c"
+                 line="1251">a #GObject that implements #GstPreset</doc>
             <type name="Preset" c:type="GstPreset*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="load_preset" c:identifier="gst_preset_load_preset">
-        <doc xml:space="preserve">Load the given preset.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE for success, %FALSE if e.g. there is no preset with that @name</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpreset.c"
+             line="1085">Load the given preset.</doc>
+        <source-position filename="gst/gstpreset.h" line="90"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstpreset.c"
+               line="1092">%TRUE for success, %FALSE if e.g. there is no preset with that @name</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="preset" transfer-ownership="none">
-            <doc xml:space="preserve">a #GObject that implements #GstPreset</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpreset.c"
+                 line="1087">a #GObject that implements #GstPreset</doc>
             <type name="Preset" c:type="GstPreset*"/>
           </instance-parameter>
           <parameter name="name" transfer-ownership="none">
-            <doc xml:space="preserve">preset name to load</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpreset.c"
+                 line="1088">preset name to load</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </method>
       <method name="rename_preset" c:identifier="gst_preset_rename_preset">
-        <doc xml:space="preserve">Renames a preset. If there is already a preset by the @new_name it will be
+        <doc xml:space="preserve"
+             filename="gst/gstpreset.c"
+             line="1122">Renames a preset. If there is already a preset by the @new_name it will be
 overwritten.</doc>
+        <source-position filename="gst/gstpreset.h" line="96"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE for success, %FALSE if e.g. there is no preset with @old_name</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstpreset.c"
+               line="1131">%TRUE for success, %FALSE if e.g. there is no preset with @old_name</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="preset" transfer-ownership="none">
-            <doc xml:space="preserve">a #GObject that implements #GstPreset</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpreset.c"
+                 line="1124">a #GObject that implements #GstPreset</doc>
             <type name="Preset" c:type="GstPreset*"/>
           </instance-parameter>
           <parameter name="old_name" transfer-ownership="none">
-            <doc xml:space="preserve">current preset name</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpreset.c"
+                 line="1125">current preset name</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="new_name" transfer-ownership="none">
-            <doc xml:space="preserve">new preset name</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpreset.c"
+                 line="1126">new preset name</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </method>
       <method name="save_preset" c:identifier="gst_preset_save_preset">
-        <doc xml:space="preserve">Save the current object settings as a preset under the given name. If there
+        <doc xml:space="preserve"
+             filename="gst/gstpreset.c"
+             line="1103">Save the current object settings as a preset under the given name. If there
 is already a preset by this @name it will be overwritten.</doc>
+        <source-position filename="gst/gstpreset.h" line="93"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE for success, %FALSE</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstpreset.c"
+               line="1111">%TRUE for success, %FALSE</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="preset" transfer-ownership="none">
-            <doc xml:space="preserve">a #GObject that implements #GstPreset</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpreset.c"
+                 line="1105">a #GObject that implements #GstPreset</doc>
             <type name="Preset" c:type="GstPreset*"/>
           </instance-parameter>
           <parameter name="name" transfer-ownership="none">
-            <doc xml:space="preserve">preset name to save</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpreset.c"
+                 line="1106">preset name to save</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_meta" c:identifier="gst_preset_set_meta">
-        <doc xml:space="preserve">Sets a new @value for an existing meta data item or adds a new item. Meta
+        <doc xml:space="preserve"
+             filename="gst/gstpreset.c"
+             line="1163">Sets a new @value for an existing meta data item or adds a new item. Meta
 data @tag names can be something like e.g. "comment". Supplying %NULL for the
 @value will unset an existing value.</doc>
+        <source-position filename="gst/gstpreset.h" line="102"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE for success, %FALSE if e.g. there is no preset with that @name</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstpreset.c"
+               line="1174">%TRUE for success, %FALSE if e.g. there is no preset with that @name</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="preset" transfer-ownership="none">
-            <doc xml:space="preserve">a #GObject that implements #GstPreset</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpreset.c"
+                 line="1165">a #GObject that implements #GstPreset</doc>
             <type name="Preset" c:type="GstPreset*"/>
           </instance-parameter>
           <parameter name="name" transfer-ownership="none">
-            <doc xml:space="preserve">preset name</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpreset.c"
+                 line="1166">preset name</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="tag" transfer-ownership="none">
-            <doc xml:space="preserve">meta data item name</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpreset.c"
+                 line="1167">meta data item name</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="value"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">new value</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpreset.c"
+                 line="1168">new value</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
@@ -31681,15 +48883,23 @@ data @tag names can be something like e.g. "comment". Supplying %NULL for the
     <record name="PresetInterface"
             c:type="GstPresetInterface"
             glib:is-gtype-struct-for="Preset">
-      <doc xml:space="preserve">#GstPreset interface.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstpreset.h"
+           line="43">#GstPreset interface.</doc>
+      <source-position filename="gst/gstpreset.h" line="78"/>
       <field name="parent">
-        <doc xml:space="preserve">parent interface type.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpreset.h"
+             line="45">parent interface type.</doc>
         <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
       </field>
       <field name="get_preset_names">
         <callback name="get_preset_names">
+          <source-position filename="gst/gstpreset.h" line="62"/>
           <return-value transfer-ownership="full">
-            <doc xml:space="preserve">
+            <doc xml:space="preserve"
+                 filename="gst/gstpreset.c"
+                 line="1057">
     list with names, use g_strfreev() after usage.</doc>
             <array c:type="gchar**">
               <type name="utf8"/>
@@ -31697,7 +48907,9 @@ data @tag names can be something like e.g. "comment". Supplying %NULL for the
           </return-value>
           <parameters>
             <parameter name="preset" transfer-ownership="none">
-              <doc xml:space="preserve">a #GObject that implements #GstPreset</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstpreset.c"
+                   line="1053">a #GObject that implements #GstPreset</doc>
               <type name="Preset" c:type="GstPreset*"/>
             </parameter>
           </parameters>
@@ -31705,8 +48917,11 @@ data @tag names can be something like e.g. "comment". Supplying %NULL for the
       </field>
       <field name="get_property_names">
         <callback name="get_property_names">
+          <source-position filename="gst/gstpreset.h" line="64"/>
           <return-value transfer-ownership="full">
-            <doc xml:space="preserve">an
+            <doc xml:space="preserve"
+                 filename="gst/gstpreset.c"
+                 line="1074">an
   array of property names which should be freed with g_strfreev() after use.</doc>
             <array c:type="gchar**">
               <type name="utf8"/>
@@ -31714,7 +48929,9 @@ data @tag names can be something like e.g. "comment". Supplying %NULL for the
           </return-value>
           <parameters>
             <parameter name="preset" transfer-ownership="none">
-              <doc xml:space="preserve">a #GObject that implements #GstPreset</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstpreset.c"
+                   line="1070">a #GObject that implements #GstPreset</doc>
               <type name="Preset" c:type="GstPreset*"/>
             </parameter>
           </parameters>
@@ -31722,17 +48939,24 @@ data @tag names can be something like e.g. "comment". Supplying %NULL for the
       </field>
       <field name="load_preset">
         <callback name="load_preset">
+          <source-position filename="gst/gstpreset.h" line="66"/>
           <return-value transfer-ownership="none">
-            <doc xml:space="preserve">%TRUE for success, %FALSE if e.g. there is no preset with that @name</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpreset.c"
+                 line="1092">%TRUE for success, %FALSE if e.g. there is no preset with that @name</doc>
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
           <parameters>
             <parameter name="preset" transfer-ownership="none">
-              <doc xml:space="preserve">a #GObject that implements #GstPreset</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstpreset.c"
+                   line="1087">a #GObject that implements #GstPreset</doc>
               <type name="Preset" c:type="GstPreset*"/>
             </parameter>
             <parameter name="name" transfer-ownership="none">
-              <doc xml:space="preserve">preset name to load</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstpreset.c"
+                   line="1088">preset name to load</doc>
               <type name="utf8" c:type="const gchar*"/>
             </parameter>
           </parameters>
@@ -31740,17 +48964,24 @@ data @tag names can be something like e.g. "comment". Supplying %NULL for the
       </field>
       <field name="save_preset">
         <callback name="save_preset">
+          <source-position filename="gst/gstpreset.h" line="67"/>
           <return-value transfer-ownership="none">
-            <doc xml:space="preserve">%TRUE for success, %FALSE</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpreset.c"
+                 line="1111">%TRUE for success, %FALSE</doc>
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
           <parameters>
             <parameter name="preset" transfer-ownership="none">
-              <doc xml:space="preserve">a #GObject that implements #GstPreset</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstpreset.c"
+                   line="1105">a #GObject that implements #GstPreset</doc>
               <type name="Preset" c:type="GstPreset*"/>
             </parameter>
             <parameter name="name" transfer-ownership="none">
-              <doc xml:space="preserve">preset name to save</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstpreset.c"
+                   line="1106">preset name to save</doc>
               <type name="utf8" c:type="const gchar*"/>
             </parameter>
           </parameters>
@@ -31758,21 +48989,30 @@ data @tag names can be something like e.g. "comment". Supplying %NULL for the
       </field>
       <field name="rename_preset">
         <callback name="rename_preset">
+          <source-position filename="gst/gstpreset.h" line="68"/>
           <return-value transfer-ownership="none">
-            <doc xml:space="preserve">%TRUE for success, %FALSE if e.g. there is no preset with @old_name</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpreset.c"
+                 line="1131">%TRUE for success, %FALSE if e.g. there is no preset with @old_name</doc>
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
           <parameters>
             <parameter name="preset" transfer-ownership="none">
-              <doc xml:space="preserve">a #GObject that implements #GstPreset</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstpreset.c"
+                   line="1124">a #GObject that implements #GstPreset</doc>
               <type name="Preset" c:type="GstPreset*"/>
             </parameter>
             <parameter name="old_name" transfer-ownership="none">
-              <doc xml:space="preserve">current preset name</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstpreset.c"
+                   line="1125">current preset name</doc>
               <type name="utf8" c:type="const gchar*"/>
             </parameter>
             <parameter name="new_name" transfer-ownership="none">
-              <doc xml:space="preserve">new preset name</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstpreset.c"
+                   line="1126">new preset name</doc>
               <type name="utf8" c:type="const gchar*"/>
             </parameter>
           </parameters>
@@ -31780,17 +49020,24 @@ data @tag names can be something like e.g. "comment". Supplying %NULL for the
       </field>
       <field name="delete_preset">
         <callback name="delete_preset">
+          <source-position filename="gst/gstpreset.h" line="70"/>
           <return-value transfer-ownership="none">
-            <doc xml:space="preserve">%TRUE for success, %FALSE if e.g. there is no preset with that @name</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpreset.c"
+                 line="1152">%TRUE for success, %FALSE if e.g. there is no preset with that @name</doc>
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
           <parameters>
             <parameter name="preset" transfer-ownership="none">
-              <doc xml:space="preserve">a #GObject that implements #GstPreset</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstpreset.c"
+                   line="1147">a #GObject that implements #GstPreset</doc>
               <type name="Preset" c:type="GstPreset*"/>
             </parameter>
             <parameter name="name" transfer-ownership="none">
-              <doc xml:space="preserve">preset name to remove</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstpreset.c"
+                   line="1148">preset name to remove</doc>
               <type name="utf8" c:type="const gchar*"/>
             </parameter>
           </parameters>
@@ -31798,28 +49045,39 @@ data @tag names can be something like e.g. "comment". Supplying %NULL for the
       </field>
       <field name="set_meta">
         <callback name="set_meta">
+          <source-position filename="gst/gstpreset.h" line="72"/>
           <return-value transfer-ownership="none">
-            <doc xml:space="preserve">%TRUE for success, %FALSE if e.g. there is no preset with that @name</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpreset.c"
+                 line="1174">%TRUE for success, %FALSE if e.g. there is no preset with that @name</doc>
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
           <parameters>
             <parameter name="preset" transfer-ownership="none">
-              <doc xml:space="preserve">a #GObject that implements #GstPreset</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstpreset.c"
+                   line="1165">a #GObject that implements #GstPreset</doc>
               <type name="Preset" c:type="GstPreset*"/>
             </parameter>
             <parameter name="name" transfer-ownership="none">
-              <doc xml:space="preserve">preset name</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstpreset.c"
+                   line="1166">preset name</doc>
               <type name="utf8" c:type="const gchar*"/>
             </parameter>
             <parameter name="tag" transfer-ownership="none">
-              <doc xml:space="preserve">meta data item name</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstpreset.c"
+                   line="1167">meta data item name</doc>
               <type name="utf8" c:type="const gchar*"/>
             </parameter>
             <parameter name="value"
                        transfer-ownership="none"
                        nullable="1"
                        allow-none="1">
-              <doc xml:space="preserve">new value</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstpreset.c"
+                   line="1168">new value</doc>
               <type name="utf8" c:type="const gchar*"/>
             </parameter>
           </parameters>
@@ -31827,36 +49085,47 @@ data @tag names can be something like e.g. "comment". Supplying %NULL for the
       </field>
       <field name="get_meta">
         <callback name="get_meta">
+          <source-position filename="gst/gstpreset.h" line="74"/>
           <return-value transfer-ownership="none">
-            <doc xml:space="preserve">%TRUE for success, %FALSE if e.g. there is no preset with that @name
+            <doc xml:space="preserve"
+                 filename="gst/gstpreset.c"
+                 line="1197">%TRUE for success, %FALSE if e.g. there is no preset with that @name
 or no value for the given @tag</doc>
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
           <parameters>
             <parameter name="preset" transfer-ownership="none">
-              <doc xml:space="preserve">a #GObject that implements #GstPreset</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstpreset.c"
+                   line="1189">a #GObject that implements #GstPreset</doc>
               <type name="Preset" c:type="GstPreset*"/>
             </parameter>
             <parameter name="name" transfer-ownership="none">
-              <doc xml:space="preserve">preset name</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstpreset.c"
+                   line="1190">preset name</doc>
               <type name="utf8" c:type="const gchar*"/>
             </parameter>
             <parameter name="tag" transfer-ownership="none">
-              <doc xml:space="preserve">meta data item name</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstpreset.c"
+                   line="1191">meta data item name</doc>
               <type name="utf8" c:type="const gchar*"/>
             </parameter>
             <parameter name="value"
                        direction="out"
                        caller-allocates="0"
                        transfer-ownership="full">
-              <doc xml:space="preserve">value</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gstpreset.c"
+                   line="1192">value</doc>
               <type name="utf8" c:type="gchar**"/>
             </parameter>
           </parameters>
         </callback>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -31865,37 +49134,49 @@ or no value for the given @tag</doc>
                  glib:type-name="GstProgressType"
                  glib:get-type="gst_progress_type_get_type"
                  c:type="GstProgressType">
-      <doc xml:space="preserve">The type of a %GST_MESSAGE_PROGRESS. The progress messages inform the
+      <doc xml:space="preserve"
+           filename="gst/gstmessage.h"
+           line="307">The type of a %GST_MESSAGE_PROGRESS. The progress messages inform the
 application of the status of asynchronous tasks.</doc>
       <member name="start"
               value="0"
               c:identifier="GST_PROGRESS_TYPE_START"
               glib:nick="start">
-        <doc xml:space="preserve">A new task started.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.h"
+             line="309">A new task started.</doc>
       </member>
       <member name="continue"
               value="1"
               c:identifier="GST_PROGRESS_TYPE_CONTINUE"
               glib:nick="continue">
-        <doc xml:space="preserve">A task completed and a new one continues.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.h"
+             line="310">A task completed and a new one continues.</doc>
       </member>
       <member name="complete"
               value="2"
               c:identifier="GST_PROGRESS_TYPE_COMPLETE"
               glib:nick="complete">
-        <doc xml:space="preserve">A task completed.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.h"
+             line="311">A task completed.</doc>
       </member>
       <member name="canceled"
               value="3"
               c:identifier="GST_PROGRESS_TYPE_CANCELED"
               glib:nick="canceled">
-        <doc xml:space="preserve">A task was canceled.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.h"
+             line="312">A task was canceled.</doc>
       </member>
       <member name="error"
               value="4"
               c:identifier="GST_PROGRESS_TYPE_ERROR"
               glib:nick="error">
-        <doc xml:space="preserve">A task caused an error. An error message is also
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.h"
+             line="313">A task caused an error. An error message is also
          posted on the bus.</doc>
       </member>
     </enumeration>
@@ -31905,16 +49186,20 @@ application of the status of asynchronous tasks.</doc>
             glib:type-name="GstPromise"
             glib:get-type="gst_promise_get_type"
             c:symbol-prefix="promise">
-      <doc xml:space="preserve">The #GstPromise object implements the container for values that may
+      <doc xml:space="preserve"
+           filename="gst/gstpromise.c"
+           line="31">The #GstPromise object implements the container for values that may
 be available later. i.e. a Future or a Promise in
-&lt;ulink url="https://en.wikipedia.org/wiki/Futures_and_promises"&gt;https://en.wikipedia.org/wiki/Futures_and_promises&lt;/ulink&gt;
+&lt;https://en.wikipedia.org/wiki/Futures_and_promises&gt;.
 As with all Future/Promise-like functionality, there is the concept of the
 producer of the value and the consumer of the value.
 
 A #GstPromise is created with gst_promise_new() by the consumer and passed
 to the producer to avoid thread safety issues with the change callback.
 A #GstPromise can be replied to with a value (or an error) by the producer
-with gst_promise_reply(). gst_promise_interrupt() is for the consumer to
+with gst_promise_reply(). The exact value returned is defined by the API
+contract of the producer and %NULL may be a valid reply.
+gst_promise_interrupt() is for the consumer to
 indicate to the producer that the value is not needed anymore and producing
 that value can stop.  The @GST_PROMISE_RESULT_EXPIRED state set by a call
 to gst_promise_expire() indicates to the consumer that a value will never
@@ -31956,24 +49241,35 @@ gst_promise_interrupt() or gst_promise_expire() and can be called
 from an arbitrary thread.  #GstPromise using APIs can restrict this to
 a single thread or a subset of threads but that is entirely up to the API
 that uses #GstPromise.</doc>
+      <source-position filename="gst/gstpromise.h" line="74"/>
       <field name="parent" writable="1">
-        <doc xml:space="preserve">parent #GstMiniObject</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpromise.h"
+             line="67">parent #GstMiniObject</doc>
         <type name="MiniObject" c:type="GstMiniObject"/>
       </field>
       <constructor name="new" c:identifier="gst_promise_new" version="1.14">
+        <source-position filename="gst/gstpromise.h" line="77"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new #GstPromise</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstpromise.c"
+               line="368">a new #GstPromise</doc>
           <type name="Promise" c:type="GstPromise*"/>
         </return-value>
       </constructor>
       <constructor name="new_with_change_func"
                    c:identifier="gst_promise_new_with_change_func"
                    version="1.14">
-        <doc xml:space="preserve">@func will be called exactly once when transitioning out of
+        <doc xml:space="preserve"
+             filename="gst/gstpromise.c"
+             line="383">@func will be called exactly once when transitioning out of
 %GST_PROMISE_RESULT_PENDING into any of the other #GstPromiseResult
 states.</doc>
+        <source-position filename="gst/gstpromise.h" line="79"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new #GstPromise</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstpromise.c"
+               line="393">a new #GstPromise</doc>
           <type name="Promise" c:type="GstPromise*"/>
         </return-value>
         <parameters>
@@ -31982,32 +49278,43 @@ states.</doc>
                      scope="notified"
                      closure="1"
                      destroy="2">
-            <doc xml:space="preserve">a #GstPromiseChangeFunc to call</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpromise.c"
+                 line="385">a #GstPromiseChangeFunc to call</doc>
             <type name="PromiseChangeFunc" c:type="GstPromiseChangeFunc"/>
           </parameter>
           <parameter name="user_data"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">argument to call @func with</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpromise.c"
+                 line="386">argument to call @func with</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
           <parameter name="notify" transfer-ownership="none" scope="async">
-            <doc xml:space="preserve">notification function that @user_data is no longer needed</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpromise.c"
+                 line="387">notification function that @user_data is no longer needed</doc>
             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
           </parameter>
         </parameters>
       </constructor>
       <method name="expire" c:identifier="gst_promise_expire" version="1.14">
-        <doc xml:space="preserve">Expire a @promise.  This will wake up any waiters with
+        <doc xml:space="preserve"
+             filename="gst/gstpromise.c"
+             line="285">Expire a @promise.  This will wake up any waiters with
 %GST_PROMISE_RESULT_EXPIRED.  Called by a message loop when the parent
 message is handled and/or destroyed (possibly unanswered).</doc>
+        <source-position filename="gst/gstpromise.h" line="91"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="promise" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstPromise</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpromise.c"
+                 line="287">a #GstPromise</doc>
             <type name="Promise" c:type="GstPromise*"/>
           </instance-parameter>
         </parameters>
@@ -32015,15 +49322,22 @@ message is handled and/or destroyed (possibly unanswered).</doc>
       <method name="get_reply"
               c:identifier="gst_promise_get_reply"
               version="1.14">
-        <doc xml:space="preserve">Retrieve the reply set on @promise.  @promise must be in
+        <doc xml:space="preserve"
+             filename="gst/gstpromise.c"
+             line="216">Retrieve the reply set on @promise.  @promise must be in
 %GST_PROMISE_RESULT_REPLIED and the returned structure is owned by @promise</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The reply set on @promise</doc>
+        <source-position filename="gst/gstpromise.h" line="94"/>
+        <return-value transfer-ownership="none" nullable="1">
+          <doc xml:space="preserve"
+               filename="gst/gstpromise.c"
+               line="223">The reply set on @promise</doc>
           <type name="Structure" c:type="const GstStructure*"/>
         </return-value>
         <parameters>
           <instance-parameter name="promise" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstPromise</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpromise.c"
+                 line="218">a #GstPromise</doc>
             <type name="Promise" c:type="GstPromise*"/>
           </instance-parameter>
         </parameters>
@@ -32031,26 +49345,34 @@ message is handled and/or destroyed (possibly unanswered).</doc>
       <method name="interrupt"
               c:identifier="gst_promise_interrupt"
               version="1.14">
-        <doc xml:space="preserve">Interrupt waiting for a @promise.  This will wake up any waiters with
+        <doc xml:space="preserve"
+             filename="gst/gstpromise.c"
+             line="244">Interrupt waiting for a @promise.  This will wake up any waiters with
 %GST_PROMISE_RESULT_INTERRUPTED.  Called when the consumer does not want
 the value produced anymore.</doc>
+        <source-position filename="gst/gstpromise.h" line="89"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="promise" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstPromise</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpromise.c"
+                 line="246">a #GstPromise</doc>
             <type name="Promise" c:type="GstPromise*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="reply" c:identifier="gst_promise_reply" version="1.14">
-        <doc xml:space="preserve">Set a reply on @promise.  This will wake up any waiters with
+        <doc xml:space="preserve"
+             filename="gst/gstpromise.c"
+             line="149">Set a reply on @promise.  This will wake up any waiters with
 %GST_PROMISE_RESULT_REPLIED.  Called by the producer of the value to
 indicate success (or failure).
 
 If @promise has already been interrupted by the consumer, then this reply
 is not visible to the consumer.</doc>
+        <source-position filename="gst/gstpromise.h" line="86"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
@@ -32059,26 +49381,40 @@ is not visible to the consumer.</doc>
                               transfer-ownership="none"
                               nullable="1"
                               allow-none="1">
-            <doc xml:space="preserve">a #GstPromise</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpromise.c"
+                 line="151">a #GstPromise</doc>
             <type name="Promise" c:type="GstPromise*"/>
           </instance-parameter>
-          <parameter name="s" transfer-ownership="full">
-            <doc xml:space="preserve">a #GstStructure with the the reply contents</doc>
+          <parameter name="s"
+                     transfer-ownership="full"
+                     nullable="1"
+                     allow-none="1">
+            <doc xml:space="preserve"
+                 filename="gst/gstpromise.c"
+                 line="152">a #GstStructure with the the reply contents</doc>
             <type name="Structure" c:type="GstStructure*"/>
           </parameter>
         </parameters>
       </method>
       <method name="wait" c:identifier="gst_promise_wait" version="1.14">
-        <doc xml:space="preserve">Wait for @promise to move out of the %GST_PROMISE_RESULT_PENDING state.
+        <doc xml:space="preserve"
+             filename="gst/gstpromise.c"
+             line="115">Wait for @promise to move out of the %GST_PROMISE_RESULT_PENDING state.
 If @promise is not in %GST_PROMISE_RESULT_PENDING then it will return
 immediately with the current result.</doc>
+        <source-position filename="gst/gstpromise.h" line="84"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the result of the promise</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstpromise.c"
+               line="123">the result of the promise</doc>
           <type name="PromiseResult" c:type="GstPromiseResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="promise" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstPromise</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpromise.c"
+                 line="117">a #GstPromise</doc>
             <type name="Promise" c:type="GstPromise*"/>
           </instance-parameter>
         </parameters>
@@ -32087,12 +49423,15 @@ immediately with the current result.</doc>
     <callback name="PromiseChangeFunc"
               c:type="GstPromiseChangeFunc"
               version="1.14">
+      <source-position filename="gst/gstpromise.h" line="63"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="promise" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstPromise</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstpromise.h"
+               line="58">a #GstPromise</doc>
           <type name="Promise" c:type="GstPromise*"/>
         </parameter>
         <parameter name="user_data"
@@ -32100,7 +49439,9 @@ immediately with the current result.</doc>
                    nullable="1"
                    allow-none="1"
                    closure="1">
-          <doc xml:space="preserve">user data</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstpromise.h"
+               line="59">user data</doc>
           <type name="gpointer" c:type="gpointer"/>
         </parameter>
       </parameters>
@@ -32110,47 +49451,65 @@ immediately with the current result.</doc>
                  glib:type-name="GstPromiseResult"
                  glib:get-type="gst_promise_result_get_type"
                  c:type="GstPromiseResult">
-      <doc xml:space="preserve">The result of a #GstPromise</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstpromise.h"
+           line="34">The result of a #GstPromise</doc>
       <member name="pending"
               value="0"
               c:identifier="GST_PROMISE_RESULT_PENDING"
               glib:nick="pending">
-        <doc xml:space="preserve">Initial state. Waiting for transition to any
+        <doc xml:space="preserve"
+             filename="gst/gstpromise.h"
+             line="36">Initial state. Waiting for transition to any
        other state.</doc>
       </member>
       <member name="interrupted"
               value="1"
               c:identifier="GST_PROMISE_RESULT_INTERRUPTED"
               glib:nick="interrupted">
-        <doc xml:space="preserve">Interrupted by the consumer as it doesn't
+        <doc xml:space="preserve"
+             filename="gst/gstpromise.h"
+             line="38">Interrupted by the consumer as it doesn't
        want the value anymore.</doc>
       </member>
       <member name="replied"
               value="2"
               c:identifier="GST_PROMISE_RESULT_REPLIED"
               glib:nick="replied">
-        <doc xml:space="preserve">A producer marked a reply</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpromise.h"
+             line="40">A producer marked a reply</doc>
       </member>
       <member name="expired"
               value="3"
               c:identifier="GST_PROMISE_RESULT_EXPIRED"
               glib:nick="expired">
-        <doc xml:space="preserve">The promise expired (the carrying object
+        <doc xml:space="preserve"
+             filename="gst/gstpromise.h"
+             line="41">The promise expired (the carrying object
        lost all refs) and the promise will never be fulfilled.</doc>
       </member>
     </enumeration>
     <record name="ProtectionMeta" c:type="GstProtectionMeta" version="1.6">
-      <doc xml:space="preserve">Metadata type that holds information about a sample from a protection-protected
+      <doc xml:space="preserve"
+           filename="gst/gstprotection.h"
+           line="56">Metadata type that holds information about a sample from a protection-protected
 track, including the information needed to decrypt it (if it is encrypted).</doc>
+      <source-position filename="gst/gstprotection.h" line="71"/>
       <field name="meta" writable="1">
-        <doc xml:space="preserve">the parent #GstMeta.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstprotection.h"
+             line="58">the parent #GstMeta.</doc>
         <type name="Meta" c:type="GstMeta"/>
       </field>
       <field name="info" writable="1">
-        <doc xml:space="preserve">the cryptographic information needed to decrypt the sample.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstprotection.h"
+             line="59">the cryptographic information needed to decrypt the sample.</doc>
         <type name="Structure" c:type="GstStructure*"/>
       </field>
       <function name="get_info" c:identifier="gst_protection_meta_get_info">
+        <source-position filename="gst/gstprotection.h" line="87"/>
         <return-value transfer-ownership="none">
           <type name="MetaInfo" c:type="const GstMetaInfo*"/>
         </return-value>
@@ -32163,27 +49522,39 @@ track, including the information needed to decrypt it (if it is encrypted).</doc
            glib:type-name="GstProxyPad"
            glib:get-type="gst_proxy_pad_get_type"
            glib:type-struct="ProxyPadClass">
+      <source-position filename="gst/gstghostpad.h" line="58"/>
       <function name="chain_default"
                 c:identifier="gst_proxy_pad_chain_default">
-        <doc xml:space="preserve">Invoke the default chain function of the proxy pad.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstFlowReturn from the pad.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstghostpad.c"
+             line="105">Invoke the default chain function of the proxy pad.</doc>
+        <source-position filename="gst/gstghostpad.h" line="71"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstghostpad.c"
+               line="114">a #GstFlowReturn from the pad.</doc>
           <type name="FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
         <parameters>
           <parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">a sink #GstPad, returns GST_FLOW_ERROR if not.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstghostpad.c"
+                 line="107">a sink #GstPad, returns GST_FLOW_ERROR if not.</doc>
             <type name="Pad" c:type="GstPad*"/>
           </parameter>
           <parameter name="parent"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">the parent of @pad or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstghostpad.c"
+                 line="108">the parent of @pad or %NULL</doc>
             <type name="Object" c:type="GstObject*"/>
           </parameter>
           <parameter name="buffer" transfer-ownership="full">
-            <doc xml:space="preserve">the #GstBuffer to send, return GST_FLOW_ERROR
+            <doc xml:space="preserve"
+                 filename="gst/gstghostpad.c"
+                 line="109">the #GstBuffer to send, return GST_FLOW_ERROR
     if not.</doc>
             <type name="Buffer" c:type="GstBuffer*"/>
           </parameter>
@@ -32191,25 +49562,36 @@ track, including the information needed to decrypt it (if it is encrypted).</doc
       </function>
       <function name="chain_list_default"
                 c:identifier="gst_proxy_pad_chain_list_default">
-        <doc xml:space="preserve">Invoke the default chain list function of the proxy pad.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstFlowReturn from the pad.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstghostpad.c"
+             line="133">Invoke the default chain list function of the proxy pad.</doc>
+        <source-position filename="gst/gstghostpad.h" line="74"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstghostpad.c"
+               line="142">a #GstFlowReturn from the pad.</doc>
           <type name="FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
         <parameters>
           <parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">a sink #GstPad, returns GST_FLOW_ERROR if not.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstghostpad.c"
+                 line="135">a sink #GstPad, returns GST_FLOW_ERROR if not.</doc>
             <type name="Pad" c:type="GstPad*"/>
           </parameter>
           <parameter name="parent"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">the parent of @pad or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstghostpad.c"
+                 line="136">the parent of @pad or %NULL</doc>
             <type name="Object" c:type="GstObject*"/>
           </parameter>
           <parameter name="list" transfer-ownership="full">
-            <doc xml:space="preserve">the #GstBufferList to send, return GST_FLOW_ERROR
+            <doc xml:space="preserve"
+                 filename="gst/gstghostpad.c"
+                 line="137">the #GstBufferList to send, return GST_FLOW_ERROR
     if not.</doc>
             <type name="BufferList" c:type="GstBufferList*"/>
           </parameter>
@@ -32217,33 +49599,48 @@ track, including the information needed to decrypt it (if it is encrypted).</doc
       </function>
       <function name="getrange_default"
                 c:identifier="gst_proxy_pad_getrange_default">
-        <doc xml:space="preserve">Invoke the default getrange function of the proxy pad.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstFlowReturn from the pad.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstghostpad.c"
+             line="161">Invoke the default getrange function of the proxy pad.</doc>
+        <source-position filename="gst/gstghostpad.h" line="77"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstghostpad.c"
+               line="172">a #GstFlowReturn from the pad.</doc>
           <type name="FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
         <parameters>
           <parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">a src #GstPad, returns #GST_FLOW_ERROR if not.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstghostpad.c"
+                 line="163">a src #GstPad, returns #GST_FLOW_ERROR if not.</doc>
             <type name="Pad" c:type="GstPad*"/>
           </parameter>
           <parameter name="parent" transfer-ownership="none">
-            <doc xml:space="preserve">the parent of @pad</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstghostpad.c"
+                 line="164">the parent of @pad</doc>
             <type name="Object" c:type="GstObject*"/>
           </parameter>
           <parameter name="offset" transfer-ownership="none">
-            <doc xml:space="preserve">The start offset of the buffer</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstghostpad.c"
+                 line="165">The start offset of the buffer</doc>
             <type name="guint64" c:type="guint64"/>
           </parameter>
           <parameter name="size" transfer-ownership="none">
-            <doc xml:space="preserve">The length of the buffer</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstghostpad.c"
+                 line="166">The length of the buffer</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="buffer"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">a pointer to hold the #GstBuffer,
+            <doc xml:space="preserve"
+                 filename="gst/gstghostpad.c"
+                 line="167">a pointer to hold the #GstBuffer,
     returns #GST_FLOW_ERROR if %NULL.</doc>
             <type name="Buffer" c:type="GstBuffer**"/>
           </parameter>
@@ -32251,39 +49648,55 @@ track, including the information needed to decrypt it (if it is encrypted).</doc
       </function>
       <function name="iterate_internal_links_default"
                 c:identifier="gst_proxy_pad_iterate_internal_links_default">
-        <doc xml:space="preserve">Invoke the default iterate internal links function of the proxy pad.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstghostpad.c"
+             line="76">Invoke the default iterate internal links function of the proxy pad.</doc>
+        <source-position filename="gst/gstghostpad.h" line="68"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">a #GstIterator of #GstPad, or %NULL if @pad
+          <doc xml:space="preserve"
+               filename="gst/gstghostpad.c"
+               line="83">a #GstIterator of #GstPad, or %NULL if @pad
 has no parent. Unref each returned pad with gst_object_unref().</doc>
           <type name="Iterator" c:type="GstIterator*"/>
         </return-value>
         <parameters>
           <parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstPad to get the internal links of.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstghostpad.c"
+                 line="78">the #GstPad to get the internal links of.</doc>
             <type name="Pad" c:type="GstPad*"/>
           </parameter>
           <parameter name="parent"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">the parent of @pad or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstghostpad.c"
+                 line="79">the parent of @pad or %NULL</doc>
             <type name="Object" c:type="GstObject*"/>
           </parameter>
         </parameters>
       </function>
       <method name="get_internal" c:identifier="gst_proxy_pad_get_internal">
-        <doc xml:space="preserve">Get the internal pad of @pad. Unref target pad after usage.
+        <doc xml:space="preserve"
+             filename="gst/gstghostpad.c"
+             line="203">Get the internal pad of @pad. Unref target pad after usage.
 
 The internal pad of a #GstGhostPad is the internally used
 pad of opposite direction, which is used to link to the target.</doc>
+        <source-position filename="gst/gstghostpad.h" line="64"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">the target #GstProxyPad, can
+          <doc xml:space="preserve"
+               filename="gst/gstghostpad.c"
+               line="212">the target #GstProxyPad, can
 be %NULL.  Unref target pad after usage.</doc>
           <type name="ProxyPad" c:type="GstProxyPad*"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstProxyPad</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstghostpad.c"
+                 line="205">the #GstProxyPad</doc>
             <type name="ProxyPad" c:type="GstProxyPad*"/>
           </instance-parameter>
         </parameters>
@@ -32298,28 +49711,34 @@ be %NULL.  Unref target pad after usage.</doc>
     <record name="ProxyPadClass"
             c:type="GstProxyPadClass"
             glib:is-gtype-struct-for="ProxyPad">
+      <source-position filename="gst/gstghostpad.h" line="58"/>
       <field name="parent_class">
         <type name="PadClass" c:type="GstPadClass"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="1">
+        <array zero-terminated="0" fixed-size="1">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
     </record>
     <record name="ProxyPadPrivate" c:type="GstProxyPadPrivate" disguised="1">
+      <source-position filename="gst/gstghostpad.h" line="41"/>
     </record>
     <enumeration name="QOSType"
                  glib:type-name="GstQOSType"
                  glib:get-type="gst_qos_type_get_type"
                  c:type="GstQOSType">
-      <doc xml:space="preserve">The different types of QoS events that can be given to the
+      <doc xml:space="preserve"
+           filename="gst/gstevent.h"
+           line="386">The different types of QoS events that can be given to the
 gst_event_new_qos() method.</doc>
       <member name="overflow"
               value="0"
               c:identifier="GST_QOS_TYPE_OVERFLOW"
               glib:nick="overflow">
-        <doc xml:space="preserve">The QoS event type that is produced when upstream
+        <doc xml:space="preserve"
+             filename="gst/gstevent.h"
+             line="388">The QoS event type that is produced when upstream
    elements are producing data too quickly and the element can't keep up
    processing the data. Upstream should reduce their production rate. This
    type is also used when buffers arrive early or in time.</doc>
@@ -32328,7 +49747,9 @@ gst_event_new_qos() method.</doc>
               value="1"
               c:identifier="GST_QOS_TYPE_UNDERFLOW"
               glib:nick="underflow">
-        <doc xml:space="preserve">The QoS event type that is produced when upstream
+        <doc xml:space="preserve"
+             filename="gst/gstevent.h"
+             line="392">The QoS event type that is produced when upstream
    elements are producing data too slowly and need to speed up their
    production rate.</doc>
       </member>
@@ -32336,23 +49757,143 @@ gst_event_new_qos() method.</doc>
               value="2"
               c:identifier="GST_QOS_TYPE_THROTTLE"
               glib:nick="throttle">
-        <doc xml:space="preserve">The QoS event type that is produced when the
+        <doc xml:space="preserve"
+             filename="gst/gstevent.h"
+             line="395">The QoS event type that is produced when the
    application enabled throttling to limit the data rate.</doc>
       </member>
     </enumeration>
+    <function-macro name="QUERY" c:identifier="GST_QUERY" introspectable="0">
+      <source-position filename="gst/gstquery.h" line="136"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="QUERY_CAST"
+                    c:identifier="GST_QUERY_CAST"
+                    introspectable="0">
+      <source-position filename="gst/gstquery.h" line="135"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="QUERY_IS_DOWNSTREAM"
+                    c:identifier="GST_QUERY_IS_DOWNSTREAM"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstquery.h"
+           line="162">Check if an query can travel downstream.</doc>
+      <source-position filename="gst/gstquery.h" line="167"/>
+      <parameters>
+        <parameter name="ev">
+          <doc xml:space="preserve"
+               filename="gst/gstquery.h"
+               line="164">the query to query</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="QUERY_IS_SERIALIZED"
+                    c:identifier="GST_QUERY_IS_SERIALIZED"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstquery.h"
+           line="169">Check if an query is serialized with the data stream.</doc>
+      <source-position filename="gst/gstquery.h" line="174"/>
+      <parameters>
+        <parameter name="ev">
+          <doc xml:space="preserve"
+               filename="gst/gstquery.h"
+               line="171">the query to query</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="QUERY_IS_UPSTREAM"
+                    c:identifier="GST_QUERY_IS_UPSTREAM"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstquery.h"
+           line="155">Check if an query can travel upstream.</doc>
+      <source-position filename="gst/gstquery.h" line="160"/>
+      <parameters>
+        <parameter name="ev">
+          <doc xml:space="preserve"
+               filename="gst/gstquery.h"
+               line="157">the query to query</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="QUERY_MAKE_TYPE"
+                    c:identifier="GST_QUERY_MAKE_TYPE"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstquery.h"
+           line="66">when making custom query types, use this macro with the num and
+the given flags</doc>
+      <source-position filename="gst/gstquery.h" line="73"/>
+      <parameters>
+        <parameter name="num">
+          <doc xml:space="preserve"
+               filename="gst/gstquery.h"
+               line="68">the query number to create</doc>
+        </parameter>
+        <parameter name="flags">
+          <doc xml:space="preserve"
+               filename="gst/gstquery.h"
+               line="69">the query flags</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
     <constant name="QUERY_NUM_SHIFT" value="8" c:type="GST_QUERY_NUM_SHIFT">
+      <source-position filename="gst/gstquery.h" line="63"/>
       <type name="gint" c:type="gint"/>
     </constant>
+    <function-macro name="QUERY_TYPE"
+                    c:identifier="GST_QUERY_TYPE"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstquery.h"
+           line="139">Get the #GstQueryType of the query.</doc>
+      <source-position filename="gst/gstquery.h" line="144"/>
+      <parameters>
+        <parameter name="query">
+          <doc xml:space="preserve"
+               filename="gst/gstquery.h"
+               line="141">the query to query</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
     <constant name="QUERY_TYPE_BOTH" value="3" c:type="GST_QUERY_TYPE_BOTH">
-      <doc xml:space="preserve">The same thing as #GST_QUERY_TYPE_UPSTREAM | #GST_QUERY_TYPE_DOWNSTREAM.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstquery.h"
+           line="56">The same thing as #GST_QUERY_TYPE_UPSTREAM | #GST_QUERY_TYPE_DOWNSTREAM.</doc>
+      <source-position filename="gst/gstquery.h" line="61"/>
       <type name="QueryTypeFlags" c:type="GstQueryTypeFlags"/>
     </constant>
+    <function-macro name="QUERY_TYPE_NAME"
+                    c:identifier="GST_QUERY_TYPE_NAME"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstquery.h"
+           line="147">Get a constant string representation of the #GstQueryType of the query.</doc>
+      <source-position filename="gst/gstquery.h" line="152"/>
+      <parameters>
+        <parameter name="query">
+          <doc xml:space="preserve"
+               filename="gst/gstquery.h"
+               line="149">the query to query</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
     <record name="Query"
             c:type="GstQuery"
             glib:type-name="GstQuery"
             glib:get-type="gst_query_get_type"
             c:symbol-prefix="query">
-      <doc xml:space="preserve">Queries can be performed on pads (gst_pad_query()) and elements
+      <doc xml:space="preserve"
+           filename="gst/gstquery.c"
+           line="24">Queries can be performed on pads (gst_pad_query()) and elements
 (gst_element_query()). Please note that some queries might need a running
 pipeline to work.
 
@@ -32375,46 +49916,67 @@ The following example shows how to query the duration of a pipeline:
   }
   gst_query_unref (query);
 ]|</doc>
+      <source-position filename="gst/gstquery.h" line="191"/>
       <field name="mini_object" writable="1">
-        <doc xml:space="preserve">The parent #GstMiniObject type</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstquery.h"
+             line="180">The parent #GstMiniObject type</doc>
         <type name="MiniObject" c:type="GstMiniObject"/>
       </field>
       <field name="type" writable="1">
-        <doc xml:space="preserve">the #GstQueryType</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstquery.h"
+             line="181">the #GstQueryType</doc>
         <type name="QueryType" c:type="GstQueryType"/>
       </field>
       <constructor name="new_accept_caps"
                    c:identifier="gst_query_new_accept_caps">
-        <doc xml:space="preserve">Constructs a new query object for querying if @caps are accepted.
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="2326">Constructs a new query object for querying if @caps are accepted.
 
 Free-function: gst_query_unref()</doc>
+        <source-position filename="gst/gstquery.h" line="650"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new #GstQuery</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstquery.c"
+               line="2334">a new #GstQuery</doc>
           <type name="Query" c:type="GstQuery*"/>
         </return-value>
         <parameters>
           <parameter name="caps" transfer-ownership="none">
-            <doc xml:space="preserve">a fixed #GstCaps</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="2328">a fixed #GstCaps</doc>
             <type name="Caps" c:type="GstCaps*"/>
           </parameter>
         </parameters>
       </constructor>
       <constructor name="new_allocation"
                    c:identifier="gst_query_new_allocation">
-        <doc xml:space="preserve">Constructs a new query object for querying the allocation properties.
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="1533">Constructs a new query object for querying the allocation properties.
 
 Free-function: gst_query_unref()</doc>
+        <source-position filename="gst/gstquery.h" line="534"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new #GstQuery</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstquery.c"
+               line="1542">a new #GstQuery</doc>
           <type name="Query" c:type="GstQuery*"/>
         </return-value>
         <parameters>
           <parameter name="caps" transfer-ownership="none">
-            <doc xml:space="preserve">the negotiated caps</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1535">the negotiated caps</doc>
             <type name="Caps" c:type="GstCaps*"/>
           </parameter>
           <parameter name="need_pool" transfer-ownership="none">
-            <doc xml:space="preserve">return a pool</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1536">return a pool</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
@@ -32422,32 +49984,46 @@ Free-function: gst_query_unref()</doc>
       <constructor name="new_bitrate"
                    c:identifier="gst_query_new_bitrate"
                    version="1.16">
-        <doc xml:space="preserve">Constructs a new query object for querying the bitrate.
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="2659">Constructs a new query object for querying the bitrate.
 
 Free-function: gst_query_unref()</doc>
+        <source-position filename="gst/gstquery.h" line="697"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new #GstQuery</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstquery.c"
+               line="2666">a new #GstQuery</doc>
           <type name="Query" c:type="GstQuery*"/>
         </return-value>
       </constructor>
       <constructor name="new_buffering" c:identifier="gst_query_new_buffering">
-        <doc xml:space="preserve">Constructs a new query object for querying the buffering status of
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="1031">Constructs a new query object for querying the buffering status of
 a stream.
 
 Free-function: gst_query_unref()</doc>
+        <source-position filename="gst/gstquery.h" line="468"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new #GstQuery</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstquery.c"
+               line="1040">a new #GstQuery</doc>
           <type name="Query" c:type="GstQuery*"/>
         </return-value>
         <parameters>
           <parameter name="format" transfer-ownership="none">
-            <doc xml:space="preserve">the default #GstFormat for the new query</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1033">the default #GstFormat for the new query</doc>
             <type name="Format" c:type="GstFormat"/>
           </parameter>
         </parameters>
       </constructor>
       <constructor name="new_caps" c:identifier="gst_query_new_caps">
-        <doc xml:space="preserve">Constructs a new query object for querying the caps.
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="2412">Constructs a new query object for querying the caps.
 
 The CAPS query should return the allowable caps for a pad in the context
 of the element's state, its link to other elements, and the devices or files
@@ -32467,13 +50043,18 @@ The @filter is used to restrict the result caps, only the caps matching
 greatly reduce the amount of processing an element needs to do.
 
 Free-function: gst_query_unref()</doc>
+        <source-position filename="gst/gstquery.h" line="664"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new #GstQuery</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstquery.c"
+               line="2437">a new #GstQuery</doc>
           <type name="Query" c:type="GstQuery*"/>
         </return-value>
         <parameters>
           <parameter name="filter" transfer-ownership="none">
-            <doc xml:space="preserve">a filter</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="2414">a filter</doc>
             <type name="Caps" c:type="GstCaps*"/>
           </parameter>
         </parameters>
@@ -32481,326 +50062,486 @@ Free-function: gst_query_unref()</doc>
       <constructor name="new_context"
                    c:identifier="gst_query_new_context"
                    version="1.2">
-        <doc xml:space="preserve">Constructs a new query object for querying the pipeline-local context.
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="2549">Constructs a new query object for querying the pipeline-local context.
 
 Free-function: gst_query_unref()</doc>
+        <source-position filename="gst/gstquery.h" line="683"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new #GstQuery</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstquery.c"
+               line="2557">a new #GstQuery</doc>
           <type name="Query" c:type="GstQuery*"/>
         </return-value>
         <parameters>
           <parameter name="context_type" transfer-ownership="none">
-            <doc xml:space="preserve">Context type to query</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="2551">Context type to query</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </constructor>
       <constructor name="new_convert" c:identifier="gst_query_new_convert">
-        <doc xml:space="preserve">Constructs a new convert query object. Use gst_query_unref()
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="460">Constructs a new convert query object. Use gst_query_unref()
 when done with it. A convert query is used to ask for a conversion between
 one format and another.
 
 Free-function: gst_query_unref()</doc>
+        <source-position filename="gst/gstquery.h" line="410"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a #GstQuery</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstquery.c"
+               line="472">a #GstQuery</doc>
           <type name="Query" c:type="GstQuery*"/>
         </return-value>
         <parameters>
           <parameter name="src_format" transfer-ownership="none">
-            <doc xml:space="preserve">the source #GstFormat for the new query</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="462">the source #GstFormat for the new query</doc>
             <type name="Format" c:type="GstFormat"/>
           </parameter>
           <parameter name="value" transfer-ownership="none">
-            <doc xml:space="preserve">the value to convert</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="463">the value to convert</doc>
             <type name="gint64" c:type="gint64"/>
           </parameter>
           <parameter name="dest_format" transfer-ownership="none">
-            <doc xml:space="preserve">the target #GstFormat</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="464">the target #GstFormat</doc>
             <type name="Format" c:type="GstFormat"/>
           </parameter>
         </parameters>
       </constructor>
       <constructor name="new_custom" c:identifier="gst_query_new_custom">
-        <doc xml:space="preserve">Constructs a new custom query object. Use gst_query_unref()
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="660">Constructs a new custom query object. Use gst_query_unref()
 when done with it.
 
 Free-function: gst_query_unref()</doc>
+        <source-position filename="gst/gstquery.h" line="363"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">a new #GstQuery</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstquery.c"
+               line="670">a new #GstQuery</doc>
           <type name="Query" c:type="GstQuery*"/>
         </return-value>
         <parameters>
           <parameter name="type" transfer-ownership="none">
-            <doc xml:space="preserve">the query type</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="662">the query type</doc>
             <type name="QueryType" c:type="GstQueryType"/>
           </parameter>
           <parameter name="structure"
                      transfer-ownership="full"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">a structure for the query</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="663">a structure for the query</doc>
             <type name="Structure" c:type="GstStructure*"/>
           </parameter>
         </parameters>
       </constructor>
       <constructor name="new_drain" c:identifier="gst_query_new_drain">
-        <doc xml:space="preserve">Constructs a new query object for querying the drain state.
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="2528">Constructs a new query object for querying the drain state.
 
 Free-function: gst_query_unref()</doc>
+        <source-position filename="gst/gstquery.h" line="678"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new #GstQuery</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstquery.c"
+               line="2535">a new #GstQuery</doc>
           <type name="Query" c:type="GstQuery*"/>
         </return-value>
       </constructor>
       <constructor name="new_duration" c:identifier="gst_query_new_duration">
-        <doc xml:space="preserve">Constructs a new stream duration query object to query in the given format.
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="300">Constructs a new stream duration query object to query in the given format.
 Use gst_query_unref() when done with it. A duration query will give the
 total length of the stream.
 
 Free-function: gst_query_unref()</doc>
+        <source-position filename="gst/gstquery.h" line="386"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new #GstQuery</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstquery.c"
+               line="310">a new #GstQuery</doc>
           <type name="Query" c:type="GstQuery*"/>
         </return-value>
         <parameters>
           <parameter name="format" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstFormat for this duration query</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="302">the #GstFormat for this duration query</doc>
             <type name="Format" c:type="GstFormat"/>
           </parameter>
         </parameters>
       </constructor>
       <constructor name="new_formats" c:identifier="gst_query_new_formats">
-        <doc xml:space="preserve">Constructs a new query object for querying formats of
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="872">Constructs a new query object for querying formats of
 the stream.
 
 Free-function: gst_query_unref()</doc>
+        <source-position filename="gst/gstquery.h" line="451"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new #GstQuery</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstquery.c"
+               line="880">a new #GstQuery</doc>
           <type name="Query" c:type="GstQuery*"/>
         </return-value>
       </constructor>
       <constructor name="new_latency" c:identifier="gst_query_new_latency">
-        <doc xml:space="preserve">Constructs a new latency query object.
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="377">Constructs a new latency query object.
 Use gst_query_unref() when done with it. A latency query is usually performed
 by sinks to compensate for additional latency introduced by elements in the
 pipeline.
 
 Free-function: gst_query_unref()</doc>
+        <source-position filename="gst/gstquery.h" line="397"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a #GstQuery</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstquery.c"
+               line="387">a #GstQuery</doc>
           <type name="Query" c:type="GstQuery*"/>
         </return-value>
       </constructor>
       <constructor name="new_position" c:identifier="gst_query_new_position">
-        <doc xml:space="preserve">Constructs a new query stream position query object. Use gst_query_unref()
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="221">Constructs a new query stream position query object. Use gst_query_unref()
 when done with it. A position query is used to query the current position
 of playback in the streams, in some format.
 
 Free-function: gst_query_unref()</doc>
+        <source-position filename="gst/gstquery.h" line="375"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new #GstQuery</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstquery.c"
+               line="231">a new #GstQuery</doc>
           <type name="Query" c:type="GstQuery*"/>
         </return-value>
         <parameters>
           <parameter name="format" transfer-ownership="none">
-            <doc xml:space="preserve">the default #GstFormat for the new query</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="223">the default #GstFormat for the new query</doc>
             <type name="Format" c:type="GstFormat"/>
           </parameter>
         </parameters>
       </constructor>
       <constructor name="new_scheduling"
                    c:identifier="gst_query_new_scheduling">
-        <doc xml:space="preserve">Constructs a new query object for querying the scheduling properties.
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="2112">Constructs a new query object for querying the scheduling properties.
 
 Free-function: gst_query_unref()</doc>
+        <source-position filename="gst/gstquery.h" line="621"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new #GstQuery</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstquery.c"
+               line="2119">a new #GstQuery</doc>
           <type name="Query" c:type="GstQuery*"/>
         </return-value>
       </constructor>
       <constructor name="new_seeking" c:identifier="gst_query_new_seeking">
-        <doc xml:space="preserve">Constructs a new query object for querying seeking properties of
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="755">Constructs a new query object for querying seeking properties of
 the stream.
 
 Free-function: gst_query_unref()</doc>
+        <source-position filename="gst/gstquery.h" line="435"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new #GstQuery</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstquery.c"
+               line="764">a new #GstQuery</doc>
           <type name="Query" c:type="GstQuery*"/>
         </return-value>
         <parameters>
           <parameter name="format" transfer-ownership="none">
-            <doc xml:space="preserve">the default #GstFormat for the new query</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="757">the default #GstFormat for the new query</doc>
             <type name="Format" c:type="GstFormat"/>
           </parameter>
         </parameters>
       </constructor>
       <constructor name="new_segment" c:identifier="gst_query_new_segment">
-        <doc xml:space="preserve">Constructs a new segment query object. Use gst_query_unref()
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="557">Constructs a new segment query object. Use gst_query_unref()
 when done with it. A segment query is used to discover information about the
 currently configured segment for playback.
 
 Free-function: gst_query_unref()</doc>
+        <source-position filename="gst/gstquery.h" line="422"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new #GstQuery</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstquery.c"
+               line="567">a new #GstQuery</doc>
           <type name="Query" c:type="GstQuery*"/>
         </return-value>
         <parameters>
           <parameter name="format" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstFormat for the new query</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="559">the #GstFormat for the new query</doc>
             <type name="Format" c:type="GstFormat"/>
           </parameter>
         </parameters>
       </constructor>
       <constructor name="new_uri" c:identifier="gst_query_new_uri">
-        <doc xml:space="preserve">Constructs a new query URI query object. Use gst_query_unref()
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="1363">Constructs a new query URI query object. Use gst_query_unref()
 when done with it. An URI query is used to query the current URI
 that is used by the source or sink.
 
 Free-function: gst_query_unref()</doc>
+        <source-position filename="gst/gstquery.h" line="511"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new #GstQuery</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstquery.c"
+               line="1372">a new #GstQuery</doc>
           <type name="Query" c:type="GstQuery*"/>
         </return-value>
       </constructor>
       <method name="add_allocation_meta"
               c:identifier="gst_query_add_allocation_meta">
-        <doc xml:space="preserve">Add @api with @params as one of the supported metadata API to @query.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="1781">Add @api with @params as one of the supported metadata API to @query.</doc>
+        <source-position filename="gst/gstquery.h" line="589"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="query" transfer-ownership="none">
-            <doc xml:space="preserve">a GST_QUERY_ALLOCATION type query #GstQuery</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1783">a GST_QUERY_ALLOCATION type query #GstQuery</doc>
             <type name="Query" c:type="GstQuery*"/>
           </instance-parameter>
           <parameter name="api" transfer-ownership="none">
-            <doc xml:space="preserve">the metadata API</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1784">the metadata API</doc>
             <type name="GType" c:type="GType"/>
           </parameter>
           <parameter name="params"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">API specific parameters</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1785">API specific parameters</doc>
             <type name="Structure" c:type="const GstStructure*"/>
           </parameter>
         </parameters>
       </method>
       <method name="add_allocation_param"
               c:identifier="gst_query_add_allocation_param">
-        <doc xml:space="preserve">Add @allocator and its @params as a supported memory allocator.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="1950">Add @allocator and its @params as a supported memory allocator.</doc>
+        <source-position filename="gst/gstquery.h" line="567"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="query" transfer-ownership="none">
-            <doc xml:space="preserve">a GST_QUERY_ALLOCATION type query #GstQuery</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1952">a GST_QUERY_ALLOCATION type query #GstQuery</doc>
             <type name="Query" c:type="GstQuery*"/>
           </instance-parameter>
           <parameter name="allocator"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">the memory allocator</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1953">the memory allocator</doc>
             <type name="Allocator" c:type="GstAllocator*"/>
           </parameter>
           <parameter name="params"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">a #GstAllocationParams</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1954">a #GstAllocationParams</doc>
             <type name="AllocationParams" c:type="const GstAllocationParams*"/>
           </parameter>
         </parameters>
       </method>
       <method name="add_allocation_pool"
               c:identifier="gst_query_add_allocation_pool">
-        <doc xml:space="preserve">Set the pool parameters in @query.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="1604">Set the pool parameters in @query.</doc>
+        <source-position filename="gst/gstquery.h" line="542"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="query" transfer-ownership="none">
-            <doc xml:space="preserve">A valid #GstQuery of type GST_QUERY_ALLOCATION.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1606">A valid #GstQuery of type GST_QUERY_ALLOCATION.</doc>
             <type name="Query" c:type="GstQuery*"/>
           </instance-parameter>
           <parameter name="pool"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">the #GstBufferPool</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1607">the #GstBufferPool</doc>
             <type name="BufferPool" c:type="GstBufferPool*"/>
           </parameter>
           <parameter name="size" transfer-ownership="none">
-            <doc xml:space="preserve">the buffer size</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1608">the buffer size</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="min_buffers" transfer-ownership="none">
-            <doc xml:space="preserve">the min buffers</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1609">the min buffers</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="max_buffers" transfer-ownership="none">
-            <doc xml:space="preserve">the max buffers</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1610">the max buffers</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="add_buffering_range"
               c:identifier="gst_query_add_buffering_range">
-        <doc xml:space="preserve">Set the buffering-ranges array field in @query. The current last
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="1255">Set the buffering-ranges array field in @query. The current last
 start position of the array should be inferior to @start.</doc>
+        <source-position filename="gst/gstquery.h" line="497"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #gboolean indicating if the range was added or not.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstquery.c"
+               line="1264">a #gboolean indicating if the range was added or not.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="query" transfer-ownership="none">
-            <doc xml:space="preserve">a GST_QUERY_BUFFERING type query #GstQuery</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1257">a GST_QUERY_BUFFERING type query #GstQuery</doc>
             <type name="Query" c:type="GstQuery*"/>
           </instance-parameter>
           <parameter name="start" transfer-ownership="none">
-            <doc xml:space="preserve">start position of the range</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1258">start position of the range</doc>
             <type name="gint64" c:type="gint64"/>
           </parameter>
           <parameter name="stop" transfer-ownership="none">
-            <doc xml:space="preserve">stop position of the range</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1259">stop position of the range</doc>
             <type name="gint64" c:type="gint64"/>
           </parameter>
         </parameters>
       </method>
       <method name="add_scheduling_mode"
               c:identifier="gst_query_add_scheduling_mode">
-        <doc xml:space="preserve">Add @mode as one of the supported scheduling modes to @query.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="2190">Add @mode as one of the supported scheduling modes to @query.</doc>
+        <source-position filename="gst/gstquery.h" line="632"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="query" transfer-ownership="none">
-            <doc xml:space="preserve">a GST_QUERY_SCHEDULING type query #GstQuery</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="2192">a GST_QUERY_SCHEDULING type query #GstQuery</doc>
             <type name="Query" c:type="GstQuery*"/>
           </instance-parameter>
           <parameter name="mode" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstPadMode</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="2193">a #GstPadMode</doc>
             <type name="PadMode" c:type="GstPadMode"/>
           </parameter>
         </parameters>
       </method>
+      <method name="copy" c:identifier="gst_query_copy" introspectable="0">
+        <doc xml:space="preserve"
+             filename="gst/gstquery.h"
+             line="280">Copies the given query using the copy function of the parent #GstStructure.
+
+Free-function: gst_query_unref</doc>
+        <source-position filename="gst/gstquery.h" line="290"/>
+        <return-value transfer-ownership="full">
+          <doc xml:space="preserve"
+               filename="gst/gstquery.h"
+               line="288">a new copy of @q.</doc>
+          <type name="Query" c:type="GstQuery*"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="q" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.h"
+                 line="282">a #GstQuery to copy.</doc>
+            <type name="Query" c:type="const GstQuery*"/>
+          </instance-parameter>
+        </parameters>
+      </method>
       <method name="find_allocation_meta"
               c:identifier="gst_query_find_allocation_meta">
-        <doc xml:space="preserve">Check if @query has metadata @api set. When this function returns %TRUE,
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="1898">Check if @query has metadata @api set. When this function returns %TRUE,
 @index will contain the index where the requested API and the parameters
 can be found.</doc>
+        <source-position filename="gst/gstquery.h" line="602"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE when @api is in the list of metadata.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstquery.c"
+               line="1908">%TRUE when @api is in the list of metadata.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="query" transfer-ownership="none">
-            <doc xml:space="preserve">a GST_QUERY_ALLOCATION type query #GstQuery</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1900">a GST_QUERY_ALLOCATION type query #GstQuery</doc>
             <type name="Query" c:type="GstQuery*"/>
           </instance-parameter>
           <parameter name="api" transfer-ownership="none">
-            <doc xml:space="preserve">the metadata API</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1901">the metadata API</doc>
             <type name="GType" c:type="GType"/>
           </parameter>
           <parameter name="index"
@@ -32809,184 +50550,260 @@ can be found.</doc>
                      transfer-ownership="none"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">the index</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1902">the index</doc>
             <type name="guint" c:type="guint*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_n_allocation_metas"
               c:identifier="gst_query_get_n_allocation_metas">
-        <doc xml:space="preserve">Retrieve the number of values currently stored in the
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="1812">Retrieve the number of values currently stored in the
 meta API array of the query's structure.</doc>
+        <source-position filename="gst/gstquery.h" line="592"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the metadata API array size as a #guint.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstquery.c"
+               line="1819">the metadata API array size as a #guint.</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="query" transfer-ownership="none">
-            <doc xml:space="preserve">a GST_QUERY_ALLOCATION type query #GstQuery</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1814">a GST_QUERY_ALLOCATION type query #GstQuery</doc>
             <type name="Query" c:type="GstQuery*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_n_allocation_params"
               c:identifier="gst_query_get_n_allocation_params">
-        <doc xml:space="preserve">Retrieve the number of values currently stored in the
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="1984">Retrieve the number of values currently stored in the
 allocator params array of the query's structure.
 
 If no memory allocator is specified, the downstream element can handle
 the default memory allocator. The first memory allocator in the query
 should be generic and allow mapping to system memory, all following
 allocators should be ordered by preference with the preferred one first.</doc>
+        <source-position filename="gst/gstquery.h" line="571"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the allocator array size as a #guint.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstquery.c"
+               line="1996">the allocator array size as a #guint.</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="query" transfer-ownership="none">
-            <doc xml:space="preserve">a GST_QUERY_ALLOCATION type query #GstQuery</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1986">a GST_QUERY_ALLOCATION type query #GstQuery</doc>
             <type name="Query" c:type="GstQuery*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_n_allocation_pools"
               c:identifier="gst_query_get_n_allocation_pools">
-        <doc xml:space="preserve">Retrieve the number of values currently stored in the
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="1638">Retrieve the number of values currently stored in the
 pool array of the query's structure.</doc>
+        <source-position filename="gst/gstquery.h" line="547"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the pool array size as a #guint.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstquery.c"
+               line="1645">the pool array size as a #guint.</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="query" transfer-ownership="none">
-            <doc xml:space="preserve">a GST_QUERY_ALLOCATION type query #GstQuery</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1640">a GST_QUERY_ALLOCATION type query #GstQuery</doc>
             <type name="Query" c:type="GstQuery*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_n_buffering_ranges"
               c:identifier="gst_query_get_n_buffering_ranges">
-        <doc xml:space="preserve">Retrieve the number of values currently stored in the
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="1299">Retrieve the number of values currently stored in the
 buffered-ranges array of the query's structure.</doc>
+        <source-position filename="gst/gstquery.h" line="501"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the range array size as a #guint.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstquery.c"
+               line="1306">the range array size as a #guint.</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="query" transfer-ownership="none">
-            <doc xml:space="preserve">a GST_QUERY_BUFFERING type query #GstQuery</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1301">a GST_QUERY_BUFFERING type query #GstQuery</doc>
             <type name="Query" c:type="GstQuery*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_n_scheduling_modes"
               c:identifier="gst_query_get_n_scheduling_modes">
-        <doc xml:space="preserve">Retrieve the number of values currently stored in the
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="2213">Retrieve the number of values currently stored in the
 scheduling mode array of the query's structure.</doc>
+        <source-position filename="gst/gstquery.h" line="635"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the scheduling mode array size as a #guint.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstquery.c"
+               line="2220">the scheduling mode array size as a #guint.</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="query" transfer-ownership="none">
-            <doc xml:space="preserve">a GST_QUERY_SCHEDULING type query #GstQuery</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="2215">a GST_QUERY_SCHEDULING type query #GstQuery</doc>
             <type name="Query" c:type="GstQuery*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_structure" c:identifier="gst_query_get_structure">
-        <doc xml:space="preserve">Get the structure of a query.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="706">Get the structure of a query.</doc>
+        <source-position filename="gst/gstquery.h" line="367"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">the #GstStructure of the query. The
+          <doc xml:space="preserve"
+               filename="gst/gstquery.c"
+               line="712">the #GstStructure of the query. The
     structure is still owned by the query and will therefore be freed when the
     query is unreffed.</doc>
           <type name="Structure" c:type="const GstStructure*"/>
         </return-value>
         <parameters>
           <instance-parameter name="query" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstQuery</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="708">a #GstQuery</doc>
             <type name="Query" c:type="GstQuery*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="has_scheduling_mode"
               c:identifier="gst_query_has_scheduling_mode">
-        <doc xml:space="preserve">Check if @query has scheduling mode set.
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="2264">Check if @query has scheduling mode set.
 
 &gt; When checking if upstream supports pull mode, it is usually not
 &gt; enough to just check for GST_PAD_MODE_PULL with this function, you
 &gt; also want to check whether the scheduling flags returned by
 &gt; gst_query_parse_scheduling() have the seeking flag set (meaning
 &gt; random access is supported, not only sequential pulls).</doc>
+        <source-position filename="gst/gstquery.h" line="641"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE when @mode is in the list of scheduling modes.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstquery.c"
+               line="2277">%TRUE when @mode is in the list of scheduling modes.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="query" transfer-ownership="none">
-            <doc xml:space="preserve">a GST_QUERY_SCHEDULING type query #GstQuery</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="2266">a GST_QUERY_SCHEDULING type query #GstQuery</doc>
             <type name="Query" c:type="GstQuery*"/>
           </instance-parameter>
           <parameter name="mode" transfer-ownership="none">
-            <doc xml:space="preserve">the scheduling mode</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="2267">the scheduling mode</doc>
             <type name="PadMode" c:type="GstPadMode"/>
           </parameter>
         </parameters>
       </method>
       <method name="has_scheduling_mode_with_flags"
               c:identifier="gst_query_has_scheduling_mode_with_flags">
-        <doc xml:space="preserve">Check if @query has scheduling mode set and @flags is set in
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="2300">Check if @query has scheduling mode set and @flags is set in
 query scheduling flags.</doc>
+        <source-position filename="gst/gstquery.h" line="644"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE when @mode is in the list of scheduling modes
+          <doc xml:space="preserve"
+               filename="gst/gstquery.c"
+               line="2309">%TRUE when @mode is in the list of scheduling modes
    and @flags are compatible with query flags.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="query" transfer-ownership="none">
-            <doc xml:space="preserve">a GST_QUERY_SCHEDULING type query #GstQuery</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="2302">a GST_QUERY_SCHEDULING type query #GstQuery</doc>
             <type name="Query" c:type="GstQuery*"/>
           </instance-parameter>
           <parameter name="mode" transfer-ownership="none">
-            <doc xml:space="preserve">the scheduling mode</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="2303">the scheduling mode</doc>
             <type name="PadMode" c:type="GstPadMode"/>
           </parameter>
           <parameter name="flags" transfer-ownership="none">
-            <doc xml:space="preserve">#GstSchedulingFlags</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="2304">#GstSchedulingFlags</doc>
             <type name="SchedulingFlags" c:type="GstSchedulingFlags"/>
           </parameter>
         </parameters>
       </method>
       <method name="parse_accept_caps"
               c:identifier="gst_query_parse_accept_caps">
-        <doc xml:space="preserve">Get the caps from @query. The caps remains valid as long as @query remains
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="2352">Get the caps from @query. The caps remains valid as long as @query remains
 valid.</doc>
+        <source-position filename="gst/gstquery.h" line="653"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="query" transfer-ownership="none">
-            <doc xml:space="preserve">The query to parse</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="2354">The query to parse</doc>
             <type name="Query" c:type="GstQuery*"/>
           </instance-parameter>
           <parameter name="caps"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="none">
-            <doc xml:space="preserve">A pointer to the caps</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="2355">A pointer to the caps</doc>
             <type name="Caps" c:type="GstCaps**"/>
           </parameter>
         </parameters>
       </method>
       <method name="parse_accept_caps_result"
               c:identifier="gst_query_parse_accept_caps_result">
-        <doc xml:space="preserve">Parse the result from @query and store in @result.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="2393">Parse the result from @query and store in @result.</doc>
+        <source-position filename="gst/gstquery.h" line="659"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="query" transfer-ownership="none">
-            <doc xml:space="preserve">a GST_QUERY_ACCEPT_CAPS type query #GstQuery</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="2395">a GST_QUERY_ACCEPT_CAPS type query #GstQuery</doc>
             <type name="Query" c:type="GstQuery*"/>
           </instance-parameter>
           <parameter name="result"
@@ -32995,25 +50812,32 @@ valid.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">location for the result</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="2396">location for the result</doc>
             <type name="gboolean" c:type="gboolean*"/>
           </parameter>
         </parameters>
       </method>
       <method name="parse_allocation"
               c:identifier="gst_query_parse_allocation">
-        <doc xml:space="preserve">Parse an allocation query, writing the requested caps in @caps and
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="1559">Parse an allocation query, writing the requested caps in @caps and
 whether a pool is needed in @need_pool, if the respective parameters
 are non-%NULL.
 
 Pool details can be retrieved using gst_query_get_n_allocation_pools() and
 gst_query_parse_nth_allocation_pool().</doc>
+        <source-position filename="gst/gstquery.h" line="537"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="query" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstQuery</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1561">a #GstQuery</doc>
             <type name="Query" c:type="GstQuery*"/>
           </instance-parameter>
           <parameter name="caps"
@@ -33022,7 +50846,9 @@ gst_query_parse_nth_allocation_pool().</doc>
                      transfer-ownership="none"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">The #GstCaps</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1562">The #GstCaps</doc>
             <type name="Caps" c:type="GstCaps**"/>
           </parameter>
           <parameter name="need_pool"
@@ -33031,7 +50857,9 @@ gst_query_parse_nth_allocation_pool().</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">Whether a #GstBufferPool is needed</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1563">Whether a #GstBufferPool is needed</doc>
             <type name="gboolean" c:type="gboolean*"/>
           </parameter>
         </parameters>
@@ -33039,13 +50867,18 @@ gst_query_parse_nth_allocation_pool().</doc>
       <method name="parse_bitrate"
               c:identifier="gst_query_parse_bitrate"
               version="1.16">
-        <doc xml:space="preserve">Get the results of a bitrate query. See also gst_query_set_bitrate().</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="2706">Get the results of a bitrate query. See also gst_query_set_bitrate().</doc>
+        <source-position filename="gst/gstquery.h" line="703"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="query" transfer-ownership="none">
-            <doc xml:space="preserve">a GST_QUERY_BITRATE type #GstQuery</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="2708">a GST_QUERY_BITRATE type #GstQuery</doc>
             <type name="Query" c:type="GstQuery*"/>
           </instance-parameter>
           <parameter name="nominal_bitrate"
@@ -33054,21 +50887,28 @@ gst_query_parse_nth_allocation_pool().</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">The resulting bitrate in bits per second</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="2709">The resulting bitrate in bits per second</doc>
             <type name="guint" c:type="guint*"/>
           </parameter>
         </parameters>
       </method>
       <method name="parse_buffering_percent"
               c:identifier="gst_query_parse_buffering_percent">
-        <doc xml:space="preserve">Get the percentage of buffered data. This is a value between 0 and 100.
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="1091">Get the percentage of buffered data. This is a value between 0 and 100.
 The @busy indicator is %TRUE when the buffering is in progress.</doc>
+        <source-position filename="gst/gstquery.h" line="474"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="query" transfer-ownership="none">
-            <doc xml:space="preserve">A valid #GstQuery of type GST_QUERY_BUFFERING.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1093">A valid #GstQuery of type GST_QUERY_BUFFERING.</doc>
             <type name="Query" c:type="GstQuery*"/>
           </instance-parameter>
           <parameter name="busy"
@@ -33077,7 +50917,9 @@ The @busy indicator is %TRUE when the buffering is in progress.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">if buffering is busy, or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1094">if buffering is busy, or %NULL</doc>
             <type name="gboolean" c:type="gboolean*"/>
           </parameter>
           <parameter name="percent"
@@ -33086,22 +50928,29 @@ The @busy indicator is %TRUE when the buffering is in progress.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">a buffering percent, or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1095">a buffering percent, or %NULL</doc>
             <type name="gint" c:type="gint*"/>
           </parameter>
         </parameters>
       </method>
       <method name="parse_buffering_range"
               c:identifier="gst_query_parse_buffering_range">
-        <doc xml:space="preserve">Parse an available query, writing the format into @format, and
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="1209">Parse an available query, writing the format into @format, and
 other results into the passed parameters, if the respective parameters
 are non-%NULL</doc>
+        <source-position filename="gst/gstquery.h" line="492"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="query" transfer-ownership="none">
-            <doc xml:space="preserve">a GST_QUERY_BUFFERING type query #GstQuery</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1211">a GST_QUERY_BUFFERING type query #GstQuery</doc>
             <type name="Query" c:type="GstQuery*"/>
           </instance-parameter>
           <parameter name="format"
@@ -33110,7 +50959,9 @@ are non-%NULL</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">the format to set for the @segment_start
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1212">the format to set for the @segment_start
     and @segment_end values, or %NULL</doc>
             <type name="Format" c:type="GstFormat*"/>
           </parameter>
@@ -33120,7 +50971,9 @@ are non-%NULL</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">the start to set, or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1214">the start to set, or %NULL</doc>
             <type name="gint64" c:type="gint64*"/>
           </parameter>
           <parameter name="stop"
@@ -33129,7 +50982,9 @@ are non-%NULL</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">the stop to set, or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1215">the stop to set, or %NULL</doc>
             <type name="gint64" c:type="gint64*"/>
           </parameter>
           <parameter name="estimated_total"
@@ -33138,7 +50993,9 @@ are non-%NULL</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">estimated total amount of download
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1216">estimated total amount of download
     time remaining in milliseconds, or %NULL</doc>
             <type name="gint64" c:type="gint64*"/>
           </parameter>
@@ -33146,13 +51003,18 @@ are non-%NULL</doc>
       </method>
       <method name="parse_buffering_stats"
               c:identifier="gst_query_parse_buffering_stats">
-        <doc xml:space="preserve">Extracts the buffering stats values from @query.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="1144">Extracts the buffering stats values from @query.</doc>
+        <source-position filename="gst/gstquery.h" line="482"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="query" transfer-ownership="none">
-            <doc xml:space="preserve">A valid #GstQuery of type GST_QUERY_BUFFERING.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1146">A valid #GstQuery of type GST_QUERY_BUFFERING.</doc>
             <type name="Query" c:type="GstQuery*"/>
           </instance-parameter>
           <parameter name="mode"
@@ -33161,7 +51023,9 @@ are non-%NULL</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">a buffering mode, or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1147">a buffering mode, or %NULL</doc>
             <type name="BufferingMode" c:type="GstBufferingMode*"/>
           </parameter>
           <parameter name="avg_in"
@@ -33170,7 +51034,9 @@ are non-%NULL</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">the average input rate, or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1148">the average input rate, or %NULL</doc>
             <type name="gint" c:type="gint*"/>
           </parameter>
           <parameter name="avg_out"
@@ -33179,7 +51045,9 @@ are non-%NULL</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">the average output rat, or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1149">the average output rat, or %NULL</doc>
             <type name="gint" c:type="gint*"/>
           </parameter>
           <parameter name="buffering_left"
@@ -33188,49 +51056,65 @@ are non-%NULL</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">amount of buffering time left in
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1150">amount of buffering time left in
     milliseconds, or %NULL</doc>
             <type name="gint64" c:type="gint64*"/>
           </parameter>
         </parameters>
       </method>
       <method name="parse_caps" c:identifier="gst_query_parse_caps">
-        <doc xml:space="preserve">Get the filter from the caps @query. The caps remains valid as long as
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="2453">Get the filter from the caps @query. The caps remains valid as long as
 @query remains valid.</doc>
+        <source-position filename="gst/gstquery.h" line="667"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="query" transfer-ownership="none">
-            <doc xml:space="preserve">The query to parse</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="2455">The query to parse</doc>
             <type name="Query" c:type="GstQuery*"/>
           </instance-parameter>
           <parameter name="filter"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="none">
-            <doc xml:space="preserve">A pointer to the caps filter</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="2456">A pointer to the caps filter</doc>
             <type name="Caps" c:type="GstCaps**"/>
           </parameter>
         </parameters>
       </method>
       <method name="parse_caps_result"
               c:identifier="gst_query_parse_caps_result">
-        <doc xml:space="preserve">Get the caps result from @query. The caps remains valid as long as
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="2493">Get the caps result from @query. The caps remains valid as long as
 @query remains valid.</doc>
+        <source-position filename="gst/gstquery.h" line="673"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="query" transfer-ownership="none">
-            <doc xml:space="preserve">The query to parse</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="2495">The query to parse</doc>
             <type name="Query" c:type="GstQuery*"/>
           </instance-parameter>
           <parameter name="caps"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="none">
-            <doc xml:space="preserve">A pointer to the caps</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="2496">A pointer to the caps</doc>
             <type name="Caps" c:type="GstCaps**"/>
           </parameter>
         </parameters>
@@ -33238,21 +51122,28 @@ are non-%NULL</doc>
       <method name="parse_context"
               c:identifier="gst_query_parse_context"
               version="1.2">
-        <doc xml:space="preserve">Get the context from the context @query. The context remains valid as long as
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="2603">Get the context from the context @query. The context remains valid as long as
 @query remains valid.</doc>
+        <source-position filename="gst/gstquery.h" line="692"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="query" transfer-ownership="none">
-            <doc xml:space="preserve">The query to parse</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="2605">The query to parse</doc>
             <type name="Query" c:type="GstQuery*"/>
           </instance-parameter>
           <parameter name="context"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="none">
-            <doc xml:space="preserve">A pointer to store the #GstContext</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="2606">A pointer to store the #GstContext</doc>
             <type name="Context" c:type="GstContext**"/>
           </parameter>
         </parameters>
@@ -33260,14 +51151,21 @@ are non-%NULL</doc>
       <method name="parse_context_type"
               c:identifier="gst_query_parse_context_type"
               version="1.2">
-        <doc xml:space="preserve">Parse a context type from an existing GST_QUERY_CONTEXT query.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #gboolean indicating if the parsing succeeded.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="2630">Parse a context type from an existing GST_QUERY_CONTEXT query.</doc>
+        <source-position filename="gst/gstquery.h" line="686"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstquery.c"
+               line="2637">a #gboolean indicating if the parsing succeeded.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="query" transfer-ownership="none">
-            <doc xml:space="preserve">a GST_QUERY_CONTEXT type query</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="2632">a GST_QUERY_CONTEXT type query</doc>
             <type name="Query" c:type="GstQuery*"/>
           </instance-parameter>
           <parameter name="context_type"
@@ -33276,20 +51174,27 @@ are non-%NULL</doc>
                      transfer-ownership="none"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">the context type, or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="2633">the context type, or %NULL</doc>
             <type name="utf8" c:type="const gchar**"/>
           </parameter>
         </parameters>
       </method>
       <method name="parse_convert" c:identifier="gst_query_parse_convert">
-        <doc xml:space="preserve">Parse a convert query answer. Any of @src_format, @src_value, @dest_format,
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="518">Parse a convert query answer. Any of @src_format, @src_value, @dest_format,
 and @dest_value may be %NULL, in which case that value is omitted.</doc>
+        <source-position filename="gst/gstquery.h" line="417"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="query" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstQuery</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="520">a #GstQuery</doc>
             <type name="Query" c:type="GstQuery*"/>
           </instance-parameter>
           <parameter name="src_format"
@@ -33298,7 +51203,9 @@ and @dest_value may be %NULL, in which case that value is omitted.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">the storage for the #GstFormat of the
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="521">the storage for the #GstFormat of the
     source value, or %NULL</doc>
             <type name="Format" c:type="GstFormat*"/>
           </parameter>
@@ -33308,7 +51215,9 @@ and @dest_value may be %NULL, in which case that value is omitted.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">the storage for the source value, or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="523">the storage for the source value, or %NULL</doc>
             <type name="gint64" c:type="gint64*"/>
           </parameter>
           <parameter name="dest_format"
@@ -33317,7 +51226,9 @@ and @dest_value may be %NULL, in which case that value is omitted.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">the storage for the #GstFormat of the
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="524">the storage for the #GstFormat of the
     destination value, or %NULL</doc>
             <type name="Format" c:type="GstFormat*"/>
           </parameter>
@@ -33327,21 +51238,28 @@ and @dest_value may be %NULL, in which case that value is omitted.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">the storage for the destination value,
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="526">the storage for the destination value,
     or %NULL</doc>
             <type name="gint64" c:type="gint64*"/>
           </parameter>
         </parameters>
       </method>
       <method name="parse_duration" c:identifier="gst_query_parse_duration">
-        <doc xml:space="preserve">Parse a duration query answer. Write the format of the duration into @format,
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="349">Parse a duration query answer. Write the format of the duration into @format,
 and the value into @duration, if the respective variables are non-%NULL.</doc>
+        <source-position filename="gst/gstquery.h" line="392"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="query" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstQuery</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="351">a #GstQuery</doc>
             <type name="Query" c:type="GstQuery*"/>
           </instance-parameter>
           <parameter name="format"
@@ -33350,7 +51268,9 @@ and the value into @duration, if the respective variables are non-%NULL.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">the storage for the #GstFormat of the duration
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="352">the storage for the #GstFormat of the duration
     value, or %NULL.</doc>
             <type name="Format" c:type="GstFormat*"/>
           </parameter>
@@ -33360,19 +51280,26 @@ and the value into @duration, if the respective variables are non-%NULL.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">the storage for the total duration, or %NULL.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="354">the storage for the total duration, or %NULL.</doc>
             <type name="gint64" c:type="gint64*"/>
           </parameter>
         </parameters>
       </method>
       <method name="parse_latency" c:identifier="gst_query_parse_latency">
-        <doc xml:space="preserve">Parse a latency query answer.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="430">Parse a latency query answer.</doc>
+        <source-position filename="gst/gstquery.h" line="404"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="query" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstQuery</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="432">a #GstQuery</doc>
             <type name="Query" c:type="GstQuery*"/>
           </instance-parameter>
           <parameter name="live"
@@ -33381,7 +51308,9 @@ and the value into @duration, if the respective variables are non-%NULL.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">storage for live or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="433">storage for live or %NULL</doc>
             <type name="gboolean" c:type="gboolean*"/>
           </parameter>
           <parameter name="min_latency"
@@ -33390,7 +51319,9 @@ and the value into @duration, if the respective variables are non-%NULL.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">the storage for the min latency or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="434">the storage for the min latency or %NULL</doc>
             <type name="ClockTime" c:type="GstClockTime*"/>
           </parameter>
           <parameter name="max_latency"
@@ -33399,19 +51330,26 @@ and the value into @duration, if the respective variables are non-%NULL.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">the storage for the max latency or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="435">the storage for the max latency or %NULL</doc>
             <type name="ClockTime" c:type="GstClockTime*"/>
           </parameter>
         </parameters>
       </method>
       <method name="parse_n_formats" c:identifier="gst_query_parse_n_formats">
-        <doc xml:space="preserve">Parse the number of formats in the formats @query.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="971">Parse the number of formats in the formats @query.</doc>
+        <source-position filename="gst/gstquery.h" line="460"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="query" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstQuery</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="973">a #GstQuery</doc>
             <type name="Query" c:type="GstQuery*"/>
           </instance-parameter>
           <parameter name="n_formats"
@@ -33420,26 +51358,37 @@ and the value into @duration, if the respective variables are non-%NULL.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">the number of formats in this query.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="974">the number of formats in this query.</doc>
             <type name="guint" c:type="guint*"/>
           </parameter>
         </parameters>
       </method>
       <method name="parse_nth_allocation_meta"
               c:identifier="gst_query_parse_nth_allocation_meta">
-        <doc xml:space="preserve">Parse an available query and get the metadata API
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="1837">Parse an available query and get the metadata API
 at @index of the metadata API array.</doc>
+        <source-position filename="gst/gstquery.h" line="595"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GType of the metadata API at @index.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstquery.c"
+               line="1846">a #GType of the metadata API at @index.</doc>
           <type name="GType" c:type="GType"/>
         </return-value>
         <parameters>
           <instance-parameter name="query" transfer-ownership="none">
-            <doc xml:space="preserve">a GST_QUERY_ALLOCATION type query #GstQuery</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1839">a GST_QUERY_ALLOCATION type query #GstQuery</doc>
             <type name="Query" c:type="GstQuery*"/>
           </instance-parameter>
           <parameter name="index" transfer-ownership="none">
-            <doc xml:space="preserve">position in the metadata API array to read</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1840">position in the metadata API array to read</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="params"
@@ -33448,25 +51397,34 @@ at @index of the metadata API array.</doc>
                      transfer-ownership="none"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">API specific parameters</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1841">API specific parameters</doc>
             <type name="Structure" c:type="const GstStructure**"/>
           </parameter>
         </parameters>
       </method>
       <method name="parse_nth_allocation_param"
               c:identifier="gst_query_parse_nth_allocation_param">
-        <doc xml:space="preserve">Parse an available query and get the allocator and its params
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="2013">Parse an available query and get the allocator and its params
 at @index of the allocator array.</doc>
+        <source-position filename="gst/gstquery.h" line="574"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="query" transfer-ownership="none">
-            <doc xml:space="preserve">a GST_QUERY_ALLOCATION type query #GstQuery</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="2015">a GST_QUERY_ALLOCATION type query #GstQuery</doc>
             <type name="Query" c:type="GstQuery*"/>
           </instance-parameter>
           <parameter name="index" transfer-ownership="none">
-            <doc xml:space="preserve">position in the allocator array to read</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="2016">position in the allocator array to read</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="allocator"
@@ -33475,7 +51433,9 @@ at @index of the allocator array.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">variable to hold the result</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="2017">variable to hold the result</doc>
             <type name="Allocator" c:type="GstAllocator**"/>
           </parameter>
           <parameter name="params"
@@ -33484,26 +51444,35 @@ at @index of the allocator array.</doc>
                      transfer-ownership="none"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">parameters for the allocator</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="2018">parameters for the allocator</doc>
             <type name="AllocationParams" c:type="GstAllocationParams*"/>
           </parameter>
         </parameters>
       </method>
       <method name="parse_nth_allocation_pool"
               c:identifier="gst_query_parse_nth_allocation_pool">
-        <doc xml:space="preserve">Get the pool parameters in @query.
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="1662">Get the pool parameters in @query.
 
 Unref @pool with gst_object_unref() when it's not needed any more.</doc>
+        <source-position filename="gst/gstquery.h" line="550"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="query" transfer-ownership="none">
-            <doc xml:space="preserve">A valid #GstQuery of type GST_QUERY_ALLOCATION.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1664">A valid #GstQuery of type GST_QUERY_ALLOCATION.</doc>
             <type name="Query" c:type="GstQuery*"/>
           </instance-parameter>
           <parameter name="index" transfer-ownership="none">
-            <doc xml:space="preserve">index to parse</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1665">index to parse</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="pool"
@@ -33512,7 +51481,9 @@ Unref @pool with gst_object_unref() when it's not needed any more.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">the #GstBufferPool</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1666">the #GstBufferPool</doc>
             <type name="BufferPool" c:type="GstBufferPool**"/>
           </parameter>
           <parameter name="size"
@@ -33521,7 +51492,9 @@ Unref @pool with gst_object_unref() when it's not needed any more.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">the buffer size</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1667">the buffer size</doc>
             <type name="guint" c:type="guint*"/>
           </parameter>
           <parameter name="min_buffers"
@@ -33530,7 +51503,9 @@ Unref @pool with gst_object_unref() when it's not needed any more.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">the min buffers</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1668">the min buffers</doc>
             <type name="guint" c:type="guint*"/>
           </parameter>
           <parameter name="max_buffers"
@@ -33539,26 +51514,37 @@ Unref @pool with gst_object_unref() when it's not needed any more.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">the max buffers</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1669">the max buffers</doc>
             <type name="guint" c:type="guint*"/>
           </parameter>
         </parameters>
       </method>
       <method name="parse_nth_buffering_range"
               c:identifier="gst_query_parse_nth_buffering_range">
-        <doc xml:space="preserve">Parse an available query and get the start and stop values stored
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="1324">Parse an available query and get the start and stop values stored
 at the @index of the buffered ranges array.</doc>
+        <source-position filename="gst/gstquery.h" line="504"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #gboolean indicating if the parsing succeeded.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstquery.c"
+               line="1334">a #gboolean indicating if the parsing succeeded.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="query" transfer-ownership="none">
-            <doc xml:space="preserve">a GST_QUERY_BUFFERING type query #GstQuery</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1326">a GST_QUERY_BUFFERING type query #GstQuery</doc>
             <type name="Query" c:type="GstQuery*"/>
           </instance-parameter>
           <parameter name="index" transfer-ownership="none">
-            <doc xml:space="preserve">position in the buffered-ranges array to read</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1327">position in the buffered-ranges array to read</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="start"
@@ -33567,7 +51553,9 @@ at the @index of the buffered ranges array.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">the start position to set, or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1328">the start position to set, or %NULL</doc>
             <type name="gint64" c:type="gint64*"/>
           </parameter>
           <parameter name="stop"
@@ -33576,26 +51564,35 @@ at the @index of the buffered ranges array.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">the stop position to set, or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1329">the stop position to set, or %NULL</doc>
             <type name="gint64" c:type="gint64*"/>
           </parameter>
         </parameters>
       </method>
       <method name="parse_nth_format"
               c:identifier="gst_query_parse_nth_format">
-        <doc xml:space="preserve">Parse the format query and retrieve the @nth format from it into
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="997">Parse the format query and retrieve the @nth format from it into
 @format. If the list contains less elements than @nth, @format will be
 set to GST_FORMAT_UNDEFINED.</doc>
+        <source-position filename="gst/gstquery.h" line="463"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="query" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstQuery</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="999">a #GstQuery</doc>
             <type name="Query" c:type="GstQuery*"/>
           </instance-parameter>
           <parameter name="nth" transfer-ownership="none">
-            <doc xml:space="preserve">the nth format to retrieve.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1000">the nth format to retrieve.</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="format"
@@ -33604,39 +51601,55 @@ set to GST_FORMAT_UNDEFINED.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">a pointer to store the nth format</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1001">a pointer to store the nth format</doc>
             <type name="Format" c:type="GstFormat*"/>
           </parameter>
         </parameters>
       </method>
       <method name="parse_nth_scheduling_mode"
               c:identifier="gst_query_parse_nth_scheduling_mode">
-        <doc xml:space="preserve">Parse an available query and get the scheduling mode
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="2237">Parse an available query and get the scheduling mode
 at @index of the scheduling modes array.</doc>
+        <source-position filename="gst/gstquery.h" line="638"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstPadMode of the scheduling mode at @index.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstquery.c"
+               line="2245">a #GstPadMode of the scheduling mode at @index.</doc>
           <type name="PadMode" c:type="GstPadMode"/>
         </return-value>
         <parameters>
           <instance-parameter name="query" transfer-ownership="none">
-            <doc xml:space="preserve">a GST_QUERY_SCHEDULING type query #GstQuery</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="2239">a GST_QUERY_SCHEDULING type query #GstQuery</doc>
             <type name="Query" c:type="GstQuery*"/>
           </instance-parameter>
           <parameter name="index" transfer-ownership="none">
-            <doc xml:space="preserve">position in the scheduling modes array to read</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="2240">position in the scheduling modes array to read</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="parse_position" c:identifier="gst_query_parse_position">
-        <doc xml:space="preserve">Parse a position query, writing the format into @format, and the position
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="272">Parse a position query, writing the format into @format, and the position
 into @cur, if the respective parameters are non-%NULL.</doc>
+        <source-position filename="gst/gstquery.h" line="381"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="query" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstQuery</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="274">a #GstQuery</doc>
             <type name="Query" c:type="GstQuery*"/>
           </instance-parameter>
           <parameter name="format"
@@ -33645,7 +51658,9 @@ into @cur, if the respective parameters are non-%NULL.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">the storage for the #GstFormat of the
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="275">the storage for the #GstFormat of the
     position values (may be %NULL)</doc>
             <type name="Format" c:type="GstFormat*"/>
           </parameter>
@@ -33655,20 +51670,27 @@ into @cur, if the respective parameters are non-%NULL.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">the storage for the current position (may be %NULL)</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="277">the storage for the current position (may be %NULL)</doc>
             <type name="gint64" c:type="gint64*"/>
           </parameter>
         </parameters>
       </method>
       <method name="parse_scheduling"
               c:identifier="gst_query_parse_scheduling">
-        <doc xml:space="preserve">Set the scheduling properties.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="2164">Set the scheduling properties.</doc>
+        <source-position filename="gst/gstquery.h" line="628"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="query" transfer-ownership="none">
-            <doc xml:space="preserve">A valid #GstQuery of type GST_QUERY_SCHEDULING.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="2166">A valid #GstQuery of type GST_QUERY_SCHEDULING.</doc>
             <type name="Query" c:type="GstQuery*"/>
           </instance-parameter>
           <parameter name="flags"
@@ -33677,7 +51699,9 @@ into @cur, if the respective parameters are non-%NULL.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">#GstSchedulingFlags</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="2167">#GstSchedulingFlags</doc>
             <type name="SchedulingFlags" c:type="GstSchedulingFlags*"/>
           </parameter>
           <parameter name="minsize"
@@ -33686,7 +51710,9 @@ into @cur, if the respective parameters are non-%NULL.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">the suggested minimum size of pull requests</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="2168">the suggested minimum size of pull requests</doc>
             <type name="gint" c:type="gint*"/>
           </parameter>
           <parameter name="maxsize"
@@ -33695,7 +51721,9 @@ into @cur, if the respective parameters are non-%NULL.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">the suggested maximum size of pull requests:</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="2169">the suggested maximum size of pull requests:</doc>
             <type name="gint" c:type="gint*"/>
           </parameter>
           <parameter name="align"
@@ -33704,21 +51732,28 @@ into @cur, if the respective parameters are non-%NULL.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">the suggested alignment of pull requests</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="2170">the suggested alignment of pull requests</doc>
             <type name="gint" c:type="gint*"/>
           </parameter>
         </parameters>
       </method>
       <method name="parse_seeking" c:identifier="gst_query_parse_seeking">
-        <doc xml:space="preserve">Parse a seeking query, writing the format into @format, and
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="810">Parse a seeking query, writing the format into @format, and
 other results into the passed parameters, if the respective parameters
 are non-%NULL</doc>
+        <source-position filename="gst/gstquery.h" line="444"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="query" transfer-ownership="none">
-            <doc xml:space="preserve">a GST_QUERY_SEEKING type query #GstQuery</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="812">a GST_QUERY_SEEKING type query #GstQuery</doc>
             <type name="Query" c:type="GstQuery*"/>
           </instance-parameter>
           <parameter name="format"
@@ -33727,7 +51762,9 @@ are non-%NULL</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">the format to set for the @segment_start
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="813">the format to set for the @segment_start
     and @segment_end values, or %NULL</doc>
             <type name="Format" c:type="GstFormat*"/>
           </parameter>
@@ -33737,7 +51774,9 @@ are non-%NULL</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">the seekable flag to set, or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="815">the seekable flag to set, or %NULL</doc>
             <type name="gboolean" c:type="gboolean*"/>
           </parameter>
           <parameter name="segment_start"
@@ -33746,7 +51785,9 @@ are non-%NULL</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">the segment_start to set, or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="816">the segment_start to set, or %NULL</doc>
             <type name="gint64" c:type="gint64*"/>
           </parameter>
           <parameter name="segment_end"
@@ -33755,22 +51796,29 @@ are non-%NULL</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">the segment_end to set, or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="817">the segment_end to set, or %NULL</doc>
             <type name="gint64" c:type="gint64*"/>
           </parameter>
         </parameters>
       </method>
       <method name="parse_segment" c:identifier="gst_query_parse_segment">
-        <doc xml:space="preserve">Parse a segment query answer. Any of @rate, @format, @start_value, and
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="622">Parse a segment query answer. Any of @rate, @format, @start_value, and
 @stop_value may be %NULL, which will cause this value to be omitted.
 
 See gst_query_set_segment() for an explanation of the function arguments.</doc>
+        <source-position filename="gst/gstquery.h" line="429"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="query" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstQuery</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="624">a #GstQuery</doc>
             <type name="Query" c:type="GstQuery*"/>
           </instance-parameter>
           <parameter name="rate"
@@ -33779,7 +51827,9 @@ See gst_query_set_segment() for an explanation of the function arguments.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">the storage for the rate of the segment, or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="625">the storage for the rate of the segment, or %NULL</doc>
             <type name="gdouble" c:type="gdouble*"/>
           </parameter>
           <parameter name="format"
@@ -33788,7 +51838,9 @@ See gst_query_set_segment() for an explanation of the function arguments.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">the storage for the #GstFormat of the values,
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="626">the storage for the #GstFormat of the values,
     or %NULL</doc>
             <type name="Format" c:type="GstFormat*"/>
           </parameter>
@@ -33798,7 +51850,9 @@ See gst_query_set_segment() for an explanation of the function arguments.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">the storage for the start value, or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="628">the storage for the start value, or %NULL</doc>
             <type name="gint64" c:type="gint64*"/>
           </parameter>
           <parameter name="stop_value"
@@ -33807,21 +51861,28 @@ See gst_query_set_segment() for an explanation of the function arguments.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">the storage for the stop value, or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="629">the storage for the stop value, or %NULL</doc>
             <type name="gint64" c:type="gint64*"/>
           </parameter>
         </parameters>
       </method>
       <method name="parse_uri" c:identifier="gst_query_parse_uri">
-        <doc xml:space="preserve">Parse an URI query, writing the URI into @uri as a newly
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="1408">Parse an URI query, writing the URI into @uri as a newly
 allocated string, if the respective parameters are non-%NULL.
 Free the string with g_free() after usage.</doc>
+        <source-position filename="gst/gstquery.h" line="514"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="query" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstQuery</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1410">a #GstQuery</doc>
             <type name="Query" c:type="GstQuery*"/>
           </instance-parameter>
           <parameter name="uri"
@@ -33830,7 +51891,9 @@ Free the string with g_free() after usage.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">the storage for the current URI
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1411">the storage for the current URI
     (may be %NULL)</doc>
             <type name="utf8" c:type="gchar**"/>
           </parameter>
@@ -33839,15 +51902,20 @@ Free the string with g_free() after usage.</doc>
       <method name="parse_uri_redirection"
               c:identifier="gst_query_parse_uri_redirection"
               version="1.2">
-        <doc xml:space="preserve">Parse an URI query, writing the URI into @uri as a newly
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="1454">Parse an URI query, writing the URI into @uri as a newly
 allocated string, if the respective parameters are non-%NULL.
 Free the string with g_free() after usage.</doc>
+        <source-position filename="gst/gstquery.h" line="520"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="query" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstQuery</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1456">a #GstQuery</doc>
             <type name="Query" c:type="GstQuery*"/>
           </instance-parameter>
           <parameter name="uri"
@@ -33856,7 +51924,9 @@ Free the string with g_free() after usage.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">the storage for the redirect URI
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1457">the storage for the redirect URI
     (may be %NULL)</doc>
             <type name="utf8" c:type="gchar**"/>
           </parameter>
@@ -33865,16 +51935,21 @@ Free the string with g_free() after usage.</doc>
       <method name="parse_uri_redirection_permanent"
               c:identifier="gst_query_parse_uri_redirection_permanent"
               version="1.4">
-        <doc xml:space="preserve">Parse an URI query, and set @permanent to %TRUE if there is a redirection
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="1504">Parse an URI query, and set @permanent to %TRUE if there is a redirection
 and it should be considered permanent. If a redirection is permanent,
 applications should update their internal storage of the URI, otherwise
 they should make all future requests to the original URI.</doc>
+        <source-position filename="gst/gstquery.h" line="526"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="query" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstQuery</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1506">a #GstQuery</doc>
             <type name="Query" c:type="GstQuery*"/>
           </instance-parameter>
           <parameter name="permanent"
@@ -33883,7 +51958,9 @@ they should make all future requests to the original URI.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">if the URI redirection is permanent
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1507">if the URI redirection is permanent
     (may be %NULL)</doc>
             <type name="gboolean" c:type="gboolean*"/>
           </parameter>
@@ -33891,17 +51968,24 @@ they should make all future requests to the original URI.</doc>
       </method>
       <method name="remove_nth_allocation_meta"
               c:identifier="gst_query_remove_nth_allocation_meta">
-        <doc xml:space="preserve">Remove the metadata API at @index of the metadata API array.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="1873">Remove the metadata API at @index of the metadata API array.</doc>
+        <source-position filename="gst/gstquery.h" line="599"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="query" transfer-ownership="none">
-            <doc xml:space="preserve">a GST_QUERY_ALLOCATION type query #GstQuery</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1875">a GST_QUERY_ALLOCATION type query #GstQuery</doc>
             <type name="Query" c:type="GstQuery*"/>
           </instance-parameter>
           <parameter name="index" transfer-ownership="none">
-            <doc xml:space="preserve">position in the metadata API array to remove</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1876">position in the metadata API array to remove</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
@@ -33909,17 +51993,24 @@ they should make all future requests to the original URI.</doc>
       <method name="remove_nth_allocation_param"
               c:identifier="gst_query_remove_nth_allocation_param"
               version="1.2">
-        <doc xml:space="preserve">Remove the allocation param at @index of the allocation param array.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="2085">Remove the allocation param at @index of the allocation param array.</doc>
+        <source-position filename="gst/gstquery.h" line="584"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="query" transfer-ownership="none">
-            <doc xml:space="preserve">a GST_QUERY_ALLOCATION type query #GstQuery</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="2087">a GST_QUERY_ALLOCATION type query #GstQuery</doc>
             <type name="Query" c:type="GstQuery*"/>
           </instance-parameter>
           <parameter name="index" transfer-ownership="none">
-            <doc xml:space="preserve">position in the allocation param array to remove</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="2088">position in the allocation param array to remove</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
@@ -33927,34 +52018,48 @@ they should make all future requests to the original URI.</doc>
       <method name="remove_nth_allocation_pool"
               c:identifier="gst_query_remove_nth_allocation_pool"
               version="1.2">
-        <doc xml:space="preserve">Remove the allocation pool at @index of the allocation pool array.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="1741">Remove the allocation pool at @index of the allocation pool array.</doc>
+        <source-position filename="gst/gstquery.h" line="562"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="query" transfer-ownership="none">
-            <doc xml:space="preserve">a GST_QUERY_ALLOCATION type query #GstQuery</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1743">a GST_QUERY_ALLOCATION type query #GstQuery</doc>
             <type name="Query" c:type="GstQuery*"/>
           </instance-parameter>
           <parameter name="index" transfer-ownership="none">
-            <doc xml:space="preserve">position in the allocation pool array to remove</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1744">position in the allocation pool array to remove</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_accept_caps_result"
               c:identifier="gst_query_set_accept_caps_result">
-        <doc xml:space="preserve">Set @result as the result for the @query.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="2373">Set @result as the result for the @query.</doc>
+        <source-position filename="gst/gstquery.h" line="656"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="query" transfer-ownership="none">
-            <doc xml:space="preserve">a GST_QUERY_ACCEPT_CAPS type query #GstQuery</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="2375">a GST_QUERY_ACCEPT_CAPS type query #GstQuery</doc>
             <type name="Query" c:type="GstQuery*"/>
           </instance-parameter>
           <parameter name="result" transfer-ownership="none">
-            <doc xml:space="preserve">the result to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="2376">the result to set</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
@@ -33962,70 +52067,99 @@ they should make all future requests to the original URI.</doc>
       <method name="set_bitrate"
               c:identifier="gst_query_set_bitrate"
               version="1.16">
-        <doc xml:space="preserve">Set the results of a bitrate query.  The nominal bitrate is the average
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="2682">Set the results of a bitrate query.  The nominal bitrate is the average
 bitrate expected over the length of the stream as advertised in file
 headers (or similar).</doc>
+        <source-position filename="gst/gstquery.h" line="700"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="query" transfer-ownership="none">
-            <doc xml:space="preserve">a GST_QUERY_BITRATE type #GstQuery</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="2684">a GST_QUERY_BITRATE type #GstQuery</doc>
             <type name="Query" c:type="GstQuery*"/>
           </instance-parameter>
           <parameter name="nominal_bitrate" transfer-ownership="none">
-            <doc xml:space="preserve">the nominal bitrate in bits per second</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="2685">the nominal bitrate in bits per second</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_buffering_percent"
               c:identifier="gst_query_set_buffering_percent">
-        <doc xml:space="preserve">Set the percentage of buffered data. This is a value between 0 and 100.
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="1067">Set the percentage of buffered data. This is a value between 0 and 100.
 The @busy indicator is %TRUE when the buffering is in progress.</doc>
+        <source-position filename="gst/gstquery.h" line="471"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="query" transfer-ownership="none">
-            <doc xml:space="preserve">A valid #GstQuery of type GST_QUERY_BUFFERING.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1069">A valid #GstQuery of type GST_QUERY_BUFFERING.</doc>
             <type name="Query" c:type="GstQuery*"/>
           </instance-parameter>
           <parameter name="busy" transfer-ownership="none">
-            <doc xml:space="preserve">if buffering is busy</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1070">if buffering is busy</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
           <parameter name="percent" transfer-ownership="none">
-            <doc xml:space="preserve">a buffering percent</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1071">a buffering percent</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_buffering_range"
               c:identifier="gst_query_set_buffering_range">
-        <doc xml:space="preserve">Set the available query result fields in @query.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="1181">Set the available query result fields in @query.</doc>
+        <source-position filename="gst/gstquery.h" line="487"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="query" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstQuery</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1183">a #GstQuery</doc>
             <type name="Query" c:type="GstQuery*"/>
           </instance-parameter>
           <parameter name="format" transfer-ownership="none">
-            <doc xml:space="preserve">the format to set for the @start and @stop values</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1184">the format to set for the @start and @stop values</doc>
             <type name="Format" c:type="GstFormat"/>
           </parameter>
           <parameter name="start" transfer-ownership="none">
-            <doc xml:space="preserve">the start to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1185">the start to set</doc>
             <type name="gint64" c:type="gint64"/>
           </parameter>
           <parameter name="stop" transfer-ownership="none">
-            <doc xml:space="preserve">the stop to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1186">the stop to set</doc>
             <type name="gint64" c:type="gint64"/>
           </parameter>
           <parameter name="estimated_total" transfer-ownership="none">
-            <doc xml:space="preserve">estimated total amount of download time remaining in
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1187">estimated total amount of download time remaining in
     milliseconds</doc>
             <type name="gint64" c:type="gint64"/>
           </parameter>
@@ -34033,45 +52167,65 @@ The @busy indicator is %TRUE when the buffering is in progress.</doc>
       </method>
       <method name="set_buffering_stats"
               c:identifier="gst_query_set_buffering_stats">
-        <doc xml:space="preserve">Configures the buffering stats values in @query.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="1117">Configures the buffering stats values in @query.</doc>
+        <source-position filename="gst/gstquery.h" line="477"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="query" transfer-ownership="none">
-            <doc xml:space="preserve">A valid #GstQuery of type GST_QUERY_BUFFERING.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1119">A valid #GstQuery of type GST_QUERY_BUFFERING.</doc>
             <type name="Query" c:type="GstQuery*"/>
           </instance-parameter>
           <parameter name="mode" transfer-ownership="none">
-            <doc xml:space="preserve">a buffering mode</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1120">a buffering mode</doc>
             <type name="BufferingMode" c:type="GstBufferingMode"/>
           </parameter>
           <parameter name="avg_in" transfer-ownership="none">
-            <doc xml:space="preserve">the average input rate</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1121">the average input rate</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="avg_out" transfer-ownership="none">
-            <doc xml:space="preserve">the average output rate</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1122">the average output rate</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="buffering_left" transfer-ownership="none">
-            <doc xml:space="preserve">amount of buffering time left in milliseconds</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1123">amount of buffering time left in milliseconds</doc>
             <type name="gint64" c:type="gint64"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_caps_result" c:identifier="gst_query_set_caps_result">
-        <doc xml:space="preserve">Set the @caps result in @query.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="2474">Set the @caps result in @query.</doc>
+        <source-position filename="gst/gstquery.h" line="670"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="query" transfer-ownership="none">
-            <doc xml:space="preserve">The query to use</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="2476">The query to use</doc>
             <type name="Query" c:type="GstQuery*"/>
           </instance-parameter>
           <parameter name="caps" transfer-ownership="none">
-            <doc xml:space="preserve">A pointer to the caps</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="2477">A pointer to the caps</doc>
             <type name="Caps" c:type="GstCaps*"/>
           </parameter>
         </parameters>
@@ -34079,65 +52233,94 @@ The @busy indicator is %TRUE when the buffering is in progress.</doc>
       <method name="set_context"
               c:identifier="gst_query_set_context"
               version="1.2">
-        <doc xml:space="preserve">Answer a context query by setting the requested context.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="2576">Answer a context query by setting the requested context.</doc>
+        <source-position filename="gst/gstquery.h" line="689"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="query" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstQuery with query type GST_QUERY_CONTEXT</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="2578">a #GstQuery with query type GST_QUERY_CONTEXT</doc>
             <type name="Query" c:type="GstQuery*"/>
           </instance-parameter>
           <parameter name="context" transfer-ownership="none">
-            <doc xml:space="preserve">the requested #GstContext</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="2579">the requested #GstContext</doc>
             <type name="Context" c:type="GstContext*"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_convert" c:identifier="gst_query_set_convert">
-        <doc xml:space="preserve">Answer a convert query by setting the requested values.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="492">Answer a convert query by setting the requested values.</doc>
+        <source-position filename="gst/gstquery.h" line="413"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="query" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstQuery</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="494">a #GstQuery</doc>
             <type name="Query" c:type="GstQuery*"/>
           </instance-parameter>
           <parameter name="src_format" transfer-ownership="none">
-            <doc xml:space="preserve">the source #GstFormat</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="495">the source #GstFormat</doc>
             <type name="Format" c:type="GstFormat"/>
           </parameter>
           <parameter name="src_value" transfer-ownership="none">
-            <doc xml:space="preserve">the source value</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="496">the source value</doc>
             <type name="gint64" c:type="gint64"/>
           </parameter>
           <parameter name="dest_format" transfer-ownership="none">
-            <doc xml:space="preserve">the destination #GstFormat</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="497">the destination #GstFormat</doc>
             <type name="Format" c:type="GstFormat"/>
           </parameter>
           <parameter name="dest_value" transfer-ownership="none">
-            <doc xml:space="preserve">the destination value</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="498">the destination value</doc>
             <type name="gint64" c:type="gint64"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_duration" c:identifier="gst_query_set_duration">
-        <doc xml:space="preserve">Answer a duration query by setting the requested value in the given format.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="327">Answer a duration query by setting the requested value in the given format.</doc>
+        <source-position filename="gst/gstquery.h" line="389"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="query" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstQuery</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="329">a #GstQuery</doc>
             <type name="Query" c:type="GstQuery*"/>
           </instance-parameter>
           <parameter name="format" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstFormat for the duration</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="330">the #GstFormat for the duration</doc>
             <type name="Format" c:type="GstFormat"/>
           </parameter>
           <parameter name="duration" transfer-ownership="none">
-            <doc xml:space="preserve">the duration of the stream</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="331">the duration of the stream</doc>
             <type name="gint64" c:type="gint64"/>
           </parameter>
         </parameters>
@@ -34145,43 +52328,61 @@ The @busy indicator is %TRUE when the buffering is in progress.</doc>
       <method name="set_formats"
               c:identifier="gst_query_set_formats"
               introspectable="0">
-        <doc xml:space="preserve">Set the formats query result fields in @query. The number of formats passed
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="905">Set the formats query result fields in @query. The number of formats passed
 must be equal to @n_formats.</doc>
+        <source-position filename="gst/gstquery.h" line="454"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="query" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstQuery</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="907">a #GstQuery</doc>
             <type name="Query" c:type="GstQuery*"/>
           </instance-parameter>
           <parameter name="n_formats" transfer-ownership="none">
-            <doc xml:space="preserve">the number of formats to set.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="908">the number of formats to set.</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="..." transfer-ownership="none">
-            <doc xml:space="preserve">A number of @GstFormats equal to @n_formats.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="909">A number of @GstFormats equal to @n_formats.</doc>
             <varargs/>
           </parameter>
         </parameters>
       </method>
       <method name="set_formatsv" c:identifier="gst_query_set_formatsv">
-        <doc xml:space="preserve">Set the formats query result fields in @query. The number of formats passed
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="940">Set the formats query result fields in @query. The number of formats passed
 in the @formats array must be equal to @n_formats.</doc>
+        <source-position filename="gst/gstquery.h" line="457"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="query" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstQuery</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="942">a #GstQuery</doc>
             <type name="Query" c:type="GstQuery*"/>
           </instance-parameter>
           <parameter name="n_formats" transfer-ownership="none">
-            <doc xml:space="preserve">the number of formats to set.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="943">the number of formats to set.</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="formats" transfer-ownership="none">
-            <doc xml:space="preserve">an array containing @n_formats
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="944">an array containing @n_formats
     @GstFormat values.</doc>
             <array length="0" zero-terminated="0" c:type="const GstFormat*">
               <type name="Format" c:type="GstFormat"/>
@@ -34190,175 +52391,249 @@ in the @formats array must be equal to @n_formats.</doc>
         </parameters>
       </method>
       <method name="set_latency" c:identifier="gst_query_set_latency">
-        <doc xml:space="preserve">Answer a latency query by setting the requested values in the given format.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="405">Answer a latency query by setting the requested values in the given format.</doc>
+        <source-position filename="gst/gstquery.h" line="400"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="query" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstQuery</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="407">a #GstQuery</doc>
             <type name="Query" c:type="GstQuery*"/>
           </instance-parameter>
           <parameter name="live" transfer-ownership="none">
-            <doc xml:space="preserve">if there is a live element upstream</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="408">if there is a live element upstream</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
           <parameter name="min_latency" transfer-ownership="none">
-            <doc xml:space="preserve">the minimal latency of the upstream elements</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="409">the minimal latency of the upstream elements</doc>
             <type name="ClockTime" c:type="GstClockTime"/>
           </parameter>
           <parameter name="max_latency" transfer-ownership="none">
-            <doc xml:space="preserve">the maximal latency of the upstream elements</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="410">the maximal latency of the upstream elements</doc>
             <type name="ClockTime" c:type="GstClockTime"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_nth_allocation_param"
               c:identifier="gst_query_set_nth_allocation_param">
-        <doc xml:space="preserve">Parse an available query and get the allocator and its params
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="2047">Parse an available query and get the allocator and its params
 at @index of the allocator array.</doc>
+        <source-position filename="gst/gstquery.h" line="579"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="query" transfer-ownership="none">
-            <doc xml:space="preserve">a GST_QUERY_ALLOCATION type query #GstQuery</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="2049">a GST_QUERY_ALLOCATION type query #GstQuery</doc>
             <type name="Query" c:type="GstQuery*"/>
           </instance-parameter>
           <parameter name="index" transfer-ownership="none">
-            <doc xml:space="preserve">position in the allocator array to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="2050">position in the allocator array to set</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="allocator"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">new allocator to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="2051">new allocator to set</doc>
             <type name="Allocator" c:type="GstAllocator*"/>
           </parameter>
           <parameter name="params"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">parameters for the allocator</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="2052">parameters for the allocator</doc>
             <type name="AllocationParams" c:type="const GstAllocationParams*"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_nth_allocation_pool"
               c:identifier="gst_query_set_nth_allocation_pool">
-        <doc xml:space="preserve">Set the pool parameters in @query.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="1704">Set the pool parameters in @query.</doc>
+        <source-position filename="gst/gstquery.h" line="556"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="query" transfer-ownership="none">
-            <doc xml:space="preserve">A valid #GstQuery of type GST_QUERY_ALLOCATION.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1707">A valid #GstQuery of type GST_QUERY_ALLOCATION.</doc>
             <type name="Query" c:type="GstQuery*"/>
           </instance-parameter>
           <parameter name="index" transfer-ownership="none">
-            <doc xml:space="preserve">index to modify</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1706">index to modify</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="pool"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">the #GstBufferPool</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1708">the #GstBufferPool</doc>
             <type name="BufferPool" c:type="GstBufferPool*"/>
           </parameter>
           <parameter name="size" transfer-ownership="none">
-            <doc xml:space="preserve">the buffer size</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1709">the buffer size</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="min_buffers" transfer-ownership="none">
-            <doc xml:space="preserve">the min buffers</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1710">the min buffers</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="max_buffers" transfer-ownership="none">
-            <doc xml:space="preserve">the max buffers</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1711">the max buffers</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_position" c:identifier="gst_query_set_position">
-        <doc xml:space="preserve">Answer a position query by setting the requested value in the given format.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="248">Answer a position query by setting the requested value in the given format.</doc>
+        <source-position filename="gst/gstquery.h" line="378"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="query" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstQuery with query type GST_QUERY_POSITION</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="250">a #GstQuery with query type GST_QUERY_POSITION</doc>
             <type name="Query" c:type="GstQuery*"/>
           </instance-parameter>
           <parameter name="format" transfer-ownership="none">
-            <doc xml:space="preserve">the requested #GstFormat</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="251">the requested #GstFormat</doc>
             <type name="Format" c:type="GstFormat"/>
           </parameter>
           <parameter name="cur" transfer-ownership="none">
-            <doc xml:space="preserve">the position to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="252">the position to set</doc>
             <type name="gint64" c:type="gint64"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_scheduling" c:identifier="gst_query_set_scheduling">
-        <doc xml:space="preserve">Set the scheduling properties.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="2137">Set the scheduling properties.</doc>
+        <source-position filename="gst/gstquery.h" line="624"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="query" transfer-ownership="none">
-            <doc xml:space="preserve">A valid #GstQuery of type GST_QUERY_SCHEDULING.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="2139">A valid #GstQuery of type GST_QUERY_SCHEDULING.</doc>
             <type name="Query" c:type="GstQuery*"/>
           </instance-parameter>
           <parameter name="flags" transfer-ownership="none">
-            <doc xml:space="preserve">#GstSchedulingFlags</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="2140">#GstSchedulingFlags</doc>
             <type name="SchedulingFlags" c:type="GstSchedulingFlags"/>
           </parameter>
           <parameter name="minsize" transfer-ownership="none">
-            <doc xml:space="preserve">the suggested minimum size of pull requests</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="2141">the suggested minimum size of pull requests</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="maxsize" transfer-ownership="none">
-            <doc xml:space="preserve">the suggested maximum size of pull requests</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="2142">the suggested maximum size of pull requests</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="align" transfer-ownership="none">
-            <doc xml:space="preserve">the suggested alignment of pull requests</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="2143">the suggested alignment of pull requests</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_seeking" c:identifier="gst_query_set_seeking">
-        <doc xml:space="preserve">Set the seeking query result fields in @query.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="783">Set the seeking query result fields in @query.</doc>
+        <source-position filename="gst/gstquery.h" line="438"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="query" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstQuery</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="785">a #GstQuery</doc>
             <type name="Query" c:type="GstQuery*"/>
           </instance-parameter>
           <parameter name="format" transfer-ownership="none">
-            <doc xml:space="preserve">the format to set for the @segment_start and @segment_end values</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="786">the format to set for the @segment_start and @segment_end values</doc>
             <type name="Format" c:type="GstFormat"/>
           </parameter>
           <parameter name="seekable" transfer-ownership="none">
-            <doc xml:space="preserve">the seekable flag to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="787">the seekable flag to set</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
           <parameter name="segment_start" transfer-ownership="none">
-            <doc xml:space="preserve">the segment_start to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="788">the segment_start to set</doc>
             <type name="gint64" c:type="gint64"/>
           </parameter>
           <parameter name="segment_end" transfer-ownership="none">
-            <doc xml:space="preserve">the segment_end to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="789">the segment_end to set</doc>
             <type name="gint64" c:type="gint64"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_segment" c:identifier="gst_query_set_segment">
-        <doc xml:space="preserve">Answer a segment query by setting the requested values. The normal
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="586">Answer a segment query by setting the requested values. The normal
 playback segment of a pipeline is 0 to duration at the default rate of
 1.0. If a seek was performed on the pipeline to play a different
 segment, this query will return the range specified in the last seek.
@@ -34369,44 +52644,62 @@ The values are always between 0 and the duration of the media and
 @start_value &lt;= @stop_value. @rate will contain the playback rate. For
 negative rates, playback will actually happen from @stop_value to
 @start_value.</doc>
+        <source-position filename="gst/gstquery.h" line="425"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="query" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstQuery</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="588">a #GstQuery</doc>
             <type name="Query" c:type="GstQuery*"/>
           </instance-parameter>
           <parameter name="rate" transfer-ownership="none">
-            <doc xml:space="preserve">the rate of the segment</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="589">the rate of the segment</doc>
             <type name="gdouble" c:type="gdouble"/>
           </parameter>
           <parameter name="format" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstFormat of the segment values (@start_value and @stop_value)</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="590">the #GstFormat of the segment values (@start_value and @stop_value)</doc>
             <type name="Format" c:type="GstFormat"/>
           </parameter>
           <parameter name="start_value" transfer-ownership="none">
-            <doc xml:space="preserve">the start value</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="591">the start value</doc>
             <type name="gint64" c:type="gint64"/>
           </parameter>
           <parameter name="stop_value" transfer-ownership="none">
-            <doc xml:space="preserve">the stop value</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="592">the stop value</doc>
             <type name="gint64" c:type="gint64"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_uri" c:identifier="gst_query_set_uri">
-        <doc xml:space="preserve">Answer a URI query by setting the requested URI.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="1388">Answer a URI query by setting the requested URI.</doc>
+        <source-position filename="gst/gstquery.h" line="517"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="query" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstQuery with query type GST_QUERY_URI</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1390">a #GstQuery with query type GST_QUERY_URI</doc>
             <type name="Query" c:type="GstQuery*"/>
           </instance-parameter>
           <parameter name="uri" transfer-ownership="none">
-            <doc xml:space="preserve">the URI to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1391">the URI to set</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
@@ -34414,17 +52707,24 @@ negative rates, playback will actually happen from @stop_value to
       <method name="set_uri_redirection"
               c:identifier="gst_query_set_uri_redirection"
               version="1.2">
-        <doc xml:space="preserve">Answer a URI query by setting the requested URI redirection.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="1431">Answer a URI query by setting the requested URI redirection.</doc>
+        <source-position filename="gst/gstquery.h" line="523"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="query" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstQuery with query type GST_QUERY_URI</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1433">a #GstQuery with query type GST_QUERY_URI</doc>
             <type name="Query" c:type="GstQuery*"/>
           </instance-parameter>
           <parameter name="uri" transfer-ownership="none">
-            <doc xml:space="preserve">the URI to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1434">the URI to set</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
@@ -34432,201 +52732,339 @@ negative rates, playback will actually happen from @stop_value to
       <method name="set_uri_redirection_permanent"
               c:identifier="gst_query_set_uri_redirection_permanent"
               version="1.4">
-        <doc xml:space="preserve">Answer a URI query by setting the requested URI redirection
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="1481">Answer a URI query by setting the requested URI redirection
 to permanent or not.</doc>
+        <source-position filename="gst/gstquery.h" line="529"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="query" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstQuery with query type %GST_QUERY_URI</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1483">a #GstQuery with query type %GST_QUERY_URI</doc>
             <type name="Query" c:type="GstQuery*"/>
           </instance-parameter>
           <parameter name="permanent" transfer-ownership="none">
-            <doc xml:space="preserve">whether the redirect is permanent or not</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="1484">whether the redirect is permanent or not</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </method>
+      <method name="unref" c:identifier="gst_query_unref" introspectable="0">
+        <doc xml:space="preserve"
+             filename="gst/gstquery.h"
+             line="246">Decreases the refcount of the query. If the refcount reaches 0, the query
+will be freed.</doc>
+        <source-position filename="gst/gstquery.h" line="253"/>
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="q" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.h"
+                 line="248">a #GstQuery to decrease the refcount of.</doc>
+            <type name="Query" c:type="GstQuery*"/>
+          </instance-parameter>
+        </parameters>
+      </method>
       <method name="writable_structure"
               c:identifier="gst_query_writable_structure">
-        <doc xml:space="preserve">Get the structure of a query. This method should be called with a writable
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="724">Get the structure of a query. This method should be called with a writable
 @query so that the returned structure is guaranteed to be writable.</doc>
+        <source-position filename="gst/gstquery.h" line="370"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the #GstStructure of the query. The structure is
+          <doc xml:space="preserve"
+               filename="gst/gstquery.c"
+               line="731">the #GstStructure of the query. The structure is
     still owned by the query and will therefore be freed when the query
     is unreffed.</doc>
           <type name="Structure" c:type="GstStructure*"/>
         </return-value>
         <parameters>
           <instance-parameter name="query" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstQuery</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="726">a #GstQuery</doc>
             <type name="Query" c:type="GstQuery*"/>
           </instance-parameter>
         </parameters>
       </method>
+      <function name="replace"
+                c:identifier="gst_query_replace"
+                introspectable="0">
+        <doc xml:space="preserve"
+             filename="gst/gstquery.h"
+             line="313">Modifies a pointer to a #GstQuery to point to a different #GstQuery. The
+modification is done atomically (so this is useful for ensuring thread safety
+in some cases), and the reference counts are updated appropriately (the old
+query is unreffed, the new one is reffed).
+
+Either @new_query or the #GstQuery pointed to by @old_query may be %NULL.</doc>
+        <source-position filename="gst/gstquery.h" line="329"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstquery.h"
+               line="327">%TRUE if @new_query was different from @old_query</doc>
+          <type name="gboolean" c:type="gboolean"/>
+        </return-value>
+        <parameters>
+          <parameter name="old_query"
+                     direction="inout"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     nullable="1"
+                     allow-none="1">
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.h"
+                 line="315">pointer to a pointer to a
+    #GstQuery to be replaced.</doc>
+            <type name="Query" c:type="GstQuery**"/>
+          </parameter>
+          <parameter name="new_query"
+                     transfer-ownership="none"
+                     nullable="1"
+                     allow-none="1">
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.h"
+                 line="317">pointer to a #GstQuery that will
+    replace the query pointed to by @old_query.</doc>
+            <type name="Query" c:type="GstQuery*"/>
+          </parameter>
+        </parameters>
+      </function>
     </record>
     <enumeration name="QueryType"
                  glib:type-name="GstQueryType"
                  glib:get-type="gst_query_type_get_type"
                  c:type="GstQueryType">
-      <doc xml:space="preserve">Standard predefined Query types</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstquery.h"
+           line="80">Standard predefined Query types</doc>
       <member name="unknown"
               value="0"
               c:identifier="GST_QUERY_UNKNOWN"
               glib:nick="unknown">
-        <doc xml:space="preserve">unknown query type</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstquery.h"
+             line="82">unknown query type</doc>
       </member>
       <member name="position"
               value="2563"
               c:identifier="GST_QUERY_POSITION"
               glib:nick="position">
-        <doc xml:space="preserve">current position in stream</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstquery.h"
+             line="83">current position in stream</doc>
       </member>
       <member name="duration"
               value="5123"
               c:identifier="GST_QUERY_DURATION"
               glib:nick="duration">
-        <doc xml:space="preserve">total duration of the stream</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstquery.h"
+             line="84">total duration of the stream</doc>
       </member>
       <member name="latency"
               value="7683"
               c:identifier="GST_QUERY_LATENCY"
               glib:nick="latency">
-        <doc xml:space="preserve">latency of stream</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstquery.h"
+             line="85">latency of stream</doc>
       </member>
       <member name="jitter"
               value="10243"
               c:identifier="GST_QUERY_JITTER"
               glib:nick="jitter">
-        <doc xml:space="preserve">current jitter of stream</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstquery.h"
+             line="86">current jitter of stream</doc>
       </member>
       <member name="rate"
               value="12803"
               c:identifier="GST_QUERY_RATE"
               glib:nick="rate">
-        <doc xml:space="preserve">current rate of the stream</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstquery.h"
+             line="87">current rate of the stream</doc>
       </member>
       <member name="seeking"
               value="15363"
               c:identifier="GST_QUERY_SEEKING"
               glib:nick="seeking">
-        <doc xml:space="preserve">seeking capabilities</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstquery.h"
+             line="88">seeking capabilities</doc>
       </member>
       <member name="segment"
               value="17923"
               c:identifier="GST_QUERY_SEGMENT"
               glib:nick="segment">
-        <doc xml:space="preserve">segment start/stop positions</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstquery.h"
+             line="89">segment start/stop positions</doc>
       </member>
       <member name="convert"
               value="20483"
               c:identifier="GST_QUERY_CONVERT"
               glib:nick="convert">
-        <doc xml:space="preserve">convert values between formats</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstquery.h"
+             line="90">convert values between formats</doc>
       </member>
       <member name="formats"
               value="23043"
               c:identifier="GST_QUERY_FORMATS"
               glib:nick="formats">
-        <doc xml:space="preserve">query supported formats for convert</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstquery.h"
+             line="91">query supported formats for convert</doc>
       </member>
       <member name="buffering"
               value="28163"
               c:identifier="GST_QUERY_BUFFERING"
               glib:nick="buffering">
-        <doc xml:space="preserve">query available media for efficient seeking.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstquery.h"
+             line="92">query available media for efficient seeking.</doc>
       </member>
       <member name="custom"
               value="30723"
               c:identifier="GST_QUERY_CUSTOM"
               glib:nick="custom">
-        <doc xml:space="preserve">a custom application or element defined query.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstquery.h"
+             line="93">a custom application or element defined query.</doc>
       </member>
       <member name="uri"
               value="33283"
               c:identifier="GST_QUERY_URI"
               glib:nick="uri">
-        <doc xml:space="preserve">query the URI of the source or sink.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstquery.h"
+             line="94">query the URI of the source or sink.</doc>
       </member>
       <member name="allocation"
               value="35846"
               c:identifier="GST_QUERY_ALLOCATION"
               glib:nick="allocation">
-        <doc xml:space="preserve">the buffer allocation properties</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstquery.h"
+             line="95">the buffer allocation properties</doc>
       </member>
       <member name="scheduling"
               value="38401"
               c:identifier="GST_QUERY_SCHEDULING"
               glib:nick="scheduling">
-        <doc xml:space="preserve">the scheduling properties</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstquery.h"
+             line="96">the scheduling properties</doc>
       </member>
       <member name="accept_caps"
               value="40963"
               c:identifier="GST_QUERY_ACCEPT_CAPS"
               glib:nick="accept-caps">
-        <doc xml:space="preserve">the accept caps query</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstquery.h"
+             line="97">the accept caps query</doc>
       </member>
       <member name="caps"
               value="43523"
               c:identifier="GST_QUERY_CAPS"
               glib:nick="caps">
-        <doc xml:space="preserve">the caps query</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstquery.h"
+             line="98">the caps query</doc>
       </member>
       <member name="drain"
               value="46086"
               c:identifier="GST_QUERY_DRAIN"
               glib:nick="drain">
-        <doc xml:space="preserve">wait till all serialized data is consumed downstream</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstquery.h"
+             line="99">wait till all serialized data is consumed downstream</doc>
       </member>
       <member name="context"
               value="48643"
               c:identifier="GST_QUERY_CONTEXT"
               glib:nick="context">
-        <doc xml:space="preserve">query the pipeline-local context from
+        <doc xml:space="preserve"
+             filename="gst/gstquery.h"
+             line="100">query the pipeline-local context from
     downstream or upstream (since 1.2)</doc>
       </member>
       <member name="bitrate"
               value="51202"
               c:identifier="GST_QUERY_BITRATE"
               glib:nick="bitrate">
-        <doc xml:space="preserve">the bitrate query (since 1.16)</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstquery.h"
+             line="102">the bitrate query (since 1.16)</doc>
       </member>
       <function name="get_flags" c:identifier="gst_query_type_get_flags">
-        <doc xml:space="preserve">Gets the #GstQueryTypeFlags associated with @type.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstQueryTypeFlags.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="169">Gets the #GstQueryTypeFlags associated with @type.</doc>
+        <source-position filename="gst/gstquery.h" line="225"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstquery.c"
+               line="175">a #GstQueryTypeFlags.</doc>
           <type name="QueryTypeFlags" c:type="GstQueryTypeFlags"/>
         </return-value>
         <parameters>
           <parameter name="type" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstQueryType</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="171">a #GstQueryType</doc>
             <type name="QueryType" c:type="GstQueryType"/>
           </parameter>
         </parameters>
       </function>
       <function name="get_name" c:identifier="gst_query_type_get_name">
-        <doc xml:space="preserve">Get a printable name for the given query type. Do not modify or free.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a reference to the static name of the query.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="129">Get a printable name for the given query type. Do not modify or free.</doc>
+        <source-position filename="gst/gstquery.h" line="218"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstquery.c"
+               line="135">a reference to the static name of the query.</doc>
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
         <parameters>
           <parameter name="type" transfer-ownership="none">
-            <doc xml:space="preserve">the query type</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="131">the query type</doc>
             <type name="QueryType" c:type="GstQueryType"/>
           </parameter>
         </parameters>
       </function>
       <function name="to_quark" c:identifier="gst_query_type_to_quark">
-        <doc xml:space="preserve">Get the unique quark for the given query type.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the quark associated with the query type</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="149">Get the unique quark for the given query type.</doc>
+        <source-position filename="gst/gstquery.h" line="221"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstquery.c"
+               line="155">the quark associated with the query type</doc>
           <type name="GLib.Quark" c:type="GQuark"/>
         </return-value>
         <parameters>
           <parameter name="type" transfer-ownership="none">
-            <doc xml:space="preserve">the query type</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstquery.c"
+                 line="151">the query type</doc>
             <type name="QueryType" c:type="GstQueryType"/>
           </parameter>
         </parameters>
@@ -34636,34 +53074,460 @@ to permanent or not.</doc>
               glib:type-name="GstQueryTypeFlags"
               glib:get-type="gst_query_type_flags_get_type"
               c:type="GstQueryTypeFlags">
-      <doc xml:space="preserve">#GstQueryTypeFlags indicate the aspects of the different #GstQueryType
+      <doc xml:space="preserve"
+           filename="gst/gstquery.h"
+           line="39">#GstQueryTypeFlags indicate the aspects of the different #GstQueryType
 values. You can get the type flags of a #GstQueryType with the
 gst_query_type_get_flags() function.</doc>
       <member name="upstream"
               value="1"
               c:identifier="GST_QUERY_TYPE_UPSTREAM"
               glib:nick="upstream">
-        <doc xml:space="preserve">Set if the query can travel upstream.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstquery.h"
+             line="41">Set if the query can travel upstream.</doc>
       </member>
       <member name="downstream"
               value="2"
               c:identifier="GST_QUERY_TYPE_DOWNSTREAM"
               glib:nick="downstream">
-        <doc xml:space="preserve">Set if the query can travel downstream.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstquery.h"
+             line="42">Set if the query can travel downstream.</doc>
       </member>
       <member name="serialized"
               value="4"
               c:identifier="GST_QUERY_TYPE_SERIALIZED"
               glib:nick="serialized">
-        <doc xml:space="preserve">Set if the query should be serialized with data
+        <doc xml:space="preserve"
+             filename="gst/gstquery.h"
+             line="43">Set if the query should be serialized with data
                               flow.</doc>
       </member>
     </bitfield>
+    <function-macro name="READ_UINT16_BE"
+                    c:identifier="GST_READ_UINT16_BE"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstutils.h"
+           line="340">Read a 16 bit unsigned integer value in big endian format from the memory buffer.</doc>
+      <source-position filename="gst/gstutils.h" line="354"/>
+      <parameters>
+        <parameter name="data">
+          <doc xml:space="preserve"
+               filename="gst/gstutils.h"
+               line="342">memory location</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="READ_UINT16_LE"
+                    c:identifier="GST_READ_UINT16_LE"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstutils.h"
+           line="346">Read a 16 bit unsigned integer value in little endian format from the memory buffer.</doc>
+      <source-position filename="gst/gstutils.h" line="355"/>
+      <parameters>
+        <parameter name="data">
+          <doc xml:space="preserve"
+               filename="gst/gstutils.h"
+               line="348">memory location</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="READ_UINT24_BE"
+                    c:identifier="GST_READ_UINT24_BE"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstutils.h"
+           line="310">Read a 24 bit unsigned integer value in big endian format from the memory buffer.</doc>
+      <source-position filename="gst/gstutils.h" line="320"/>
+      <parameters>
+        <parameter name="data">
+          <doc xml:space="preserve"
+               filename="gst/gstutils.h"
+               line="312">memory location</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="READ_UINT24_LE"
+                    c:identifier="GST_READ_UINT24_LE"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstutils.h"
+           line="325">Read a 24 bit unsigned integer value in little endian format from the memory buffer.</doc>
+      <source-position filename="gst/gstutils.h" line="335"/>
+      <parameters>
+        <parameter name="data">
+          <doc xml:space="preserve"
+               filename="gst/gstutils.h"
+               line="327">memory location</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="READ_UINT32_BE"
+                    c:identifier="GST_READ_UINT32_BE"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstutils.h"
+           line="268">Read a 32 bit unsigned integer value in big endian format from the memory buffer.</doc>
+      <source-position filename="gst/gstutils.h" line="283"/>
+      <parameters>
+        <parameter name="data">
+          <doc xml:space="preserve"
+               filename="gst/gstutils.h"
+               line="270">memory location</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="READ_UINT32_LE"
+                    c:identifier="GST_READ_UINT32_LE"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstutils.h"
+           line="275">Read a 32 bit unsigned integer value in little endian format from the memory buffer.</doc>
+      <source-position filename="gst/gstutils.h" line="284"/>
+      <parameters>
+        <parameter name="data">
+          <doc xml:space="preserve"
+               filename="gst/gstutils.h"
+               line="277">memory location</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="READ_UINT64_BE"
+                    c:identifier="GST_READ_UINT64_BE"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstutils.h"
+           line="218">Read a 64 bit unsigned integer value in big endian format from the memory buffer.</doc>
+      <source-position filename="gst/gstutils.h" line="233"/>
+      <parameters>
+        <parameter name="data">
+          <doc xml:space="preserve"
+               filename="gst/gstutils.h"
+               line="220">memory location</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="READ_UINT64_LE"
+                    c:identifier="GST_READ_UINT64_LE"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstutils.h"
+           line="225">Read a 64 bit unsigned integer value in little endian format from the memory buffer.</doc>
+      <source-position filename="gst/gstutils.h" line="234"/>
+      <parameters>
+        <parameter name="data">
+          <doc xml:space="preserve"
+               filename="gst/gstutils.h"
+               line="227">memory location</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="READ_UINT8"
+                    c:identifier="GST_READ_UINT8"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstutils.h"
+           line="377">Read an 8 bit unsigned integer value from the memory buffer.</doc>
+      <source-position filename="gst/gstutils.h" line="383"/>
+      <parameters>
+        <parameter name="data">
+          <doc xml:space="preserve"
+               filename="gst/gstutils.h"
+               line="379">memory location</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="REGISTRY"
+                    c:identifier="GST_REGISTRY"
+                    introspectable="0">
+      <source-position filename="gst/gstregistry.h" line="34"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="REGISTRY_CLASS"
+                    c:identifier="GST_REGISTRY_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gstregistry.h" line="36"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="REGISTRY_GET_CLASS"
+                    c:identifier="GST_REGISTRY_GET_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gstregistry.h" line="38"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="ROUND_DOWN_128"
+                    c:identifier="GST_ROUND_DOWN_128"
+                    version="1.4"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstutils.h"
+           line="954">Rounds an integer value down to the next multiple of 128.</doc>
+      <source-position filename="gst/gstutils.h" line="961"/>
+      <parameters>
+        <parameter name="num">
+          <doc xml:space="preserve"
+               filename="gst/gstutils.h"
+               line="956">integer value to round down</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="ROUND_DOWN_16"
+                    c:identifier="GST_ROUND_DOWN_16"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstutils.h"
+           line="933">Rounds an integer value down to the next multiple of 16.</doc>
+      <source-position filename="gst/gstutils.h" line="939"/>
+      <parameters>
+        <parameter name="num">
+          <doc xml:space="preserve"
+               filename="gst/gstutils.h"
+               line="935">integer value to round down</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="ROUND_DOWN_2"
+                    c:identifier="GST_ROUND_DOWN_2"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstutils.h"
+           line="912">Rounds an integer value down to the next multiple of 2.</doc>
+      <source-position filename="gst/gstutils.h" line="918"/>
+      <parameters>
+        <parameter name="num">
+          <doc xml:space="preserve"
+               filename="gst/gstutils.h"
+               line="914">integer value to round down</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="ROUND_DOWN_32"
+                    c:identifier="GST_ROUND_DOWN_32"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstutils.h"
+           line="940">Rounds an integer value down to the next multiple of 32.</doc>
+      <source-position filename="gst/gstutils.h" line="946"/>
+      <parameters>
+        <parameter name="num">
+          <doc xml:space="preserve"
+               filename="gst/gstutils.h"
+               line="942">integer value to round down</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="ROUND_DOWN_4"
+                    c:identifier="GST_ROUND_DOWN_4"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstutils.h"
+           line="919">Rounds an integer value down to the next multiple of 4.</doc>
+      <source-position filename="gst/gstutils.h" line="925"/>
+      <parameters>
+        <parameter name="num">
+          <doc xml:space="preserve"
+               filename="gst/gstutils.h"
+               line="921">integer value to round down</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="ROUND_DOWN_64"
+                    c:identifier="GST_ROUND_DOWN_64"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstutils.h"
+           line="947">Rounds an integer value down to the next multiple of 64.</doc>
+      <source-position filename="gst/gstutils.h" line="953"/>
+      <parameters>
+        <parameter name="num">
+          <doc xml:space="preserve"
+               filename="gst/gstutils.h"
+               line="949">integer value to round down</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="ROUND_DOWN_8"
+                    c:identifier="GST_ROUND_DOWN_8"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstutils.h"
+           line="926">Rounds an integer value down to the next multiple of 8.</doc>
+      <source-position filename="gst/gstutils.h" line="932"/>
+      <parameters>
+        <parameter name="num">
+          <doc xml:space="preserve"
+               filename="gst/gstutils.h"
+               line="928">integer value to round down</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="ROUND_DOWN_N"
+                    c:identifier="GST_ROUND_DOWN_N"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstutils.h"
+           line="962">Rounds an integer value down to the next multiple of @align. @align MUST be a
+power of two.</doc>
+      <source-position filename="gst/gstutils.h" line="970"/>
+      <parameters>
+        <parameter name="num">
+          <doc xml:space="preserve"
+               filename="gst/gstutils.h"
+               line="964">integrer value to round down</doc>
+        </parameter>
+        <parameter name="align">
+          <doc xml:space="preserve"
+               filename="gst/gstutils.h"
+               line="965">a power of two to round down to</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="ROUND_UP_128"
+                    c:identifier="GST_ROUND_UP_128"
+                    version="1.4"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstutils.h"
+           line="893">Rounds an integer value up to the next multiple of 128.</doc>
+      <source-position filename="gst/gstutils.h" line="900"/>
+      <parameters>
+        <parameter name="num">
+          <doc xml:space="preserve"
+               filename="gst/gstutils.h"
+               line="895">integer value to round up</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="ROUND_UP_16"
+                    c:identifier="GST_ROUND_UP_16"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstutils.h"
+           line="872">Rounds an integer value up to the next multiple of 16.</doc>
+      <source-position filename="gst/gstutils.h" line="878"/>
+      <parameters>
+        <parameter name="num">
+          <doc xml:space="preserve"
+               filename="gst/gstutils.h"
+               line="874">integer value to round up</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="ROUND_UP_2"
+                    c:identifier="GST_ROUND_UP_2"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstutils.h"
+           line="851">Rounds an integer value up to the next multiple of 2.</doc>
+      <source-position filename="gst/gstutils.h" line="857"/>
+      <parameters>
+        <parameter name="num">
+          <doc xml:space="preserve"
+               filename="gst/gstutils.h"
+               line="853">integer value to round up</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="ROUND_UP_32"
+                    c:identifier="GST_ROUND_UP_32"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstutils.h"
+           line="879">Rounds an integer value up to the next multiple of 32.</doc>
+      <source-position filename="gst/gstutils.h" line="885"/>
+      <parameters>
+        <parameter name="num">
+          <doc xml:space="preserve"
+               filename="gst/gstutils.h"
+               line="881">integer value to round up</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="ROUND_UP_4"
+                    c:identifier="GST_ROUND_UP_4"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstutils.h"
+           line="858">Rounds an integer value up to the next multiple of 4.</doc>
+      <source-position filename="gst/gstutils.h" line="864"/>
+      <parameters>
+        <parameter name="num">
+          <doc xml:space="preserve"
+               filename="gst/gstutils.h"
+               line="860">integer value to round up</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="ROUND_UP_64"
+                    c:identifier="GST_ROUND_UP_64"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstutils.h"
+           line="886">Rounds an integer value up to the next multiple of 64.</doc>
+      <source-position filename="gst/gstutils.h" line="892"/>
+      <parameters>
+        <parameter name="num">
+          <doc xml:space="preserve"
+               filename="gst/gstutils.h"
+               line="888">integer value to round up</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="ROUND_UP_8"
+                    c:identifier="GST_ROUND_UP_8"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstutils.h"
+           line="865">Rounds an integer value up to the next multiple of 8.</doc>
+      <source-position filename="gst/gstutils.h" line="871"/>
+      <parameters>
+        <parameter name="num">
+          <doc xml:space="preserve"
+               filename="gst/gstutils.h"
+               line="867">integer value to round up</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="ROUND_UP_N"
+                    c:identifier="GST_ROUND_UP_N"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstutils.h"
+           line="901">Rounds an integer value up to the next multiple of @align. @align MUST be a
+power of two.</doc>
+      <source-position filename="gst/gstutils.h" line="909"/>
+      <parameters>
+        <parameter name="num">
+          <doc xml:space="preserve"
+               filename="gst/gstutils.h"
+               line="903">integrer value to round up</doc>
+        </parameter>
+        <parameter name="align">
+          <doc xml:space="preserve"
+               filename="gst/gstutils.h"
+               line="904">a power of two to round up to</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
     <enumeration name="Rank"
                  glib:type-name="GstRank"
                  glib:get-type="gst_rank_get_type"
                  c:type="GstRank">
-      <doc xml:space="preserve">Element priority ranks. Defines the order in which the autoplugger (or
+      <doc xml:space="preserve"
+           filename="gst/gstpluginfeature.h"
+           line="49">Element priority ranks. Defines the order in which the autoplugger (or
 similar rank-picking mechanisms, such as e.g. gst_element_make_from_uri())
 will choose this element over an alternative one with the same function.
 
@@ -34674,31 +53538,41 @@ These constants serve as a rough guidance for defining the rank of a
               value="0"
               c:identifier="GST_RANK_NONE"
               glib:nick="none">
-        <doc xml:space="preserve">will be chosen last or not at all</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpluginfeature.h"
+             line="51">will be chosen last or not at all</doc>
       </member>
       <member name="marginal"
               value="64"
               c:identifier="GST_RANK_MARGINAL"
               glib:nick="marginal">
-        <doc xml:space="preserve">unlikely to be chosen</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpluginfeature.h"
+             line="52">unlikely to be chosen</doc>
       </member>
       <member name="secondary"
               value="128"
               c:identifier="GST_RANK_SECONDARY"
               glib:nick="secondary">
-        <doc xml:space="preserve">likely to be chosen</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpluginfeature.h"
+             line="53">likely to be chosen</doc>
       </member>
       <member name="primary"
               value="256"
               c:identifier="GST_RANK_PRIMARY"
               glib:nick="primary">
-        <doc xml:space="preserve">will be chosen first</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpluginfeature.h"
+             line="54">will be chosen first</doc>
       </member>
     </enumeration>
     <record name="ReferenceTimestampMeta"
             c:type="GstReferenceTimestampMeta"
             version="1.14">
-      <doc xml:space="preserve">#GstReferenceTimestampMeta can be used to attach alternative timestamps and
+      <doc xml:space="preserve"
+           filename="gst/gstbuffer.h"
+           line="750">#GstReferenceTimestampMeta can be used to attach alternative timestamps and
 possibly durations to a #GstBuffer. These are generally not according to
 the pipeline clock and could be e.g. the NTP timestamp when the media was
 captured.
@@ -34708,28 +53582,42 @@ references would be "timestamp/x-drivername-stream" for timestamps that are loca
 generated by some driver named "drivername" when generating the stream,
 e.g. based on a frame counter, or "timestamp/x-ntp, host=pool.ntp.org,
 port=123" for timestamps based on a specific NTP server.</doc>
+      <source-position filename="gst/gstbuffer.h" line="777"/>
       <field name="parent" writable="1">
-        <doc xml:space="preserve">the parent #GstMeta structure</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.h"
+             line="752">the parent #GstMeta structure</doc>
         <type name="Meta" c:type="GstMeta"/>
       </field>
       <field name="reference" writable="1">
-        <doc xml:space="preserve">identifier for the timestamp reference.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.h"
+             line="753">identifier for the timestamp reference.</doc>
         <type name="Caps" c:type="GstCaps*"/>
       </field>
       <field name="timestamp" writable="1">
-        <doc xml:space="preserve">timestamp</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.h"
+             line="754">timestamp</doc>
         <type name="ClockTime" c:type="GstClockTime"/>
       </field>
       <field name="duration" writable="1">
-        <doc xml:space="preserve">duration, or %GST_CLOCK_TIME_NONE</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.h"
+             line="755">duration, or %GST_CLOCK_TIME_NONE</doc>
         <type name="ClockTime" c:type="GstClockTime"/>
       </field>
       <function name="get_info"
                 c:identifier="gst_reference_timestamp_meta_get_info"
                 version="1.14">
-        <doc xml:space="preserve">Get the global #GstMetaInfo describing  the #GstReferenceTimestampMeta meta.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The #GstMetaInfo</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.c"
+             line="2844">Get the global #GstMetaInfo describing  the #GstReferenceTimestampMeta meta.</doc>
+        <source-position filename="gst/gstbuffer.h" line="784"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstbuffer.c"
+               line="2849">The #GstMetaInfo</doc>
           <type name="MetaInfo" c:type="const GstMetaInfo*"/>
         </return-value>
       </function>
@@ -34741,7 +53629,9 @@ port=123" for timestamps based on a specific NTP server.</doc>
            glib:type-name="GstRegistry"
            glib:get-type="gst_registry_get_type"
            glib:type-struct="RegistryClass">
-      <doc xml:space="preserve">One registry holds the metadata of a set of plugins.
+      <doc xml:space="preserve"
+           filename="gst/gstregistry.c"
+           line="24">One registry holds the metadata of a set of plugins.
 
 &lt;emphasis role="bold"&gt;Design:&lt;/emphasis&gt;
 
@@ -34799,128 +53689,182 @@ different sets of plugins. For various reasons, at init time, the cache is
 stored in the default registry, and plugins not relevant to the current
 process are marked with the %GST_PLUGIN_FLAG_CACHED bit. These plugins are
 removed at the end of initialization.</doc>
+      <source-position filename="gst/gstregistry.h" line="58"/>
       <function name="fork_is_enabled"
                 c:identifier="gst_registry_fork_is_enabled">
-        <doc xml:space="preserve">By default GStreamer will perform scanning and rebuilding of the
+        <doc xml:space="preserve"
+             filename="gst/gstregistry.c"
+             line="1783">By default GStreamer will perform scanning and rebuilding of the
 registry file using a helper child process.
 
 Applications might want to disable this behaviour with the
 gst_registry_fork_set_enabled() function, in which case new plugins
 are scanned (and loaded) into the application process.</doc>
+        <source-position filename="gst/gst.h" line="128"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if GStreamer will use the child helper process when
+          <doc xml:space="preserve"
+               filename="gst/gstregistry.c"
+               line="1793">%TRUE if GStreamer will use the child helper process when
 rebuilding the registry.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
       </function>
       <function name="fork_set_enabled"
                 c:identifier="gst_registry_fork_set_enabled">
-        <doc xml:space="preserve">Applications might want to disable/enable spawning of a child helper process
+        <doc xml:space="preserve"
+             filename="gst/gstregistry.c"
+             line="1802">Applications might want to disable/enable spawning of a child helper process
 when rebuilding the registry. See gst_registry_fork_is_enabled() for more
 information.</doc>
+        <source-position filename="gst/gst.h" line="131"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <parameter name="enabled" transfer-ownership="none">
-            <doc xml:space="preserve">whether rebuilding the registry can use a temporary child helper process.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstregistry.c"
+                 line="1804">whether rebuilding the registry can use a temporary child helper process.</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </function>
       <function name="get" c:identifier="gst_registry_get">
-        <doc xml:space="preserve">Retrieves the singleton plugin registry. The caller does not own a
+        <doc xml:space="preserve"
+             filename="gst/gstregistry.c"
+             line="309">Retrieves the singleton plugin registry. The caller does not own a
 reference on the registry, as it is alive as long as GStreamer is
 initialized.</doc>
+        <source-position filename="gst/gstregistry.h" line="64"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the #GstRegistry.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstregistry.c"
+               line="316">the #GstRegistry.</doc>
           <type name="Registry" c:type="GstRegistry*"/>
         </return-value>
       </function>
       <method name="add_feature" c:identifier="gst_registry_add_feature">
-        <doc xml:space="preserve">Add the feature to the registry. The feature-added signal will be emitted.
+        <doc xml:space="preserve"
+             filename="gst/gstregistry.c"
+             line="539">Add the feature to the registry. The feature-added signal will be emitted.
 
 @feature's reference count will be incremented, and any floating
 reference will be removed (see gst_object_ref_sink())</doc>
+        <source-position filename="gst/gstregistry.h" line="81"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE on success.
+          <doc xml:space="preserve"
+               filename="gst/gstregistry.c"
+               line="549">%TRUE on success.
 
 MT safe.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="registry" transfer-ownership="none">
-            <doc xml:space="preserve">the registry to add the plugin to</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstregistry.c"
+                 line="541">the registry to add the plugin to</doc>
             <type name="Registry" c:type="GstRegistry*"/>
           </instance-parameter>
           <parameter name="feature" transfer-ownership="none">
-            <doc xml:space="preserve">the feature to add</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstregistry.c"
+                 line="542">the feature to add</doc>
             <type name="PluginFeature" c:type="GstPluginFeature*"/>
           </parameter>
         </parameters>
       </method>
       <method name="add_plugin" c:identifier="gst_registry_add_plugin">
-        <doc xml:space="preserve">Add the plugin to the registry. The plugin-added signal will be emitted.
+        <doc xml:space="preserve"
+             filename="gst/gstregistry.c"
+             line="405">Add the plugin to the registry. The plugin-added signal will be emitted.
 
 @plugin's reference count will be incremented, and any floating
 reference will be removed (see gst_object_ref_sink())</doc>
+        <source-position filename="gst/gstregistry.h" line="75"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE on success.
+          <doc xml:space="preserve"
+               filename="gst/gstregistry.c"
+               line="415">%TRUE on success.
 
 MT safe.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="registry" transfer-ownership="none">
-            <doc xml:space="preserve">the registry to add the plugin to</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstregistry.c"
+                 line="407">the registry to add the plugin to</doc>
             <type name="Registry" c:type="GstRegistry*"/>
           </instance-parameter>
           <parameter name="plugin" transfer-ownership="none">
-            <doc xml:space="preserve">the plugin to add</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstregistry.c"
+                 line="408">the plugin to add</doc>
             <type name="Plugin" c:type="GstPlugin*"/>
           </parameter>
         </parameters>
       </method>
       <method name="check_feature_version"
               c:identifier="gst_registry_check_feature_version">
-        <doc xml:space="preserve">Checks whether a plugin feature by the given name exists in
+        <doc xml:space="preserve"
+             filename="gst/gstregistry.c"
+             line="1467">Checks whether a plugin feature by the given name exists in
 @registry and whether its version is at least the
 version required.</doc>
+        <source-position filename="gst/gstregistry.h" line="121"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the feature could be found and the version is
+          <doc xml:space="preserve"
+               filename="gst/gstregistry.c"
+               line="1479">%TRUE if the feature could be found and the version is
 the same as the required version or newer, and %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="registry" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRegistry</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstregistry.c"
+                 line="1469">a #GstRegistry</doc>
             <type name="Registry" c:type="GstRegistry*"/>
           </instance-parameter>
           <parameter name="feature_name" transfer-ownership="none">
-            <doc xml:space="preserve">the name of the feature (e.g. "oggdemux")</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstregistry.c"
+                 line="1470">the name of the feature (e.g. "oggdemux")</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="min_major" transfer-ownership="none">
-            <doc xml:space="preserve">the minimum major version number</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstregistry.c"
+                 line="1471">the minimum major version number</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="min_minor" transfer-ownership="none">
-            <doc xml:space="preserve">the minimum minor version number</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstregistry.c"
+                 line="1472">the minimum minor version number</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="min_micro" transfer-ownership="none">
-            <doc xml:space="preserve">the minimum micro version number</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstregistry.c"
+                 line="1473">the minimum micro version number</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="feature_filter" c:identifier="gst_registry_feature_filter">
-        <doc xml:space="preserve">Runs a filter against all features of the plugins in the registry
+        <doc xml:space="preserve"
+             filename="gst/gstregistry.c"
+             line="806">Runs a filter against all features of the plugins in the registry
 and returns a GList with the results.
 If the first flag is set, only the first match is
 returned (as a list with a single object).</doc>
+        <source-position filename="gst/gstregistry.h" line="95"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a #GList of
+          <doc xml:space="preserve"
+               filename="gst/gstregistry.c"
+               line="818">a #GList of
     #GstPluginFeature. Use gst_plugin_feature_list_free() after usage.
 
 MT safe.</doc>
@@ -34930,33 +53874,46 @@ MT safe.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="registry" transfer-ownership="none">
-            <doc xml:space="preserve">registry to query</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstregistry.c"
+                 line="808">registry to query</doc>
             <type name="Registry" c:type="GstRegistry*"/>
           </instance-parameter>
           <parameter name="filter"
                      transfer-ownership="none"
                      scope="call"
                      closure="2">
-            <doc xml:space="preserve">the filter to use</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstregistry.c"
+                 line="809">the filter to use</doc>
             <type name="PluginFeatureFilter" c:type="GstPluginFeatureFilter"/>
           </parameter>
           <parameter name="first" transfer-ownership="none">
-            <doc xml:space="preserve">only return first match</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstregistry.c"
+                 line="810">only return first match</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
           <parameter name="user_data"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">user data passed to the filter function</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstregistry.c"
+                 line="811">user data passed to the filter function</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
         </parameters>
       </method>
       <method name="find_feature" c:identifier="gst_registry_find_feature">
-        <doc xml:space="preserve">Find the pluginfeature with the given name and type in the registry.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstregistry.c"
+             line="896">Find the pluginfeature with the given name and type in the registry.</doc>
+        <source-position filename="gst/gstregistry.h" line="112"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">the pluginfeature with the
+          <doc xml:space="preserve"
+               filename="gst/gstregistry.c"
+               line="904">the pluginfeature with the
     given name and type or %NULL if the plugin was not
     found. gst_object_unref() after usage.
 
@@ -34965,24 +53922,35 @@ MT safe.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="registry" transfer-ownership="none">
-            <doc xml:space="preserve">the registry to search</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstregistry.c"
+                 line="898">the registry to search</doc>
             <type name="Registry" c:type="GstRegistry*"/>
           </instance-parameter>
           <parameter name="name" transfer-ownership="none">
-            <doc xml:space="preserve">the pluginfeature name to find</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstregistry.c"
+                 line="899">the pluginfeature name to find</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="type" transfer-ownership="none">
-            <doc xml:space="preserve">the pluginfeature type to find</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstregistry.c"
+                 line="900">the pluginfeature type to find</doc>
             <type name="GType" c:type="GType"/>
           </parameter>
         </parameters>
       </method>
       <method name="find_plugin" c:identifier="gst_registry_find_plugin">
-        <doc xml:space="preserve">Find the plugin with the given name in the registry.
+        <doc xml:space="preserve"
+             filename="gst/gstregistry.c"
+             line="861">Find the plugin with the given name in the registry.
 The plugin will be reffed; caller is responsible for unreffing.</doc>
+        <source-position filename="gst/gstregistry.h" line="109"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">the plugin with the given name
+          <doc xml:space="preserve"
+               filename="gst/gstregistry.c"
+               line="869">the plugin with the given name
     or %NULL if the plugin was not found. gst_object_unref() after
     usage.
 
@@ -34991,20 +53959,29 @@ MT safe.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="registry" transfer-ownership="none">
-            <doc xml:space="preserve">the registry to search</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstregistry.c"
+                 line="863">the registry to search</doc>
             <type name="Registry" c:type="GstRegistry*"/>
           </instance-parameter>
           <parameter name="name" transfer-ownership="none">
-            <doc xml:space="preserve">the plugin name to find</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstregistry.c"
+                 line="864">the plugin name to find</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_feature_list"
               c:identifier="gst_registry_get_feature_list">
-        <doc xml:space="preserve">Retrieves a #GList of #GstPluginFeature of @type.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstregistry.c"
+             line="929">Retrieves a #GList of #GstPluginFeature of @type.</doc>
+        <source-position filename="gst/gstregistry.h" line="100"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a #GList of
+          <doc xml:space="preserve"
+               filename="gst/gstregistry.c"
+               line="936">a #GList of
     #GstPluginFeature of @type. Use gst_plugin_feature_list_free() after use
 
 MT safe.</doc>
@@ -35014,20 +53991,29 @@ MT safe.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="registry" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRegistry</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstregistry.c"
+                 line="931">a #GstRegistry</doc>
             <type name="Registry" c:type="GstRegistry*"/>
           </instance-parameter>
           <parameter name="type" transfer-ownership="none">
-            <doc xml:space="preserve">a #GType.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstregistry.c"
+                 line="932">a #GType.</doc>
             <type name="GType" c:type="GType"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_feature_list_by_plugin"
               c:identifier="gst_registry_get_feature_list_by_plugin">
-        <doc xml:space="preserve">Retrieves a #GList of features of the plugin with name @name.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstregistry.c"
+             line="1411">Retrieves a #GList of features of the plugin with name @name.</doc>
+        <source-position filename="gst/gstregistry.h" line="103"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a #GList of
+          <doc xml:space="preserve"
+               filename="gst/gstregistry.c"
+               line="1418">a #GList of
     #GstPluginFeature. Use gst_plugin_feature_list_free() after usage.</doc>
           <type name="GLib.List" c:type="GList*">
             <type name="PluginFeature"/>
@@ -35035,36 +54021,52 @@ MT safe.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="registry" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRegistry.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstregistry.c"
+                 line="1413">a #GstRegistry.</doc>
             <type name="Registry" c:type="GstRegistry*"/>
           </instance-parameter>
           <parameter name="name" transfer-ownership="none">
-            <doc xml:space="preserve">a plugin name.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstregistry.c"
+                 line="1414">a plugin name.</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_feature_list_cookie"
               c:identifier="gst_registry_get_feature_list_cookie">
-        <doc xml:space="preserve">Returns the registry's feature list cookie. This changes
+        <doc xml:space="preserve"
+             filename="gst/gstregistry.c"
+             line="1875">Returns the registry's feature list cookie. This changes
 every time a feature is added or removed from the registry.</doc>
+        <source-position filename="gst/gstregistry.h" line="106"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the feature list cookie.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstregistry.c"
+               line="1882">the feature list cookie.</doc>
           <type name="guint32" c:type="guint32"/>
         </return-value>
         <parameters>
           <instance-parameter name="registry" transfer-ownership="none">
-            <doc xml:space="preserve">the registry</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstregistry.c"
+                 line="1877">the registry</doc>
             <type name="Registry" c:type="GstRegistry*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_plugin_list"
               c:identifier="gst_registry_get_plugin_list">
-        <doc xml:space="preserve">Get a copy of all plugins registered in the given registry. The refcount
+        <doc xml:space="preserve"
+             filename="gst/gstregistry.c"
+             line="965">Get a copy of all plugins registered in the given registry. The refcount
 of each element in the list in incremented.</doc>
+        <source-position filename="gst/gstregistry.h" line="87"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a #GList of #GstPlugin.
+          <doc xml:space="preserve"
+               filename="gst/gstregistry.c"
+               line="972">a #GList of #GstPlugin.
     Use gst_plugin_list_free() after usage.
 
 MT safe.</doc>
@@ -35074,34 +54076,50 @@ MT safe.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="registry" transfer-ownership="none">
-            <doc xml:space="preserve">the registry to search</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstregistry.c"
+                 line="967">the registry to search</doc>
             <type name="Registry" c:type="GstRegistry*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="lookup" c:identifier="gst_registry_lookup">
-        <doc xml:space="preserve">Look up a plugin in the given registry with the given filename.
+        <doc xml:space="preserve"
+             filename="gst/gstregistry.c"
+             line="1050">Look up a plugin in the given registry with the given filename.
 If found, plugin is reffed.</doc>
+        <source-position filename="gst/gstregistry.h" line="115"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">the #GstPlugin if found, or
+          <doc xml:space="preserve"
+               filename="gst/gstregistry.c"
+               line="1058">the #GstPlugin if found, or
     %NULL if not.  gst_object_unref() after usage.</doc>
           <type name="Plugin" c:type="GstPlugin*"/>
         </return-value>
         <parameters>
           <instance-parameter name="registry" transfer-ownership="none">
-            <doc xml:space="preserve">the registry to look up in</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstregistry.c"
+                 line="1052">the registry to look up in</doc>
             <type name="Registry" c:type="GstRegistry*"/>
           </instance-parameter>
           <parameter name="filename" transfer-ownership="none">
-            <doc xml:space="preserve">the name of the file to look up</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstregistry.c"
+                 line="1053">the name of the file to look up</doc>
             <type name="utf8" c:type="const char*"/>
           </parameter>
         </parameters>
       </method>
       <method name="lookup_feature" c:identifier="gst_registry_lookup_feature">
-        <doc xml:space="preserve">Find a #GstPluginFeature with @name in @registry.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstregistry.c"
+             line="1001">Find a #GstPluginFeature with @name in @registry.</doc>
+        <source-position filename="gst/gstregistry.h" line="118"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a #GstPluginFeature with its refcount incremented,
+          <doc xml:space="preserve"
+               filename="gst/gstregistry.c"
+               line="1008">a #GstPluginFeature with its refcount incremented,
     use gst_object_unref() after usage.
 
 MT safe.</doc>
@@ -35109,23 +54127,32 @@ MT safe.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="registry" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRegistry</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstregistry.c"
+                 line="1003">a #GstRegistry</doc>
             <type name="Registry" c:type="GstRegistry*"/>
           </instance-parameter>
           <parameter name="name" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstPluginFeature name</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstregistry.c"
+                 line="1004">a #GstPluginFeature name</doc>
             <type name="utf8" c:type="const char*"/>
           </parameter>
         </parameters>
       </method>
       <method name="plugin_filter" c:identifier="gst_registry_plugin_filter">
-        <doc xml:space="preserve">Runs a filter against all plugins in the registry and returns a #GList with
+        <doc xml:space="preserve"
+             filename="gst/gstregistry.c"
+             line="628">Runs a filter against all plugins in the registry and returns a #GList with
 the results. If the first flag is set, only the first match is
 returned (as a list with a single object).
 Every plugin is reffed; use gst_plugin_list_free() after use, which
 will unref again.</doc>
+        <source-position filename="gst/gstregistry.h" line="90"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a #GList of #GstPlugin.
+          <doc xml:space="preserve"
+               filename="gst/gstregistry.c"
+               line="641">a #GList of #GstPlugin.
     Use gst_plugin_list_free() after usage.
 
 MT safe.</doc>
@@ -35135,79 +54162,110 @@ MT safe.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="registry" transfer-ownership="none">
-            <doc xml:space="preserve">registry to query</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstregistry.c"
+                 line="630">registry to query</doc>
             <type name="Registry" c:type="GstRegistry*"/>
           </instance-parameter>
           <parameter name="filter"
                      transfer-ownership="none"
                      scope="call"
                      closure="2">
-            <doc xml:space="preserve">the filter to use</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstregistry.c"
+                 line="631">the filter to use</doc>
             <type name="PluginFilter" c:type="GstPluginFilter"/>
           </parameter>
           <parameter name="first" transfer-ownership="none">
-            <doc xml:space="preserve">only return first match</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstregistry.c"
+                 line="632">only return first match</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
           <parameter name="user_data"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">user data passed to the filter function</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstregistry.c"
+                 line="633">user data passed to the filter function</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
         </parameters>
       </method>
       <method name="remove_feature" c:identifier="gst_registry_remove_feature">
-        <doc xml:space="preserve">Remove the feature from the registry.
+        <doc xml:space="preserve"
+             filename="gst/gstregistry.c"
+             line="601">Remove the feature from the registry.
 
 MT safe.</doc>
+        <source-position filename="gst/gstregistry.h" line="84"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="registry" transfer-ownership="none">
-            <doc xml:space="preserve">the registry to remove the feature from</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstregistry.c"
+                 line="603">the registry to remove the feature from</doc>
             <type name="Registry" c:type="GstRegistry*"/>
           </instance-parameter>
           <parameter name="feature" transfer-ownership="none">
-            <doc xml:space="preserve">the feature to remove</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstregistry.c"
+                 line="604">the feature to remove</doc>
             <type name="PluginFeature" c:type="GstPluginFeature*"/>
           </parameter>
         </parameters>
       </method>
       <method name="remove_plugin" c:identifier="gst_registry_remove_plugin">
-        <doc xml:space="preserve">Remove the plugin from the registry.
+        <doc xml:space="preserve"
+             filename="gst/gstregistry.c"
+             line="511">Remove the plugin from the registry.
 
 MT safe.</doc>
+        <source-position filename="gst/gstregistry.h" line="78"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="registry" transfer-ownership="none">
-            <doc xml:space="preserve">the registry to remove the plugin from</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstregistry.c"
+                 line="513">the registry to remove the plugin from</doc>
             <type name="Registry" c:type="GstRegistry*"/>
           </instance-parameter>
           <parameter name="plugin" transfer-ownership="none">
-            <doc xml:space="preserve">the plugin to remove</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstregistry.c"
+                 line="514">the plugin to remove</doc>
             <type name="Plugin" c:type="GstPlugin*"/>
           </parameter>
         </parameters>
       </method>
       <method name="scan_path" c:identifier="gst_registry_scan_path">
-        <doc xml:space="preserve">Scan the given path for plugins to add to the registry. The syntax of the
+        <doc xml:space="preserve"
+             filename="gst/gstregistry.c"
+             line="1375">Scan the given path for plugins to add to the registry. The syntax of the
 path is specific to the registry.</doc>
+        <source-position filename="gst/gstregistry.h" line="67"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if registry changed</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstregistry.c"
+               line="1383">%TRUE if registry changed</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="registry" transfer-ownership="none">
-            <doc xml:space="preserve">the registry to add found plugins to</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstregistry.c"
+                 line="1377">the registry to add found plugins to</doc>
             <type name="Registry" c:type="GstRegistry*"/>
           </instance-parameter>
           <parameter name="path" transfer-ownership="none">
-            <doc xml:space="preserve">the path to scan</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstregistry.c"
+                 line="1378">the path to scan</doc>
             <type name="filename" c:type="const gchar*"/>
           </parameter>
         </parameters>
@@ -35219,27 +54277,35 @@ path is specific to the registry.</doc>
         <type name="RegistryPrivate" c:type="GstRegistryPrivate*"/>
       </field>
       <glib:signal name="feature-added" when="last">
-        <doc xml:space="preserve">Signals that a feature has been added to the registry (possibly
+        <doc xml:space="preserve"
+             filename="gst/gstregistry.c"
+             line="220">Signals that a feature has been added to the registry (possibly
 replacing a previously-added one by the same name)</doc>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <parameter name="feature" transfer-ownership="none">
-            <doc xml:space="preserve">the feature that has been added</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstregistry.c"
+                 line="223">the feature that has been added</doc>
             <type name="PluginFeature"/>
           </parameter>
         </parameters>
       </glib:signal>
       <glib:signal name="plugin-added" when="last">
-        <doc xml:space="preserve">Signals that a plugin has been added to the registry (possibly
+        <doc xml:space="preserve"
+             filename="gst/gstregistry.c"
+             line="208">Signals that a plugin has been added to the registry (possibly
 replacing a previously-added one by the same name)</doc>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <parameter name="plugin" transfer-ownership="none">
-            <doc xml:space="preserve">the plugin that has been added</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstregistry.c"
+                 line="211">the plugin that has been added</doc>
             <type name="Plugin"/>
           </parameter>
         </parameters>
@@ -35248,158 +54314,540 @@ replacing a previously-added one by the same name)</doc>
     <record name="RegistryClass"
             c:type="GstRegistryClass"
             glib:is-gtype-struct-for="Registry">
+      <source-position filename="gst/gstregistry.h" line="58"/>
       <field name="parent_class">
         <type name="ObjectClass" c:type="GstObjectClass"/>
       </field>
     </record>
     <record name="RegistryPrivate" c:type="GstRegistryPrivate" disguised="1">
+      <source-position filename="gst/gstregistry.h" line="42"/>
     </record>
     <enumeration name="ResourceError"
                  glib:type-name="GstResourceError"
                  glib:get-type="gst_resource_error_get_type"
                  c:type="GstResourceError"
                  glib:error-domain="gst-resource-error-quark">
-      <doc xml:space="preserve">Resource errors are for any resource used by an element:
+      <doc xml:space="preserve"
+           filename="gst/gsterror.h"
+           line="108">Resource errors are for any resource used by an element:
 memory, files, network connections, process space, ...
 They're typically used by source and sink elements.</doc>
       <member name="failed"
               value="1"
               c:identifier="GST_RESOURCE_ERROR_FAILED"
               glib:nick="failed">
-        <doc xml:space="preserve">a general error which doesn't fit in any other
+        <doc xml:space="preserve"
+             filename="gst/gsterror.h"
+             line="110">a general error which doesn't fit in any other
 category.  Make sure you add a custom message to the error call.</doc>
       </member>
       <member name="too_lazy"
               value="2"
               c:identifier="GST_RESOURCE_ERROR_TOO_LAZY"
               glib:nick="too-lazy">
-        <doc xml:space="preserve">do not use this except as a placeholder for
+        <doc xml:space="preserve"
+             filename="gst/gsterror.h"
+             line="112">do not use this except as a placeholder for
 deciding where to go while developing code.</doc>
       </member>
       <member name="not_found"
               value="3"
               c:identifier="GST_RESOURCE_ERROR_NOT_FOUND"
               glib:nick="not-found">
-        <doc xml:space="preserve">used when the resource could not be found.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsterror.h"
+             line="114">used when the resource could not be found.</doc>
       </member>
       <member name="busy"
               value="4"
               c:identifier="GST_RESOURCE_ERROR_BUSY"
               glib:nick="busy">
-        <doc xml:space="preserve">used when resource is busy.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsterror.h"
+             line="115">used when resource is busy.</doc>
       </member>
       <member name="open_read"
               value="5"
               c:identifier="GST_RESOURCE_ERROR_OPEN_READ"
               glib:nick="open-read">
-        <doc xml:space="preserve">used when resource fails to open for reading.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsterror.h"
+             line="116">used when resource fails to open for reading.</doc>
       </member>
       <member name="open_write"
               value="6"
               c:identifier="GST_RESOURCE_ERROR_OPEN_WRITE"
               glib:nick="open-write">
-        <doc xml:space="preserve">used when resource fails to open for writing.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsterror.h"
+             line="117">used when resource fails to open for writing.</doc>
       </member>
       <member name="open_read_write"
               value="7"
               c:identifier="GST_RESOURCE_ERROR_OPEN_READ_WRITE"
               glib:nick="open-read-write">
-        <doc xml:space="preserve">used when resource cannot be opened for
+        <doc xml:space="preserve"
+             filename="gst/gsterror.h"
+             line="118">used when resource cannot be opened for
 both reading and writing, or either (but unspecified which).</doc>
       </member>
       <member name="close"
               value="8"
               c:identifier="GST_RESOURCE_ERROR_CLOSE"
               glib:nick="close">
-        <doc xml:space="preserve">used when the resource can't be closed.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsterror.h"
+             line="120">used when the resource can't be closed.</doc>
       </member>
       <member name="read"
               value="9"
               c:identifier="GST_RESOURCE_ERROR_READ"
               glib:nick="read">
-        <doc xml:space="preserve">used when the resource can't be read from.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsterror.h"
+             line="121">used when the resource can't be read from.</doc>
       </member>
       <member name="write"
               value="10"
               c:identifier="GST_RESOURCE_ERROR_WRITE"
               glib:nick="write">
-        <doc xml:space="preserve">used when the resource can't be written to.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsterror.h"
+             line="122">used when the resource can't be written to.</doc>
       </member>
       <member name="seek"
               value="11"
               c:identifier="GST_RESOURCE_ERROR_SEEK"
               glib:nick="seek">
-        <doc xml:space="preserve">used when a seek on the resource fails.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsterror.h"
+             line="123">used when a seek on the resource fails.</doc>
       </member>
       <member name="sync"
               value="12"
               c:identifier="GST_RESOURCE_ERROR_SYNC"
               glib:nick="sync">
-        <doc xml:space="preserve">used when a synchronize on the resource fails.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsterror.h"
+             line="124">used when a synchronize on the resource fails.</doc>
       </member>
       <member name="settings"
               value="13"
               c:identifier="GST_RESOURCE_ERROR_SETTINGS"
               glib:nick="settings">
-        <doc xml:space="preserve">used when settings can't be manipulated on.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsterror.h"
+             line="125">used when settings can't be manipulated on.</doc>
       </member>
       <member name="no_space_left"
               value="14"
               c:identifier="GST_RESOURCE_ERROR_NO_SPACE_LEFT"
               glib:nick="no-space-left">
-        <doc xml:space="preserve">used when the resource has no space left.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsterror.h"
+             line="126">used when the resource has no space left.</doc>
       </member>
       <member name="not_authorized"
               value="15"
               c:identifier="GST_RESOURCE_ERROR_NOT_AUTHORIZED"
               glib:nick="not-authorized">
-        <doc xml:space="preserve">used when the resource can't be opened
+        <doc xml:space="preserve"
+             filename="gst/gsterror.h"
+             line="127">used when the resource can't be opened
                                     due to missing authorization.
-                                    (Since 1.2.4)</doc>
+                                    (Since: 1.2.4)</doc>
       </member>
       <member name="num_errors"
               value="16"
               c:identifier="GST_RESOURCE_ERROR_NUM_ERRORS"
               glib:nick="num-errors">
-        <doc xml:space="preserve">the number of resource error types.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsterror.h"
+             line="130">the number of resource error types.</doc>
       </member>
       <function name="quark" c:identifier="gst_resource_error_quark">
+        <attribute name="doc.skip" value="true"/>
         <return-value transfer-ownership="none">
           <type name="GLib.Quark" c:type="GQuark"/>
         </return-value>
       </function>
     </enumeration>
+    <function-macro name="SAMPLE" c:identifier="GST_SAMPLE" introspectable="0">
+      <source-position filename="gst/gstsample.h" line="39"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="SAMPLE_CAST"
+                    c:identifier="GST_SAMPLE_CAST"
+                    introspectable="0">
+      <source-position filename="gst/gstsample.h" line="38"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
     <constant name="SECOND" value="1000000000" c:type="GST_SECOND">
-      <doc xml:space="preserve">Constant that defines one GStreamer second.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstclock.h"
+           line="98">Constant that defines one GStreamer second.</doc>
+      <source-position filename="gst/gstclock.h" line="103"/>
       <type name="ClockTimeDiff" c:type="GstClockTimeDiff"/>
     </constant>
     <constant name="SEGMENT_FORMAT"
               value="paB"
               c:type="GST_SEGMENT_FORMAT"
               introspectable="0">
-      <doc xml:space="preserve">printf format type used to debug GStreamer segments. You can use this in
+      <doc xml:space="preserve"
+           filename="gst/gstinfo.h"
+           line="294">printf format type used to debug GStreamer segments. You can use this in
 combination with GStreamer's debug logging system as well as the functions
 gst_info_vasprintf(), gst_info_strdup_vprintf() and gst_info_strdup_printf()
 to pretty-print #GstSegment structures.
 This can only be used on pointers to GstSegment structures.</doc>
+      <source-position filename="gst/gstinfo.h" line="303"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
+    <constant name="SEGMENT_INSTANT_FLAGS"
+              value="912"
+              c:type="GST_SEGMENT_INSTANT_FLAGS">
+      <source-position filename="gst/gstsegment.h" line="197"/>
+      <type name="gint" c:type="gint"/>
+    </constant>
     <constant name="SEQNUM_INVALID"
               value="0"
               c:type="GST_SEQNUM_INVALID"
               version="1.14">
-      <doc xml:space="preserve">A value which is guaranteed to never be returned by
+      <doc xml:space="preserve"
+           filename="gst/gstutils.h"
+           line="102">A value which is guaranteed to never be returned by
 gst_util_seqnum_next().
 
 Can be used as a default value in variables used to store seqnum.</doc>
+      <source-position filename="gst/gstutils.h" line="112"/>
       <type name="gint" c:type="gint"/>
     </constant>
+    <function-macro name="STATE" c:identifier="GST_STATE" introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstelement.h"
+           line="103">This macro returns the current #GstState of the element.</doc>
+      <source-position filename="gst/gstelement.h" line="109"/>
+      <parameters>
+        <parameter name="elem">
+          <doc xml:space="preserve"
+               filename="gst/gstelement.h"
+               line="105">a #GstElement to return state for.</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="STATE_BROADCAST"
+                    c:identifier="GST_STATE_BROADCAST"
+                    introspectable="0">
+      <source-position filename="gst/gstelement.h" line="586"/>
+      <parameters>
+        <parameter name="elem">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="STATE_GET_COND"
+                    c:identifier="GST_STATE_GET_COND"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstelement.h"
+           line="570">Get the conditional used to signal the completion of a state change.</doc>
+      <source-position filename="gst/gstelement.h" line="576"/>
+      <parameters>
+        <parameter name="elem">
+          <doc xml:space="preserve"
+               filename="gst/gstelement.h"
+               line="572">a #GstElement</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="STATE_GET_LOCK"
+                    c:identifier="GST_STATE_GET_LOCK"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstelement.h"
+           line="561">Get a reference to the state lock of @elem.
+This lock is used by the core.  It is taken while getting or setting
+the state, during state changes, and while finalizing.</doc>
+      <source-position filename="gst/gstelement.h" line="569"/>
+      <parameters>
+        <parameter name="elem">
+          <doc xml:space="preserve"
+               filename="gst/gstelement.h"
+               line="563">a #GstElement</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="STATE_GET_NEXT"
+                    c:identifier="GST_STATE_GET_NEXT"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstelement.h"
+           line="144">Given a current state @cur and a target state @pending, calculate the next (intermediate)
+#GstState.</doc>
+      <source-position filename="gst/gstelement.h" line="152"/>
+      <parameters>
+        <parameter name="cur">
+          <doc xml:space="preserve"
+               filename="gst/gstelement.h"
+               line="146">A starting #GstState</doc>
+        </parameter>
+        <parameter name="pending">
+          <doc xml:space="preserve"
+               filename="gst/gstelement.h"
+               line="147">A target #GstState</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="STATE_LOCK"
+                    c:identifier="GST_STATE_LOCK"
+                    introspectable="0">
+      <source-position filename="gst/gstelement.h" line="578"/>
+      <parameters>
+        <parameter name="elem">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="STATE_NEXT"
+                    c:identifier="GST_STATE_NEXT"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstelement.h"
+           line="111">This macro returns the next #GstState of the element.</doc>
+      <source-position filename="gst/gstelement.h" line="117"/>
+      <parameters>
+        <parameter name="elem">
+          <doc xml:space="preserve"
+               filename="gst/gstelement.h"
+               line="113">a #GstElement to return the next state for.</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="STATE_PENDING"
+                    c:identifier="GST_STATE_PENDING"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstelement.h"
+           line="119">This macro returns the currently pending #GstState of the element.</doc>
+      <source-position filename="gst/gstelement.h" line="125"/>
+      <parameters>
+        <parameter name="elem">
+          <doc xml:space="preserve"
+               filename="gst/gstelement.h"
+               line="121">a #GstElement to return the pending state for.</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="STATE_RETURN"
+                    c:identifier="GST_STATE_RETURN"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstelement.h"
+           line="135">This macro returns the last #GstStateChangeReturn value.</doc>
+      <source-position filename="gst/gstelement.h" line="141"/>
+      <parameters>
+        <parameter name="elem">
+          <doc xml:space="preserve"
+               filename="gst/gstelement.h"
+               line="137">a #GstElement to return the last state result for.</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="STATE_SIGNAL"
+                    c:identifier="GST_STATE_SIGNAL"
+                    introspectable="0">
+      <source-position filename="gst/gstelement.h" line="585"/>
+      <parameters>
+        <parameter name="elem">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="STATE_TARGET"
+                    c:identifier="GST_STATE_TARGET"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstelement.h"
+           line="127">This macro returns the target #GstState of the element.</doc>
+      <source-position filename="gst/gstelement.h" line="133"/>
+      <parameters>
+        <parameter name="elem">
+          <doc xml:space="preserve"
+               filename="gst/gstelement.h"
+               line="129">a #GstElement to return the target state for.</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="STATE_TRANSITION"
+                    c:identifier="GST_STATE_TRANSITION"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstelement.h"
+           line="153">Given a current state @cur and a next state @next, calculate the associated
+#GstStateChange transition.</doc>
+      <source-position filename="gst/gstelement.h" line="161"/>
+      <parameters>
+        <parameter name="cur">
+          <doc xml:space="preserve"
+               filename="gst/gstelement.h"
+               line="155">A current state</doc>
+        </parameter>
+        <parameter name="next">
+          <doc xml:space="preserve"
+               filename="gst/gstelement.h"
+               line="156">A next state</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="STATE_TRANSITION_CURRENT"
+                    c:identifier="GST_STATE_TRANSITION_CURRENT"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstelement.h"
+           line="162">Given a state transition @trans, extract the current #GstState.</doc>
+      <source-position filename="gst/gstelement.h" line="168"/>
+      <parameters>
+        <parameter name="trans">
+          <doc xml:space="preserve"
+               filename="gst/gstelement.h"
+               line="164">A #GstStateChange</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="STATE_TRANSITION_NEXT"
+                    c:identifier="GST_STATE_TRANSITION_NEXT"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstelement.h"
+           line="169">Given a state transition @trans, extract the next #GstState.</doc>
+      <source-position filename="gst/gstelement.h" line="175"/>
+      <parameters>
+        <parameter name="trans">
+          <doc xml:space="preserve"
+               filename="gst/gstelement.h"
+               line="171">A #GstStateChange</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="STATE_TRYLOCK"
+                    c:identifier="GST_STATE_TRYLOCK"
+                    introspectable="0">
+      <source-position filename="gst/gstelement.h" line="579"/>
+      <parameters>
+        <parameter name="elem">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="STATE_UNLOCK"
+                    c:identifier="GST_STATE_UNLOCK"
+                    introspectable="0">
+      <source-position filename="gst/gstelement.h" line="580"/>
+      <parameters>
+        <parameter name="elem">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="STATE_WAIT"
+                    c:identifier="GST_STATE_WAIT"
+                    introspectable="0">
+      <source-position filename="gst/gstelement.h" line="581"/>
+      <parameters>
+        <parameter name="elem">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="STATE_WAIT_UNTIL"
+                    c:identifier="GST_STATE_WAIT_UNTIL"
+                    introspectable="0">
+      <source-position filename="gst/gstelement.h" line="583"/>
+      <parameters>
+        <parameter name="elem">
+        </parameter>
+        <parameter name="end_time">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="STATIC_CAPS"
+                    c:identifier="GST_STATIC_CAPS"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstcaps.h"
+           line="122">Creates a new #GstCaps static caps from an input string.
+This can be used in pad templates.</doc>
+      <source-position filename="gst/gstcaps.h" line="129"/>
+      <parameters>
+        <parameter name="string">
+          <doc xml:space="preserve"
+               filename="gst/gstcaps.h"
+               line="124">the string describing the caps</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="STATIC_PAD_TEMPLATE"
+                    c:identifier="GST_STATIC_PAD_TEMPLATE"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstpadtemplate.h"
+           line="175">Convenience macro to fill the values of a #GstStaticPadTemplate
+structure.
+Example:
+|[&lt;!-- language="C" --&gt;
+static GstStaticPadTemplate my_src_template =  *   GST_STATIC_PAD_TEMPLATE("src", GST_PAD_SRC, GST_PAD_ALWAYS,
+,
+                          GST_STATIC_CAPS_ANY);
+]|</doc>
+      <source-position filename="gst/gstpadtemplate.h" line="191"/>
+      <parameters>
+        <parameter name="padname">
+          <doc xml:space="preserve"
+               filename="gst/gstpadtemplate.h"
+               line="177">the name template of the pad</doc>
+        </parameter>
+        <parameter name="dir">
+          <doc xml:space="preserve"
+               filename="gst/gstpadtemplate.h"
+               line="178">the GstPadDirection of the pad</doc>
+        </parameter>
+        <parameter name="pres">
+          <doc xml:space="preserve"
+               filename="gst/gstpadtemplate.h"
+               line="179">the GstPadPresence of the pad</doc>
+        </parameter>
+        <parameter name="caps">
+          <doc xml:space="preserve"
+               filename="gst/gstpadtemplate.h"
+               line="180">the GstStaticCaps of the pad</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="STIME_ARGS"
+                    c:identifier="GST_STIME_ARGS"
+                    version="1.6"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstclock.h"
+           line="259">Format @t for the #GST_STIME_FORMAT format string. Note: @t will be
+evaluated more than once.</doc>
+      <source-position filename="gst/gstclock.h" line="268"/>
+      <parameters>
+        <parameter name="t">
+          <doc xml:space="preserve"
+               filename="gst/gstclock.h"
+               line="261">a #GstClockTimeDiff or #gint64</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
     <constant name="STIME_FORMAT"
               value="c%"
               c:type="GST_STIME_FORMAT"
               version="1.6"
               introspectable="0">
-      <doc xml:space="preserve">A string that can be used in printf-like format strings to display a signed
+      <doc xml:space="preserve"
+           filename="gst/gstclock.h"
+           line="244">A string that can be used in printf-like format strings to display a signed
 #GstClockTimeDiff or #gint64 value in h:m:s format.  Use GST_TIME_ARGS() to
 construct the matching arguments.
 
@@ -35407,21 +54855,195 @@ Example:
 |[
 printf("%" GST_STIME_FORMAT "\n", GST_STIME_ARGS(ts));
 ]|</doc>
+      <source-position filename="gst/gstclock.h" line="258"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
+    <function-macro name="STREAM" c:identifier="GST_STREAM" introspectable="0">
+      <source-position filename="gst/gststreams.h" line="36"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="STREAM_CAST"
+                    c:identifier="GST_STREAM_CAST"
+                    introspectable="0">
+      <source-position filename="gst/gststreams.h" line="38"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="STREAM_CLASS"
+                    c:identifier="GST_STREAM_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gststreams.h" line="37"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="STREAM_COLLECTION"
+                    c:identifier="GST_STREAM_COLLECTION"
+                    introspectable="0">
+      <source-position filename="gst/gststreamcollection.h" line="36"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="STREAM_COLLECTION_CAST"
+                    c:identifier="GST_STREAM_COLLECTION_CAST"
+                    introspectable="0">
+      <source-position filename="gst/gststreamcollection.h" line="38"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="STREAM_COLLECTION_CLASS"
+                    c:identifier="GST_STREAM_COLLECTION_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gststreamcollection.h" line="37"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="STREAM_COLLECTION_GET_CLASS"
+                    c:identifier="GST_STREAM_COLLECTION_GET_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gststreamcollection.h" line="35"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="STREAM_GET_CLASS"
+                    c:identifier="GST_STREAM_GET_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gststreams.h" line="35"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="STRUCTURE"
+                    c:identifier="GST_STRUCTURE"
+                    introspectable="0">
+      <source-position filename="gst/gststructure.h" line="38"/>
+      <parameters>
+        <parameter name="object">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="STRUCTURE_CAST"
+                    c:identifier="GST_STRUCTURE_CAST"
+                    introspectable="0">
+      <source-position filename="gst/gststructure.h" line="37"/>
+      <parameters>
+        <parameter name="object">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="STR_FOURCC"
+                    c:identifier="GST_STR_FOURCC"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.h"
+           line="48">Transform an input string into a #guint32 fourcc value with host
+endianness.
+Caller is responsible for ensuring the input string consists of at least
+four characters.
+
+|[
+guint32 fourcc = GST_STR_FOURCC ("MJPG");
+]|</doc>
+      <source-position filename="gst/gstvalue.h" line="62"/>
+      <parameters>
+        <parameter name="f">
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.h"
+               line="50">a string with at least four characters</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="STR_NULL"
+                    c:identifier="GST_STR_NULL"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstinfo.h"
+           line="230">Macro to use when a string must not be %NULL, but may be %NULL. If the string
+is %NULL, "(NULL)" is printed instead.
+In GStreamer printf string arguments may not be %NULL, because on some
+platforms (ie Solaris) the libc crashes in that case. This includes debugging
+strings.</doc>
+      <source-position filename="gst/gstinfo.h" line="240"/>
+      <parameters>
+        <parameter name="str">
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.h"
+               line="232">The string to check.</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="SYSTEM_CLOCK"
+                    c:identifier="GST_SYSTEM_CLOCK"
+                    introspectable="0">
+      <source-position filename="gst/gstsystemclock.h" line="33"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="SYSTEM_CLOCK_CAST"
+                    c:identifier="GST_SYSTEM_CLOCK_CAST"
+                    introspectable="0">
+      <source-position filename="gst/gstsystemclock.h" line="34"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="SYSTEM_CLOCK_CLASS"
+                    c:identifier="GST_SYSTEM_CLOCK_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gstsystemclock.h" line="36"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="SYSTEM_CLOCK_GET_CLASS"
+                    c:identifier="GST_SYSTEM_CLOCK_GET_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gstsystemclock.h" line="38"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
     <record name="Sample"
             c:type="GstSample"
             glib:type-name="GstSample"
             glib:get-type="gst_sample_get_type"
             c:symbol-prefix="sample">
-      <doc xml:space="preserve">A #GstSample is a small object containing data, a type, timing and
+      <doc xml:space="preserve"
+           filename="gst/gstsample.c"
+           line="22">A #GstSample is a small object containing data, a type, timing and
 extra arbitrary information.</doc>
+      <source-position filename="gst/gstsample.h" line="48"/>
       <constructor name="new" c:identifier="gst_sample_new">
-        <doc xml:space="preserve">Create a new #GstSample with the provided details.
+        <doc xml:space="preserve"
+             filename="gst/gstsample.c"
+             line="111">Create a new #GstSample with the provided details.
 
 Free-function: gst_sample_unref</doc>
+        <source-position filename="gst/gstsample.h" line="56"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the new #GstSample. gst_sample_unref()
+          <doc xml:space="preserve"
+               filename="gst/gstsample.c"
+               line="122">the new #GstSample. gst_sample_unref()
     after usage.</doc>
           <type name="Sample" c:type="GstSample*"/>
         </return-value>
@@ -35430,36 +55052,73 @@ Free-function: gst_sample_unref</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">a #GstBuffer, or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstsample.c"
+                 line="113">a #GstBuffer, or %NULL</doc>
             <type name="Buffer" c:type="GstBuffer*"/>
           </parameter>
           <parameter name="caps"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">a #GstCaps, or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstsample.c"
+                 line="114">a #GstCaps, or %NULL</doc>
             <type name="Caps" c:type="GstCaps*"/>
           </parameter>
           <parameter name="segment"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">a #GstSegment, or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstsample.c"
+                 line="115">a #GstSegment, or %NULL</doc>
             <type name="Segment" c:type="const GstSegment*"/>
           </parameter>
           <parameter name="info"
                      transfer-ownership="full"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">a #GstStructure, or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstsample.c"
+                 line="116">a #GstStructure, or %NULL</doc>
             <type name="Structure" c:type="GstStructure*"/>
           </parameter>
         </parameters>
       </constructor>
+      <method name="copy"
+              c:identifier="gst_sample_copy"
+              version="1.2"
+              introspectable="0">
+        <doc xml:space="preserve"
+             filename="gst/gstsample.h"
+             line="161">Create a copy of the given sample. This will also make a newly allocated
+copy of the data the source sample contains.</doc>
+        <source-position filename="gst/gstsample.h" line="172"/>
+        <return-value transfer-ownership="full">
+          <doc xml:space="preserve"
+               filename="gst/gstsample.h"
+               line="168">a new copy of @buf.</doc>
+          <type name="Sample" c:type="GstSample*"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="buf" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst/gstsample.h"
+                 line="163">a #GstSample.</doc>
+            <type name="Sample" c:type="const GstSample*"/>
+          </instance-parameter>
+        </parameters>
+      </method>
       <method name="get_buffer" c:identifier="gst_sample_get_buffer">
-        <doc xml:space="preserve">Get the buffer associated with @sample</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstsample.c"
+             line="175">Get the buffer associated with @sample</doc>
+        <source-position filename="gst/gstsample.h" line="61"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">the buffer of @sample or %NULL
+          <doc xml:space="preserve"
+               filename="gst/gstsample.c"
+               line="181">the buffer of @sample or %NULL
  when there is no buffer. The buffer remains valid as long as
  @sample is valid.  If you need to hold on to it for longer than
  that, take a ref to the buffer with gst_buffer_ref().</doc>
@@ -35467,7 +55126,9 @@ Free-function: gst_sample_unref</doc>
         </return-value>
         <parameters>
           <instance-parameter name="sample" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSample</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstsample.c"
+                 line="177">a #GstSample</doc>
             <type name="Sample" c:type="GstSample*"/>
           </instance-parameter>
         </parameters>
@@ -35475,9 +55136,14 @@ Free-function: gst_sample_unref</doc>
       <method name="get_buffer_list"
               c:identifier="gst_sample_get_buffer_list"
               version="1.6">
-        <doc xml:space="preserve">Get the buffer list associated with @sample</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstsample.c"
+             line="247">Get the buffer list associated with @sample</doc>
+        <source-position filename="gst/gstsample.h" line="73"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">the buffer list of @sample or %NULL
+          <doc xml:space="preserve"
+               filename="gst/gstsample.c"
+               line="253">the buffer list of @sample or %NULL
  when there is no buffer list. The buffer list remains valid as long as
  @sample is valid.  If you need to hold on to it for longer than
  that, take a ref to the buffer list with gst_mini_object_ref ().</doc>
@@ -35485,15 +55151,22 @@ Free-function: gst_sample_unref</doc>
         </return-value>
         <parameters>
           <instance-parameter name="sample" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSample</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstsample.c"
+                 line="249">a #GstSample</doc>
             <type name="Sample" c:type="GstSample*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_caps" c:identifier="gst_sample_get_caps">
-        <doc xml:space="preserve">Get the caps associated with @sample</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstsample.c"
+             line="194">Get the caps associated with @sample</doc>
+        <source-position filename="gst/gstsample.h" line="64"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">the caps of @sample or %NULL
+          <doc xml:space="preserve"
+               filename="gst/gstsample.c"
+               line="200">the caps of @sample or %NULL
  when there is no caps. The caps remain valid as long as @sample is
  valid.  If you need to hold on to the caps for longer than that,
  take a ref to the caps with gst_caps_ref().</doc>
@@ -35501,35 +55174,71 @@ Free-function: gst_sample_unref</doc>
         </return-value>
         <parameters>
           <instance-parameter name="sample" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSample</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstsample.c"
+                 line="196">a #GstSample</doc>
             <type name="Sample" c:type="GstSample*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_info" c:identifier="gst_sample_get_info">
-        <doc xml:space="preserve">Get extra information associated with @sample.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstsample.c"
+             line="230">Get extra information associated with @sample.</doc>
+        <source-position filename="gst/gstsample.h" line="70"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">the extra info of @sample.
+          <doc xml:space="preserve"
+               filename="gst/gstsample.c"
+               line="236">the extra info of @sample.
  The info remains valid as long as @sample is valid.</doc>
           <type name="Structure" c:type="const GstStructure*"/>
         </return-value>
         <parameters>
           <instance-parameter name="sample" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSample</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstsample.c"
+                 line="232">a #GstSample</doc>
             <type name="Sample" c:type="GstSample*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_segment" c:identifier="gst_sample_get_segment">
-        <doc xml:space="preserve">Get the segment associated with @sample</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the segment of @sample.
+        <doc xml:space="preserve"
+             filename="gst/gstsample.c"
+             line="213">Get the segment associated with @sample</doc>
+        <source-position filename="gst/gstsample.h" line="67"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstsample.c"
+               line="219">the segment of @sample.
  The segment remains valid as long as @sample is valid.</doc>
           <type name="Segment" c:type="GstSegment*"/>
         </return-value>
         <parameters>
           <instance-parameter name="sample" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSample</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstsample.c"
+                 line="215">a #GstSample</doc>
+            <type name="Sample" c:type="GstSample*"/>
+          </instance-parameter>
+        </parameters>
+      </method>
+      <method name="ref" c:identifier="gst_sample_ref" introspectable="0">
+        <doc xml:space="preserve"
+             filename="gst/gstsample.h"
+             line="91">Increases the refcount of the given sample by one.</doc>
+        <source-position filename="gst/gstsample.h" line="99"/>
+        <return-value transfer-ownership="full">
+          <doc xml:space="preserve"
+               filename="gst/gstsample.h"
+               line="97">@sample</doc>
+          <type name="Sample" c:type="GstSample*"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="sample" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst/gstsample.h"
+                 line="93">a #GstSample</doc>
             <type name="Sample" c:type="GstSample*"/>
           </instance-parameter>
         </parameters>
@@ -35537,17 +55246,24 @@ Free-function: gst_sample_unref</doc>
       <method name="set_buffer"
               c:identifier="gst_sample_set_buffer"
               version="1.16">
-        <doc xml:space="preserve">Set the buffer associated with @sample. @sample must be writable.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstsample.c"
+             line="304">Set the buffer associated with @sample. @sample must be writable.</doc>
+        <source-position filename="gst/gstsample.h" line="79"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="sample" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstSample</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstsample.c"
+                 line="306">A #GstSample</doc>
             <type name="Sample" c:type="GstSample*"/>
           </instance-parameter>
           <parameter name="buffer" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstBuffer</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstsample.c"
+                 line="307">A #GstBuffer</doc>
             <type name="Buffer" c:type="GstBuffer*"/>
           </parameter>
         </parameters>
@@ -35555,17 +55271,24 @@ Free-function: gst_sample_unref</doc>
       <method name="set_buffer_list"
               c:identifier="gst_sample_set_buffer_list"
               version="1.6">
-        <doc xml:space="preserve">Set the buffer list associated with @sample. @sample must be writable.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstsample.c"
+             line="268">Set the buffer list associated with @sample. @sample must be writable.</doc>
+        <source-position filename="gst/gstsample.h" line="76"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="sample" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSample</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstsample.c"
+                 line="270">a #GstSample</doc>
             <type name="Sample" c:type="GstSample*"/>
           </instance-parameter>
           <parameter name="buffer_list" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBufferList</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstsample.c"
+                 line="271">a #GstBufferList</doc>
             <type name="BufferList" c:type="GstBufferList*"/>
           </parameter>
         </parameters>
@@ -35573,17 +55296,24 @@ Free-function: gst_sample_unref</doc>
       <method name="set_caps"
               c:identifier="gst_sample_set_caps"
               version="1.16">
-        <doc xml:space="preserve">Set the caps associated with @sample. @sample must be writable.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstsample.c"
+             line="341">Set the caps associated with @sample. @sample must be writable.</doc>
+        <source-position filename="gst/gstsample.h" line="82"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="sample" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstSample</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstsample.c"
+                 line="343">A #GstSample</doc>
             <type name="Sample" c:type="GstSample*"/>
           </instance-parameter>
           <parameter name="caps" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstCaps</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstsample.c"
+                 line="344">A #GstCaps</doc>
             <type name="Caps" c:type="GstCaps*"/>
           </parameter>
         </parameters>
@@ -35591,18 +55321,25 @@ Free-function: gst_sample_unref</doc>
       <method name="set_info"
               c:identifier="gst_sample_set_info"
               version="1.16">
-        <doc xml:space="preserve">Set the info structure associated with @sample. @sample must be writable,
+        <doc xml:space="preserve"
+             filename="gst/gstsample.c"
+             line="400">Set the info structure associated with @sample. @sample must be writable,
 and @info must not have a parent set already.</doc>
+        <source-position filename="gst/gstsample.h" line="88"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="sample" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstSample</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstsample.c"
+                 line="402">A #GstSample</doc>
             <type name="Sample" c:type="GstSample*"/>
           </instance-parameter>
           <parameter name="info" transfer-ownership="full">
-            <doc xml:space="preserve">A #GstStructure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstsample.c"
+                 line="403">A #GstStructure</doc>
             <type name="Structure" c:type="GstStructure*"/>
           </parameter>
         </parameters>
@@ -35610,75 +55347,118 @@ and @info must not have a parent set already.</doc>
       <method name="set_segment"
               c:identifier="gst_sample_set_segment"
               version="1.16">
-        <doc xml:space="preserve">Set the segment associated with @sample. @sample must be writable.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstsample.c"
+             line="378">Set the segment associated with @sample. @sample must be writable.</doc>
+        <source-position filename="gst/gstsample.h" line="85"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="sample" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstSample</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstsample.c"
+                 line="380">A #GstSample</doc>
             <type name="Sample" c:type="GstSample*"/>
           </instance-parameter>
           <parameter name="segment" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstSegment</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstsample.c"
+                 line="381">A #GstSegment</doc>
             <type name="Segment" c:type="const GstSegment*"/>
           </parameter>
         </parameters>
       </method>
+      <method name="unref" c:identifier="gst_sample_unref" introspectable="0">
+        <doc xml:space="preserve"
+             filename="gst/gstsample.h"
+             line="107">Decreases the refcount of the sample. If the refcount reaches 0, the
+sample will be freed.</doc>
+        <source-position filename="gst/gstsample.h" line="114"/>
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="sample" transfer-ownership="full">
+            <doc xml:space="preserve"
+                 filename="gst/gstsample.h"
+                 line="109">a #GstSample</doc>
+            <type name="Sample" c:type="GstSample*"/>
+          </instance-parameter>
+        </parameters>
+      </method>
     </record>
     <bitfield name="SchedulingFlags"
               glib:type-name="GstSchedulingFlags"
               glib:get-type="gst_scheduling_flags_get_type"
               c:type="GstSchedulingFlags">
-      <doc xml:space="preserve">The different scheduling flags.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstquery.h"
+           line="606">The different scheduling flags.</doc>
       <member name="seekable"
               value="1"
               c:identifier="GST_SCHEDULING_FLAG_SEEKABLE"
               glib:nick="seekable">
-        <doc xml:space="preserve">if seeking is possible</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstquery.h"
+             line="608">if seeking is possible</doc>
       </member>
       <member name="sequential"
               value="2"
               c:identifier="GST_SCHEDULING_FLAG_SEQUENTIAL"
               glib:nick="sequential">
-        <doc xml:space="preserve">if sequential access is recommended</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstquery.h"
+             line="609">if sequential access is recommended</doc>
       </member>
       <member name="bandwidth_limited"
               value="4"
               c:identifier="GST_SCHEDULING_FLAG_BANDWIDTH_LIMITED"
               glib:nick="bandwidth-limited">
-        <doc xml:space="preserve">if bandwidth is limited and buffering possible (since 1.2)</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstquery.h"
+             line="610">if bandwidth is limited and buffering possible (since 1.2)</doc>
       </member>
     </bitfield>
     <enumeration name="SearchMode"
                  glib:type-name="GstSearchMode"
                  glib:get-type="gst_search_mode_get_type"
                  c:type="GstSearchMode">
-      <doc xml:space="preserve">The different search modes.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstutils.h"
+           line="1157">The different search modes.</doc>
       <member name="exact"
               value="0"
               c:identifier="GST_SEARCH_MODE_EXACT"
               glib:nick="exact">
-        <doc xml:space="preserve">Only search for exact matches.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstutils.h"
+             line="1159">Only search for exact matches.</doc>
       </member>
       <member name="before"
               value="1"
               c:identifier="GST_SEARCH_MODE_BEFORE"
               glib:nick="before">
-        <doc xml:space="preserve">Search for an exact match or the element just before.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstutils.h"
+             line="1160">Search for an exact match or the element just before.</doc>
       </member>
       <member name="after"
               value="2"
               c:identifier="GST_SEARCH_MODE_AFTER"
               glib:nick="after">
-        <doc xml:space="preserve">Search for an exact match or the element just after.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstutils.h"
+             line="1161">Search for an exact match or the element just after.</doc>
       </member>
     </enumeration>
     <bitfield name="SeekFlags"
               glib:type-name="GstSeekFlags"
               glib:get-type="gst_seek_flags_get_type"
               c:type="GstSeekFlags">
-      <doc xml:space="preserve">Flags to be used with gst_element_seek() or gst_event_new_seek(). All flags
+      <doc xml:space="preserve"
+           filename="gst/gstsegment.h"
+           line="50">Flags to be used with gst_element_seek() or gst_event_new_seek(). All flags
 can be used together.
 
 A non flushing seek might take some time to perform as the currently
@@ -35695,6 +55475,16 @@ When this message is posted, it is possible to send a new seek event to
 continue playback. With this seek method it is possible to perform seamless
 looping or simple linear editing.
 
+When only changing the playback rate and not the direction, the
+%GST_SEEK_FLAG_INSTANT_RATE_CHANGE flag can be used for a non-flushing seek
+to signal that the rate change should be applied immediately. This requires
+special support in the seek handlers (e.g. demuxers) and any elements
+synchronizing to the clock, and in general can't work in all cases (for example
+UDP streaming where the delivery rate is controlled by a remote server). The
+instant-rate-change mode supports changing the trickmode-related GST_SEEK_ flags,
+but can't be used in conjunction with other seek flags that affect the new
+playback position - as the playback position will not be changing.
+
 When doing fast forward (rate &gt; 1.0) or fast reverse (rate &lt; -1.0) trickmode
 playback, the %GST_SEEK_FLAG_TRICKMODE flag can be used to instruct decoders
 and demuxers to adjust the playback rate by skipping frames. This can improve
@@ -35723,54 +55513,70 @@ elements that handle them.</doc>
               value="0"
               c:identifier="GST_SEEK_FLAG_NONE"
               glib:nick="none">
-        <doc xml:space="preserve">no flag</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstsegment.h"
+             line="52">no flag</doc>
       </member>
       <member name="flush"
               value="1"
               c:identifier="GST_SEEK_FLAG_FLUSH"
               glib:nick="flush">
-        <doc xml:space="preserve">flush pipeline</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstsegment.h"
+             line="53">flush pipeline</doc>
       </member>
       <member name="accurate"
               value="2"
               c:identifier="GST_SEEK_FLAG_ACCURATE"
               glib:nick="accurate">
-        <doc xml:space="preserve">accurate position is requested, this might
+        <doc xml:space="preserve"
+             filename="gst/gstsegment.h"
+             line="54">accurate position is requested, this might
                     be considerably slower for some formats.</doc>
       </member>
       <member name="key_unit"
               value="4"
               c:identifier="GST_SEEK_FLAG_KEY_UNIT"
               glib:nick="key-unit">
-        <doc xml:space="preserve">seek to the nearest keyframe. This might be
+        <doc xml:space="preserve"
+             filename="gst/gstsegment.h"
+             line="56">seek to the nearest keyframe. This might be
                     faster but less accurate.</doc>
       </member>
       <member name="segment"
               value="8"
               c:identifier="GST_SEEK_FLAG_SEGMENT"
               glib:nick="segment">
-        <doc xml:space="preserve">perform a segment seek.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstsegment.h"
+             line="58">perform a segment seek.</doc>
       </member>
       <member name="trickmode"
               value="16"
               c:identifier="GST_SEEK_FLAG_TRICKMODE"
               glib:nick="trickmode">
-        <doc xml:space="preserve">when doing fast forward or fast reverse playback, allow
+        <doc xml:space="preserve"
+             filename="gst/gstsegment.h"
+             line="59">when doing fast forward or fast reverse playback, allow
                     elements to skip frames instead of generating all
-                    frames. (Since 1.6)</doc>
+                    frames. (Since: 1.6)</doc>
       </member>
       <member name="skip"
               value="16"
               c:identifier="GST_SEEK_FLAG_SKIP"
               glib:nick="skip">
-        <doc xml:space="preserve">Deprecated backward compatibility flag, replaced
+        <doc xml:space="preserve"
+             filename="gst/gstsegment.h"
+             line="88">Deprecated backward compatibility flag, replaced
                     by %GST_SEEK_FLAG_TRICKMODE</doc>
       </member>
       <member name="snap_before"
               value="32"
               c:identifier="GST_SEEK_FLAG_SNAP_BEFORE"
               glib:nick="snap-before">
-        <doc xml:space="preserve">go to a location before the requested position,
+        <doc xml:space="preserve"
+             filename="gst/gstsegment.h"
+             line="62">go to a location before the requested position,
                     if %GST_SEEK_FLAG_KEY_UNIT this means the keyframe at or before
                     the requested position the one at or before the seek target.</doc>
       </member>
@@ -35778,7 +55584,9 @@ elements that handle them.</doc>
               value="64"
               c:identifier="GST_SEEK_FLAG_SNAP_AFTER"
               glib:nick="snap-after">
-        <doc xml:space="preserve">go to a location after the requested position,
+        <doc xml:space="preserve"
+             filename="gst/gstsegment.h"
+             line="65">go to a location after the requested position,
                     if %GST_SEEK_FLAG_KEY_UNIT this means the keyframe at of after the
                     requested position.</doc>
       </member>
@@ -35786,7 +55594,9 @@ elements that handle them.</doc>
               value="96"
               c:identifier="GST_SEEK_FLAG_SNAP_NEAREST"
               glib:nick="snap-nearest">
-        <doc xml:space="preserve">go to a position near the requested position,
+        <doc xml:space="preserve"
+             filename="gst/gstsegment.h"
+             line="68">go to a position near the requested position,
                     if %GST_SEEK_FLAG_KEY_UNIT this means the keyframe closest
                     to the requested position, if both keyframes are at an equal
                     distance, behaves like %GST_SEEK_FLAG_SNAP_BEFORE.</doc>
@@ -35795,43 +55605,78 @@ elements that handle them.</doc>
               value="128"
               c:identifier="GST_SEEK_FLAG_TRICKMODE_KEY_UNITS"
               glib:nick="trickmode-key-units">
-        <doc xml:space="preserve">when doing fast forward or fast reverse
+        <doc xml:space="preserve"
+             filename="gst/gstsegment.h"
+             line="72">when doing fast forward or fast reverse
                     playback, request that elements only decode keyframes
                     and skip all other content, for formats that have
-                    keyframes. (Since 1.6)</doc>
+                    keyframes. (Since: 1.6)</doc>
       </member>
       <member name="trickmode_no_audio"
               value="256"
               c:identifier="GST_SEEK_FLAG_TRICKMODE_NO_AUDIO"
               glib:nick="trickmode-no-audio">
-        <doc xml:space="preserve">when doing fast forward or fast reverse
+        <doc xml:space="preserve"
+             filename="gst/gstsegment.h"
+             line="81">when doing fast forward or fast reverse
                     playback, request that audio decoder elements skip
-                    decoding and output only gap events or silence. (Since 1.6)</doc>
+                    decoding and output only gap events or silence. (Since: 1.6)</doc>
+      </member>
+      <member name="trickmode_forward_predicted"
+              value="512"
+              c:identifier="GST_SEEK_FLAG_TRICKMODE_FORWARD_PREDICTED"
+              glib:nick="trickmode-forward-predicted">
+        <doc xml:space="preserve"
+             filename="gst/gstsegment.h"
+             line="76">When doing fast forward or fast reverse
+                    playback, request that elements only decode keyframes and
+                    forward predicted frames and skip all other content (for example
+                    B-Frames), for formats that have keyframes and forward predicted
+                    frames. (Since: 1.18)</doc>
+      </member>
+      <member name="instant_rate_change"
+              value="1024"
+              c:identifier="GST_SEEK_FLAG_INSTANT_RATE_CHANGE"
+              glib:nick="instant-rate-change">
+        <doc xml:space="preserve"
+             filename="gst/gstsegment.h"
+             line="84">Signals that a rate change should be
+                    applied immediately. Only valid if start/stop position
+                    are GST_CLOCK_TIME_NONE, the playback direction does not change
+                    and the seek is not flushing. (Since: 1.18)</doc>
       </member>
     </bitfield>
     <enumeration name="SeekType"
                  glib:type-name="GstSeekType"
                  glib:get-type="gst_seek_type_get_type"
                  c:type="GstSeekType">
-      <doc xml:space="preserve">The different types of seek events. When constructing a seek event with
+      <doc xml:space="preserve"
+           filename="gst/gstsegment.h"
+           line="34">The different types of seek events. When constructing a seek event with
 gst_event_new_seek() or when doing gst_segment_do_seek ().</doc>
       <member name="none"
               value="0"
               c:identifier="GST_SEEK_TYPE_NONE"
               glib:nick="none">
-        <doc xml:space="preserve">no change in position is required</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstsegment.h"
+             line="36">no change in position is required</doc>
       </member>
       <member name="set"
               value="1"
               c:identifier="GST_SEEK_TYPE_SET"
               glib:nick="set">
-        <doc xml:space="preserve">absolute position is requested</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstsegment.h"
+             line="37">absolute position is requested</doc>
       </member>
       <member name="end"
               value="2"
               c:identifier="GST_SEEK_TYPE_END"
               glib:nick="end">
-        <doc xml:space="preserve">relative position to duration is requested</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstsegment.h"
+             line="38">relative position to duration is requested</doc>
       </member>
     </enumeration>
     <record name="Segment"
@@ -35839,7 +55684,9 @@ gst_event_new_seek() or when doing gst_segment_do_seek ().</doc>
             glib:type-name="GstSegment"
             glib:get-type="gst_segment_get_type"
             c:symbol-prefix="segment">
-      <doc xml:space="preserve">This helper structure holds the relevant values for tracking the region of
+      <doc xml:space="preserve"
+           filename="gst/gstsegment.c"
+           line="29">This helper structure holds the relevant values for tracking the region of
 interest in a media file, called a segment.
 
 The structure can be used for two purposes:
@@ -35885,69 +55732,144 @@ any rate or applied_rate conversions.
 For elements that need to perform operations on media data in stream_time,
 gst_segment_to_stream_time() can be used to convert a timestamp and the segment
 info to stream time (which is always between 0 and the duration of the stream).</doc>
+      <source-position filename="gst/gstsegment.h" line="282"/>
       <field name="flags" writable="1">
-        <doc xml:space="preserve">flags for this segment</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstsegment.h"
+             line="202">flags for this segment</doc>
         <type name="SegmentFlags" c:type="GstSegmentFlags"/>
       </field>
       <field name="rate" writable="1">
-        <doc xml:space="preserve">the playback rate of the segment</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstsegment.h"
+             line="203">the playback rate of the segment is set in response to a seek
+               event and, without any seek, the value should be `1.0`. This
+               value is used by elements that synchronize buffer [running
+               times](additional/design/synchronisation.md#running-time) on
+               the clock (usually the sink elements), leading to consuming
+               buffers faster (for a value `&gt; 1.0`) or slower (for `0.0 &lt;
+               value &lt; 1.0`) than normal playback speed. The rate also
+               defines the playback direction, meaning that when the value is
+               lower than `0.0`, the playback happens in reverse, and the
+               [stream-time](additional/design/synchronisation.md#stream-time)
+               is going backward. The `rate` value should never be `0.0`.</doc>
         <type name="gdouble" c:type="gdouble"/>
       </field>
       <field name="applied_rate" writable="1">
-        <doc xml:space="preserve">the already applied rate to the segment</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstsegment.h"
+             line="214">The applied rate is the rate that has been applied to the stream.
+               The effective/resulting playback rate of a stream is
+               `rate * applied_rate`.
+               The applied rate can be set by source elements when a server is
+               sending the stream with an already modified playback speed
+               rate. Filter elements that modify the stream in a way that
+               modifies the playback speed should also modify the applied
+               rate. For example the #videorate element when its
+               #videorate:rate property is set will set the applied rate of
+               the segment it pushed downstream. Also #scaletempo applies the
+               input segment rate to the stream and outputs a segment with
+               rate=1.0 and applied_rate=&lt;inputsegment.rate&gt;.</doc>
         <type name="gdouble" c:type="gdouble"/>
       </field>
       <field name="format" writable="1">
-        <doc xml:space="preserve">the format of the segment values</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstsegment.h"
+             line="226">the unit used for all of the segment's values.</doc>
         <type name="Format" c:type="GstFormat"/>
       </field>
       <field name="base" writable="1">
-        <doc xml:space="preserve">the running time (plus elapsed time, see offset) of the segment start</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstsegment.h"
+             line="227">the running time (plus elapsed time, see offset) of the
+               segment [start](GstSegment.start) ([stop](GstSegment.stop) if
+               rate &lt; 0.0).</doc>
         <type name="guint64" c:type="guint64"/>
       </field>
       <field name="offset" writable="1">
-        <doc xml:space="preserve">the amount (in buffer timestamps) that has already been elapsed in
-    the segment</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstsegment.h"
+             line="230">the offset expresses the elapsed time (in buffer timestamps)
+               before a seek with its start (stop if rate &lt; 0.0) seek type
+               set to #GST_SEEK_TYPE_NONE, the value is set to the position
+               of the segment at the time of the seek.</doc>
         <type name="guint64" c:type="guint64"/>
       </field>
       <field name="start" writable="1">
-        <doc xml:space="preserve">the start of the segment in buffer timestamp time (PTS)</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstsegment.h"
+             line="234">the start time of the segment (in buffer timestamps)
+               [(PTS)](GstBuffer.pts), that is the timestamp of the first
+               buffer to output inside the segment (last one during
+               reverse playback). For example decoders will
+               [clip](gst_segment_clip) out the buffers before the start
+               time.</doc>
         <type name="guint64" c:type="guint64"/>
       </field>
       <field name="stop" writable="1">
-        <doc xml:space="preserve">the stop of the segment in buffer timestamp time (PTS)</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstsegment.h"
+             line="240">the stop time of the segment (in buffer timestamps)
+               [(PTS)](GstBuffer.pts), that is the timestamp of the last
+               buffer to output inside the segment (first one during
+               reverse playback). For example decoders will
+               [clip](gst_segment_clip) out buffers after the stop time.</doc>
         <type name="guint64" c:type="guint64"/>
       </field>
       <field name="time" writable="1">
-        <doc xml:space="preserve">the stream time of the segment start</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstsegment.h"
+             line="245">the stream time of the segment [start](GstSegment.start)
+               ([stop](GstSegment.stop) if rate &lt; 0.0).</doc>
         <type name="guint64" c:type="guint64"/>
       </field>
       <field name="position" writable="1">
-        <doc xml:space="preserve">the buffer timestamp position in the segment (used internally by
-    elements such as sources, demuxers or parsers to track progress)</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstsegment.h"
+             line="247">the buffer timestamp position in the segment is supposed to be
+               updated by elements such as sources, demuxers or parsers to
+               track progress by setting it to the last pushed buffer' end time
+               ([timestamp](GstBuffer.pts) + #GstBuffer.duration) for that
+               specific segment. The position is used when reconfiguring the
+               segment with #gst_segment_do_seek when the seek is only
+               updating the segment (see [offset](GstSegment.offset)).</doc>
         <type name="guint64" c:type="guint64"/>
       </field>
       <field name="duration" writable="1">
-        <doc xml:space="preserve">the duration of the stream</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstsegment.h"
+             line="254">the duration of the segment is the maximum absolute difference
+               between #GstSegment.start and #GstSegment.stop if stop is not
+               set, otherwise it should be the difference between those
+               two values. This should be set by elements that know the
+               overall stream duration (like demuxers) and will be used when
+               seeking with #GST_SEEK_TYPE_END.</doc>
         <type name="guint64" c:type="guint64"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
       <constructor name="new" c:identifier="gst_segment_new">
-        <doc xml:space="preserve">Allocate a new #GstSegment structure and initialize it using
+        <doc xml:space="preserve"
+             filename="gst/gstsegment.c"
+             line="127">Allocate a new #GstSegment structure and initialize it using
 gst_segment_init().
 
 Free-function: gst_segment_free</doc>
+        <source-position filename="gst/gstsegment.h" line="288"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new #GstSegment, free with gst_segment_free().</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstsegment.c"
+               line="135">a new #GstSegment, free with gst_segment_free().</doc>
           <type name="Segment" c:type="GstSegment*"/>
         </return-value>
       </constructor>
       <method name="clip" c:identifier="gst_segment_clip">
-        <doc xml:space="preserve">Clip the given @start and @stop values to the segment boundaries given
+        <doc xml:space="preserve"
+             filename="gst/gstsegment.c"
+             line="868">Clip the given @start and @stop values to the segment boundaries given
 in @segment. @start and @stop are compared and clipped to @segment
 start and stop values.
 
@@ -35960,27 +55882,38 @@ respectively, the region fell partially in the segment.
 
 Note that when @stop is -1, @clip_stop will be set to the end of the
 segment. Depending on the use case, this may or may not be what you want.</doc>
+        <source-position filename="gst/gstsegment.h" line="337"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the given @start and @stop times fall partially or
+          <doc xml:space="preserve"
+               filename="gst/gstsegment.c"
+               line="891">%TRUE if the given @start and @stop times fall partially or
     completely in @segment, %FALSE if the values are completely outside
     of the segment.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="segment" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSegment structure.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstsegment.c"
+                 line="870">a #GstSegment structure.</doc>
             <type name="Segment" c:type="const GstSegment*"/>
           </instance-parameter>
           <parameter name="format" transfer-ownership="none">
-            <doc xml:space="preserve">the format of the segment.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstsegment.c"
+                 line="871">the format of the segment.</doc>
             <type name="Format" c:type="GstFormat"/>
           </parameter>
           <parameter name="start" transfer-ownership="none">
-            <doc xml:space="preserve">the start position in the segment</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstsegment.c"
+                 line="872">the start position in the segment</doc>
             <type name="guint64" c:type="guint64"/>
           </parameter>
           <parameter name="stop" transfer-ownership="none">
-            <doc xml:space="preserve">the stop position in the segment</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstsegment.c"
+                 line="873">the stop position in the segment</doc>
             <type name="guint64" c:type="guint64"/>
           </parameter>
           <parameter name="clip_start"
@@ -35989,7 +55922,9 @@ segment. Depending on the use case, this may or may not be what you want.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">the clipped start position in the segment</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstsegment.c"
+                 line="874">the clipped start position in the segment</doc>
             <type name="guint64" c:type="guint64*"/>
           </parameter>
           <parameter name="clip_stop"
@@ -35998,44 +55933,62 @@ segment. Depending on the use case, this may or may not be what you want.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">the clipped stop position in the segment</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstsegment.c"
+                 line="875">the clipped stop position in the segment</doc>
             <type name="guint64" c:type="guint64*"/>
           </parameter>
         </parameters>
       </method>
       <method name="copy" c:identifier="gst_segment_copy">
-        <doc xml:space="preserve">Create a copy of given @segment.
+        <doc xml:space="preserve"
+             filename="gst/gstsegment.c"
+             line="90">Create a copy of given @segment.
 
 Free-function: gst_segment_free</doc>
+        <source-position filename="gst/gstsegment.h" line="291"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new #GstSegment, free with gst_segment_free().</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstsegment.c"
+               line="98">a new #GstSegment, free with gst_segment_free().</doc>
           <type name="Segment" c:type="GstSegment*"/>
         </return-value>
         <parameters>
           <instance-parameter name="segment" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSegment</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstsegment.c"
+                 line="92">a #GstSegment</doc>
             <type name="Segment" c:type="const GstSegment*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="copy_into" c:identifier="gst_segment_copy_into">
-        <doc xml:space="preserve">Copy the contents of @src into @dest.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstsegment.c"
+             line="111">Copy the contents of @src into @dest.</doc>
+        <source-position filename="gst/gstsegment.h" line="294"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="src" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSegment</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstsegment.c"
+                 line="113">a #GstSegment</doc>
             <type name="Segment" c:type="const GstSegment*"/>
           </instance-parameter>
           <parameter name="dest" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSegment</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstsegment.c"
+                 line="114">a #GstSegment</doc>
             <type name="Segment" c:type="GstSegment*"/>
           </parameter>
         </parameters>
       </method>
       <method name="do_seek" c:identifier="gst_segment_do_seek">
-        <doc xml:space="preserve">Update the segment structure with the field values of a seek event (see
+        <doc xml:space="preserve"
+             filename="gst/gstsegment.c"
+             line="189">Update the segment structure with the field values of a seek event (see
 gst_event_new_seek()).
 
 After calling this method, the segment field position and time will
@@ -36062,41 +56015,60 @@ rate and applied_rate after calling this function.
 @update will be set to %TRUE if a seek should be performed to the segment
 position field. This field can be %FALSE if, for example, only the @rate
 has been changed but not the playback position.</doc>
+        <source-position filename="gst/gstsegment.h" line="340"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the seek could be performed.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstsegment.c"
+               line="229">%TRUE if the seek could be performed.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="segment" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSegment structure.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstsegment.c"
+                 line="191">a #GstSegment structure.</doc>
             <type name="Segment" c:type="GstSegment*"/>
           </instance-parameter>
           <parameter name="rate" transfer-ownership="none">
-            <doc xml:space="preserve">the rate of the segment.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstsegment.c"
+                 line="192">the rate of the segment.</doc>
             <type name="gdouble" c:type="gdouble"/>
           </parameter>
           <parameter name="format" transfer-ownership="none">
-            <doc xml:space="preserve">the format of the segment.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstsegment.c"
+                 line="193">the format of the segment.</doc>
             <type name="Format" c:type="GstFormat"/>
           </parameter>
           <parameter name="flags" transfer-ownership="none">
-            <doc xml:space="preserve">the segment flags for the segment</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstsegment.c"
+                 line="194">the segment flags for the segment</doc>
             <type name="SeekFlags" c:type="GstSeekFlags"/>
           </parameter>
           <parameter name="start_type" transfer-ownership="none">
-            <doc xml:space="preserve">the seek method</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstsegment.c"
+                 line="195">the seek method</doc>
             <type name="SeekType" c:type="GstSeekType"/>
           </parameter>
           <parameter name="start" transfer-ownership="none">
-            <doc xml:space="preserve">the seek start value</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstsegment.c"
+                 line="196">the seek start value</doc>
             <type name="guint64" c:type="guint64"/>
           </parameter>
           <parameter name="stop_type" transfer-ownership="none">
-            <doc xml:space="preserve">the seek method</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstsegment.c"
+                 line="197">the seek method</doc>
             <type name="SeekType" c:type="GstSeekType"/>
           </parameter>
           <parameter name="stop" transfer-ownership="none">
-            <doc xml:space="preserve">the seek stop value</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstsegment.c"
+                 line="198">the seek stop value</doc>
             <type name="guint64" c:type="guint64"/>
           </parameter>
           <parameter name="update"
@@ -36105,39 +56077,53 @@ has been changed but not the playback position.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">boolean holding whether position was updated.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstsegment.c"
+                 line="199">boolean holding whether position was updated.</doc>
             <type name="gboolean" c:type="gboolean*"/>
           </parameter>
         </parameters>
       </method>
       <method name="free" c:identifier="gst_segment_free">
-        <doc xml:space="preserve">Free the allocated segment @segment.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstsegment.c"
+             line="148">Free the allocated segment @segment.</doc>
+        <source-position filename="gst/gstsegment.h" line="297"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="segment" transfer-ownership="full">
-            <doc xml:space="preserve">a #GstSegment</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstsegment.c"
+                 line="150">a #GstSegment</doc>
             <type name="Segment" c:type="GstSegment*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="init" c:identifier="gst_segment_init">
-        <doc xml:space="preserve">The start/position fields are set to 0 and the stop/duration
+        <doc xml:space="preserve"
+             filename="gst/gstsegment.c"
+             line="160">The start/position fields are set to 0 and the stop/duration
 fields are set to -1 (unknown). The default rate of 1.0 and no
 flags are set.
 
 Initialize @segment to its default values.</doc>
+        <source-position filename="gst/gstsegment.h" line="300"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="segment" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSegment structure.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstsegment.c"
+                 line="162">a #GstSegment structure.</doc>
             <type name="Segment" c:type="GstSegment*"/>
           </instance-parameter>
           <parameter name="format" transfer-ownership="none">
-            <doc xml:space="preserve">the format of the segment.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstsegment.c"
+                 line="163">the format of the segment.</doc>
             <type name="Format" c:type="GstFormat"/>
           </parameter>
         </parameters>
@@ -36145,19 +56131,28 @@ Initialize @segment to its default values.</doc>
       <method name="is_equal"
               c:identifier="gst_segment_is_equal"
               version="1.6">
-        <doc xml:space="preserve">Checks for two segments being equal. Equality here is defined
+        <doc xml:space="preserve"
+             filename="gst/gstsegment.c"
+             line="1216">Checks for two segments being equal. Equality here is defined
 as perfect equality, including floating point values.</doc>
+        <source-position filename="gst/gstsegment.h" line="345"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the segments are equal, %FALSE otherwise.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstsegment.c"
+               line="1226">%TRUE if the segments are equal, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="s0" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSegment structure.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstsegment.c"
+                 line="1218">a #GstSegment structure.</doc>
             <type name="Segment" c:type="const GstSegment*"/>
           </instance-parameter>
           <parameter name="s1" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSegment structure.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstsegment.c"
+                 line="1219">a #GstSegment structure.</doc>
             <type name="Segment" c:type="const GstSegment*"/>
           </parameter>
         </parameters>
@@ -36165,24 +56160,35 @@ as perfect equality, including floating point values.</doc>
       <method name="offset_running_time"
               c:identifier="gst_segment_offset_running_time"
               version="1.2.3">
-        <doc xml:space="preserve">Adjust the values in @segment so that @offset is applied to all
+        <doc xml:space="preserve"
+             filename="gst/gstsegment.c"
+             line="1167">Adjust the values in @segment so that @offset is applied to all
 future running-time calculations.</doc>
+        <source-position filename="gst/gstsegment.h" line="334"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the segment could be updated successfully. If %FALSE is
+          <doc xml:space="preserve"
+               filename="gst/gstsegment.c"
+               line="1178">%TRUE if the segment could be updated successfully. If %FALSE is
 returned, @offset is not in @segment.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="segment" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSegment structure.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstsegment.c"
+                 line="1169">a #GstSegment structure.</doc>
             <type name="Segment" c:type="GstSegment*"/>
           </instance-parameter>
           <parameter name="format" transfer-ownership="none">
-            <doc xml:space="preserve">the format of the segment.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstsegment.c"
+                 line="1170">the format of the segment.</doc>
             <type name="Format" c:type="GstFormat"/>
           </parameter>
           <parameter name="offset" transfer-ownership="none">
-            <doc xml:space="preserve">the offset to apply in the segment</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstsegment.c"
+                 line="1171">the offset to apply in the segment</doc>
             <type name="gint64" c:type="gint64"/>
           </parameter>
         </parameters>
@@ -36190,24 +56196,35 @@ returned, @offset is not in @segment.</doc>
       <method name="position_from_running_time"
               c:identifier="gst_segment_position_from_running_time"
               version="1.8">
-        <doc xml:space="preserve">Convert @running_time into a position in the segment so that
+        <doc xml:space="preserve"
+             filename="gst/gstsegment.c"
+             line="937">Convert @running_time into a position in the segment so that
 gst_segment_to_running_time() with that position returns @running_time.</doc>
+        <source-position filename="gst/gstsegment.h" line="328"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the position in the segment for @running_time. This function returns
+          <doc xml:space="preserve"
+               filename="gst/gstsegment.c"
+               line="946">the position in the segment for @running_time. This function returns
 -1 when @running_time is -1 or when it is not inside @segment.</doc>
           <type name="guint64" c:type="guint64"/>
         </return-value>
         <parameters>
           <instance-parameter name="segment" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSegment structure.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstsegment.c"
+                 line="939">a #GstSegment structure.</doc>
             <type name="Segment" c:type="const GstSegment*"/>
           </instance-parameter>
           <parameter name="format" transfer-ownership="none">
-            <doc xml:space="preserve">the format of the segment.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstsegment.c"
+                 line="940">the format of the segment.</doc>
             <type name="Format" c:type="GstFormat"/>
           </parameter>
           <parameter name="running_time" transfer-ownership="none">
-            <doc xml:space="preserve">the running_time in the segment</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstsegment.c"
+                 line="941">the running_time in the segment</doc>
             <type name="guint64" c:type="guint64"/>
           </parameter>
         </parameters>
@@ -36215,7 +56232,9 @@ gst_segment_to_running_time() with that position returns @running_time.</doc>
       <method name="position_from_running_time_full"
               c:identifier="gst_segment_position_from_running_time_full"
               version="1.8">
-        <doc xml:space="preserve">Translate @running_time to the segment position using the currently configured
+        <doc xml:space="preserve"
+             filename="gst/gstsegment.c"
+             line="985">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.
 
@@ -36231,28 +56250,39 @@ in @position.
 When this function returns -1, the returned @position was &lt; 0, and the value
 in the position variable should be negated to get the real negative segment
 position.</doc>
+        <source-position filename="gst/gstsegment.h" line="325"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a 1 or -1 on success, 0 on failure.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstsegment.c"
+               line="1009">a 1 or -1 on success, 0 on failure.</doc>
           <type name="gint" c:type="gint"/>
         </return-value>
         <parameters>
           <instance-parameter name="segment" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSegment structure.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstsegment.c"
+                 line="987">a #GstSegment structure.</doc>
             <type name="Segment" c:type="const GstSegment*"/>
           </instance-parameter>
           <parameter name="format" transfer-ownership="none">
-            <doc xml:space="preserve">the format of the segment.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstsegment.c"
+                 line="988">the format of the segment.</doc>
             <type name="Format" c:type="GstFormat"/>
           </parameter>
           <parameter name="running_time" transfer-ownership="none">
-            <doc xml:space="preserve">the running-time</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstsegment.c"
+                 line="989">the running-time</doc>
             <type name="guint64" c:type="guint64"/>
           </parameter>
           <parameter name="position"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">the resulting position in the segment</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstsegment.c"
+                 line="990">the resulting position in the segment</doc>
             <type name="guint64" c:type="guint64*"/>
           </parameter>
         </parameters>
@@ -36260,24 +56290,35 @@ position.</doc>
       <method name="position_from_stream_time"
               c:identifier="gst_segment_position_from_stream_time"
               version="1.8">
-        <doc xml:space="preserve">Convert @stream_time into a position in the segment so that
+        <doc xml:space="preserve"
+             filename="gst/gstsegment.c"
+             line="659">Convert @stream_time into a position in the segment so that
 gst_segment_to_stream_time() with that position returns @stream_time.</doc>
+        <source-position filename="gst/gstsegment.h" line="312"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the position in the segment for @stream_time. This function returns
+          <doc xml:space="preserve"
+               filename="gst/gstsegment.c"
+               line="668">the position in the segment for @stream_time. This function returns
 -1 when @stream_time is -1 or when it is not inside @segment.</doc>
           <type name="guint64" c:type="guint64"/>
         </return-value>
         <parameters>
           <instance-parameter name="segment" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSegment structure.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstsegment.c"
+                 line="661">a #GstSegment structure.</doc>
             <type name="Segment" c:type="const GstSegment*"/>
           </instance-parameter>
           <parameter name="format" transfer-ownership="none">
-            <doc xml:space="preserve">the format of the segment.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstsegment.c"
+                 line="662">the format of the segment.</doc>
             <type name="Format" c:type="GstFormat"/>
           </parameter>
           <parameter name="stream_time" transfer-ownership="none">
-            <doc xml:space="preserve">the stream_time in the segment</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstsegment.c"
+                 line="663">the stream_time in the segment</doc>
             <type name="guint64" c:type="guint64"/>
           </parameter>
         </parameters>
@@ -36285,7 +56326,9 @@ gst_segment_to_stream_time() with that position returns @stream_time.</doc>
       <method name="position_from_stream_time_full"
               c:identifier="gst_segment_position_from_stream_time_full"
               version="1.8">
-        <doc xml:space="preserve">Translate @stream_time to the segment position using the currently configured
+        <doc xml:space="preserve"
+             filename="gst/gstsegment.c"
+             line="548">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.
 
@@ -36300,52 +56343,74 @@ in @position.
 
 When this function returns -1, the returned @position should be negated
 to get the real negative segment position.</doc>
+        <source-position filename="gst/gstsegment.h" line="309"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a 1 or -1 on success, 0 on failure.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstsegment.c"
+               line="571">a 1 or -1 on success, 0 on failure.</doc>
           <type name="gint" c:type="gint"/>
         </return-value>
         <parameters>
           <instance-parameter name="segment" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSegment structure.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstsegment.c"
+                 line="550">a #GstSegment structure.</doc>
             <type name="Segment" c:type="const GstSegment*"/>
           </instance-parameter>
           <parameter name="format" transfer-ownership="none">
-            <doc xml:space="preserve">the format of the segment.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstsegment.c"
+                 line="551">the format of the segment.</doc>
             <type name="Format" c:type="GstFormat"/>
           </parameter>
           <parameter name="stream_time" transfer-ownership="none">
-            <doc xml:space="preserve">the stream-time</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstsegment.c"
+                 line="552">the stream-time</doc>
             <type name="guint64" c:type="guint64"/>
           </parameter>
           <parameter name="position"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">the resulting position in the segment</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstsegment.c"
+                 line="553">the resulting position in the segment</doc>
             <type name="guint64" c:type="guint64*"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_running_time"
               c:identifier="gst_segment_set_running_time">
-        <doc xml:space="preserve">Adjust the start/stop and base values of @segment such that the next valid
+        <doc xml:space="preserve"
+             filename="gst/gstsegment.c"
+             line="1121">Adjust the start/stop and base values of @segment such that the next valid
 buffer will be one with @running_time.</doc>
+        <source-position filename="gst/gstsegment.h" line="331"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the segment could be updated successfully. If %FALSE is
+          <doc xml:space="preserve"
+               filename="gst/gstsegment.c"
+               line="1130">%TRUE if the segment could be updated successfully. If %FALSE is
 returned, @running_time is -1 or not in @segment.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="segment" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSegment structure.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstsegment.c"
+                 line="1123">a #GstSegment structure.</doc>
             <type name="Segment" c:type="GstSegment*"/>
           </instance-parameter>
           <parameter name="format" transfer-ownership="none">
-            <doc xml:space="preserve">the format of the segment.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstsegment.c"
+                 line="1124">the format of the segment.</doc>
             <type name="Format" c:type="GstFormat"/>
           </parameter>
           <parameter name="running_time" transfer-ownership="none">
-            <doc xml:space="preserve">the running_time in the segment</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstsegment.c"
+                 line="1125">the running_time in the segment</doc>
             <type name="guint64" c:type="guint64"/>
           </parameter>
         </parameters>
@@ -36353,32 +56418,45 @@ returned, @running_time is -1 or not in @segment.</doc>
       <method name="to_position"
               c:identifier="gst_segment_to_position"
               deprecated="1">
-        <doc xml:space="preserve">Convert @running_time into a position in the segment so that
+        <doc xml:space="preserve"
+             filename="gst/gstsegment.c"
+             line="1098">Convert @running_time into a position in the segment so that
 gst_segment_to_running_time() with that position returns @running_time.</doc>
         <doc-deprecated xml:space="preserve">Use gst_segment_position_from_running_time() instead.</doc-deprecated>
+        <source-position filename="gst/gstsegment.h" line="322"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the position in the segment for @running_time. This function returns
+          <doc xml:space="preserve"
+               filename="gst/gstsegment.c"
+               line="1107">the position in the segment for @running_time. This function returns
 -1 when @running_time is -1 or when it is not inside @segment.</doc>
           <type name="guint64" c:type="guint64"/>
         </return-value>
         <parameters>
           <instance-parameter name="segment" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSegment structure.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstsegment.c"
+                 line="1100">a #GstSegment structure.</doc>
             <type name="Segment" c:type="const GstSegment*"/>
           </instance-parameter>
           <parameter name="format" transfer-ownership="none">
-            <doc xml:space="preserve">the format of the segment.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstsegment.c"
+                 line="1101">the format of the segment.</doc>
             <type name="Format" c:type="GstFormat"/>
           </parameter>
           <parameter name="running_time" transfer-ownership="none">
-            <doc xml:space="preserve">the running_time in the segment</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstsegment.c"
+                 line="1102">the running_time in the segment</doc>
             <type name="guint64" c:type="guint64"/>
           </parameter>
         </parameters>
       </method>
       <method name="to_running_time"
               c:identifier="gst_segment_to_running_time">
-        <doc xml:space="preserve">Translate @position to the total running time using the currently configured
+        <doc xml:space="preserve"
+             filename="gst/gstsegment.c"
+             line="820">Translate @position to the total running time using the currently configured
 segment. Position is a value between @segment start and stop time.
 
 This function is typically used by elements that need to synchronize to the
@@ -36387,22 +56465,31 @@ starting from 0. When gst_segment_init() is called, this value will reset to
 0.
 
 This function returns -1 if the position is outside of @segment start and stop.</doc>
+        <source-position filename="gst/gstsegment.h" line="315"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the position as the total running time or -1 when an invalid position
+          <doc xml:space="preserve"
+               filename="gst/gstsegment.c"
+               line="836">the position as the total running time or -1 when an invalid position
 was given.</doc>
           <type name="guint64" c:type="guint64"/>
         </return-value>
         <parameters>
           <instance-parameter name="segment" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSegment structure.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstsegment.c"
+                 line="822">a #GstSegment structure.</doc>
             <type name="Segment" c:type="const GstSegment*"/>
           </instance-parameter>
           <parameter name="format" transfer-ownership="none">
-            <doc xml:space="preserve">the format of the segment.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstsegment.c"
+                 line="823">the format of the segment.</doc>
             <type name="Format" c:type="GstFormat"/>
           </parameter>
           <parameter name="position" transfer-ownership="none">
-            <doc xml:space="preserve">the position in the segment</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstsegment.c"
+                 line="824">the position in the segment</doc>
             <type name="guint64" c:type="guint64"/>
           </parameter>
         </parameters>
@@ -36410,7 +56497,9 @@ was given.</doc>
       <method name="to_running_time_full"
               c:identifier="gst_segment_to_running_time_full"
               version="1.6">
-        <doc xml:space="preserve">Translate @position to the total running time using the currently configured
+        <doc xml:space="preserve"
+             filename="gst/gstsegment.c"
+             line="707">Translate @position to the total running time using the currently configured
 segment. Compared to gst_segment_to_running_time() this function can return
 negative running-time.
 
@@ -36425,21 +56514,30 @@ in @running_time.
 
 When this function returns -1, the returned @running_time should be negated
 to get the real negative running time.</doc>
+        <source-position filename="gst/gstsegment.h" line="318"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a 1 or -1 on success, 0 on failure.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstsegment.c"
+               line="730">a 1 or -1 on success, 0 on failure.</doc>
           <type name="gint" c:type="gint"/>
         </return-value>
         <parameters>
           <instance-parameter name="segment" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSegment structure.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstsegment.c"
+                 line="709">a #GstSegment structure.</doc>
             <type name="Segment" c:type="const GstSegment*"/>
           </instance-parameter>
           <parameter name="format" transfer-ownership="none">
-            <doc xml:space="preserve">the format of the segment.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstsegment.c"
+                 line="710">the format of the segment.</doc>
             <type name="Format" c:type="GstFormat"/>
           </parameter>
           <parameter name="position" transfer-ownership="none">
-            <doc xml:space="preserve">the position in the segment</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstsegment.c"
+                 line="711">the position in the segment</doc>
             <type name="guint64" c:type="guint64"/>
           </parameter>
           <parameter name="running_time"
@@ -36448,7 +56546,9 @@ to get the real negative running time.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">result running-time</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstsegment.c"
+                 line="712">result running-time</doc>
             <type name="guint64" c:type="guint64*"/>
           </parameter>
         </parameters>
@@ -36456,7 +56556,9 @@ to get the real negative running time.</doc>
       <method name="to_stream_time"
               c:identifier="gst_segment_to_stream_time"
               version="1.8">
-        <doc xml:space="preserve">Translate @position to stream time using the currently configured
+        <doc xml:space="preserve"
+             filename="gst/gstsegment.c"
+             line="498">Translate @position to stream time using the currently configured
 segment. The @position value must be between @segment start and
 stop value.
 
@@ -36466,22 +56568,31 @@ In those use cases, @position is typically the buffer timestamp or
 clock time that one wants to convert to the stream time.
 The stream time is always between 0 and the total duration of the
 media stream.</doc>
+        <source-position filename="gst/gstsegment.h" line="306"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the position in stream_time or -1 when an invalid position
+          <doc xml:space="preserve"
+               filename="gst/gstsegment.c"
+               line="515">the position in stream_time or -1 when an invalid position
 was given.</doc>
           <type name="guint64" c:type="guint64"/>
         </return-value>
         <parameters>
           <instance-parameter name="segment" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSegment structure.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstsegment.c"
+                 line="500">a #GstSegment structure.</doc>
             <type name="Segment" c:type="const GstSegment*"/>
           </instance-parameter>
           <parameter name="format" transfer-ownership="none">
-            <doc xml:space="preserve">the format of the segment.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstsegment.c"
+                 line="501">the format of the segment.</doc>
             <type name="Format" c:type="GstFormat"/>
           </parameter>
           <parameter name="position" transfer-ownership="none">
-            <doc xml:space="preserve">the position in the segment</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstsegment.c"
+                 line="502">the position in the segment</doc>
             <type name="guint64" c:type="guint64"/>
           </parameter>
         </parameters>
@@ -36489,7 +56600,9 @@ was given.</doc>
       <method name="to_stream_time_full"
               c:identifier="gst_segment_to_stream_time_full"
               version="1.8">
-        <doc xml:space="preserve">Translate @position to the total stream time using the currently configured
+        <doc xml:space="preserve"
+             filename="gst/gstsegment.c"
+             line="390">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.
 
@@ -36504,28 +56617,39 @@ in @stream_time.
 
 When this function returns -1, the returned @stream_time should be negated
 to get the real negative stream time.</doc>
+        <source-position filename="gst/gstsegment.h" line="303"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a 1 or -1 on success, 0 on failure.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstsegment.c"
+               line="413">a 1 or -1 on success, 0 on failure.</doc>
           <type name="gint" c:type="gint"/>
         </return-value>
         <parameters>
           <instance-parameter name="segment" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSegment structure.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstsegment.c"
+                 line="392">a #GstSegment structure.</doc>
             <type name="Segment" c:type="const GstSegment*"/>
           </instance-parameter>
           <parameter name="format" transfer-ownership="none">
-            <doc xml:space="preserve">the format of the segment.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstsegment.c"
+                 line="393">the format of the segment.</doc>
             <type name="Format" c:type="GstFormat"/>
           </parameter>
           <parameter name="position" transfer-ownership="none">
-            <doc xml:space="preserve">the position in the segment</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstsegment.c"
+                 line="394">the position in the segment</doc>
             <type name="guint64" c:type="guint64"/>
           </parameter>
           <parameter name="stream_time"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">result stream-time</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstsegment.c"
+                 line="395">result stream-time</doc>
             <type name="guint64" c:type="guint64*"/>
           </parameter>
         </parameters>
@@ -36535,53 +56659,78 @@ to get the real negative stream time.</doc>
               glib:type-name="GstSegmentFlags"
               glib:get-type="gst_segment_flags_get_type"
               c:type="GstSegmentFlags">
-      <doc xml:space="preserve">Flags for the GstSegment structure. Currently mapped to the corresponding
+      <doc xml:space="preserve"
+           filename="gst/gstsegment.h"
+           line="163">Flags for the GstSegment structure. Currently mapped to the corresponding
 values of the seek flags.</doc>
       <member name="none"
               value="0"
               c:identifier="GST_SEGMENT_FLAG_NONE"
               glib:nick="none">
-        <doc xml:space="preserve">no flags</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstsegment.h"
+             line="165">no flags</doc>
       </member>
       <member name="reset"
               value="1"
               c:identifier="GST_SEGMENT_FLAG_RESET"
               glib:nick="reset">
-        <doc xml:space="preserve">reset the pipeline running_time to the segment
+        <doc xml:space="preserve"
+             filename="gst/gstsegment.h"
+             line="166">reset the pipeline running_time to the segment
                          running_time</doc>
       </member>
       <member name="trickmode"
               value="16"
               c:identifier="GST_SEGMENT_FLAG_TRICKMODE"
               glib:nick="trickmode">
-        <doc xml:space="preserve">perform skip playback (Since 1.6)</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstsegment.h"
+             line="168">perform skip playback (Since: 1.6)</doc>
       </member>
       <member name="skip"
               value="16"
               c:identifier="GST_SEGMENT_FLAG_SKIP"
               glib:nick="skip">
-        <doc xml:space="preserve">Deprecated backward compatibility flag, replaced
+        <doc xml:space="preserve"
+             filename="gst/gstsegment.h"
+             line="176">Deprecated backward compatibility flag, replaced
                         by @GST_SEGMENT_FLAG_TRICKMODE</doc>
       </member>
       <member name="segment"
               value="8"
               c:identifier="GST_SEGMENT_FLAG_SEGMENT"
               glib:nick="segment">
-        <doc xml:space="preserve">send SEGMENT_DONE instead of EOS</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstsegment.h"
+             line="169">send SEGMENT_DONE instead of EOS</doc>
       </member>
       <member name="trickmode_key_units"
               value="128"
               c:identifier="GST_SEGMENT_FLAG_TRICKMODE_KEY_UNITS"
               glib:nick="trickmode-key-units">
-        <doc xml:space="preserve">Decode only keyframes, where
-                                       possible (Since 1.6)</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstsegment.h"
+             line="170">Decode only keyframes, where
+                                       possible (Since: 1.6)</doc>
+      </member>
+      <member name="trickmode_forward_predicted"
+              value="512"
+              c:identifier="GST_SEGMENT_FLAG_TRICKMODE_FORWARD_PREDICTED"
+              glib:nick="trickmode-forward-predicted">
+        <doc xml:space="preserve"
+             filename="gst/gstsegment.h"
+             line="172">Decode only keyframes or forward
+                                       predicted frames, where possible (Since: 1.18)</doc>
       </member>
       <member name="trickmode_no_audio"
               value="256"
               c:identifier="GST_SEGMENT_FLAG_TRICKMODE_NO_AUDIO"
               glib:nick="trickmode-no-audio">
-        <doc xml:space="preserve">Do not decode any audio, where
-                                       possible (Since 1.6)</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstsegment.h"
+             line="174">Do not decode any audio, where
+                                       possible (Since: 1.6)</doc>
       </member>
     </bitfield>
     <bitfield name="StackTraceFlags"
@@ -36589,43 +56738,66 @@ values of the seek flags.</doc>
               glib:type-name="GstStackTraceFlags"
               glib:get-type="gst_stack_trace_flags_get_type"
               c:type="GstStackTraceFlags">
+      <member name="none"
+              value="0"
+              c:identifier="GST_STACK_TRACE_SHOW_NONE"
+              glib:nick="none">
+        <doc xml:space="preserve"
+             filename="gst/gstinfo.h"
+             line="180">Try to retrieve the minimum information
+                            available, which may be none on some platforms
+                            (Since: 1.18)</doc>
+      </member>
       <member name="full"
               value="1"
               c:identifier="GST_STACK_TRACE_SHOW_FULL"
               glib:nick="full">
-        <doc xml:space="preserve">Try to retrieve as much information as
-                            possible when getting the stack trace</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstinfo.h"
+             line="183">Try to retrieve as much information as possible,
+                            including source information when getting the
+                            stack trace</doc>
       </member>
     </bitfield>
     <enumeration name="State"
                  glib:type-name="GstState"
                  glib:get-type="gst_state_get_type"
                  c:type="GstState">
-      <doc xml:space="preserve">The possible states an element can be in. States can be changed using
+      <doc xml:space="preserve"
+           filename="gst/gstelement.h"
+           line="36">The possible states an element can be in. States can be changed using
 gst_element_set_state() and checked using gst_element_get_state().</doc>
       <member name="void_pending"
               value="0"
               c:identifier="GST_STATE_VOID_PENDING"
               glib:nick="void-pending">
-        <doc xml:space="preserve">no pending state.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstelement.h"
+             line="38">no pending state.</doc>
       </member>
       <member name="null"
               value="1"
               c:identifier="GST_STATE_NULL"
               glib:nick="null">
-        <doc xml:space="preserve">the NULL state or initial state of an element.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstelement.h"
+             line="39">the NULL state or initial state of an element.</doc>
       </member>
       <member name="ready"
               value="2"
               c:identifier="GST_STATE_READY"
               glib:nick="ready">
-        <doc xml:space="preserve">the element is ready to go to PAUSED.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstelement.h"
+             line="40">the element is ready to go to PAUSED.</doc>
       </member>
       <member name="paused"
               value="3"
               c:identifier="GST_STATE_PAUSED"
               glib:nick="paused">
-        <doc xml:space="preserve">the element is PAUSED, it is ready to accept and
+        <doc xml:space="preserve"
+             filename="gst/gstelement.h"
+             line="41">the element is PAUSED, it is ready to accept and
                          process data. Sink elements however only accept one
                          buffer and then block.</doc>
       </member>
@@ -36633,7 +56805,9 @@ gst_element_set_state() and checked using gst_element_get_state().</doc>
               value="4"
               c:identifier="GST_STATE_PLAYING"
               glib:nick="playing">
-        <doc xml:space="preserve">the element is PLAYING, the #GstClock is running and
+        <doc xml:space="preserve"
+             filename="gst/gstelement.h"
+             line="44">the element is PLAYING, the #GstClock is running and
                          the data is flowing.</doc>
       </member>
     </enumeration>
@@ -36641,14 +56815,18 @@ gst_element_set_state() and checked using gst_element_get_state().</doc>
                  glib:type-name="GstStateChange"
                  glib:get-type="gst_state_change_get_type"
                  c:type="GstStateChange">
-      <doc xml:space="preserve">These are the different state changes an element goes through.
+      <doc xml:space="preserve"
+           filename="gst/gstelement.h"
+           line="177">These are the different state changes an element goes through.
 %GST_STATE_NULL &amp;rArr; %GST_STATE_PLAYING is called an upwards state change
 and %GST_STATE_PLAYING &amp;rArr; %GST_STATE_NULL a downwards state change.</doc>
       <member name="null_to_ready"
               value="10"
               c:identifier="GST_STATE_CHANGE_NULL_TO_READY"
               glib:nick="null-to-ready">
-        <doc xml:space="preserve">state change from NULL to READY.
+        <doc xml:space="preserve"
+             filename="gst/gstelement.h"
+             line="179">state change from NULL to READY.
   * The element must check if the resources it needs are available. Device
     sinks and -sources typically try to probe the device to constrain their
     caps.
@@ -36658,7 +56836,9 @@ and %GST_STATE_PLAYING &amp;rArr; %GST_STATE_NULL a downwards state change.</doc
               value="19"
               c:identifier="GST_STATE_CHANGE_READY_TO_PAUSED"
               glib:nick="ready-to-paused">
-        <doc xml:space="preserve">state change from READY to PAUSED.
+        <doc xml:space="preserve"
+             filename="gst/gstelement.h"
+             line="184">state change from READY to PAUSED.
   * The element pads are activated in order to receive data in PAUSED.
     Streaming threads are started.
   * Some elements might need to return %GST_STATE_CHANGE_ASYNC and complete
@@ -36673,7 +56853,9 @@ and %GST_STATE_PLAYING &amp;rArr; %GST_STATE_NULL a downwards state change.</doc
               value="28"
               c:identifier="GST_STATE_CHANGE_PAUSED_TO_PLAYING"
               glib:nick="paused-to-playing">
-        <doc xml:space="preserve">state change from PAUSED to PLAYING.
+        <doc xml:space="preserve"
+             filename="gst/gstelement.h"
+             line="194">state change from PAUSED to PLAYING.
   * Most elements ignore this state change.
   * The pipeline selects a #GstClock and distributes this to all the children
     before setting them to PLAYING. This means that it is only allowed to
@@ -36693,7 +56875,9 @@ and %GST_STATE_PLAYING &amp;rArr; %GST_STATE_NULL a downwards state change.</doc
               value="35"
               c:identifier="GST_STATE_CHANGE_PLAYING_TO_PAUSED"
               glib:nick="playing-to-paused">
-        <doc xml:space="preserve">state change from PLAYING to PAUSED.
+        <doc xml:space="preserve"
+             filename="gst/gstelement.h"
+             line="209">state change from PLAYING to PAUSED.
   * Most elements ignore this state change.
   * The pipeline calculates the running_time based on the last selected
     #GstClock and the base_time. It stores this information to continue
@@ -36711,7 +56895,9 @@ and %GST_STATE_PLAYING &amp;rArr; %GST_STATE_NULL a downwards state change.</doc
               value="26"
               c:identifier="GST_STATE_CHANGE_PAUSED_TO_READY"
               glib:nick="paused-to-ready">
-        <doc xml:space="preserve">state change from PAUSED to READY.
+        <doc xml:space="preserve"
+             filename="gst/gstelement.h"
+             line="222">state change from PAUSED to READY.
   * Sinks unblock any waits in the preroll.
   * Elements unblock any waits on devices
   * Chain or get_range functions return %GST_FLOW_FLUSHING.
@@ -36724,7 +56910,9 @@ and %GST_STATE_PLAYING &amp;rArr; %GST_STATE_NULL a downwards state change.</doc
               value="17"
               c:identifier="GST_STATE_CHANGE_READY_TO_NULL"
               glib:nick="ready-to-null">
-        <doc xml:space="preserve">state change from READY to NULL.
+        <doc xml:space="preserve"
+             filename="gst/gstelement.h"
+             line="230">state change from READY to NULL.
   * Elements close devices
   * Elements reset any internal state.</doc>
       </member>
@@ -36732,42 +56920,57 @@ and %GST_STATE_PLAYING &amp;rArr; %GST_STATE_NULL a downwards state change.</doc
               value="9"
               c:identifier="GST_STATE_CHANGE_NULL_TO_NULL"
               glib:nick="null-to-null">
-        <doc xml:space="preserve">state change from NULL to NULL. (Since 1.14)</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstelement.h"
+             line="233">state change from NULL to NULL. (Since: 1.14)</doc>
       </member>
       <member name="ready_to_ready"
               value="18"
               c:identifier="GST_STATE_CHANGE_READY_TO_READY"
               glib:nick="ready-to-ready">
-        <doc xml:space="preserve">state change from READY to READY,
+        <doc xml:space="preserve"
+             filename="gst/gstelement.h"
+             line="234">state change from READY to READY,
 This might happen when going to PAUSED asynchronously failed, in that case
-elements should make sure they are in a proper, coherent READY state. (Since 1.14)</doc>
+elements should make sure they are in a proper, coherent READY state. (Since: 1.14)</doc>
       </member>
       <member name="paused_to_paused"
               value="27"
               c:identifier="GST_STATE_CHANGE_PAUSED_TO_PAUSED"
               glib:nick="paused-to-paused">
-        <doc xml:space="preserve">state change from PAUSED to PAUSED.
+        <doc xml:space="preserve"
+             filename="gst/gstelement.h"
+             line="237">state change from PAUSED to PAUSED.
 This might happen when elements were in PLAYING state and 'lost state',
-they should make sure to go back to real 'PAUSED' state (prerolling for example). (Since 1.14)</doc>
+they should make sure to go back to real 'PAUSED' state (prerolling for example). (Since: 1.14)</doc>
       </member>
       <member name="playing_to_playing"
               value="36"
               c:identifier="GST_STATE_CHANGE_PLAYING_TO_PLAYING"
               glib:nick="playing-to-playing">
-        <doc xml:space="preserve">state change from PLAYING to PLAYING. (Since 1.14)</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstelement.h"
+             line="240">state change from PLAYING to PLAYING. (Since: 1.14)</doc>
       </member>
       <function name="get_name"
                 c:identifier="gst_state_change_get_name"
                 version="1.14">
-        <doc xml:space="preserve">Gets a string representing the given state transition.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a string with the name of the state
+        <doc xml:space="preserve"
+             filename="gst/gstutils.c"
+             line="1331">Gets a string representing the given state transition.</doc>
+        <source-position filename="gst/gstutils.h" line="996"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="1337">a string with the name of the state
    result.</doc>
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
         <parameters>
           <parameter name="transition" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStateChange to get the name of.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstutils.c"
+                 line="1333">a #GstStateChange to get the name of.</doc>
             <type name="StateChange" c:type="GstStateChange"/>
           </parameter>
         </parameters>
@@ -36777,68 +56980,95 @@ they should make sure to go back to real 'PAUSED' state (prerolling for example)
                  glib:type-name="GstStateChangeReturn"
                  glib:get-type="gst_state_change_return_get_type"
                  c:type="GstStateChangeReturn">
-      <doc xml:space="preserve">The possible return values from a state change function such as
+      <doc xml:space="preserve"
+           filename="gst/gstelement.h"
+           line="66">The possible return values from a state change function such as
 gst_element_set_state(). Only @GST_STATE_CHANGE_FAILURE is a real failure.</doc>
       <member name="failure"
               value="0"
               c:identifier="GST_STATE_CHANGE_FAILURE"
               glib:nick="failure">
-        <doc xml:space="preserve">the state change failed</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstelement.h"
+             line="68">the state change failed</doc>
       </member>
       <member name="success"
               value="1"
               c:identifier="GST_STATE_CHANGE_SUCCESS"
               glib:nick="success">
-        <doc xml:space="preserve">the state change succeeded</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstelement.h"
+             line="69">the state change succeeded</doc>
       </member>
       <member name="async"
               value="2"
               c:identifier="GST_STATE_CHANGE_ASYNC"
               glib:nick="async">
-        <doc xml:space="preserve">the state change will happen asynchronously</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstelement.h"
+             line="70">the state change will happen asynchronously</doc>
       </member>
       <member name="no_preroll"
               value="3"
               c:identifier="GST_STATE_CHANGE_NO_PREROLL"
               glib:nick="no-preroll">
-        <doc xml:space="preserve">the state change succeeded but the element
+        <doc xml:space="preserve"
+             filename="gst/gstelement.h"
+             line="71">the state change succeeded but the element
                               cannot produce data in %GST_STATE_PAUSED.
                               This typically happens with live sources.</doc>
       </member>
     </enumeration>
     <record name="StaticCaps" c:type="GstStaticCaps">
-      <doc xml:space="preserve">Datastructure to initialize #GstCaps from a string description usually
+      <doc xml:space="preserve"
+           filename="gst/gstcaps.h"
+           line="336">Datastructure to initialize #GstCaps from a string description usually
 used in conjunction with GST_STATIC_CAPS() and gst_static_caps_get() to
 instantiate a #GstCaps.</doc>
+      <source-position filename="gst/gstcaps.h" line="352"/>
       <field name="caps" writable="1">
-        <doc xml:space="preserve">the cached #GstCaps</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstcaps.h"
+             line="338">the cached #GstCaps</doc>
         <type name="Caps" c:type="GstCaps*"/>
       </field>
       <field name="string" writable="1">
-        <doc xml:space="preserve">a string describing a caps</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstcaps.h"
+             line="339">a string describing a caps</doc>
         <type name="utf8" c:type="const char*"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
       <method name="cleanup" c:identifier="gst_static_caps_cleanup">
-        <doc xml:space="preserve">Clean up the cached caps contained in @static_caps.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstcaps.c"
+             line="461">Clean up the cached caps contained in @static_caps.</doc>
+        <source-position filename="gst/gstcaps.h" line="438"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="static_caps" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstStaticCaps to clean</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="463">the #GstStaticCaps to clean</doc>
             <type name="StaticCaps" c:type="GstStaticCaps*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get" c:identifier="gst_static_caps_get">
-        <doc xml:space="preserve">Converts a #GstStaticCaps to a #GstCaps.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstcaps.c"
+             line="396">Converts a #GstStaticCaps to a #GstCaps.</doc>
+        <source-position filename="gst/gstcaps.h" line="435"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">a pointer to the #GstCaps. Unref
+          <doc xml:space="preserve"
+               filename="gst/gstcaps.c"
+               line="402">a pointer to the #GstCaps. Unref
     after usage. Since the core holds an additional ref to the
     returned caps, use gst_caps_make_writable() on the returned caps
     to modify it.</doc>
@@ -36846,47 +57076,72 @@ instantiate a #GstCaps.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="static_caps" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstStaticCaps to convert</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstcaps.c"
+                 line="398">the #GstStaticCaps to convert</doc>
             <type name="StaticCaps" c:type="GstStaticCaps*"/>
           </instance-parameter>
         </parameters>
       </method>
     </record>
     <record name="StaticPadTemplate" c:type="GstStaticPadTemplate">
-      <doc xml:space="preserve">Structure describing the #GstStaticPadTemplate.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstpadtemplate.h"
+           line="159">Structure describing the #GstStaticPadTemplate.</doc>
+      <source-position filename="gst/gstpadtemplate.h" line="173"/>
       <field name="name_template" writable="1">
-        <doc xml:space="preserve">the name of the template</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpadtemplate.h"
+             line="161">the name of the template</doc>
         <type name="utf8" c:type="const gchar*"/>
       </field>
       <field name="direction" writable="1">
-        <doc xml:space="preserve">the direction of the template</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpadtemplate.h"
+             line="162">the direction of the template</doc>
         <type name="PadDirection" c:type="GstPadDirection"/>
       </field>
       <field name="presence" writable="1">
-        <doc xml:space="preserve">the presence of the template</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpadtemplate.h"
+             line="163">the presence of the template</doc>
         <type name="PadPresence" c:type="GstPadPresence"/>
       </field>
       <field name="static_caps" writable="1">
-        <doc xml:space="preserve">the caps of the template.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpadtemplate.h"
+             line="164">the caps of the template.</doc>
         <type name="StaticCaps" c:type="GstStaticCaps"/>
       </field>
       <method name="get" c:identifier="gst_static_pad_template_get">
-        <doc xml:space="preserve">Converts a #GstStaticPadTemplate into a #GstPadTemplate.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpadtemplate.c"
+             line="298">Converts a #GstStaticPadTemplate into a #GstPadTemplate.</doc>
+        <source-position filename="gst/gstpadtemplate.h" line="219"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">a new #GstPadTemplate.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstpadtemplate.c"
+               line="304">a new #GstPadTemplate.</doc>
           <type name="PadTemplate" c:type="GstPadTemplate*"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad_template" transfer-ownership="none">
-            <doc xml:space="preserve">the static pad template</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpadtemplate.c"
+                 line="300">the static pad template</doc>
             <type name="StaticPadTemplate" c:type="GstStaticPadTemplate*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_caps" c:identifier="gst_static_pad_template_get_caps">
-        <doc xml:space="preserve">Gets the capabilities of the static pad template.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpadtemplate.c"
+             line="444">Gets the capabilities of the static pad template.</doc>
+        <source-position filename="gst/gstpadtemplate.h" line="227"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the #GstCaps of the static pad template.
+          <doc xml:space="preserve"
+               filename="gst/gstpadtemplate.c"
+               line="450">the #GstCaps of the static pad template.
 Unref after usage. Since the core holds an additional
 ref to the returned caps, use gst_caps_make_writable()
 on the returned caps to modify it.</doc>
@@ -36894,7 +57149,9 @@ on the returned caps to modify it.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="templ" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStaticPadTemplate to get capabilities of.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstpadtemplate.c"
+                 line="446">a #GstStaticPadTemplate to get capabilities of.</doc>
             <type name="StaticPadTemplate" c:type="GstStaticPadTemplate*"/>
           </instance-parameter>
         </parameters>
@@ -36908,7 +57165,9 @@ on the returned caps to modify it.</doc>
            glib:type-name="GstStream"
            glib:get-type="gst_stream_get_type"
            glib:type-struct="StreamClass">
-      <doc xml:space="preserve">A high-level object representing a single stream. It might be backed, or
+      <doc xml:space="preserve"
+           filename="gst/gststreams.h"
+           line="70">A high-level object representing a single stream. It might be backed, or
 not, by an actual flow of data in a pipeline (#GstPad).
 
 A #GstStream does not care about data changes (such as decoding, encoding,
@@ -36920,11 +57179,17 @@ stream-id, tags, caps, type, ...
 
 Elements can subclass a #GstStream for internal usage (to contain information
 pertinent to streams of data).</doc>
+      <source-position filename="gst/gststreams.h" line="113"/>
       <constructor name="new" c:identifier="gst_stream_new" version="1.10">
-        <doc xml:space="preserve">Create a new #GstStream for the given @stream_id, @caps, @type
+        <doc xml:space="preserve"
+             filename="gst/gststreams.c"
+             line="198">Create a new #GstStream for the given @stream_id, @caps, @type
 and @flags</doc>
+        <source-position filename="gst/gststreams.h" line="121"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">The new #GstStream</doc>
+          <doc xml:space="preserve"
+               filename="gst/gststreams.c"
+               line="209">The new #GstStream</doc>
           <type name="Stream" c:type="GstStream*"/>
         </return-value>
         <parameters>
@@ -36932,7 +57197,9 @@ and @flags</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">the id for the new stream. If %NULL,
+            <doc xml:space="preserve"
+                 filename="gst/gststreams.c"
+                 line="200">the id for the new stream. If %NULL,
 a new one will be automatically generated</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
@@ -36940,15 +57207,21 @@ a new one will be automatically generated</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">the #GstCaps of the stream</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststreams.c"
+                 line="202">the #GstCaps of the stream</doc>
             <type name="Caps" c:type="GstCaps*"/>
           </parameter>
           <parameter name="type" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstStreamType of the stream</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststreams.c"
+                 line="203">the #GstStreamType of the stream</doc>
             <type name="StreamType" c:type="GstStreamType"/>
           </parameter>
           <parameter name="flags" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstStreamFlags of the stream</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststreams.c"
+                 line="204">the #GstStreamFlags of the stream</doc>
             <type name="StreamFlags" c:type="GstStreamFlags"/>
           </parameter>
         </parameters>
@@ -36956,14 +57229,21 @@ a new one will be automatically generated</doc>
       <method name="get_caps"
               c:identifier="gst_stream_get_caps"
               version="1.10">
-        <doc xml:space="preserve">Retrieve the caps for @stream, if any</doc>
+        <doc xml:space="preserve"
+             filename="gst/gststreams.c"
+             line="443">Retrieve the caps for @stream, if any</doc>
+        <source-position filename="gst/gststreams.h" line="150"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">The #GstCaps for @stream</doc>
+          <doc xml:space="preserve"
+               filename="gst/gststreams.c"
+               line="449">The #GstCaps for @stream</doc>
           <type name="Caps" c:type="GstCaps*"/>
         </return-value>
         <parameters>
           <instance-parameter name="stream" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStream</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststreams.c"
+                 line="445">a #GstStream</doc>
             <type name="Stream" c:type="GstStream*"/>
           </instance-parameter>
         </parameters>
@@ -36971,14 +57251,21 @@ a new one will be automatically generated</doc>
       <method name="get_stream_flags"
               c:identifier="gst_stream_get_stream_flags"
               version="1.10">
-        <doc xml:space="preserve">Retrieve the current stream flags for @stream</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The #GstStreamFlags for @stream</doc>
+        <doc xml:space="preserve"
+             filename="gst/gststreams.c"
+             line="290">Retrieve the current stream flags for @stream</doc>
+        <source-position filename="gst/gststreams.h" line="132"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gststreams.c"
+               line="296">The #GstStreamFlags for @stream</doc>
           <type name="StreamFlags" c:type="GstStreamFlags"/>
         </return-value>
         <parameters>
           <instance-parameter name="stream" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStream</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststreams.c"
+                 line="292">a #GstStream</doc>
             <type name="Stream" c:type="GstStream*"/>
           </instance-parameter>
         </parameters>
@@ -36986,15 +57273,22 @@ a new one will be automatically generated</doc>
       <method name="get_stream_id"
               c:identifier="gst_stream_get_stream_id"
               version="1.10">
-        <doc xml:space="preserve">Returns the stream ID of @stream.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gststreams.c"
+             line="249">Returns the stream ID of @stream.</doc>
+        <source-position filename="gst/gststreams.h" line="126"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">the stream ID of @stream. Only valid
+          <doc xml:space="preserve"
+               filename="gst/gststreams.c"
+               line="255">the stream ID of @stream. Only valid
 during the lifetime of @stream.</doc>
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
         <parameters>
           <instance-parameter name="stream" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStream</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststreams.c"
+                 line="251">a #GstStream</doc>
             <type name="Stream" c:type="GstStream*"/>
           </instance-parameter>
         </parameters>
@@ -37002,14 +57296,21 @@ during the lifetime of @stream.</doc>
       <method name="get_stream_type"
               c:identifier="gst_stream_get_stream_type"
               version="1.10">
-        <doc xml:space="preserve">Retrieve the stream type for @stream</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The #GstStreamType for @stream</doc>
+        <doc xml:space="preserve"
+             filename="gst/gststreams.c"
+             line="336">Retrieve the stream type for @stream</doc>
+        <source-position filename="gst/gststreams.h" line="138"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gststreams.c"
+               line="342">The #GstStreamType for @stream</doc>
           <type name="StreamType" c:type="GstStreamType"/>
         </return-value>
         <parameters>
           <instance-parameter name="stream" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStream</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststreams.c"
+                 line="338">a #GstStream</doc>
             <type name="Stream" c:type="GstStream*"/>
           </instance-parameter>
         </parameters>
@@ -37017,14 +57318,21 @@ during the lifetime of @stream.</doc>
       <method name="get_tags"
               c:identifier="gst_stream_get_tags"
               version="1.10">
-        <doc xml:space="preserve">Retrieve the tags for @stream, if any</doc>
+        <doc xml:space="preserve"
+             filename="gst/gststreams.c"
+             line="389">Retrieve the tags for @stream, if any</doc>
+        <source-position filename="gst/gststreams.h" line="144"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">The #GstTagList for @stream</doc>
+          <doc xml:space="preserve"
+               filename="gst/gststreams.c"
+               line="395">The #GstTagList for @stream</doc>
           <type name="TagList" c:type="GstTagList*"/>
         </return-value>
         <parameters>
           <instance-parameter name="stream" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStream</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststreams.c"
+                 line="391">a #GstStream</doc>
             <type name="Stream" c:type="GstStream*"/>
           </instance-parameter>
         </parameters>
@@ -37032,20 +57340,27 @@ during the lifetime of @stream.</doc>
       <method name="set_caps"
               c:identifier="gst_stream_set_caps"
               version="1.10">
-        <doc xml:space="preserve">Set the caps for the #GstStream</doc>
+        <doc xml:space="preserve"
+             filename="gst/gststreams.c"
+             line="414">Set the caps for the #GstStream</doc>
+        <source-position filename="gst/gststreams.h" line="147"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="stream" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStream</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststreams.c"
+                 line="416">a #GstStream</doc>
             <type name="Stream" c:type="GstStream*"/>
           </instance-parameter>
           <parameter name="caps"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">a #GstCaps</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststreams.c"
+                 line="417">a #GstCaps</doc>
             <type name="Caps" c:type="GstCaps*"/>
           </parameter>
         </parameters>
@@ -37053,17 +57368,24 @@ during the lifetime of @stream.</doc>
       <method name="set_stream_flags"
               c:identifier="gst_stream_set_stream_flags"
               version="1.10">
-        <doc xml:space="preserve">Set the @flags for the @stream.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gststreams.c"
+             line="268">Set the @flags for the @stream.</doc>
+        <source-position filename="gst/gststreams.h" line="129"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="stream" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStream</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststreams.c"
+                 line="270">a #GstStream</doc>
             <type name="Stream" c:type="GstStream*"/>
           </instance-parameter>
           <parameter name="flags" transfer-ownership="none">
-            <doc xml:space="preserve">the flags to set on @stream</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststreams.c"
+                 line="271">the flags to set on @stream</doc>
             <type name="StreamFlags" c:type="GstStreamFlags"/>
           </parameter>
         </parameters>
@@ -37071,17 +57393,24 @@ during the lifetime of @stream.</doc>
       <method name="set_stream_type"
               c:identifier="gst_stream_set_stream_type"
               version="1.10">
-        <doc xml:space="preserve">Set the stream type of @stream</doc>
+        <doc xml:space="preserve"
+             filename="gst/gststreams.c"
+             line="314">Set the stream type of @stream</doc>
+        <source-position filename="gst/gststreams.h" line="135"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="stream" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStream</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststreams.c"
+                 line="316">a #GstStream</doc>
             <type name="Stream" c:type="GstStream*"/>
           </instance-parameter>
           <parameter name="stream_type" transfer-ownership="none">
-            <doc xml:space="preserve">the type to set on @stream</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststreams.c"
+                 line="317">the type to set on @stream</doc>
             <type name="StreamType" c:type="GstStreamType"/>
           </parameter>
         </parameters>
@@ -37089,26 +57418,35 @@ during the lifetime of @stream.</doc>
       <method name="set_tags"
               c:identifier="gst_stream_set_tags"
               version="1.10">
-        <doc xml:space="preserve">Set the tags for the #GstStream</doc>
+        <doc xml:space="preserve"
+             filename="gst/gststreams.c"
+             line="360">Set the tags for the #GstStream</doc>
+        <source-position filename="gst/gststreams.h" line="141"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="stream" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStream</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststreams.c"
+                 line="362">a #GstStream</doc>
             <type name="Stream" c:type="GstStream*"/>
           </instance-parameter>
           <parameter name="tags"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">a #GstTagList</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststreams.c"
+                 line="363">a #GstTagList</doc>
             <type name="TagList" c:type="GstTagList*"/>
           </parameter>
         </parameters>
       </method>
       <property name="caps" writable="1" transfer-ownership="none">
-        <doc xml:space="preserve">The #GstCaps of the #GstStream.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gststreams.c"
+             line="153">The #GstCaps of the #GstStream.</doc>
         <type name="Caps"/>
       </property>
       <property name="stream-flags"
@@ -37121,7 +57459,9 @@ during the lifetime of @stream.</doc>
                 writable="1"
                 construct-only="1"
                 transfer-ownership="none">
-        <doc xml:space="preserve">The unique identifier of the #GstStream. Can only be set at construction
+        <doc xml:space="preserve"
+             filename="gst/gststreams.c"
+             line="117">The unique identifier of the #GstStream. Can only be set at construction
 time.</doc>
         <type name="utf8" c:type="gchar*"/>
       </property>
@@ -37129,25 +57469,31 @@ time.</doc>
                 writable="1"
                 construct="1"
                 transfer-ownership="none">
-        <doc xml:space="preserve">The #GstStreamType of the #GstStream. Can only be set at construction time.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gststreams.c"
+             line="141">The #GstStreamType of the #GstStream. Can only be set at construction time.</doc>
         <type name="StreamType"/>
       </property>
       <property name="tags" writable="1" transfer-ownership="none">
-        <doc xml:space="preserve">The #GstTagList of the #GstStream.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gststreams.c"
+             line="164">The #GstTagList of the #GstStream.</doc>
         <type name="TagList"/>
       </property>
       <field name="object" readable="0" private="1">
         <type name="Object" c:type="GstObject"/>
       </field>
       <field name="stream_id">
-        <doc xml:space="preserve">The Stream Identifier for this #GstStream</doc>
+        <doc xml:space="preserve"
+             filename="gst/gststreams.h"
+             line="72">The Stream Identifier for this #GstStream</doc>
         <type name="utf8" c:type="const gchar*"/>
       </field>
       <field name="priv" readable="0" private="1">
         <type name="StreamPrivate" c:type="GstStreamPrivate*"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -37155,13 +57501,18 @@ time.</doc>
     <record name="StreamClass"
             c:type="GstStreamClass"
             glib:is-gtype-struct-for="Stream">
-      <doc xml:space="preserve">GstStream class structure</doc>
+      <doc xml:space="preserve"
+           filename="gst/gststreams.h"
+           line="102">GstStream class structure</doc>
+      <source-position filename="gst/gststreams.h" line="113"/>
       <field name="parent_class">
-        <doc xml:space="preserve">the parent class structure</doc>
+        <doc xml:space="preserve"
+             filename="gst/gststreams.h"
+             line="104">the parent class structure</doc>
         <type name="ObjectClass" c:type="GstObjectClass"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -37174,7 +57525,9 @@ time.</doc>
            glib:type-name="GstStreamCollection"
            glib:get-type="gst_stream_collection_get_type"
            glib:type-struct="StreamCollectionClass">
-      <doc xml:space="preserve">A collection of #GstStream that are available.
+      <doc xml:space="preserve"
+           filename="gst/gststreamcollection.h"
+           line="47">A collection of #GstStream that are available.
 
 A #GstStreamCollection will be provided by elements that can make those
 streams available. Applications can use the collection to show the user
@@ -37190,12 +57543,18 @@ Several elements in a pipeline can provide #GstStreamCollection.
 
 Applications can activate streams from a collection by using the
 #GST_EVENT_SELECT_STREAMS event on a pipeline, bin or element.</doc>
+      <source-position filename="gst/gststreamcollection.h" line="94"/>
       <constructor name="new"
                    c:identifier="gst_stream_collection_new"
                    version="1.10">
-        <doc xml:space="preserve">Create a new #GstStreamCollection.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gststreamcollection.c"
+             line="161">Create a new #GstStreamCollection.</doc>
+        <source-position filename="gst/gststreamcollection.h" line="100"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">The new #GstStreamCollection.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gststreamcollection.c"
+               line="167">The new #GstStreamCollection.</doc>
           <type name="StreamCollection" c:type="GstStreamCollection*"/>
         </return-value>
         <parameters>
@@ -37203,12 +57562,15 @@ Applications can activate streams from a collection by using the
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">The stream id of the parent stream</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststreamcollection.c"
+                 line="163">The stream id of the parent stream</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </constructor>
       <virtual-method name="stream_notify">
+        <source-position filename="gst/gststreamcollection.h" line="90"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
@@ -37227,18 +57589,27 @@ Applications can activate streams from a collection by using the
       <method name="add_stream"
               c:identifier="gst_stream_collection_add_stream"
               version="1.10">
-        <doc xml:space="preserve">Add the given @stream to the @collection.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the @stream was properly added, else %FALSE</doc>
+        <doc xml:space="preserve"
+             filename="gst/gststreamcollection.c"
+             line="269">Add the given @stream to the @collection.</doc>
+        <source-position filename="gst/gststreamcollection.h" line="112"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gststreamcollection.c"
+               line="276">%TRUE if the @stream was properly added, else %FALSE</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="collection" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStreamCollection</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststreamcollection.c"
+                 line="271">a #GstStreamCollection</doc>
             <type name="StreamCollection" c:type="GstStreamCollection*"/>
           </instance-parameter>
           <parameter name="stream" transfer-ownership="full">
-            <doc xml:space="preserve">the #GstStream to add</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststreamcollection.c"
+                 line="272">the #GstStream to add</doc>
             <type name="Stream" c:type="GstStream*"/>
           </parameter>
         </parameters>
@@ -37246,14 +57617,21 @@ Applications can activate streams from a collection by using the
       <method name="get_size"
               c:identifier="gst_stream_collection_get_size"
               version="1.10">
-        <doc xml:space="preserve">Get the number of streams this collection contains</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The number of streams that @collection contains</doc>
+        <doc xml:space="preserve"
+             filename="gst/gststreamcollection.c"
+             line="296">Get the number of streams this collection contains</doc>
+        <source-position filename="gst/gststreamcollection.h" line="106"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gststreamcollection.c"
+               line="302">The number of streams that @collection contains</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="collection" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStreamCollection</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststreamcollection.c"
+                 line="298">a #GstStreamCollection</doc>
             <type name="StreamCollection" c:type="GstStreamCollection*"/>
           </instance-parameter>
         </parameters>
@@ -37261,20 +57639,29 @@ Applications can activate streams from a collection by using the
       <method name="get_stream"
               c:identifier="gst_stream_collection_get_stream"
               version="1.10">
-        <doc xml:space="preserve">Retrieve the #GstStream with index @index from the collection.
+        <doc xml:space="preserve"
+             filename="gst/gststreamcollection.c"
+             line="314">Retrieve the #GstStream with index @index from the collection.
 
 The caller should not modify the returned #GstStream</doc>
+        <source-position filename="gst/gststreamcollection.h" line="109"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">A #GstStream</doc>
+          <doc xml:space="preserve"
+               filename="gst/gststreamcollection.c"
+               line="323">A #GstStream</doc>
           <type name="Stream" c:type="GstStream*"/>
         </return-value>
         <parameters>
           <instance-parameter name="collection" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStreamCollection</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststreamcollection.c"
+                 line="316">a #GstStreamCollection</doc>
             <type name="StreamCollection" c:type="GstStreamCollection*"/>
           </instance-parameter>
           <parameter name="index" transfer-ownership="none">
-            <doc xml:space="preserve">Index of the stream to retrieve</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststreamcollection.c"
+                 line="317">Index of the stream to retrieve</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
@@ -37282,14 +57669,21 @@ The caller should not modify the returned #GstStream</doc>
       <method name="get_upstream_id"
               c:identifier="gst_stream_collection_get_upstream_id"
               version="1.10">
-        <doc xml:space="preserve">Returns the upstream id of the @collection.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The upstream id</doc>
+        <doc xml:space="preserve"
+             filename="gst/gststreamcollection.c"
+             line="201">Returns the upstream id of the @collection.</doc>
+        <source-position filename="gst/gststreamcollection.h" line="103"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gststreamcollection.c"
+               line="207">The upstream id</doc>
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
         <parameters>
           <instance-parameter name="collection" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStreamCollection</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststreamcollection.c"
+                 line="203">a #GstStreamCollection</doc>
             <type name="StreamCollection" c:type="GstStreamCollection*"/>
           </instance-parameter>
         </parameters>
@@ -37311,7 +57705,7 @@ The caller should not modify the returned #GstStream</doc>
               c:type="GstStreamCollectionPrivate*"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -37336,13 +57730,19 @@ The caller should not modify the returned #GstStream</doc>
     <record name="StreamCollectionClass"
             c:type="GstStreamCollectionClass"
             glib:is-gtype-struct-for="StreamCollection">
-      <doc xml:space="preserve">GstStreamCollection class structure</doc>
+      <doc xml:space="preserve"
+           filename="gst/gststreamcollection.h"
+           line="79">GstStreamCollection class structure</doc>
+      <source-position filename="gst/gststreamcollection.h" line="94"/>
       <field name="parent_class">
-        <doc xml:space="preserve">the parent class structure</doc>
+        <doc xml:space="preserve"
+             filename="gst/gststreamcollection.h"
+             line="81">the parent class structure</doc>
         <type name="ObjectClass" c:type="GstObjectClass"/>
       </field>
       <field name="stream_notify">
         <callback name="stream_notify">
+          <source-position filename="gst/gststreamcollection.h" line="90"/>
           <return-value transfer-ownership="none">
             <type name="none" c:type="void"/>
           </return-value>
@@ -37360,7 +57760,7 @@ The caller should not modify the returned #GstStream</doc>
         </callback>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -37368,109 +57768,141 @@ The caller should not modify the returned #GstStream</doc>
     <record name="StreamCollectionPrivate"
             c:type="GstStreamCollectionPrivate"
             disguised="1">
+      <source-position filename="gst/gststreamcollection.h" line="42"/>
     </record>
     <enumeration name="StreamError"
                  glib:type-name="GstStreamError"
                  glib:get-type="gst_stream_error_get_type"
                  c:type="GstStreamError"
                  glib:error-domain="gst-stream-error-quark">
-      <doc xml:space="preserve">Stream errors are for anything related to the stream being processed:
+      <doc xml:space="preserve"
+           filename="gst/gsterror.h"
+           line="156">Stream errors are for anything related to the stream being processed:
 format errors, media type errors, ...
 They're typically used by decoders, demuxers, converters, ...</doc>
       <member name="failed"
               value="1"
               c:identifier="GST_STREAM_ERROR_FAILED"
               glib:nick="failed">
-        <doc xml:space="preserve">a general error which doesn't fit in any other
+        <doc xml:space="preserve"
+             filename="gst/gsterror.h"
+             line="158">a general error which doesn't fit in any other
 category.  Make sure you add a custom message to the error call.</doc>
       </member>
       <member name="too_lazy"
               value="2"
               c:identifier="GST_STREAM_ERROR_TOO_LAZY"
               glib:nick="too-lazy">
-        <doc xml:space="preserve">do not use this except as a placeholder for
+        <doc xml:space="preserve"
+             filename="gst/gsterror.h"
+             line="160">do not use this except as a placeholder for
 deciding where to go while developing code.</doc>
       </member>
       <member name="not_implemented"
               value="3"
               c:identifier="GST_STREAM_ERROR_NOT_IMPLEMENTED"
               glib:nick="not-implemented">
-        <doc xml:space="preserve">use this when you do not want to implement
+        <doc xml:space="preserve"
+             filename="gst/gsterror.h"
+             line="162">use this when you do not want to implement
 this functionality yet.</doc>
       </member>
       <member name="type_not_found"
               value="4"
               c:identifier="GST_STREAM_ERROR_TYPE_NOT_FOUND"
               glib:nick="type-not-found">
-        <doc xml:space="preserve">used when the element doesn't know the
+        <doc xml:space="preserve"
+             filename="gst/gsterror.h"
+             line="164">used when the element doesn't know the
 stream's type.</doc>
       </member>
       <member name="wrong_type"
               value="5"
               c:identifier="GST_STREAM_ERROR_WRONG_TYPE"
               glib:nick="wrong-type">
-        <doc xml:space="preserve">used when the element doesn't handle this type
+        <doc xml:space="preserve"
+             filename="gst/gsterror.h"
+             line="166">used when the element doesn't handle this type
 of stream.</doc>
       </member>
       <member name="codec_not_found"
               value="6"
               c:identifier="GST_STREAM_ERROR_CODEC_NOT_FOUND"
               glib:nick="codec-not-found">
-        <doc xml:space="preserve">used when there's no codec to handle the
+        <doc xml:space="preserve"
+             filename="gst/gsterror.h"
+             line="168">used when there's no codec to handle the
 stream's type.</doc>
       </member>
       <member name="decode"
               value="7"
               c:identifier="GST_STREAM_ERROR_DECODE"
               glib:nick="decode">
-        <doc xml:space="preserve">used when decoding fails.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsterror.h"
+             line="170">used when decoding fails.</doc>
       </member>
       <member name="encode"
               value="8"
               c:identifier="GST_STREAM_ERROR_ENCODE"
               glib:nick="encode">
-        <doc xml:space="preserve">used when encoding fails.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsterror.h"
+             line="171">used when encoding fails.</doc>
       </member>
       <member name="demux"
               value="9"
               c:identifier="GST_STREAM_ERROR_DEMUX"
               glib:nick="demux">
-        <doc xml:space="preserve">used when demuxing fails.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsterror.h"
+             line="172">used when demuxing fails.</doc>
       </member>
       <member name="mux"
               value="10"
               c:identifier="GST_STREAM_ERROR_MUX"
               glib:nick="mux">
-        <doc xml:space="preserve">used when muxing fails.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsterror.h"
+             line="173">used when muxing fails.</doc>
       </member>
       <member name="format"
               value="11"
               c:identifier="GST_STREAM_ERROR_FORMAT"
               glib:nick="format">
-        <doc xml:space="preserve">used when the stream is of the wrong format
+        <doc xml:space="preserve"
+             filename="gst/gsterror.h"
+             line="174">used when the stream is of the wrong format
 (for example, wrong caps).</doc>
       </member>
       <member name="decrypt"
               value="12"
               c:identifier="GST_STREAM_ERROR_DECRYPT"
               glib:nick="decrypt">
-        <doc xml:space="preserve">used when the stream is encrypted and can't be
+        <doc xml:space="preserve"
+             filename="gst/gsterror.h"
+             line="176">used when the stream is encrypted and can't be
 decrypted because this is not supported by the element.</doc>
       </member>
       <member name="decrypt_nokey"
               value="13"
               c:identifier="GST_STREAM_ERROR_DECRYPT_NOKEY"
               glib:nick="decrypt-nokey">
-        <doc xml:space="preserve">used when the stream is encrypted and
+        <doc xml:space="preserve"
+             filename="gst/gsterror.h"
+             line="178">used when the stream is encrypted and
 can't be decrypted because no suitable key is available.</doc>
       </member>
       <member name="num_errors"
               value="14"
               c:identifier="GST_STREAM_ERROR_NUM_ERRORS"
               glib:nick="num-errors">
-        <doc xml:space="preserve">the number of stream error types.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsterror.h"
+             line="180">the number of stream error types.</doc>
       </member>
       <function name="quark" c:identifier="gst_stream_error_quark">
+        <attribute name="doc.skip" value="true"/>
         <return-value transfer-ownership="none">
           <type name="GLib.Quark" c:type="GQuark"/>
         </return-value>
@@ -37485,13 +57917,17 @@ can't be decrypted because no suitable key is available.</doc>
               value="0"
               c:identifier="GST_STREAM_FLAG_NONE"
               glib:nick="none">
-        <doc xml:space="preserve">This stream has no special attributes</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstevent.h"
+             line="197">This stream has no special attributes</doc>
       </member>
       <member name="sparse"
               value="1"
               c:identifier="GST_STREAM_FLAG_SPARSE"
               glib:nick="sparse">
-        <doc xml:space="preserve">This stream is a sparse stream (e.g. a subtitle
+        <doc xml:space="preserve"
+             filename="gst/gstevent.h"
+             line="198">This stream is a sparse stream (e.g. a subtitle
    stream), data may flow only in irregular intervals with large gaps in
    between.</doc>
       </member>
@@ -37499,7 +57935,9 @@ can't be decrypted because no suitable key is available.</doc>
               value="2"
               c:identifier="GST_STREAM_FLAG_SELECT"
               glib:nick="select">
-        <doc xml:space="preserve">This stream should be selected by default. This
+        <doc xml:space="preserve"
+             filename="gst/gstevent.h"
+             line="201">This stream should be selected by default. This
    flag may be used by demuxers to signal that a stream should be selected
    by default in a playback scenario.</doc>
       </member>
@@ -37507,7 +57945,9 @@ can't be decrypted because no suitable key is available.</doc>
               value="4"
               c:identifier="GST_STREAM_FLAG_UNSELECT"
               glib:nick="unselect">
-        <doc xml:space="preserve">This stream should not be selected by default.
+        <doc xml:space="preserve"
+             filename="gst/gstevent.h"
+             line="204">This stream should not be selected by default.
    This flag may be used by demuxers to signal that a stream should not
    be selected by default in a playback scenario, but only if explicitly
    selected by the user (e.g. an audio track for the hard of hearing or
@@ -37515,54 +57955,71 @@ can't be decrypted because no suitable key is available.</doc>
       </member>
     </bitfield>
     <record name="StreamPrivate" c:type="GstStreamPrivate" disguised="1">
+      <source-position filename="gst/gststreams.h" line="68"/>
     </record>
     <enumeration name="StreamStatusType"
                  glib:type-name="GstStreamStatusType"
                  glib:get-type="gst_stream_status_type_get_type"
                  c:type="GstStreamStatusType">
-      <doc xml:space="preserve">The type of a %GST_MESSAGE_STREAM_STATUS. The stream status messages inform the
+      <doc xml:space="preserve"
+           filename="gst/gstmessage.h"
+           line="283">The type of a %GST_MESSAGE_STREAM_STATUS. The stream status messages inform the
 application of new streaming threads and their status.</doc>
       <member name="create"
               value="0"
               c:identifier="GST_STREAM_STATUS_TYPE_CREATE"
               glib:nick="create">
-        <doc xml:space="preserve">A new thread need to be created.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.h"
+             line="285">A new thread need to be created.</doc>
       </member>
       <member name="enter"
               value="1"
               c:identifier="GST_STREAM_STATUS_TYPE_ENTER"
               glib:nick="enter">
-        <doc xml:space="preserve">a thread entered its loop function</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.h"
+             line="286">a thread entered its loop function</doc>
       </member>
       <member name="leave"
               value="2"
               c:identifier="GST_STREAM_STATUS_TYPE_LEAVE"
               glib:nick="leave">
-        <doc xml:space="preserve">a thread left its loop function</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.h"
+             line="287">a thread left its loop function</doc>
       </member>
       <member name="destroy"
               value="3"
               c:identifier="GST_STREAM_STATUS_TYPE_DESTROY"
               glib:nick="destroy">
-        <doc xml:space="preserve">a thread is destroyed</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.h"
+             line="288">a thread is destroyed</doc>
       </member>
       <member name="start"
               value="8"
               c:identifier="GST_STREAM_STATUS_TYPE_START"
               glib:nick="start">
-        <doc xml:space="preserve">a thread is started</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.h"
+             line="289">a thread is started</doc>
       </member>
       <member name="pause"
               value="9"
               c:identifier="GST_STREAM_STATUS_TYPE_PAUSE"
               glib:nick="pause">
-        <doc xml:space="preserve">a thread is paused</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.h"
+             line="290">a thread is paused</doc>
       </member>
       <member name="stop"
               value="10"
               c:identifier="GST_STREAM_STATUS_TYPE_STOP"
               glib:nick="stop">
-        <doc xml:space="preserve">a thread is stopped</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.h"
+             line="291">a thread is stopped</doc>
       </member>
     </enumeration>
     <bitfield name="StreamType"
@@ -37570,7 +58027,9 @@ application of new streaming threads and their status.</doc>
               glib:type-name="GstStreamType"
               glib:get-type="gst_stream_type_get_type"
               c:type="GstStreamType">
-      <doc xml:space="preserve">#GstStreamType describes a high level classification set for
+      <doc xml:space="preserve"
+           filename="gst/gststreams.h"
+           line="40">#GstStreamType describes a high level classification set for
 flows of data in #GstStream objects.
 
 Note that this is a flag, and therefore users should not assume it
@@ -37580,43 +58039,60 @@ whether a stream is of a certain type.</doc>
               value="1"
               c:identifier="GST_STREAM_TYPE_UNKNOWN"
               glib:nick="unknown">
-        <doc xml:space="preserve">The stream is of unknown (unclassified) type.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gststreams.h"
+             line="42">The stream is of unknown (unclassified) type.</doc>
       </member>
       <member name="audio"
               value="2"
               c:identifier="GST_STREAM_TYPE_AUDIO"
               glib:nick="audio">
-        <doc xml:space="preserve">The stream is of audio data</doc>
+        <doc xml:space="preserve"
+             filename="gst/gststreams.h"
+             line="43">The stream is of audio data</doc>
       </member>
       <member name="video"
               value="4"
               c:identifier="GST_STREAM_TYPE_VIDEO"
               glib:nick="video">
-        <doc xml:space="preserve">The stream carries video data</doc>
+        <doc xml:space="preserve"
+             filename="gst/gststreams.h"
+             line="44">The stream carries video data</doc>
       </member>
       <member name="container"
               value="8"
               c:identifier="GST_STREAM_TYPE_CONTAINER"
               glib:nick="container">
-        <doc xml:space="preserve">The stream is a muxed container type</doc>
+        <doc xml:space="preserve"
+             filename="gst/gststreams.h"
+             line="45">The stream is a muxed container type</doc>
       </member>
       <member name="text"
               value="16"
               c:identifier="GST_STREAM_TYPE_TEXT"
               glib:nick="text">
-        <doc xml:space="preserve">The stream contains subtitle / subpicture data.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gststreams.h"
+             line="46">The stream contains subtitle / subpicture data.</doc>
       </member>
       <function name="get_name"
                 c:identifier="gst_stream_type_get_name"
                 version="1.10">
-        <doc xml:space="preserve">Get a descriptive string for a given #GstStreamType</doc>
+        <doc xml:space="preserve"
+             filename="gst/gststreams.c"
+             line="538">Get a descriptive string for a given #GstStreamType</doc>
+        <source-position filename="gst/gststreams.h" line="153"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">A string describing the stream type</doc>
+          <doc xml:space="preserve"
+               filename="gst/gststreams.c"
+               line="544">A string describing the stream type</doc>
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
         <parameters>
           <parameter name="stype" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStreamType</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststreams.c"
+                 line="540">a #GstStreamType</doc>
             <type name="StreamType" c:type="GstStreamType"/>
           </parameter>
         </parameters>
@@ -37627,22 +58103,25 @@ whether a stream is of a certain type.</doc>
             glib:type-name="GstStructure"
             glib:get-type="gst_structure_get_type"
             c:symbol-prefix="structure">
-      <doc xml:space="preserve">A #GstStructure is a collection of key/value pairs. The keys are expressed
-as GQuarks and the values can be of any GType.
+      <doc xml:space="preserve"
+           filename="gst/gststructure.c"
+           line="22">A #GstStructure is a collection of key/value pairs. The keys are expressed as
+GQuarks and the values can be of any GType.
 
 In addition to the key/value pairs, a #GstStructure also has a name. The name
-starts with a letter and can be filled by letters, numbers and any of "/-_.:".
+starts with a letter and can be filled by letters, numbers and any of
+"/-_.:".
 
-#GstStructure is used by various GStreamer subsystems to store information
-in a flexible and extensible way. A #GstStructure does not have a refcount
+#GstStructure is used by various GStreamer subsystems to store information in
+a flexible and extensible way. A #GstStructure does not have a refcount
 because it usually is part of a higher level object such as #GstCaps,
 #GstMessage, #GstEvent, #GstQuery. It provides a means to enforce mutability
 using the refcount of the parent with the gst_structure_set_parent_refcount()
 method.
 
 A #GstStructure can be created with gst_structure_new_empty() or
-gst_structure_new(), which both take a name and an optional set of
-key/value pairs along with the types of the values.
+gst_structure_new(), which both take a name and an optional set of key/value
+pairs along with the types of the values.
 
 Field values can be changed with gst_structure_set_value() or
 gst_structure_set().
@@ -37653,62 +58132,189 @@ convenient gst_structure_get_*() functions.
 Fields can be removed with gst_structure_remove_field() or
 gst_structure_remove_fields().
 
-Strings in structures must be ASCII or UTF-8 encoded. Other encodings are
-not allowed. Strings may be %NULL however.
+Strings in structures must be ASCII or UTF-8 encoded. Other encodings are not
+allowed. Strings may be %NULL however.
 
-Be aware that the current #GstCaps / #GstStructure serialization into string
-has limited support for nested #GstCaps / #GstStructure fields. It can only
-support one level of nesting. Using more levels will lead to unexpected
-behavior when using serialization features, such as gst_caps_to_string() or
-gst_value_serialize() and their counterparts.</doc>
+## The serialization format
+
+GstStructure serialization format serialize the GstStructure name,
+keys/GType/values in a comma separated list with the structure name as first
+field without value followed by separated key/value pairs in the form
+`key=value`, for example:
+
+```
+a-structure, key=value
+````
+
+The values type will be inferred if not explicitly specified with the
+`(GTypeName)value` syntax, for example the following struct will have one
+field called 'is-string' which has the string 'true' as a value:
+
+```
+a-struct, field-is-string=(string)true, field-is-boolean=true
+```
+
+*Note*: without specifying `(string), `field-is-string` type would have been
+inferred as boolean.
+
+*Note*: we specified `(string)` as a type even if `gchararray` is the actual
+GType name as for convenience some well known types have been aliased or
+abbreviated.
+
+To avoid specifying the type, you can give some hints to the "type system".
+For example to specify a value as a double, you should add a decimal (ie. `1`
+is an `int` while `1.0` is a `double`).
+
+*Note*: when a structure is serialized with #gst_structure_to_string, all
+values are explicitly typed.
+
+Some types have special delimiters:
+
+- [GstValueArray](GST_TYPE_ARRAY) are inside curly brackets (`{` and `}`).
+  For example `a-structure, array={1, 2, 3}`
+- Ranges are inside brackets (`[` and `]`). For example `a-structure,
+  range=[1, 6, 2]` 1 being the min value, 6 the maximum and 2 the step. To
+  specify a #GST_TYPE_INT64_RANGE you need to explicitly specify it like:
+  `a-structure, a-int64-range=(gint64) [1, 5]`
+- [GstValueList](GST_TYPE_LIST) are inside "less and greater than" (`&lt;` and
+  `&gt;`). For example `a-structure, list=&lt;1, 2, 3&gt;
+
+Structures are delimited either by a null character `\0` or a semicolumn `;`
+the latter allowing to store multiple structures in the same string (see
+#GstCaps).
+
+Quotes are used as "default" delimiters and can be used around any types that
+don't use other delimiters (for example `a-struct, i=(int)"1"`). They are use
+to allow adding spaces or special characters (such as delimiters,
+semicolumns, etc..) inside strings and you can use backslashes `\` to escape
+characters inside them, for example:
+
+```
+a-struct, special="\"{[(;)]}\" can be used inside quotes"
+```
+
+They also allow for nested structure, such as:
+
+```
+a-struct, nested=(GstStructure)"nested-struct, nested=true"
+```
+
+Since 1.18, nested structures and caps can be specified using brackets
+(`[` and `]`), for example:
+
+```
+a-struct, nested=[nested-struct, nested=true]
+```
+
+&gt; *note*: For backward compatility reason, the serialization functions won't
+&gt; use that synthax.</doc>
+      <source-position filename="gst/gststructure.h" line="101"/>
       <field name="type" writable="1">
-        <doc xml:space="preserve">the GType of a structure</doc>
+        <doc xml:space="preserve"
+             filename="gst/gststructure.h"
+             line="92">the GType of a structure</doc>
         <type name="GType" c:type="GType"/>
       </field>
       <field name="name" readable="0" private="1">
         <type name="GLib.Quark" c:type="GQuark"/>
       </field>
+      <constructor name="from_string" c:identifier="gst_structure_from_string">
+        <doc xml:space="preserve"
+             filename="gst/gststructure.c"
+             line="2325">Creates a #GstStructure from a string representation.
+If end is not %NULL, a pointer to the place inside the given string
+where parsing ended will be returned.
+
+Free-function: gst_structure_free</doc>
+        <source-position filename="gst/gststructure.h" line="335"/>
+        <return-value transfer-ownership="full" nullable="1">
+          <doc xml:space="preserve"
+               filename="gst/gststructure.c"
+               line="2336">a new #GstStructure or %NULL
+    when the string could not be parsed. Free with
+    gst_structure_free() after use.</doc>
+          <type name="Structure" c:type="GstStructure*"/>
+        </return-value>
+        <parameters>
+          <parameter name="string" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="2327">a string representation of a #GstStructure.</doc>
+            <type name="utf8" c:type="const gchar*"/>
+          </parameter>
+          <parameter name="end"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="none"
+                     optional="1"
+                     allow-none="1"
+                     skip="1">
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="2328">pointer to store the end of the string in.</doc>
+            <type name="utf8" c:type="gchar**"/>
+          </parameter>
+        </parameters>
+      </constructor>
       <constructor name="new"
                    c:identifier="gst_structure_new"
                    introspectable="0">
-        <doc xml:space="preserve">Creates a new #GstStructure with the given name.  Parses the
+        <doc xml:space="preserve"
+             filename="gst/gststructure.c"
+             line="368">Creates a new #GstStructure with the given name.  Parses the
 list of variable arguments and sets fields to the values listed.
 Variable arguments should be passed as field name, field type,
 and value.  Last variable argument should be %NULL.
 
 Free-function: gst_structure_free</doc>
+        <source-position filename="gst/gststructure.h" line="113"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new #GstStructure</doc>
+          <doc xml:space="preserve"
+               filename="gst/gststructure.c"
+               line="381">a new #GstStructure</doc>
           <type name="Structure" c:type="GstStructure*"/>
         </return-value>
         <parameters>
           <parameter name="name" transfer-ownership="none">
-            <doc xml:space="preserve">name of new structure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="370">name of new structure</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="firstfield" transfer-ownership="none">
-            <doc xml:space="preserve">name of first field to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="371">name of first field to set</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="..." transfer-ownership="none">
-            <doc xml:space="preserve">additional arguments</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="372">additional arguments</doc>
             <varargs/>
           </parameter>
         </parameters>
       </constructor>
       <constructor name="new_empty" c:identifier="gst_structure_new_empty">
-        <doc xml:space="preserve">Creates a new, empty #GstStructure with the given @name.
+        <doc xml:space="preserve"
+             filename="gst/gststructure.c"
+             line="348">Creates a new, empty #GstStructure with the given @name.
 
 See gst_structure_set_name() for constraints on the @name parameter.
 
 Free-function: gst_structure_free</doc>
+        <source-position filename="gst/gststructure.h" line="107"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new, empty #GstStructure</doc>
+          <doc xml:space="preserve"
+               filename="gst/gststructure.c"
+               line="358">a new, empty #GstStructure</doc>
           <type name="Structure" c:type="GstStructure*"/>
         </return-value>
         <parameters>
           <parameter name="name" transfer-ownership="none">
-            <doc xml:space="preserve">name of new structure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="350">name of new structure</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
@@ -37716,7 +58322,9 @@ Free-function: gst_structure_free</doc>
       <constructor name="new_from_string"
                    c:identifier="gst_structure_new_from_string"
                    version="1.2">
-        <doc xml:space="preserve">Creates a #GstStructure from a string representation.
+        <doc xml:space="preserve"
+             filename="gst/gststructure.c"
+             line="2300">Creates a #GstStructure from a string representation.
 If end is not %NULL, a pointer to the place inside the given string
 where parsing ended will be returned.
 
@@ -37724,15 +58332,20 @@ The current implementation of serialization will lead to unexpected results
 when there are nested #GstCaps / #GstStructure deeper than one level.
 
 Free-function: gst_structure_free</doc>
+        <source-position filename="gst/gststructure.h" line="125"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">a new #GstStructure or %NULL
+          <doc xml:space="preserve"
+               filename="gst/gststructure.c"
+               line="2313">a new #GstStructure or %NULL
     when the string could not be parsed. Free with
     gst_structure_free() after use.</doc>
           <type name="Structure" c:type="GstStructure*"/>
         </return-value>
         <parameters>
           <parameter name="string" transfer-ownership="none">
-            <doc xml:space="preserve">a string representation of a #GstStructure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="2302">a string representation of a #GstStructure</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
@@ -37740,7 +58353,9 @@ Free-function: gst_structure_free</doc>
       <constructor name="new_id"
                    c:identifier="gst_structure_new_id"
                    introspectable="0">
-        <doc xml:space="preserve">Creates a new #GstStructure with the given name as a GQuark, followed by
+        <doc xml:space="preserve"
+             filename="gst/gststructure.c"
+             line="947">Creates a new #GstStructure with the given name as a GQuark, followed by
 fieldname quark, GType, argument(s) "triplets" in the same format as
 gst_structure_id_set(). Basically a convenience wrapper around
 gst_structure_new_id_empty() and gst_structure_id_set().
@@ -37748,37 +58363,53 @@ gst_structure_new_id_empty() and gst_structure_id_set().
 The last variable argument must be %NULL (or 0).
 
 Free-function: gst_structure_free</doc>
+        <source-position filename="gst/gststructure.h" line="121"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new #GstStructure</doc>
+          <doc xml:space="preserve"
+               filename="gst/gststructure.c"
+               line="962">a new #GstStructure</doc>
           <type name="Structure" c:type="GstStructure*"/>
         </return-value>
         <parameters>
           <parameter name="name_quark" transfer-ownership="none">
-            <doc xml:space="preserve">name of new structure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="949">name of new structure</doc>
             <type name="GLib.Quark" c:type="GQuark"/>
           </parameter>
           <parameter name="field_quark" transfer-ownership="none">
-            <doc xml:space="preserve">the GQuark for the name of the field to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="950">the GQuark for the name of the field to set</doc>
             <type name="GLib.Quark" c:type="GQuark"/>
           </parameter>
           <parameter name="..." transfer-ownership="none">
-            <doc xml:space="preserve">variable arguments</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="951">variable arguments</doc>
             <varargs/>
           </parameter>
         </parameters>
       </constructor>
       <constructor name="new_id_empty"
                    c:identifier="gst_structure_new_id_empty">
-        <doc xml:space="preserve">Creates a new, empty #GstStructure with the given name as a GQuark.
+        <doc xml:space="preserve"
+             filename="gst/gststructure.c"
+             line="296">Creates a new, empty #GstStructure with the given name as a GQuark.
 
 Free-function: gst_structure_free</doc>
+        <source-position filename="gst/gststructure.h" line="110"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new, empty #GstStructure</doc>
+          <doc xml:space="preserve"
+               filename="gst/gststructure.c"
+               line="304">a new, empty #GstStructure</doc>
           <type name="Structure" c:type="GstStructure*"/>
         </return-value>
         <parameters>
           <parameter name="quark" transfer-ownership="none">
-            <doc xml:space="preserve">name of new structure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="298">name of new structure</doc>
             <type name="GLib.Quark" c:type="GQuark"/>
           </parameter>
         </parameters>
@@ -37786,61 +58417,88 @@ Free-function: gst_structure_free</doc>
       <constructor name="new_valist"
                    c:identifier="gst_structure_new_valist"
                    introspectable="0">
-        <doc xml:space="preserve">Creates a new #GstStructure with the given @name.  Structure fields
+        <doc xml:space="preserve"
+             filename="gst/gststructure.c"
+             line="396">Creates a new #GstStructure with the given @name.  Structure fields
 are set according to the varargs in a manner similar to
 gst_structure_new().
 
 See gst_structure_set_name() for constraints on the @name parameter.
 
 Free-function: gst_structure_free</doc>
+        <source-position filename="gst/gststructure.h" line="117"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new #GstStructure</doc>
+          <doc xml:space="preserve"
+               filename="gst/gststructure.c"
+               line="410">a new #GstStructure</doc>
           <type name="Structure" c:type="GstStructure*"/>
         </return-value>
         <parameters>
           <parameter name="name" transfer-ownership="none">
-            <doc xml:space="preserve">name of new structure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="398">name of new structure</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="firstfield" transfer-ownership="none">
-            <doc xml:space="preserve">name of first field to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="399">name of first field to set</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="varargs" transfer-ownership="none">
-            <doc xml:space="preserve">variable argument list</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="400">variable argument list</doc>
             <type name="va_list" c:type="va_list"/>
           </parameter>
         </parameters>
       </constructor>
       <method name="can_intersect" c:identifier="gst_structure_can_intersect">
-        <doc xml:space="preserve">Tries intersecting @struct1 and @struct2 and reports whether the result
+        <doc xml:space="preserve"
+             filename="gst/gststructure.c"
+             line="3167">Tries intersecting @struct1 and @struct2 and reports whether the result
 would not be empty.</doc>
+        <source-position filename="gst/gststructure.h" line="371"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if intersection would not be empty</doc>
+          <doc xml:space="preserve"
+               filename="gst/gststructure.c"
+               line="3175">%TRUE if intersection would not be empty</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="struct1" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStructure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="3169">a #GstStructure</doc>
             <type name="Structure" c:type="const GstStructure*"/>
           </instance-parameter>
           <parameter name="struct2" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStructure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="3170">a #GstStructure</doc>
             <type name="Structure" c:type="const GstStructure*"/>
           </parameter>
         </parameters>
       </method>
       <method name="copy" c:identifier="gst_structure_copy">
-        <doc xml:space="preserve">Duplicates a #GstStructure and all its fields and values.
+        <doc xml:space="preserve"
+             filename="gst/gststructure.c"
+             line="479">Duplicates a #GstStructure and all its fields and values.
 
 Free-function: gst_structure_free</doc>
+        <source-position filename="gst/gststructure.h" line="128"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new #GstStructure.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gststructure.c"
+               line="487">a new #GstStructure.</doc>
           <type name="Structure" c:type="GstStructure*"/>
         </return-value>
         <parameters>
           <instance-parameter name="structure" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStructure to duplicate</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="481">a #GstStructure to duplicate</doc>
             <type name="Structure" c:type="const GstStructure*"/>
           </instance-parameter>
         </parameters>
@@ -37848,24 +58506,31 @@ Free-function: gst_structure_free</doc>
       <method name="filter_and_map_in_place"
               c:identifier="gst_structure_filter_and_map_in_place"
               version="1.6">
-        <doc xml:space="preserve">Calls the provided function once for each field in the #GstStructure. In
+        <doc xml:space="preserve"
+             filename="gst/gststructure.c"
+             line="1408">Calls the provided function once for each field in the #GstStructure. In
 contrast to gst_structure_foreach(), the function may modify the fields.
 In contrast to gst_structure_map_in_place(), the field is removed from
 the structure if %FALSE is returned from the function.
 The structure must be mutable.</doc>
+        <source-position filename="gst/gststructure.h" line="243"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="structure" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStructure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="1410">a #GstStructure</doc>
             <type name="Structure" c:type="GstStructure*"/>
           </instance-parameter>
           <parameter name="func"
                      transfer-ownership="none"
                      scope="call"
                      closure="1">
-            <doc xml:space="preserve">a function to call for each field</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="1411">a function to call for each field</doc>
             <type name="StructureFilterMapFunc"
                   c:type="GstStructureFilterMapFunc"/>
           </parameter>
@@ -37873,180 +58538,262 @@ The structure must be mutable.</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">private data</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="1412">private data</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
         </parameters>
       </method>
       <method name="fixate" c:identifier="gst_structure_fixate">
-        <doc xml:space="preserve">Fixate all values in @structure using gst_value_fixate().
+        <doc xml:space="preserve"
+             filename="gst/gststructure.c"
+             line="3256">Fixate all values in @structure using gst_value_fixate().
 @structure will be modified in-place and should be writable.</doc>
+        <source-position filename="gst/gststructure.h" line="362"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="structure" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStructure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="3258">a #GstStructure</doc>
             <type name="Structure" c:type="GstStructure*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="fixate_field" c:identifier="gst_structure_fixate_field">
-        <doc xml:space="preserve">Fixates a #GstStructure by changing the given field with its fixated value.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the structure field could be fixated</doc>
+        <doc xml:space="preserve"
+             filename="gst/gststructure.c"
+             line="2753">Fixates a #GstStructure by changing the given field with its fixated value.</doc>
+        <source-position filename="gst/gststructure.h" line="359"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gststructure.c"
+               line="2760">%TRUE if the structure field could be fixated</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="structure" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStructure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="2755">a #GstStructure</doc>
             <type name="Structure" c:type="GstStructure*"/>
           </instance-parameter>
           <parameter name="field_name" transfer-ownership="none">
-            <doc xml:space="preserve">a field in @structure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="2756">a field in @structure</doc>
             <type name="utf8" c:type="const char*"/>
           </parameter>
         </parameters>
       </method>
       <method name="fixate_field_boolean"
               c:identifier="gst_structure_fixate_field_boolean">
-        <doc xml:space="preserve">Fixates a #GstStructure by changing the given @field_name field to the given
+        <doc xml:space="preserve"
+             filename="gst/gststructure.c"
+             line="2541">Fixates a #GstStructure by changing the given @field_name field to the given
 @target boolean if that field is not fixed yet.</doc>
+        <source-position filename="gst/gststructure.h" line="346"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the structure could be fixated</doc>
+          <doc xml:space="preserve"
+               filename="gst/gststructure.c"
+               line="2550">%TRUE if the structure could be fixated</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="structure" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStructure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="2543">a #GstStructure</doc>
             <type name="Structure" c:type="GstStructure*"/>
           </instance-parameter>
           <parameter name="field_name" transfer-ownership="none">
-            <doc xml:space="preserve">a field in @structure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="2544">a field in @structure</doc>
             <type name="utf8" c:type="const char*"/>
           </parameter>
           <parameter name="target" transfer-ownership="none">
-            <doc xml:space="preserve">the target value of the fixation</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="2545">the target value of the fixation</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </method>
       <method name="fixate_field_nearest_double"
               c:identifier="gst_structure_fixate_field_nearest_double">
-        <doc xml:space="preserve">Fixates a #GstStructure by changing the given field to the nearest
+        <doc xml:space="preserve"
+             filename="gst/gststructure.c"
+             line="2476">Fixates a #GstStructure by changing the given field to the nearest
 double to @target that is a subset of the existing field.</doc>
+        <source-position filename="gst/gststructure.h" line="342"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the structure could be fixated</doc>
+          <doc xml:space="preserve"
+               filename="gst/gststructure.c"
+               line="2485">%TRUE if the structure could be fixated</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="structure" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStructure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="2478">a #GstStructure</doc>
             <type name="Structure" c:type="GstStructure*"/>
           </instance-parameter>
           <parameter name="field_name" transfer-ownership="none">
-            <doc xml:space="preserve">a field in @structure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="2479">a field in @structure</doc>
             <type name="utf8" c:type="const char*"/>
           </parameter>
           <parameter name="target" transfer-ownership="none">
-            <doc xml:space="preserve">the target value of the fixation</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="2480">the target value of the fixation</doc>
             <type name="gdouble" c:type="double"/>
           </parameter>
         </parameters>
       </method>
       <method name="fixate_field_nearest_fraction"
               c:identifier="gst_structure_fixate_field_nearest_fraction">
-        <doc xml:space="preserve">Fixates a #GstStructure by changing the given field to the nearest
+        <doc xml:space="preserve"
+             filename="gst/gststructure.c"
+             line="2647">Fixates a #GstStructure by changing the given field to the nearest
 fraction to @target_numerator/@target_denominator that is a subset
 of the existing field.</doc>
+        <source-position filename="gst/gststructure.h" line="354"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the structure could be fixated</doc>
+          <doc xml:space="preserve"
+               filename="gst/gststructure.c"
+               line="2658">%TRUE if the structure could be fixated</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="structure" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStructure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="2649">a #GstStructure</doc>
             <type name="Structure" c:type="GstStructure*"/>
           </instance-parameter>
           <parameter name="field_name" transfer-ownership="none">
-            <doc xml:space="preserve">a field in @structure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="2650">a field in @structure</doc>
             <type name="utf8" c:type="const char*"/>
           </parameter>
           <parameter name="target_numerator" transfer-ownership="none">
-            <doc xml:space="preserve">The numerator of the target value of the fixation</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="2651">The numerator of the target value of the fixation</doc>
             <type name="gint" c:type="const gint"/>
           </parameter>
           <parameter name="target_denominator" transfer-ownership="none">
-            <doc xml:space="preserve">The denominator of the target value of the fixation</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="2652">The denominator of the target value of the fixation</doc>
             <type name="gint" c:type="const gint"/>
           </parameter>
         </parameters>
       </method>
       <method name="fixate_field_nearest_int"
               c:identifier="gst_structure_fixate_field_nearest_int">
-        <doc xml:space="preserve">Fixates a #GstStructure by changing the given field to the nearest
+        <doc xml:space="preserve"
+             filename="gst/gststructure.c"
+             line="2406">Fixates a #GstStructure by changing the given field to the nearest
 integer to @target that is a subset of the existing field.</doc>
+        <source-position filename="gst/gststructure.h" line="338"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the structure could be fixated</doc>
+          <doc xml:space="preserve"
+               filename="gst/gststructure.c"
+               line="2415">%TRUE if the structure could be fixated</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="structure" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStructure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="2408">a #GstStructure</doc>
             <type name="Structure" c:type="GstStructure*"/>
           </instance-parameter>
           <parameter name="field_name" transfer-ownership="none">
-            <doc xml:space="preserve">a field in @structure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="2409">a field in @structure</doc>
             <type name="utf8" c:type="const char*"/>
           </parameter>
           <parameter name="target" transfer-ownership="none">
-            <doc xml:space="preserve">the target value of the fixation</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="2410">the target value of the fixation</doc>
             <type name="gint" c:type="int"/>
           </parameter>
         </parameters>
       </method>
       <method name="fixate_field_string"
               c:identifier="gst_structure_fixate_field_string">
-        <doc xml:space="preserve">Fixates a #GstStructure by changing the given @field_name field to the given
+        <doc xml:space="preserve"
+             filename="gst/gststructure.c"
+             line="2594">Fixates a #GstStructure by changing the given @field_name field to the given
 @target string if that field is not fixed yet.</doc>
+        <source-position filename="gst/gststructure.h" line="350"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the structure could be fixated</doc>
+          <doc xml:space="preserve"
+               filename="gst/gststructure.c"
+               line="2603">%TRUE if the structure could be fixated</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="structure" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStructure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="2596">a #GstStructure</doc>
             <type name="Structure" c:type="GstStructure*"/>
           </instance-parameter>
           <parameter name="field_name" transfer-ownership="none">
-            <doc xml:space="preserve">a field in @structure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="2597">a field in @structure</doc>
             <type name="utf8" c:type="const char*"/>
           </parameter>
           <parameter name="target" transfer-ownership="none">
-            <doc xml:space="preserve">the target value of the fixation</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="2598">the target value of the fixation</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </method>
       <method name="foreach" c:identifier="gst_structure_foreach">
-        <doc xml:space="preserve">Calls the provided function once for each field in the #GstStructure. The
+        <doc xml:space="preserve"
+             filename="gst/gststructure.c"
+             line="1334">Calls the provided function once for each field in the #GstStructure. The
 function must not modify the fields. Also see gst_structure_map_in_place()
 and gst_structure_filter_and_map_in_place().</doc>
+        <source-position filename="gst/gststructure.h" line="235"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the supplied function returns %TRUE For each of the fields,
+          <doc xml:space="preserve"
+               filename="gst/gststructure.c"
+               line="1344">%TRUE if the supplied function returns %TRUE For each of the fields,
 %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="structure" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStructure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="1336">a #GstStructure</doc>
             <type name="Structure" c:type="const GstStructure*"/>
           </instance-parameter>
           <parameter name="func"
                      transfer-ownership="none"
                      scope="call"
                      closure="1">
-            <doc xml:space="preserve">a function to call for each field</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="1337">a function to call for each field</doc>
             <type name="StructureForeachFunc"
                   c:type="GstStructureForeachFunc"/>
           </parameter>
@@ -38054,143 +58801,196 @@ and gst_structure_filter_and_map_in_place().</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">private data</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="1338">private data</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
         </parameters>
       </method>
       <method name="free" c:identifier="gst_structure_free">
-        <doc xml:space="preserve">Frees a #GstStructure and all its fields and values. The structure must not
+        <doc xml:space="preserve"
+             filename="gst/gststructure.c"
+             line="516">Frees a #GstStructure and all its fields and values. The structure must not
 have a parent when this function is called.</doc>
+        <source-position filename="gst/gststructure.h" line="134"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="structure" transfer-ownership="full">
-            <doc xml:space="preserve">the #GstStructure to free</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="518">the #GstStructure to free</doc>
             <type name="Structure" c:type="GstStructure*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get" c:identifier="gst_structure_get" introspectable="0">
-        <doc xml:space="preserve">Parses the variable arguments and reads fields from @structure accordingly.
+        <doc xml:space="preserve"
+             filename="gst/gststructure.c"
+             line="2937">Parses the variable arguments and reads fields from @structure accordingly.
 Variable arguments should be in the form field name, field type
 (as a GType), pointer(s) to a variable(s) to hold the return value(s).
 The last variable argument should be %NULL.
 
 For refcounted (mini)objects you will receive a new reference which
-you must release with a suitable _unref() when no longer needed. For
+you must release with a suitable _unref\() when no longer needed. For
 strings and boxed types you will receive a copy which you will need to
 release with either g_free() or the suitable function for the boxed type.</doc>
+        <source-position filename="gst/gststructure.h" line="200"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%FALSE if there was a problem reading any of the fields (e.g.
+          <doc xml:space="preserve"
+               filename="gst/gststructure.c"
+               line="2953">%FALSE if there was a problem reading any of the fields (e.g.
     because the field requested did not exist, or was of a type other
     than the type specified), otherwise %TRUE.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="structure" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStructure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="2939">a #GstStructure</doc>
             <type name="Structure" c:type="const GstStructure*"/>
           </instance-parameter>
           <parameter name="first_fieldname" transfer-ownership="none">
-            <doc xml:space="preserve">the name of the first field to read</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="2940">the name of the first field to read</doc>
             <type name="utf8" c:type="const char*"/>
           </parameter>
           <parameter name="..." transfer-ownership="none">
-            <doc xml:space="preserve">variable arguments</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="2941">variable arguments</doc>
             <varargs/>
           </parameter>
         </parameters>
       </method>
       <method name="get_array" c:identifier="gst_structure_get_array">
-        <doc xml:space="preserve">This is useful in language bindings where unknown #GValue types are not
+        <doc xml:space="preserve"
+             filename="gst/gststructure.c"
+             line="3298">This is useful in language bindings where unknown #GValue types are not
 supported. This function will convert the %GST_TYPE_ARRAY into a newly
 allocated #GValueArray and return it through @array. Be aware that this is
 slower then getting the #GValue directly.</doc>
+        <source-position filename="gst/gststructure.h" line="324"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the value could be set correctly. If there was no field
+          <doc xml:space="preserve"
+               filename="gst/gststructure.c"
+               line="3309">%TRUE if the value could be set correctly. If there was no field
 with @fieldname or the existing field did not contain a %GST_TYPE_ARRAY,
 this function returns %FALSE.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="structure" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStructure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="3300">a #GstStructure</doc>
             <type name="Structure" c:type="GstStructure*"/>
           </instance-parameter>
           <parameter name="fieldname" transfer-ownership="none">
-            <doc xml:space="preserve">the name of a field</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="3301">the name of a field</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="array"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">a pointer to a #GValueArray</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="3302">a pointer to a #GValueArray</doc>
             <type name="GObject.ValueArray" c:type="GValueArray**"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_boolean" c:identifier="gst_structure_get_boolean">
-        <doc xml:space="preserve">Sets the boolean pointed to by @value corresponding to the value of the
+        <doc xml:space="preserve"
+             filename="gst/gststructure.c"
+             line="1543">Sets the boolean pointed to by @value corresponding to the value of the
 given field.  Caller is responsible for making sure the field exists
 and has the correct type.</doc>
+        <source-position filename="gst/gststructure.h" line="270"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the value could be set correctly. If there was no field
+          <doc xml:space="preserve"
+               filename="gst/gststructure.c"
+               line="1553">%TRUE if the value could be set correctly. If there was no field
 with @fieldname or the existing field did not contain a boolean, this
 function returns %FALSE.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="structure" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStructure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="1545">a #GstStructure</doc>
             <type name="Structure" c:type="const GstStructure*"/>
           </instance-parameter>
           <parameter name="fieldname" transfer-ownership="none">
-            <doc xml:space="preserve">the name of a field</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="1546">the name of a field</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="value"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">a pointer to a #gboolean to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="1547">a pointer to a #gboolean to set</doc>
             <type name="gboolean" c:type="gboolean*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_clock_time"
               c:identifier="gst_structure_get_clock_time">
-        <doc xml:space="preserve">Sets the clock time pointed to by @value corresponding to the clock time
+        <doc xml:space="preserve"
+             filename="gst/gststructure.c"
+             line="1798">Sets the clock time pointed to by @value corresponding to the clock time
 of the given field.  Caller is responsible for making sure the field exists
 and has the correct type.</doc>
+        <source-position filename="gst/gststructure.h" line="302"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the value could be set correctly. If there was no field
+          <doc xml:space="preserve"
+               filename="gst/gststructure.c"
+               line="1808">%TRUE if the value could be set correctly. If there was no field
 with @fieldname or the existing field did not contain a #GstClockTime, this
 function returns %FALSE.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="structure" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStructure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="1800">a #GstStructure</doc>
             <type name="Structure" c:type="const GstStructure*"/>
           </instance-parameter>
           <parameter name="fieldname" transfer-ownership="none">
-            <doc xml:space="preserve">the name of a field</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="1801">the name of a field</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="value"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">a pointer to a #GstClockTime to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="1802">a pointer to a #GstClockTime to set</doc>
             <type name="ClockTime" c:type="GstClockTime*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_date" c:identifier="gst_structure_get_date">
-        <doc xml:space="preserve">Sets the date pointed to by @value corresponding to the date of the
+        <doc xml:space="preserve"
+             filename="gst/gststructure.c"
+             line="1716">Sets the date pointed to by @value corresponding to the date of the
 given field.  Caller is responsible for making sure the field exists
 and has the correct type.
 
@@ -38198,32 +58998,43 @@ On success @value will point to a newly-allocated copy of the date which
 should be freed with g_date_free() when no longer needed (note: this is
 inconsistent with e.g. gst_structure_get_string() which doesn't return a
 copy of the string).</doc>
+        <source-position filename="gst/gststructure.h" line="294"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the value could be set correctly. If there was no field
+          <doc xml:space="preserve"
+               filename="gst/gststructure.c"
+               line="1731">%TRUE if the value could be set correctly. If there was no field
 with @fieldname or the existing field did not contain a data, this function
 returns %FALSE.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="structure" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStructure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="1718">a #GstStructure</doc>
             <type name="Structure" c:type="const GstStructure*"/>
           </instance-parameter>
           <parameter name="fieldname" transfer-ownership="none">
-            <doc xml:space="preserve">the name of a field</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="1719">the name of a field</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="value"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">a pointer to a #GDate to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="1720">a pointer to a #GDate to set</doc>
             <type name="GLib.Date" c:type="GDate**"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_date_time" c:identifier="gst_structure_get_date_time">
-        <doc xml:space="preserve">Sets the datetime pointed to by @value corresponding to the datetime of the
+        <doc xml:space="preserve"
+             filename="gst/gststructure.c"
+             line="1756">Sets the datetime pointed to by @value corresponding to the datetime of the
 given field. Caller is responsible for making sure the field exists
 and has the correct type.
 
@@ -38231,106 +59042,148 @@ On success @value will point to a reference of the datetime which
 should be unreffed with gst_date_time_unref() when no longer needed
 (note: this is inconsistent with e.g. gst_structure_get_string()
 which doesn't return a copy of the string).</doc>
+        <source-position filename="gst/gststructure.h" line="298"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the value could be set correctly. If there was no field
+          <doc xml:space="preserve"
+               filename="gst/gststructure.c"
+               line="1771">%TRUE if the value could be set correctly. If there was no field
 with @fieldname or the existing field did not contain a data, this function
 returns %FALSE.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="structure" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStructure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="1758">a #GstStructure</doc>
             <type name="Structure" c:type="const GstStructure*"/>
           </instance-parameter>
           <parameter name="fieldname" transfer-ownership="none">
-            <doc xml:space="preserve">the name of a field</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="1759">the name of a field</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="value"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">a pointer to a #GstDateTime to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="1760">a pointer to a #GstDateTime to set</doc>
             <type name="DateTime" c:type="GstDateTime**"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_double" c:identifier="gst_structure_get_double">
-        <doc xml:space="preserve">Sets the double pointed to by @value corresponding to the value of the
+        <doc xml:space="preserve"
+             filename="gst/gststructure.c"
+             line="1819">Sets the double pointed to by @value corresponding to the value of the
 given field.  Caller is responsible for making sure the field exists
 and has the correct type.</doc>
+        <source-position filename="gst/gststructure.h" line="290"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the value could be set correctly. If there was no field
+          <doc xml:space="preserve"
+               filename="gst/gststructure.c"
+               line="1829">%TRUE if the value could be set correctly. If there was no field
 with @fieldname or the existing field did not contain a double, this
 function returns %FALSE.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="structure" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStructure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="1821">a #GstStructure</doc>
             <type name="Structure" c:type="const GstStructure*"/>
           </instance-parameter>
           <parameter name="fieldname" transfer-ownership="none">
-            <doc xml:space="preserve">the name of a field</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="1822">the name of a field</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="value"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">a pointer to a gdouble to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="1823">a pointer to a gdouble to set</doc>
             <type name="gdouble" c:type="gdouble*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_enum" c:identifier="gst_structure_get_enum">
-        <doc xml:space="preserve">Sets the int pointed to by @value corresponding to the value of the
+        <doc xml:space="preserve"
+             filename="gst/gststructure.c"
+             line="1885">Sets the int pointed to by @value corresponding to the value of the
 given field.  Caller is responsible for making sure the field exists,
 has the correct type and that the enumtype is correct.</doc>
+        <source-position filename="gst/gststructure.h" line="309"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the value could be set correctly. If there was no field
+          <doc xml:space="preserve"
+               filename="gst/gststructure.c"
+               line="1896">%TRUE if the value could be set correctly. If there was no field
 with @fieldname or the existing field did not contain an enum of the given
 type, this function returns %FALSE.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="structure" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStructure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="1887">a #GstStructure</doc>
             <type name="Structure" c:type="const GstStructure*"/>
           </instance-parameter>
           <parameter name="fieldname" transfer-ownership="none">
-            <doc xml:space="preserve">the name of a field</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="1888">the name of a field</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="enumtype" transfer-ownership="none">
-            <doc xml:space="preserve">the enum type of a field</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="1889">the enum type of a field</doc>
             <type name="GType" c:type="GType"/>
           </parameter>
           <parameter name="value"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">a pointer to an int to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="1890">a pointer to an int to set</doc>
             <type name="gint" c:type="gint*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_field_type"
               c:identifier="gst_structure_get_field_type">
-        <doc xml:space="preserve">Finds the field with the given name, and returns the type of the
+        <doc xml:space="preserve"
+             filename="gst/gststructure.c"
+             line="1269">Finds the field with the given name, and returns the type of the
 value it contains.  If the field is not found, G_TYPE_INVALID is
 returned.</doc>
+        <source-position filename="gst/gststructure.h" line="232"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the #GValue of the field</doc>
+          <doc xml:space="preserve"
+               filename="gst/gststructure.c"
+               line="1278">the #GValue of the field</doc>
           <type name="GType" c:type="GType"/>
         </return-value>
         <parameters>
           <instance-parameter name="structure" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStructure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="1271">a #GstStructure</doc>
             <type name="Structure" c:type="const GstStructure*"/>
           </instance-parameter>
           <parameter name="fieldname" transfer-ownership="none">
-            <doc xml:space="preserve">the name of the field</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="1272">the name of the field</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
@@ -38338,21 +59191,30 @@ returned.</doc>
       <method name="get_flagset"
               c:identifier="gst_structure_get_flagset"
               version="1.6">
-        <doc xml:space="preserve">Read the GstFlagSet flags and mask out of the structure into the
+        <doc xml:space="preserve"
+             filename="gst/gststructure.c"
+             line="1960">Read the GstFlagSet flags and mask out of the structure into the
 provided pointers.</doc>
+        <source-position filename="gst/gststructure.h" line="319"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the values could be set correctly. If there was no field
+          <doc xml:space="preserve"
+               filename="gst/gststructure.c"
+               line="1970">%TRUE if the values could be set correctly. If there was no field
 with @fieldname or the existing field did not contain a GstFlagSet, this
 function returns %FALSE.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="structure" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStructure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="1962">a #GstStructure</doc>
             <type name="Structure" c:type="const GstStructure*"/>
           </instance-parameter>
           <parameter name="fieldname" transfer-ownership="none">
-            <doc xml:space="preserve">the name of a field</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="1963">the name of a field</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="value_flags"
@@ -38361,7 +59223,9 @@ function returns %FALSE.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">a pointer to a guint for the flags field</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="1964">a pointer to a guint for the flags field</doc>
             <type name="guint" c:type="guint*"/>
           </parameter>
           <parameter name="value_mask"
@@ -38370,70 +59234,96 @@ function returns %FALSE.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">a pointer to a guint for the mask field</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="1965">a pointer to a guint for the mask field</doc>
             <type name="guint" c:type="guint*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_fraction" c:identifier="gst_structure_get_fraction">
-        <doc xml:space="preserve">Sets the integers pointed to by @value_numerator and @value_denominator
+        <doc xml:space="preserve"
+             filename="gst/gststructure.c"
+             line="1923">Sets the integers pointed to by @value_numerator and @value_denominator
 corresponding to the value of the given field.  Caller is responsible
 for making sure the field exists and has the correct type.</doc>
+        <source-position filename="gst/gststructure.h" line="314"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the values could be set correctly. If there was no field
+          <doc xml:space="preserve"
+               filename="gst/gststructure.c"
+               line="1934">%TRUE if the values could be set correctly. If there was no field
 with @fieldname or the existing field did not contain a GstFraction, this
 function returns %FALSE.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="structure" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStructure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="1925">a #GstStructure</doc>
             <type name="Structure" c:type="const GstStructure*"/>
           </instance-parameter>
           <parameter name="fieldname" transfer-ownership="none">
-            <doc xml:space="preserve">the name of a field</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="1926">the name of a field</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="value_numerator"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">a pointer to an int to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="1927">a pointer to an int to set</doc>
             <type name="gint" c:type="gint*"/>
           </parameter>
           <parameter name="value_denominator"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">a pointer to an int to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="1928">a pointer to an int to set</doc>
             <type name="gint" c:type="gint*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_int" c:identifier="gst_structure_get_int">
-        <doc xml:space="preserve">Sets the int pointed to by @value corresponding to the value of the
+        <doc xml:space="preserve"
+             filename="gst/gststructure.c"
+             line="1576">Sets the int pointed to by @value corresponding to the value of the
 given field.  Caller is responsible for making sure the field exists
 and has the correct type.</doc>
+        <source-position filename="gst/gststructure.h" line="274"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the value could be set correctly. If there was no field
+          <doc xml:space="preserve"
+               filename="gst/gststructure.c"
+               line="1586">%TRUE if the value could be set correctly. If there was no field
 with @fieldname or the existing field did not contain an int, this function
 returns %FALSE.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="structure" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStructure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="1578">a #GstStructure</doc>
             <type name="Structure" c:type="const GstStructure*"/>
           </instance-parameter>
           <parameter name="fieldname" transfer-ownership="none">
-            <doc xml:space="preserve">the name of a field</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="1579">the name of a field</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="value"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">a pointer to an int to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="1580">a pointer to an int to set</doc>
             <type name="gint" c:type="gint*"/>
           </parameter>
         </parameters>
@@ -38441,137 +59331,193 @@ returns %FALSE.</doc>
       <method name="get_int64"
               c:identifier="gst_structure_get_int64"
               version="1.4">
-        <doc xml:space="preserve">Sets the #gint64 pointed to by @value corresponding to the value of the
+        <doc xml:space="preserve"
+             filename="gst/gststructure.c"
+             line="1644">Sets the #gint64 pointed to by @value corresponding to the value of the
 given field. Caller is responsible for making sure the field exists
 and has the correct type.</doc>
+        <source-position filename="gst/gststructure.h" line="282"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the value could be set correctly. If there was no field
+          <doc xml:space="preserve"
+               filename="gst/gststructure.c"
+               line="1654">%TRUE if the value could be set correctly. If there was no field
 with @fieldname or the existing field did not contain a #gint64, this function
 returns %FALSE.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="structure" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStructure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="1646">a #GstStructure</doc>
             <type name="Structure" c:type="const GstStructure*"/>
           </instance-parameter>
           <parameter name="fieldname" transfer-ownership="none">
-            <doc xml:space="preserve">the name of a field</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="1647">the name of a field</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="value"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">a pointer to a #gint64 to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="1648">a pointer to a #gint64 to set</doc>
             <type name="gint64" c:type="gint64*"/>
           </parameter>
         </parameters>
       </method>
-      <method name="get_list" c:identifier="gst_structure_get_list">
-        <doc xml:space="preserve">This is useful in language bindings where unknown #GValue types are not
+      <method name="get_list"
+              c:identifier="gst_structure_get_list"
+              version="1.12">
+        <doc xml:space="preserve"
+             filename="gst/gststructure.c"
+             line="3321">This is useful in language bindings where unknown #GValue types are not
 supported. This function will convert the %GST_TYPE_LIST into a newly
 allocated GValueArray and return it through @array. Be aware that this is
 slower then getting the #GValue directly.</doc>
+        <source-position filename="gst/gststructure.h" line="328"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the value could be set correctly. If there was no field
+          <doc xml:space="preserve"
+               filename="gst/gststructure.c"
+               line="3332">%TRUE if the value could be set correctly. If there was no field
 with @fieldname or the existing field did not contain a %GST_TYPE_LIST, this
-function returns %FALSE.
-
-Since 1.12</doc>
+function returns %FALSE.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="structure" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStructure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="3323">a #GstStructure</doc>
             <type name="Structure" c:type="GstStructure*"/>
           </instance-parameter>
           <parameter name="fieldname" transfer-ownership="none">
-            <doc xml:space="preserve">the name of a field</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="3324">the name of a field</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="array"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">a pointer to a #GValueArray</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="3325">a pointer to a #GValueArray</doc>
             <type name="GObject.ValueArray" c:type="GValueArray**"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_name" c:identifier="gst_structure_get_name">
-        <doc xml:space="preserve">Get the name of @structure as a string.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the name of the structure.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gststructure.c"
+             line="616">Get the name of @structure as a string.</doc>
+        <source-position filename="gst/gststructure.h" line="144"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gststructure.c"
+               line="622">the name of the structure.</doc>
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
         <parameters>
           <instance-parameter name="structure" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStructure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="618">a #GstStructure</doc>
             <type name="Structure" c:type="const GstStructure*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_name_id" c:identifier="gst_structure_get_name_id">
-        <doc xml:space="preserve">Get the name of @structure as a GQuark.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the quark representing the name of the structure.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gststructure.c"
+             line="657">Get the name of @structure as a GQuark.</doc>
+        <source-position filename="gst/gststructure.h" line="147"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gststructure.c"
+               line="663">the quark representing the name of the structure.</doc>
           <type name="GLib.Quark" c:type="GQuark"/>
         </return-value>
         <parameters>
           <instance-parameter name="structure" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStructure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="659">a #GstStructure</doc>
             <type name="Structure" c:type="const GstStructure*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_string" c:identifier="gst_structure_get_string">
-        <doc xml:space="preserve">Finds the field corresponding to @fieldname, and returns the string
+        <doc xml:space="preserve"
+             filename="gst/gststructure.c"
+             line="1853">Finds the field corresponding to @fieldname, and returns the string
 contained in the field's value.  Caller is responsible for making
 sure the field exists and has the correct type.
 
 The string should not be modified, and remains valid until the next
 call to a gst_structure_*() function with the given structure.</doc>
+        <source-position filename="gst/gststructure.h" line="306"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">a pointer to the string or %NULL when the
+          <doc xml:space="preserve"
+               filename="gst/gststructure.c"
+               line="1865">a pointer to the string or %NULL when the
 field did not exist or did not contain a string.</doc>
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
         <parameters>
           <instance-parameter name="structure" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStructure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="1855">a #GstStructure</doc>
             <type name="Structure" c:type="const GstStructure*"/>
           </instance-parameter>
           <parameter name="fieldname" transfer-ownership="none">
-            <doc xml:space="preserve">the name of a field</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="1856">the name of a field</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_uint" c:identifier="gst_structure_get_uint">
-        <doc xml:space="preserve">Sets the uint pointed to by @value corresponding to the value of the
+        <doc xml:space="preserve"
+             filename="gst/gststructure.c"
+             line="1610">Sets the uint pointed to by @value corresponding to the value of the
 given field.  Caller is responsible for making sure the field exists
 and has the correct type.</doc>
+        <source-position filename="gst/gststructure.h" line="278"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the value could be set correctly. If there was no field
+          <doc xml:space="preserve"
+               filename="gst/gststructure.c"
+               line="1620">%TRUE if the value could be set correctly. If there was no field
 with @fieldname or the existing field did not contain a uint, this function
 returns %FALSE.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="structure" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStructure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="1612">a #GstStructure</doc>
             <type name="Structure" c:type="const GstStructure*"/>
           </instance-parameter>
           <parameter name="fieldname" transfer-ownership="none">
-            <doc xml:space="preserve">the name of a field</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="1613">the name of a field</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="value"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">a pointer to a uint to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="1614">a pointer to a uint to set</doc>
             <type name="guint" c:type="guint*"/>
           </parameter>
         </parameters>
@@ -38579,29 +59525,40 @@ returns %FALSE.</doc>
       <method name="get_uint64"
               c:identifier="gst_structure_get_uint64"
               version="1.4">
-        <doc xml:space="preserve">Sets the #guint64 pointed to by @value corresponding to the value of the
+        <doc xml:space="preserve"
+             filename="gst/gststructure.c"
+             line="1680">Sets the #guint64 pointed to by @value corresponding to the value of the
 given field. Caller is responsible for making sure the field exists
 and has the correct type.</doc>
+        <source-position filename="gst/gststructure.h" line="286"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the value could be set correctly. If there was no field
+          <doc xml:space="preserve"
+               filename="gst/gststructure.c"
+               line="1690">%TRUE if the value could be set correctly. If there was no field
 with @fieldname or the existing field did not contain a #guint64, this function
 returns %FALSE.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="structure" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStructure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="1682">a #GstStructure</doc>
             <type name="Structure" c:type="const GstStructure*"/>
           </instance-parameter>
           <parameter name="fieldname" transfer-ownership="none">
-            <doc xml:space="preserve">the name of a field</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="1683">the name of a field</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="value"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">a pointer to a #guint64 to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="1684">a pointer to a #guint64 to set</doc>
             <type name="guint64" c:type="guint64*"/>
           </parameter>
         </parameters>
@@ -38609,98 +59566,147 @@ returns %FALSE.</doc>
       <method name="get_valist"
               c:identifier="gst_structure_get_valist"
               introspectable="0">
-        <doc xml:space="preserve">Parses the variable arguments and reads fields from @structure accordingly.
+        <doc xml:space="preserve"
+             filename="gst/gststructure.c"
+             line="2802">Parses the variable arguments and reads fields from @structure accordingly.
 valist-variant of gst_structure_get(). Look at the documentation of
 gst_structure_get() for more details.</doc>
+        <source-position filename="gst/gststructure.h" line="196"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE, or %FALSE if there was a problem reading any of the fields</doc>
+          <doc xml:space="preserve"
+               filename="gst/gststructure.c"
+               line="2812">%TRUE, or %FALSE if there was a problem reading any of the fields</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="structure" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStructure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="2804">a #GstStructure</doc>
             <type name="Structure" c:type="const GstStructure*"/>
           </instance-parameter>
           <parameter name="first_fieldname" transfer-ownership="none">
-            <doc xml:space="preserve">the name of the first field to read</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="2805">the name of the first field to read</doc>
             <type name="utf8" c:type="const char*"/>
           </parameter>
           <parameter name="args" transfer-ownership="none">
-            <doc xml:space="preserve">variable arguments</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="2806">variable arguments</doc>
             <type name="va_list" c:type="va_list"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_value" c:identifier="gst_structure_get_value">
-        <doc xml:space="preserve">Get the value of the field with name @fieldname.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gststructure.c"
+             line="1111">Get the value of the field with name @fieldname.</doc>
+        <source-position filename="gst/gststructure.h" line="215"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">the #GValue corresponding to the field with the given
+          <doc xml:space="preserve"
+               filename="gst/gststructure.c"
+               line="1118">the #GValue corresponding to the field with the given
 name.</doc>
           <type name="GObject.Value" c:type="const GValue*"/>
         </return-value>
         <parameters>
           <instance-parameter name="structure" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStructure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="1113">a #GstStructure</doc>
             <type name="Structure" c:type="const GstStructure*"/>
           </instance-parameter>
           <parameter name="fieldname" transfer-ownership="none">
-            <doc xml:space="preserve">the name of the field to get</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="1114">the name of the field to get</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </method>
       <method name="has_field" c:identifier="gst_structure_has_field">
-        <doc xml:space="preserve">Check if @structure contains a field named @fieldname.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the structure contains a field with the given name</doc>
+        <doc xml:space="preserve"
+             filename="gst/gststructure.c"
+             line="1474">Check if @structure contains a field named @fieldname.</doc>
+        <source-position filename="gst/gststructure.h" line="260"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gststructure.c"
+               line="1481">%TRUE if the structure contains a field with the given name</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="structure" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStructure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="1476">a #GstStructure</doc>
             <type name="Structure" c:type="const GstStructure*"/>
           </instance-parameter>
           <parameter name="fieldname" transfer-ownership="none">
-            <doc xml:space="preserve">the name of a field</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="1477">the name of a field</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </method>
       <method name="has_field_typed"
               c:identifier="gst_structure_has_field_typed">
-        <doc xml:space="preserve">Check if @structure contains a field named @fieldname and with GType @type.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the structure contains a field with the given name and type</doc>
+        <doc xml:space="preserve"
+             filename="gst/gststructure.c"
+             line="1520">Check if @structure contains a field named @fieldname and with GType @type.</doc>
+        <source-position filename="gst/gststructure.h" line="263"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gststructure.c"
+               line="1528">%TRUE if the structure contains a field with the given name and type</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="structure" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStructure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="1522">a #GstStructure</doc>
             <type name="Structure" c:type="const GstStructure*"/>
           </instance-parameter>
           <parameter name="fieldname" transfer-ownership="none">
-            <doc xml:space="preserve">the name of a field</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="1523">the name of a field</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="type" transfer-ownership="none">
-            <doc xml:space="preserve">the type of a value</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="1524">the type of a value</doc>
             <type name="GType" c:type="GType"/>
           </parameter>
         </parameters>
       </method>
       <method name="has_name" c:identifier="gst_structure_has_name">
-        <doc xml:space="preserve">Checks if the structure has the given name</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if @name matches the name of the structure.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gststructure.c"
+             line="632">Checks if the structure has the given name</doc>
+        <source-position filename="gst/gststructure.h" line="150"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gststructure.c"
+               line="639">%TRUE if @name matches the name of the structure.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="structure" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStructure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="634">a #GstStructure</doc>
             <type name="Structure" c:type="const GstStructure*"/>
           </instance-parameter>
           <parameter name="name" transfer-ownership="none">
-            <doc xml:space="preserve">structure name to check for</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="635">structure name to check for</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
@@ -38708,7 +59714,9 @@ name.</doc>
       <method name="id_get"
               c:identifier="gst_structure_id_get"
               introspectable="0">
-        <doc xml:space="preserve">Parses the variable arguments and reads fields from @structure accordingly.
+        <doc xml:space="preserve"
+             filename="gst/gststructure.c"
+             line="2974">Parses the variable arguments and reads fields from @structure accordingly.
 Variable arguments should be in the form field id quark, field type
 (as a GType), pointer(s) to a variable(s) to hold the return value(s).
 The last variable argument should be %NULL (technically it should be a
@@ -38720,26 +59728,35 @@ more efficient since it saves the string-to-quark lookup in the global
 quark hashtable.
 
 For refcounted (mini)objects you will receive a new reference which
-you must release with a suitable _unref() when no longer needed. For
+you must release with a suitable _unref\() when no longer needed. For
 strings and boxed types you will receive a copy which you will need to
 release with either g_free() or the suitable function for the boxed type.</doc>
+        <source-position filename="gst/gststructure.h" line="208"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%FALSE if there was a problem reading any of the fields (e.g.
+          <doc xml:space="preserve"
+               filename="gst/gststructure.c"
+               line="2996">%FALSE if there was a problem reading any of the fields (e.g.
     because the field requested did not exist, or was of a type other
     than the type specified), otherwise %TRUE.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="structure" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStructure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="2976">a #GstStructure</doc>
             <type name="Structure" c:type="const GstStructure*"/>
           </instance-parameter>
           <parameter name="first_field_id" transfer-ownership="none">
-            <doc xml:space="preserve">the quark of the first field to read</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="2977">the quark of the first field to read</doc>
             <type name="GLib.Quark" c:type="GQuark"/>
           </parameter>
           <parameter name="..." transfer-ownership="none">
-            <doc xml:space="preserve">variable arguments</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="2978">variable arguments</doc>
             <varargs/>
           </parameter>
         </parameters>
@@ -38747,81 +59764,121 @@ release with either g_free() or the suitable function for the boxed type.</doc>
       <method name="id_get_valist"
               c:identifier="gst_structure_id_get_valist"
               introspectable="0">
-        <doc xml:space="preserve">Parses the variable arguments and reads fields from @structure accordingly.
+        <doc xml:space="preserve"
+             filename="gst/gststructure.c"
+             line="2869">Parses the variable arguments and reads fields from @structure accordingly.
 valist-variant of gst_structure_id_get(). Look at the documentation of
 gst_structure_id_get() for more details.</doc>
+        <source-position filename="gst/gststructure.h" line="204"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE, or %FALSE if there was a problem reading any of the fields</doc>
+          <doc xml:space="preserve"
+               filename="gst/gststructure.c"
+               line="2879">%TRUE, or %FALSE if there was a problem reading any of the fields</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="structure" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStructure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="2871">a #GstStructure</doc>
             <type name="Structure" c:type="const GstStructure*"/>
           </instance-parameter>
           <parameter name="first_field_id" transfer-ownership="none">
-            <doc xml:space="preserve">the quark of the first field to read</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="2872">the quark of the first field to read</doc>
             <type name="GLib.Quark" c:type="GQuark"/>
           </parameter>
           <parameter name="args" transfer-ownership="none">
-            <doc xml:space="preserve">variable arguments</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="2873">variable arguments</doc>
             <type name="va_list" c:type="va_list"/>
           </parameter>
         </parameters>
       </method>
       <method name="id_get_value" c:identifier="gst_structure_id_get_value">
-        <doc xml:space="preserve">Get the value of the field with GQuark @field.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gststructure.c"
+             line="1137">Get the value of the field with GQuark @field.</doc>
+        <source-position filename="gst/gststructure.h" line="212"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">the #GValue corresponding to the field with the given
+          <doc xml:space="preserve"
+               filename="gst/gststructure.c"
+               line="1144">the #GValue corresponding to the field with the given
 name identifier.</doc>
           <type name="GObject.Value" c:type="const GValue*"/>
         </return-value>
         <parameters>
           <instance-parameter name="structure" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStructure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="1139">a #GstStructure</doc>
             <type name="Structure" c:type="const GstStructure*"/>
           </instance-parameter>
           <parameter name="field" transfer-ownership="none">
-            <doc xml:space="preserve">the #GQuark of the field to get</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="1140">the #GQuark of the field to get</doc>
             <type name="GLib.Quark" c:type="GQuark"/>
           </parameter>
         </parameters>
       </method>
       <method name="id_has_field" c:identifier="gst_structure_id_has_field">
-        <doc xml:space="preserve">Check if @structure contains a field named @field.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the structure contains a field with the given name</doc>
+        <doc xml:space="preserve"
+             filename="gst/gststructure.c"
+             line="1452">Check if @structure contains a field named @field.</doc>
+        <source-position filename="gst/gststructure.h" line="253"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gststructure.c"
+               line="1459">%TRUE if the structure contains a field with the given name</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="structure" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStructure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="1454">a #GstStructure</doc>
             <type name="Structure" c:type="const GstStructure*"/>
           </instance-parameter>
           <parameter name="field" transfer-ownership="none">
-            <doc xml:space="preserve">#GQuark of the field name</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="1455">#GQuark of the field name</doc>
             <type name="GLib.Quark" c:type="GQuark"/>
           </parameter>
         </parameters>
       </method>
       <method name="id_has_field_typed"
               c:identifier="gst_structure_id_has_field_typed">
-        <doc xml:space="preserve">Check if @structure contains a field named @field and with GType @type.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the structure contains a field with the given name and type</doc>
+        <doc xml:space="preserve"
+             filename="gst/gststructure.c"
+             line="1494">Check if @structure contains a field named @field and with GType @type.</doc>
+        <source-position filename="gst/gststructure.h" line="256"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gststructure.c"
+               line="1502">%TRUE if the structure contains a field with the given name and type</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="structure" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStructure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="1496">a #GstStructure</doc>
             <type name="Structure" c:type="const GstStructure*"/>
           </instance-parameter>
           <parameter name="field" transfer-ownership="none">
-            <doc xml:space="preserve">#GQuark of the field name</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="1497">#GQuark of the field name</doc>
             <type name="GLib.Quark" c:type="GQuark"/>
           </parameter>
           <parameter name="type" transfer-ownership="none">
-            <doc xml:space="preserve">the type of a value</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="1498">the type of a value</doc>
             <type name="GType" c:type="GType"/>
           </parameter>
         </parameters>
@@ -38829,25 +59886,34 @@ name identifier.</doc>
       <method name="id_set"
               c:identifier="gst_structure_id_set"
               introspectable="0">
-        <doc xml:space="preserve">Identical to gst_structure_set, except that field names are
+        <doc xml:space="preserve"
+             filename="gst/gststructure.c"
+             line="905">Identical to gst_structure_set, except that field names are
 passed using the GQuark for the field name. This allows more efficient
 setting of the structure if the caller already knows the associated
 quark values.
 The last variable argument must be %NULL.</doc>
+        <source-position filename="gst/gststructure.h" line="188"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="structure" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStructure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="907">a #GstStructure</doc>
             <type name="Structure" c:type="GstStructure*"/>
           </instance-parameter>
           <parameter name="fieldname" transfer-ownership="none">
-            <doc xml:space="preserve">the GQuark for the name of the field to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="908">the GQuark for the name of the field to set</doc>
             <type name="GLib.Quark" c:type="GQuark"/>
           </parameter>
           <parameter name="..." transfer-ownership="none">
-            <doc xml:space="preserve">variable arguments</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="909">variable arguments</doc>
             <varargs/>
           </parameter>
         </parameters>
@@ -38855,209 +59921,302 @@ The last variable argument must be %NULL.</doc>
       <method name="id_set_valist"
               c:identifier="gst_structure_id_set_valist"
               introspectable="0">
-        <doc xml:space="preserve">va_list form of gst_structure_id_set().</doc>
+        <doc xml:space="preserve"
+             filename="gst/gststructure.c"
+             line="929">va_list form of gst_structure_id_set().</doc>
+        <source-position filename="gst/gststructure.h" line="192"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="structure" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStructure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="931">a #GstStructure</doc>
             <type name="Structure" c:type="GstStructure*"/>
           </instance-parameter>
           <parameter name="fieldname" transfer-ownership="none">
-            <doc xml:space="preserve">the name of the field to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="932">the name of the field to set</doc>
             <type name="GLib.Quark" c:type="GQuark"/>
           </parameter>
           <parameter name="varargs" transfer-ownership="none">
-            <doc xml:space="preserve">variable arguments</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="933">variable arguments</doc>
             <type name="va_list" c:type="va_list"/>
           </parameter>
         </parameters>
       </method>
       <method name="id_set_value" c:identifier="gst_structure_id_set_value">
-        <doc xml:space="preserve">Sets the field with the given GQuark @field to @value.  If the field
+        <doc xml:space="preserve"
+             filename="gst/gststructure.c"
+             line="704">Sets the field with the given GQuark @field to @value.  If the field
 does not exist, it is created.  If the field exists, the previous
 value is replaced and freed.</doc>
+        <source-position filename="gst/gststructure.h" line="156"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="structure" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStructure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="706">a #GstStructure</doc>
             <type name="Structure" c:type="GstStructure*"/>
           </instance-parameter>
           <parameter name="field" transfer-ownership="none">
-            <doc xml:space="preserve">a #GQuark representing a field</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="707">a #GQuark representing a field</doc>
             <type name="GLib.Quark" c:type="GQuark"/>
           </parameter>
           <parameter name="value" transfer-ownership="none">
-            <doc xml:space="preserve">the new value of the field</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="708">the new value of the field</doc>
             <type name="GObject.Value" c:type="const GValue*"/>
           </parameter>
         </parameters>
       </method>
       <method name="id_take_value" c:identifier="gst_structure_id_take_value">
-        <doc xml:space="preserve">Sets the field with the given GQuark @field to @value.  If the field
+        <doc xml:space="preserve"
+             filename="gst/gststructure.c"
+             line="768">Sets the field with the given GQuark @field to @value.  If the field
 does not exist, it is created.  If the field exists, the previous
 value is replaced and freed.</doc>
+        <source-position filename="gst/gststructure.h" line="172"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="structure" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStructure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="770">a #GstStructure</doc>
             <type name="Structure" c:type="GstStructure*"/>
           </instance-parameter>
           <parameter name="field" transfer-ownership="none">
-            <doc xml:space="preserve">a #GQuark representing a field</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="771">a #GQuark representing a field</doc>
             <type name="GLib.Quark" c:type="GQuark"/>
           </parameter>
           <parameter name="value" transfer-ownership="full">
-            <doc xml:space="preserve">the new value of the field</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="772">the new value of the field</doc>
             <type name="GObject.Value" c:type="GValue*"/>
           </parameter>
         </parameters>
       </method>
       <method name="intersect" c:identifier="gst_structure_intersect">
-        <doc xml:space="preserve">Intersects @struct1 and @struct2 and returns the intersection.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gststructure.c"
+             line="3063">Intersects @struct1 and @struct2 and returns the intersection.</doc>
+        <source-position filename="gst/gststructure.h" line="374"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">Intersection of @struct1 and @struct2</doc>
+          <doc xml:space="preserve"
+               filename="gst/gststructure.c"
+               line="3070">Intersection of @struct1 and @struct2</doc>
           <type name="Structure" c:type="GstStructure*"/>
         </return-value>
         <parameters>
           <instance-parameter name="struct1" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStructure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="3065">a #GstStructure</doc>
             <type name="Structure" c:type="const GstStructure*"/>
           </instance-parameter>
           <parameter name="struct2" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStructure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="3066">a #GstStructure</doc>
             <type name="Structure" c:type="const GstStructure*"/>
           </parameter>
         </parameters>
       </method>
       <method name="is_equal" c:identifier="gst_structure_is_equal">
-        <doc xml:space="preserve">Tests if the two #GstStructure are equal.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the two structures have the same name and field.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gststructure.c"
+             line="3033">Tests if the two #GstStructure are equal.</doc>
+        <source-position filename="gst/gststructure.h" line="365"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gststructure.c"
+               line="3040">%TRUE if the two structures have the same name and field.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="structure1" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStructure.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="3035">a #GstStructure.</doc>
             <type name="Structure" c:type="const GstStructure*"/>
           </instance-parameter>
           <parameter name="structure2" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStructure.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="3036">a #GstStructure.</doc>
             <type name="Structure" c:type="const GstStructure*"/>
           </parameter>
         </parameters>
       </method>
       <method name="is_subset" c:identifier="gst_structure_is_subset">
-        <doc xml:space="preserve">Checks if @subset is a subset of @superset, i.e. has the same
+        <doc xml:space="preserve"
+             filename="gst/gststructure.c"
+             line="3193">Checks if @subset is a subset of @superset, i.e. has the same
 structure name and for all fields that are existing in @superset,
 @subset has a value that is a subset of the value in @superset.</doc>
+        <source-position filename="gst/gststructure.h" line="368"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if @subset is a subset of @superset</doc>
+          <doc xml:space="preserve"
+               filename="gst/gststructure.c"
+               line="3202">%TRUE if @subset is a subset of @superset</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="subset" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStructure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="3195">a #GstStructure</doc>
             <type name="Structure" c:type="const GstStructure*"/>
           </instance-parameter>
           <parameter name="superset" transfer-ownership="none">
-            <doc xml:space="preserve">a potentially greater #GstStructure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="3196">a potentially greater #GstStructure</doc>
             <type name="Structure" c:type="const GstStructure*"/>
           </parameter>
         </parameters>
       </method>
       <method name="map_in_place" c:identifier="gst_structure_map_in_place">
-        <doc xml:space="preserve">Calls the provided function once for each field in the #GstStructure. In
+        <doc xml:space="preserve"
+             filename="gst/gststructure.c"
+             line="1371">Calls the provided function once for each field in the #GstStructure. In
 contrast to gst_structure_foreach(), the function may modify but not delete the
 fields. The structure must be mutable.</doc>
+        <source-position filename="gst/gststructure.h" line="239"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the supplied function returns %TRUE For each of the fields,
+          <doc xml:space="preserve"
+               filename="gst/gststructure.c"
+               line="1381">%TRUE if the supplied function returns %TRUE For each of the fields,
 %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="structure" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStructure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="1373">a #GstStructure</doc>
             <type name="Structure" c:type="GstStructure*"/>
           </instance-parameter>
           <parameter name="func"
                      transfer-ownership="none"
                      scope="call"
                      closure="1">
-            <doc xml:space="preserve">a function to call for each field</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="1374">a function to call for each field</doc>
             <type name="StructureMapFunc" c:type="GstStructureMapFunc"/>
           </parameter>
           <parameter name="user_data"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">private data</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="1375">private data</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
         </parameters>
       </method>
       <method name="n_fields" c:identifier="gst_structure_n_fields">
-        <doc xml:space="preserve">Get the number of fields in the structure.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the number of fields in the structure</doc>
+        <doc xml:space="preserve"
+             filename="gst/gststructure.c"
+             line="1296">Get the number of fields in the structure.</doc>
+        <source-position filename="gst/gststructure.h" line="247"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gststructure.c"
+               line="1302">the number of fields in the structure</doc>
           <type name="gint" c:type="gint"/>
         </return-value>
         <parameters>
           <instance-parameter name="structure" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStructure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="1298">a #GstStructure</doc>
             <type name="Structure" c:type="const GstStructure*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="nth_field_name"
               c:identifier="gst_structure_nth_field_name">
-        <doc xml:space="preserve">Get the name of the given field number, counting from 0 onwards.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the name of the given field number</doc>
+        <doc xml:space="preserve"
+             filename="gst/gststructure.c"
+             line="1312">Get the name of the given field number, counting from 0 onwards.</doc>
+        <source-position filename="gst/gststructure.h" line="250"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gststructure.c"
+               line="1319">the name of the given field number</doc>
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
         <parameters>
           <instance-parameter name="structure" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStructure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="1314">a #GstStructure</doc>
             <type name="Structure" c:type="const GstStructure*"/>
           </instance-parameter>
           <parameter name="index" transfer-ownership="none">
-            <doc xml:space="preserve">the index to get the name of</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="1315">the index to get the name of</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="remove_all_fields"
               c:identifier="gst_structure_remove_all_fields">
-        <doc xml:space="preserve">Removes all fields in a GstStructure.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gststructure.c"
+             line="1244">Removes all fields in a GstStructure.</doc>
+        <source-position filename="gst/gststructure.h" line="229"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="structure" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStructure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="1246">a #GstStructure</doc>
             <type name="Structure" c:type="GstStructure*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="remove_field" c:identifier="gst_structure_remove_field">
-        <doc xml:space="preserve">Removes the field with the given name.  If the field with the given
+        <doc xml:space="preserve"
+             filename="gst/gststructure.c"
+             line="1161">Removes the field with the given name.  If the field with the given
 name does not exist, the structure is unchanged.</doc>
+        <source-position filename="gst/gststructure.h" line="218"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="structure" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStructure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="1163">a #GstStructure</doc>
             <type name="Structure" c:type="GstStructure*"/>
           </instance-parameter>
           <parameter name="fieldname" transfer-ownership="none">
-            <doc xml:space="preserve">the name of the field to remove</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="1164">the name of the field to remove</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
@@ -39065,22 +60224,31 @@ name does not exist, the structure is unchanged.</doc>
       <method name="remove_fields"
               c:identifier="gst_structure_remove_fields"
               introspectable="0">
-        <doc xml:space="preserve">Removes the fields with the given names. If a field does not exist, the
+        <doc xml:space="preserve"
+             filename="gst/gststructure.c"
+             line="1196">Removes the fields with the given names. If a field does not exist, the
 argument is ignored.</doc>
+        <source-position filename="gst/gststructure.h" line="221"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="structure" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStructure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="1198">a #GstStructure</doc>
             <type name="Structure" c:type="GstStructure*"/>
           </instance-parameter>
           <parameter name="fieldname" transfer-ownership="none">
-            <doc xml:space="preserve">the name of the field to remove</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="1199">the name of the field to remove</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="..." transfer-ownership="none">
-            <doc xml:space="preserve">%NULL-terminated list of more fieldnames to remove</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="1200">%NULL-terminated list of more fieldnames to remove</doc>
             <varargs/>
           </parameter>
         </parameters>
@@ -39088,133 +60256,185 @@ argument is ignored.</doc>
       <method name="remove_fields_valist"
               c:identifier="gst_structure_remove_fields_valist"
               introspectable="0">
-        <doc xml:space="preserve">va_list form of gst_structure_remove_fields().</doc>
+        <doc xml:space="preserve"
+             filename="gst/gststructure.c"
+             line="1220">va_list form of gst_structure_remove_fields().</doc>
+        <source-position filename="gst/gststructure.h" line="225"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="structure" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStructure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="1222">a #GstStructure</doc>
             <type name="Structure" c:type="GstStructure*"/>
           </instance-parameter>
           <parameter name="fieldname" transfer-ownership="none">
-            <doc xml:space="preserve">the name of the field to remove</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="1223">the name of the field to remove</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="varargs" transfer-ownership="none">
-            <doc xml:space="preserve">%NULL-terminated list of more fieldnames to remove</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="1224">%NULL-terminated list of more fieldnames to remove</doc>
             <type name="va_list" c:type="va_list"/>
           </parameter>
         </parameters>
       </method>
       <method name="set" c:identifier="gst_structure_set" introspectable="0">
-        <doc xml:space="preserve">Parses the variable arguments and sets fields accordingly. Fields that
+        <doc xml:space="preserve"
+             filename="gst/gststructure.c"
+             line="838">Parses the variable arguments and sets fields accordingly. Fields that
 weren't already part of the structure are added as needed.
 Variable arguments should be in the form field name, field type
 (as a GType), value(s).  The last variable argument should be %NULL.</doc>
+        <source-position filename="gst/gststructure.h" line="180"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="structure" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStructure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="840">a #GstStructure</doc>
             <type name="Structure" c:type="GstStructure*"/>
           </instance-parameter>
           <parameter name="fieldname" transfer-ownership="none">
-            <doc xml:space="preserve">the name of the field to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="841">the name of the field to set</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="..." transfer-ownership="none">
-            <doc xml:space="preserve">variable arguments</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="842">variable arguments</doc>
             <varargs/>
           </parameter>
         </parameters>
       </method>
-      <method name="set_array" c:identifier="gst_structure_set_array">
-        <doc xml:space="preserve">This is useful in language bindings where unknown GValue types are not
+      <method name="set_array"
+              c:identifier="gst_structure_set_array"
+              version="1.12">
+        <doc xml:space="preserve"
+             filename="gst/gststructure.c"
+             line="3373">This is useful in language bindings where unknown GValue types are not
 supported. This function will convert a @array to %GST_TYPE_ARRAY and set
 the field specified by @fieldname.  Be aware that this is slower then using
-%GST_TYPE_ARRAY in a #GValue directly.
-
-Since 1.12</doc>
+%GST_TYPE_ARRAY in a #GValue directly.</doc>
+        <source-position filename="gst/gststructure.h" line="164"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="structure" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStructure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="3375">a #GstStructure</doc>
             <type name="Structure" c:type="GstStructure*"/>
           </instance-parameter>
           <parameter name="fieldname" transfer-ownership="none">
-            <doc xml:space="preserve">the name of a field</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="3376">the name of a field</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="array" transfer-ownership="none">
-            <doc xml:space="preserve">a pointer to a #GValueArray</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="3377">a pointer to a #GValueArray</doc>
             <type name="GObject.ValueArray" c:type="const GValueArray*"/>
           </parameter>
         </parameters>
       </method>
-      <method name="set_list" c:identifier="gst_structure_set_list">
-        <doc xml:space="preserve">This is useful in language bindings where unknown GValue types are not
+      <method name="set_list"
+              c:identifier="gst_structure_set_list"
+              version="1.12">
+        <doc xml:space="preserve"
+             filename="gst/gststructure.c"
+             line="3393">This is useful in language bindings where unknown GValue types are not
 supported. This function will convert a @array to %GST_TYPE_LIST and set
 the field specified by @fieldname. Be aware that this is slower then using
-%GST_TYPE_LIST in a #GValue directly.
-
-Since 1.12</doc>
+%GST_TYPE_LIST in a #GValue directly.</doc>
+        <source-position filename="gst/gststructure.h" line="168"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="structure" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStructure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="3395">a #GstStructure</doc>
             <type name="Structure" c:type="GstStructure*"/>
           </instance-parameter>
           <parameter name="fieldname" transfer-ownership="none">
-            <doc xml:space="preserve">the name of a field</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="3396">the name of a field</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="array" transfer-ownership="none">
-            <doc xml:space="preserve">a pointer to a #GValueArray</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="3397">a pointer to a #GValueArray</doc>
             <type name="GObject.ValueArray" c:type="const GValueArray*"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_name" c:identifier="gst_structure_set_name">
-        <doc xml:space="preserve">Sets the name of the structure to the given @name.  The string
+        <doc xml:space="preserve"
+             filename="gst/gststructure.c"
+             line="673">Sets the name of the structure to the given @name.  The string
 provided is copied before being used. It must not be empty, start with a
 letter and can be followed by letters, numbers and any of "/-_.:".</doc>
+        <source-position filename="gst/gststructure.h" line="153"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="structure" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStructure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="675">a #GstStructure</doc>
             <type name="Structure" c:type="GstStructure*"/>
           </instance-parameter>
           <parameter name="name" transfer-ownership="none">
-            <doc xml:space="preserve">the new name of the structure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="676">the new name of the structure</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_parent_refcount"
               c:identifier="gst_structure_set_parent_refcount">
-        <doc xml:space="preserve">Sets the parent_refcount field of #GstStructure. This field is used to
+        <doc xml:space="preserve"
+             filename="gst/gststructure.c"
+             line="443">Sets the parent_refcount field of #GstStructure. This field is used to
 determine whether a structure is mutable or not. This function should only be
 called by code implementing parent objects of #GstStructure, as described in
 the MT Refcounting section of the design documents.</doc>
+        <source-position filename="gst/gststructure.h" line="131"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the parent refcount could be set.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gststructure.c"
+               line="453">%TRUE if the parent refcount could be set.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="structure" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStructure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="445">a #GstStructure</doc>
             <type name="Structure" c:type="GstStructure*"/>
           </instance-parameter>
           <parameter name="refcount" transfer-ownership="none">
-            <doc xml:space="preserve">a pointer to the parent's refcount</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="446">a pointer to the parent's refcount</doc>
             <type name="gint" c:type="gint*"/>
           </parameter>
         </parameters>
@@ -39222,71 +60442,100 @@ the MT Refcounting section of the design documents.</doc>
       <method name="set_valist"
               c:identifier="gst_structure_set_valist"
               introspectable="0">
-        <doc xml:space="preserve">va_list form of gst_structure_set().</doc>
+        <doc xml:space="preserve"
+             filename="gst/gststructure.c"
+             line="862">va_list form of gst_structure_set().</doc>
+        <source-position filename="gst/gststructure.h" line="184"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="structure" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStructure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="864">a #GstStructure</doc>
             <type name="Structure" c:type="GstStructure*"/>
           </instance-parameter>
           <parameter name="fieldname" transfer-ownership="none">
-            <doc xml:space="preserve">the name of the field to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="865">the name of the field to set</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="varargs" transfer-ownership="none">
-            <doc xml:space="preserve">variable arguments</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="866">variable arguments</doc>
             <type name="va_list" c:type="va_list"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_value" c:identifier="gst_structure_set_value">
-        <doc xml:space="preserve">Sets the field with the given name @field to @value.  If the field
+        <doc xml:space="preserve"
+             filename="gst/gststructure.c"
+             line="726">Sets the field with the given name @field to @value.  If the field
 does not exist, it is created.  If the field exists, the previous
 value is replaced and freed.</doc>
+        <source-position filename="gst/gststructure.h" line="160"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="structure" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStructure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="728">a #GstStructure</doc>
             <type name="Structure" c:type="GstStructure*"/>
           </instance-parameter>
           <parameter name="fieldname" transfer-ownership="none">
-            <doc xml:space="preserve">the name of the field to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="729">the name of the field to set</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="value" transfer-ownership="none">
-            <doc xml:space="preserve">the new value of the field</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="730">the new value of the field</doc>
             <type name="GObject.Value" c:type="const GValue*"/>
           </parameter>
         </parameters>
       </method>
       <method name="take_value" c:identifier="gst_structure_take_value">
-        <doc xml:space="preserve">Sets the field with the given name @field to @value.  If the field
+        <doc xml:space="preserve"
+             filename="gst/gststructure.c"
+             line="789">Sets the field with the given name @field to @value.  If the field
 does not exist, it is created.  If the field exists, the previous
 value is replaced and freed. The function will take ownership of @value.</doc>
+        <source-position filename="gst/gststructure.h" line="176"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="structure" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStructure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="791">a #GstStructure</doc>
             <type name="Structure" c:type="GstStructure*"/>
           </instance-parameter>
           <parameter name="fieldname" transfer-ownership="none">
-            <doc xml:space="preserve">the name of the field to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="792">the name of the field to set</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="value" transfer-ownership="full">
-            <doc xml:space="preserve">the new value of the field</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="793">the new value of the field</doc>
             <type name="GObject.Value" c:type="GValue*"/>
           </parameter>
         </parameters>
       </method>
       <method name="to_string" c:identifier="gst_structure_to_string">
-        <doc xml:space="preserve">Converts @structure to a human-readable string representation.
+        <doc xml:space="preserve"
+             filename="gst/gststructure.c"
+             line="2132">Converts @structure to a human-readable string representation.
 
 For debugging purposes its easier to do something like this:
 |[&lt;!-- language="C" --&gt;
@@ -39298,44 +60547,62 @@ The current implementation of serialization will lead to unexpected results
 when there are nested #GstCaps / #GstStructure deeper than one level.
 
 Free-function: g_free</doc>
+        <source-position filename="gst/gststructure.h" line="332"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a pointer to string allocated by g_malloc().
+          <doc xml:space="preserve"
+               filename="gst/gststructure.c"
+               line="2149">a pointer to string allocated by g_malloc().
     g_free() after usage.</doc>
           <type name="utf8" c:type="gchar*"/>
         </return-value>
         <parameters>
           <instance-parameter name="structure" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStructure</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="2134">a #GstStructure</doc>
             <type name="Structure" c:type="const GstStructure*"/>
           </instance-parameter>
         </parameters>
       </method>
-      <function name="from_string" c:identifier="gst_structure_from_string">
-        <doc xml:space="preserve">Creates a #GstStructure from a string representation.
-If end is not %NULL, a pointer to the place inside the given string
-where parsing ended will be returned.
+      <function name="take" c:identifier="gst_structure_take" version="1.18">
+        <doc xml:space="preserve"
+             filename="gst/gststructure.c"
+             line="575">Atomically modifies a pointer to point to a new structure.
+The #GstStructure @oldstr_ptr is pointing to is freed and
+@newstr is taken ownership over.
 
-Free-function: gst_structure_free</doc>
-        <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">a new #GstStructure or %NULL
-    when the string could not be parsed. Free with
-    gst_structure_free() after use.</doc>
-          <type name="Structure" c:type="GstStructure*"/>
+Either @newstr and the value pointed to by @oldstr_ptr may be %NULL.
+
+It is a programming error if both @newstr and the value pointed to by
+@oldstr_ptr refer to the same, non-%NULL structure.</doc>
+        <source-position filename="gst/gststructure.h" line="141"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gststructure.c"
+               line="590">%TRUE if @newstr was different from @oldstr_ptr</doc>
+          <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
-          <parameter name="string" transfer-ownership="none">
-            <doc xml:space="preserve">a string representation of a #GstStructure.</doc>
-            <type name="utf8" c:type="const gchar*"/>
-          </parameter>
-          <parameter name="end"
-                     direction="out"
+          <parameter name="oldstr_ptr"
+                     direction="inout"
                      caller-allocates="0"
-                     transfer-ownership="none"
-                     optional="1"
-                     allow-none="1"
-                     skip="1">
-            <doc xml:space="preserve">pointer to store the end of the string in.</doc>
-            <type name="utf8" c:type="gchar**"/>
+                     transfer-ownership="full"
+                     nullable="1"
+                     allow-none="1">
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="577">pointer to a place of
+    a #GstStructure to take</doc>
+            <type name="Structure" c:type="GstStructure**"/>
+          </parameter>
+          <parameter name="newstr"
+                     transfer-ownership="full"
+                     nullable="1"
+                     allow-none="1">
+            <doc xml:space="preserve"
+                 filename="gst/gststructure.c"
+                 line="579">a new #GstStructure</doc>
+            <type name="Structure" c:type="GstStructure*"/>
           </parameter>
         </parameters>
       </function>
@@ -39344,36 +60611,51 @@ Free-function: gst_structure_free</doc>
                  glib:type-name="GstStructureChangeType"
                  glib:get-type="gst_structure_change_type_get_type"
                  c:type="GstStructureChangeType">
-      <doc xml:space="preserve">The type of a %GST_MESSAGE_STRUCTURE_CHANGE.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstmessage.h"
+           line="271">The type of a %GST_MESSAGE_STRUCTURE_CHANGE.</doc>
       <member name="link"
               value="0"
               c:identifier="GST_STRUCTURE_CHANGE_TYPE_PAD_LINK"
               glib:nick="link">
-        <doc xml:space="preserve">Pad linking is starting or done.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.h"
+             line="273">Pad linking is starting or done.</doc>
       </member>
       <member name="unlink"
               value="1"
               c:identifier="GST_STRUCTURE_CHANGE_TYPE_PAD_UNLINK"
               glib:nick="unlink">
-        <doc xml:space="preserve">Pad unlinking is starting or done.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.h"
+             line="274">Pad unlinking is starting or done.</doc>
       </member>
     </enumeration>
     <callback name="StructureFilterMapFunc" c:type="GstStructureFilterMapFunc">
-      <doc xml:space="preserve">A function that will be called in gst_structure_filter_and_map_in_place().
+      <doc xml:space="preserve"
+           filename="gst/gststructure.h"
+           line="73">A function that will be called in gst_structure_filter_and_map_in_place().
 The function may modify @value, and the value will be removed from
 the structure if %FALSE is returned.</doc>
+      <source-position filename="gst/gststructure.h" line="86"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE if the field should be preserved, %FALSE if it
+        <doc xml:space="preserve"
+             filename="gst/gststructure.h"
+             line="83">%TRUE if the field should be preserved, %FALSE if it
 should be removed.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="field_id" transfer-ownership="none">
-          <doc xml:space="preserve">the #GQuark of the field name</doc>
+          <doc xml:space="preserve"
+               filename="gst/gststructure.h"
+               line="75">the #GQuark of the field name</doc>
           <type name="GLib.Quark" c:type="GQuark"/>
         </parameter>
         <parameter name="value" transfer-ownership="none">
-          <doc xml:space="preserve">the #GValue of the field</doc>
+          <doc xml:space="preserve"
+               filename="gst/gststructure.h"
+               line="76">the #GValue of the field</doc>
           <type name="GObject.Value" c:type="GValue*"/>
         </parameter>
         <parameter name="user_data"
@@ -39381,26 +60663,37 @@ should be removed.</doc>
                    nullable="1"
                    allow-none="1"
                    closure="2">
-          <doc xml:space="preserve">user data</doc>
+          <doc xml:space="preserve"
+               filename="gst/gststructure.h"
+               line="77">user data</doc>
           <type name="gpointer" c:type="gpointer"/>
         </parameter>
       </parameters>
     </callback>
     <callback name="StructureForeachFunc" c:type="GstStructureForeachFunc">
-      <doc xml:space="preserve">A function that will be called in gst_structure_foreach(). The function may
+      <doc xml:space="preserve"
+           filename="gst/gststructure.h"
+           line="41">A function that will be called in gst_structure_foreach(). The function may
 not modify @value.</doc>
+      <source-position filename="gst/gststructure.h" line="53"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE if the foreach operation should continue, %FALSE if
+        <doc xml:space="preserve"
+             filename="gst/gststructure.h"
+             line="50">%TRUE if the foreach operation should continue, %FALSE if
 the foreach operation should stop with %FALSE.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="field_id" transfer-ownership="none">
-          <doc xml:space="preserve">the #GQuark of the field name</doc>
+          <doc xml:space="preserve"
+               filename="gst/gststructure.h"
+               line="43">the #GQuark of the field name</doc>
           <type name="GLib.Quark" c:type="GQuark"/>
         </parameter>
         <parameter name="value" transfer-ownership="none">
-          <doc xml:space="preserve">the #GValue of the field</doc>
+          <doc xml:space="preserve"
+               filename="gst/gststructure.h"
+               line="44">the #GValue of the field</doc>
           <type name="GObject.Value" c:type="const GValue*"/>
         </parameter>
         <parameter name="user_data"
@@ -39408,26 +60701,37 @@ the foreach operation should stop with %FALSE.</doc>
                    nullable="1"
                    allow-none="1"
                    closure="2">
-          <doc xml:space="preserve">user data</doc>
+          <doc xml:space="preserve"
+               filename="gst/gststructure.h"
+               line="45">user data</doc>
           <type name="gpointer" c:type="gpointer"/>
         </parameter>
       </parameters>
     </callback>
     <callback name="StructureMapFunc" c:type="GstStructureMapFunc">
-      <doc xml:space="preserve">A function that will be called in gst_structure_map_in_place(). The function
+      <doc xml:space="preserve"
+           filename="gst/gststructure.h"
+           line="57">A function that will be called in gst_structure_map_in_place(). The function
 may modify @value.</doc>
+      <source-position filename="gst/gststructure.h" line="69"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE if the map operation should continue, %FALSE if
+        <doc xml:space="preserve"
+             filename="gst/gststructure.h"
+             line="66">%TRUE if the map operation should continue, %FALSE if
 the map operation should stop with %FALSE.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="field_id" transfer-ownership="none">
-          <doc xml:space="preserve">the #GQuark of the field name</doc>
+          <doc xml:space="preserve"
+               filename="gst/gststructure.h"
+               line="59">the #GQuark of the field name</doc>
           <type name="GLib.Quark" c:type="GQuark"/>
         </parameter>
         <parameter name="value" transfer-ownership="none">
-          <doc xml:space="preserve">the #GValue of the field</doc>
+          <doc xml:space="preserve"
+               filename="gst/gststructure.h"
+               line="60">the #GValue of the field</doc>
           <type name="GObject.Value" c:type="GValue*"/>
         </parameter>
         <parameter name="user_data"
@@ -39435,7 +60739,9 @@ the map operation should stop with %FALSE.</doc>
                    nullable="1"
                    allow-none="1"
                    closure="2">
-          <doc xml:space="preserve">user data</doc>
+          <doc xml:space="preserve"
+               filename="gst/gststructure.h"
+               line="61">user data</doc>
           <type name="gpointer" c:type="gpointer"/>
         </parameter>
       </parameters>
@@ -39447,7 +60753,9 @@ the map operation should stop with %FALSE.</doc>
            glib:type-name="GstSystemClock"
            glib:get-type="gst_system_clock_get_type"
            glib:type-struct="SystemClockClass">
-      <doc xml:space="preserve">The GStreamer core provides a GstSystemClock based on the system time.
+      <doc xml:space="preserve"
+           filename="gst/gstsystemclock.c"
+           line="23">The GStreamer core provides a GstSystemClock based on the system time.
 Asynchronous callbacks are scheduled from an internal thread.
 
 Clock implementors are encouraged to subclass this systemclock as it
@@ -39456,12 +60764,18 @@ implements the async notification.
 Subclasses can however override all of the important methods for sync and
 async notifications to implement their own callback methods or blocking
 wait operations.</doc>
+      <source-position filename="gst/gstsystemclock.h" line="82"/>
       <function name="obtain" c:identifier="gst_system_clock_obtain">
-        <doc xml:space="preserve">Get a handle to the default system clock. The refcount of the
+        <doc xml:space="preserve"
+             filename="gst/gstsystemclock.c"
+             line="607">Get a handle to the default system clock. The refcount of the
 clock will be increased so you need to unref the clock after
 usage.</doc>
+        <source-position filename="gst/gstsystemclock.h" line="88"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the default clock.
+          <doc xml:space="preserve"
+               filename="gst/gstsystemclock.c"
+               line="614">the default clock.
 
 MT safe.</doc>
           <type name="Clock" c:type="GstClock*"/>
@@ -39470,7 +60784,9 @@ MT safe.</doc>
       <function name="set_default"
                 c:identifier="gst_system_clock_set_default"
                 version="1.4">
-        <doc xml:space="preserve">Sets the default system clock that can be obtained with
+        <doc xml:space="preserve"
+             filename="gst/gstsystemclock.c"
+             line="568">Sets the default system clock that can be obtained with
 gst_system_clock_obtain().
 
 This is mostly used for testing and debugging purposes when you
@@ -39478,6 +60794,7 @@ want to have control over the time reported by the default system
 clock.
 
 MT safe.</doc>
+        <source-position filename="gst/gstsystemclock.h" line="91"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
@@ -39486,7 +60803,9 @@ MT safe.</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">a #GstClock</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstsystemclock.c"
+                 line="570">a #GstClock</doc>
             <type name="Clock" c:type="GstClock*"/>
           </parameter>
         </parameters>
@@ -39501,7 +60820,7 @@ MT safe.</doc>
         <type name="SystemClockPrivate" c:type="GstSystemClockPrivate*"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -39509,11 +60828,12 @@ MT safe.</doc>
     <record name="SystemClockClass"
             c:type="GstSystemClockClass"
             glib:is-gtype-struct-for="SystemClock">
+      <source-position filename="gst/gstsystemclock.h" line="82"/>
       <field name="parent_class">
         <type name="ClockClass" c:type="GstClockClass"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -39521,214 +60841,319 @@ MT safe.</doc>
     <record name="SystemClockPrivate"
             c:type="GstSystemClockPrivate"
             disguised="1">
+      <source-position filename="gst/gstsystemclock.h" line="43"/>
     </record>
     <constant name="TAG_ALBUM" value="album" c:type="GST_TAG_ALBUM">
-      <doc xml:space="preserve">album containing this data (string)
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="593">album containing this data (string)
 
 The album name as it should be displayed, e.g. 'The Jazz Guitar'</doc>
+      <source-position filename="gst/gsttaglist.h" line="600"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_ALBUM_ARTIST"
               value="album-artist"
               c:type="GST_TAG_ALBUM_ARTIST">
-      <doc xml:space="preserve">The artist of the entire album, as it should be displayed.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="609">The artist of the entire album, as it should be displayed.</doc>
+      <source-position filename="gst/gsttaglist.h" line="614"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_ALBUM_ARTIST_SORTNAME"
               value="album-artist-sortname"
               c:type="GST_TAG_ALBUM_ARTIST_SORTNAME">
-      <doc xml:space="preserve">The artist of the entire album, as it should be sorted.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="615">The artist of the entire album, as it should be sorted.</doc>
+      <source-position filename="gst/gsttaglist.h" line="620"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_ALBUM_GAIN"
               value="replaygain-album-gain"
               c:type="GST_TAG_ALBUM_GAIN">
-      <doc xml:space="preserve">album gain in db (double)</doc>
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="871">album gain in db (double)</doc>
+      <source-position filename="gst/gsttaglist.h" line="876"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_ALBUM_PEAK"
               value="replaygain-album-peak"
               c:type="GST_TAG_ALBUM_PEAK">
-      <doc xml:space="preserve">peak of the album (double)</doc>
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="877">peak of the album (double)</doc>
+      <source-position filename="gst/gsttaglist.h" line="882"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_ALBUM_SORTNAME"
               value="album-sortname"
               c:type="GST_TAG_ALBUM_SORTNAME">
-      <doc xml:space="preserve">album containing this data, as used for sorting (string)
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="601">album containing this data, as used for sorting (string)
 
 The album name as it should be sorted, e.g. 'Jazz Guitar, The'</doc>
+      <source-position filename="gst/gsttaglist.h" line="608"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_ALBUM_VOLUME_COUNT"
               value="album-disc-count"
               c:type="GST_TAG_ALBUM_VOLUME_COUNT">
-      <doc xml:space="preserve">count of discs inside collection this disc belongs to (unsigned integer)</doc>
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="690">count of discs inside collection this disc belongs to (unsigned integer)</doc>
+      <source-position filename="gst/gsttaglist.h" line="695"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_ALBUM_VOLUME_NUMBER"
               value="album-disc-number"
               c:type="GST_TAG_ALBUM_VOLUME_NUMBER">
-      <doc xml:space="preserve">disc number inside a collection (unsigned integer)</doc>
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="684">disc number inside a collection (unsigned integer)</doc>
+      <source-position filename="gst/gsttaglist.h" line="689"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_APPLICATION_DATA"
               value="application-data"
               c:type="GST_TAG_APPLICATION_DATA">
-      <doc xml:space="preserve">Arbitrary application data (sample)
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="1106">Arbitrary application data (sample)
 
 Some formats allow applications to add their own arbitrary data
 into files. This data is application dependent.</doc>
+      <source-position filename="gst/gsttaglist.h" line="1114"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_APPLICATION_NAME"
               value="application-name"
               c:type="GST_TAG_APPLICATION_NAME">
-      <doc xml:space="preserve">Name of the application used to create the media (string)</doc>
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="1100">Name of the application used to create the media (string)</doc>
+      <source-position filename="gst/gsttaglist.h" line="1105"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_ARTIST" value="artist" c:type="GST_TAG_ARTIST">
-      <doc xml:space="preserve">person(s) responsible for the recording (string)
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="575">person(s) responsible for the recording (string)
 
 The artist name as it should be displayed, e.g. 'Jimi Hendrix' or
 'The Guitar Heroes'</doc>
+      <source-position filename="gst/gsttaglist.h" line="583"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_ARTIST_SORTNAME"
               value="artist-sortname"
               c:type="GST_TAG_ARTIST_SORTNAME">
-      <doc xml:space="preserve">person(s) responsible for the recording, as used for sorting (string)
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="584">person(s) responsible for the recording, as used for sorting (string)
 
 The artist name as it should be sorted, e.g. 'Hendrix, Jimi' or
 'Guitar Heroes, The'</doc>
+      <source-position filename="gst/gsttaglist.h" line="592"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_ATTACHMENT"
               value="attachment"
               c:type="GST_TAG_ATTACHMENT">
-      <doc xml:space="preserve">generic file attachment (sample) (sample taglist should specify the content
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="923">generic file attachment (sample) (sample taglist should specify the content
 type and if possible set "filename" to the file name of the
 attachment)</doc>
+      <source-position filename="gst/gsttaglist.h" line="930"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_AUDIO_CODEC"
               value="audio-codec"
               c:type="GST_TAG_AUDIO_CODEC">
-      <doc xml:space="preserve">codec the audio data is stored in (string)</doc>
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="798">codec the audio data is stored in (string)</doc>
+      <source-position filename="gst/gsttaglist.h" line="803"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_BEATS_PER_MINUTE"
               value="beats-per-minute"
               c:type="GST_TAG_BEATS_PER_MINUTE">
-      <doc xml:space="preserve">number of beats per minute in audio (double)</doc>
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="932">number of beats per minute in audio (double)</doc>
+      <source-position filename="gst/gsttaglist.h" line="937"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_BITRATE" value="bitrate" c:type="GST_TAG_BITRATE">
-      <doc xml:space="preserve">exact or average bitrate in bits/s (unsigned integer)</doc>
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="816">exact or average bitrate in bits/s (unsigned integer)</doc>
+      <source-position filename="gst/gsttaglist.h" line="821"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_CODEC" value="codec" c:type="GST_TAG_CODEC">
-      <doc xml:space="preserve">codec the data is stored in (string)</doc>
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="786">codec the data is stored in (string)</doc>
+      <source-position filename="gst/gsttaglist.h" line="791"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_COMMENT" value="comment" c:type="GST_TAG_COMMENT">
-      <doc xml:space="preserve">free text commenting the data (string)</doc>
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="653">free text commenting the data (string)</doc>
+      <source-position filename="gst/gsttaglist.h" line="658"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_COMPOSER" value="composer" c:type="GST_TAG_COMPOSER">
-      <doc xml:space="preserve">person(s) who composed the recording (string)</doc>
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="621">person(s) who composed the recording (string)</doc>
+      <source-position filename="gst/gsttaglist.h" line="626"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_COMPOSER_SORTNAME"
               value="composer-sortname"
               c:type="GST_TAG_COMPOSER_SORTNAME">
-      <doc xml:space="preserve">The composer's name, used for sorting (string)</doc>
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="1067">The composer's name, used for sorting (string)</doc>
+      <source-position filename="gst/gsttaglist.h" line="1072"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_CONDUCTOR"
               value="conductor"
               c:type="GST_TAG_CONDUCTOR"
               version="1.8">
-      <doc xml:space="preserve">conductor/performer refinement (string)</doc>
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="627">conductor/performer refinement (string)</doc>
+      <source-position filename="gst/gsttaglist.h" line="634"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_CONTACT" value="contact" c:type="GST_TAG_CONTACT">
-      <doc xml:space="preserve">contact information (string)</doc>
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="756">contact information (string)</doc>
+      <source-position filename="gst/gsttaglist.h" line="761"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_CONTAINER_FORMAT"
               value="container-format"
               c:type="GST_TAG_CONTAINER_FORMAT">
-      <doc xml:space="preserve">container format the data is stored in (string)</doc>
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="810">container format the data is stored in (string)</doc>
+      <source-position filename="gst/gsttaglist.h" line="815"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_COPYRIGHT"
               value="copyright"
               c:type="GST_TAG_COPYRIGHT">
-      <doc xml:space="preserve">copyright notice of the data (string)</doc>
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="733">copyright notice of the data (string)</doc>
+      <source-position filename="gst/gsttaglist.h" line="738"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_COPYRIGHT_URI"
               value="copyright-uri"
               c:type="GST_TAG_COPYRIGHT_URI">
-      <doc xml:space="preserve">URI to location where copyright details can be found (string)</doc>
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="739">URI to location where copyright details can be found (string)</doc>
+      <source-position filename="gst/gsttaglist.h" line="744"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_DATE" value="date" c:type="GST_TAG_DATE">
-      <doc xml:space="preserve">date the data was created (#GDate structure)</doc>
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="635">date the data was created (#GDate structure)</doc>
+      <source-position filename="gst/gsttaglist.h" line="640"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_DATE_TIME" value="datetime" c:type="GST_TAG_DATE_TIME">
-      <doc xml:space="preserve">date and time the data was created (#GstDateTime structure)</doc>
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="641">date and time the data was created (#GstDateTime structure)</doc>
+      <source-position filename="gst/gsttaglist.h" line="646"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_DESCRIPTION"
               value="description"
               c:type="GST_TAG_DESCRIPTION">
-      <doc xml:space="preserve">short text describing the content of the data (string)</doc>
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="709">short text describing the content of the data (string)</doc>
+      <source-position filename="gst/gsttaglist.h" line="714"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_DEVICE_MANUFACTURER"
               value="device-manufacturer"
               c:type="GST_TAG_DEVICE_MANUFACTURER">
-      <doc xml:space="preserve">Manufacturer of the device used to create the media (string)</doc>
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="1088">Manufacturer of the device used to create the media (string)</doc>
+      <source-position filename="gst/gsttaglist.h" line="1093"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_DEVICE_MODEL"
               value="device-model"
               c:type="GST_TAG_DEVICE_MODEL">
-      <doc xml:space="preserve">Model of the device used to create the media (string)</doc>
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="1094">Model of the device used to create the media (string)</doc>
+      <source-position filename="gst/gsttaglist.h" line="1099"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_DURATION" value="duration" c:type="GST_TAG_DURATION">
-      <doc xml:space="preserve">length in GStreamer time units (nanoseconds) (unsigned 64-bit integer)</doc>
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="780">length in GStreamer time units (nanoseconds) (unsigned 64-bit integer)</doc>
+      <source-position filename="gst/gsttaglist.h" line="785"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_ENCODED_BY"
               value="encoded-by"
               c:type="GST_TAG_ENCODED_BY">
-      <doc xml:space="preserve">name of the person or organisation that encoded the file. May contain a
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="745">name of the person or organisation that encoded the file. May contain a
 copyright message if the person or organisation also holds the copyright
 (string)
 
 Note: do not use this field to describe the encoding application. Use
 #GST_TAG_APPLICATION_NAME or #GST_TAG_COMMENT for that.</doc>
+      <source-position filename="gst/gsttaglist.h" line="755"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_ENCODER" value="encoder" c:type="GST_TAG_ENCODER">
-      <doc xml:space="preserve">encoder used to encode this stream (string)</doc>
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="847">encoder used to encode this stream (string)</doc>
+      <source-position filename="gst/gsttaglist.h" line="852"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_ENCODER_VERSION"
               value="encoder-version"
               c:type="GST_TAG_ENCODER_VERSION">
-      <doc xml:space="preserve">version of the encoder used to encode this stream (unsigned integer)</doc>
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="853">version of the encoder used to encode this stream (unsigned integer)</doc>
+      <source-position filename="gst/gsttaglist.h" line="858"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_EXTENDED_COMMENT"
               value="extended-comment"
               c:type="GST_TAG_EXTENDED_COMMENT">
-      <doc xml:space="preserve">key/value text commenting the data (string)
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="659">key/value text commenting the data (string)
 
 Must be in the form of 'key=comment' or
 'key[lc]=comment' where 'lc' is an ISO-639
@@ -39736,118 +61161,175 @@ language code.
 
 This tag is used for unknown Vorbis comment tags,
 unknown APE tags and certain ID3v2 comment fields.</doc>
+      <source-position filename="gst/gsttaglist.h" line="671"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
+    <function-macro name="TAG_FLAG_IS_VALID"
+                    c:identifier="GST_TAG_FLAG_IS_VALID"
+                    introspectable="0">
+      <source-position filename="gst/gsttaglist.h" line="95"/>
+      <parameters>
+        <parameter name="flag">
+        </parameter>
+      </parameters>
+    </function-macro>
     <constant name="TAG_GENRE" value="genre" c:type="GST_TAG_GENRE">
-      <doc xml:space="preserve">genre this data belongs to (string)</doc>
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="647">genre this data belongs to (string)</doc>
+      <source-position filename="gst/gsttaglist.h" line="652"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_GEO_LOCATION_CAPTURE_DIRECTION"
               value="geo-location-capture-direction"
               c:type="GST_TAG_GEO_LOCATION_CAPTURE_DIRECTION">
-      <doc xml:space="preserve">Indicates the direction the device is pointing to when capturing
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="1027">Indicates the direction the device is pointing to when capturing
 a media. It is represented as degrees in floating point representation,
 0 means the geographic north, and increases clockwise (double from 0 to 360)
 
 See also #GST_TAG_GEO_LOCATION_MOVEMENT_DIRECTION</doc>
+      <source-position filename="gst/gsttaglist.h" line="1036"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_GEO_LOCATION_CITY"
               value="geo-location-city"
               c:type="GST_TAG_GEO_LOCATION_CITY">
-      <doc xml:space="preserve">The city (english name) where the media has been produced (string).</doc>
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="985">The city (english name) where the media has been produced (string).</doc>
+      <source-position filename="gst/gsttaglist.h" line="990"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_GEO_LOCATION_COUNTRY"
               value="geo-location-country"
               c:type="GST_TAG_GEO_LOCATION_COUNTRY">
-      <doc xml:space="preserve">The country (english name) where the media has been produced (string).</doc>
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="979">The country (english name) where the media has been produced (string).</doc>
+      <source-position filename="gst/gsttaglist.h" line="984"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_GEO_LOCATION_ELEVATION"
               value="geo-location-elevation"
               c:type="GST_TAG_GEO_LOCATION_ELEVATION">
-      <doc xml:space="preserve">geo elevation of where the media has been recorded or produced in meters
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="972">geo elevation of where the media has been recorded or produced in meters
 according to WGS84 (zero is average sea level) (double).</doc>
+      <source-position filename="gst/gsttaglist.h" line="978"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_GEO_LOCATION_HORIZONTAL_ERROR"
               value="geo-location-horizontal-error"
               c:type="GST_TAG_GEO_LOCATION_HORIZONTAL_ERROR">
-      <doc xml:space="preserve">Represents the expected error on the horizontal positioning in
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="1001">Represents the expected error on the horizontal positioning in
 meters (double).</doc>
+      <source-position filename="gst/gsttaglist.h" line="1007"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_GEO_LOCATION_LATITUDE"
               value="geo-location-latitude"
               c:type="GST_TAG_GEO_LOCATION_LATITUDE">
-      <doc xml:space="preserve">geo latitude location of where the media has been recorded or produced in
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="954">geo latitude location of where the media has been recorded or produced in
 degrees according to WGS84 (zero at the equator, negative values for southern
 latitudes) (double).</doc>
+      <source-position filename="gst/gsttaglist.h" line="961"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_GEO_LOCATION_LONGITUDE"
               value="geo-location-longitude"
               c:type="GST_TAG_GEO_LOCATION_LONGITUDE">
-      <doc xml:space="preserve">geo longitude location of where the media has been recorded or produced in
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="963">geo longitude location of where the media has been recorded or produced in
 degrees according to WGS84 (zero at the prime meridian in Greenwich/UK,
 negative values for western longitudes). (double).</doc>
+      <source-position filename="gst/gsttaglist.h" line="970"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_GEO_LOCATION_MOVEMENT_DIRECTION"
               value="geo-location-movement-direction"
               c:type="GST_TAG_GEO_LOCATION_MOVEMENT_DIRECTION">
-      <doc xml:space="preserve">Indicates the movement direction of the device performing the capture
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="1017">Indicates the movement direction of the device performing the capture
 of a media. It is represented as degrees in floating point representation,
 0 means the geographic north, and increases clockwise (double from 0 to 360)
 
 See also #GST_TAG_GEO_LOCATION_CAPTURE_DIRECTION</doc>
+      <source-position filename="gst/gsttaglist.h" line="1026"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_GEO_LOCATION_MOVEMENT_SPEED"
               value="geo-location-movement-speed"
               c:type="GST_TAG_GEO_LOCATION_MOVEMENT_SPEED">
-      <doc xml:space="preserve">Speed of the capturing device when performing the capture.
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="1008">Speed of the capturing device when performing the capture.
 Represented in m/s. (double)
 
 See also #GST_TAG_GEO_LOCATION_MOVEMENT_DIRECTION</doc>
+      <source-position filename="gst/gsttaglist.h" line="1016"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_GEO_LOCATION_NAME"
               value="geo-location-name"
               c:type="GST_TAG_GEO_LOCATION_NAME">
-      <doc xml:space="preserve">human readable descriptive location of where the media has been recorded or
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="946">human readable descriptive location of where the media has been recorded or
 produced. (string).</doc>
+      <source-position filename="gst/gsttaglist.h" line="952"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_GEO_LOCATION_SUBLOCATION"
               value="geo-location-sublocation"
               c:type="GST_TAG_GEO_LOCATION_SUBLOCATION">
-      <doc xml:space="preserve">A location 'smaller' than GST_TAG_GEO_LOCATION_CITY that specifies better
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="991">A location 'smaller' than GST_TAG_GEO_LOCATION_CITY that specifies better
 where the media has been produced. (e.g. the neighborhood) (string).
 
 This tag has been added as this is how it is handled/named in XMP's
 Iptc4xmpcore schema.</doc>
+      <source-position filename="gst/gsttaglist.h" line="1000"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_GROUPING" value="grouping" c:type="GST_TAG_GROUPING">
-      <doc xml:space="preserve">Groups together media that are related and spans multiple tracks. An
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="1073">Groups together media that are related and spans multiple tracks. An
 example are multiple pieces of a concerto. (string)</doc>
+      <source-position filename="gst/gsttaglist.h" line="1079"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_HOMEPAGE" value="homepage" c:type="GST_TAG_HOMEPAGE">
-      <doc xml:space="preserve">Homepage for this media (i.e. artist or movie homepage) (string)</doc>
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="703">Homepage for this media (i.e. artist or movie homepage) (string)</doc>
+      <source-position filename="gst/gsttaglist.h" line="708"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_IMAGE" value="image" c:type="GST_TAG_IMAGE">
-      <doc xml:space="preserve">image (sample) (sample taglist should specify the content type and preferably
-also set "image-type" field as #GstTagImageType)</doc>
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="908">image (sample) (sample taglist should specify the content type and preferably
+also set "image-type" field as `GstTagImageType`)</doc>
+      <source-position filename="gst/gsttaglist.h" line="914"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_IMAGE_ORIENTATION"
               value="image-orientation"
               c:type="GST_TAG_IMAGE_ORIENTATION">
-      <doc xml:space="preserve">Represents the 'Orientation' tag from EXIF. Defines how the image
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="1115">Represents the 'Orientation' tag from EXIF. Defines how the image
 should be rotated and mirrored for display. (string)
 
 This tag has a predefined set of allowed values:
@@ -39866,114 +61348,183 @@ yield the same result.
 
 Rotations indicated by the values are in clockwise direction and
 'flip' means an horizontal mirroring.</doc>
+      <source-position filename="gst/gsttaglist.h" line="1138"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_INTERPRETED_BY"
               value="interpreted-by"
               c:type="GST_TAG_INTERPRETED_BY"
               version="1.2">
-      <doc xml:space="preserve">Information about the people behind a remix and similar
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="1147">Information about the people behind a remix and similar
 interpretations of another existing piece (string)</doc>
+      <source-position filename="gst/gsttaglist.h" line="1155"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_ISRC" value="isrc" c:type="GST_TAG_ISRC">
-      <doc xml:space="preserve">International Standard Recording Code - see http://www.ifpi.org/isrc/ (string)</doc>
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="721">International Standard Recording Code - see http://www.ifpi.org/isrc/ (string)</doc>
+      <source-position filename="gst/gsttaglist.h" line="726"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_KEYWORDS" value="keywords" c:type="GST_TAG_KEYWORDS">
-      <doc xml:space="preserve">comma separated keywords describing the content (string).</doc>
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="939">comma separated keywords describing the content (string).</doc>
+      <source-position filename="gst/gsttaglist.h" line="944"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_LANGUAGE_CODE"
               value="language-code"
               c:type="GST_TAG_LANGUAGE_CODE">
-      <doc xml:space="preserve">ISO-639-2 or ISO-639-1 code for the language the content is in (string)
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="889">ISO-639-2 or ISO-639-1 code for the language the content is in (string)
 
 There is utility API in libgsttag in gst-plugins-base to obtain a translated
-language name from the language code: gst_tag_get_language_name()</doc>
+language name from the language code: `gst_tag_get_language_name()`</doc>
+      <source-position filename="gst/gsttaglist.h" line="897"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_LANGUAGE_NAME"
               value="language-name"
               c:type="GST_TAG_LANGUAGE_NAME">
-      <doc xml:space="preserve">Name of the language the content is in (string)
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="898">Name of the language the content is in (string)
 
 Free-form name of the language the content is in, if a language code
 is not available. This tag should not be set in addition to a language
 code. It is undefined what language or locale the language name is in.</doc>
+      <source-position filename="gst/gsttaglist.h" line="907"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_LICENSE" value="license" c:type="GST_TAG_LICENSE">
-      <doc xml:space="preserve">license of data (string)</doc>
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="762">license of data (string)</doc>
+      <source-position filename="gst/gsttaglist.h" line="767"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_LICENSE_URI"
               value="license-uri"
               c:type="GST_TAG_LICENSE_URI">
-      <doc xml:space="preserve">URI to location where license details can be found (string)</doc>
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="768">URI to location where license details can be found (string)</doc>
+      <source-position filename="gst/gsttaglist.h" line="773"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
+    <function-macro name="TAG_LIST"
+                    c:identifier="GST_TAG_LIST"
+                    introspectable="0">
+      <source-position filename="gst/gsttaglist.h" line="110"/>
+      <parameters>
+        <parameter name="x">
+        </parameter>
+      </parameters>
+    </function-macro>
     <constant name="TAG_LOCATION" value="location" c:type="GST_TAG_LOCATION">
-      <doc xml:space="preserve">Origin of media as a URI (location, where the original of the file or stream
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="696">Origin of media as a URI (location, where the original of the file or stream
 is hosted) (string)</doc>
+      <source-position filename="gst/gsttaglist.h" line="702"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_LYRICS" value="lyrics" c:type="GST_TAG_LYRICS">
-      <doc xml:space="preserve">The lyrics of the media (string)</doc>
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="1061">The lyrics of the media (string)</doc>
+      <source-position filename="gst/gsttaglist.h" line="1066"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_MAXIMUM_BITRATE"
               value="maximum-bitrate"
               c:type="GST_TAG_MAXIMUM_BITRATE">
-      <doc xml:space="preserve">maximum bitrate in bits/s (unsigned integer)</doc>
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="835">maximum bitrate in bits/s (unsigned integer)</doc>
+      <source-position filename="gst/gsttaglist.h" line="840"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_MIDI_BASE_NOTE"
               value="midi-base-note"
               c:type="GST_TAG_MIDI_BASE_NOTE"
               version="1.4">
-      <doc xml:space="preserve">&lt;ulink url="http://en.wikipedia.org/wiki/Note#Note_designation_in_accordance_with_octave_name"&gt;Midi note number&lt;/ulink&gt;
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="1156">[Midi note number](http://en.wikipedia.org/wiki/Note#Note_designation_in_accordance_with_octave_name)
 of the audio track. This is useful for sample instruments and in particular
 for multi-samples.</doc>
+      <source-position filename="gst/gsttaglist.h" line="1165"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_MINIMUM_BITRATE"
               value="minimum-bitrate"
               c:type="GST_TAG_MINIMUM_BITRATE">
-      <doc xml:space="preserve">minimum bitrate in bits/s (unsigned integer)</doc>
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="829">minimum bitrate in bits/s (unsigned integer)</doc>
+      <source-position filename="gst/gsttaglist.h" line="834"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
+    <function-macro name="TAG_MODE_IS_VALID"
+                    c:identifier="GST_TAG_MODE_IS_VALID"
+                    introspectable="0">
+      <source-position filename="gst/gsttaglist.h" line="74"/>
+      <parameters>
+        <parameter name="mode">
+        </parameter>
+      </parameters>
+    </function-macro>
     <constant name="TAG_NOMINAL_BITRATE"
               value="nominal-bitrate"
               c:type="GST_TAG_NOMINAL_BITRATE">
-      <doc xml:space="preserve">nominal bitrate in bits/s (unsigned integer). The actual bitrate might be
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="822">nominal bitrate in bits/s (unsigned integer). The actual bitrate might be
 different from this target bitrate.</doc>
+      <source-position filename="gst/gsttaglist.h" line="828"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_ORGANIZATION"
               value="organization"
               c:type="GST_TAG_ORGANIZATION">
-      <doc xml:space="preserve">organization (string)</doc>
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="727">organization (string)</doc>
+      <source-position filename="gst/gsttaglist.h" line="732"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_PERFORMER"
               value="performer"
               c:type="GST_TAG_PERFORMER">
-      <doc xml:space="preserve">person(s) performing (string)</doc>
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="774">person(s) performing (string)</doc>
+      <source-position filename="gst/gsttaglist.h" line="779"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_PREVIEW_IMAGE"
               value="preview-image"
               c:type="GST_TAG_PREVIEW_IMAGE">
-      <doc xml:space="preserve">image that is meant for preview purposes, e.g. small icon-sized version
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="915">image that is meant for preview purposes, e.g. small icon-sized version
 (sample) (sample taglist should specify the content type)</doc>
+      <source-position filename="gst/gsttaglist.h" line="921"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_PRIVATE_DATA"
               value="private-data"
               c:type="GST_TAG_PRIVATE_DATA"
               version="1.8">
-      <doc xml:space="preserve">Any private data that may be contained in tags (sample).
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="1166">Any private data that may be contained in tags (sample).
 
 It is represented by #GstSample in which #GstBuffer contains the
 binary data and the sample's info #GstStructure may contain any
@@ -39983,116 +61534,454 @@ Private frames in ID3v2 tags ('PRIV' frames) will be represented
 using this tag, in which case the GstStructure will be named
 "ID3PrivateFrame" and contain a field named "owner" of type string
 which contains the owner-identification string from the tag.</doc>
+      <source-position filename="gst/gsttaglist.h" line="1182"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_PUBLISHER"
               value="publisher"
               c:type="GST_TAG_PUBLISHER"
               version="1.2">
-      <doc xml:space="preserve">Name of the label or publisher (string)</doc>
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="1139">Name of the label or publisher (string)</doc>
+      <source-position filename="gst/gsttaglist.h" line="1146"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_REFERENCE_LEVEL"
               value="replaygain-reference-level"
               c:type="GST_TAG_REFERENCE_LEVEL">
-      <doc xml:space="preserve">reference level of track and album gain values (double)</doc>
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="883">reference level of track and album gain values (double)</doc>
+      <source-position filename="gst/gsttaglist.h" line="888"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_SERIAL" value="serial" c:type="GST_TAG_SERIAL">
-      <doc xml:space="preserve">serial number of track (unsigned integer)</doc>
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="841">serial number of track (unsigned integer)</doc>
+      <source-position filename="gst/gsttaglist.h" line="846"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
+    <function-macro name="TAG_SETTER"
+                    c:identifier="GST_TAG_SETTER"
+                    introspectable="0">
+      <source-position filename="gst/gsttagsetter.h" line="30"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="TAG_SETTER_GET_INTERFACE"
+                    c:identifier="GST_TAG_SETTER_GET_INTERFACE"
+                    introspectable="0">
+      <source-position filename="gst/gsttagsetter.h" line="32"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
     <constant name="TAG_SHOW_EPISODE_NUMBER"
               value="show-episode-number"
               c:type="GST_TAG_SHOW_EPISODE_NUMBER">
-      <doc xml:space="preserve">Number of the episode within a season/show (unsigned integer)</doc>
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="1049">Number of the episode within a season/show (unsigned integer)</doc>
+      <source-position filename="gst/gsttaglist.h" line="1054"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_SHOW_NAME"
               value="show-name"
               c:type="GST_TAG_SHOW_NAME">
-      <doc xml:space="preserve">Name of the show, used for displaying (string)</doc>
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="1037">Name of the show, used for displaying (string)</doc>
+      <source-position filename="gst/gsttaglist.h" line="1042"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_SHOW_SEASON_NUMBER"
               value="show-season-number"
               c:type="GST_TAG_SHOW_SEASON_NUMBER">
-      <doc xml:space="preserve">Number of the season of a show/series (unsigned integer)</doc>
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="1055">Number of the season of a show/series (unsigned integer)</doc>
+      <source-position filename="gst/gsttaglist.h" line="1060"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_SHOW_SORTNAME"
               value="show-sortname"
               c:type="GST_TAG_SHOW_SORTNAME">
-      <doc xml:space="preserve">Name of the show, used for sorting (string)</doc>
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="1043">Name of the show, used for sorting (string)</doc>
+      <source-position filename="gst/gsttaglist.h" line="1048"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_SUBTITLE_CODEC"
               value="subtitle-codec"
               c:type="GST_TAG_SUBTITLE_CODEC">
-      <doc xml:space="preserve">codec/format the subtitle data is stored in (string)</doc>
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="804">codec/format the subtitle data is stored in (string)</doc>
+      <source-position filename="gst/gsttaglist.h" line="809"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_TITLE" value="title" c:type="GST_TAG_TITLE">
-      <doc xml:space="preserve">commonly used title (string)
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="559">commonly used title (string)
 
 The title as it should be displayed, e.g. 'The Doll House'</doc>
+      <source-position filename="gst/gsttaglist.h" line="566"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_TITLE_SORTNAME"
               value="title-sortname"
               c:type="GST_TAG_TITLE_SORTNAME">
-      <doc xml:space="preserve">commonly used title, as used for sorting (string)
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="567">commonly used title, as used for sorting (string)
 
 The title as it should be sorted, e.g. 'Doll House, The'</doc>
+      <source-position filename="gst/gsttaglist.h" line="574"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_TRACK_COUNT"
               value="track-count"
               c:type="GST_TAG_TRACK_COUNT">
-      <doc xml:space="preserve">count of tracks inside collection this track belongs to (unsigned integer)</doc>
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="678">count of tracks inside collection this track belongs to (unsigned integer)</doc>
+      <source-position filename="gst/gsttaglist.h" line="683"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_TRACK_GAIN"
               value="replaygain-track-gain"
               c:type="GST_TAG_TRACK_GAIN">
-      <doc xml:space="preserve">track gain in db (double)</doc>
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="859">track gain in db (double)</doc>
+      <source-position filename="gst/gsttaglist.h" line="864"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_TRACK_NUMBER"
               value="track-number"
               c:type="GST_TAG_TRACK_NUMBER">
-      <doc xml:space="preserve">track number inside a collection (unsigned integer)</doc>
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="672">track number inside a collection (unsigned integer)</doc>
+      <source-position filename="gst/gsttaglist.h" line="677"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_TRACK_PEAK"
               value="replaygain-track-peak"
               c:type="GST_TAG_TRACK_PEAK">
-      <doc xml:space="preserve">peak of the track (double)</doc>
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="865">peak of the track (double)</doc>
+      <source-position filename="gst/gsttaglist.h" line="870"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_USER_RATING"
               value="user-rating"
               c:type="GST_TAG_USER_RATING">
-      <doc xml:space="preserve">Rating attributed by a person (likely the application user).
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="1080">Rating attributed by a person (likely the application user).
 The higher the value, the more the user likes this media
 (unsigned int from 0 to 100)</doc>
+      <source-position filename="gst/gsttaglist.h" line="1087"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_VERSION" value="version" c:type="GST_TAG_VERSION">
-      <doc xml:space="preserve">version of this data (string)</doc>
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="715">version of this data (string)</doc>
+      <source-position filename="gst/gsttaglist.h" line="720"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_VIDEO_CODEC"
               value="video-codec"
               c:type="GST_TAG_VIDEO_CODEC">
-      <doc xml:space="preserve">codec the video data is stored in (string)</doc>
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="792">codec the video data is stored in (string)</doc>
+      <source-position filename="gst/gsttaglist.h" line="797"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
+    <function-macro name="TASK" c:identifier="GST_TASK" introspectable="0">
+      <source-position filename="gst/gsttask.h" line="42"/>
+      <parameters>
+        <parameter name="task">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="TASK_BROADCAST"
+                    c:identifier="GST_TASK_BROADCAST"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gsttask.h"
+           line="96">Send a broadcast signal to all waiting task conds</doc>
+      <source-position filename="gst/gsttask.h" line="102"/>
+      <parameters>
+        <parameter name="task">
+          <doc xml:space="preserve"
+               filename="gst/gsttask.h"
+               line="98">Task to broadcast</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="TASK_CAST"
+                    c:identifier="GST_TASK_CAST"
+                    introspectable="0">
+      <source-position filename="gst/gsttask.h" line="47"/>
+      <parameters>
+        <parameter name="task">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="TASK_CLASS"
+                    c:identifier="GST_TASK_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gsttask.h" line="44"/>
+      <parameters>
+        <parameter name="tclass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="TASK_GET_CLASS"
+                    c:identifier="GST_TASK_GET_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gsttask.h" line="46"/>
+      <parameters>
+        <parameter name="task">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="TASK_GET_COND"
+                    c:identifier="GST_TASK_GET_COND"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gsttask.h"
+           line="75">Get access to the cond of the task.</doc>
+      <source-position filename="gst/gsttask.h" line="81"/>
+      <parameters>
+        <parameter name="task">
+          <doc xml:space="preserve"
+               filename="gst/gsttask.h"
+               line="77">Task to get the cond of</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="TASK_GET_LOCK"
+                    c:identifier="GST_TASK_GET_LOCK"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gsttask.h"
+           line="104">Get access to the task lock.</doc>
+      <source-position filename="gst/gsttask.h" line="110"/>
+      <parameters>
+        <parameter name="task">
+          <doc xml:space="preserve"
+               filename="gst/gsttask.h"
+               line="106">Task to get the lock of</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="TASK_POOL"
+                    c:identifier="GST_TASK_POOL"
+                    introspectable="0">
+      <source-position filename="gst/gsttaskpool.h" line="31"/>
+      <parameters>
+        <parameter name="pool">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="TASK_POOL_CAST"
+                    c:identifier="GST_TASK_POOL_CAST"
+                    introspectable="0">
+      <source-position filename="gst/gsttaskpool.h" line="36"/>
+      <parameters>
+        <parameter name="pool">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="TASK_POOL_CLASS"
+                    c:identifier="GST_TASK_POOL_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gsttaskpool.h" line="33"/>
+      <parameters>
+        <parameter name="pclass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="TASK_POOL_GET_CLASS"
+                    c:identifier="GST_TASK_POOL_GET_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gsttaskpool.h" line="35"/>
+      <parameters>
+        <parameter name="pool">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="TASK_SIGNAL"
+                    c:identifier="GST_TASK_SIGNAL"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gsttask.h"
+           line="89">Signal the task cond</doc>
+      <source-position filename="gst/gsttask.h" line="95"/>
+      <parameters>
+        <parameter name="task">
+          <doc xml:space="preserve"
+               filename="gst/gsttask.h"
+               line="91">Task to signal</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="TASK_STATE"
+                    c:identifier="GST_TASK_STATE"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gsttask.h"
+           line="67">Get access to the state of the task.</doc>
+      <source-position filename="gst/gsttask.h" line="73"/>
+      <parameters>
+        <parameter name="task">
+          <doc xml:space="preserve"
+               filename="gst/gsttask.h"
+               line="69">Task to get the state of</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="TASK_WAIT"
+                    c:identifier="GST_TASK_WAIT"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gsttask.h"
+           line="82">Wait for the task cond to be signalled</doc>
+      <source-position filename="gst/gsttask.h" line="88"/>
+      <parameters>
+        <parameter name="task">
+          <doc xml:space="preserve"
+               filename="gst/gsttask.h"
+               line="84">Task to wait for</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="TIMESPEC_TO_TIME"
+                    c:identifier="GST_TIMESPEC_TO_TIME"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstclock.h"
+           line="192">Convert a struct timespec (see man pselect) to a #GstClockTime.</doc>
+      <source-position filename="gst/gstclock.h" line="198"/>
+      <parameters>
+        <parameter name="ts">
+          <doc xml:space="preserve"
+               filename="gst/gstclock.h"
+               line="194">the timespec to convert</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="TIMEVAL_TO_TIME"
+                    c:identifier="GST_TIMEVAL_TO_TIME"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstclock.h"
+           line="163">Convert a GTimeVal to a #GstClockTime.</doc>
+      <source-position filename="gst/gstclock.h" line="169"/>
+      <parameters>
+        <parameter name="tv">
+          <doc xml:space="preserve"
+               filename="gst/gstclock.h"
+               line="165">the timeval to convert</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="TIME_ARGS"
+                    c:identifier="GST_TIME_ARGS"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstclock.h"
+           line="228">Format @t for the #GST_TIME_FORMAT format string. Note: @t will be
+evaluated more than once.</doc>
+      <source-position filename="gst/gstclock.h" line="235"/>
+      <parameters>
+        <parameter name="t">
+          <doc xml:space="preserve"
+               filename="gst/gstclock.h"
+               line="230">a #GstClockTime</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="TIME_AS_MSECONDS"
+                    c:identifier="GST_TIME_AS_MSECONDS"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstclock.h"
+           line="131">Convert a #GstClockTime to milliseconds (1/1000 of a second).</doc>
+      <source-position filename="gst/gstclock.h" line="137"/>
+      <parameters>
+        <parameter name="time">
+          <doc xml:space="preserve"
+               filename="gst/gstclock.h"
+               line="133">the time</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="TIME_AS_NSECONDS"
+                    c:identifier="GST_TIME_AS_NSECONDS"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstclock.h"
+           line="145">Convert a #GstClockTime to nanoseconds (1/1000000000 of a second).</doc>
+      <source-position filename="gst/gstclock.h" line="151"/>
+      <parameters>
+        <parameter name="time">
+          <doc xml:space="preserve"
+               filename="gst/gstclock.h"
+               line="147">the time</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="TIME_AS_SECONDS"
+                    c:identifier="GST_TIME_AS_SECONDS"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstclock.h"
+           line="124">Convert a #GstClockTime to seconds.</doc>
+      <source-position filename="gst/gstclock.h" line="130"/>
+      <parameters>
+        <parameter name="time">
+          <doc xml:space="preserve"
+               filename="gst/gstclock.h"
+               line="126">the time</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="TIME_AS_USECONDS"
+                    c:identifier="GST_TIME_AS_USECONDS"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstclock.h"
+           line="138">Convert a #GstClockTime to microseconds (1/1000000 of a second).</doc>
+      <source-position filename="gst/gstclock.h" line="144"/>
+      <parameters>
+        <parameter name="time">
+          <doc xml:space="preserve"
+               filename="gst/gstclock.h"
+               line="140">the time</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
     <constant name="TIME_FORMAT"
               value="u:%02u:%02u.%09u"
               c:type="GST_TIME_FORMAT"
               introspectable="0">
-      <doc xml:space="preserve">A string that can be used in printf-like format strings to display a
+      <doc xml:space="preserve"
+           filename="gst/gstclock.h"
+           line="215">A string that can be used in printf-like format strings to display a
 #GstClockTime value in h:m:s format.  Use GST_TIME_ARGS() to construct
 the matching arguments.
 
@@ -40100,65 +61989,313 @@ Example:
 |[&lt;!-- language="C" --&gt;
 printf("%" GST_TIME_FORMAT "\n", GST_TIME_ARGS(ts));
 ]|</doc>
+      <source-position filename="gst/gstclock.h" line="227"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
+    <function-macro name="TIME_TO_TIMESPEC"
+                    c:identifier="GST_TIME_TO_TIMESPEC"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstclock.h"
+           line="199">Convert a #GstClockTime to a struct timespec (see man pselect)</doc>
+      <source-position filename="gst/gstclock.h" line="206"/>
+      <parameters>
+        <parameter name="t">
+          <doc xml:space="preserve"
+               filename="gst/gstclock.h"
+               line="201">The #GstClockTime to convert</doc>
+        </parameter>
+        <parameter name="ts">
+          <doc xml:space="preserve"
+               filename="gst/gstclock.h"
+               line="202">The target timespec</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="TIME_TO_TIMEVAL"
+                    c:identifier="GST_TIME_TO_TIMEVAL"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstclock.h"
+           line="171">Convert a #GstClockTime to a GTimeVal
+
+&gt; on 32-bit systems, a timeval has a range of only 2^32 - 1 seconds,
+&gt; which is about 68 years.  Expect trouble if you want to schedule stuff
+&gt; in your pipeline for 2038.</doc>
+      <source-position filename="gst/gstclock.h" line="182"/>
+      <parameters>
+        <parameter name="t">
+          <doc xml:space="preserve"
+               filename="gst/gstclock.h"
+               line="173">The #GstClockTime to convert</doc>
+        </parameter>
+        <parameter name="tv">
+          <doc xml:space="preserve"
+               filename="gst/gstclock.h"
+               line="174">The target timeval</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="TOC_ENTRY_TYPE_IS_ALTERNATIVE"
+                    c:identifier="GST_TOC_ENTRY_TYPE_IS_ALTERNATIVE"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gsttoc.h"
+           line="85">Checks if @entry_type indicates that its #GstTocEntry is an alternative.</doc>
+      <source-position filename="gst/gsttoc.h" line="91"/>
+      <parameters>
+        <parameter name="entry_type">
+          <doc xml:space="preserve"
+               filename="gst/gsttoc.h"
+               line="87">The #GstTocEntryType from a #GstTocEntry</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="TOC_ENTRY_TYPE_IS_SEQUENCE"
+                    c:identifier="GST_TOC_ENTRY_TYPE_IS_SEQUENCE"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gsttoc.h"
+           line="93">Checks if @entry_type indicates that its #GstTocEntry is a sequence.</doc>
+      <source-position filename="gst/gsttoc.h" line="99"/>
+      <parameters>
+        <parameter name="entry_type">
+          <doc xml:space="preserve"
+               filename="gst/gsttoc.h"
+               line="95">The #GstTocEntryType from a #GstTocEntry</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
     <constant name="TOC_REPEAT_COUNT_INFINITE"
               value="-1"
               c:type="GST_TOC_REPEAT_COUNT_INFINITE"
               version="1.4">
-      <doc xml:space="preserve">Special value for the repeat_count set in gst_toc_entry_set_loop() or
+      <doc xml:space="preserve"
+           filename="gst/gsttoc.h"
+           line="120">Special value for the repeat_count set in gst_toc_entry_set_loop() or
 returned by gst_toc_entry_set_loop() to indicate infinite looping.</doc>
+      <source-position filename="gst/gsttoc.h" line="128"/>
       <type name="gint" c:type="gint"/>
     </constant>
+    <function-macro name="TOC_SETTER"
+                    c:identifier="GST_TOC_SETTER"
+                    introspectable="0">
+      <source-position filename="gst/gsttocsetter.h" line="30"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="TOC_SETTER_GET_IFACE"
+                    c:identifier="GST_TOC_SETTER_GET_IFACE"
+                    introspectable="0">
+      <source-position filename="gst/gsttocsetter.h" line="32"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="TRACER" c:identifier="GST_TRACER" introspectable="0">
+      <source-position filename="gst/gsttracer.h" line="37"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="TRACER_CAST"
+                    c:identifier="GST_TRACER_CAST"
+                    introspectable="0">
+      <source-position filename="gst/gsttracer.h" line="42"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="TRACER_CLASS"
+                    c:identifier="GST_TRACER_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gsttracer.h" line="38"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="TRACER_FACTORY"
+                    c:identifier="GST_TRACER_FACTORY"
+                    introspectable="0">
+      <source-position filename="gst/gsttracerfactory.h" line="32"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="TRACER_FACTORY_CAST"
+                    c:identifier="GST_TRACER_FACTORY_CAST"
+                    introspectable="0">
+      <source-position filename="gst/gsttracerfactory.h" line="37"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="TRACER_FACTORY_CLASS"
+                    c:identifier="GST_TRACER_FACTORY_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gsttracerfactory.h" line="34"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="TRACER_FACTORY_GET_CLASS"
+                    c:identifier="GST_TRACER_FACTORY_GET_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gsttracerfactory.h" line="36"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="TRACER_GET_CLASS"
+                    c:identifier="GST_TRACER_GET_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gsttracer.h" line="41"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="TRACER_RECORD"
+                    c:identifier="GST_TRACER_RECORD"
+                    introspectable="0">
+      <source-position filename="gst/gsttracerrecord.h" line="38"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="TRACER_RECORD_CAST"
+                    c:identifier="GST_TRACER_RECORD_CAST"
+                    introspectable="0">
+      <source-position filename="gst/gsttracerrecord.h" line="43"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="TRACER_RECORD_CLASS"
+                    c:identifier="GST_TRACER_RECORD_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gsttracerrecord.h" line="39"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="TRACER_RECORD_GET_CLASS"
+                    c:identifier="GST_TRACER_RECORD_GET_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gsttracerrecord.h" line="42"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="TYPE_FIND_FACTORY"
+                    c:identifier="GST_TYPE_FIND_FACTORY"
+                    introspectable="0">
+      <source-position filename="gst/gsttypefindfactory.h" line="33"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="TYPE_FIND_FACTORY_CLASS"
+                    c:identifier="GST_TYPE_FIND_FACTORY_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gsttypefindfactory.h" line="35"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="TYPE_FIND_FACTORY_GET_CLASS"
+                    c:identifier="GST_TYPE_FIND_FACTORY_GET_CLASS"
+                    introspectable="0">
+      <source-position filename="gst/gsttypefindfactory.h" line="37"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
     <enumeration name="TagFlag"
                  glib:type-name="GstTagFlag"
                  glib:get-type="gst_tag_flag_get_type"
                  c:type="GstTagFlag">
-      <doc xml:space="preserve">Extra tag flags used when registering tags.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="76">Extra tag flags used when registering tags.</doc>
       <member name="undefined"
               value="0"
               c:identifier="GST_TAG_FLAG_UNDEFINED"
               glib:nick="undefined">
-        <doc xml:space="preserve">undefined flag</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttaglist.h"
+             line="78">undefined flag</doc>
       </member>
       <member name="meta"
               value="1"
               c:identifier="GST_TAG_FLAG_META"
               glib:nick="meta">
-        <doc xml:space="preserve">tag is meta data</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttaglist.h"
+             line="79">tag is meta data</doc>
       </member>
       <member name="encoded"
               value="2"
               c:identifier="GST_TAG_FLAG_ENCODED"
               glib:nick="encoded">
-        <doc xml:space="preserve">tag is encoded</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttaglist.h"
+             line="80">tag is encoded</doc>
       </member>
       <member name="decoded"
               value="3"
               c:identifier="GST_TAG_FLAG_DECODED"
               glib:nick="decoded">
-        <doc xml:space="preserve">tag is decoded</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttaglist.h"
+             line="81">tag is decoded</doc>
       </member>
       <member name="count"
               value="4"
               c:identifier="GST_TAG_FLAG_COUNT"
               glib:nick="count">
-        <doc xml:space="preserve">number of tag flags</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttaglist.h"
+             line="82">number of tag flags</doc>
       </member>
     </enumeration>
     <callback name="TagForeachFunc" c:type="GstTagForeachFunc">
-      <doc xml:space="preserve">A function that will be called in gst_tag_list_foreach(). The function may
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="114">A function that will be called in gst_tag_list_foreach(). The function may
 not modify the tag list.</doc>
+      <source-position filename="gst/gsttaglist.h" line="123"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="list" transfer-ownership="none">
-          <doc xml:space="preserve">the #GstTagList</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsttaglist.h"
+               line="116">the #GstTagList</doc>
           <type name="TagList" c:type="const GstTagList*"/>
         </parameter>
         <parameter name="tag" transfer-ownership="none">
-          <doc xml:space="preserve">a name of a tag in @list</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsttaglist.h"
+               line="117">a name of a tag in @list</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
         <parameter name="user_data"
@@ -40166,7 +62303,9 @@ not modify the tag list.</doc>
                    nullable="1"
                    allow-none="1"
                    closure="2">
-          <doc xml:space="preserve">user data</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsttaglist.h"
+               line="118">user data</doc>
           <type name="gpointer" c:type="gpointer"/>
         </parameter>
       </parameters>
@@ -40176,18 +62315,25 @@ not modify the tag list.</doc>
             glib:type-name="GstTagList"
             glib:get-type="gst_tag_list_get_type"
             c:symbol-prefix="tag_list">
-      <doc xml:space="preserve">List of tags and values used to describe media metadata.
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.c"
+           line="22">List of tags and values used to describe media metadata.
 
 Strings in structures must be ASCII or UTF-8 encoded. Other encodings are
 not allowed. Strings must not be empty or %NULL.</doc>
+      <source-position filename="gst/gsttaglist.h" line="106"/>
       <field name="mini_object" writable="1">
-        <doc xml:space="preserve">the parent type</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttaglist.h"
+             line="99">the parent type</doc>
         <type name="MiniObject" c:type="GstMiniObject"/>
       </field>
       <constructor name="new"
                    c:identifier="gst_tag_list_new"
                    introspectable="0">
-        <doc xml:space="preserve">Creates a new taglist and appends the values for the given tags. It expects
+        <doc xml:space="preserve"
+             filename="gst/gsttaglist.c"
+             line="761">Creates a new taglist and appends the values for the given tags. It expects
 tag-value pairs like gst_tag_list_add(), and a %NULL terminator after the
 last pair. The type of the values is implicit and is documented in the API
 reference, but can also be queried at runtime with gst_tag_get_type(). It
@@ -40200,42 +62346,61 @@ taglist to signal if the contained tags are global or stream tags. By
 default stream scope is assumes. See gst_tag_list_set_scope().
 
 Free-function: gst_tag_list_unref</doc>
+        <source-position filename="gst/gsttaglist.h" line="204"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new #GstTagList. Free with gst_tag_list_unref()
+          <doc xml:space="preserve"
+               filename="gst/gsttaglist.c"
+               line="780">a new #GstTagList. Free with gst_tag_list_unref()
     when no longer needed.</doc>
           <type name="TagList" c:type="GstTagList*"/>
         </return-value>
         <parameters>
           <parameter name="tag" transfer-ownership="none">
-            <doc xml:space="preserve">tag</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="763">tag</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="..." transfer-ownership="none">
-            <doc xml:space="preserve">%NULL-terminated list of values to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="764">%NULL-terminated list of values to set</doc>
             <varargs/>
           </parameter>
         </parameters>
       </constructor>
       <constructor name="new_empty" c:identifier="gst_tag_list_new_empty">
-        <doc xml:space="preserve">Creates a new empty GstTagList.
+        <doc xml:space="preserve"
+             filename="gst/gsttaglist.c"
+             line="741">Creates a new empty GstTagList.
 
 Free-function: gst_tag_list_unref</doc>
+        <source-position filename="gst/gsttaglist.h" line="201"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">An empty tag list</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsttaglist.c"
+               line="748">An empty tag list</doc>
           <type name="TagList" c:type="GstTagList*"/>
         </return-value>
       </constructor>
       <constructor name="new_from_string"
                    c:identifier="gst_tag_list_new_from_string">
-        <doc xml:space="preserve">Deserializes a tag list.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttaglist.c"
+             line="877">Deserializes a tag list.</doc>
+        <source-position filename="gst/gsttaglist.h" line="219"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">a new #GstTagList, or %NULL in case of an
+          <doc xml:space="preserve"
+               filename="gst/gsttaglist.c"
+               line="883">a new #GstTagList, or %NULL in case of an
 error.</doc>
           <type name="TagList" c:type="GstTagList*"/>
         </return-value>
         <parameters>
           <parameter name="str" transfer-ownership="none">
-            <doc xml:space="preserve">a string created with gst_tag_list_to_string()</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="879">a string created with gst_tag_list_to_string()</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
@@ -40243,42 +62408,60 @@ error.</doc>
       <constructor name="new_valist"
                    c:identifier="gst_tag_list_new_valist"
                    introspectable="0">
-        <doc xml:space="preserve">Just like gst_tag_list_new(), only that it takes a va_list argument.
+        <doc xml:space="preserve"
+             filename="gst/gsttaglist.c"
+             line="799">Just like gst_tag_list_new(), only that it takes a va_list argument.
 Useful mostly for language bindings.
 
 Free-function: gst_tag_list_unref</doc>
+        <source-position filename="gst/gsttaglist.h" line="207"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new #GstTagList. Free with gst_tag_list_unref()
+          <doc xml:space="preserve"
+               filename="gst/gsttaglist.c"
+               line="808">a new #GstTagList. Free with gst_tag_list_unref()
     when no longer needed.</doc>
           <type name="TagList" c:type="GstTagList*"/>
         </return-value>
         <parameters>
           <parameter name="var_args" transfer-ownership="none">
-            <doc xml:space="preserve">tag / value pairs to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="801">tag / value pairs to set</doc>
             <type name="va_list" c:type="va_list"/>
           </parameter>
         </parameters>
       </constructor>
       <method name="add" c:identifier="gst_tag_list_add" introspectable="0">
-        <doc xml:space="preserve">Sets the values for the given tags using the specified mode.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttaglist.c"
+             line="1214">Sets the values for the given tags using the specified mode.</doc>
+        <source-position filename="gst/gsttaglist.h" line="245"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="list" transfer-ownership="none">
-            <doc xml:space="preserve">list to set tags in</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1216">list to set tags in</doc>
             <type name="TagList" c:type="GstTagList*"/>
           </instance-parameter>
           <parameter name="mode" transfer-ownership="none">
-            <doc xml:space="preserve">the mode to use</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1217">the mode to use</doc>
             <type name="TagMergeMode" c:type="GstTagMergeMode"/>
           </parameter>
           <parameter name="tag" transfer-ownership="none">
-            <doc xml:space="preserve">tag</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1218">tag</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="..." transfer-ownership="none">
-            <doc xml:space="preserve">%NULL-terminated list of values to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1219">%NULL-terminated list of values to set</doc>
             <varargs/>
           </parameter>
         </parameters>
@@ -40286,25 +62469,36 @@ Free-function: gst_tag_list_unref</doc>
       <method name="add_valist"
               c:identifier="gst_tag_list_add_valist"
               introspectable="0">
-        <doc xml:space="preserve">Sets the values for the given tags using the specified mode.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttaglist.c"
+             line="1264">Sets the values for the given tags using the specified mode.</doc>
+        <source-position filename="gst/gsttaglist.h" line="255"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="list" transfer-ownership="none">
-            <doc xml:space="preserve">list to set tags in</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1266">list to set tags in</doc>
             <type name="TagList" c:type="GstTagList*"/>
           </instance-parameter>
           <parameter name="mode" transfer-ownership="none">
-            <doc xml:space="preserve">the mode to use</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1267">the mode to use</doc>
             <type name="TagMergeMode" c:type="GstTagMergeMode"/>
           </parameter>
           <parameter name="tag" transfer-ownership="none">
-            <doc xml:space="preserve">tag</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1268">tag</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="var_args" transfer-ownership="none">
-            <doc xml:space="preserve">tag / value pairs to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1269">tag / value pairs to set</doc>
             <type name="va_list" c:type="va_list"/>
           </parameter>
         </parameters>
@@ -40312,49 +62506,71 @@ Free-function: gst_tag_list_unref</doc>
       <method name="add_valist_values"
               c:identifier="gst_tag_list_add_valist_values"
               introspectable="0">
-        <doc xml:space="preserve">Sets the GValues for the given tags using the specified mode.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttaglist.c"
+             line="1318">Sets the GValues for the given tags using the specified mode.</doc>
+        <source-position filename="gst/gsttaglist.h" line="260"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="list" transfer-ownership="none">
-            <doc xml:space="preserve">list to set tags in</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1320">list to set tags in</doc>
             <type name="TagList" c:type="GstTagList*"/>
           </instance-parameter>
           <parameter name="mode" transfer-ownership="none">
-            <doc xml:space="preserve">the mode to use</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1321">the mode to use</doc>
             <type name="TagMergeMode" c:type="GstTagMergeMode"/>
           </parameter>
           <parameter name="tag" transfer-ownership="none">
-            <doc xml:space="preserve">tag</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1322">tag</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="var_args" transfer-ownership="none">
-            <doc xml:space="preserve">tag / GValue pairs to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1323">tag / GValue pairs to set</doc>
             <type name="va_list" c:type="va_list"/>
           </parameter>
         </parameters>
       </method>
       <method name="add_value" c:identifier="gst_tag_list_add_value">
-        <doc xml:space="preserve">Sets the GValue for a given tag using the specified mode.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttaglist.c"
+             line="1354">Sets the GValue for a given tag using the specified mode.</doc>
+        <source-position filename="gst/gsttaglist.h" line="265"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="list" transfer-ownership="none">
-            <doc xml:space="preserve">list to set tags in</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1356">list to set tags in</doc>
             <type name="TagList" c:type="GstTagList*"/>
           </instance-parameter>
           <parameter name="mode" transfer-ownership="none">
-            <doc xml:space="preserve">the mode to use</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1357">the mode to use</doc>
             <type name="TagMergeMode" c:type="GstTagMergeMode"/>
           </parameter>
           <parameter name="tag" transfer-ownership="none">
-            <doc xml:space="preserve">tag</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1358">tag</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="value" transfer-ownership="none">
-            <doc xml:space="preserve">GValue for this tag</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1359">GValue for this tag</doc>
             <type name="GObject.Value" c:type="const GValue*"/>
           </parameter>
         </parameters>
@@ -40362,201 +62578,308 @@ Free-function: gst_tag_list_unref</doc>
       <method name="add_values"
               c:identifier="gst_tag_list_add_values"
               introspectable="0">
-        <doc xml:space="preserve">Sets the GValues for the given tags using the specified mode.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttaglist.c"
+             line="1239">Sets the GValues for the given tags using the specified mode.</doc>
+        <source-position filename="gst/gsttaglist.h" line="250"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="list" transfer-ownership="none">
-            <doc xml:space="preserve">list to set tags in</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1241">list to set tags in</doc>
             <type name="TagList" c:type="GstTagList*"/>
           </instance-parameter>
           <parameter name="mode" transfer-ownership="none">
-            <doc xml:space="preserve">the mode to use</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1242">the mode to use</doc>
             <type name="TagMergeMode" c:type="GstTagMergeMode"/>
           </parameter>
           <parameter name="tag" transfer-ownership="none">
-            <doc xml:space="preserve">tag</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1243">tag</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="..." transfer-ownership="none">
-            <doc xml:space="preserve">GValues to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1244">GValues to set</doc>
             <varargs/>
           </parameter>
         </parameters>
       </method>
+      <method name="copy" c:identifier="gst_tag_list_copy" introspectable="0">
+        <doc xml:space="preserve"
+             filename="gst/gsttaglist.h"
+             line="456">Creates a new #GstTagList as a copy of the old @taglist. The new taglist
+will have a refcount of 1, owned by the caller, and will be writable as
+a result.
+
+Note that this function is the semantic equivalent of a gst_tag_list_ref()
+followed by a gst_tag_list_make_writable(). If you only want to hold on to a
+reference to the data, you should use gst_tag_list_ref().
+
+When you are finished with the taglist, call gst_tag_list_unref() on it.</doc>
+        <source-position filename="gst/gsttaglist.h" line="472"/>
+        <return-value transfer-ownership="full">
+          <doc xml:space="preserve"
+               filename="gst/gsttaglist.h"
+               line="470">the new #GstTagList</doc>
+          <type name="TagList" c:type="GstTagList*"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="taglist" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.h"
+                 line="458">a #GstTagList.</doc>
+            <type name="TagList" c:type="const GstTagList*"/>
+          </instance-parameter>
+        </parameters>
+      </method>
       <method name="foreach" c:identifier="gst_tag_list_foreach">
-        <doc xml:space="preserve">Calls the given function for each tag inside the tag list. Note that if there
+        <doc xml:space="preserve"
+             filename="gst/gsttaglist.c"
+             line="1410">Calls the given function for each tag inside the tag list. Note that if there
 is no tag, the function won't be called at all.</doc>
+        <source-position filename="gst/gsttaglist.h" line="273"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="list" transfer-ownership="none">
-            <doc xml:space="preserve">list to iterate over</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1412">list to iterate over</doc>
             <type name="TagList" c:type="const GstTagList*"/>
           </instance-parameter>
           <parameter name="func"
                      transfer-ownership="none"
                      scope="call"
                      closure="1">
-            <doc xml:space="preserve">function to be called for each tag</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1413">function to be called for each tag</doc>
             <type name="TagForeachFunc" c:type="GstTagForeachFunc"/>
           </parameter>
           <parameter name="user_data"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">user specified data</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1414">user specified data</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_boolean" c:identifier="gst_tag_list_get_boolean">
-        <doc xml:space="preserve">Copies the contents for the given tag into the value, merging multiple values
+        <doc xml:space="preserve"
+             filename="gst/gsttaglist.c"
+             line="1564">Copies the contents for the given tag into the value, merging multiple values
 into one if multiple values are associated with the tag.</doc>
+        <source-position filename="gst/gsttaglist.h" line="289"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE, if a value was copied, %FALSE if the tag didn't exist in the
+          <doc xml:space="preserve"
+               filename="gst/gsttaglist.c"
+               line="1573">%TRUE, if a value was copied, %FALSE if the tag didn't exist in the
              given list.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="list" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstTagList to get the tag from</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1566">a #GstTagList to get the tag from</doc>
             <type name="TagList" c:type="const GstTagList*"/>
           </instance-parameter>
           <parameter name="tag" transfer-ownership="none">
-            <doc xml:space="preserve">tag to read out</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1567">tag to read out</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="value"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">location for the result</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1568">location for the result</doc>
             <type name="gboolean" c:type="gboolean*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_boolean_index"
               c:identifier="gst_tag_list_get_boolean_index">
-        <doc xml:space="preserve">Gets the value that is at the given index for the given tag in the given
+        <doc xml:space="preserve"
+             filename="gst/gsttaglist.c"
+             line="1576">Gets the value that is at the given index for the given tag in the given
 list.</doc>
+        <source-position filename="gst/gsttaglist.h" line="293"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE, if a value was copied, %FALSE if the tag didn't exist in the
+          <doc xml:space="preserve"
+               filename="gst/gsttaglist.c"
+               line="1586">%TRUE, if a value was copied, %FALSE if the tag didn't exist in the
              given list.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="list" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstTagList to get the tag from</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1578">a #GstTagList to get the tag from</doc>
             <type name="TagList" c:type="const GstTagList*"/>
           </instance-parameter>
           <parameter name="tag" transfer-ownership="none">
-            <doc xml:space="preserve">tag to read out</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1579">tag to read out</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="index" transfer-ownership="none">
-            <doc xml:space="preserve">number of entry to read out</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1580">number of entry to read out</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="value"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">location for the result</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1581">location for the result</doc>
             <type name="gboolean" c:type="gboolean*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_date" c:identifier="gst_tag_list_get_date">
-        <doc xml:space="preserve">Copies the first date for the given tag in the taglist into the variable
+        <doc xml:space="preserve"
+             filename="gst/gsttaglist.c"
+             line="1865">Copies the first date for the given tag in the taglist into the variable
 pointed to by @value. Free the date with g_date_free() when it is no longer
 needed.
 
 Free-function: g_date_free</doc>
+        <source-position filename="gst/gsttaglist.h" line="375"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE, if a date was copied, %FALSE if the tag didn't exist in the
+          <doc xml:space="preserve"
+               filename="gst/gsttaglist.c"
+               line="1878">%TRUE, if a date was copied, %FALSE if the tag didn't exist in the
              given list or if it was %NULL.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="list" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstTagList to get the tag from</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1867">a #GstTagList to get the tag from</doc>
             <type name="TagList" c:type="const GstTagList*"/>
           </instance-parameter>
           <parameter name="tag" transfer-ownership="none">
-            <doc xml:space="preserve">tag to read out</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1868">tag to read out</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="value"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">address of a GDate pointer
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1869">address of a GDate pointer
     variable to store the result into</doc>
             <type name="GLib.Date" c:type="GDate**"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_date_index" c:identifier="gst_tag_list_get_date_index">
-        <doc xml:space="preserve">Gets the date that is at the given index for the given tag in the given
+        <doc xml:space="preserve"
+             filename="gst/gsttaglist.c"
+             line="1898">Gets the date that is at the given index for the given tag in the given
 list and copies it into the variable pointed to by @value. Free the date
 with g_date_free() when it is no longer needed.
 
 Free-function: g_date_free</doc>
+        <source-position filename="gst/gsttaglist.h" line="379"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE, if a value was copied, %FALSE if the tag didn't exist in the
+          <doc xml:space="preserve"
+               filename="gst/gsttaglist.c"
+               line="1911">%TRUE, if a value was copied, %FALSE if the tag didn't exist in the
              given list or if it was %NULL.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="list" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstTagList to get the tag from</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1900">a #GstTagList to get the tag from</doc>
             <type name="TagList" c:type="const GstTagList*"/>
           </instance-parameter>
           <parameter name="tag" transfer-ownership="none">
-            <doc xml:space="preserve">tag to read out</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1901">tag to read out</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="index" transfer-ownership="none">
-            <doc xml:space="preserve">number of entry to read out</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1902">number of entry to read out</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="value"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">location for the result</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1903">location for the result</doc>
             <type name="GLib.Date" c:type="GDate**"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_date_time" c:identifier="gst_tag_list_get_date_time">
-        <doc xml:space="preserve">Copies the first datetime for the given tag in the taglist into the variable
+        <doc xml:space="preserve"
+             filename="gst/gsttaglist.c"
+             line="1930">Copies the first datetime for the given tag in the taglist into the variable
 pointed to by @value. Unref the date with gst_date_time_unref() when
 it is no longer needed.
 
 Free-function: gst_date_time_unref</doc>
+        <source-position filename="gst/gsttaglist.h" line="384"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE, if a datetime was copied, %FALSE if the tag didn't exist in
+          <doc xml:space="preserve"
+               filename="gst/gsttaglist.c"
+               line="1943">%TRUE, if a datetime was copied, %FALSE if the tag didn't exist in
              the given list or if it was %NULL.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="list" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstTagList to get the tag from</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1932">a #GstTagList to get the tag from</doc>
             <type name="TagList" c:type="const GstTagList*"/>
           </instance-parameter>
           <parameter name="tag" transfer-ownership="none">
-            <doc xml:space="preserve">tag to read out</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1933">tag to read out</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="value"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">address of a #GstDateTime
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1934">address of a #GstDateTime
     pointer variable to store the result into</doc>
             <type name="DateTime" c:type="GstDateTime**"/>
           </parameter>
@@ -40564,280 +62887,398 @@ Free-function: gst_date_time_unref</doc>
       </method>
       <method name="get_date_time_index"
               c:identifier="gst_tag_list_get_date_time_index">
-        <doc xml:space="preserve">Gets the datetime that is at the given index for the given tag in the given
+        <doc xml:space="preserve"
+             filename="gst/gsttaglist.c"
+             line="1964">Gets the datetime that is at the given index for the given tag in the given
 list and copies it into the variable pointed to by @value. Unref the datetime
 with gst_date_time_unref() when it is no longer needed.
 
 Free-function: gst_date_time_unref</doc>
+        <source-position filename="gst/gsttaglist.h" line="388"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE, if a value was copied, %FALSE if the tag didn't exist in the
+          <doc xml:space="preserve"
+               filename="gst/gsttaglist.c"
+               line="1977">%TRUE, if a value was copied, %FALSE if the tag didn't exist in the
              given list or if it was %NULL.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="list" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstTagList to get the tag from</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1966">a #GstTagList to get the tag from</doc>
             <type name="TagList" c:type="const GstTagList*"/>
           </instance-parameter>
           <parameter name="tag" transfer-ownership="none">
-            <doc xml:space="preserve">tag to read out</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1967">tag to read out</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="index" transfer-ownership="none">
-            <doc xml:space="preserve">number of entry to read out</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1968">number of entry to read out</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="value"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">location for the result</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1969">location for the result</doc>
             <type name="DateTime" c:type="GstDateTime**"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_double" c:identifier="gst_tag_list_get_double">
-        <doc xml:space="preserve">Copies the contents for the given tag into the value, merging multiple values
+        <doc xml:space="preserve"
+             filename="gst/gsttaglist.c"
+             line="1720">Copies the contents for the given tag into the value, merging multiple values
 into one if multiple values are associated with the tag.</doc>
+        <source-position filename="gst/gsttaglist.h" line="343"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE, if a value was copied, %FALSE if the tag didn't exist in the
+          <doc xml:space="preserve"
+               filename="gst/gsttaglist.c"
+               line="1729">%TRUE, if a value was copied, %FALSE if the tag didn't exist in the
              given list.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="list" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstTagList to get the tag from</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1722">a #GstTagList to get the tag from</doc>
             <type name="TagList" c:type="const GstTagList*"/>
           </instance-parameter>
           <parameter name="tag" transfer-ownership="none">
-            <doc xml:space="preserve">tag to read out</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1723">tag to read out</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="value"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">location for the result</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1724">location for the result</doc>
             <type name="gdouble" c:type="gdouble*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_double_index"
               c:identifier="gst_tag_list_get_double_index">
-        <doc xml:space="preserve">Gets the value that is at the given index for the given tag in the given
+        <doc xml:space="preserve"
+             filename="gst/gsttaglist.c"
+             line="1732">Gets the value that is at the given index for the given tag in the given
 list.</doc>
+        <source-position filename="gst/gsttaglist.h" line="347"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE, if a value was copied, %FALSE if the tag didn't exist in the
+          <doc xml:space="preserve"
+               filename="gst/gsttaglist.c"
+               line="1742">%TRUE, if a value was copied, %FALSE if the tag didn't exist in the
              given list.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="list" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstTagList to get the tag from</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1734">a #GstTagList to get the tag from</doc>
             <type name="TagList" c:type="const GstTagList*"/>
           </instance-parameter>
           <parameter name="tag" transfer-ownership="none">
-            <doc xml:space="preserve">tag to read out</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1735">tag to read out</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="index" transfer-ownership="none">
-            <doc xml:space="preserve">number of entry to read out</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1736">number of entry to read out</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="value"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">location for the result</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1737">location for the result</doc>
             <type name="gdouble" c:type="gdouble*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_float" c:identifier="gst_tag_list_get_float">
-        <doc xml:space="preserve">Copies the contents for the given tag into the value, merging multiple values
+        <doc xml:space="preserve"
+             filename="gst/gsttaglist.c"
+             line="1694">Copies the contents for the given tag into the value, merging multiple values
 into one if multiple values are associated with the tag.</doc>
+        <source-position filename="gst/gsttaglist.h" line="334"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE, if a value was copied, %FALSE if the tag didn't exist in the
+          <doc xml:space="preserve"
+               filename="gst/gsttaglist.c"
+               line="1703">%TRUE, if a value was copied, %FALSE if the tag didn't exist in the
              given list.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="list" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstTagList to get the tag from</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1696">a #GstTagList to get the tag from</doc>
             <type name="TagList" c:type="const GstTagList*"/>
           </instance-parameter>
           <parameter name="tag" transfer-ownership="none">
-            <doc xml:space="preserve">tag to read out</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1697">tag to read out</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="value"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">location for the result</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1698">location for the result</doc>
             <type name="gfloat" c:type="gfloat*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_float_index"
               c:identifier="gst_tag_list_get_float_index">
-        <doc xml:space="preserve">Gets the value that is at the given index for the given tag in the given
+        <doc xml:space="preserve"
+             filename="gst/gsttaglist.c"
+             line="1706">Gets the value that is at the given index for the given tag in the given
 list.</doc>
+        <source-position filename="gst/gsttaglist.h" line="338"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE, if a value was copied, %FALSE if the tag didn't exist in the
+          <doc xml:space="preserve"
+               filename="gst/gsttaglist.c"
+               line="1716">%TRUE, if a value was copied, %FALSE if the tag didn't exist in the
              given list.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="list" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstTagList to get the tag from</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1708">a #GstTagList to get the tag from</doc>
             <type name="TagList" c:type="const GstTagList*"/>
           </instance-parameter>
           <parameter name="tag" transfer-ownership="none">
-            <doc xml:space="preserve">tag to read out</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1709">tag to read out</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="index" transfer-ownership="none">
-            <doc xml:space="preserve">number of entry to read out</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1710">number of entry to read out</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="value"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">location for the result</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1711">location for the result</doc>
             <type name="gfloat" c:type="gfloat*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_int" c:identifier="gst_tag_list_get_int">
-        <doc xml:space="preserve">Copies the contents for the given tag into the value, merging multiple values
+        <doc xml:space="preserve"
+             filename="gst/gsttaglist.c"
+             line="1590">Copies the contents for the given tag into the value, merging multiple values
 into one if multiple values are associated with the tag.</doc>
+        <source-position filename="gst/gsttaglist.h" line="298"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE, if a value was copied, %FALSE if the tag didn't exist in the
+          <doc xml:space="preserve"
+               filename="gst/gsttaglist.c"
+               line="1599">%TRUE, if a value was copied, %FALSE if the tag didn't exist in the
              given list.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="list" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstTagList to get the tag from</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1592">a #GstTagList to get the tag from</doc>
             <type name="TagList" c:type="const GstTagList*"/>
           </instance-parameter>
           <parameter name="tag" transfer-ownership="none">
-            <doc xml:space="preserve">tag to read out</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1593">tag to read out</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="value"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">location for the result</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1594">location for the result</doc>
             <type name="gint" c:type="gint*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_int64" c:identifier="gst_tag_list_get_int64">
-        <doc xml:space="preserve">Copies the contents for the given tag into the value, merging multiple values
+        <doc xml:space="preserve"
+             filename="gst/gsttaglist.c"
+             line="1642">Copies the contents for the given tag into the value, merging multiple values
 into one if multiple values are associated with the tag.</doc>
+        <source-position filename="gst/gsttaglist.h" line="316"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE, if a value was copied, %FALSE if the tag didn't exist in the
+          <doc xml:space="preserve"
+               filename="gst/gsttaglist.c"
+               line="1651">%TRUE, if a value was copied, %FALSE if the tag didn't exist in the
              given list.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="list" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstTagList to get the tag from</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1644">a #GstTagList to get the tag from</doc>
             <type name="TagList" c:type="const GstTagList*"/>
           </instance-parameter>
           <parameter name="tag" transfer-ownership="none">
-            <doc xml:space="preserve">tag to read out</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1645">tag to read out</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="value"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">location for the result</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1646">location for the result</doc>
             <type name="gint64" c:type="gint64*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_int64_index"
               c:identifier="gst_tag_list_get_int64_index">
-        <doc xml:space="preserve">Gets the value that is at the given index for the given tag in the given
+        <doc xml:space="preserve"
+             filename="gst/gsttaglist.c"
+             line="1654">Gets the value that is at the given index for the given tag in the given
 list.</doc>
+        <source-position filename="gst/gsttaglist.h" line="320"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE, if a value was copied, %FALSE if the tag didn't exist in the
+          <doc xml:space="preserve"
+               filename="gst/gsttaglist.c"
+               line="1664">%TRUE, if a value was copied, %FALSE if the tag didn't exist in the
              given list.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="list" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstTagList to get the tag from</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1656">a #GstTagList to get the tag from</doc>
             <type name="TagList" c:type="const GstTagList*"/>
           </instance-parameter>
           <parameter name="tag" transfer-ownership="none">
-            <doc xml:space="preserve">tag to read out</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1657">tag to read out</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="index" transfer-ownership="none">
-            <doc xml:space="preserve">number of entry to read out</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1658">number of entry to read out</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="value"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">location for the result</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1659">location for the result</doc>
             <type name="gint64" c:type="gint64*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_int_index" c:identifier="gst_tag_list_get_int_index">
-        <doc xml:space="preserve">Gets the value that is at the given index for the given tag in the given
+        <doc xml:space="preserve"
+             filename="gst/gsttaglist.c"
+             line="1602">Gets the value that is at the given index for the given tag in the given
 list.</doc>
+        <source-position filename="gst/gsttaglist.h" line="302"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE, if a value was copied, %FALSE if the tag didn't exist in the
+          <doc xml:space="preserve"
+               filename="gst/gsttaglist.c"
+               line="1612">%TRUE, if a value was copied, %FALSE if the tag didn't exist in the
              given list.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="list" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstTagList to get the tag from</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1604">a #GstTagList to get the tag from</doc>
             <type name="TagList" c:type="const GstTagList*"/>
           </instance-parameter>
           <parameter name="tag" transfer-ownership="none">
-            <doc xml:space="preserve">tag to read out</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1605">tag to read out</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="index" transfer-ownership="none">
-            <doc xml:space="preserve">number of entry to read out</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1606">number of entry to read out</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="value"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">location for the result</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1607">location for the result</doc>
             <type name="gint" c:type="gint*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_pointer" c:identifier="gst_tag_list_get_pointer">
-        <doc xml:space="preserve">Copies the contents for the given tag into the value, merging multiple values
+        <doc xml:space="preserve"
+             filename="gst/gsttaglist.c"
+             line="1746">Copies the contents for the given tag into the value, merging multiple values
 into one if multiple values are associated with the tag.</doc>
+        <source-position filename="gst/gsttaglist.h" line="366"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE, if a value was copied, %FALSE if the tag didn't exist in the
+          <doc xml:space="preserve"
+               filename="gst/gsttaglist.c"
+               line="1755">%TRUE, if a value was copied, %FALSE if the tag didn't exist in the
              given list.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="list" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstTagList to get the tag from</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1748">a #GstTagList to get the tag from</doc>
             <type name="TagList" c:type="const GstTagList*"/>
           </instance-parameter>
           <parameter name="tag" transfer-ownership="none">
-            <doc xml:space="preserve">tag to read out</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1749">tag to read out</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="value"
@@ -40845,31 +63286,44 @@ into one if multiple values are associated with the tag.</doc>
                      caller-allocates="0"
                      transfer-ownership="none"
                      nullable="1">
-            <doc xml:space="preserve">location for the result</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1750">location for the result</doc>
             <type name="gpointer" c:type="gpointer*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_pointer_index"
               c:identifier="gst_tag_list_get_pointer_index">
-        <doc xml:space="preserve">Gets the value that is at the given index for the given tag in the given
+        <doc xml:space="preserve"
+             filename="gst/gsttaglist.c"
+             line="1758">Gets the value that is at the given index for the given tag in the given
 list.</doc>
+        <source-position filename="gst/gsttaglist.h" line="370"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE, if a value was copied, %FALSE if the tag didn't exist in the
+          <doc xml:space="preserve"
+               filename="gst/gsttaglist.c"
+               line="1768">%TRUE, if a value was copied, %FALSE if the tag didn't exist in the
              given list.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="list" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstTagList to get the tag from</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1760">a #GstTagList to get the tag from</doc>
             <type name="TagList" c:type="const GstTagList*"/>
           </instance-parameter>
           <parameter name="tag" transfer-ownership="none">
-            <doc xml:space="preserve">tag to read out</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1761">tag to read out</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="index" transfer-ownership="none">
-            <doc xml:space="preserve">number of entry to read out</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1762">number of entry to read out</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="value"
@@ -40877,38 +63331,51 @@ list.</doc>
                      caller-allocates="0"
                      transfer-ownership="none"
                      nullable="1">
-            <doc xml:space="preserve">location for the result</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1763">location for the result</doc>
             <type name="gpointer" c:type="gpointer*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_sample" c:identifier="gst_tag_list_get_sample">
-        <doc xml:space="preserve">Copies the first sample for the given tag in the taglist into the variable
+        <doc xml:space="preserve"
+             filename="gst/gsttaglist.c"
+             line="1996">Copies the first sample for the given tag in the taglist into the variable
 pointed to by @sample. Free the sample with gst_sample_unref() when it is
 no longer needed. You can retrieve the buffer from the sample using
 gst_sample_get_buffer() and the associated caps (if any) with
 gst_sample_get_caps().
 
 Free-function: gst_sample_unref</doc>
+        <source-position filename="gst/gsttaglist.h" line="393"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE, if a sample was returned, %FALSE if the tag didn't exist in
+          <doc xml:space="preserve"
+               filename="gst/gsttaglist.c"
+               line="2011">%TRUE, if a sample was returned, %FALSE if the tag didn't exist in
              the given list or if it was %NULL.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="list" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstTagList to get the tag from</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1998">a #GstTagList to get the tag from</doc>
             <type name="TagList" c:type="const GstTagList*"/>
           </instance-parameter>
           <parameter name="tag" transfer-ownership="none">
-            <doc xml:space="preserve">tag to read out</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1999">tag to read out</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="sample"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">address of a GstSample
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="2000">address of a GstSample
     pointer variable to store the result into</doc>
             <type name="Sample" c:type="GstSample**"/>
           </parameter>
@@ -40916,56 +63383,78 @@ Free-function: gst_sample_unref</doc>
       </method>
       <method name="get_sample_index"
               c:identifier="gst_tag_list_get_sample_index">
-        <doc xml:space="preserve">Gets the sample that is at the given index for the given tag in the given
+        <doc xml:space="preserve"
+             filename="gst/gsttaglist.c"
+             line="2031">Gets the sample that is at the given index for the given tag in the given
 list and copies it into the variable pointed to by @sample. Free the sample
 with gst_sample_unref() when it is no longer needed. You can retrieve the
 buffer from the sample using gst_sample_get_buffer() and the associated
 caps (if any) with gst_sample_get_caps().
 
 Free-function: gst_sample_unref</doc>
+        <source-position filename="gst/gsttaglist.h" line="397"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE, if a sample was copied, %FALSE if the tag didn't exist in the
+          <doc xml:space="preserve"
+               filename="gst/gsttaglist.c"
+               line="2047">%TRUE, if a sample was copied, %FALSE if the tag didn't exist in the
              given list or if it was %NULL.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="list" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstTagList to get the tag from</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="2033">a #GstTagList to get the tag from</doc>
             <type name="TagList" c:type="const GstTagList*"/>
           </instance-parameter>
           <parameter name="tag" transfer-ownership="none">
-            <doc xml:space="preserve">tag to read out</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="2034">tag to read out</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="index" transfer-ownership="none">
-            <doc xml:space="preserve">number of entry to read out</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="2035">number of entry to read out</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="sample"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">address of a GstSample
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="2036">address of a GstSample
     pointer variable to store the result into</doc>
             <type name="Sample" c:type="GstSample**"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_scope" c:identifier="gst_tag_list_get_scope">
-        <doc xml:space="preserve">Gets the scope of @list.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The scope of @list</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttaglist.c"
+             line="843">Gets the scope of @list.</doc>
+        <source-position filename="gst/gsttaglist.h" line="213"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gsttaglist.c"
+               line="849">The scope of @list</doc>
           <type name="TagScope" c:type="GstTagScope"/>
         </return-value>
         <parameters>
           <instance-parameter name="list" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstTagList</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="845">a #GstTagList</doc>
             <type name="TagList" c:type="const GstTagList*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_string" c:identifier="gst_tag_list_get_string">
-        <doc xml:space="preserve">Copies the contents for the given tag into the value, possibly merging
+        <doc xml:space="preserve"
+             filename="gst/gsttaglist.c"
+             line="1785">Copies the contents for the given tag into the value, possibly merging
 multiple values into one if multiple values are associated with the tag.
 
 Use gst_tag_list_get_string_index (list, tag, 0, value) if you want
@@ -40976,32 +63465,43 @@ freed by the caller using g_free when no longer needed. The
 returned string is also guaranteed to be non-%NULL and non-empty.
 
 Free-function: g_free</doc>
+        <source-position filename="gst/gsttaglist.h" line="352"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE, if a value was copied, %FALSE if the tag didn't exist in the
+          <doc xml:space="preserve"
+               filename="gst/gsttaglist.c"
+               line="1803">%TRUE, if a value was copied, %FALSE if the tag didn't exist in the
              given list.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="list" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstTagList to get the tag from</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1787">a #GstTagList to get the tag from</doc>
             <type name="TagList" c:type="const GstTagList*"/>
           </instance-parameter>
           <parameter name="tag" transfer-ownership="none">
-            <doc xml:space="preserve">tag to read out</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1788">tag to read out</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="value"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">location for the result</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1789">location for the result</doc>
             <type name="utf8" c:type="gchar**"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_string_index"
               c:identifier="gst_tag_list_get_string_index">
-        <doc xml:space="preserve">Gets the value that is at the given index for the given tag in the given
+        <doc xml:space="preserve"
+             filename="gst/gsttaglist.c"
+             line="1806">Gets the value that is at the given index for the given tag in the given
 list.
 
 The resulting string in @value will be in UTF-8 encoding and should be
@@ -41009,245 +63509,354 @@ freed by the caller using g_free when no longer needed. The
 returned string is also guaranteed to be non-%NULL and non-empty.
 
 Free-function: g_free</doc>
+        <source-position filename="gst/gsttaglist.h" line="356"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE, if a value was copied, %FALSE if the tag didn't exist in the
+          <doc xml:space="preserve"
+               filename="gst/gsttaglist.c"
+               line="1822">%TRUE, if a value was copied, %FALSE if the tag didn't exist in the
              given list.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="list" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstTagList to get the tag from</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1808">a #GstTagList to get the tag from</doc>
             <type name="TagList" c:type="const GstTagList*"/>
           </instance-parameter>
           <parameter name="tag" transfer-ownership="none">
-            <doc xml:space="preserve">tag to read out</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1809">tag to read out</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="index" transfer-ownership="none">
-            <doc xml:space="preserve">number of entry to read out</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1810">number of entry to read out</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="value"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">location for the result</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1811">location for the result</doc>
             <type name="utf8" c:type="gchar**"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_tag_size" c:identifier="gst_tag_list_get_tag_size">
-        <doc xml:space="preserve">Checks how many value are stored in this tag list for the given tag.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The number of tags stored</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttaglist.c"
+             line="1189">Checks how many value are stored in this tag list for the given tag.</doc>
+        <source-position filename="gst/gsttaglist.h" line="242"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gsttaglist.c"
+               line="1196">The number of tags stored</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="list" transfer-ownership="none">
-            <doc xml:space="preserve">a taglist</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1191">a taglist</doc>
             <type name="TagList" c:type="const GstTagList*"/>
           </instance-parameter>
           <parameter name="tag" transfer-ownership="none">
-            <doc xml:space="preserve">the tag to query</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1192">the tag to query</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_uint" c:identifier="gst_tag_list_get_uint">
-        <doc xml:space="preserve">Copies the contents for the given tag into the value, merging multiple values
+        <doc xml:space="preserve"
+             filename="gst/gsttaglist.c"
+             line="1616">Copies the contents for the given tag into the value, merging multiple values
 into one if multiple values are associated with the tag.</doc>
+        <source-position filename="gst/gsttaglist.h" line="307"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE, if a value was copied, %FALSE if the tag didn't exist in the
+          <doc xml:space="preserve"
+               filename="gst/gsttaglist.c"
+               line="1625">%TRUE, if a value was copied, %FALSE if the tag didn't exist in the
              given list.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="list" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstTagList to get the tag from</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1618">a #GstTagList to get the tag from</doc>
             <type name="TagList" c:type="const GstTagList*"/>
           </instance-parameter>
           <parameter name="tag" transfer-ownership="none">
-            <doc xml:space="preserve">tag to read out</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1619">tag to read out</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="value"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">location for the result</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1620">location for the result</doc>
             <type name="guint" c:type="guint*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_uint64" c:identifier="gst_tag_list_get_uint64">
-        <doc xml:space="preserve">Copies the contents for the given tag into the value, merging multiple values
+        <doc xml:space="preserve"
+             filename="gst/gsttaglist.c"
+             line="1668">Copies the contents for the given tag into the value, merging multiple values
 into one if multiple values are associated with the tag.</doc>
+        <source-position filename="gst/gsttaglist.h" line="325"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE, if a value was copied, %FALSE if the tag didn't exist in the
+          <doc xml:space="preserve"
+               filename="gst/gsttaglist.c"
+               line="1677">%TRUE, if a value was copied, %FALSE if the tag didn't exist in the
              given list.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="list" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstTagList to get the tag from</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1670">a #GstTagList to get the tag from</doc>
             <type name="TagList" c:type="const GstTagList*"/>
           </instance-parameter>
           <parameter name="tag" transfer-ownership="none">
-            <doc xml:space="preserve">tag to read out</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1671">tag to read out</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="value"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">location for the result</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1672">location for the result</doc>
             <type name="guint64" c:type="guint64*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_uint64_index"
               c:identifier="gst_tag_list_get_uint64_index">
-        <doc xml:space="preserve">Gets the value that is at the given index for the given tag in the given
+        <doc xml:space="preserve"
+             filename="gst/gsttaglist.c"
+             line="1680">Gets the value that is at the given index for the given tag in the given
 list.</doc>
+        <source-position filename="gst/gsttaglist.h" line="329"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE, if a value was copied, %FALSE if the tag didn't exist in the
+          <doc xml:space="preserve"
+               filename="gst/gsttaglist.c"
+               line="1690">%TRUE, if a value was copied, %FALSE if the tag didn't exist in the
              given list.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="list" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstTagList to get the tag from</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1682">a #GstTagList to get the tag from</doc>
             <type name="TagList" c:type="const GstTagList*"/>
           </instance-parameter>
           <parameter name="tag" transfer-ownership="none">
-            <doc xml:space="preserve">tag to read out</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1683">tag to read out</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="index" transfer-ownership="none">
-            <doc xml:space="preserve">number of entry to read out</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1684">number of entry to read out</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="value"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">location for the result</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1685">location for the result</doc>
             <type name="guint64" c:type="guint64*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_uint_index" c:identifier="gst_tag_list_get_uint_index">
-        <doc xml:space="preserve">Gets the value that is at the given index for the given tag in the given
+        <doc xml:space="preserve"
+             filename="gst/gsttaglist.c"
+             line="1628">Gets the value that is at the given index for the given tag in the given
 list.</doc>
+        <source-position filename="gst/gsttaglist.h" line="311"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE, if a value was copied, %FALSE if the tag didn't exist in the
+          <doc xml:space="preserve"
+               filename="gst/gsttaglist.c"
+               line="1638">%TRUE, if a value was copied, %FALSE if the tag didn't exist in the
              given list.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="list" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstTagList to get the tag from</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1630">a #GstTagList to get the tag from</doc>
             <type name="TagList" c:type="const GstTagList*"/>
           </instance-parameter>
           <parameter name="tag" transfer-ownership="none">
-            <doc xml:space="preserve">tag to read out</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1631">tag to read out</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="index" transfer-ownership="none">
-            <doc xml:space="preserve">number of entry to read out</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1632">number of entry to read out</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="value"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">location for the result</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1633">location for the result</doc>
             <type name="guint" c:type="guint*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_value_index"
               c:identifier="gst_tag_list_get_value_index">
-        <doc xml:space="preserve">Gets the value that is at the given index for the given tag in the given
+        <doc xml:space="preserve"
+             filename="gst/gsttaglist.c"
+             line="1435">Gets the value that is at the given index for the given tag in the given
 list.</doc>
+        <source-position filename="gst/gsttaglist.h" line="278"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">The GValue for the specified
+          <doc xml:space="preserve"
+               filename="gst/gsttaglist.c"
+               line="1444">The GValue for the specified
          entry or %NULL if the tag wasn't available or the tag
          doesn't have as many entries</doc>
           <type name="GObject.Value" c:type="const GValue*"/>
         </return-value>
         <parameters>
           <instance-parameter name="list" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstTagList</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1437">a #GstTagList</doc>
             <type name="TagList" c:type="const GstTagList*"/>
           </instance-parameter>
           <parameter name="tag" transfer-ownership="none">
-            <doc xml:space="preserve">tag to read out</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1438">tag to read out</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="index" transfer-ownership="none">
-            <doc xml:space="preserve">number of entry to read out</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1439">number of entry to read out</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="insert" c:identifier="gst_tag_list_insert">
-        <doc xml:space="preserve">Inserts the tags of the @from list into the first list using the given mode.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttaglist.c"
+             line="1120">Inserts the tags of the @from list into the first list using the given mode.</doc>
+        <source-position filename="gst/gsttaglist.h" line="234"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="into" transfer-ownership="none">
-            <doc xml:space="preserve">list to merge into</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1122">list to merge into</doc>
             <type name="TagList" c:type="GstTagList*"/>
           </instance-parameter>
           <parameter name="from" transfer-ownership="none">
-            <doc xml:space="preserve">list to merge from</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1123">list to merge from</doc>
             <type name="TagList" c:type="const GstTagList*"/>
           </parameter>
           <parameter name="mode" transfer-ownership="none">
-            <doc xml:space="preserve">the mode to use</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1124">the mode to use</doc>
             <type name="TagMergeMode" c:type="GstTagMergeMode"/>
           </parameter>
         </parameters>
       </method>
       <method name="is_empty" c:identifier="gst_tag_list_is_empty">
-        <doc xml:space="preserve">Checks if the given taglist is empty.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the taglist is empty, otherwise %FALSE.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttaglist.c"
+             line="939">Checks if the given taglist is empty.</doc>
+        <source-position filename="gst/gsttaglist.h" line="228"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gsttaglist.c"
+               line="945">%TRUE if the taglist is empty, otherwise %FALSE.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="list" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstTagList.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="941">A #GstTagList.</doc>
             <type name="TagList" c:type="const GstTagList*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="is_equal" c:identifier="gst_tag_list_is_equal">
-        <doc xml:space="preserve">Checks if the two given taglists are equal.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the taglists are equal, otherwise %FALSE</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttaglist.c"
+             line="988">Checks if the two given taglists are equal.</doc>
+        <source-position filename="gst/gsttaglist.h" line="231"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gsttaglist.c"
+               line="995">%TRUE if the taglists are equal, otherwise %FALSE</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="list1" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstTagList.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="990">a #GstTagList.</doc>
             <type name="TagList" c:type="const GstTagList*"/>
           </instance-parameter>
           <parameter name="list2" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstTagList.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="991">a #GstTagList.</doc>
             <type name="TagList" c:type="const GstTagList*"/>
           </parameter>
         </parameters>
       </method>
       <method name="merge" c:identifier="gst_tag_list_merge">
-        <doc xml:space="preserve">Merges the two given lists into a new list. If one of the lists is %NULL, a
+        <doc xml:space="preserve"
+             filename="gst/gsttaglist.c"
+             line="1148">Merges the two given lists into a new list. If one of the lists is %NULL, a
 copy of the other is returned. If both lists are %NULL, %NULL is returned.
 
 Free-function: gst_tag_list_unref</doc>
+        <source-position filename="gst/gsttaglist.h" line="238"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">the new list</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsttaglist.c"
+               line="1159">the new list</doc>
           <type name="TagList" c:type="GstTagList*"/>
         </return-value>
         <parameters>
@@ -41255,142 +63864,248 @@ Free-function: gst_tag_list_unref</doc>
                               transfer-ownership="none"
                               nullable="1"
                               allow-none="1">
-            <doc xml:space="preserve">first list to merge</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1150">first list to merge</doc>
             <type name="TagList" c:type="const GstTagList*"/>
           </instance-parameter>
           <parameter name="list2"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">second list to merge</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1151">second list to merge</doc>
             <type name="TagList" c:type="const GstTagList*"/>
           </parameter>
           <parameter name="mode" transfer-ownership="none">
-            <doc xml:space="preserve">the mode to use</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1152">the mode to use</doc>
             <type name="TagMergeMode" c:type="GstTagMergeMode"/>
           </parameter>
         </parameters>
       </method>
       <method name="n_tags" c:identifier="gst_tag_list_n_tags">
-        <doc xml:space="preserve">Get the number of tags in @list.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The number of tags in @list.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttaglist.c"
+             line="904">Get the number of tags in @list.</doc>
+        <source-position filename="gst/gsttaglist.h" line="222"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gsttaglist.c"
+               line="910">The number of tags in @list.</doc>
           <type name="gint" c:type="gint"/>
         </return-value>
         <parameters>
           <instance-parameter name="list" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstTagList.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="906">A #GstTagList.</doc>
             <type name="TagList" c:type="const GstTagList*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="nth_tag_name" c:identifier="gst_tag_list_nth_tag_name">
-        <doc xml:space="preserve">Get the name of the tag in @list at @index.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The name of the tag at @index.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttaglist.c"
+             line="921">Get the name of the tag in @list at @index.</doc>
+        <source-position filename="gst/gsttaglist.h" line="225"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gsttaglist.c"
+               line="928">The name of the tag at @index.</doc>
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
         <parameters>
           <instance-parameter name="list" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstTagList.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="923">A #GstTagList.</doc>
             <type name="TagList" c:type="const GstTagList*"/>
           </instance-parameter>
           <parameter name="index" transfer-ownership="none">
-            <doc xml:space="preserve">the index</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="924">the index</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="peek_string_index"
               c:identifier="gst_tag_list_peek_string_index">
-        <doc xml:space="preserve">Peeks at the value that is at the given index for the given tag in the given
+        <doc xml:space="preserve"
+             filename="gst/gsttaglist.c"
+             line="1832">Peeks at the value that is at the given index for the given tag in the given
 list.
 
 The resulting string in @value will be in UTF-8 encoding and doesn't need
 to be freed by the caller. The returned string is also guaranteed to
 be non-%NULL and non-empty.</doc>
+        <source-position filename="gst/gsttaglist.h" line="361"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE, if a value was set, %FALSE if the tag didn't exist in the
+          <doc xml:space="preserve"
+               filename="gst/gsttaglist.c"
+               line="1846">%TRUE, if a value was set, %FALSE if the tag didn't exist in the
              given list.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="list" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstTagList to get the tag from</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1834">a #GstTagList to get the tag from</doc>
             <type name="TagList" c:type="const GstTagList*"/>
           </instance-parameter>
           <parameter name="tag" transfer-ownership="none">
-            <doc xml:space="preserve">tag to read out</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1835">tag to read out</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="index" transfer-ownership="none">
-            <doc xml:space="preserve">number of entry to read out</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1836">number of entry to read out</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="value"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="none">
-            <doc xml:space="preserve">location for the result</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1837">location for the result</doc>
             <type name="utf8" c:type="const gchar**"/>
           </parameter>
         </parameters>
       </method>
+      <method name="ref" c:identifier="gst_tag_list_ref" introspectable="0">
+        <doc xml:space="preserve"
+             filename="gst/gsttaglist.h"
+             line="403">Add a reference to a #GstTagList mini object.
+
+From this point on, until the caller calls gst_tag_list_unref() or
+gst_tag_list_make_writable(), it is guaranteed that the taglist object will
+not change. To use a #GstTagList object, you must always have a refcount on
+it -- either the one made implicitly by e.g. gst_tag_list_new(), or via
+taking one explicitly with this function.</doc>
+        <source-position filename="gst/gsttaglist.h" line="417"/>
+        <return-value transfer-ownership="full">
+          <doc xml:space="preserve"
+               filename="gst/gsttaglist.h"
+               line="415">the same #GstTagList mini object.</doc>
+          <type name="TagList" c:type="GstTagList*"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="taglist" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.h"
+                 line="405">the #GstTagList to reference</doc>
+            <type name="TagList" c:type="GstTagList*"/>
+          </instance-parameter>
+        </parameters>
+      </method>
       <method name="remove_tag" c:identifier="gst_tag_list_remove_tag">
-        <doc xml:space="preserve">Removes the given tag from the taglist.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttaglist.c"
+             line="1375">Removes the given tag from the taglist.</doc>
+        <source-position filename="gst/gsttaglist.h" line="270"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="list" transfer-ownership="none">
-            <doc xml:space="preserve">list to remove tag from</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1377">list to remove tag from</doc>
             <type name="TagList" c:type="GstTagList*"/>
           </instance-parameter>
           <parameter name="tag" transfer-ownership="none">
-            <doc xml:space="preserve">tag to remove</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1378">tag to remove</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_scope" c:identifier="gst_tag_list_set_scope">
-        <doc xml:space="preserve">Sets the scope of @list to @scope. By default the scope
+        <doc xml:space="preserve"
+             filename="gst/gsttaglist.c"
+             line="825">Sets the scope of @list to @scope. By default the scope
 of a taglist is stream scope.</doc>
+        <source-position filename="gst/gsttaglist.h" line="210"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="list" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstTagList</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="827">a #GstTagList</doc>
             <type name="TagList" c:type="GstTagList*"/>
           </instance-parameter>
           <parameter name="scope" transfer-ownership="none">
-            <doc xml:space="preserve">new scope for @list</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="828">new scope for @list</doc>
             <type name="TagScope" c:type="GstTagScope"/>
           </parameter>
         </parameters>
       </method>
       <method name="to_string" c:identifier="gst_tag_list_to_string">
-        <doc xml:space="preserve">Serializes a tag list to a string.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttaglist.c"
+             line="859">Serializes a tag list to a string.</doc>
+        <source-position filename="gst/gsttaglist.h" line="216"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">a newly-allocated string, or %NULL in case of
+          <doc xml:space="preserve"
+               filename="gst/gsttaglist.c"
+               line="865">a newly-allocated string, or %NULL in case of
     an error. The string must be freed with g_free() when no longer
     needed.</doc>
           <type name="utf8" c:type="gchar*"/>
         </return-value>
         <parameters>
           <instance-parameter name="list" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstTagList</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="861">a #GstTagList</doc>
             <type name="TagList" c:type="const GstTagList*"/>
           </instance-parameter>
         </parameters>
       </method>
+      <method name="unref"
+              c:identifier="gst_tag_list_unref"
+              introspectable="0">
+        <doc xml:space="preserve"
+             filename="gst/gsttaglist.h"
+             line="424">Unref a #GstTagList, and and free all its memory when the refcount reaches 0.</doc>
+        <source-position filename="gst/gsttaglist.h" line="430"/>
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="taglist" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.h"
+                 line="426">a #GstTagList.</doc>
+            <type name="TagList" c:type="GstTagList*"/>
+          </instance-parameter>
+        </parameters>
+      </method>
       <function name="copy_value" c:identifier="gst_tag_list_copy_value">
-        <doc xml:space="preserve">Copies the contents for the given tag into the value,
+        <doc xml:space="preserve"
+             filename="gst/gsttaglist.c"
+             line="1472">Copies the contents for the given tag into the value,
 merging multiple values into one if multiple values are associated
 with the tag.
 You must g_value_unset() the value after use.</doc>
+        <source-position filename="gst/gsttaglist.h" line="282"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE, if a value was copied, %FALSE if the tag didn't exist in the
+          <doc xml:space="preserve"
+               filename="gst/gsttaglist.c"
+               line="1483">%TRUE, if a value was copied, %FALSE if the tag didn't exist in the
          given list.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -41399,33 +64114,46 @@ You must g_value_unset() the value after use.</doc>
                      direction="out"
                      caller-allocates="1"
                      transfer-ownership="none">
-            <doc xml:space="preserve">uninitialized #GValue to copy into</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1474">uninitialized #GValue to copy into</doc>
             <type name="GObject.Value" c:type="GValue*"/>
           </parameter>
           <parameter name="list" transfer-ownership="none">
-            <doc xml:space="preserve">list to get the tag from</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1475">list to get the tag from</doc>
             <type name="TagList" c:type="const GstTagList*"/>
           </parameter>
           <parameter name="tag" transfer-ownership="none">
-            <doc xml:space="preserve">tag to read out</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaglist.c"
+                 line="1476">tag to read out</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </function>
     </record>
     <callback name="TagMergeFunc" c:type="GstTagMergeFunc">
-      <doc xml:space="preserve">A function for merging multiple values of a tag used when registering
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="127">A function for merging multiple values of a tag used when registering
 tags.</doc>
+      <source-position filename="gst/gsttaglist.h" line="135"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="dest" transfer-ownership="none">
-          <doc xml:space="preserve">the destination #GValue</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsttaglist.h"
+               line="129">the destination #GValue</doc>
           <type name="GObject.Value" c:type="GValue*"/>
         </parameter>
         <parameter name="src" transfer-ownership="none">
-          <doc xml:space="preserve">the source #GValue</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsttaglist.h"
+               line="130">the source #GValue</doc>
           <type name="GObject.Value" c:type="const GValue*"/>
         </parameter>
       </parameters>
@@ -41434,7 +64162,9 @@ tags.</doc>
                  glib:type-name="GstTagMergeMode"
                  glib:get-type="gst_tag_merge_mode_get_type"
                  c:type="GstTagMergeMode">
-      <doc xml:space="preserve">The different tag merging modes are basically replace, overwrite and append,
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="33">The different tag merging modes are basically replace, overwrite and append,
 but they can be seen from two directions. Given two taglists: (A) the tags
 already in the element and (B) the ones that are supplied to the element (
 e.g. via gst_tag_setter_merge_tags() / gst_tag_setter_add_tags() or a
@@ -41442,130 +64172,102 @@ e.g. via gst_tag_setter_merge_tags() / gst_tag_setter_add_tags() or a
 In the table below this is shown for the cases that a tag exists in the list
 (A) or does not exists (!A) and combinations thereof.
 
-&lt;table frame="all" colsep="1" rowsep="1"&gt;
-  &lt;title&gt;merge mode&lt;/title&gt;
-  &lt;tgroup cols='5' align='left'&gt;
-    &lt;thead&gt;
-      &lt;row&gt;
-        &lt;entry&gt;merge mode&lt;/entry&gt;
-        &lt;entry&gt;A + B&lt;/entry&gt;
-        &lt;entry&gt;A + !B&lt;/entry&gt;
-        &lt;entry&gt;!A + B&lt;/entry&gt;
-        &lt;entry&gt;!A + !B&lt;/entry&gt;
-      &lt;/row&gt;
-    &lt;/thead&gt;
-    &lt;tbody&gt;
-      &lt;row&gt;
-        &lt;entry&gt;REPLACE_ALL&lt;/entry&gt;
-        &lt;entry&gt;B&lt;/entry&gt;
-        &lt;entry&gt;-&lt;/entry&gt;
-        &lt;entry&gt;B&lt;/entry&gt;
-        &lt;entry&gt;-&lt;/entry&gt;
-      &lt;/row&gt;
-      &lt;row&gt;
-        &lt;entry&gt;REPLACE&lt;/entry&gt;
-        &lt;entry&gt;B&lt;/entry&gt;
-        &lt;entry&gt;A&lt;/entry&gt;
-        &lt;entry&gt;B&lt;/entry&gt;
-        &lt;entry&gt;-&lt;/entry&gt;
-      &lt;/row&gt;
-      &lt;row&gt;
-        &lt;entry&gt;APPEND&lt;/entry&gt;
-        &lt;entry&gt;A, B&lt;/entry&gt;
-        &lt;entry&gt;A&lt;/entry&gt;
-        &lt;entry&gt;B&lt;/entry&gt;
-        &lt;entry&gt;-&lt;/entry&gt;
-      &lt;/row&gt;
-      &lt;row&gt;
-        &lt;entry&gt;PREPEND&lt;/entry&gt;
-        &lt;entry&gt;B, A&lt;/entry&gt;
-        &lt;entry&gt;A&lt;/entry&gt;
-        &lt;entry&gt;B&lt;/entry&gt;
-        &lt;entry&gt;-&lt;/entry&gt;
-      &lt;/row&gt;
-      &lt;row&gt;
-        &lt;entry&gt;KEEP&lt;/entry&gt;
-        &lt;entry&gt;A&lt;/entry&gt;
-        &lt;entry&gt;A&lt;/entry&gt;
-        &lt;entry&gt;B&lt;/entry&gt;
-        &lt;entry&gt;-&lt;/entry&gt;
-      &lt;/row&gt;
-      &lt;row&gt;
-        &lt;entry&gt;KEEP_ALL&lt;/entry&gt;
-        &lt;entry&gt;A&lt;/entry&gt;
-        &lt;entry&gt;A&lt;/entry&gt;
-        &lt;entry&gt;-&lt;/entry&gt;
-        &lt;entry&gt;-&lt;/entry&gt;
-      &lt;/row&gt;
-    &lt;/tbody&gt;
-  &lt;/tgroup&gt;
-&lt;/table&gt;</doc>
+| merge mode  | A + B | A + !B | !A + B | !A + !B |
+| ----------- | ----- | ------ | ------ | ------- |
+| REPLACE_ALL | B     | Ã¸      | B      | Ã¸       |
+| REPLACE     | B     | A      | B      | Ã¸       |
+| APPEND      | A, B  | A      | B      | Ã¸       |
+| PREPEND     | B, A  | A      | B      | Ã¸       |
+| KEEP        | A     | A      | B      | Ã¸       |
+| KEEP_ALL    | A     | A      | Ã¸      | Ã¸       |</doc>
       <member name="undefined"
               value="0"
               c:identifier="GST_TAG_MERGE_UNDEFINED"
               glib:nick="undefined">
-        <doc xml:space="preserve">undefined merge mode</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttaglist.h"
+             line="35">undefined merge mode</doc>
       </member>
       <member name="replace_all"
               value="1"
               c:identifier="GST_TAG_MERGE_REPLACE_ALL"
               glib:nick="replace-all">
-        <doc xml:space="preserve">replace all tags (clear list and append)</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttaglist.h"
+             line="36">replace all tags (clear list and append)</doc>
       </member>
       <member name="replace"
               value="2"
               c:identifier="GST_TAG_MERGE_REPLACE"
               glib:nick="replace">
-        <doc xml:space="preserve">replace tags</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttaglist.h"
+             line="37">replace tags</doc>
       </member>
       <member name="append"
               value="3"
               c:identifier="GST_TAG_MERGE_APPEND"
               glib:nick="append">
-        <doc xml:space="preserve">append tags</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttaglist.h"
+             line="38">append tags</doc>
       </member>
       <member name="prepend"
               value="4"
               c:identifier="GST_TAG_MERGE_PREPEND"
               glib:nick="prepend">
-        <doc xml:space="preserve">prepend tags</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttaglist.h"
+             line="39">prepend tags</doc>
       </member>
       <member name="keep"
               value="5"
               c:identifier="GST_TAG_MERGE_KEEP"
               glib:nick="keep">
-        <doc xml:space="preserve">keep existing tags</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttaglist.h"
+             line="40">keep existing tags</doc>
       </member>
       <member name="keep_all"
               value="6"
               c:identifier="GST_TAG_MERGE_KEEP_ALL"
               glib:nick="keep-all">
-        <doc xml:space="preserve">keep all existing tags</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttaglist.h"
+             line="41">keep all existing tags</doc>
       </member>
       <member name="count"
               value="7"
               c:identifier="GST_TAG_MERGE_COUNT"
               glib:nick="count">
-        <doc xml:space="preserve">the number of merge modes</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttaglist.h"
+             line="42">the number of merge modes</doc>
       </member>
     </enumeration>
     <enumeration name="TagScope"
                  glib:type-name="GstTagScope"
                  glib:get-type="gst_tag_scope_get_type"
                  c:type="GstTagScope">
-      <doc xml:space="preserve">GstTagScope specifies if a taglist applies to the complete
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="187">GstTagScope specifies if a taglist applies to the complete
 medium or only to one single stream.</doc>
       <member name="stream"
               value="0"
               c:identifier="GST_TAG_SCOPE_STREAM"
               glib:nick="stream">
-        <doc xml:space="preserve">tags specific to this single stream</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttaglist.h"
+             line="189">tags specific to this single stream</doc>
       </member>
       <member name="global"
               value="1"
               c:identifier="GST_TAG_SCOPE_GLOBAL"
               glib:nick="global">
-        <doc xml:space="preserve">global tags for the complete medium</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttaglist.h"
+             line="190">global tags for the complete medium</doc>
       </member>
     </enumeration>
     <interface name="TagSetter"
@@ -41574,7 +64276,9 @@ medium or only to one single stream.</doc>
                glib:type-name="GstTagSetter"
                glib:get-type="gst_tag_setter_get_type"
                glib:type-struct="TagSetterInterface">
-      <doc xml:space="preserve">Element interface that allows setting of media metadata.
+      <doc xml:space="preserve"
+           filename="gst/gsttagsetter.c"
+           line="22">Element interface that allows setting of media metadata.
 
 Elements that support changing a stream's metadata will implement this
 interface. Examples of such elements are 'vorbisenc', 'theoraenc' and
@@ -41614,30 +64318,42 @@ result = gst_tag_list_merge (application_tags, event_tags, merge_mode);
 
 GST_LOG_OBJECT (tagsetter, "final tags: %" GST_PTR_FORMAT, result);
 ]|</doc>
+      <source-position filename="gst/gsttagsetter.h" line="57"/>
       <prerequisite name="Element"/>
       <method name="add_tag_valist"
               c:identifier="gst_tag_setter_add_tag_valist"
               introspectable="0">
-        <doc xml:space="preserve">Adds the given tag / value pairs on the setter using the given merge mode.
+        <doc xml:space="preserve"
+             filename="gst/gsttagsetter.c"
+             line="244">Adds the given tag / value pairs on the setter using the given merge mode.
 The list must be terminated with %NULL.</doc>
+        <source-position filename="gst/gsttagsetter.h" line="80"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="setter" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstTagSetter</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttagsetter.c"
+                 line="246">a #GstTagSetter</doc>
             <type name="TagSetter" c:type="GstTagSetter*"/>
           </instance-parameter>
           <parameter name="mode" transfer-ownership="none">
-            <doc xml:space="preserve">the mode to use</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttagsetter.c"
+                 line="247">the mode to use</doc>
             <type name="TagMergeMode" c:type="GstTagMergeMode"/>
           </parameter>
           <parameter name="tag" transfer-ownership="none">
-            <doc xml:space="preserve">tag to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttagsetter.c"
+                 line="248">tag to set</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="var_args" transfer-ownership="none">
-            <doc xml:space="preserve">tag / value pairs to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttagsetter.c"
+                 line="249">tag / value pairs to set</doc>
             <type name="va_list" c:type="va_list"/>
           </parameter>
         </parameters>
@@ -41645,50 +64361,72 @@ The list must be terminated with %NULL.</doc>
       <method name="add_tag_valist_values"
               c:identifier="gst_tag_setter_add_tag_valist_values"
               introspectable="0">
-        <doc xml:space="preserve">Adds the given tag / GValue pairs on the setter using the given merge mode.
+        <doc xml:space="preserve"
+             filename="gst/gsttagsetter.c"
+             line="274">Adds the given tag / GValue pairs on the setter using the given merge mode.
 The list must be terminated with %NULL.</doc>
+        <source-position filename="gst/gsttagsetter.h" line="85"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="setter" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstTagSetter</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttagsetter.c"
+                 line="276">a #GstTagSetter</doc>
             <type name="TagSetter" c:type="GstTagSetter*"/>
           </instance-parameter>
           <parameter name="mode" transfer-ownership="none">
-            <doc xml:space="preserve">the mode to use</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttagsetter.c"
+                 line="277">the mode to use</doc>
             <type name="TagMergeMode" c:type="GstTagMergeMode"/>
           </parameter>
           <parameter name="tag" transfer-ownership="none">
-            <doc xml:space="preserve">tag to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttagsetter.c"
+                 line="278">tag to set</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="var_args" transfer-ownership="none">
-            <doc xml:space="preserve">tag / GValue pairs to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttagsetter.c"
+                 line="279">tag / GValue pairs to set</doc>
             <type name="va_list" c:type="va_list"/>
           </parameter>
         </parameters>
       </method>
       <method name="add_tag_value" c:identifier="gst_tag_setter_add_tag_value">
-        <doc xml:space="preserve">Adds the given tag / GValue pair on the setter using the given merge mode.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttagsetter.c"
+             line="305">Adds the given tag / GValue pair on the setter using the given merge mode.</doc>
+        <source-position filename="gst/gsttagsetter.h" line="90"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="setter" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstTagSetter</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttagsetter.c"
+                 line="307">a #GstTagSetter</doc>
             <type name="TagSetter" c:type="GstTagSetter*"/>
           </instance-parameter>
           <parameter name="mode" transfer-ownership="none">
-            <doc xml:space="preserve">the mode to use</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttagsetter.c"
+                 line="308">the mode to use</doc>
             <type name="TagMergeMode" c:type="GstTagMergeMode"/>
           </parameter>
           <parameter name="tag" transfer-ownership="none">
-            <doc xml:space="preserve">tag to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttagsetter.c"
+                 line="309">tag to set</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="value" transfer-ownership="none">
-            <doc xml:space="preserve">GValue to set for the tag</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttagsetter.c"
+                 line="310">GValue to set for the tag</doc>
             <type name="GObject.Value" c:type="const GValue*"/>
           </parameter>
         </parameters>
@@ -41696,26 +64434,37 @@ The list must be terminated with %NULL.</doc>
       <method name="add_tag_values"
               c:identifier="gst_tag_setter_add_tag_values"
               introspectable="0">
-        <doc xml:space="preserve">Adds the given tag / GValue pairs on the setter using the given merge mode.
+        <doc xml:space="preserve"
+             filename="gst/gsttagsetter.c"
+             line="220">Adds the given tag / GValue pairs on the setter using the given merge mode.
 The list must be terminated with %NULL.</doc>
+        <source-position filename="gst/gsttagsetter.h" line="75"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="setter" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstTagSetter</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttagsetter.c"
+                 line="222">a #GstTagSetter</doc>
             <type name="TagSetter" c:type="GstTagSetter*"/>
           </instance-parameter>
           <parameter name="mode" transfer-ownership="none">
-            <doc xml:space="preserve">the mode to use</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttagsetter.c"
+                 line="223">the mode to use</doc>
             <type name="TagMergeMode" c:type="GstTagMergeMode"/>
           </parameter>
           <parameter name="tag" transfer-ownership="none">
-            <doc xml:space="preserve">tag to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttagsetter.c"
+                 line="224">tag to set</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="..." transfer-ownership="none">
-            <doc xml:space="preserve">more tag / GValue pairs to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttagsetter.c"
+                 line="225">more tag / GValue pairs to set</doc>
             <varargs/>
           </parameter>
         </parameters>
@@ -41723,110 +64472,156 @@ The list must be terminated with %NULL.</doc>
       <method name="add_tags"
               c:identifier="gst_tag_setter_add_tags"
               introspectable="0">
-        <doc xml:space="preserve">Adds the given tag / value pairs on the setter using the given merge mode.
+        <doc xml:space="preserve"
+             filename="gst/gsttagsetter.c"
+             line="196">Adds the given tag / value pairs on the setter using the given merge mode.
 The list must be terminated with %NULL.</doc>
+        <source-position filename="gst/gsttagsetter.h" line="70"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="setter" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstTagSetter</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttagsetter.c"
+                 line="198">a #GstTagSetter</doc>
             <type name="TagSetter" c:type="GstTagSetter*"/>
           </instance-parameter>
           <parameter name="mode" transfer-ownership="none">
-            <doc xml:space="preserve">the mode to use</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttagsetter.c"
+                 line="199">the mode to use</doc>
             <type name="TagMergeMode" c:type="GstTagMergeMode"/>
           </parameter>
           <parameter name="tag" transfer-ownership="none">
-            <doc xml:space="preserve">tag to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttagsetter.c"
+                 line="200">tag to set</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="..." transfer-ownership="none">
-            <doc xml:space="preserve">more tag / value pairs to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttagsetter.c"
+                 line="201">more tag / value pairs to set</doc>
             <varargs/>
           </parameter>
         </parameters>
       </method>
       <method name="get_tag_list" c:identifier="gst_tag_setter_get_tag_list">
-        <doc xml:space="preserve">Returns the current list of tags the setter uses.  The list should not be
+        <doc xml:space="preserve"
+             filename="gst/gsttagsetter.c"
+             line="335">Returns the current list of tags the setter uses.  The list should not be
 modified or freed.
 
 This function is not thread-safe.</doc>
+        <source-position filename="gst/gsttagsetter.h" line="96"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">a current snapshot of the
+          <doc xml:space="preserve"
+               filename="gst/gsttagsetter.c"
+               line="344">a current snapshot of the
          taglist used in the setter or %NULL if none is used.</doc>
           <type name="TagList" c:type="const GstTagList*"/>
         </return-value>
         <parameters>
           <instance-parameter name="setter" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstTagSetter</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttagsetter.c"
+                 line="337">a #GstTagSetter</doc>
             <type name="TagSetter" c:type="GstTagSetter*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_tag_merge_mode"
               c:identifier="gst_tag_setter_get_tag_merge_mode">
-        <doc xml:space="preserve">Queries the mode by which tags inside the setter are overwritten by tags
+        <doc xml:space="preserve"
+             filename="gst/gsttagsetter.c"
+             line="379">Queries the mode by which tags inside the setter are overwritten by tags
 from events</doc>
+        <source-position filename="gst/gsttagsetter.h" line="102"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the merge mode used inside the element.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsttagsetter.c"
+               line="386">the merge mode used inside the element.</doc>
           <type name="TagMergeMode" c:type="GstTagMergeMode"/>
         </return-value>
         <parameters>
           <instance-parameter name="setter" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstTagSetter</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttagsetter.c"
+                 line="381">a #GstTagSetter</doc>
             <type name="TagSetter" c:type="GstTagSetter*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="merge_tags" c:identifier="gst_tag_setter_merge_tags">
-        <doc xml:space="preserve">Merges the given list into the setter's list using the given mode.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttagsetter.c"
+             line="166">Merges the given list into the setter's list using the given mode.</doc>
+        <source-position filename="gst/gsttagsetter.h" line="66"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="setter" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstTagSetter</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttagsetter.c"
+                 line="168">a #GstTagSetter</doc>
             <type name="TagSetter" c:type="GstTagSetter*"/>
           </instance-parameter>
           <parameter name="list" transfer-ownership="none">
-            <doc xml:space="preserve">a tag list to merge from</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttagsetter.c"
+                 line="169">a tag list to merge from</doc>
             <type name="TagList" c:type="const GstTagList*"/>
           </parameter>
           <parameter name="mode" transfer-ownership="none">
-            <doc xml:space="preserve">the mode to merge with</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttagsetter.c"
+                 line="170">the mode to merge with</doc>
             <type name="TagMergeMode" c:type="GstTagMergeMode"/>
           </parameter>
         </parameters>
       </method>
       <method name="reset_tags" c:identifier="gst_tag_setter_reset_tags">
-        <doc xml:space="preserve">Reset the internal taglist. Elements should call this from within the
+        <doc xml:space="preserve"
+             filename="gst/gsttagsetter.c"
+             line="142">Reset the internal taglist. Elements should call this from within the
 state-change handler.</doc>
+        <source-position filename="gst/gsttagsetter.h" line="63"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="setter" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstTagSetter</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttagsetter.c"
+                 line="144">a #GstTagSetter</doc>
             <type name="TagSetter" c:type="GstTagSetter*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="set_tag_merge_mode"
               c:identifier="gst_tag_setter_set_tag_merge_mode">
-        <doc xml:space="preserve">Sets the given merge mode that is used for adding tags from events to tags
+        <doc xml:space="preserve"
+             filename="gst/gsttagsetter.c"
+             line="355">Sets the given merge mode that is used for adding tags from events to tags
 specified by this interface. The default is #GST_TAG_MERGE_KEEP, which keeps
 the tags set with this interface and discards tags from events.</doc>
+        <source-position filename="gst/gsttagsetter.h" line="99"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="setter" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstTagSetter</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttagsetter.c"
+                 line="357">a #GstTagSetter</doc>
             <type name="TagSetter" c:type="GstTagSetter*"/>
           </instance-parameter>
           <parameter name="mode" transfer-ownership="none">
-            <doc xml:space="preserve">The mode with which tags are added</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttagsetter.c"
+                 line="358">The mode with which tags are added</doc>
             <type name="TagMergeMode" c:type="GstTagMergeMode"/>
           </parameter>
         </parameters>
@@ -41835,9 +64630,14 @@ the tags set with this interface and discards tags from events.</doc>
     <record name="TagSetterInterface"
             c:type="GstTagSetterInterface"
             glib:is-gtype-struct-for="TagSetter">
-      <doc xml:space="preserve">#GstTagSetterInterface interface.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gsttagsetter.h"
+           line="42">#GstTagSetterInterface interface.</doc>
+      <source-position filename="gst/gsttagsetter.h" line="57"/>
       <field name="g_iface">
-        <doc xml:space="preserve">parent interface type.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttagsetter.h"
+             line="44">parent interface type.</doc>
         <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
       </field>
     </record>
@@ -41848,7 +64648,9 @@ the tags set with this interface and discards tags from events.</doc>
            glib:type-name="GstTask"
            glib:get-type="gst_task_get_type"
            glib:type-struct="TaskClass">
-      <doc xml:space="preserve">#GstTask is used by #GstElement and #GstPad to provide the data passing
+      <doc xml:space="preserve"
+           filename="gst/gsttask.c"
+           line="23">#GstTask is used by #GstElement and #GstPad to provide the data passing
 threads in a #GstPipeline.
 
 A #GstPad will typically start a #GstTask to push or pull data to/from the
@@ -41887,8 +64689,11 @@ For debugging purposes, the task will configure its object name as the thread
 name on Linux. Please note that the object name should be configured before the
 task is started; changing the object name after the task has been started, has
 no effect on the thread name.</doc>
+      <source-position filename="gst/gsttask.h" line="165"/>
       <constructor name="new" c:identifier="gst_task_new">
-        <doc xml:space="preserve">Create a new Task that will repeatedly call the provided @func
+        <doc xml:space="preserve"
+             filename="gst/gsttask.c"
+             line="388">Create a new Task that will repeatedly call the provided @func
 with @user_data as a parameter. Typically the task will run in
 a new thread.
 
@@ -41901,8 +64706,11 @@ gst_task_pause() to create and start the GThread.
 Before the task can be used, a #GRecMutex must be configured using the
 gst_task_set_lock() function. This lock will always be acquired while
 @func is called.</doc>
+        <source-position filename="gst/gsttask.h" line="174"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">A new #GstTask.
+          <doc xml:space="preserve"
+               filename="gst/gsttask.c"
+               line="408">A new #GstTask.
 
 MT safe.</doc>
           <type name="Task" c:type="GstTask*"/>
@@ -41913,65 +64721,90 @@ MT safe.</doc>
                      scope="notified"
                      closure="1"
                      destroy="2">
-            <doc xml:space="preserve">The #GstTaskFunction to use</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttask.c"
+                 line="390">The #GstTaskFunction to use</doc>
             <type name="TaskFunction" c:type="GstTaskFunction"/>
           </parameter>
           <parameter name="user_data"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">User data to pass to @func</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttask.c"
+                 line="391">User data to pass to @func</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
           <parameter name="notify" transfer-ownership="none" scope="async">
-            <doc xml:space="preserve">the function to call when @user_data is no longer needed.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttask.c"
+                 line="392">the function to call when @user_data is no longer needed.</doc>
             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
           </parameter>
         </parameters>
       </constructor>
       <function name="cleanup_all" c:identifier="gst_task_cleanup_all">
-        <doc xml:space="preserve">Wait for all tasks to be stopped. This is mainly used internally
+        <doc xml:space="preserve"
+             filename="gst/gsttask.c"
+             line="367">Wait for all tasks to be stopped. This is mainly used internally
 to ensure proper cleanup of internal data structures in test suites.
 
 MT safe.</doc>
+        <source-position filename="gst/gsttask.h" line="168"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
       </function>
       <method name="get_pool" c:identifier="gst_task_get_pool">
-        <doc xml:space="preserve">Get the #GstTaskPool that this task will use for its streaming
+        <doc xml:space="preserve"
+             filename="gst/gsttask.c"
+             line="467">Get the #GstTaskPool that this task will use for its streaming
 threads.
 
 MT safe.</doc>
+        <source-position filename="gst/gsttask.h" line="180"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the #GstTaskPool used by @task. gst_object_unref()
+          <doc xml:space="preserve"
+               filename="gst/gsttask.c"
+               line="476">the #GstTaskPool used by @task. gst_object_unref()
 after usage.</doc>
           <type name="TaskPool" c:type="GstTaskPool*"/>
         </return-value>
         <parameters>
           <instance-parameter name="task" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstTask</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttask.c"
+                 line="469">a #GstTask</doc>
             <type name="Task" c:type="GstTask*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_state" c:identifier="gst_task_get_state">
-        <doc xml:space="preserve">Get the current state of the task.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttask.c"
+             line="605">Get the current state of the task.</doc>
+        <source-position filename="gst/gsttask.h" line="196"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The #GstTaskState of the task
+          <doc xml:space="preserve"
+               filename="gst/gsttask.c"
+               line="611">The #GstTaskState of the task
 
 MT safe.</doc>
           <type name="TaskState" c:type="GstTaskState"/>
         </return-value>
         <parameters>
           <instance-parameter name="task" transfer-ownership="none">
-            <doc xml:space="preserve">The #GstTask to query</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttask.c"
+                 line="607">The #GstTask to query</doc>
             <type name="Task" c:type="GstTask*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="join" c:identifier="gst_task_join">
-        <doc xml:space="preserve">Joins @task. After this call, it is safe to unref the task
+        <doc xml:space="preserve"
+             filename="gst/gsttask.c"
+             line="815">Joins @task. After this call, it is safe to unref the task
 and clean up the lock set with gst_task_set_lock().
 
 The task will automatically be stopped with this call.
@@ -41979,48 +64812,88 @@ The task will automatically be stopped with this call.
 This function cannot be called from within a task function as this
 would cause a deadlock. The function will detect this and print a
 g_warning.</doc>
+        <source-position filename="gst/gsttask.h" line="214"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the task could be joined.
+          <doc xml:space="preserve"
+               filename="gst/gsttask.c"
+               line="828">%TRUE if the task could be joined.
 
 MT safe.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="task" transfer-ownership="none">
-            <doc xml:space="preserve">The #GstTask to join</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttask.c"
+                 line="817">The #GstTask to join</doc>
             <type name="Task" c:type="GstTask*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="pause" c:identifier="gst_task_pause">
-        <doc xml:space="preserve">Pauses @task. This method can also be called on a task in the
+        <doc xml:space="preserve"
+             filename="gst/gsttask.c"
+             line="770">Pauses @task. This method can also be called on a task in the
 stopped state, in which case a thread will be started and will remain
 in the paused state. This function does not wait for the task to complete
 the paused state.</doc>
+        <source-position filename="gst/gsttask.h" line="208"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the task could be paused.
+          <doc xml:space="preserve"
+               filename="gst/gsttask.c"
+               line="779">%TRUE if the task could be paused.
 
 MT safe.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="task" transfer-ownership="none">
-            <doc xml:space="preserve">The #GstTask to pause</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttask.c"
+                 line="772">The #GstTask to pause</doc>
+            <type name="Task" c:type="GstTask*"/>
+          </instance-parameter>
+        </parameters>
+      </method>
+      <method name="resume" c:identifier="gst_task_resume" version="1.18">
+        <doc xml:space="preserve"
+             filename="gst/gsttask.c"
+             line="789">Resume @task in case it was paused. If the task was stopped, it will
+remain in that state and this function will return %FALSE.</doc>
+        <source-position filename="gst/gsttask.h" line="211"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gsttask.c"
+               line="796">%TRUE if the task could be resumed.
+
+MT safe.</doc>
+          <type name="gboolean" c:type="gboolean"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="task" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst/gsttask.c"
+                 line="791">The #GstTask to resume</doc>
             <type name="Task" c:type="GstTask*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="set_enter_callback"
               c:identifier="gst_task_set_enter_callback">
-        <doc xml:space="preserve">Call @enter_func when the task function of @task is entered. @user_data will
+        <doc xml:space="preserve"
+             filename="gst/gsttask.c"
+             line="529">Call @enter_func when the task function of @task is entered. @user_data will
 be passed to @enter_func and @notify will be called when @user_data is no
 longer referenced.</doc>
+        <source-position filename="gst/gsttask.h" line="186"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="task" transfer-ownership="none">
-            <doc xml:space="preserve">The #GstTask to use</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttask.c"
+                 line="531">The #GstTask to use</doc>
             <type name="Task" c:type="GstTask*"/>
           </instance-parameter>
           <parameter name="enter_func"
@@ -42028,33 +64901,44 @@ longer referenced.</doc>
                      scope="notified"
                      closure="1"
                      destroy="2">
-            <doc xml:space="preserve">a #GstTaskThreadFunc</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttask.c"
+                 line="532">a #GstTaskThreadFunc</doc>
             <type name="TaskThreadFunc" c:type="GstTaskThreadFunc"/>
           </parameter>
           <parameter name="user_data"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">user data passed to @enter_func</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttask.c"
+                 line="533">user data passed to @enter_func</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
           <parameter name="notify" transfer-ownership="none" scope="async">
-            <doc xml:space="preserve">called when @user_data is no longer referenced</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttask.c"
+                 line="534">called when @user_data is no longer referenced</doc>
             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_leave_callback"
               c:identifier="gst_task_set_leave_callback">
-        <doc xml:space="preserve">Call @leave_func when the task function of @task is left. @user_data will
+        <doc xml:space="preserve"
+             filename="gst/gsttask.c"
+             line="567">Call @leave_func when the task function of @task is left. @user_data will
 be passed to @leave_func and @notify will be called when @user_data is no
 longer referenced.</doc>
+        <source-position filename="gst/gsttask.h" line="191"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="task" transfer-ownership="none">
-            <doc xml:space="preserve">The #GstTask to use</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttask.c"
+                 line="569">The #GstTask to use</doc>
             <type name="Task" c:type="GstTask*"/>
           </instance-parameter>
           <parameter name="leave_func"
@@ -42062,115 +64946,158 @@ longer referenced.</doc>
                      scope="notified"
                      closure="1"
                      destroy="2">
-            <doc xml:space="preserve">a #GstTaskThreadFunc</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttask.c"
+                 line="570">a #GstTaskThreadFunc</doc>
             <type name="TaskThreadFunc" c:type="GstTaskThreadFunc"/>
           </parameter>
           <parameter name="user_data"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">user data passed to @leave_func</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttask.c"
+                 line="571">user data passed to @leave_func</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
           <parameter name="notify" transfer-ownership="none" scope="async">
-            <doc xml:space="preserve">called when @user_data is no longer referenced</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttask.c"
+                 line="572">called when @user_data is no longer referenced</doc>
             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_lock" c:identifier="gst_task_set_lock">
-        <doc xml:space="preserve">Set the mutex used by the task. The mutex will be acquired before
+        <doc xml:space="preserve"
+             filename="gst/gsttask.c"
+             line="432">Set the mutex used by the task. The mutex will be acquired before
 calling the #GstTaskFunction.
 
 This function has to be called before calling gst_task_pause() or
 gst_task_start().
 
 MT safe.</doc>
+        <source-position filename="gst/gsttask.h" line="177"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="task" transfer-ownership="none">
-            <doc xml:space="preserve">The #GstTask to use</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttask.c"
+                 line="434">The #GstTask to use</doc>
             <type name="Task" c:type="GstTask*"/>
           </instance-parameter>
           <parameter name="mutex" transfer-ownership="none">
-            <doc xml:space="preserve">The #GRecMutex to use</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttask.c"
+                 line="435">The #GRecMutex to use</doc>
             <type name="GLib.RecMutex" c:type="GRecMutex*"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_pool" c:identifier="gst_task_set_pool">
-        <doc xml:space="preserve">Set @pool as the new GstTaskPool for @task. Any new streaming threads that
+        <doc xml:space="preserve"
+             filename="gst/gsttask.c"
+             line="496">Set @pool as the new GstTaskPool for @task. Any new streaming threads that
 will be created by @task will now use @pool.
 
 MT safe.</doc>
+        <source-position filename="gst/gsttask.h" line="183"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="task" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstTask</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttask.c"
+                 line="498">a #GstTask</doc>
             <type name="Task" c:type="GstTask*"/>
           </instance-parameter>
           <parameter name="pool" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstTaskPool</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttask.c"
+                 line="499">a #GstTaskPool</doc>
             <type name="TaskPool" c:type="GstTaskPool*"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_state" c:identifier="gst_task_set_state">
-        <doc xml:space="preserve">Sets the state of @task to @state.
+        <doc xml:space="preserve"
+             filename="gst/gsttask.c"
+             line="706">Sets the state of @task to @state.
 
 The @task must have a lock associated with it using
 gst_task_set_lock() when going to GST_TASK_STARTED or GST_TASK_PAUSED or
 this function will return %FALSE.
 
 MT safe.</doc>
+        <source-position filename="gst/gsttask.h" line="199"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the state could be changed.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsttask.c"
+               line="719">%TRUE if the state could be changed.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="task" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstTask</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttask.c"
+                 line="708">a #GstTask</doc>
             <type name="Task" c:type="GstTask*"/>
           </instance-parameter>
           <parameter name="state" transfer-ownership="none">
-            <doc xml:space="preserve">the new task state</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttask.c"
+                 line="709">the new task state</doc>
             <type name="TaskState" c:type="GstTaskState"/>
           </parameter>
         </parameters>
       </method>
       <method name="start" c:identifier="gst_task_start">
-        <doc xml:space="preserve">Starts @task. The @task must have a lock associated with it using
+        <doc xml:space="preserve"
+             filename="gst/gsttask.c"
+             line="735">Starts @task. The @task must have a lock associated with it using
 gst_task_set_lock() or this function will return %FALSE.</doc>
+        <source-position filename="gst/gsttask.h" line="202"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the task could be started.
+          <doc xml:space="preserve"
+               filename="gst/gsttask.c"
+               line="742">%TRUE if the task could be started.
 
 MT safe.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="task" transfer-ownership="none">
-            <doc xml:space="preserve">The #GstTask to start</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttask.c"
+                 line="737">The #GstTask to start</doc>
             <type name="Task" c:type="GstTask*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="stop" c:identifier="gst_task_stop">
-        <doc xml:space="preserve">Stops @task. This method merely schedules the task to stop and
+        <doc xml:space="preserve"
+             filename="gst/gsttask.c"
+             line="752">Stops @task. This method merely schedules the task to stop and
 will not wait for the task to have completely stopped. Use
 gst_task_join() to stop and wait for completion.</doc>
+        <source-position filename="gst/gsttask.h" line="205"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the task could be stopped.
+          <doc xml:space="preserve"
+               filename="gst/gsttask.c"
+               line="760">%TRUE if the task could be stopped.
 
 MT safe.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="task" transfer-ownership="none">
-            <doc xml:space="preserve">The #GstTask to stop</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttask.c"
+                 line="754">The #GstTask to stop</doc>
             <type name="Task" c:type="GstTask*"/>
           </instance-parameter>
         </parameters>
@@ -42179,31 +65106,45 @@ MT safe.</doc>
         <type name="Object" c:type="GstObject"/>
       </field>
       <field name="state">
-        <doc xml:space="preserve">the state of the task</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttask.h"
+             line="124">the state of the task</doc>
         <type name="TaskState" c:type="GstTaskState"/>
       </field>
       <field name="cond">
-        <doc xml:space="preserve">used to pause/resume the task</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttask.h"
+             line="125">used to pause/resume the task</doc>
         <type name="GLib.Cond" c:type="GCond"/>
       </field>
       <field name="lock">
-        <doc xml:space="preserve">The lock taken when iterating the task function</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttask.h"
+             line="126">The lock taken when iterating the task function</doc>
         <type name="GLib.RecMutex" c:type="GRecMutex*"/>
       </field>
       <field name="func">
-        <doc xml:space="preserve">the function executed by this task</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttask.h"
+             line="127">the function executed by this task</doc>
         <type name="TaskFunction" c:type="GstTaskFunction"/>
       </field>
       <field name="user_data">
-        <doc xml:space="preserve">user_data passed to the task function</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttask.h"
+             line="128">user_data passed to the task function</doc>
         <type name="gpointer" c:type="gpointer"/>
       </field>
       <field name="notify">
-        <doc xml:space="preserve">GDestroyNotify for @user_data</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttask.h"
+             line="129">GDestroyNotify for @user_data</doc>
         <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
       </field>
       <field name="running">
-        <doc xml:space="preserve">a flag indicating that the task is running</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttask.h"
+             line="130">a flag indicating that the task is running</doc>
         <type name="gboolean" c:type="gboolean"/>
       </field>
       <field name="thread" readable="0" private="1">
@@ -42213,7 +65154,7 @@ MT safe.</doc>
         <type name="TaskPrivate" c:type="GstTaskPrivate*"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -42221,6 +65162,7 @@ MT safe.</doc>
     <record name="TaskClass"
             c:type="GstTaskClass"
             glib:is-gtype-struct-for="Task">
+      <source-position filename="gst/gsttask.h" line="165"/>
       <field name="parent_class">
         <type name="ObjectClass" c:type="GstObjectClass"/>
       </field>
@@ -42228,14 +65170,17 @@ MT safe.</doc>
         <type name="TaskPool" c:type="GstTaskPool*"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
     </record>
     <callback name="TaskFunction" c:type="GstTaskFunction">
-      <doc xml:space="preserve">A function that will repeatedly be called in the thread created by
+      <doc xml:space="preserve"
+           filename="gst/gsttask.h"
+           line="31">A function that will repeatedly be called in the thread created by
 a #GstTask.</doc>
+      <source-position filename="gst/gsttask.h" line="38"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
@@ -42245,7 +65190,9 @@ a #GstTask.</doc>
                    nullable="1"
                    allow-none="1"
                    closure="0">
-          <doc xml:space="preserve">user data passed to the function</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsttask.h"
+               line="33">user data passed to the function</doc>
           <type name="gpointer" c:type="gpointer"/>
         </parameter>
       </parameters>
@@ -42257,85 +65204,119 @@ a #GstTask.</doc>
            glib:type-name="GstTaskPool"
            glib:get-type="gst_task_pool_get_type"
            glib:type-struct="TaskPoolClass">
-      <doc xml:space="preserve">This object provides an abstraction for creating threads. The default
+      <doc xml:space="preserve"
+           filename="gst/gsttaskpool.c"
+           line="22">This object provides an abstraction for creating threads. The default
 implementation uses a regular GThreadPool to start tasks.
 
 Subclasses can be made to create custom threads.</doc>
+      <source-position filename="gst/gsttaskpool.h" line="86"/>
       <constructor name="new" c:identifier="gst_task_pool_new">
-        <doc xml:space="preserve">Create a new default task pool. The default task pool will use a regular
+        <doc xml:space="preserve"
+             filename="gst/gsttaskpool.c"
+             line="162">Create a new default task pool. The default task pool will use a regular
 GThreadPool for threads.</doc>
+        <source-position filename="gst/gsttaskpool.h" line="92"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new #GstTaskPool. gst_object_unref() after usage.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsttaskpool.c"
+               line="168">a new #GstTaskPool. gst_object_unref() after usage.</doc>
           <type name="TaskPool" c:type="GstTaskPool*"/>
         </return-value>
       </constructor>
       <virtual-method name="cleanup" invoker="cleanup">
-        <doc xml:space="preserve">Wait for all tasks to be stopped. This is mainly used internally
+        <doc xml:space="preserve"
+             filename="gst/gsttaskpool.c"
+             line="205">Wait for all tasks to be stopped. This is mainly used internally
 to ensure proper cleanup of internal data structures in test suites.
 
 MT safe.</doc>
+        <source-position filename="gst/gsttaskpool.h" line="78"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="pool" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstTaskPool</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaskpool.c"
+                 line="207">a #GstTaskPool</doc>
             <type name="TaskPool" c:type="GstTaskPool*"/>
           </instance-parameter>
         </parameters>
       </virtual-method>
       <virtual-method name="join" invoker="join">
-        <doc xml:space="preserve">Join a task and/or return it to the pool. @id is the id obtained from
+        <doc xml:space="preserve"
+             filename="gst/gsttaskpool.c"
+             line="263">Join a task and/or return it to the pool. @id is the id obtained from
 gst_task_pool_push().</doc>
+        <source-position filename="gst/gsttaskpool.h" line="82"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="pool" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstTaskPool</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaskpool.c"
+                 line="265">a #GstTaskPool</doc>
             <type name="TaskPool" c:type="GstTaskPool*"/>
           </instance-parameter>
           <parameter name="id"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">the id</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaskpool.c"
+                 line="266">the id</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
         </parameters>
       </virtual-method>
       <virtual-method name="prepare" invoker="prepare" throws="1">
-        <doc xml:space="preserve">Prepare the taskpool for accepting gst_task_pool_push() operations.
+        <doc xml:space="preserve"
+             filename="gst/gsttaskpool.c"
+             line="183">Prepare the taskpool for accepting gst_task_pool_push() operations.
 
 MT safe.</doc>
+        <source-position filename="gst/gsttaskpool.h" line="77"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="pool" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstTaskPool</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaskpool.c"
+                 line="185">a #GstTaskPool</doc>
             <type name="TaskPool" c:type="GstTaskPool*"/>
           </instance-parameter>
         </parameters>
       </virtual-method>
       <virtual-method name="push" invoker="push" throws="1">
-        <doc xml:space="preserve">Start the execution of a new thread from @pool.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttaskpool.c"
+             line="227">Start the execution of a new thread from @pool.</doc>
+        <source-position filename="gst/gsttaskpool.h" line="80"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">a pointer that should be used
+          <doc xml:space="preserve"
+               filename="gst/gsttaskpool.c"
+               line="236">a pointer that should be used
 for the gst_task_pool_join function. This pointer can be %NULL, you
 must check @error to detect errors.</doc>
           <type name="gpointer" c:type="gpointer"/>
         </return-value>
         <parameters>
           <instance-parameter name="pool" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstTaskPool</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaskpool.c"
+                 line="229">a #GstTaskPool</doc>
             <type name="TaskPool" c:type="GstTaskPool*"/>
           </instance-parameter>
           <parameter name="func"
                      transfer-ownership="none"
                      scope="async"
                      closure="1">
-            <doc xml:space="preserve">the function to call</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaskpool.c"
+                 line="230">the function to call</doc>
             <type name="TaskPoolFunction" c:type="GstTaskPoolFunction"/>
           </parameter>
           <parameter name="user_data"
@@ -42343,85 +65324,115 @@ must check @error to detect errors.</doc>
                      nullable="1"
                      allow-none="1"
                      closure="1">
-            <doc xml:space="preserve">data to pass to @func</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaskpool.c"
+                 line="231">data to pass to @func</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
         </parameters>
       </virtual-method>
       <method name="cleanup" c:identifier="gst_task_pool_cleanup">
-        <doc xml:space="preserve">Wait for all tasks to be stopped. This is mainly used internally
+        <doc xml:space="preserve"
+             filename="gst/gsttaskpool.c"
+             line="205">Wait for all tasks to be stopped. This is mainly used internally
 to ensure proper cleanup of internal data structures in test suites.
 
 MT safe.</doc>
+        <source-position filename="gst/gsttaskpool.h" line="104"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="pool" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstTaskPool</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaskpool.c"
+                 line="207">a #GstTaskPool</doc>
             <type name="TaskPool" c:type="GstTaskPool*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="join" c:identifier="gst_task_pool_join">
-        <doc xml:space="preserve">Join a task and/or return it to the pool. @id is the id obtained from
+        <doc xml:space="preserve"
+             filename="gst/gsttaskpool.c"
+             line="263">Join a task and/or return it to the pool. @id is the id obtained from
 gst_task_pool_push().</doc>
+        <source-position filename="gst/gsttaskpool.h" line="101"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="pool" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstTaskPool</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaskpool.c"
+                 line="265">a #GstTaskPool</doc>
             <type name="TaskPool" c:type="GstTaskPool*"/>
           </instance-parameter>
           <parameter name="id"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">the id</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaskpool.c"
+                 line="266">the id</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
         </parameters>
       </method>
       <method name="prepare" c:identifier="gst_task_pool_prepare" throws="1">
-        <doc xml:space="preserve">Prepare the taskpool for accepting gst_task_pool_push() operations.
+        <doc xml:space="preserve"
+             filename="gst/gsttaskpool.c"
+             line="183">Prepare the taskpool for accepting gst_task_pool_push() operations.
 
 MT safe.</doc>
+        <source-position filename="gst/gsttaskpool.h" line="95"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="pool" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstTaskPool</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaskpool.c"
+                 line="185">a #GstTaskPool</doc>
             <type name="TaskPool" c:type="GstTaskPool*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="push" c:identifier="gst_task_pool_push" throws="1">
-        <doc xml:space="preserve">Start the execution of a new thread from @pool.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttaskpool.c"
+             line="227">Start the execution of a new thread from @pool.</doc>
+        <source-position filename="gst/gsttaskpool.h" line="98"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">a pointer that should be used
+          <doc xml:space="preserve"
+               filename="gst/gsttaskpool.c"
+               line="236">a pointer that should be used
 for the gst_task_pool_join function. This pointer can be %NULL, you
 must check @error to detect errors.</doc>
           <type name="gpointer" c:type="gpointer"/>
         </return-value>
         <parameters>
           <instance-parameter name="pool" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstTaskPool</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaskpool.c"
+                 line="229">a #GstTaskPool</doc>
             <type name="TaskPool" c:type="GstTaskPool*"/>
           </instance-parameter>
           <parameter name="func"
                      transfer-ownership="none"
                      scope="async"
                      closure="1">
-            <doc xml:space="preserve">the function to call</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaskpool.c"
+                 line="230">the function to call</doc>
             <type name="TaskPoolFunction" c:type="GstTaskPoolFunction"/>
           </parameter>
           <parameter name="user_data"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">data to pass to @func</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttaskpool.c"
+                 line="231">data to pass to @func</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
         </parameters>
@@ -42433,7 +65444,7 @@ must check @error to detect errors.</doc>
         <type name="GLib.ThreadPool" c:type="GThreadPool*"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -42441,19 +65452,27 @@ must check @error to detect errors.</doc>
     <record name="TaskPoolClass"
             c:type="GstTaskPoolClass"
             glib:is-gtype-struct-for="TaskPool">
-      <doc xml:space="preserve">The #GstTaskPoolClass object.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gsttaskpool.h"
+           line="63">The #GstTaskPoolClass object.</doc>
+      <source-position filename="gst/gsttaskpool.h" line="86"/>
       <field name="parent_class">
-        <doc xml:space="preserve">the parent class structure</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttaskpool.h"
+             line="65">the parent class structure</doc>
         <type name="ObjectClass" c:type="GstObjectClass"/>
       </field>
       <field name="prepare">
         <callback name="prepare" throws="1">
+          <source-position filename="gst/gsttaskpool.h" line="77"/>
           <return-value transfer-ownership="none">
             <type name="none" c:type="void"/>
           </return-value>
           <parameters>
             <parameter name="pool" transfer-ownership="none">
-              <doc xml:space="preserve">a #GstTaskPool</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gsttaskpool.c"
+                   line="185">a #GstTaskPool</doc>
               <type name="TaskPool" c:type="GstTaskPool*"/>
             </parameter>
           </parameters>
@@ -42461,12 +65480,15 @@ must check @error to detect errors.</doc>
       </field>
       <field name="cleanup">
         <callback name="cleanup">
+          <source-position filename="gst/gsttaskpool.h" line="78"/>
           <return-value transfer-ownership="none">
             <type name="none" c:type="void"/>
           </return-value>
           <parameters>
             <parameter name="pool" transfer-ownership="none">
-              <doc xml:space="preserve">a #GstTaskPool</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gsttaskpool.c"
+                   line="207">a #GstTaskPool</doc>
               <type name="TaskPool" c:type="GstTaskPool*"/>
             </parameter>
           </parameters>
@@ -42474,22 +65496,29 @@ must check @error to detect errors.</doc>
       </field>
       <field name="push">
         <callback name="push" throws="1">
+          <source-position filename="gst/gsttaskpool.h" line="80"/>
           <return-value transfer-ownership="none" nullable="1">
-            <doc xml:space="preserve">a pointer that should be used
+            <doc xml:space="preserve"
+                 filename="gst/gsttaskpool.c"
+                 line="236">a pointer that should be used
 for the gst_task_pool_join function. This pointer can be %NULL, you
 must check @error to detect errors.</doc>
             <type name="gpointer" c:type="gpointer"/>
           </return-value>
           <parameters>
             <parameter name="pool" transfer-ownership="none">
-              <doc xml:space="preserve">a #GstTaskPool</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gsttaskpool.c"
+                   line="229">a #GstTaskPool</doc>
               <type name="TaskPool" c:type="GstTaskPool*"/>
             </parameter>
             <parameter name="func"
                        transfer-ownership="none"
                        scope="async"
                        closure="2">
-              <doc xml:space="preserve">the function to call</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gsttaskpool.c"
+                   line="230">the function to call</doc>
               <type name="TaskPoolFunction" c:type="GstTaskPoolFunction"/>
             </parameter>
             <parameter name="user_data"
@@ -42497,7 +65526,9 @@ must check @error to detect errors.</doc>
                        nullable="1"
                        allow-none="1"
                        closure="2">
-              <doc xml:space="preserve">data to pass to @func</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gsttaskpool.c"
+                   line="231">data to pass to @func</doc>
               <type name="gpointer" c:type="gpointer"/>
             </parameter>
           </parameters>
@@ -42505,32 +65536,40 @@ must check @error to detect errors.</doc>
       </field>
       <field name="join">
         <callback name="join">
+          <source-position filename="gst/gsttaskpool.h" line="82"/>
           <return-value transfer-ownership="none">
             <type name="none" c:type="void"/>
           </return-value>
           <parameters>
             <parameter name="pool" transfer-ownership="none">
-              <doc xml:space="preserve">a #GstTaskPool</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gsttaskpool.c"
+                   line="265">a #GstTaskPool</doc>
               <type name="TaskPool" c:type="GstTaskPool*"/>
             </parameter>
             <parameter name="id"
                        transfer-ownership="none"
                        nullable="1"
                        allow-none="1">
-              <doc xml:space="preserve">the id</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gsttaskpool.c"
+                   line="266">the id</doc>
               <type name="gpointer" c:type="gpointer"/>
             </parameter>
           </parameters>
         </callback>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
     </record>
     <callback name="TaskPoolFunction" c:type="GstTaskPoolFunction">
-      <doc xml:space="preserve">Task function, see gst_task_pool_push().</doc>
+      <doc xml:space="preserve"
+           filename="gst/gsttaskpool.h"
+           line="41">Task function, see gst_task_pool_push().</doc>
+      <source-position filename="gst/gsttaskpool.h" line="47"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
@@ -42540,49 +65579,67 @@ must check @error to detect errors.</doc>
                    nullable="1"
                    allow-none="1"
                    closure="0">
-          <doc xml:space="preserve">user data for the task function</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsttaskpool.h"
+               line="43">user data for the task function</doc>
           <type name="gpointer" c:type="void*"/>
         </parameter>
       </parameters>
     </callback>
     <record name="TaskPrivate" c:type="GstTaskPrivate" disguised="1">
+      <source-position filename="gst/gsttask.h" line="51"/>
     </record>
     <enumeration name="TaskState"
                  glib:type-name="GstTaskState"
                  glib:get-type="gst_task_state_get_type"
                  c:type="GstTaskState">
-      <doc xml:space="preserve">The different states a task can be in</doc>
+      <doc xml:space="preserve"
+           filename="gst/gsttask.h"
+           line="53">The different states a task can be in</doc>
       <member name="started"
               value="0"
               c:identifier="GST_TASK_STARTED"
               glib:nick="started">
-        <doc xml:space="preserve">the task is started and running</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttask.h"
+             line="55">the task is started and running</doc>
       </member>
       <member name="stopped"
               value="1"
               c:identifier="GST_TASK_STOPPED"
               glib:nick="stopped">
-        <doc xml:space="preserve">the task is stopped</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttask.h"
+             line="56">the task is stopped</doc>
       </member>
       <member name="paused"
               value="2"
               c:identifier="GST_TASK_PAUSED"
               glib:nick="paused">
-        <doc xml:space="preserve">the task is paused</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttask.h"
+             line="57">the task is paused</doc>
       </member>
     </enumeration>
     <callback name="TaskThreadFunc" c:type="GstTaskThreadFunc">
-      <doc xml:space="preserve">Custom GstTask thread callback functions that can be installed.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gsttask.h"
+           line="112">Custom GstTask thread callback functions that can be installed.</doc>
+      <source-position filename="gst/gsttask.h" line="120"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="task" transfer-ownership="none">
-          <doc xml:space="preserve">The #GstTask</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsttask.h"
+               line="114">The #GstTask</doc>
           <type name="Task" c:type="GstTask*"/>
         </parameter>
         <parameter name="thread" transfer-ownership="none">
-          <doc xml:space="preserve">The #GThread</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsttask.h"
+               line="115">The #GThread</doc>
           <type name="GLib.Thread" c:type="GThread*"/>
         </parameter>
         <parameter name="user_data"
@@ -42590,19 +65647,28 @@ must check @error to detect errors.</doc>
                    nullable="1"
                    allow-none="1"
                    closure="2">
-          <doc xml:space="preserve">user data</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsttask.h"
+               line="116">user data</doc>
           <type name="gpointer" c:type="gpointer"/>
         </parameter>
       </parameters>
     </callback>
     <record name="TimedValue" c:type="GstTimedValue">
-      <doc xml:space="preserve">Structure for saving a timestamp and a value.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstcontrolsource.h"
+           line="52">Structure for saving a timestamp and a value.</doc>
+      <source-position filename="gst/gstcontrolsource.h" line="63"/>
       <field name="timestamp" writable="1">
-        <doc xml:space="preserve">timestamp of the value change</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstcontrolsource.h"
+             line="54">timestamp of the value change</doc>
         <type name="ClockTime" c:type="GstClockTime"/>
       </field>
       <field name="value" writable="1">
-        <doc xml:space="preserve">the corresponding value</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstcontrolsource.h"
+             line="55">the corresponding value</doc>
         <type name="gdouble" c:type="gdouble"/>
       </field>
     </record>
@@ -42611,7 +65677,9 @@ must check @error to detect errors.</doc>
             glib:type-name="GstToc"
             glib:get-type="gst_toc_get_type"
             c:symbol-prefix="toc">
-      <doc xml:space="preserve">#GstToc functions are used to create/free #GstToc and #GstTocEntry structures.
+      <doc xml:space="preserve"
+           filename="gst/gsttoc.c"
+           line="22">#GstToc functions are used to create/free #GstToc and #GstTocEntry structures.
 Also they are used to convert #GstToc into #GstStructure and vice versa.
 
 #GstToc lets you to inform other elements in pipeline or application that playing
@@ -42656,37 +65724,53 @@ alternative type entry) with track entries underneath that node; or even
 multiple top-level edition nodes (or some other alternative type entries)
 each with track entries underneath, in case the source file has extracted
 a track listing from different sources).</doc>
+      <source-position filename="gst/gsttoc.h" line="41"/>
       <constructor name="new" c:identifier="gst_toc_new">
-        <doc xml:space="preserve">Create a new #GstToc structure.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttoc.c"
+             line="126">Create a new #GstToc structure.</doc>
+        <source-position filename="gst/gsttoc.h" line="141"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">newly allocated #GstToc structure, free it
+          <doc xml:space="preserve"
+               filename="gst/gsttoc.c"
+               line="132">newly allocated #GstToc structure, free it
     with gst_toc_unref().</doc>
           <type name="Toc" c:type="GstToc*"/>
         </return-value>
         <parameters>
           <parameter name="scope" transfer-ownership="none">
-            <doc xml:space="preserve">scope of this TOC</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttoc.c"
+                 line="128">scope of this TOC</doc>
             <type name="TocScope" c:type="GstTocScope"/>
           </parameter>
         </parameters>
       </constructor>
       <method name="append_entry" c:identifier="gst_toc_append_entry">
-        <doc xml:space="preserve">Appends the #GstTocEntry @entry to @toc.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttoc.c"
+             line="226">Appends the #GstTocEntry @entry to @toc.</doc>
+        <source-position filename="gst/gsttoc.h" line="156"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="toc" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstToc instance</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttoc.c"
+                 line="228">A #GstToc instance</doc>
             <type name="Toc" c:type="GstToc*"/>
           </instance-parameter>
           <parameter name="entry" transfer-ownership="full">
-            <doc xml:space="preserve">A #GstTocEntry</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttoc.c"
+                 line="229">A #GstTocEntry</doc>
             <type name="TocEntry" c:type="GstTocEntry*"/>
           </parameter>
         </parameters>
       </method>
       <method name="dump" c:identifier="gst_toc_dump">
+        <source-position filename="gst/gsttoc.h" line="162"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
@@ -42697,101 +65781,145 @@ a track listing from different sources).</doc>
         </parameters>
       </method>
       <method name="find_entry" c:identifier="gst_toc_find_entry">
-        <doc xml:space="preserve">Find #GstTocEntry with given @uid in the @toc.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttoc.c"
+             line="365">Find #GstTocEntry with given @uid in the @toc.</doc>
+        <source-position filename="gst/gsttoc.h" line="180"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">#GstTocEntry with specified
+          <doc xml:space="preserve"
+               filename="gst/gsttoc.c"
+               line="372">#GstTocEntry with specified
 @uid from the @toc, or %NULL if not found.</doc>
           <type name="TocEntry" c:type="GstTocEntry*"/>
         </return-value>
         <parameters>
           <instance-parameter name="toc" transfer-ownership="none">
-            <doc xml:space="preserve">#GstToc to search in.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttoc.c"
+                 line="367">#GstToc to search in.</doc>
             <type name="Toc" c:type="const GstToc*"/>
           </instance-parameter>
           <parameter name="uid" transfer-ownership="none">
-            <doc xml:space="preserve">UID to find #GstTocEntry with.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttoc.c"
+                 line="368">UID to find #GstTocEntry with.</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_entries" c:identifier="gst_toc_get_entries">
-        <doc xml:space="preserve">Gets the list of #GstTocEntry of @toc.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">A #GList of #GstTocEntry for @entry</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttoc.c"
+             line="251">Gets the list of #GstTocEntry of @toc.</doc>
+        <source-position filename="gst/gsttoc.h" line="159"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gsttoc.c"
+               line="257">A #GList of #GstTocEntry for @entry</doc>
           <type name="GLib.List" c:type="GList*">
             <type name="TocEntry"/>
           </type>
         </return-value>
         <parameters>
           <instance-parameter name="toc" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstToc instance</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttoc.c"
+                 line="253">A #GstToc instance</doc>
             <type name="Toc" c:type="const GstToc*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_scope" c:identifier="gst_toc_get_scope">
+        <source-position filename="gst/gsttoc.h" line="144"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">scope of @toc</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsttoc.c"
+               line="159">scope of @toc</doc>
           <type name="TocScope" c:type="GstTocScope"/>
         </return-value>
         <parameters>
           <instance-parameter name="toc" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstToc instance</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttoc.c"
+                 line="157">a #GstToc instance</doc>
             <type name="Toc" c:type="const GstToc*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_tags" c:identifier="gst_toc_get_tags">
-        <doc xml:space="preserve">Gets the tags for @toc.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">A #GstTagList for @entry</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttoc.c"
+             line="210">Gets the tags for @toc.</doc>
+        <source-position filename="gst/gsttoc.h" line="153"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gsttoc.c"
+               line="216">A #GstTagList for @entry</doc>
           <type name="TagList" c:type="GstTagList*"/>
         </return-value>
         <parameters>
           <instance-parameter name="toc" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstToc instance</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttoc.c"
+                 line="212">A #GstToc instance</doc>
             <type name="Toc" c:type="const GstToc*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="merge_tags" c:identifier="gst_toc_merge_tags">
-        <doc xml:space="preserve">Merge @tags into the existing tags of @toc using @mode.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttoc.c"
+             line="187">Merge @tags into the existing tags of @toc using @mode.</doc>
+        <source-position filename="gst/gsttoc.h" line="150"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="toc" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstToc instance</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttoc.c"
+                 line="189">A #GstToc instance</doc>
             <type name="Toc" c:type="GstToc*"/>
           </instance-parameter>
           <parameter name="tags"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">A #GstTagList or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttoc.c"
+                 line="190">A #GstTagList or %NULL</doc>
             <type name="TagList" c:type="GstTagList*"/>
           </parameter>
           <parameter name="mode" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstTagMergeMode</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttoc.c"
+                 line="191">A #GstTagMergeMode</doc>
             <type name="TagMergeMode" c:type="GstTagMergeMode"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_tags" c:identifier="gst_toc_set_tags">
-        <doc xml:space="preserve">Set a #GstTagList with tags for the complete @toc.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttoc.c"
+             line="169">Set a #GstTagList with tags for the complete @toc.</doc>
+        <source-position filename="gst/gsttoc.h" line="147"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="toc" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstToc instance</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttoc.c"
+                 line="171">A #GstToc instance</doc>
             <type name="Toc" c:type="GstToc*"/>
           </instance-parameter>
           <parameter name="tags"
                      transfer-ownership="full"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">A #GstTagList or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttoc.c"
+                 line="172">A #GstTagList or %NULL</doc>
             <type name="TagList" c:type="GstTagList*"/>
           </parameter>
         </parameters>
@@ -42802,49 +65930,71 @@ a track listing from different sources).</doc>
             glib:type-name="GstTocEntry"
             glib:get-type="gst_toc_entry_get_type"
             c:symbol-prefix="toc_entry">
+      <source-position filename="gst/gsttoc.h" line="40"/>
       <constructor name="new" c:identifier="gst_toc_entry_new">
-        <doc xml:space="preserve">Create new #GstTocEntry structure.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttoc.c"
+             line="286">Create new #GstTocEntry structure.</doc>
+        <source-position filename="gst/gsttoc.h" line="172"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">newly allocated #GstTocEntry structure, free it with gst_toc_entry_unref().</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsttoc.c"
+               line="293">newly allocated #GstTocEntry structure, free it with gst_toc_entry_unref().</doc>
           <type name="TocEntry" c:type="GstTocEntry*"/>
         </return-value>
         <parameters>
           <parameter name="type" transfer-ownership="none">
-            <doc xml:space="preserve">entry type.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttoc.c"
+                 line="288">entry type.</doc>
             <type name="TocEntryType" c:type="GstTocEntryType"/>
           </parameter>
           <parameter name="uid" transfer-ownership="none">
-            <doc xml:space="preserve">unique ID (UID) in the whole TOC.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttoc.c"
+                 line="289">unique ID (UID) in the whole TOC.</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </constructor>
       <method name="append_sub_entry"
               c:identifier="gst_toc_entry_append_sub_entry">
-        <doc xml:space="preserve">Appends the #GstTocEntry @subentry to @entry.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttoc.c"
+             line="666">Appends the #GstTocEntry @subentry to @entry.</doc>
+        <source-position filename="gst/gsttoc.h" line="189"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="entry" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstTocEntry instance</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttoc.c"
+                 line="668">A #GstTocEntry instance</doc>
             <type name="TocEntry" c:type="GstTocEntry*"/>
           </instance-parameter>
           <parameter name="subentry" transfer-ownership="full">
-            <doc xml:space="preserve">A #GstTocEntry</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttoc.c"
+                 line="669">A #GstTocEntry</doc>
             <type name="TocEntry" c:type="GstTocEntry*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_entry_type"
               c:identifier="gst_toc_entry_get_entry_type">
+        <source-position filename="gst/gsttoc.h" line="183"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">@entry's entry type</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsttoc.c"
+               line="612">@entry's entry type</doc>
           <type name="TocEntryType" c:type="GstTocEntryType"/>
         </return-value>
         <parameters>
           <instance-parameter name="entry" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstTocEntry</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttoc.c"
+                 line="610">a #GstTocEntry</doc>
             <type name="TocEntry" c:type="const GstTocEntry*"/>
           </instance-parameter>
         </parameters>
@@ -42852,18 +66002,25 @@ a track listing from different sources).</doc>
       <method name="get_loop"
               c:identifier="gst_toc_entry_get_loop"
               version="1.4">
-        <doc xml:space="preserve">Get @loop_type and @repeat_count values from the @entry and write them into
+        <doc xml:space="preserve"
+             filename="gst/gsttoc.c"
+             line="543">Get @loop_type and @repeat_count values from the @entry and write them into
 appropriate storages. Loops are e.g. used by sampled instruments. GStreamer
 is not automatically applying the loop. The application can process this
 meta data and use it e.g. to send a seek-event to loop a section.</doc>
+        <source-position filename="gst/gsttoc.h" line="219"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if all non-%NULL storage pointers were filled with appropriate
+          <doc xml:space="preserve"
+               filename="gst/gsttoc.c"
+               line="556">%TRUE if all non-%NULL storage pointers were filled with appropriate
 values, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="entry" transfer-ownership="none">
-            <doc xml:space="preserve">#GstTocEntry to get values from.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttoc.c"
+                 line="545">#GstTocEntry to get values from.</doc>
             <type name="TocEntry" c:type="const GstTocEntry*"/>
           </instance-parameter>
           <parameter name="loop_type"
@@ -42872,7 +66029,9 @@ values, %FALSE otherwise.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">the storage for the loop_type
+            <doc xml:space="preserve"
+                 filename="gst/gsttoc.c"
+                 line="546">the storage for the loop_type
             value, leave %NULL if not need.</doc>
             <type name="TocLoopType" c:type="GstTocLoopType*"/>
           </parameter>
@@ -42882,37 +66041,53 @@ values, %FALSE otherwise.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">the storage for the repeat_count
+            <doc xml:space="preserve"
+                 filename="gst/gsttoc.c"
+                 line="548">the storage for the repeat_count
                value, leave %NULL if not need.</doc>
             <type name="gint" c:type="gint*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_parent" c:identifier="gst_toc_entry_get_parent">
-        <doc xml:space="preserve">Gets the parent #GstTocEntry of @entry.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttoc.c"
+             line="782">Gets the parent #GstTocEntry of @entry.</doc>
+        <source-position filename="gst/gsttoc.h" line="225"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">The parent #GstTocEntry of @entry</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsttoc.c"
+               line="788">The parent #GstTocEntry of @entry</doc>
           <type name="TocEntry" c:type="GstTocEntry*"/>
         </return-value>
         <parameters>
           <instance-parameter name="entry" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstTocEntry instance</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttoc.c"
+                 line="784">A #GstTocEntry instance</doc>
             <type name="TocEntry" c:type="GstTocEntry*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_start_stop_times"
               c:identifier="gst_toc_entry_get_start_stop_times">
-        <doc xml:space="preserve">Get @start and @stop values from the @entry and write them into appropriate
+        <doc xml:space="preserve"
+             filename="gst/gsttoc.c"
+             line="495">Get @start and @stop values from the @entry and write them into appropriate
 storages.</doc>
+        <source-position filename="gst/gsttoc.h" line="213"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if all non-%NULL storage pointers were filled with appropriate
+          <doc xml:space="preserve"
+               filename="gst/gsttoc.c"
+               line="506">%TRUE if all non-%NULL storage pointers were filled with appropriate
 values, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="entry" transfer-ownership="none">
-            <doc xml:space="preserve">#GstTocEntry to get values from.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttoc.c"
+                 line="497">#GstTocEntry to get values from.</doc>
             <type name="TocEntry" c:type="const GstTocEntry*"/>
           </instance-parameter>
           <parameter name="start"
@@ -42921,7 +66096,9 @@ values, %FALSE otherwise.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">the storage for the start value, leave
+            <doc xml:space="preserve"
+                 filename="gst/gsttoc.c"
+                 line="498">the storage for the start value, leave
   %NULL if not need.</doc>
             <type name="gint64" c:type="gint64*"/>
           </parameter>
@@ -42931,7 +66108,9 @@ values, %FALSE otherwise.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">the storage for the stop value, leave
+            <doc xml:space="preserve"
+                 filename="gst/gsttoc.c"
+                 line="500">the storage for the stop value, leave
   %NULL if not need.</doc>
             <type name="gint64" c:type="gint64*"/>
           </parameter>
@@ -42939,103 +66118,150 @@ values, %FALSE otherwise.</doc>
       </method>
       <method name="get_sub_entries"
               c:identifier="gst_toc_entry_get_sub_entries">
-        <doc xml:space="preserve">Gets the sub-entries of @entry.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">A #GList of #GstTocEntry of @entry</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttoc.c"
+             line="692">Gets the sub-entries of @entry.</doc>
+        <source-position filename="gst/gsttoc.h" line="192"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gsttoc.c"
+               line="698">A #GList of #GstTocEntry of @entry</doc>
           <type name="GLib.List" c:type="GList*">
             <type name="TocEntry"/>
           </type>
         </return-value>
         <parameters>
           <instance-parameter name="entry" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstTocEntry instance</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttoc.c"
+                 line="694">A #GstTocEntry instance</doc>
             <type name="TocEntry" c:type="const GstTocEntry*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_tags" c:identifier="gst_toc_entry_get_tags">
-        <doc xml:space="preserve">Gets the tags for @entry.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">A #GstTagList for @entry</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttoc.c"
+             line="750">Gets the tags for @entry.</doc>
+        <source-position filename="gst/gsttoc.h" line="201"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gsttoc.c"
+               line="756">A #GstTagList for @entry</doc>
           <type name="TagList" c:type="GstTagList*"/>
         </return-value>
         <parameters>
           <instance-parameter name="entry" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstTocEntry instance</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttoc.c"
+                 line="752">A #GstTocEntry instance</doc>
             <type name="TocEntry" c:type="const GstTocEntry*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_toc" c:identifier="gst_toc_entry_get_toc">
-        <doc xml:space="preserve">Gets the parent #GstToc of @entry.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The parent #GstToc of @entry</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttoc.c"
+             line="766">Gets the parent #GstToc of @entry.</doc>
+        <source-position filename="gst/gsttoc.h" line="222"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gsttoc.c"
+               line="772">The parent #GstToc of @entry</doc>
           <type name="Toc" c:type="GstToc*"/>
         </return-value>
         <parameters>
           <instance-parameter name="entry" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstTocEntry instance</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttoc.c"
+                 line="768">A #GstTocEntry instance</doc>
             <type name="TocEntry" c:type="GstTocEntry*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_uid" c:identifier="gst_toc_entry_get_uid">
-        <doc xml:space="preserve">Gets the UID of @entry.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The UID of @entry</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttoc.c"
+             line="650">Gets the UID of @entry.</doc>
+        <source-position filename="gst/gsttoc.h" line="186"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gsttoc.c"
+               line="656">The UID of @entry</doc>
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
         <parameters>
           <instance-parameter name="entry" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstTocEntry instance</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttoc.c"
+                 line="652">A #GstTocEntry instance</doc>
             <type name="TocEntry" c:type="const GstTocEntry*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="is_alternative"
               c:identifier="gst_toc_entry_is_alternative">
+        <source-position filename="gst/gsttoc.h" line="204"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if @entry's type is an alternative type, otherwise %FALSE</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsttoc.c"
+               line="626">%TRUE if @entry's type is an alternative type, otherwise %FALSE</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="entry" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstTocEntry</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttoc.c"
+                 line="624">a #GstTocEntry</doc>
             <type name="TocEntry" c:type="const GstTocEntry*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="is_sequence" c:identifier="gst_toc_entry_is_sequence">
+        <source-position filename="gst/gsttoc.h" line="207"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if @entry's type is a sequence type, otherwise %FALSE</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsttoc.c"
+               line="640">%TRUE if @entry's type is a sequence type, otherwise %FALSE</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="entry" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstTocEntry</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttoc.c"
+                 line="638">a #GstTocEntry</doc>
             <type name="TocEntry" c:type="const GstTocEntry*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="merge_tags" c:identifier="gst_toc_entry_merge_tags">
-        <doc xml:space="preserve">Merge @tags into the existing tags of @entry using @mode.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttoc.c"
+             line="726">Merge @tags into the existing tags of @entry using @mode.</doc>
+        <source-position filename="gst/gsttoc.h" line="198"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="entry" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstTocEntry instance</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttoc.c"
+                 line="728">A #GstTocEntry instance</doc>
             <type name="TocEntry" c:type="GstTocEntry*"/>
           </instance-parameter>
           <parameter name="tags"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">A #GstTagList or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttoc.c"
+                 line="729">A #GstTagList or %NULL</doc>
             <type name="TagList" c:type="GstTagList*"/>
           </parameter>
           <parameter name="mode" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstTagMergeMode</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttoc.c"
+                 line="730">A #GstTagMergeMode</doc>
             <type name="TagMergeMode" c:type="GstTagMergeMode"/>
           </parameter>
         </parameters>
@@ -43043,61 +66269,86 @@ values, %FALSE otherwise.</doc>
       <method name="set_loop"
               c:identifier="gst_toc_entry_set_loop"
               version="1.4">
-        <doc xml:space="preserve">Set @loop_type and @repeat_count values for the @entry.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttoc.c"
+             line="523">Set @loop_type and @repeat_count values for the @entry.</doc>
+        <source-position filename="gst/gsttoc.h" line="216"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="entry" transfer-ownership="none">
-            <doc xml:space="preserve">#GstTocEntry to set values.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttoc.c"
+                 line="525">#GstTocEntry to set values.</doc>
             <type name="TocEntry" c:type="GstTocEntry*"/>
           </instance-parameter>
           <parameter name="loop_type" transfer-ownership="none">
-            <doc xml:space="preserve">loop_type value to set.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttoc.c"
+                 line="526">loop_type value to set.</doc>
             <type name="TocLoopType" c:type="GstTocLoopType"/>
           </parameter>
           <parameter name="repeat_count" transfer-ownership="none">
-            <doc xml:space="preserve">repeat_count value to set.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttoc.c"
+                 line="527">repeat_count value to set.</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_start_stop_times"
               c:identifier="gst_toc_entry_set_start_stop_times">
-        <doc xml:space="preserve">Set @start and @stop values for the @entry.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttoc.c"
+             line="477">Set @start and @stop values for the @entry.</doc>
+        <source-position filename="gst/gsttoc.h" line="210"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="entry" transfer-ownership="none">
-            <doc xml:space="preserve">#GstTocEntry to set values.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttoc.c"
+                 line="479">#GstTocEntry to set values.</doc>
             <type name="TocEntry" c:type="GstTocEntry*"/>
           </instance-parameter>
           <parameter name="start" transfer-ownership="none">
-            <doc xml:space="preserve">start value to set.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttoc.c"
+                 line="480">start value to set.</doc>
             <type name="gint64" c:type="gint64"/>
           </parameter>
           <parameter name="stop" transfer-ownership="none">
-            <doc xml:space="preserve">stop value to set.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttoc.c"
+                 line="481">stop value to set.</doc>
             <type name="gint64" c:type="gint64"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_tags" c:identifier="gst_toc_entry_set_tags">
-        <doc xml:space="preserve">Set a #GstTagList with tags for the complete @entry.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttoc.c"
+             line="708">Set a #GstTagList with tags for the complete @entry.</doc>
+        <source-position filename="gst/gsttoc.h" line="195"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="entry" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstTocEntry instance</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttoc.c"
+                 line="710">A #GstTocEntry instance</doc>
             <type name="TocEntry" c:type="GstTocEntry*"/>
           </instance-parameter>
           <parameter name="tags"
                      transfer-ownership="full"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">A #GstTagList or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttoc.c"
+                 line="711">A #GstTagList or %NULL</doc>
             <type name="TagList" c:type="GstTagList*"/>
           </parameter>
         </parameters>
@@ -43107,62 +66358,85 @@ values, %FALSE otherwise.</doc>
                  glib:type-name="GstTocEntryType"
                  glib:get-type="gst_toc_entry_type_get_type"
                  c:type="GstTocEntryType">
-      <doc xml:space="preserve">The different types of TOC entries (see #GstTocEntry).
+      <doc xml:space="preserve"
+           filename="gst/gsttoc.h"
+           line="61">The different types of TOC entries (see #GstTocEntry).
 
 There are two types of TOC entries: alternatives or parts in a sequence.</doc>
       <member name="angle"
               value="-3"
               c:identifier="GST_TOC_ENTRY_TYPE_ANGLE"
               glib:nick="angle">
-        <doc xml:space="preserve">entry is an angle (i.e. an alternative)</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttoc.h"
+             line="63">entry is an angle (i.e. an alternative)</doc>
       </member>
       <member name="version"
               value="-2"
               c:identifier="GST_TOC_ENTRY_TYPE_VERSION"
               glib:nick="version">
-        <doc xml:space="preserve">entry is a version (i.e. alternative)</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttoc.h"
+             line="64">entry is a version (i.e. alternative)</doc>
       </member>
       <member name="edition"
               value="-1"
               c:identifier="GST_TOC_ENTRY_TYPE_EDITION"
               glib:nick="edition">
-        <doc xml:space="preserve">entry is an edition (i.e. alternative)</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttoc.h"
+             line="65">entry is an edition (i.e. alternative)</doc>
       </member>
       <member name="invalid"
               value="0"
               c:identifier="GST_TOC_ENTRY_TYPE_INVALID"
               glib:nick="invalid">
-        <doc xml:space="preserve">invalid entry type value</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttoc.h"
+             line="66">invalid entry type value</doc>
       </member>
       <member name="title"
               value="1"
               c:identifier="GST_TOC_ENTRY_TYPE_TITLE"
               glib:nick="title">
-        <doc xml:space="preserve">entry is a title (i.e. a part of a sequence)</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttoc.h"
+             line="67">entry is a title (i.e. a part of a sequence)</doc>
       </member>
       <member name="track"
               value="2"
               c:identifier="GST_TOC_ENTRY_TYPE_TRACK"
               glib:nick="track">
-        <doc xml:space="preserve">entry is a track (i.e. a part of a sequence)</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttoc.h"
+             line="68">entry is a track (i.e. a part of a sequence)</doc>
       </member>
       <member name="chapter"
               value="3"
               c:identifier="GST_TOC_ENTRY_TYPE_CHAPTER"
               glib:nick="chapter">
-        <doc xml:space="preserve">entry is a chapter (i.e. a part of a sequence)</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttoc.h"
+             line="69">entry is a chapter (i.e. a part of a sequence)</doc>
       </member>
       <function name="get_nick" c:identifier="gst_toc_entry_type_get_nick">
-        <doc xml:space="preserve">Converts @type to a string representation.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">Returns a human-readable string for @type. This string is
+        <doc xml:space="preserve"
+             filename="gst/gsttoc.c"
+             line="576">Converts @type to a string representation.</doc>
+        <source-position filename="gst/gsttoc.h" line="229"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gsttoc.c"
+               line="582">Returns a human-readable string for @type. This string is
    only for debugging purpose and should not be displayed in a user
    interface.</doc>
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
         <parameters>
           <parameter name="type" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstTocEntryType.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttoc.c"
+                 line="578">a #GstTocEntryType.</doc>
             <type name="TocEntryType" c:type="GstTocEntryType"/>
           </parameter>
         </parameters>
@@ -43173,50 +66447,66 @@ There are two types of TOC entries: alternatives or parts in a sequence.</doc>
                  glib:type-name="GstTocLoopType"
                  glib:get-type="gst_toc_loop_type_get_type"
                  c:type="GstTocLoopType">
-      <doc xml:space="preserve">How a #GstTocEntry should be repeated. By default, entries are played a
+      <doc xml:space="preserve"
+           filename="gst/gsttoc.h"
+           line="101">How a #GstTocEntry should be repeated. By default, entries are played a
 single time.</doc>
       <member name="none"
               value="0"
               c:identifier="GST_TOC_LOOP_NONE"
               glib:nick="none">
-        <doc xml:space="preserve">single forward playback</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttoc.h"
+             line="103">single forward playback</doc>
       </member>
       <member name="forward"
               value="1"
               c:identifier="GST_TOC_LOOP_FORWARD"
               glib:nick="forward">
-        <doc xml:space="preserve">repeat forward</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttoc.h"
+             line="104">repeat forward</doc>
       </member>
       <member name="reverse"
               value="2"
               c:identifier="GST_TOC_LOOP_REVERSE"
               glib:nick="reverse">
-        <doc xml:space="preserve">repeat backward</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttoc.h"
+             line="105">repeat backward</doc>
       </member>
       <member name="ping_pong"
               value="3"
               c:identifier="GST_TOC_LOOP_PING_PONG"
               glib:nick="ping-pong">
-        <doc xml:space="preserve">repeat forward and backward</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttoc.h"
+             line="106">repeat forward and backward</doc>
       </member>
     </enumeration>
     <enumeration name="TocScope"
                  glib:type-name="GstTocScope"
                  glib:get-type="gst_toc_scope_get_type"
                  c:type="GstTocScope">
-      <doc xml:space="preserve">The scope of a TOC.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gsttoc.h"
+           line="43">The scope of a TOC.</doc>
       <member name="global"
               value="1"
               c:identifier="GST_TOC_SCOPE_GLOBAL"
               glib:nick="global">
-        <doc xml:space="preserve">global TOC representing all selectable options
+        <doc xml:space="preserve"
+             filename="gst/gsttoc.h"
+             line="45">global TOC representing all selectable options
     (this is what applications are usually interested in)</doc>
       </member>
       <member name="current"
               value="2"
               c:identifier="GST_TOC_SCOPE_CURRENT"
               glib:nick="current">
-        <doc xml:space="preserve">TOC for the currently active/selected stream
+        <doc xml:space="preserve"
+             filename="gst/gsttoc.h"
+             line="47">TOC for the currently active/selected stream
     (this is a TOC representing the current stream from start to EOS,
     and is what a TOC writer / muxer is usually interested in; it will
     usually be a subset of the global TOC, e.g. just the chapters of
@@ -43230,7 +66520,9 @@ single time.</doc>
                glib:type-name="GstTocSetter"
                glib:get-type="gst_toc_setter_get_type"
                glib:type-struct="TocSetterInterface">
-      <doc xml:space="preserve">Element interface that allows setting of the TOC.
+      <doc xml:space="preserve"
+           filename="gst/gsttocsetter.c"
+           line="22">Element interface that allows setting of the TOC.
 
 Elements that support some kind of chapters or editions (or tracks like in
 the FLAC cue sheet) will implement this interface.
@@ -43244,51 +66536,71 @@ and set TOC using gst_toc_setter_set_toc().
 Elements implementing the #GstTocSetter interface can extend existing TOC
 by getting extend UID for that (you can use gst_toc_find_entry() to retrieve it)
 with any TOC entries received from downstream.</doc>
+      <source-position filename="gst/gsttocsetter.h" line="55"/>
       <prerequisite name="Element"/>
       <method name="get_toc" c:identifier="gst_toc_setter_get_toc">
-        <doc xml:space="preserve">Return current TOC the setter uses. The TOC should not be
+        <doc xml:space="preserve"
+             filename="gst/gsttocsetter.c"
+             line="124">Return current TOC the setter uses. The TOC should not be
 modified without making it writable first.</doc>
+        <source-position filename="gst/gsttocsetter.h" line="64"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">TOC set, or %NULL. Unref with
+          <doc xml:space="preserve"
+               filename="gst/gsttocsetter.c"
+               line="131">TOC set, or %NULL. Unref with
     gst_toc_unref() when no longer needed</doc>
           <type name="Toc" c:type="GstToc*"/>
         </return-value>
         <parameters>
           <instance-parameter name="setter" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstTocSetter.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttocsetter.c"
+                 line="126">a #GstTocSetter.</doc>
             <type name="TocSetter" c:type="GstTocSetter*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="reset" c:identifier="gst_toc_setter_reset">
-        <doc xml:space="preserve">Reset the internal TOC. Elements should call this from within the
+        <doc xml:space="preserve"
+             filename="gst/gsttocsetter.c"
+             line="109">Reset the internal TOC. Elements should call this from within the
 state-change handler.</doc>
+        <source-position filename="gst/gsttocsetter.h" line="61"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="setter" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstTocSetter.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttocsetter.c"
+                 line="111">a #GstTocSetter.</doc>
             <type name="TocSetter" c:type="GstTocSetter*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="set_toc" c:identifier="gst_toc_setter_set_toc">
-        <doc xml:space="preserve">Set the given TOC on the setter. Previously set TOC will be
+        <doc xml:space="preserve"
+             filename="gst/gsttocsetter.c"
+             line="153">Set the given TOC on the setter. Previously set TOC will be
 unreffed before setting a new one.</doc>
+        <source-position filename="gst/gsttocsetter.h" line="67"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="setter" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstTocSetter.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttocsetter.c"
+                 line="155">a #GstTocSetter.</doc>
             <type name="TocSetter" c:type="GstTocSetter*"/>
           </instance-parameter>
           <parameter name="toc"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">a #GstToc to set.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttocsetter.c"
+                 line="156">a #GstToc to set.</doc>
             <type name="Toc" c:type="GstToc*"/>
           </parameter>
         </parameters>
@@ -43297,24 +66609,69 @@ unreffed before setting a new one.</doc>
     <record name="TocSetterInterface"
             c:type="GstTocSetterInterface"
             glib:is-gtype-struct-for="TocSetter">
-      <doc xml:space="preserve">#GstTocSetterInterface interface.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gsttocsetter.h"
+           line="41">#GstTocSetterInterface interface.</doc>
+      <source-position filename="gst/gsttocsetter.h" line="55"/>
       <field name="g_iface">
-        <doc xml:space="preserve">parent interface type.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttocsetter.h"
+             line="43">parent interface type.</doc>
         <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
       </field>
     </record>
     <class name="Tracer"
            c:symbol-prefix="tracer"
            c:type="GstTracer"
+           version="1.8"
            parent="Object"
            abstract="1"
            glib:type-name="GstTracer"
            glib:get-type="gst_tracer_get_type"
            glib:type-struct="TracerClass">
-      <doc xml:space="preserve">Tracing modules will subclass #GstTracer and register through
+      <doc xml:space="preserve"
+           filename="gst/gsttracer.c"
+           line="22">Tracing modules will subclass #GstTracer and register through
 gst_tracer_register(). Modules can attach to various hook-types - see
 gst_tracing_register_hook(). When invoked they receive hook specific
 contextual data, which they must not modify.</doc>
+      <source-position filename="gst/gsttracer.h" line="61"/>
+      <function name="register" c:identifier="gst_tracer_register">
+        <doc xml:space="preserve"
+             filename="gst/gsttracer.c"
+             line="133">Create a new tracer-factory  capable of instantiating objects of the
+@type and add the factory to @plugin.</doc>
+        <source-position filename="gst/gsttracer.h" line="75"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gsttracer.c"
+               line="142">%TRUE, if the registering succeeded, %FALSE on error</doc>
+          <type name="gboolean" c:type="gboolean"/>
+        </return-value>
+        <parameters>
+          <parameter name="plugin"
+                     transfer-ownership="none"
+                     nullable="1"
+                     allow-none="1">
+            <doc xml:space="preserve"
+                 filename="gst/gsttracer.c"
+                 line="135">A #GstPlugin, or %NULL for a static typefind function</doc>
+            <type name="Plugin" c:type="GstPlugin*"/>
+          </parameter>
+          <parameter name="name" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst/gsttracer.c"
+                 line="136">The name for registering</doc>
+            <type name="utf8" c:type="const gchar*"/>
+          </parameter>
+          <parameter name="type" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst/gsttracer.c"
+                 line="137">GType of tracer to register</doc>
+            <type name="GType" c:type="GType"/>
+          </parameter>
+        </parameters>
+      </function>
       <property name="params"
                 writable="1"
                 construct="1"
@@ -43328,7 +66685,7 @@ contextual data, which they must not modify.</doc>
         <type name="TracerPrivate" c:type="GstTracerPrivate*"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -43336,11 +66693,12 @@ contextual data, which they must not modify.</doc>
     <record name="TracerClass"
             c:type="GstTracerClass"
             glib:is-gtype-struct-for="Tracer">
+      <source-position filename="gst/gsttracer.h" line="61"/>
       <field name="parent_class">
         <type name="ObjectClass" c:type="GstObjectClass"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -43353,19 +66711,27 @@ contextual data, which they must not modify.</doc>
            glib:type-name="GstTracerFactory"
            glib:get-type="gst_tracer_factory_get_type"
            glib:type-struct="TracerFactoryClass">
-      <doc xml:space="preserve">Use gst_tracer_factory_get_list() to get a list of tracer factories known to
+      <doc xml:space="preserve"
+           filename="gst/gsttracerfactory.c"
+           line="22">Use gst_tracer_factory_get_list() to get a list of tracer factories known to
 GStreamer.</doc>
+      <source-position filename="gst/gsttracerfactory.h" line="47"/>
       <function name="get_list"
                 c:identifier="gst_tracer_factory_get_list"
                 version="1.8">
-        <doc xml:space="preserve">Gets the list of all registered tracer factories. You must free the
+        <doc xml:space="preserve"
+             filename="gst/gsttracerfactory.c"
+             line="59">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</doc>
+        <source-position filename="gst/gsttracerfactory.h" line="55"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the list of all
+          <doc xml:space="preserve"
+               filename="gst/gsttracerfactory.c"
+               line="69">the list of all
     registered #GstTracerFactory.</doc>
           <type name="GLib.List" c:type="GList*">
             <type name="TracerFactory"/>
@@ -43374,17 +66740,24 @@ Free-function: gst_plugin_feature_list_free</doc>
       </function>
       <method name="get_tracer_type"
               c:identifier="gst_tracer_factory_get_tracer_type">
-        <doc xml:space="preserve">Get the #GType for elements managed by this factory. The type can
+        <doc xml:space="preserve"
+             filename="gst/gsttracerfactory.c"
+             line="81">Get the #GType for elements managed by this factory. The type can
 only be retrieved if the element factory is loaded, which can be
 assured with gst_plugin_feature_load().</doc>
+        <source-position filename="gst/gsttracerfactory.h" line="58"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the #GType for tracers managed by this factory or 0 if
+          <doc xml:space="preserve"
+               filename="gst/gsttracerfactory.c"
+               line="89">the #GType for tracers managed by this factory or 0 if
 the factory is not loaded.</doc>
           <type name="GType" c:type="GType"/>
         </return-value>
         <parameters>
           <instance-parameter name="factory" transfer-ownership="none">
-            <doc xml:space="preserve">factory to get managed #GType from</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttracerfactory.c"
+                 line="83">factory to get managed #GType from</doc>
             <type name="TracerFactory" c:type="GstTracerFactory*"/>
           </instance-parameter>
         </parameters>
@@ -43394,41 +66767,135 @@ the factory is not loaded.</doc>
             c:type="GstTracerFactoryClass"
             disguised="1"
             glib:is-gtype-struct-for="TracerFactory">
+      <source-position filename="gst/gsttracerfactory.h" line="47"/>
     </record>
     <record name="TracerPrivate" c:type="GstTracerPrivate" disguised="1">
+      <source-position filename="gst/gsttracer.h" line="33"/>
     </record>
     <class name="TracerRecord"
            c:symbol-prefix="tracer_record"
            c:type="GstTracerRecord"
+           version="1.8"
            parent="Object"
            glib:type-name="GstTracerRecord"
            glib:get-type="gst_tracer_record_get_type"
            glib:type-struct="TracerRecordClass">
-      <doc xml:space="preserve">Tracing modules will create instances of this class to announce the data they
+      <doc xml:space="preserve"
+           filename="gst/gsttracerrecord.c"
+           line="22">Tracing modules will create instances of this class to announce the data they
 will log and create a log formatter.</doc>
+      <source-position filename="gst/gsttracerrecord.h" line="35"/>
+      <constructor name="new"
+                   c:identifier="gst_tracer_record_new"
+                   introspectable="0">
+        <doc xml:space="preserve"
+             filename="gst/gsttracerrecord.c"
+             line="155">Create a new tracer record. The record instance can be used to efficiently
+log entries using gst_tracer_record_log().
+
+The @name without the ".class" 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.
+
+&gt; Please note that this is still under discussion and subject to change.</doc>
+        <source-position filename="gst/gsttracerrecord.h" line="95"/>
+        <return-value transfer-ownership="full">
+          <doc xml:space="preserve"
+               filename="gst/gsttracerrecord.c"
+               line="181">a new #GstTracerRecord</doc>
+          <type name="TracerRecord" c:type="GstTracerRecord*"/>
+        </return-value>
+        <parameters>
+          <parameter name="name" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst/gsttracerrecord.c"
+                 line="157">name of new record, must end on ".class".</doc>
+            <type name="utf8" c:type="const gchar*"/>
+          </parameter>
+          <parameter name="firstfield" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst/gsttracerrecord.c"
+                 line="158">name of first field to set</doc>
+            <type name="utf8" c:type="const gchar*"/>
+          </parameter>
+          <parameter name="..." transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst/gsttracerrecord.c"
+                 line="159">additional arguments</doc>
+            <varargs/>
+          </parameter>
+        </parameters>
+      </constructor>
+      <method name="log"
+              c:identifier="gst_tracer_record_log"
+              introspectable="0">
+        <doc xml:space="preserve"
+             filename="gst/gsttracerrecord.c"
+             line="239">Serialzes the trace event into the log.
+
+Right now this is using the gstreamer debug log with the level TRACE (7) and
+the category "GST_TRACER".
+
+&gt; Please note that this is still under discussion and subject to change.</doc>
+        <source-position filename="gst/gsttracerrecord.h" line="99"/>
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="self" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst/gsttracerrecord.c"
+                 line="241">the tracer-record</doc>
+            <type name="TracerRecord" c:type="GstTracerRecord*"/>
+          </instance-parameter>
+          <parameter name="..." transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst/gsttracerrecord.c"
+                 line="242">the args as described in the spec-</doc>
+            <varargs/>
+          </parameter>
+        </parameters>
+      </method>
     </class>
     <record name="TracerRecordClass"
             c:type="GstTracerRecordClass"
             disguised="1"
             glib:is-gtype-struct-for="TracerRecord">
+      <source-position filename="gst/gsttracerrecord.h" line="35"/>
     </record>
     <bitfield name="TracerValueFlags"
               glib:type-name="GstTracerValueFlags"
               glib:get-type="gst_tracer_value_flags_get_type"
               c:type="GstTracerValueFlags">
-      <doc xml:space="preserve">Flag that describe the value. These flags help applications processing the
+      <doc xml:space="preserve"
+           filename="gst/gsttracerrecord.h"
+           line="73">Flag that describe the value. These flags help applications processing the
 logs to understand the values.</doc>
       <member name="none"
               value="0"
               c:identifier="GST_TRACER_VALUE_FLAGS_NONE"
               glib:nick="none">
-        <doc xml:space="preserve">no flags</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttracerrecord.h"
+             line="75">no flags</doc>
       </member>
       <member name="optional"
               value="1"
               c:identifier="GST_TRACER_VALUE_FLAGS_OPTIONAL"
               glib:nick="optional">
-        <doc xml:space="preserve">the value is optional. When using this flag
+        <doc xml:space="preserve"
+             filename="gst/gsttracerrecord.h"
+             line="76">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().</doc>
       </member>
@@ -43436,7 +66903,9 @@ logs to understand the values.</doc>
               value="2"
               c:identifier="GST_TRACER_VALUE_FLAGS_AGGREGATED"
               glib:nick="aggregated">
-        <doc xml:space="preserve">the value is a combined figure, since the
+        <doc xml:space="preserve"
+             filename="gst/gsttracerrecord.h"
+             line="79">the value is a combined figure, since the
   start of tracing. Examples are averages or timestamps.</doc>
       </member>
     </bitfield>
@@ -43445,7 +66914,9 @@ logs to understand the values.</doc>
                  glib:type-name="GstTracerValueScope"
                  glib:get-type="gst_tracer_value_scope_get_type"
                  c:type="GstTracerValueScope">
-      <doc xml:space="preserve">Tracing record will contain fields that contain a measured value or extra
+      <doc xml:space="preserve"
+           filename="gst/gsttracerrecord.h"
+           line="50">Tracing record will contain fields that contain a measured 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
@@ -43454,32 +66925,44 @@ events may contain values for different #GstPads.</doc>
               value="0"
               c:identifier="GST_TRACER_VALUE_SCOPE_PROCESS"
               glib:nick="process">
-        <doc xml:space="preserve">the value is related to the process</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttracerrecord.h"
+             line="52">the value is related to the process</doc>
       </member>
       <member name="thread"
               value="1"
               c:identifier="GST_TRACER_VALUE_SCOPE_THREAD"
               glib:nick="thread">
-        <doc xml:space="preserve">the value is related to a thread</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttracerrecord.h"
+             line="53">the value is related to a thread</doc>
       </member>
       <member name="element"
               value="2"
               c:identifier="GST_TRACER_VALUE_SCOPE_ELEMENT"
               glib:nick="element">
-        <doc xml:space="preserve">the value is related to an #GstElement</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttracerrecord.h"
+             line="54">the value is related to an #GstElement</doc>
       </member>
       <member name="pad"
               value="3"
               c:identifier="GST_TRACER_VALUE_SCOPE_PAD"
               glib:nick="pad">
-        <doc xml:space="preserve">the value is related to a #GstPad</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttracerrecord.h"
+             line="55">the value is related to a #GstPad</doc>
       </member>
     </enumeration>
     <record name="TypeFind" c:type="GstTypeFind">
-      <doc xml:space="preserve">The following functions allow you to detect the media type of an unknown
+      <doc xml:space="preserve"
+           filename="gst/gsttypefind.c"
+           line="22">The following functions allow you to detect the media type of an unknown
 stream.</doc>
+      <source-position filename="gst/gsttypefind.h" line="92"/>
       <field name="peek">
         <callback name="peek">
+          <source-position filename="gst/gsttypefind.h" line="77"/>
           <return-value transfer-ownership="none">
             <type name="guint8" c:type="const guint8*"/>
           </return-value>
@@ -43498,6 +66981,7 @@ stream.</doc>
       </field>
       <field name="suggest">
         <callback name="suggest">
+          <source-position filename="gst/gsttypefind.h" line="81"/>
           <return-value transfer-ownership="none">
             <type name="none" c:type="void"/>
           </return-value>
@@ -43515,11 +66999,14 @@ stream.</doc>
         </callback>
       </field>
       <field name="data" writable="1">
-        <doc xml:space="preserve">The data used by the caller of the typefinding function.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttypefind.h"
+             line="70">The data used by the caller of the typefinding function.</doc>
         <type name="gpointer" c:type="gpointer"/>
       </field>
       <field name="get_length">
         <callback name="get_length">
+          <source-position filename="gst/gsttypefind.h" line="88"/>
           <return-value transfer-ownership="none">
             <type name="guint64" c:type="guint64"/>
           </return-value>
@@ -43531,31 +67018,43 @@ stream.</doc>
         </callback>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
       <method name="get_length" c:identifier="gst_type_find_get_length">
-        <doc xml:space="preserve">Get the length of the data stream.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The length of the data stream, or 0 if it is not available.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttypefind.c"
+             line="200">Get the length of the data stream.</doc>
+        <source-position filename="gst/gsttypefind.h" line="116"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gsttypefind.c"
+               line="206">The length of the data stream, or 0 if it is not available.</doc>
           <type name="guint64" c:type="guint64"/>
         </return-value>
         <parameters>
           <instance-parameter name="find" transfer-ownership="none">
-            <doc xml:space="preserve">The #GstTypeFind the function was called with</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttypefind.c"
+                 line="202">The #GstTypeFind the function was called with</doc>
             <type name="TypeFind" c:type="GstTypeFind*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="peek" c:identifier="gst_type_find_peek">
-        <doc xml:space="preserve">Returns the @size bytes of the stream to identify beginning at offset. If
+        <doc xml:space="preserve"
+             filename="gst/gsttypefind.c"
+             line="106">Returns the @size bytes of the stream to identify beginning at offset. If
 offset is a positive number, the offset is relative to the beginning of the
 stream, if offset is a negative number the offset is relative to the end of
 the stream. The returned memory is valid until the typefinding function
 returns and must not be freed.</doc>
+        <source-position filename="gst/gsttypefind.h" line="103"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">the
+          <doc xml:space="preserve"
+               filename="gst/gsttypefind.c"
+               line="118">the
     requested data, or %NULL if that data is not available.</doc>
           <array length="1" zero-terminated="0" c:type="const guint8*">
             <type name="guint8" c:type="guint8"/>
@@ -43563,41 +67062,56 @@ returns and must not be freed.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="find" transfer-ownership="none">
-            <doc xml:space="preserve">The #GstTypeFind object the function was called with</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttypefind.c"
+                 line="108">The #GstTypeFind object the function was called with</doc>
             <type name="TypeFind" c:type="GstTypeFind*"/>
           </instance-parameter>
           <parameter name="offset" transfer-ownership="none">
-            <doc xml:space="preserve">The offset</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttypefind.c"
+                 line="109">The offset</doc>
             <type name="gint64" c:type="gint64"/>
           </parameter>
           <parameter name="size"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">The number of bytes to return</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttypefind.c"
+                 line="110">The number of bytes to return</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="suggest" c:identifier="gst_type_find_suggest">
-        <doc xml:space="preserve">If a #GstTypeFindFunction calls this function it suggests the caps with the
+        <doc xml:space="preserve"
+             filename="gst/gsttypefind.c"
+             line="129">If a #GstTypeFindFunction calls this function it suggests the caps with the
 given probability. A #GstTypeFindFunction may supply different suggestions
 in one call.
 It is up to the caller of the #GstTypeFindFunction to interpret these values.</doc>
+        <source-position filename="gst/gsttypefind.h" line="107"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="find" transfer-ownership="none">
-            <doc xml:space="preserve">The #GstTypeFind object the function was called with</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttypefind.c"
+                 line="131">The #GstTypeFind object the function was called with</doc>
             <type name="TypeFind" c:type="GstTypeFind*"/>
           </instance-parameter>
           <parameter name="probability" transfer-ownership="none">
-            <doc xml:space="preserve">The probability in percent that the suggestion is right</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttypefind.c"
+                 line="132">The probability in percent that the suggestion is right</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="caps" transfer-ownership="none">
-            <doc xml:space="preserve">The fixed #GstCaps to suggest</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttypefind.c"
+                 line="133">The fixed #GstCaps to suggest</doc>
             <type name="Caps" c:type="GstCaps*"/>
           </parameter>
         </parameters>
@@ -43605,7 +67119,9 @@ It is up to the caller of the #GstTypeFindFunction to interpret these values.</d
       <method name="suggest_simple"
               c:identifier="gst_type_find_suggest_simple"
               introspectable="0">
-        <doc xml:space="preserve">If a #GstTypeFindFunction calls this function it suggests the caps with the
+        <doc xml:space="preserve"
+             filename="gst/gsttypefind.c"
+             line="151">If a #GstTypeFindFunction calls this function it suggests the caps with the
 given probability. A #GstTypeFindFunction may supply different suggestions
 in one call. It is up to the caller of the #GstTypeFindFunction to interpret
 these values.
@@ -43618,31 +67134,42 @@ Make sure you terminate the list of arguments with a %NULL argument and that
 the values passed have the correct type (in terms of width in bytes when
 passed to the vararg function - this applies particularly to gdouble and
 guint64 arguments).</doc>
+        <source-position filename="gst/gsttypefind.h" line="111"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="find" transfer-ownership="none">
-            <doc xml:space="preserve">The #GstTypeFind object the function was called with</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttypefind.c"
+                 line="153">The #GstTypeFind object the function was called with</doc>
             <type name="TypeFind" c:type="GstTypeFind*"/>
           </instance-parameter>
           <parameter name="probability" transfer-ownership="none">
-            <doc xml:space="preserve">The probability in percent that the suggestion is right</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttypefind.c"
+                 line="154">The probability in percent that the suggestion is right</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="media_type" transfer-ownership="none">
-            <doc xml:space="preserve">the media type of the suggested caps</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttypefind.c"
+                 line="155">the media type of the suggested caps</doc>
             <type name="utf8" c:type="const char*"/>
           </parameter>
           <parameter name="fieldname"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">first field of the suggested caps, or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttypefind.c"
+                 line="156">first field of the suggested caps, or %NULL</doc>
             <type name="utf8" c:type="const char*"/>
           </parameter>
           <parameter name="..." transfer-ownership="none">
-            <doc xml:space="preserve">additional arguments to the suggested caps in the same format as the
+            <doc xml:space="preserve"
+                 filename="gst/gsttypefind.c"
+                 line="157">additional arguments to the suggested caps in the same format as the
     arguments passed to gst_structure_new() (ie. triplets of field name,
     field GType and field value)</doc>
             <varargs/>
@@ -43650,11 +67177,16 @@ guint64 arguments).</doc>
         </parameters>
       </method>
       <function name="register" c:identifier="gst_type_find_register">
-        <doc xml:space="preserve">Registers a new typefind function to be used for typefinding. After
+        <doc xml:space="preserve"
+             filename="gst/gsttypefind.c"
+             line="42">Registers a new typefind function to be used for typefinding. After
 registering this function will be available for typefinding.
 This function is typically called during an element's plugin initialization.</doc>
+        <source-position filename="gst/gsttypefind.h" line="121"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE on success, %FALSE otherwise</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsttypefind.c"
+               line="61">%TRUE on success, %FALSE otherwise</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
@@ -43662,15 +67194,21 @@ This function is typically called during an element's plugin initialization.</do
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">A #GstPlugin, or %NULL for a static typefind function</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttypefind.c"
+                 line="44">A #GstPlugin, or %NULL for a static typefind function</doc>
             <type name="Plugin" c:type="GstPlugin*"/>
           </parameter>
           <parameter name="name" transfer-ownership="none">
-            <doc xml:space="preserve">The name for registering</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttypefind.c"
+                 line="45">The name for registering</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="rank" transfer-ownership="none">
-            <doc xml:space="preserve">The rank (or importance) of this typefind function</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttypefind.c"
+                 line="46">The rank (or importance) of this typefind function</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="func"
@@ -43678,19 +67216,25 @@ This function is typically called during an element's plugin initialization.</do
                      scope="notified"
                      closure="6"
                      destroy="7">
-            <doc xml:space="preserve">The #GstTypeFindFunction to use</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttypefind.c"
+                 line="47">The #GstTypeFindFunction to use</doc>
             <type name="TypeFindFunction" c:type="GstTypeFindFunction"/>
           </parameter>
           <parameter name="extensions"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">Optional comma-separated list of extensions
+            <doc xml:space="preserve"
+                 filename="gst/gsttypefind.c"
+                 line="48">Optional comma-separated list of extensions
     that could belong to this type</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="possible_caps" transfer-ownership="none">
-            <doc xml:space="preserve">Optionally the caps that could be returned when typefinding
+            <doc xml:space="preserve"
+                 filename="gst/gsttypefind.c"
+                 line="50">Optionally the caps that could be returned when typefinding
                 succeeds</doc>
             <type name="Caps" c:type="GstCaps*"/>
           </parameter>
@@ -43698,14 +67242,18 @@ This function is typically called during an element's plugin initialization.</do
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">Optional user data. This user data must be available until the plugin
+            <doc xml:space="preserve"
+                 filename="gst/gsttypefind.c"
+                 line="52">Optional user data. This user data must be available until the plugin
        is unloaded.</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
           <parameter name="data_notify"
                      transfer-ownership="none"
                      scope="async">
-            <doc xml:space="preserve">a #GDestroyNotify that will be called on @data when the plugin
+            <doc xml:space="preserve"
+                 filename="gst/gsttypefind.c"
+                 line="54">a #GDestroyNotify that will be called on @data when the plugin
        is unloaded.</doc>
             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
           </parameter>
@@ -43719,7 +67267,9 @@ This function is typically called during an element's plugin initialization.</do
            glib:type-name="GstTypeFindFactory"
            glib:get-type="gst_type_find_factory_get_type"
            glib:type-struct="TypeFindFactoryClass">
-      <doc xml:space="preserve">These functions allow querying information about registered typefind
+      <doc xml:space="preserve"
+           filename="gst/gsttypefindfactory.c"
+           line="22">These functions allow querying information about registered typefind
 functions. How to create and register these functions is described in
 the section &lt;link linkend="gstreamer-Writing-typefind-functions"&gt;
 "Writing typefind functions"&lt;/link&gt;.
@@ -43768,16 +67318,22 @@ that though.
     return find.caps;
   };
 ]|</doc>
+      <source-position filename="gst/gsttypefindfactory.h" line="45"/>
       <function name="get_list" c:identifier="gst_type_find_factory_get_list">
-        <doc xml:space="preserve">Gets the list of all registered typefind factories. You must free the
+        <doc xml:space="preserve"
+             filename="gst/gsttypefindfactory.c"
+             line="135">Gets the list of all registered typefind factories. You must free the
 list using gst_plugin_feature_list_free().
 
 The returned factories are sorted by highest rank first, and then by
 factory name.
 
 Free-function: gst_plugin_feature_list_free</doc>
+        <source-position filename="gst/gsttypefindfactory.h" line="53"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the list of all
+          <doc xml:space="preserve"
+               filename="gst/gsttypefindfactory.c"
+               line="146">the list of all
     registered #GstTypeFindFactory.</doc>
           <type name="GLib.List" c:type="GList*">
             <type name="TypeFindFactory"/>
@@ -43786,43 +67342,62 @@ Free-function: gst_plugin_feature_list_free</doc>
       </function>
       <method name="call_function"
               c:identifier="gst_type_find_factory_call_function">
-        <doc xml:space="preserve">Calls the #GstTypeFindFunction associated with this factory.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttypefindfactory.c"
+             line="192">Calls the #GstTypeFindFunction associated with this factory.</doc>
+        <source-position filename="gst/gsttypefindfactory.h" line="65"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="factory" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstTypeFindFactory</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttypefindfactory.c"
+                 line="194">A #GstTypeFindFactory</doc>
             <type name="TypeFindFactory" c:type="GstTypeFindFactory*"/>
           </instance-parameter>
           <parameter name="find" transfer-ownership="none">
-            <doc xml:space="preserve">a properly setup #GstTypeFind entry. The get_data
+            <doc xml:space="preserve"
+                 filename="gst/gsttypefindfactory.c"
+                 line="195">a properly setup #GstTypeFind entry. The get_data
     and suggest_type members must be set.</doc>
             <type name="TypeFind" c:type="GstTypeFind*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_caps" c:identifier="gst_type_find_factory_get_caps">
-        <doc xml:space="preserve">Gets the #GstCaps associated with a typefind factory.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the #GstCaps associated with this factory</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttypefindfactory.c"
+             line="156">Gets the #GstCaps associated with a typefind factory.</doc>
+        <source-position filename="gst/gsttypefindfactory.h" line="59"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gsttypefindfactory.c"
+               line="162">the #GstCaps associated with this factory</doc>
           <type name="Caps" c:type="GstCaps*"/>
         </return-value>
         <parameters>
           <instance-parameter name="factory" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstTypeFindFactory</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttypefindfactory.c"
+                 line="158">A #GstTypeFindFactory</doc>
             <type name="TypeFindFactory" c:type="GstTypeFindFactory*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_extensions"
               c:identifier="gst_type_find_factory_get_extensions">
-        <doc xml:space="preserve">Gets the extensions associated with a #GstTypeFindFactory. The returned
+        <doc xml:space="preserve"
+             filename="gst/gsttypefindfactory.c"
+             line="172">Gets the extensions associated with a #GstTypeFindFactory. The returned
 array should not be changed. If you need to change stuff in it, you should
 copy it using g_strdupv().  This function may return %NULL to indicate
 a 0-length list.</doc>
+        <source-position filename="gst/gsttypefindfactory.h" line="56"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">
+          <doc xml:space="preserve"
+               filename="gst/gsttypefindfactory.c"
+               line="181">
     a %NULL-terminated array of extensions associated with this factory</doc>
           <array c:type="const gchar* const*">
             <type name="utf8"/>
@@ -43830,23 +67405,32 @@ a 0-length list.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="factory" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstTypeFindFactory</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttypefindfactory.c"
+                 line="174">A #GstTypeFindFactory</doc>
             <type name="TypeFindFactory" c:type="GstTypeFindFactory*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="has_function"
               c:identifier="gst_type_find_factory_has_function">
-        <doc xml:space="preserve">Check whether the factory has a typefind function. Typefind factories
+        <doc xml:space="preserve"
+             filename="gst/gsttypefindfactory.c"
+             line="221">Check whether the factory has a typefind function. Typefind factories
 without typefind functions are a last-effort fallback mechanism to
 e.g. assume a certain media type based on the file extension.</doc>
+        <source-position filename="gst/gsttypefindfactory.h" line="62"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the factory has a typefind functions set, otherwise %FALSE</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsttypefindfactory.c"
+               line="229">%TRUE if the factory has a typefind functions set, otherwise %FALSE</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="factory" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstTypeFindFactory</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsttypefindfactory.c"
+                 line="223">A #GstTypeFindFactory</doc>
             <type name="TypeFindFactory" c:type="GstTypeFindFactory*"/>
           </instance-parameter>
         </parameters>
@@ -43856,15 +67440,21 @@ e.g. assume a certain media type based on the file extension.</doc>
             c:type="GstTypeFindFactoryClass"
             disguised="1"
             glib:is-gtype-struct-for="TypeFindFactory">
+      <source-position filename="gst/gsttypefindfactory.h" line="45"/>
     </record>
     <callback name="TypeFindFunction" c:type="GstTypeFindFunction">
-      <doc xml:space="preserve">A function that will be called by typefinding.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gsttypefind.h"
+           line="36">A function that will be called by typefinding.</doc>
+      <source-position filename="gst/gsttypefind.h" line="43"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="find" transfer-ownership="none">
-          <doc xml:space="preserve">A #GstTypeFind structure</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsttypefind.h"
+               line="38">A #GstTypeFind structure</doc>
           <type name="TypeFind" c:type="GstTypeFind*"/>
         </parameter>
         <parameter name="user_data"
@@ -43872,7 +67462,9 @@ e.g. assume a certain media type based on the file extension.</doc>
                    nullable="1"
                    allow-none="1"
                    closure="1">
-          <doc xml:space="preserve">optional data to pass to the function</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsttypefind.h"
+               line="39">optional data to pass to the function</doc>
           <type name="gpointer" c:type="gpointer"/>
         </parameter>
       </parameters>
@@ -43881,78 +67473,110 @@ e.g. assume a certain media type based on the file extension.</doc>
                  glib:type-name="GstTypeFindProbability"
                  glib:get-type="gst_type_find_probability_get_type"
                  c:type="GstTypeFindProbability">
-      <doc xml:space="preserve">The probability of the typefind function. Higher values have more certainty
+      <doc xml:space="preserve"
+           filename="gst/gsttypefind.h"
+           line="45">The probability of the typefind function. Higher values have more certainty
 in doing a reliable typefind.</doc>
       <member name="none"
               value="0"
               c:identifier="GST_TYPE_FIND_NONE"
               glib:nick="none">
-        <doc xml:space="preserve">type undetected.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttypefind.h"
+             line="47">type undetected.</doc>
       </member>
       <member name="minimum"
               value="1"
               c:identifier="GST_TYPE_FIND_MINIMUM"
               glib:nick="minimum">
-        <doc xml:space="preserve">unlikely typefind.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttypefind.h"
+             line="48">unlikely typefind.</doc>
       </member>
       <member name="possible"
               value="50"
               c:identifier="GST_TYPE_FIND_POSSIBLE"
               glib:nick="possible">
-        <doc xml:space="preserve">possible type detected.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttypefind.h"
+             line="49">possible type detected.</doc>
       </member>
       <member name="likely"
               value="80"
               c:identifier="GST_TYPE_FIND_LIKELY"
               glib:nick="likely">
-        <doc xml:space="preserve">likely a type was detected.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttypefind.h"
+             line="50">likely a type was detected.</doc>
       </member>
       <member name="nearly_certain"
               value="99"
               c:identifier="GST_TYPE_FIND_NEARLY_CERTAIN"
               glib:nick="nearly-certain">
-        <doc xml:space="preserve">nearly certain that a type was detected.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttypefind.h"
+             line="51">nearly certain that a type was detected.</doc>
       </member>
       <member name="maximum"
               value="100"
               c:identifier="GST_TYPE_FIND_MAXIMUM"
               glib:nick="maximum">
-        <doc xml:space="preserve">very certain a type was detected.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttypefind.h"
+             line="52">very certain a type was detected.</doc>
       </member>
     </enumeration>
+    <function-macro name="URI" c:identifier="GST_URI" introspectable="0">
+      <source-position filename="gst/gsturi.h" line="192"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
     <enumeration name="URIError"
                  glib:type-name="GstURIError"
                  glib:get-type="gst_uri_error_get_type"
                  c:type="GstURIError"
                  glib:error-domain="gst-uri-error-quark">
-      <doc xml:space="preserve">Different URI-related errors that can occur.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gsturi.h"
+           line="49">Different URI-related errors that can occur.</doc>
       <member name="unsupported_protocol"
               value="0"
               c:identifier="GST_URI_ERROR_UNSUPPORTED_PROTOCOL"
               glib:nick="unsupported-protocol">
-        <doc xml:space="preserve">The protocol is not supported</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsturi.h"
+             line="51">The protocol is not supported</doc>
       </member>
       <member name="bad_uri"
               value="1"
               c:identifier="GST_URI_ERROR_BAD_URI"
               glib:nick="bad-uri">
-        <doc xml:space="preserve">There was a problem with the URI</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsturi.h"
+             line="52">There was a problem with the URI</doc>
       </member>
       <member name="bad_state"
               value="2"
               c:identifier="GST_URI_ERROR_BAD_STATE"
               glib:nick="bad-state">
-        <doc xml:space="preserve">Could not set or change the URI because the
+        <doc xml:space="preserve"
+             filename="gst/gsturi.h"
+             line="53">Could not set or change the URI because the
     URI handler was in a state where that is not possible or not permitted</doc>
       </member>
       <member name="bad_reference"
               value="3"
               c:identifier="GST_URI_ERROR_BAD_REFERENCE"
               glib:nick="bad-reference">
-        <doc xml:space="preserve">There was a problem with the entity that
+        <doc xml:space="preserve"
+             filename="gst/gsturi.h"
+             line="55">There was a problem with the entity that
     the URI references</doc>
       </member>
       <function name="quark" c:identifier="gst_uri_error_quark">
+        <attribute name="doc.skip" value="true"/>
         <return-value transfer-ownership="none">
           <type name="GLib.Quark" c:type="GQuark"/>
         </return-value>
@@ -43964,7 +67588,9 @@ in doing a reliable typefind.</doc>
                glib:type-name="GstURIHandler"
                glib:get-type="gst_uri_handler_get_type"
                glib:type-struct="URIHandlerInterface">
-      <doc xml:space="preserve">The #GstURIHandler is an interface that is implemented by Source and Sink
+      <doc xml:space="preserve"
+           filename="gst/gsturi.c"
+           line="26">The #GstURIHandler is an interface that is implemented by Source and Sink
 #GstElement to unify handling of URI.
 
 An application can use the following functions to quickly get an element
@@ -43972,10 +67598,16 @@ that handles the given URI for reading or writing
 (gst_element_make_from_uri()).
 
 Source and Sink plugins should implement this interface when possible.</doc>
+      <source-position filename="gst/gsturi.h" line="132"/>
       <virtual-method name="get_uri" invoker="get_uri">
-        <doc xml:space="preserve">Gets the currently handled URI.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsturi.c"
+             line="749">Gets the currently handled URI.</doc>
+        <source-position filename="gst/gsturi.h" line="128"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">the URI currently handled by
+          <doc xml:space="preserve"
+               filename="gst/gsturi.c"
+               line="755">the URI currently handled by
   the @handler.  Returns %NULL if there are no URI currently
   handled. The returned string must be freed with g_free() when no
   longer needed.</doc>
@@ -43983,34 +67615,50 @@ Source and Sink plugins should implement this interface when possible.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="handler" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstURIHandler</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="751">A #GstURIHandler</doc>
             <type name="URIHandler" c:type="GstURIHandler*"/>
           </instance-parameter>
         </parameters>
       </virtual-method>
       <virtual-method name="set_uri" invoker="set_uri" throws="1">
-        <doc xml:space="preserve">Tries to set the URI of the given handler.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the URI was set successfully, else %FALSE.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsturi.c"
+             line="778">Tries to set the URI of the given handler.</doc>
+        <source-position filename="gst/gsturi.h" line="129"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gsturi.c"
+               line="787">%TRUE if the URI was set successfully, else %FALSE.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="handler" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstURIHandler</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="780">A #GstURIHandler</doc>
             <type name="URIHandler" c:type="GstURIHandler*"/>
           </instance-parameter>
           <parameter name="uri" transfer-ownership="none">
-            <doc xml:space="preserve">URI to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="781">URI to set</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </virtual-method>
       <method name="get_protocols"
               c:identifier="gst_uri_handler_get_protocols">
-        <doc xml:space="preserve">Gets the list of protocols supported by @handler. This list may not be
+        <doc xml:space="preserve"
+             filename="gst/gsturi.c"
+             line="719">Gets the list of protocols supported by @handler. This list may not be
 modified.</doc>
+        <source-position filename="gst/gsturi.h" line="175"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">the
+          <doc xml:space="preserve"
+               filename="gst/gsturi.c"
+               line="726">the
     supported protocols.  Returns %NULL if the @handler isn't
     implemented properly, or the @handler doesn't support any
     protocols.</doc>
@@ -44020,15 +67668,22 @@ modified.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="handler" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstURIHandler.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="721">A #GstURIHandler.</doc>
             <type name="URIHandler" c:type="GstURIHandler*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_uri" c:identifier="gst_uri_handler_get_uri">
-        <doc xml:space="preserve">Gets the currently handled URI.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsturi.c"
+             line="749">Gets the currently handled URI.</doc>
+        <source-position filename="gst/gsturi.h" line="178"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">the URI currently handled by
+          <doc xml:space="preserve"
+               filename="gst/gsturi.c"
+               line="755">the URI currently handled by
   the @handler.  Returns %NULL if there are no URI currently
   handled. The returned string must be freed with g_free() when no
   longer needed.</doc>
@@ -44036,38 +67691,56 @@ modified.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="handler" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstURIHandler</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="751">A #GstURIHandler</doc>
             <type name="URIHandler" c:type="GstURIHandler*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_uri_type" c:identifier="gst_uri_handler_get_uri_type">
-        <doc xml:space="preserve">Gets the type of the given URI handler</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the #GstURIType of the URI handler.
+        <doc xml:space="preserve"
+             filename="gst/gsturi.c"
+             line="692">Gets the type of the given URI handler</doc>
+        <source-position filename="gst/gsturi.h" line="172"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gsturi.c"
+               line="698">the #GstURIType of the URI handler.
 Returns #GST_URI_UNKNOWN if the @handler isn't implemented correctly.</doc>
           <type name="URIType" c:type="GstURIType"/>
         </return-value>
         <parameters>
           <instance-parameter name="handler" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstURIHandler.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="694">A #GstURIHandler.</doc>
             <type name="URIHandler" c:type="GstURIHandler*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="set_uri" c:identifier="gst_uri_handler_set_uri" throws="1">
-        <doc xml:space="preserve">Tries to set the URI of the given handler.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the URI was set successfully, else %FALSE.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsturi.c"
+             line="778">Tries to set the URI of the given handler.</doc>
+        <source-position filename="gst/gsturi.h" line="181"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gsturi.c"
+               line="787">%TRUE if the URI was set successfully, else %FALSE.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="handler" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstURIHandler</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="780">A #GstURIHandler</doc>
             <type name="URIHandler" c:type="GstURIHandler*"/>
           </instance-parameter>
           <parameter name="uri" transfer-ownership="none">
-            <doc xml:space="preserve">URI to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="781">URI to set</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
@@ -44076,13 +67749,19 @@ Returns #GST_URI_UNKNOWN if the @handler isn't implemented correctly.</doc>
     <record name="URIHandlerInterface"
             c:type="GstURIHandlerInterface"
             glib:is-gtype-struct-for="URIHandler">
-      <doc xml:space="preserve">Any #GstElement using this interface should implement these methods.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gsturi.h"
+           line="108">Any #GstElement using this interface should implement these methods.</doc>
+      <source-position filename="gst/gsturi.h" line="132"/>
       <field name="parent">
-        <doc xml:space="preserve">The parent interface type</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsturi.h"
+             line="110">The parent interface type</doc>
         <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
       </field>
       <field name="get_type">
         <callback name="get_type">
+          <source-position filename="gst/gsturi.h" line="124"/>
           <return-value transfer-ownership="none">
             <type name="URIType" c:type="GstURIType"/>
           </return-value>
@@ -44095,6 +67774,7 @@ Returns #GST_URI_UNKNOWN if the @handler isn't implemented correctly.</doc>
       </field>
       <field name="get_protocols">
         <callback name="get_protocols">
+          <source-position filename="gst/gsturi.h" line="125"/>
           <return-value transfer-ownership="none">
             <array c:type="const gchar* const*">
               <type name="utf8"/>
@@ -44109,8 +67789,11 @@ Returns #GST_URI_UNKNOWN if the @handler isn't implemented correctly.</doc>
       </field>
       <field name="get_uri">
         <callback name="get_uri">
+          <source-position filename="gst/gsturi.h" line="128"/>
           <return-value transfer-ownership="full" nullable="1">
-            <doc xml:space="preserve">the URI currently handled by
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="755">the URI currently handled by
   the @handler.  Returns %NULL if there are no URI currently
   handled. The returned string must be freed with g_free() when no
   longer needed.</doc>
@@ -44118,7 +67801,9 @@ Returns #GST_URI_UNKNOWN if the @handler isn't implemented correctly.</doc>
           </return-value>
           <parameters>
             <parameter name="handler" transfer-ownership="none">
-              <doc xml:space="preserve">A #GstURIHandler</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gsturi.c"
+                   line="751">A #GstURIHandler</doc>
               <type name="URIHandler" c:type="GstURIHandler*"/>
             </parameter>
           </parameters>
@@ -44126,17 +67811,24 @@ Returns #GST_URI_UNKNOWN if the @handler isn't implemented correctly.</doc>
       </field>
       <field name="set_uri">
         <callback name="set_uri" throws="1">
+          <source-position filename="gst/gsturi.h" line="129"/>
           <return-value transfer-ownership="none">
-            <doc xml:space="preserve">%TRUE if the URI was set successfully, else %FALSE.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="787">%TRUE if the URI was set successfully, else %FALSE.</doc>
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
           <parameters>
             <parameter name="handler" transfer-ownership="none">
-              <doc xml:space="preserve">A #GstURIHandler</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gsturi.c"
+                   line="780">A #GstURIHandler</doc>
               <type name="URIHandler" c:type="GstURIHandler*"/>
             </parameter>
             <parameter name="uri" transfer-ownership="none">
-              <doc xml:space="preserve">URI to set</doc>
+              <doc xml:space="preserve"
+                   filename="gst/gsturi.c"
+                   line="781">URI to set</doc>
               <type name="utf8" c:type="const gchar*"/>
             </parameter>
           </parameters>
@@ -44147,29 +67839,94 @@ Returns #GST_URI_UNKNOWN if the @handler isn't implemented correctly.</doc>
                  glib:type-name="GstURIType"
                  glib:get-type="gst_uri_type_get_type"
                  c:type="GstURIType">
-      <doc xml:space="preserve">The different types of URI direction.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gsturi.h"
+           line="68">The different types of URI direction.</doc>
       <member name="unknown"
               value="0"
               c:identifier="GST_URI_UNKNOWN"
               glib:nick="unknown">
-        <doc xml:space="preserve">The URI direction is unknown</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsturi.h"
+             line="70">The URI direction is unknown</doc>
       </member>
       <member name="sink"
               value="1"
               c:identifier="GST_URI_SINK"
               glib:nick="sink">
-        <doc xml:space="preserve">The URI is a consumer.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsturi.h"
+             line="71">The URI is a consumer.</doc>
       </member>
       <member name="src" value="2" c:identifier="GST_URI_SRC" glib:nick="src">
-        <doc xml:space="preserve">The URI is a producer.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsturi.h"
+             line="72">The URI is a producer.</doc>
       </member>
     </enumeration>
+    <function-macro name="URI_CAST"
+                    c:identifier="GST_URI_CAST"
+                    introspectable="0">
+      <source-position filename="gst/gsturi.h" line="190"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="URI_CONST_CAST"
+                    c:identifier="GST_URI_CONST_CAST"
+                    introspectable="0">
+      <source-position filename="gst/gsturi.h" line="191"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="URI_HANDLER"
+                    c:identifier="GST_URI_HANDLER"
+                    introspectable="0">
+      <source-position filename="gst/gsturi.h" line="93"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="URI_HANDLER_GET_INTERFACE"
+                    c:identifier="GST_URI_HANDLER_GET_INTERFACE"
+                    introspectable="0">
+      <source-position filename="gst/gsturi.h" line="95"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
     <constant name="URI_NO_PORT" value="0" c:type="GST_URI_NO_PORT">
-      <doc xml:space="preserve">Value for #GstUri&lt;!-- --&gt;.port to indicate no port number.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gsturi.h"
+           line="202">Value for #GstUri&lt;!-- --&gt;.port to indicate no port number.</doc>
+      <source-position filename="gst/gsturi.h" line="207"/>
       <type name="gint" c:type="gint"/>
     </constant>
+    <function-macro name="URI_TYPE_IS_VALID"
+                    c:identifier="GST_URI_TYPE_IS_VALID"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gsturi.h"
+           line="83">Tests if the type direction is valid.</doc>
+      <source-position filename="gst/gsturi.h" line="89"/>
+      <parameters>
+        <parameter name="type">
+          <doc xml:space="preserve"
+               filename="gst/gsturi.h"
+               line="85">A #GstURIType</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
     <constant name="USECOND" value="1000" c:type="GST_USECOND">
-      <doc xml:space="preserve">Constant that defines one GStreamer microsecond.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstclock.h"
+           line="110">Constant that defines one GStreamer microsecond.</doc>
+      <source-position filename="gst/gstclock.h" line="115"/>
       <type name="ClockTimeDiff" c:type="GstClockTimeDiff"/>
     </constant>
     <record name="Uri"
@@ -44177,15 +67934,23 @@ Returns #GST_URI_UNKNOWN if the @handler isn't implemented correctly.</doc>
             glib:type-name="GstUri"
             glib:get-type="gst_uri_get_type"
             c:symbol-prefix="uri">
-      <doc xml:space="preserve">A #GstUri object can be used to parse and split a URI string into its
+      <doc xml:space="preserve"
+           filename="gst/gsturi.c"
+           line="954">A #GstUri object can be used to parse and split a URI string into its
 constituent parts. Two #GstUri objects can be joined to make a new #GstUri
 using the algorithm described in RFC3986.</doc>
+      <source-position filename="gst/gsturi.h" line="200"/>
       <constructor name="new" c:identifier="gst_uri_new" version="1.6">
-        <doc xml:space="preserve">Creates a new #GstUri object with the given URI parts. The path and query
+        <doc xml:space="preserve"
+             filename="gst/gsturi.c"
+             line="1421">Creates a new #GstUri object with the given URI parts. The path and query
 strings will be broken down into their elements. All strings should not be
 escaped except where indicated.</doc>
+        <source-position filename="gst/gsturi.h" line="219"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">A new #GstUri object.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsturi.c"
+               line="1438">A new #GstUri object.</doc>
           <type name="Uri" c:type="GstUri*"/>
         </return-value>
         <parameters>
@@ -44193,32 +67958,42 @@ escaped except where indicated.</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">The scheme for the new URI.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="1423">The scheme for the new URI.</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="userinfo"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">The user-info for the new URI.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="1424">The user-info for the new URI.</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="host"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">The host name for the new URI.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="1425">The host name for the new URI.</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="port" transfer-ownership="none">
-            <doc xml:space="preserve">The port number for the new URI or %GST_URI_NO_PORT.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="1426">The port number for the new URI or %GST_URI_NO_PORT.</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="path"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">The path for the new URI with '/' separating path
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="1427">The path for the new URI with '/' separating path
                      elements.</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
@@ -44226,7 +68001,9 @@ escaped except where indicated.</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">The query string for the new URI with '&amp;' separating
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="1429">The query string for the new URI with '&amp;' separating
                       query elements. Elements containing '&amp;' characters
                       should encode them as "&amp;percnt;26".</doc>
             <type name="utf8" c:type="const gchar*"/>
@@ -44235,7 +68012,9 @@ escaped except where indicated.</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">The fragment name for the new URI.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="1432">The fragment name for the new URI.</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
@@ -44243,10 +68022,15 @@ escaped except where indicated.</doc>
       <method name="append_path"
               c:identifier="gst_uri_append_path"
               version="1.6">
-        <doc xml:space="preserve">Append a path onto the end of the path in the URI. The path is not
+        <doc xml:space="preserve"
+             filename="gst/gsturi.c"
+             line="2428">Append a path onto the end of the path in the URI. The path is not
 normalized, call #gst_uri_normalize() to normalize the path.</doc>
+        <source-position filename="gst/gsturi.h" line="308"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the path was appended successfully.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsturi.c"
+               line="2436">%TRUE if the path was appended successfully.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
@@ -44254,11 +68038,15 @@ normalized, call #gst_uri_normalize() to normalize the path.</doc>
                               transfer-ownership="none"
                               nullable="1"
                               allow-none="1">
-            <doc xml:space="preserve">The #GstUri to modify.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="2430">The #GstUri to modify.</doc>
             <type name="Uri" c:type="GstUri*"/>
           </instance-parameter>
           <parameter name="relative_path" transfer-ownership="none">
-            <doc xml:space="preserve">Relative path to append to the end of the current path.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="2431">Relative path to append to the end of the current path.</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
@@ -44266,9 +68054,14 @@ normalized, call #gst_uri_normalize() to normalize the path.</doc>
       <method name="append_path_segment"
               c:identifier="gst_uri_append_path_segment"
               version="1.6">
-        <doc xml:space="preserve">Append a single path segment onto the end of the URI path.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the path was appended successfully.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsturi.c"
+             line="2466">Append a single path segment onto the end of the URI path.</doc>
+        <source-position filename="gst/gsturi.h" line="311"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gsturi.c"
+               line="2473">%TRUE if the path was appended successfully.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
@@ -44276,29 +68069,42 @@ normalized, call #gst_uri_normalize() to normalize the path.</doc>
                               transfer-ownership="none"
                               nullable="1"
                               allow-none="1">
-            <doc xml:space="preserve">The #GstUri to modify.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="2468">The #GstUri to modify.</doc>
             <type name="Uri" c:type="GstUri*"/>
           </instance-parameter>
           <parameter name="path_segment" transfer-ownership="none">
-            <doc xml:space="preserve">The path segment string to append to the URI path.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="2469">The path segment string to append to the URI path.</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </method>
       <method name="equal" c:identifier="gst_uri_equal" version="1.6">
-        <doc xml:space="preserve">Compares two #GstUri objects to see if they represent the same normalized
+        <doc xml:space="preserve"
+             filename="gst/gsturi.c"
+             line="1656">Compares two #GstUri objects to see if they represent the same normalized
 URI.</doc>
+        <source-position filename="gst/gsturi.h" line="242"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the normalized versions of the two URI's would be equal.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsturi.c"
+               line="1664">%TRUE if the normalized versions of the two URI's would be equal.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="first" transfer-ownership="none">
-            <doc xml:space="preserve">First #GstUri to compare.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="1658">First #GstUri to compare.</doc>
             <type name="Uri" c:type="const GstUri*"/>
           </instance-parameter>
           <parameter name="second" transfer-ownership="none">
-            <doc xml:space="preserve">Second #GstUri to compare.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="1659">Second #GstUri to compare.</doc>
             <type name="Uri" c:type="const GstUri*"/>
           </parameter>
         </parameters>
@@ -44306,9 +68112,14 @@ URI.</doc>
       <method name="from_string_with_base"
               c:identifier="gst_uri_from_string_with_base"
               version="1.6">
-        <doc xml:space="preserve">Like gst_uri_from_string() but also joins with a base URI.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsturi.c"
+             line="1630">Like gst_uri_from_string() but also joins with a base URI.</doc>
+        <source-position filename="gst/gsturi.h" line="239"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">A new #GstUri object.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsturi.c"
+               line="1637">A new #GstUri object.</doc>
           <type name="Uri" c:type="GstUri*"/>
         </return-value>
         <parameters>
@@ -44316,11 +68127,15 @@ URI.</doc>
                               transfer-ownership="none"
                               nullable="1"
                               allow-none="1">
-            <doc xml:space="preserve">The base URI to join the new URI with.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="1632">The base URI to join the new URI with.</doc>
             <type name="Uri" c:type="GstUri*"/>
           </instance-parameter>
           <parameter name="uri" transfer-ownership="none">
-            <doc xml:space="preserve">The URI string to parse.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="1633">The URI string to parse.</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
@@ -44328,10 +68143,15 @@ URI.</doc>
       <method name="get_fragment"
               c:identifier="gst_uri_get_fragment"
               version="1.6">
-        <doc xml:space="preserve">Get the fragment name from the URI or %NULL if it doesn't exist.
+        <doc xml:space="preserve"
+             filename="gst/gsturi.c"
+             line="2763">Get the fragment name from the URI or %NULL if it doesn't exist.
 If @uri is %NULL then returns %NULL.</doc>
+        <source-position filename="gst/gsturi.h" line="343"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">The host name from the #GstUri object or %NULL.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsturi.c"
+               line="2770">The host name from the #GstUri object or %NULL.</doc>
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
         <parameters>
@@ -44339,16 +68159,23 @@ If @uri is %NULL then returns %NULL.</doc>
                               transfer-ownership="none"
                               nullable="1"
                               allow-none="1">
-            <doc xml:space="preserve">This #GstUri object.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="2765">This #GstUri object.</doc>
             <type name="Uri" c:type="const GstUri*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_host" c:identifier="gst_uri_get_host" version="1.6">
-        <doc xml:space="preserve">Get the host name from the URI or %NULL if it doesn't exist.
+        <doc xml:space="preserve"
+             filename="gst/gsturi.c"
+             line="2161">Get the host name from the URI or %NULL if it doesn't exist.
 If @uri is %NULL then returns %NULL.</doc>
+        <source-position filename="gst/gsturi.h" line="278"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">The host name from the #GstUri object or %NULL.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsturi.c"
+               line="2168">The host name from the #GstUri object or %NULL.</doc>
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
         <parameters>
@@ -44356,7 +68183,9 @@ If @uri is %NULL then returns %NULL.</doc>
                               transfer-ownership="none"
                               nullable="1"
                               allow-none="1">
-            <doc xml:space="preserve">This #GstUri object.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="2163">This #GstUri object.</doc>
             <type name="Uri" c:type="const GstUri*"/>
           </instance-parameter>
         </parameters>
@@ -44364,7 +68193,9 @@ If @uri is %NULL then returns %NULL.</doc>
       <method name="get_media_fragment_table"
               c:identifier="gst_uri_get_media_fragment_table"
               version="1.12">
-        <doc xml:space="preserve">Get the media fragment table from the URI, as defined by "Media Fragments URI 1.0".
+        <doc xml:space="preserve"
+             filename="gst/gsturi.c"
+             line="2805">Get the media fragment table from the URI, as defined by "Media Fragments URI 1.0".
 Hash table returned by this API is a list of "key-value" pairs, and the each
 pair is generated by splitting "URI fragment" per "&amp;" sub-delims, then "key"
 and "value" are split by "=" sub-delims. The "key" returned by this API may
@@ -44375,8 +68206,11 @@ with #g_hash_table_unref() when it is no longer required.
 Modifying this hash table does not affect the fragment in the URI.
 
 See more about Media Fragments URI 1.0 (W3C) at https://www.w3.org/TR/media-frags/</doc>
+        <source-position filename="gst/gsturi.h" line="349"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">The
+          <doc xml:space="preserve"
+               filename="gst/gsturi.c"
+               line="2821">The
          fragment hash table from the URI.</doc>
           <type name="GLib.HashTable" c:type="GHashTable*">
             <type name="utf8"/>
@@ -44388,21 +68222,30 @@ See more about Media Fragments URI 1.0 (W3C) at https://www.w3.org/TR/media-frag
                               transfer-ownership="none"
                               nullable="1"
                               allow-none="1">
-            <doc xml:space="preserve">The #GstUri to get the fragment table from.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="2807">The #GstUri to get the fragment table from.</doc>
             <type name="Uri" c:type="const GstUri*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_path" c:identifier="gst_uri_get_path" version="1.6">
-        <doc xml:space="preserve">Extract the path string from the URI object.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsturi.c"
+             line="2244">Extract the path string from the URI object.</doc>
+        <source-position filename="gst/gsturi.h" line="290"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">The path from the URI. Once finished
+          <doc xml:space="preserve"
+               filename="gst/gsturi.c"
+               line="2250">The path from the URI. Once finished
                                      with the string should be g_free()'d.</doc>
           <type name="utf8" c:type="gchar*"/>
         </return-value>
         <parameters>
           <instance-parameter name="uri" transfer-ownership="none">
-            <doc xml:space="preserve">The #GstUri to get the path from.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="2246">The #GstUri to get the path from.</doc>
             <type name="Uri" c:type="const GstUri*"/>
           </instance-parameter>
         </parameters>
@@ -44410,9 +68253,14 @@ See more about Media Fragments URI 1.0 (W3C) at https://www.w3.org/TR/media-frag
       <method name="get_path_segments"
               c:identifier="gst_uri_get_path_segments"
               version="1.6">
-        <doc xml:space="preserve">Get a list of path segments from the URI.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsturi.c"
+             line="2372">Get a list of path segments from the URI.</doc>
+        <source-position filename="gst/gsturi.h" line="302"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">A #GList of path segment
+          <doc xml:space="preserve"
+               filename="gst/gsturi.c"
+               line="2378">A #GList of path segment
          strings or %NULL if no path segments are available. Free the list
          when no longer needed with g_list_free_full(list, g_free).</doc>
           <type name="GLib.List" c:type="GList*">
@@ -44424,7 +68272,9 @@ See more about Media Fragments URI 1.0 (W3C) at https://www.w3.org/TR/media-frag
                               transfer-ownership="none"
                               nullable="1"
                               allow-none="1">
-            <doc xml:space="preserve">The #GstUri to get the path from.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="2374">The #GstUri to get the path from.</doc>
             <type name="Uri" c:type="const GstUri*"/>
           </instance-parameter>
         </parameters>
@@ -44432,24 +68282,36 @@ See more about Media Fragments URI 1.0 (W3C) at https://www.w3.org/TR/media-frag
       <method name="get_path_string"
               c:identifier="gst_uri_get_path_string"
               version="1.6">
-        <doc xml:space="preserve">Extract the path string from the URI object as a percent encoded URI path.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsturi.c"
+             line="2307">Extract the path string from the URI object as a percent encoded URI path.</doc>
+        <source-position filename="gst/gsturi.h" line="296"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">The path from the URI. Once finished
+          <doc xml:space="preserve"
+               filename="gst/gsturi.c"
+               line="2313">The path from the URI. Once finished
                                      with the string should be g_free()'d.</doc>
           <type name="utf8" c:type="gchar*"/>
         </return-value>
         <parameters>
           <instance-parameter name="uri" transfer-ownership="none">
-            <doc xml:space="preserve">The #GstUri to get the path from.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="2309">The #GstUri to get the path from.</doc>
             <type name="Uri" c:type="const GstUri*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_port" c:identifier="gst_uri_get_port" version="1.6">
-        <doc xml:space="preserve">Get the port number from the URI or %GST_URI_NO_PORT if it doesn't exist.
+        <doc xml:space="preserve"
+             filename="gst/gsturi.c"
+             line="2203">Get the port number from the URI or %GST_URI_NO_PORT if it doesn't exist.
 If @uri is %NULL then returns %GST_URI_NO_PORT.</doc>
+        <source-position filename="gst/gsturi.h" line="284"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The port number from the #GstUri object or %GST_URI_NO_PORT.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsturi.c"
+               line="2210">The port number from the #GstUri object or %GST_URI_NO_PORT.</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
@@ -44457,7 +68319,9 @@ If @uri is %NULL then returns %GST_URI_NO_PORT.</doc>
                               transfer-ownership="none"
                               nullable="1"
                               allow-none="1">
-            <doc xml:space="preserve">This #GstUri object.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="2205">This #GstUri object.</doc>
             <type name="Uri" c:type="const GstUri*"/>
           </instance-parameter>
         </parameters>
@@ -44465,9 +68329,14 @@ If @uri is %NULL then returns %GST_URI_NO_PORT.</doc>
       <method name="get_query_keys"
               c:identifier="gst_uri_get_query_keys"
               version="1.6">
-        <doc xml:space="preserve">Get a list of the query keys from the URI.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsturi.c"
+             line="2740">Get a list of the query keys from the URI.</doc>
+        <source-position filename="gst/gsturi.h" line="340"/>
         <return-value transfer-ownership="container">
-          <doc xml:space="preserve">A list of keys from
+          <doc xml:space="preserve"
+               filename="gst/gsturi.c"
+               line="2746">A list of keys from
          the URI query. Free the list with g_list_free().</doc>
           <type name="GLib.List" c:type="GList*">
             <type name="utf8"/>
@@ -44478,7 +68347,9 @@ If @uri is %NULL then returns %GST_URI_NO_PORT.</doc>
                               transfer-ownership="none"
                               nullable="1"
                               allow-none="1">
-            <doc xml:space="preserve">The #GstUri to examine.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="2742">The #GstUri to examine.</doc>
             <type name="Uri" c:type="const GstUri*"/>
           </instance-parameter>
         </parameters>
@@ -44486,9 +68357,14 @@ If @uri is %NULL then returns %GST_URI_NO_PORT.</doc>
       <method name="get_query_string"
               c:identifier="gst_uri_get_query_string"
               version="1.6">
-        <doc xml:space="preserve">Get a percent encoded URI query string from the @uri.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsturi.c"
+             line="2494">Get a percent encoded URI query string from the @uri.</doc>
+        <source-position filename="gst/gsturi.h" line="314"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">A percent encoded query string. Use
+          <doc xml:space="preserve"
+               filename="gst/gsturi.c"
+               line="2500">A percent encoded query string. Use
                                      g_free() when no longer needed.</doc>
           <type name="utf8" c:type="gchar*"/>
         </return-value>
@@ -44497,7 +68373,9 @@ If @uri is %NULL then returns %GST_URI_NO_PORT.</doc>
                               transfer-ownership="none"
                               nullable="1"
                               allow-none="1">
-            <doc xml:space="preserve">The #GstUri to get the query string from.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="2496">The #GstUri to get the query string from.</doc>
             <type name="Uri" c:type="const GstUri*"/>
           </instance-parameter>
         </parameters>
@@ -44505,14 +68383,19 @@ If @uri is %NULL then returns %GST_URI_NO_PORT.</doc>
       <method name="get_query_table"
               c:identifier="gst_uri_get_query_table"
               version="1.6">
-        <doc xml:space="preserve">Get the query table from the URI. Keys and values in the table are freed
+        <doc xml:space="preserve"
+             filename="gst/gsturi.c"
+             line="2565">Get the query table from the URI. Keys and values in the table are freed
 with g_free when they are deleted. A value may be %NULL to indicate that
 the key should appear in the query string in the URI, but does not have a
 value. Free the returned #GHashTable with #g_hash_table_unref() when it is
 no longer required. Modifying this hash table will modify the query in the
 URI.</doc>
+        <source-position filename="gst/gsturi.h" line="320"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">The query
+          <doc xml:space="preserve"
+               filename="gst/gsturi.c"
+               line="2576">The query
          hash table from the URI.</doc>
           <type name="GLib.HashTable" c:type="GHashTable*">
             <type name="utf8"/>
@@ -44524,7 +68407,9 @@ URI.</doc>
                               transfer-ownership="none"
                               nullable="1"
                               allow-none="1">
-            <doc xml:space="preserve">The #GstUri to get the query table from.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="2567">The #GstUri to get the query table from.</doc>
             <type name="Uri" c:type="const GstUri*"/>
           </instance-parameter>
         </parameters>
@@ -44532,13 +68417,18 @@ URI.</doc>
       <method name="get_query_value"
               c:identifier="gst_uri_get_query_value"
               version="1.6">
-        <doc xml:space="preserve">Get the value associated with the @query_key key. Will return %NULL if the
+        <doc xml:space="preserve"
+             filename="gst/gsturi.c"
+             line="2713">Get the value associated with the @query_key key. Will return %NULL if the
 key has no value or if the key does not exist in the URI query table. Because
 %NULL is returned for both missing keys and keys with no value, you should
 use gst_uri_query_has_key() to determine if a key is present in the URI
 query.</doc>
+        <source-position filename="gst/gsturi.h" line="336"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">The value for the given key, or %NULL if not found.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsturi.c"
+               line="2724">The value for the given key, or %NULL if not found.</doc>
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
         <parameters>
@@ -44546,20 +68436,29 @@ query.</doc>
                               transfer-ownership="none"
                               nullable="1"
                               allow-none="1">
-            <doc xml:space="preserve">The #GstUri to examine.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="2715">The #GstUri to examine.</doc>
             <type name="Uri" c:type="const GstUri*"/>
           </instance-parameter>
           <parameter name="query_key" transfer-ownership="none">
-            <doc xml:space="preserve">The key to lookup.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="2716">The key to lookup.</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_scheme" c:identifier="gst_uri_get_scheme">
-        <doc xml:space="preserve">Get the scheme name from the URI or %NULL if it doesn't exist.
+        <doc xml:space="preserve"
+             filename="gst/gsturi.c"
+             line="2079">Get the scheme name from the URI or %NULL if it doesn't exist.
 If @uri is %NULL then returns %NULL.</doc>
+        <source-position filename="gst/gsturi.h" line="266"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">The scheme from the #GstUri object or %NULL.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsturi.c"
+               line="2086">The scheme from the #GstUri object or %NULL.</doc>
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
         <parameters>
@@ -44567,7 +68466,9 @@ If @uri is %NULL then returns %NULL.</doc>
                               transfer-ownership="none"
                               nullable="1"
                               allow-none="1">
-            <doc xml:space="preserve">This #GstUri object.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="2081">This #GstUri object.</doc>
             <type name="Uri" c:type="const GstUri*"/>
           </instance-parameter>
         </parameters>
@@ -44575,10 +68476,15 @@ If @uri is %NULL then returns %NULL.</doc>
       <method name="get_userinfo"
               c:identifier="gst_uri_get_userinfo"
               version="1.6">
-        <doc xml:space="preserve">Get the userinfo (usually in the form "username:password") from the URI
+        <doc xml:space="preserve"
+             filename="gst/gsturi.c"
+             line="2119">Get the userinfo (usually in the form "username:password") from the URI
 or %NULL if it doesn't exist. If @uri is %NULL then returns %NULL.</doc>
+        <source-position filename="gst/gsturi.h" line="272"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">The userinfo from the #GstUri object or %NULL.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsturi.c"
+               line="2126">The userinfo from the #GstUri object or %NULL.</doc>
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
         <parameters>
@@ -44586,7 +68492,9 @@ or %NULL if it doesn't exist. If @uri is %NULL then returns %NULL.</doc>
                               transfer-ownership="none"
                               nullable="1"
                               allow-none="1">
-            <doc xml:space="preserve">This #GstUri object.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="2121">This #GstUri object.</doc>
             <type name="Uri" c:type="const GstUri*"/>
           </instance-parameter>
         </parameters>
@@ -44594,15 +68502,22 @@ or %NULL if it doesn't exist. If @uri is %NULL then returns %NULL.</doc>
       <method name="is_normalized"
               c:identifier="gst_uri_is_normalized"
               version="1.6">
-        <doc xml:space="preserve">Tests the @uri to see if it is normalized. A %NULL @uri is considered to be
+        <doc xml:space="preserve"
+             filename="gst/gsturi.c"
+             line="2004">Tests the @uri to see if it is normalized. A %NULL @uri is considered to be
 normalized.</doc>
+        <source-position filename="gst/gsturi.h" line="260"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">TRUE if the URI is normalized or is %NULL.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsturi.c"
+               line="2011">TRUE if the URI is normalized or is %NULL.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="uri" transfer-ownership="none">
-            <doc xml:space="preserve">The #GstUri to test to see if it is normalized.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="2006">The #GstUri to test to see if it is normalized.</doc>
             <type name="Uri" c:type="const GstUri*"/>
           </instance-parameter>
         </parameters>
@@ -44610,30 +68525,42 @@ normalized.</doc>
       <method name="is_writable"
               c:identifier="gst_uri_is_writable"
               version="1.6">
-        <doc xml:space="preserve">Check if it is safe to write to this #GstUri.
+        <doc xml:space="preserve"
+             filename="gst/gsturi.c"
+             line="1884">Check if it is safe to write to this #GstUri.
 
 Check if the refcount of @uri is exactly 1, meaning that no other
 reference exists to the #GstUri and that the #GstUri is therefore writable.
 
 Modification of a #GstUri should only be done after verifying that it is
 writable.</doc>
+        <source-position filename="gst/gsturi.h" line="251"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if it is safe to write to the object.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsturi.c"
+               line="1896">%TRUE if it is safe to write to the object.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="uri" transfer-ownership="none">
-            <doc xml:space="preserve">The #GstUri object to test.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="1886">The #GstUri object to test.</doc>
             <type name="Uri" c:type="const GstUri*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="join" c:identifier="gst_uri_join" version="1.6">
-        <doc xml:space="preserve">Join a reference URI onto a base URI using the method from RFC 3986.
+        <doc xml:space="preserve"
+             filename="gst/gsturi.c"
+             line="1767">Join a reference URI onto a base URI using the method from RFC 3986.
 If either URI is %NULL then the other URI will be returned with the ref count
 increased.</doc>
+        <source-position filename="gst/gsturi.h" line="245"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">A #GstUri which represents the base
+          <doc xml:space="preserve"
+               filename="gst/gsturi.c"
+               line="1777">A #GstUri which represents the base
                                      with the reference URI joined on.</doc>
           <type name="Uri" c:type="GstUri*"/>
         </return-value>
@@ -44642,14 +68569,18 @@ increased.</doc>
                               transfer-ownership="none"
                               nullable="1"
                               allow-none="1">
-            <doc xml:space="preserve">The base URI to join another to.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="1769">The base URI to join another to.</doc>
             <type name="Uri" c:type="GstUri*"/>
           </instance-parameter>
           <parameter name="ref_uri"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">The reference URI to join onto the
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="1770">The reference URI to join onto the
                                       base URI.</doc>
             <type name="Uri" c:type="GstUri*"/>
           </parameter>
@@ -44658,19 +68589,26 @@ increased.</doc>
       <method name="make_writable"
               c:identifier="gst_uri_make_writable"
               version="1.6">
-        <doc xml:space="preserve">Make the #GstUri writable.
+        <doc xml:space="preserve"
+             filename="gst/gsturi.c"
+             line="1907">Make the #GstUri writable.
 
 Checks if @uri is writable, and if so the original object is returned. If
 not, then a writable copy is made and returned. This gives away the
 reference to @uri and returns a reference to the new #GstUri.
 If @uri is %NULL then %NULL is returned.</doc>
+        <source-position filename="gst/gsturi.h" line="254"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">A writable version of @uri.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsturi.c"
+               line="1918">A writable version of @uri.</doc>
           <type name="Uri" c:type="GstUri*"/>
         </return-value>
         <parameters>
           <instance-parameter name="uri" transfer-ownership="full">
-            <doc xml:space="preserve">The #GstUri object to make writable.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="1909">The #GstUri object to make writable.</doc>
             <type name="Uri" c:type="GstUri*"/>
           </instance-parameter>
         </parameters>
@@ -44678,9 +68616,14 @@ If @uri is %NULL then %NULL is returned.</doc>
       <method name="new_with_base"
               c:identifier="gst_uri_new_with_base"
               version="1.6">
-        <doc xml:space="preserve">Like gst_uri_new(), but joins the new URI onto a base URI.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsturi.c"
+             line="1462">Like gst_uri_new(), but joins the new URI onto a base URI.</doc>
+        <source-position filename="gst/gsturi.h" line="227"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">The new URI joined onto @base.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsturi.c"
+               line="1478">The new URI joined onto @base.</doc>
           <type name="Uri" c:type="GstUri*"/>
         </return-value>
         <parameters>
@@ -44688,39 +68631,51 @@ If @uri is %NULL then %NULL is returned.</doc>
                               transfer-ownership="none"
                               nullable="1"
                               allow-none="1">
-            <doc xml:space="preserve">The base URI to join the new URI to.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="1464">The base URI to join the new URI to.</doc>
             <type name="Uri" c:type="GstUri*"/>
           </instance-parameter>
           <parameter name="scheme"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">The scheme for the new URI.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="1465">The scheme for the new URI.</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="userinfo"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">The user-info for the new URI.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="1466">The user-info for the new URI.</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="host"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">The host name for the new URI.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="1467">The host name for the new URI.</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="port" transfer-ownership="none">
-            <doc xml:space="preserve">The port number for the new URI or %GST_URI_NO_PORT.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="1468">The port number for the new URI or %GST_URI_NO_PORT.</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="path"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">The path for the new URI with '/' separating path
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="1469">The path for the new URI with '/' separating path
                      elements.</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
@@ -44728,7 +68683,9 @@ If @uri is %NULL then %NULL is returned.</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">The query string for the new URI with '&amp;' separating
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="1471">The query string for the new URI with '&amp;' separating
                       query elements. Elements containing '&amp;' characters
                       should encode them as "&amp;percnt;26".</doc>
             <type name="utf8" c:type="const gchar*"/>
@@ -44737,25 +68694,34 @@ If @uri is %NULL then %NULL is returned.</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">The fragment name for the new URI.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="1474">The fragment name for the new URI.</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </method>
       <method name="normalize" c:identifier="gst_uri_normalize" version="1.6">
-        <doc xml:space="preserve">Normalization will remove extra path segments ("." and "..") from the URI. It
+        <doc xml:space="preserve"
+             filename="gst/gsturi.c"
+             line="2051">Normalization will remove extra path segments ("." and "..") from the URI. It
 will also convert the scheme and host name to lower case and any
 percent-encoded values to uppercase.
 
 The #GstUri object must be writable. Check with gst_uri_is_writable() or use
 gst_uri_make_writable() first.</doc>
+        <source-position filename="gst/gsturi.h" line="263"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">TRUE if the URI was modified.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsturi.c"
+               line="2062">TRUE if the URI was modified.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="uri" transfer-ownership="none">
-            <doc xml:space="preserve">The #GstUri to normalize.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="2053">The #GstUri to normalize.</doc>
             <type name="Uri" c:type="GstUri*"/>
           </instance-parameter>
         </parameters>
@@ -44763,9 +68729,14 @@ gst_uri_make_writable() first.</doc>
       <method name="query_has_key"
               c:identifier="gst_uri_query_has_key"
               version="1.6">
-        <doc xml:space="preserve">Check if there is a query table entry for the @query_key key.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if @query_key exists in the URI query table.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsturi.c"
+             line="2690">Check if there is a query table entry for the @query_key key.</doc>
+        <source-position filename="gst/gsturi.h" line="332"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gsturi.c"
+               line="2697">%TRUE if @query_key exists in the URI query table.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
@@ -44773,11 +68744,15 @@ gst_uri_make_writable() first.</doc>
                               transfer-ownership="none"
                               nullable="1"
                               allow-none="1">
-            <doc xml:space="preserve">The #GstUri to examine.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="2692">The #GstUri to examine.</doc>
             <type name="Uri" c:type="const GstUri*"/>
           </instance-parameter>
           <parameter name="query_key" transfer-ownership="none">
-            <doc xml:space="preserve">The key to lookup.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="2693">The key to lookup.</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
@@ -44785,9 +68760,14 @@ gst_uri_make_writable() first.</doc>
       <method name="remove_query_key"
               c:identifier="gst_uri_remove_query_key"
               version="1.6">
-        <doc xml:space="preserve">Remove an entry from the query table by key.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the key existed in the table and was removed.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsturi.c"
+             line="2659">Remove an entry from the query table by key.</doc>
+        <source-position filename="gst/gsturi.h" line="329"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gsturi.c"
+               line="2666">%TRUE if the key existed in the table and was removed.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
@@ -44795,11 +68775,15 @@ gst_uri_make_writable() first.</doc>
                               transfer-ownership="none"
                               nullable="1"
                               allow-none="1">
-            <doc xml:space="preserve">The #GstUri to modify.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="2661">The #GstUri to modify.</doc>
             <type name="Uri" c:type="GstUri*"/>
           </instance-parameter>
           <parameter name="query_key" transfer-ownership="none">
-            <doc xml:space="preserve">The key to remove.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="2662">The key to remove.</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
@@ -44807,10 +68791,15 @@ gst_uri_make_writable() first.</doc>
       <method name="set_fragment"
               c:identifier="gst_uri_set_fragment"
               version="1.6">
-        <doc xml:space="preserve">Sets the fragment string in the URI. Use a value of %NULL in @fragment to
+        <doc xml:space="preserve"
+             filename="gst/gsturi.c"
+             line="2781">Sets the fragment string in the URI. Use a value of %NULL in @fragment to
 unset the fragment string.</doc>
+        <source-position filename="gst/gsturi.h" line="346"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the fragment was set/unset successfully.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsturi.c"
+               line="2789">%TRUE if the fragment was set/unset successfully.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
@@ -44818,22 +68807,31 @@ unset the fragment string.</doc>
                               transfer-ownership="none"
                               nullable="1"
                               allow-none="1">
-            <doc xml:space="preserve">The #GstUri to modify.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="2783">The #GstUri to modify.</doc>
             <type name="Uri" c:type="GstUri*"/>
           </instance-parameter>
           <parameter name="fragment"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">The fragment string to set.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="2784">The fragment string to set.</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_host" c:identifier="gst_uri_set_host" version="1.6">
-        <doc xml:space="preserve">Set or unset the host for the URI.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the host was set/unset successfully.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsturi.c"
+             line="2179">Set or unset the host for the URI.</doc>
+        <source-position filename="gst/gsturi.h" line="281"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gsturi.c"
+               line="2186">%TRUE if the host was set/unset successfully.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
@@ -44841,19 +68839,28 @@ unset the fragment string.</doc>
                               transfer-ownership="none"
                               nullable="1"
                               allow-none="1">
-            <doc xml:space="preserve">The #GstUri to modify.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="2181">The #GstUri to modify.</doc>
             <type name="Uri" c:type="GstUri*"/>
           </instance-parameter>
           <parameter name="host" transfer-ownership="none">
-            <doc xml:space="preserve">The new host string to set or %NULL to unset.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="2182">The new host string to set or %NULL to unset.</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_path" c:identifier="gst_uri_set_path" version="1.6">
-        <doc xml:space="preserve">Sets or unsets the path in the URI.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the path was set successfully.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsturi.c"
+             line="2282">Sets or unsets the path in the URI.</doc>
+        <source-position filename="gst/gsturi.h" line="293"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gsturi.c"
+               line="2290">%TRUE if the path was set successfully.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
@@ -44861,11 +68868,15 @@ unset the fragment string.</doc>
                               transfer-ownership="none"
                               nullable="1"
                               allow-none="1">
-            <doc xml:space="preserve">The #GstUri to modify.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="2284">The #GstUri to modify.</doc>
             <type name="Uri" c:type="GstUri*"/>
           </instance-parameter>
           <parameter name="path" transfer-ownership="none">
-            <doc xml:space="preserve">The new path to set with path segments separated by '/', or use %NULL
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="2285">The new path to set with path segments separated by '/', or use %NULL
        to unset the path.</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
@@ -44874,9 +68885,14 @@ unset the fragment string.</doc>
       <method name="set_path_segments"
               c:identifier="gst_uri_set_path_segments"
               version="1.6">
-        <doc xml:space="preserve">Replace the path segments list in the URI.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the path segments were set successfully.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsturi.c"
+             line="2398">Replace the path segments list in the URI.</doc>
+        <source-position filename="gst/gsturi.h" line="305"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gsturi.c"
+               line="2406">%TRUE if the path segments were set successfully.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
@@ -44884,14 +68900,18 @@ unset the fragment string.</doc>
                               transfer-ownership="none"
                               nullable="1"
                               allow-none="1">
-            <doc xml:space="preserve">The #GstUri to modify.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="2400">The #GstUri to modify.</doc>
             <type name="Uri" c:type="GstUri*"/>
           </instance-parameter>
           <parameter name="path_segments"
                      transfer-ownership="full"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">The new
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="2401">The new
                 path list to set.</doc>
             <type name="GLib.List" c:type="GList*">
               <type name="utf8"/>
@@ -44902,9 +68922,14 @@ unset the fragment string.</doc>
       <method name="set_path_string"
               c:identifier="gst_uri_set_path_string"
               version="1.6">
-        <doc xml:space="preserve">Sets or unsets the path in the URI.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the path was set successfully.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsturi.c"
+             line="2348">Sets or unsets the path in the URI.</doc>
+        <source-position filename="gst/gsturi.h" line="299"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gsturi.c"
+               line="2356">%TRUE if the path was set successfully.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
@@ -44912,20 +68937,29 @@ unset the fragment string.</doc>
                               transfer-ownership="none"
                               nullable="1"
                               allow-none="1">
-            <doc xml:space="preserve">The #GstUri to modify.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="2350">The #GstUri to modify.</doc>
             <type name="Uri" c:type="GstUri*"/>
           </instance-parameter>
           <parameter name="path" transfer-ownership="none">
-            <doc xml:space="preserve">The new percent encoded path to set with path segments separated by
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="2351">The new percent encoded path to set with path segments separated by
 '/', or use %NULL to unset the path.</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_port" c:identifier="gst_uri_set_port" version="1.6">
-        <doc xml:space="preserve">Set or unset the port number for the URI.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the port number was set/unset successfully.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsturi.c"
+             line="2221">Set or unset the port number for the URI.</doc>
+        <source-position filename="gst/gsturi.h" line="287"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gsturi.c"
+               line="2228">%TRUE if the port number was set/unset successfully.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
@@ -44933,11 +68967,15 @@ unset the fragment string.</doc>
                               transfer-ownership="none"
                               nullable="1"
                               allow-none="1">
-            <doc xml:space="preserve">The #GstUri to modify.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="2223">The #GstUri to modify.</doc>
             <type name="Uri" c:type="GstUri*"/>
           </instance-parameter>
           <parameter name="port" transfer-ownership="none">
-            <doc xml:space="preserve">The new port number to set or %GST_URI_NO_PORT to unset.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="2224">The new port number to set or %GST_URI_NO_PORT to unset.</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
@@ -44945,9 +68983,14 @@ unset the fragment string.</doc>
       <method name="set_query_string"
               c:identifier="gst_uri_set_query_string"
               version="1.6">
-        <doc xml:space="preserve">Sets or unsets the query table in the URI.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the query table was set successfully.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsturi.c"
+             line="2538">Sets or unsets the query table in the URI.</doc>
+        <source-position filename="gst/gsturi.h" line="317"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gsturi.c"
+               line="2546">%TRUE if the query table was set successfully.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
@@ -44955,11 +68998,15 @@ unset the fragment string.</doc>
                               transfer-ownership="none"
                               nullable="1"
                               allow-none="1">
-            <doc xml:space="preserve">The #GstUri to modify.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="2540">The #GstUri to modify.</doc>
             <type name="Uri" c:type="GstUri*"/>
           </instance-parameter>
           <parameter name="query" transfer-ownership="none">
-            <doc xml:space="preserve">The new percent encoded query string to use to populate the query
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="2541">The new percent encoded query string to use to populate the query
        table, or use %NULL to unset the query table.</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
@@ -44968,11 +69015,16 @@ unset the fragment string.</doc>
       <method name="set_query_table"
               c:identifier="gst_uri_set_query_table"
               version="1.6">
-        <doc xml:space="preserve">Set the query table to use in the URI. The old table is unreferenced and a
+        <doc xml:space="preserve"
+             filename="gst/gsturi.c"
+             line="2593">Set the query table to use in the URI. The old table is unreferenced and a
 reference to the new one is used instead. A value if %NULL for @query_table
 will remove the query string from the URI.</doc>
+        <source-position filename="gst/gsturi.h" line="323"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the new table was successfully used for the query table.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsturi.c"
+               line="2603">%TRUE if the new table was successfully used for the query table.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
@@ -44980,14 +69032,18 @@ will remove the query string from the URI.</doc>
                               transfer-ownership="none"
                               nullable="1"
                               allow-none="1">
-            <doc xml:space="preserve">The #GstUri to modify.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="2595">The #GstUri to modify.</doc>
             <type name="Uri" c:type="GstUri*"/>
           </instance-parameter>
           <parameter name="query_table"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">The new
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="2596">The new
               query table to use.</doc>
             <type name="GLib.HashTable" c:type="GHashTable*">
               <type name="utf8"/>
@@ -44999,11 +69055,16 @@ will remove the query string from the URI.</doc>
       <method name="set_query_value"
               c:identifier="gst_uri_set_query_value"
               version="1.6">
-        <doc xml:space="preserve">This inserts or replaces a key in the query table. A @query_value of %NULL
+        <doc xml:space="preserve"
+             filename="gst/gsturi.c"
+             line="2627">This inserts or replaces a key in the query table. A @query_value of %NULL
 indicates that the key has no associated value, but will still be present in
 the query string.</doc>
+        <source-position filename="gst/gsturi.h" line="326"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the query table was successfully updated.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsturi.c"
+               line="2637">%TRUE if the query table was successfully updated.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
@@ -45011,18 +69072,24 @@ the query string.</doc>
                               transfer-ownership="none"
                               nullable="1"
                               allow-none="1">
-            <doc xml:space="preserve">The #GstUri to modify.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="2629">The #GstUri to modify.</doc>
             <type name="Uri" c:type="GstUri*"/>
           </instance-parameter>
           <parameter name="query_key" transfer-ownership="none">
-            <doc xml:space="preserve">The key for the query entry.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="2630">The key for the query entry.</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="query_value"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">The value for the key.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="2631">The value for the key.</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
@@ -45030,9 +69097,14 @@ the query string.</doc>
       <method name="set_scheme"
               c:identifier="gst_uri_set_scheme"
               version="1.6">
-        <doc xml:space="preserve">Set or unset the scheme for the URI.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the scheme was set/unset successfully.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsturi.c"
+             line="2095">Set or unset the scheme for the URI.</doc>
+        <source-position filename="gst/gsturi.h" line="269"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gsturi.c"
+               line="2102">%TRUE if the scheme was set/unset successfully.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
@@ -45040,11 +69112,15 @@ the query string.</doc>
                               transfer-ownership="none"
                               nullable="1"
                               allow-none="1">
-            <doc xml:space="preserve">The #GstUri to modify.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="2097">The #GstUri to modify.</doc>
             <type name="Uri" c:type="GstUri*"/>
           </instance-parameter>
           <parameter name="scheme" transfer-ownership="none">
-            <doc xml:space="preserve">The new scheme to set or %NULL to unset the scheme.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="2098">The new scheme to set or %NULL to unset the scheme.</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
@@ -45052,9 +69128,14 @@ the query string.</doc>
       <method name="set_userinfo"
               c:identifier="gst_uri_set_userinfo"
               version="1.6">
-        <doc xml:space="preserve">Set or unset the user information for the URI.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the user information was set/unset successfully.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsturi.c"
+             line="2137">Set or unset the user information for the URI.</doc>
+        <source-position filename="gst/gsturi.h" line="275"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gsturi.c"
+               line="2144">%TRUE if the user information was set/unset successfully.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
@@ -45062,28 +69143,39 @@ the query string.</doc>
                               transfer-ownership="none"
                               nullable="1"
                               allow-none="1">
-            <doc xml:space="preserve">The #GstUri to modify.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="2139">The #GstUri to modify.</doc>
             <type name="Uri" c:type="GstUri*"/>
           </instance-parameter>
           <parameter name="userinfo" transfer-ownership="none">
-            <doc xml:space="preserve">The new user-information string to set or %NULL to unset.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="2140">The new user-information string to set or %NULL to unset.</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </method>
       <method name="to_string" c:identifier="gst_uri_to_string" version="1.6">
-        <doc xml:space="preserve">Convert the URI to a string.
+        <doc xml:space="preserve"
+             filename="gst/gsturi.c"
+             line="1930">Convert the URI to a string.
 
 Returns the URI as held in this object as a #gchar* nul-terminated string.
 The caller should g_free() the string once they are finished with it.
 The string is put together as described in RFC 3986.</doc>
+        <source-position filename="gst/gsturi.h" line="257"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">The string version of the URI.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsturi.c"
+               line="1940">The string version of the URI.</doc>
           <type name="utf8" c:type="gchar*"/>
         </return-value>
         <parameters>
           <instance-parameter name="uri" transfer-ownership="none">
-            <doc xml:space="preserve">This #GstUri to convert to a string.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="1932">This #GstUri to convert to a string.</doc>
             <type name="Uri" c:type="const GstUri*"/>
           </instance-parameter>
         </parameters>
@@ -45091,22 +69183,31 @@ The string is put together as described in RFC 3986.</doc>
       <function name="construct"
                 c:identifier="gst_uri_construct"
                 deprecated="1">
-        <doc xml:space="preserve">Constructs a URI for a given valid protocol and location.
+        <doc xml:space="preserve"
+             filename="gst/gsturi.c"
+             line="490">Constructs a URI for a given valid protocol and location.
 
 Free-function: g_free</doc>
         <doc-deprecated xml:space="preserve">Use GstURI instead.</doc-deprecated>
+        <source-position filename="gst/gsturi.h" line="155"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new string for this URI. Returns %NULL if the
+          <doc xml:space="preserve"
+               filename="gst/gsturi.c"
+               line="499">a new string for this URI. Returns %NULL if the
     given URI protocol is not valid, or the given location is %NULL.</doc>
           <type name="utf8" c:type="gchar*"/>
         </return-value>
         <parameters>
           <parameter name="protocol" transfer-ownership="none">
-            <doc xml:space="preserve">Protocol for URI</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="492">Protocol for URI</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="location" transfer-ownership="none">
-            <doc xml:space="preserve">Location for URI</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="493">Location for URI</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
@@ -45114,80 +69215,117 @@ Free-function: g_free</doc>
       <function name="from_string"
                 c:identifier="gst_uri_from_string"
                 version="1.6">
-        <doc xml:space="preserve">Parses a URI string into a new #GstUri object. Will return NULL if the URI
+        <doc xml:space="preserve"
+             filename="gst/gsturi.c"
+             line="1500">Parses a URI string into a new #GstUri object. Will return NULL if the URI
 cannot be parsed.</doc>
+        <source-position filename="gst/gsturi.h" line="236"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">A new #GstUri object, or NULL.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsturi.c"
+               line="1507">A new #GstUri object, or NULL.</doc>
           <type name="Uri" c:type="GstUri*"/>
         </return-value>
         <parameters>
           <parameter name="uri" transfer-ownership="none">
-            <doc xml:space="preserve">The URI string to parse.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="1502">The URI string to parse.</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </function>
       <function name="get_location" c:identifier="gst_uri_get_location">
-        <doc xml:space="preserve">Extracts the location out of a given valid URI, ie. the protocol and "://"
+        <doc xml:space="preserve"
+             filename="gst/gsturi.c"
+             line="441">Extracts the location out of a given valid URI, ie. the protocol and "://"
 are stripped from the URI, which means that the location returned includes
 the hostname if one is specified. The returned string must be freed using
 g_free().
 
 Free-function: g_free</doc>
+        <source-position filename="gst/gsturi.h" line="152"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">the location for this URI. Returns
+          <doc xml:space="preserve"
+               filename="gst/gsturi.c"
+               line="452">the location for this URI. Returns
     %NULL if the URI isn't valid. If the URI does not contain a location, an
     empty string is returned.</doc>
           <type name="utf8" c:type="gchar*"/>
         </return-value>
         <parameters>
           <parameter name="uri" transfer-ownership="none">
-            <doc xml:space="preserve">A URI string</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="443">A URI string</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </function>
       <function name="get_protocol" c:identifier="gst_uri_get_protocol">
-        <doc xml:space="preserve">Extracts the protocol out of a given valid URI. The returned string must be
+        <doc xml:space="preserve"
+             filename="gst/gsturi.c"
+             line="393">Extracts the protocol out of a given valid URI. The returned string must be
 freed using g_free().</doc>
+        <source-position filename="gst/gsturi.h" line="146"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">The protocol for this URI.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsturi.c"
+               line="400">The protocol for this URI.</doc>
           <type name="utf8" c:type="gchar*"/>
         </return-value>
         <parameters>
           <parameter name="uri" transfer-ownership="none">
-            <doc xml:space="preserve">A URI string</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="395">A URI string</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </function>
       <function name="has_protocol" c:identifier="gst_uri_has_protocol">
-        <doc xml:space="preserve">Checks if the protocol of a given valid URI matches @protocol.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the protocol matches.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsturi.c"
+             line="415">Checks if the protocol of a given valid URI matches @protocol.</doc>
+        <source-position filename="gst/gsturi.h" line="149"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gsturi.c"
+               line="422">%TRUE if the protocol matches.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <parameter name="uri" transfer-ownership="none">
-            <doc xml:space="preserve">a URI string</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="417">a URI string</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="protocol" transfer-ownership="none">
-            <doc xml:space="preserve">a protocol string (e.g. "http")</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="418">a protocol string (e.g. "http")</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </function>
       <function name="is_valid" c:identifier="gst_uri_is_valid">
-        <doc xml:space="preserve">Tests if the given string is a valid URI identifier. URIs start with a valid
+        <doc xml:space="preserve"
+             filename="gst/gsturi.c"
+             line="372">Tests if the given string is a valid URI identifier. URIs start with a valid
 scheme followed by ":" and maybe a string identifying the location.</doc>
+        <source-position filename="gst/gsturi.h" line="143"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the string is a valid URI</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsturi.c"
+               line="379">%TRUE if the string is a valid URI</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <parameter name="uri" transfer-ownership="none">
-            <doc xml:space="preserve">A URI string</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="374">A URI string</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
@@ -45195,98 +69333,373 @@ scheme followed by ":" and maybe a string identifying the location.</doc>
       <function name="join_strings"
                 c:identifier="gst_uri_join_strings"
                 version="1.6">
-        <doc xml:space="preserve">This is a convenience function to join two URI strings and return the result.
+        <doc xml:space="preserve"
+             filename="gst/gsturi.c"
+             line="1856">This is a convenience function to join two URI strings and return the result.
 The returned string should be g_free()'d after use.</doc>
+        <source-position filename="gst/gsturi.h" line="248"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">A string representing the percent-encoded join of
+          <doc xml:space="preserve"
+               filename="gst/gsturi.c"
+               line="1864">A string representing the percent-encoded join of
          the two URIs.</doc>
           <type name="utf8" c:type="gchar*"/>
         </return-value>
         <parameters>
           <parameter name="base_uri" transfer-ownership="none">
-            <doc xml:space="preserve">The percent-encoded base URI.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="1858">The percent-encoded base URI.</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="ref_uri" transfer-ownership="none">
-            <doc xml:space="preserve">The percent-encoded reference URI to join to the @base_uri.</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="1859">The percent-encoded reference URI to join to the @base_uri.</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </function>
       <function name="protocol_is_supported"
                 c:identifier="gst_uri_protocol_is_supported">
-        <doc xml:space="preserve">Checks if an element exists that supports the given URI protocol. Note
+        <doc xml:space="preserve"
+             filename="gst/gsturi.c"
+             line="585">Checks if an element exists that supports the given URI protocol. Note
 that a positive return value does not imply that a subsequent call to
 gst_element_make_from_uri() is guaranteed to work.</doc>
+        <source-position filename="gst/gsturi.h" line="140"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsturi.c"
+               line="594">%TRUE</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <parameter name="type" transfer-ownership="none">
-            <doc xml:space="preserve">Whether to check for a source or a sink</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="587">Whether to check for a source or a sink</doc>
             <type name="URIType" c:type="const GstURIType"/>
           </parameter>
           <parameter name="protocol" transfer-ownership="none">
-            <doc xml:space="preserve">Protocol that should be checked for (e.g. "http" or "smb")</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="588">Protocol that should be checked for (e.g. "http" or "smb")</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </function>
       <function name="protocol_is_valid"
                 c:identifier="gst_uri_protocol_is_valid">
-        <doc xml:space="preserve">Tests if the given string is a valid protocol identifier. Protocols
+        <doc xml:space="preserve"
+             filename="gst/gsturi.c"
+             line="350">Tests if the given string is a valid protocol identifier. Protocols
 must consist of alphanumeric characters, '+', '-' and '.' and must
 start with a alphabetic character. See RFC 3986 Section 3.1.</doc>
+        <source-position filename="gst/gsturi.h" line="137"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the string is a valid protocol identifier, %FALSE otherwise.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsturi.c"
+               line="358">%TRUE if the string is a valid protocol identifier, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <parameter name="protocol" transfer-ownership="none">
-            <doc xml:space="preserve">A string</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gsturi.c"
+                 line="352">A string</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </function>
     </record>
     <constant name="VALUE_EQUAL" value="0" c:type="GST_VALUE_EQUAL">
-      <doc xml:space="preserve">Indicates that the first value provided to a comparison function
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.h"
+           line="414">Indicates that the first value provided to a comparison function
 (gst_value_compare()) is equal to the second one.</doc>
+      <source-position filename="gst/gstvalue.h" line="420"/>
       <type name="gint" c:type="gint"/>
     </constant>
     <constant name="VALUE_GREATER_THAN"
               value="1"
               c:type="GST_VALUE_GREATER_THAN">
-      <doc xml:space="preserve">Indicates that the first value provided to a comparison function
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.h"
+           line="422">Indicates that the first value provided to a comparison function
 (gst_value_compare()) is greater than the second one.</doc>
+      <source-position filename="gst/gstvalue.h" line="428"/>
       <type name="gint" c:type="gint"/>
     </constant>
+    <function-macro name="VALUE_HOLDS_ARRAY"
+                    c:identifier="GST_VALUE_HOLDS_ARRAY"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.h"
+           line="132">Checks if the given #GValue contains a #GST_TYPE_ARRAY value.</doc>
+      <source-position filename="gst/gstvalue.h" line="138"/>
+      <parameters>
+        <parameter name="x">
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.h"
+               line="134">the #GValue to check</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VALUE_HOLDS_BITMASK"
+                    c:identifier="GST_VALUE_HOLDS_BITMASK"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.h"
+           line="196">Checks if the given #GValue contains a #GST_TYPE_BITMASK value.</doc>
+      <source-position filename="gst/gstvalue.h" line="202"/>
+      <parameters>
+        <parameter name="x">
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.h"
+               line="198">the #GValue to check</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VALUE_HOLDS_BUFFER"
+                    c:identifier="GST_VALUE_HOLDS_BUFFER"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.h"
+           line="164">Checks if the given #GValue contains a #GST_TYPE_BUFFER value.</doc>
+      <source-position filename="gst/gstvalue.h" line="170"/>
+      <parameters>
+        <parameter name="x">
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.h"
+               line="166">the #GValue to check</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VALUE_HOLDS_CAPS"
+                    c:identifier="GST_VALUE_HOLDS_CAPS"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.h"
+           line="140">Checks if the given #GValue contains a #GST_TYPE_CAPS value.</doc>
+      <source-position filename="gst/gstvalue.h" line="146"/>
+      <parameters>
+        <parameter name="x">
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.h"
+               line="142">the #GValue to check</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VALUE_HOLDS_CAPS_FEATURES"
+                    c:identifier="GST_VALUE_HOLDS_CAPS_FEATURES"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.h"
+           line="156">Checks if the given #GValue contains a #GST_TYPE_CAPS_FEATURES value.</doc>
+      <source-position filename="gst/gstvalue.h" line="162"/>
+      <parameters>
+        <parameter name="x">
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.h"
+               line="158">the #GValue to check</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VALUE_HOLDS_DATE_TIME"
+                    c:identifier="GST_VALUE_HOLDS_DATE_TIME"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.h"
+           line="188">Checks if the given #GValue contains a #GST_TYPE_DATE_TIME value.</doc>
+      <source-position filename="gst/gstvalue.h" line="194"/>
+      <parameters>
+        <parameter name="x">
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.h"
+               line="190">the #GValue to check</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VALUE_HOLDS_DOUBLE_RANGE"
+                    c:identifier="GST_VALUE_HOLDS_DOUBLE_RANGE"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.h"
+           line="108">Checks if the given #GValue contains a #GST_TYPE_DOUBLE_RANGE value.</doc>
+      <source-position filename="gst/gstvalue.h" line="114"/>
+      <parameters>
+        <parameter name="x">
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.h"
+               line="110">the #GValue to check</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VALUE_HOLDS_FLAG_SET"
+                    c:identifier="GST_VALUE_HOLDS_FLAG_SET"
+                    version="1.6"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.h"
+           line="204">Checks if the given #GValue contains a #GST_TYPE_FLAG_SET value.</doc>
+      <source-position filename="gst/gstvalue.h" line="212"/>
+      <parameters>
+        <parameter name="x">
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.h"
+               line="206">the #GValue to check</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VALUE_HOLDS_FRACTION"
+                    c:identifier="GST_VALUE_HOLDS_FRACTION"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.h"
+           line="180">Checks if the given #GValue contains a #GST_TYPE_FRACTION value.</doc>
+      <source-position filename="gst/gstvalue.h" line="186"/>
+      <parameters>
+        <parameter name="x">
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.h"
+               line="182">the #GValue to check</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VALUE_HOLDS_FRACTION_RANGE"
+                    c:identifier="GST_VALUE_HOLDS_FRACTION_RANGE"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.h"
+           line="116">Checks if the given #GValue contains a #GST_TYPE_FRACTION_RANGE value.</doc>
+      <source-position filename="gst/gstvalue.h" line="122"/>
+      <parameters>
+        <parameter name="x">
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.h"
+               line="118">the #GValue to check</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VALUE_HOLDS_INT64_RANGE"
+                    c:identifier="GST_VALUE_HOLDS_INT64_RANGE"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.h"
+           line="100">Checks if the given #GValue contains a #GST_TYPE_INT64_RANGE value.</doc>
+      <source-position filename="gst/gstvalue.h" line="106"/>
+      <parameters>
+        <parameter name="x">
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.h"
+               line="102">the #GValue to check</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VALUE_HOLDS_INT_RANGE"
+                    c:identifier="GST_VALUE_HOLDS_INT_RANGE"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.h"
+           line="92">Checks if the given #GValue contains a #GST_TYPE_INT_RANGE value.</doc>
+      <source-position filename="gst/gstvalue.h" line="98"/>
+      <parameters>
+        <parameter name="x">
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.h"
+               line="94">the #GValue to check</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VALUE_HOLDS_LIST"
+                    c:identifier="GST_VALUE_HOLDS_LIST"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.h"
+           line="124">Checks if the given #GValue contains a #GST_TYPE_LIST value.</doc>
+      <source-position filename="gst/gstvalue.h" line="130"/>
+      <parameters>
+        <parameter name="x">
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.h"
+               line="126">the #GValue to check</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VALUE_HOLDS_SAMPLE"
+                    c:identifier="GST_VALUE_HOLDS_SAMPLE"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.h"
+           line="172">Checks if the given #GValue contains a #GST_TYPE_SAMPLE value.</doc>
+      <source-position filename="gst/gstvalue.h" line="178"/>
+      <parameters>
+        <parameter name="x">
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.h"
+               line="174">the #GValue to check</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VALUE_HOLDS_STRUCTURE"
+                    c:identifier="GST_VALUE_HOLDS_STRUCTURE"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.h"
+           line="148">Checks if the given #GValue contains a #GST_TYPE_STRUCTURE value.</doc>
+      <source-position filename="gst/gstvalue.h" line="154"/>
+      <parameters>
+        <parameter name="x">
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.h"
+               line="150">the #GValue to check</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
     <constant name="VALUE_LESS_THAN" value="-1" c:type="GST_VALUE_LESS_THAN">
-      <doc xml:space="preserve">Indicates that the first value provided to a comparison function
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.h"
+           line="406">Indicates that the first value provided to a comparison function
 (gst_value_compare()) is lesser than the second one.</doc>
+      <source-position filename="gst/gstvalue.h" line="412"/>
       <type name="gint" c:type="gint"/>
     </constant>
     <constant name="VALUE_UNORDERED" value="2" c:type="GST_VALUE_UNORDERED">
-      <doc xml:space="preserve">Indicates that the comparison function (gst_value_compare()) can not
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.h"
+           line="430">Indicates that the comparison function (gst_value_compare()) can not
 determine a order for the two provided values.</doc>
+      <source-position filename="gst/gstvalue.h" line="436"/>
       <type name="gint" c:type="gint"/>
     </constant>
     <constant name="VERSION_MAJOR" value="1" c:type="GST_VERSION_MAJOR">
-      <doc xml:space="preserve">The major version of GStreamer at compile time:</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstversion.h"
+           line="46">The major version of GStreamer at compile time:</doc>
+      <source-position filename="gst/gstversion.h" line="51"/>
       <type name="gint" c:type="gint"/>
     </constant>
     <constant name="VERSION_MICRO" value="0" c:type="GST_VERSION_MICRO">
-      <doc xml:space="preserve">The micro version of GStreamer at compile time:</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstversion.h"
+           line="58">The micro version of GStreamer at compile time:</doc>
+      <source-position filename="gst/gstversion.h" line="63"/>
       <type name="gint" c:type="gint"/>
     </constant>
     <constant name="VERSION_MINOR" value="17" c:type="GST_VERSION_MINOR">
-      <doc xml:space="preserve">The minor version of GStreamer at compile time:</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstversion.h"
+           line="52">The minor version of GStreamer at compile time:</doc>
+      <source-position filename="gst/gstversion.h" line="57"/>
       <type name="gint" c:type="gint"/>
     </constant>
     <constant name="VERSION_NANO" value="1" c:type="GST_VERSION_NANO">
-      <doc xml:space="preserve">The nano version of GStreamer at compile time:
+      <doc xml:space="preserve"
+           filename="gst/gstversion.h"
+           line="64">The nano version of GStreamer at compile time:
 Actual releases have 0, GIT versions have 1, prerelease versions have 2-...</doc>
+      <source-position filename="gst/gstversion.h" line="70"/>
       <type name="gint" c:type="gint"/>
     </constant>
     <class name="ValueArray"
@@ -45295,121 +69708,205 @@ Actual releases have 0, GIT versions have 1, prerelease versions have 2-...</doc
            glib:type-name="GstValueArray"
            glib:get-type="gst_value_array_get_type"
            glib:fundamental="1">
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.h"
+           line="316">A fundamental type that describes an ordered list of #GValue</doc>
       <function name="append_and_take_value"
                 c:identifier="gst_value_array_append_and_take_value"
                 version="1.2">
-        <doc xml:space="preserve">Appends @append_value to the GstValueArray in @value.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstvalue.c"
+             line="992">Appends @append_value to the GstValueArray in @value.</doc>
+        <source-position filename="gst/gstvalue.h" line="576"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <parameter name="value" transfer-ownership="none">
-            <doc xml:space="preserve">a #GValue of type #GST_TYPE_ARRAY</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstvalue.c"
+                 line="994">a #GValue of type #GST_TYPE_ARRAY</doc>
             <type name="GObject.Value" c:type="GValue*"/>
           </parameter>
           <parameter name="append_value" transfer-ownership="full">
-            <doc xml:space="preserve">the value to append</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstvalue.c"
+                 line="995">the value to append</doc>
             <type name="GObject.Value" c:type="GValue*"/>
           </parameter>
         </parameters>
       </function>
       <function name="append_value"
                 c:identifier="gst_value_array_append_value">
-        <doc xml:space="preserve">Appends @append_value to the GstValueArray in @value.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstvalue.c"
+             line="964">Appends @append_value to the GstValueArray in @value.</doc>
+        <source-position filename="gst/gstvalue.h" line="573"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <parameter name="value" transfer-ownership="none">
-            <doc xml:space="preserve">a #GValue of type #GST_TYPE_ARRAY</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstvalue.c"
+                 line="966">a #GValue of type #GST_TYPE_ARRAY</doc>
             <type name="GObject.Value" c:type="GValue*"/>
           </parameter>
           <parameter name="append_value" transfer-ownership="none">
-            <doc xml:space="preserve">the value to append</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstvalue.c"
+                 line="967">the value to append</doc>
             <type name="GObject.Value" c:type="const GValue*"/>
           </parameter>
         </parameters>
       </function>
       <function name="get_size" c:identifier="gst_value_array_get_size">
-        <doc xml:space="preserve">Gets the number of values contained in @value.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the number of values</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstvalue.c"
+             line="1033">Gets the number of values contained in @value.</doc>
+        <source-position filename="gst/gstvalue.h" line="582"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="1039">the number of values</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <parameter name="value" transfer-ownership="none">
-            <doc xml:space="preserve">a #GValue of type #GST_TYPE_ARRAY</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstvalue.c"
+                 line="1035">a #GValue of type #GST_TYPE_ARRAY</doc>
             <type name="GObject.Value" c:type="const GValue*"/>
           </parameter>
         </parameters>
       </function>
       <function name="get_value" c:identifier="gst_value_array_get_value">
-        <doc xml:space="preserve">Gets the value that is a member of the array contained in @value and
+        <doc xml:space="preserve"
+             filename="gst/gstvalue.c"
+             line="1049">Gets the value that is a member of the array contained in @value and
 has the index @index.</doc>
+        <source-position filename="gst/gstvalue.h" line="585"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the value at the given index</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="1057">the value at the given index</doc>
           <type name="GObject.Value" c:type="const GValue*"/>
         </return-value>
         <parameters>
           <parameter name="value" transfer-ownership="none">
-            <doc xml:space="preserve">a #GValue of type #GST_TYPE_ARRAY</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstvalue.c"
+                 line="1051">a #GValue of type #GST_TYPE_ARRAY</doc>
             <type name="GObject.Value" c:type="const GValue*"/>
           </parameter>
           <parameter name="index" transfer-ownership="none">
-            <doc xml:space="preserve">index of value to get from the array</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstvalue.c"
+                 line="1052">index of value to get from the array</doc>
+            <type name="guint" c:type="guint"/>
+          </parameter>
+        </parameters>
+      </function>
+      <function name="init" c:identifier="gst_value_array_init" version="1.18">
+        <doc xml:space="preserve"
+             filename="gst/gstvalue.c"
+             line="323">Initializes and pre-allocates a #GValue of type #GST_VALUE_ARRAY.</doc>
+        <source-position filename="gst/gstvalue.h" line="588"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="330">The #GValue structure that has been passed in</doc>
+          <type name="GObject.Value" c:type="GValue*"/>
+        </return-value>
+        <parameters>
+          <parameter name="value" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst/gstvalue.c"
+                 line="325">A zero-filled (uninitialized) #GValue structure</doc>
+            <type name="GObject.Value" c:type="GValue*"/>
+          </parameter>
+          <parameter name="prealloc" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst/gstvalue.c"
+                 line="326">The number of entries to pre-allocate in the array</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </function>
       <function name="prepend_value"
                 c:identifier="gst_value_array_prepend_value">
-        <doc xml:space="preserve">Prepends @prepend_value to the GstValueArray in @value.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstvalue.c"
+             line="1012">Prepends @prepend_value to the GstValueArray in @value.</doc>
+        <source-position filename="gst/gstvalue.h" line="579"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <parameter name="value" transfer-ownership="none">
-            <doc xml:space="preserve">a #GValue of type #GST_TYPE_ARRAY</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstvalue.c"
+                 line="1014">a #GValue of type #GST_TYPE_ARRAY</doc>
             <type name="GObject.Value" c:type="GValue*"/>
           </parameter>
           <parameter name="prepend_value" transfer-ownership="none">
-            <doc xml:space="preserve">the value to prepend</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstvalue.c"
+                 line="1015">the value to prepend</doc>
             <type name="GObject.Value" c:type="const GValue*"/>
           </parameter>
         </parameters>
       </function>
     </class>
     <callback name="ValueCompareFunc" c:type="GstValueCompareFunc">
-      <doc xml:space="preserve">Used together with gst_value_compare() to compare #GValue items.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.h"
+           line="438">Used together with gst_value_compare() to compare #GValue items.</doc>
+      <source-position filename="gst/gstvalue.h" line="448"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">one of GST_VALUE_LESS_THAN, GST_VALUE_EQUAL, GST_VALUE_GREATER_THAN
+        <doc xml:space="preserve"
+             filename="gst/gstvalue.h"
+             line="445">one of GST_VALUE_LESS_THAN, GST_VALUE_EQUAL, GST_VALUE_GREATER_THAN
 or GST_VALUE_UNORDERED</doc>
         <type name="gint" c:type="gint"/>
       </return-value>
       <parameters>
         <parameter name="value1" transfer-ownership="none">
-          <doc xml:space="preserve">first value for comparison</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.h"
+               line="440">first value for comparison</doc>
           <type name="GObject.Value" c:type="const GValue*"/>
         </parameter>
         <parameter name="value2" transfer-ownership="none">
-          <doc xml:space="preserve">second value for comparison</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.h"
+               line="441">second value for comparison</doc>
           <type name="GObject.Value" c:type="const GValue*"/>
         </parameter>
       </parameters>
     </callback>
     <callback name="ValueDeserializeFunc" c:type="GstValueDeserializeFunc">
-      <doc xml:space="preserve">Used by gst_value_deserialize() to parse a non-binary form into the #GValue.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.h"
+           line="463">Used by gst_value_deserialize() to parse a non-binary form into the #GValue.</doc>
+      <source-position filename="gst/gstvalue.h" line="472"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE for success</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstvalue.h"
+             line="470">%TRUE for success</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="dest" transfer-ownership="none">
-          <doc xml:space="preserve">a #GValue</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.h"
+               line="465">a #GValue</doc>
           <type name="GObject.Value" c:type="GValue*"/>
         </parameter>
         <parameter name="s" transfer-ownership="none">
-          <doc xml:space="preserve">a string</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.h"
+               line="466">a string</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
       </parameters>
@@ -45419,44 +69916,64 @@ or GST_VALUE_UNORDERED</doc>
            glib:type-name="GstValueList"
            glib:get-type="gst_value_list_get_type"
            glib:fundamental="1">
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.h"
+           line="295">A fundamental type that describes an unordered list of #GValue</doc>
       <function name="append_and_take_value"
                 c:identifier="gst_value_list_append_and_take_value"
                 version="1.2">
-        <doc xml:space="preserve">Appends @append_value to the GstValueList in @value.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstvalue.c"
+             line="663">Appends @append_value to the GstValueList in @value.</doc>
+        <source-position filename="gst/gstvalue.h" line="547"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <parameter name="value" transfer-ownership="none">
-            <doc xml:space="preserve">a #GValue of type #GST_TYPE_LIST</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstvalue.c"
+                 line="665">a #GValue of type #GST_TYPE_LIST</doc>
             <type name="GObject.Value" c:type="GValue*"/>
           </parameter>
           <parameter name="append_value" transfer-ownership="full">
-            <doc xml:space="preserve">the value to append</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstvalue.c"
+                 line="666">the value to append</doc>
             <type name="GObject.Value" c:type="GValue*"/>
           </parameter>
         </parameters>
       </function>
       <function name="append_value" c:identifier="gst_value_list_append_value">
-        <doc xml:space="preserve">Appends @append_value to the GstValueList in @value.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstvalue.c"
+             line="683">Appends @append_value to the GstValueList in @value.</doc>
+        <source-position filename="gst/gstvalue.h" line="544"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <parameter name="value" transfer-ownership="none">
-            <doc xml:space="preserve">a #GValue of type #GST_TYPE_LIST</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstvalue.c"
+                 line="685">a #GValue of type #GST_TYPE_LIST</doc>
             <type name="GObject.Value" c:type="GValue*"/>
           </parameter>
           <parameter name="append_value" transfer-ownership="none">
-            <doc xml:space="preserve">the value to append</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstvalue.c"
+                 line="686">the value to append</doc>
             <type name="GObject.Value" c:type="const GValue*"/>
           </parameter>
         </parameters>
       </function>
       <function name="concat" c:identifier="gst_value_list_concat">
-        <doc xml:space="preserve">Concatenates copies of @value1 and @value2 into a list.  Values that are not
+        <doc xml:space="preserve"
+             filename="gst/gstvalue.c"
+             line="725">Concatenates copies of @value1 and @value2 into a list.  Values that are not
 of type #GST_TYPE_LIST are treated as if they were lists of length 1.
 @dest will be initialized to the type #GST_TYPE_LIST.</doc>
+        <source-position filename="gst/gstvalue.h" line="553"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
@@ -45465,57 +69982,108 @@ of type #GST_TYPE_LIST are treated as if they were lists of length 1.
                      direction="out"
                      caller-allocates="1"
                      transfer-ownership="none">
-            <doc xml:space="preserve">an uninitialized #GValue to take the result</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstvalue.c"
+                 line="727">an uninitialized #GValue to take the result</doc>
             <type name="GObject.Value" c:type="GValue*"/>
           </parameter>
           <parameter name="value1" transfer-ownership="none">
-            <doc xml:space="preserve">a #GValue</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstvalue.c"
+                 line="728">a #GValue</doc>
             <type name="GObject.Value" c:type="const GValue*"/>
           </parameter>
           <parameter name="value2" transfer-ownership="none">
-            <doc xml:space="preserve">a #GValue</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstvalue.c"
+                 line="729">a #GValue</doc>
             <type name="GObject.Value" c:type="const GValue*"/>
           </parameter>
         </parameters>
       </function>
       <function name="get_size" c:identifier="gst_value_list_get_size">
-        <doc xml:space="preserve">Gets the number of values contained in @value.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the number of values</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstvalue.c"
+             line="929">Gets the number of values contained in @value.</doc>
+        <source-position filename="gst/gstvalue.h" line="561"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="935">the number of values</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <parameter name="value" transfer-ownership="none">
-            <doc xml:space="preserve">a #GValue of type #GST_TYPE_LIST</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstvalue.c"
+                 line="931">a #GValue of type #GST_TYPE_LIST</doc>
             <type name="GObject.Value" c:type="const GValue*"/>
           </parameter>
         </parameters>
       </function>
       <function name="get_value" c:identifier="gst_value_list_get_value">
-        <doc xml:space="preserve">Gets the value that is a member of the list contained in @value and
+        <doc xml:space="preserve"
+             filename="gst/gstvalue.c"
+             line="945">Gets the value that is a member of the list contained in @value and
 has the index @index.</doc>
+        <source-position filename="gst/gstvalue.h" line="564"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the value at the given index</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="953">the value at the given index</doc>
           <type name="GObject.Value" c:type="const GValue*"/>
         </return-value>
         <parameters>
           <parameter name="value" transfer-ownership="none">
-            <doc xml:space="preserve">a #GValue of type #GST_TYPE_LIST</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstvalue.c"
+                 line="947">a #GValue of type #GST_TYPE_LIST</doc>
             <type name="GObject.Value" c:type="const GValue*"/>
           </parameter>
           <parameter name="index" transfer-ownership="none">
-            <doc xml:space="preserve">index of value to get from the list</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstvalue.c"
+                 line="948">index of value to get from the list</doc>
+            <type name="guint" c:type="guint"/>
+          </parameter>
+        </parameters>
+      </function>
+      <function name="init" c:identifier="gst_value_list_init" version="1.18">
+        <doc xml:space="preserve"
+             filename="gst/gstvalue.c"
+             line="292">Initializes and pre-allocates a #GValue of type #GST_VALUE_LIST.</doc>
+        <source-position filename="gst/gstvalue.h" line="568"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="299">The #GValue structure that has been passed in</doc>
+          <type name="GObject.Value" c:type="GValue*"/>
+        </return-value>
+        <parameters>
+          <parameter name="value" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst/gstvalue.c"
+                 line="294">A zero-filled (uninitialized) #GValue structure</doc>
+            <type name="GObject.Value" c:type="GValue*"/>
+          </parameter>
+          <parameter name="prealloc" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst/gstvalue.c"
+                 line="295">The number of entries to pre-allocate in the list</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </function>
       <function name="merge" c:identifier="gst_value_list_merge">
-        <doc xml:space="preserve">Merges copies of @value1 and @value2.  Values that are not
+        <doc xml:space="preserve"
+             filename="gst/gstvalue.c"
+             line="828">Merges copies of @value1 and @value2.  Values that are not
 of type #GST_TYPE_LIST are treated as if they were lists of length 1.
 
 The result will be put into @dest and will either be a list that will not
 contain any duplicates, or a non-list type (if @value1 and @value2
 were equal).</doc>
+        <source-position filename="gst/gstvalue.h" line="557"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
@@ -45524,95 +70092,492 @@ were equal).</doc>
                      direction="out"
                      caller-allocates="1"
                      transfer-ownership="none">
-            <doc xml:space="preserve">an uninitialized #GValue to take the result</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstvalue.c"
+                 line="830">an uninitialized #GValue to take the result</doc>
             <type name="GObject.Value" c:type="GValue*"/>
           </parameter>
           <parameter name="value1" transfer-ownership="none">
-            <doc xml:space="preserve">a #GValue</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstvalue.c"
+                 line="831">a #GValue</doc>
             <type name="GObject.Value" c:type="const GValue*"/>
           </parameter>
           <parameter name="value2" transfer-ownership="none">
-            <doc xml:space="preserve">a #GValue</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstvalue.c"
+                 line="832">a #GValue</doc>
             <type name="GObject.Value" c:type="const GValue*"/>
           </parameter>
         </parameters>
       </function>
       <function name="prepend_value"
                 c:identifier="gst_value_list_prepend_value">
-        <doc xml:space="preserve">Prepends @prepend_value to the GstValueList in @value.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstvalue.c"
+             line="704">Prepends @prepend_value to the GstValueList in @value.</doc>
+        <source-position filename="gst/gstvalue.h" line="550"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <parameter name="value" transfer-ownership="none">
-            <doc xml:space="preserve">a #GValue of type #GST_TYPE_LIST</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstvalue.c"
+                 line="706">a #GValue of type #GST_TYPE_LIST</doc>
             <type name="GObject.Value" c:type="GValue*"/>
           </parameter>
           <parameter name="prepend_value" transfer-ownership="none">
-            <doc xml:space="preserve">the value to prepend</doc>
+            <doc xml:space="preserve"
+                 filename="gst/gstvalue.c"
+                 line="707">the value to prepend</doc>
             <type name="GObject.Value" c:type="const GValue*"/>
           </parameter>
         </parameters>
       </function>
     </class>
     <callback name="ValueSerializeFunc" c:type="GstValueSerializeFunc">
-      <doc xml:space="preserve">Used by gst_value_serialize() to obtain a non-binary form of the #GValue.
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.h"
+           line="451">Used by gst_value_serialize() to obtain a non-binary form of the #GValue.
 
 Free-function: g_free</doc>
+      <source-position filename="gst/gstvalue.h" line="461"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">the string representation of the value</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstvalue.h"
+             line="459">the string representation of the value</doc>
         <type name="utf8" c:type="gchar*"/>
       </return-value>
       <parameters>
         <parameter name="value1" transfer-ownership="none">
-          <doc xml:space="preserve">a #GValue</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.h"
+               line="453">a #GValue</doc>
           <type name="GObject.Value" c:type="const GValue*"/>
         </parameter>
       </parameters>
     </callback>
     <record name="ValueTable" c:type="GstValueTable">
-      <doc xml:space="preserve">VTable for the #GValue @type.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.h"
+           line="476">VTable for the #GValue @type.</doc>
+      <source-position filename="gst/gstvalue.h" line="493"/>
       <field name="type" writable="1">
-        <doc xml:space="preserve">a #GType</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstvalue.h"
+             line="478">a #GType</doc>
         <type name="GType" c:type="GType"/>
       </field>
       <field name="compare" writable="1">
-        <doc xml:space="preserve">a #GstValueCompareFunc</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstvalue.h"
+             line="479">a #GstValueCompareFunc</doc>
         <type name="ValueCompareFunc" c:type="GstValueCompareFunc"/>
       </field>
       <field name="serialize" writable="1">
-        <doc xml:space="preserve">a #GstValueSerializeFunc</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstvalue.h"
+             line="480">a #GstValueSerializeFunc</doc>
         <type name="ValueSerializeFunc" c:type="GstValueSerializeFunc"/>
       </field>
       <field name="deserialize" writable="1">
-        <doc xml:space="preserve">a #GstValueDeserializeFunc</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstvalue.h"
+             line="481">a #GstValueDeserializeFunc</doc>
         <type name="ValueDeserializeFunc" c:type="GstValueDeserializeFunc"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
     </record>
+    <function-macro name="WRITE_UINT16_BE"
+                    c:identifier="GST_WRITE_UINT16_BE"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstutils.h"
+           line="507">Store a 16 bit unsigned integer value in big endian format into the memory buffer.</doc>
+      <source-position filename="gst/gstutils.h" line="523"/>
+      <parameters>
+        <parameter name="data">
+          <doc xml:space="preserve"
+               filename="gst/gstutils.h"
+               line="509">memory location</doc>
+        </parameter>
+        <parameter name="val">
+          <doc xml:space="preserve"
+               filename="gst/gstutils.h"
+               line="510">value to store</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="WRITE_UINT16_LE"
+                    c:identifier="GST_WRITE_UINT16_LE"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstutils.h"
+           line="514">Store a 16 bit unsigned integer value in little endian format into the memory buffer.</doc>
+      <source-position filename="gst/gstutils.h" line="524"/>
+      <parameters>
+        <parameter name="data">
+          <doc xml:space="preserve"
+               filename="gst/gstutils.h"
+               line="516">memory location</doc>
+        </parameter>
+        <parameter name="val">
+          <doc xml:space="preserve"
+               filename="gst/gstutils.h"
+               line="517">value to store</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="WRITE_UINT24_BE"
+                    c:identifier="GST_WRITE_UINT24_BE"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstutils.h"
+           line="477">Store a 24 bit unsigned integer value in big endian format into the memory buffer.</doc>
+      <source-position filename="gst/gstutils.h" line="484"/>
+      <parameters>
+        <parameter name="data">
+          <doc xml:space="preserve"
+               filename="gst/gstutils.h"
+               line="479">memory location</doc>
+        </parameter>
+        <parameter name="num">
+          <doc xml:space="preserve"
+               filename="gst/gstutils.h"
+               line="480">value to store</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="WRITE_UINT24_LE"
+                    c:identifier="GST_WRITE_UINT24_LE"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstutils.h"
+           line="492">Store a 24 bit unsigned integer value in little endian format into the memory buffer.</doc>
+      <source-position filename="gst/gstutils.h" line="499"/>
+      <parameters>
+        <parameter name="data">
+          <doc xml:space="preserve"
+               filename="gst/gstutils.h"
+               line="494">memory location</doc>
+        </parameter>
+        <parameter name="num">
+          <doc xml:space="preserve"
+               filename="gst/gstutils.h"
+               line="495">value to store</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="WRITE_UINT32_BE"
+                    c:identifier="GST_WRITE_UINT32_BE"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstutils.h"
+           line="435">Store a 32 bit unsigned integer value in big endian format into the memory buffer.</doc>
+      <source-position filename="gst/gstutils.h" line="451"/>
+      <parameters>
+        <parameter name="data">
+          <doc xml:space="preserve"
+               filename="gst/gstutils.h"
+               line="437">memory location</doc>
+        </parameter>
+        <parameter name="val">
+          <doc xml:space="preserve"
+               filename="gst/gstutils.h"
+               line="438">value to store</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="WRITE_UINT32_LE"
+                    c:identifier="GST_WRITE_UINT32_LE"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstutils.h"
+           line="442">Store a 32 bit unsigned integer value in little endian format into the memory buffer.</doc>
+      <source-position filename="gst/gstutils.h" line="452"/>
+      <parameters>
+        <parameter name="data">
+          <doc xml:space="preserve"
+               filename="gst/gstutils.h"
+               line="444">memory location</doc>
+        </parameter>
+        <parameter name="val">
+          <doc xml:space="preserve"
+               filename="gst/gstutils.h"
+               line="445">value to store</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="WRITE_UINT64_BE"
+                    c:identifier="GST_WRITE_UINT64_BE"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstutils.h"
+           line="385">Store a 64 bit unsigned integer value in big endian format into the memory buffer.</doc>
+      <source-position filename="gst/gstutils.h" line="401"/>
+      <parameters>
+        <parameter name="data">
+          <doc xml:space="preserve"
+               filename="gst/gstutils.h"
+               line="387">memory location</doc>
+        </parameter>
+        <parameter name="val">
+          <doc xml:space="preserve"
+               filename="gst/gstutils.h"
+               line="388">value to store</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="WRITE_UINT64_LE"
+                    c:identifier="GST_WRITE_UINT64_LE"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstutils.h"
+           line="392">Store a 64 bit unsigned integer value in little endian format into the memory buffer.</doc>
+      <source-position filename="gst/gstutils.h" line="402"/>
+      <parameters>
+        <parameter name="data">
+          <doc xml:space="preserve"
+               filename="gst/gstutils.h"
+               line="394">memory location</doc>
+        </parameter>
+        <parameter name="val">
+          <doc xml:space="preserve"
+               filename="gst/gstutils.h"
+               line="395">value to store</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="WRITE_UINT8"
+                    c:identifier="GST_WRITE_UINT8"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstutils.h"
+           line="545">Store an 8 bit unsigned integer value into the memory buffer.</doc>
+      <source-position filename="gst/gstutils.h" line="552"/>
+      <parameters>
+        <parameter name="data">
+          <doc xml:space="preserve"
+               filename="gst/gstutils.h"
+               line="547">memory location</doc>
+        </parameter>
+        <parameter name="num">
+          <doc xml:space="preserve"
+               filename="gst/gstutils.h"
+               line="548">value to store</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
     <function name="buffer_get_max_memory"
               c:identifier="gst_buffer_get_max_memory"
               moved-to="Buffer.get_max_memory"
               version="1.2">
-      <doc xml:space="preserve">Get the maximum amount of memory blocks that a buffer can hold. This is a
+      <doc xml:space="preserve"
+           filename="gst/gstbuffer.c"
+           line="497">Get the maximum amount of memory blocks that a buffer can hold. This is a
 compile time constant that can be queried with the function.
 
 When more memory blocks are added, existing memory blocks will be merged
 together to make room for the new block.</doc>
+      <source-position filename="gst/gstbuffer.h" line="284"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">the maximum amount of memory blocks that a buffer can hold.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.c"
+             line="506">the maximum amount of memory blocks that a buffer can hold.</doc>
         <type name="guint" c:type="guint"/>
       </return-value>
     </function>
+    <function-macro name="buffer_get_parent_buffer_meta"
+                    c:identifier="gst_buffer_get_parent_buffer_meta"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstbuffer.h"
+           line="728">Find and return a #GstParentBufferMeta if one exists on the
+buffer</doc>
+      <source-position filename="gst/gstbuffer.h" line="734"/>
+      <parameters>
+        <parameter name="b">
+          <doc xml:space="preserve"
+               filename="gst/gstbuffer.h"
+               line="730">a #GstBuffer</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="buffer_get_protection_meta"
+                    c:identifier="gst_buffer_get_protection_meta"
+                    introspectable="0">
+      <source-position filename="gst/gstprotection.h" line="81"/>
+      <parameters>
+        <parameter name="b">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="buffer_is_writable"
+                    c:identifier="gst_buffer_is_writable"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstbuffer.h"
+           line="545">Tests if you can safely write to a buffer's metadata or its memory array.
+It is only safe to change buffer metadata when the current reference is
+writable, i.e. nobody can see the modifications you will make.</doc>
+      <source-position filename="gst/gstbuffer.h" line="552"/>
+      <parameters>
+        <parameter name="buf">
+          <doc xml:space="preserve"
+               filename="gst/gstbuffer.h"
+               line="547">a #GstBuffer</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="buffer_list_add"
+                    c:identifier="gst_buffer_list_add"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstbufferlist.c"
+           line="402">Append @b at the end of @l.</doc>
+      <source-position filename="gst/gstbufferlist.h" line="239"/>
+      <parameters>
+        <parameter name="l">
+          <doc xml:space="preserve"
+               filename="gst/gstbufferlist.c"
+               line="404">a #GstBufferList</doc>
+        </parameter>
+        <parameter name="b">
+          <doc xml:space="preserve"
+               filename="gst/gstbufferlist.c"
+               line="405">a #GstBuffer</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="buffer_list_is_writable"
+                    c:identifier="gst_buffer_list_is_writable"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstbufferlist.h"
+           line="182">Tests if you can safely add buffers and groups into a buffer list.</doc>
+      <source-position filename="gst/gstbufferlist.h" line="188"/>
+      <parameters>
+        <parameter name="list">
+          <doc xml:space="preserve"
+               filename="gst/gstbufferlist.h"
+               line="184">a #GstBufferList</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="buffer_list_make_writable"
+                    c:identifier="gst_buffer_list_make_writable"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstbufferlist.h"
+           line="190">Makes a writable buffer list from the given buffer list. If the source buffer
+list is already writable, this will simply return the same buffer list. A
+copy will otherwise be made using gst_buffer_list_copy().</doc>
+      <source-position filename="gst/gstbufferlist.h" line="201"/>
+      <parameters>
+        <parameter name="list">
+          <doc xml:space="preserve"
+               filename="gst/gstbufferlist.h"
+               line="192">a #GstBufferList</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="buffer_make_writable"
+                    c:identifier="gst_buffer_make_writable"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstbuffer.h"
+           line="554">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.</doc>
+      <source-position filename="gst/gstbuffer.h" line="579"/>
+      <parameters>
+        <parameter name="buf">
+          <doc xml:space="preserve"
+               filename="gst/gstbuffer.h"
+               line="556">a #GstBuffer</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="buffer_new_and_alloc"
+                    c:identifier="gst_buffer_new_and_alloc"
+                    introspectable="0">
+      <source-position filename="gst/gstcompat.h" line="42"/>
+      <parameters>
+        <parameter name="s">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function name="buffer_replace"
+              c:identifier="gst_buffer_replace"
+              moved-to="Buffer.replace"
+              introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstbuffer.h"
+           line="582">Modifies a pointer to a #GstBuffer to point to a different #GstBuffer. The
+modification is done atomically (so this is useful for ensuring thread safety
+in some cases), and the reference counts are updated appropriately (the old
+buffer is unreffed, the new is reffed).
+
+Either @nbuf or the #GstBuffer pointed to by @obuf may be %NULL.</doc>
+      <source-position filename="gst/gstbuffer.h" line="598"/>
+      <return-value transfer-ownership="none">
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.h"
+             line="596">%TRUE when @obuf was different from @nbuf.</doc>
+        <type name="gboolean" c:type="gboolean"/>
+      </return-value>
+      <parameters>
+        <parameter name="obuf"
+                   direction="inout"
+                   caller-allocates="0"
+                   transfer-ownership="full"
+                   nullable="1"
+                   allow-none="1">
+          <doc xml:space="preserve"
+               filename="gst/gstbuffer.h"
+               line="584">pointer to a pointer to
+    a #GstBuffer to be replaced.</doc>
+          <type name="Buffer" c:type="GstBuffer**"/>
+        </parameter>
+        <parameter name="nbuf"
+                   transfer-ownership="none"
+                   nullable="1"
+                   allow-none="1">
+          <doc xml:space="preserve"
+               filename="gst/gstbuffer.h"
+               line="586">pointer to a #GstBuffer that will
+    replace the buffer pointed to by @obuf.</doc>
+          <type name="Buffer" c:type="GstBuffer*"/>
+        </parameter>
+      </parameters>
+    </function>
     <function name="calculate_linear_regression"
               c:identifier="gst_calculate_linear_regression"
               version="1.12"
               introspectable="0">
-      <doc xml:space="preserve">Calculates the linear regression of the values @xy and places the
+      <doc xml:space="preserve"
+           filename="gst/gstutils.c"
+           line="4278">Calculates the linear regression of the values @xy and places the
 result in @m_num, @m_denom, @b and @xbase, representing the function
   y(x) = m_num/m_denom * (x - xbase) + b
 that has the least-square distance from all points @x and @y.
@@ -45628,56 +70593,75 @@ amount of memory allocated as @xy, i.e. 2*n*sizeof(GstClockTime).
 &gt; between them. It will not calculate the exact results if the differences
 &gt; between neighbouring values are too small due to not being able to
 &gt; represent sub-integer values during the calculations.</doc>
+      <source-position filename="gst/gstutils.h" line="1213"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE if the linear regression was successfully calculated</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstutils.c"
+             line="4306">%TRUE if the linear regression was successfully calculated</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="xy" transfer-ownership="none">
-          <doc xml:space="preserve">Pairs of (x,y) values</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="4280">Pairs of (x,y) values</doc>
           <type name="ClockTime" c:type="const GstClockTime*"/>
         </parameter>
         <parameter name="temp" transfer-ownership="none">
-          <doc xml:space="preserve">Temporary scratch space used by the function</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="4281">Temporary scratch space used by the function</doc>
           <type name="ClockTime" c:type="GstClockTime*"/>
         </parameter>
         <parameter name="n" transfer-ownership="none">
-          <doc xml:space="preserve">number of (x,y) pairs</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="4282">number of (x,y) pairs</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
         <parameter name="m_num"
                    direction="out"
                    caller-allocates="0"
                    transfer-ownership="full">
-          <doc xml:space="preserve">numerator of calculated slope</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="4283">numerator of calculated slope</doc>
           <type name="ClockTime" c:type="GstClockTime*"/>
         </parameter>
         <parameter name="m_denom"
                    direction="out"
                    caller-allocates="0"
                    transfer-ownership="full">
-          <doc xml:space="preserve">denominator of calculated slope</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="4284">denominator of calculated slope</doc>
           <type name="ClockTime" c:type="GstClockTime*"/>
         </parameter>
         <parameter name="b"
                    direction="out"
                    caller-allocates="0"
                    transfer-ownership="full">
-          <doc xml:space="preserve">Offset at Y-axis</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="4285">Offset at Y-axis</doc>
           <type name="ClockTime" c:type="GstClockTime*"/>
         </parameter>
         <parameter name="xbase"
                    direction="out"
                    caller-allocates="0"
                    transfer-ownership="full">
-          <doc xml:space="preserve">Offset at X-axis</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="4286">Offset at X-axis</doc>
           <type name="ClockTime" c:type="GstClockTime*"/>
         </parameter>
         <parameter name="r_squared"
                    direction="out"
                    caller-allocates="0"
                    transfer-ownership="full">
-          <doc xml:space="preserve">R-squared</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="4287">R-squared</doc>
           <type name="gdouble" c:type="gdouble*"/>
         </parameter>
       </parameters>
@@ -45686,18 +70670,25 @@ amount of memory allocated as @xy, i.e. 2*n*sizeof(GstClockTime).
               c:identifier="gst_caps_features_from_string"
               moved-to="CapsFeatures.from_string"
               version="1.2">
-      <doc xml:space="preserve">Creates a #GstCapsFeatures from a string representation.
+      <doc xml:space="preserve"
+           filename="gst/gstcapsfeatures.c"
+           line="486">Creates a #GstCapsFeatures from a string representation.
 
 Free-function: gst_caps_features_free</doc>
+      <source-position filename="gst/gstcapsfeatures.h" line="85"/>
       <return-value transfer-ownership="full" nullable="1">
-        <doc xml:space="preserve">a new #GstCapsFeatures or
+        <doc xml:space="preserve"
+             filename="gst/gstcapsfeatures.c"
+             line="494">a new #GstCapsFeatures or
     %NULL when the string could not be parsed. Free with
     gst_caps_features_free() after use.</doc>
         <type name="CapsFeatures" c:type="GstCapsFeatures*"/>
       </return-value>
       <parameters>
         <parameter name="features" transfer-ownership="none">
-          <doc xml:space="preserve">a string representation of a #GstCapsFeatures.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstcapsfeatures.c"
+               line="488">a string representation of a #GstCapsFeatures.</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
       </parameters>
@@ -45705,26 +70696,159 @@ Free-function: gst_caps_features_free</doc>
     <function name="caps_from_string"
               c:identifier="gst_caps_from_string"
               moved-to="Caps.from_string">
-      <doc xml:space="preserve">Converts @caps from a string representation.
+      <doc xml:space="preserve"
+           filename="gst/gstcaps.c"
+           line="2475">Converts @caps from a string representation.
 
 The current implementation of serialization will lead to unexpected results
 when there are nested #GstCaps / #GstStructure deeper than one level.</doc>
+      <source-position filename="gst/gstcaps.h" line="581"/>
       <return-value transfer-ownership="full" nullable="1">
-        <doc xml:space="preserve">a newly allocated #GstCaps</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstcaps.c"
+             line="2484">a newly allocated #GstCaps</doc>
         <type name="Caps" c:type="GstCaps*"/>
       </return-value>
       <parameters>
         <parameter name="string" transfer-ownership="none">
-          <doc xml:space="preserve">a string to convert to #GstCaps</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstcaps.c"
+               line="2477">a string to convert to #GstCaps</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
       </parameters>
     </function>
+    <function-macro name="caps_is_writable"
+                    c:identifier="gst_caps_is_writable"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstcaps.h"
+           line="253">Tests if you can safely modify @caps. It is only safe to modify caps when
+there is only one owner of the caps - ie, the object is writable.</doc>
+      <source-position filename="gst/gstcaps.h" line="260"/>
+      <parameters>
+        <parameter name="caps">
+          <doc xml:space="preserve"
+               filename="gst/gstcaps.h"
+               line="255">a #GstCaps</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="caps_make_writable"
+                    c:identifier="gst_caps_make_writable"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstcaps.h"
+           line="262">Returns a writable copy of @caps.
+
+If there is only one reference count on @caps, the caller must be the owner,
+and so this function will return the caps object unchanged. If on the other
+hand there is more than one reference on the object, a new caps object will
+be returned. The caller's reference on @caps will be removed, and instead the
+caller will own a reference to the returned object.
+
+In short, this function unrefs the caps in the argument and refs the caps
+that it returns. Don't access the argument after calling this function. See
+also: gst_caps_ref().</doc>
+      <source-position filename="gst/gstcaps.h" line="281"/>
+      <parameters>
+        <parameter name="caps">
+          <doc xml:space="preserve"
+               filename="gst/gstcaps.h"
+               line="264">a #GstCaps</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function name="caps_replace"
+              c:identifier="gst_caps_replace"
+              moved-to="Caps.replace"
+              introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstcaps.h"
+           line="283">Modifies a pointer to a #GstCaps to point to a different #GstCaps. The
+modification is done atomically (so this is useful for ensuring thread safety
+in some cases), and the reference counts are updated appropriately (the old
+caps is unreffed, the new is reffed).
+
+Either @new_caps or the #GstCaps pointed to by @old_caps may be %NULL.</doc>
+      <source-position filename="gst/gstcaps.h" line="299"/>
+      <return-value transfer-ownership="none">
+        <doc xml:space="preserve"
+             filename="gst/gstcaps.h"
+             line="297">%TRUE if @new_caps was different from @old_caps</doc>
+        <type name="gboolean" c:type="gboolean"/>
+      </return-value>
+      <parameters>
+        <parameter name="old_caps"
+                   direction="inout"
+                   caller-allocates="0"
+                   transfer-ownership="full"
+                   nullable="1"
+                   allow-none="1">
+          <doc xml:space="preserve"
+               filename="gst/gstcaps.h"
+               line="285">pointer to a pointer
+    to a #GstCaps to be replaced.</doc>
+          <type name="Caps" c:type="GstCaps**"/>
+        </parameter>
+        <parameter name="new_caps"
+                   transfer-ownership="none"
+                   nullable="1"
+                   allow-none="1">
+          <doc xml:space="preserve"
+               filename="gst/gstcaps.h"
+               line="287">pointer to a #GstCaps that will
+    replace the caps pointed to by @old_caps.</doc>
+          <type name="Caps" c:type="GstCaps*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="caps_take"
+              c:identifier="gst_caps_take"
+              moved-to="Caps.take"
+              introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstcaps.h"
+           line="306">Modifies a pointer to a #GstCaps to point to a different #GstCaps. This
+function is similar to gst_caps_replace() except that it takes ownership
+of @new_caps.</doc>
+      <source-position filename="gst/gstcaps.h" line="319"/>
+      <return-value transfer-ownership="none">
+        <doc xml:space="preserve"
+             filename="gst/gstcaps.h"
+             line="317">%TRUE if @new_caps was different from @old_caps</doc>
+        <type name="gboolean" c:type="gboolean"/>
+      </return-value>
+      <parameters>
+        <parameter name="old_caps"
+                   direction="inout"
+                   caller-allocates="0"
+                   transfer-ownership="full">
+          <doc xml:space="preserve"
+               filename="gst/gstcaps.h"
+               line="308">pointer to a pointer to a #GstCaps to be
+    replaced.</doc>
+          <type name="Caps" c:type="GstCaps**"/>
+        </parameter>
+        <parameter name="new_caps"
+                   transfer-ownership="full"
+                   nullable="1"
+                   allow-none="1">
+          <doc xml:space="preserve"
+               filename="gst/gstcaps.h"
+               line="310">pointer to a #GstCaps that will
+    replace the caps pointed to by @old_caps.</doc>
+          <type name="Caps" c:type="GstCaps*"/>
+        </parameter>
+      </parameters>
+    </function>
     <function name="clear_mini_object"
               c:identifier="gst_clear_mini_object"
               version="1.16"
               introspectable="0">
-      <doc xml:space="preserve">Clears a reference to a #GstMiniObject.
+      <doc xml:space="preserve"
+           filename="gst/gstminiobject.c"
+           line="676">Clears a reference to a #GstMiniObject.
 
 @object_ptr must not be %NULL.
 
@@ -45734,12 +70858,15 @@ gst_mini_object_unref() and the pointer is set to %NULL.
 
 A macro is also included that allows this function to be used without
 pointer casts.</doc>
+      <source-position filename="gst/gstminiobject.h" line="238"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="object_ptr" transfer-ownership="none">
-          <doc xml:space="preserve">a pointer to a #GstMiniObject reference</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstminiobject.c"
+               line="678">a pointer to a #GstMiniObject reference</doc>
           <type name="MiniObject" c:type="GstMiniObject**"/>
         </parameter>
       </parameters>
@@ -45748,7 +70875,9 @@ pointer casts.</doc>
               c:identifier="gst_clear_object"
               version="1.16"
               introspectable="0">
-      <doc xml:space="preserve">Clears a reference to a #GstObject.
+      <doc xml:space="preserve"
+           filename="gst/gstobject.c"
+           line="299">Clears a reference to a #GstObject.
 
 @object_ptr must not be %NULL.
 
@@ -45758,12 +70887,15 @@ gst_object_unref() and the pointer is set to %NULL.
 
 A macro is also included that allows this function to be used without
 pointer casts.</doc>
+      <source-position filename="gst/gstobject.h" line="258"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="object_ptr" transfer-ownership="none">
-          <doc xml:space="preserve">a pointer to a #GstObject reference</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstobject.c"
+               line="301">a pointer to a #GstObject reference</doc>
           <type name="Object" c:type="GstObject**"/>
         </parameter>
       </parameters>
@@ -45772,7 +70904,9 @@ pointer casts.</doc>
               c:identifier="gst_clear_structure"
               version="1.16"
               introspectable="0">
-      <doc xml:space="preserve">Clears a reference to a #GstStructure.
+      <doc xml:space="preserve"
+           filename="gst/gststructure.c"
+           line="551">Clears a reference to a #GstStructure.
 
 @structure_ptr must not be %NULL.
 
@@ -45782,27 +70916,66 @@ pointer is set to %NULL.
 
 A macro is also included that allows this function to be used without
 pointer casts.</doc>
+      <source-position filename="gst/gststructure.h" line="137"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="structure_ptr" transfer-ownership="none">
-          <doc xml:space="preserve">a pointer to a #GstStructure reference</doc>
+          <doc xml:space="preserve"
+               filename="gst/gststructure.c"
+               line="553">a pointer to a #GstStructure reference</doc>
           <type name="Structure" c:type="GstStructure**"/>
         </parameter>
       </parameters>
     </function>
+    <function-macro name="context_is_writable"
+                    c:identifier="gst_context_is_writable"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstcontext.h"
+           line="94">Tests if you can safely write into a context's structure or validly
+modify the seqnum and timestamp fields.</doc>
+      <source-position filename="gst/gstcontext.h" line="101"/>
+      <parameters>
+        <parameter name="context">
+          <doc xml:space="preserve"
+               filename="gst/gstcontext.h"
+               line="96">a #GstContext</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="context_make_writable"
+                    c:identifier="gst_context_make_writable"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstcontext.h"
+           line="102">Checks if a context is writable. If not, a writable copy is made and
+returned.</doc>
+      <source-position filename="gst/gstcontext.h" line="113"/>
+      <parameters>
+        <parameter name="context">
+          <doc xml:space="preserve"
+               filename="gst/gstcontext.h"
+               line="104">the context to make writable</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
     <function name="core_error_quark"
               c:identifier="gst_core_error_quark"
               moved-to="CoreError.quark">
+      <attribute name="doc.skip" value="true"/>
       <return-value transfer-ownership="none">
         <type name="GLib.Quark" c:type="GQuark"/>
       </return-value>
     </function>
     <function name="debug_add_log_function"
               c:identifier="gst_debug_add_log_function">
-      <doc xml:space="preserve">Adds the logging function to the list of logging functions.
+      <doc xml:space="preserve"
+           filename="gst/gstinfo.c"
+           line="1353">Adds the logging function to the list of logging functions.
 Be sure to use #G_GNUC_NO_INSTRUMENT on that function, it is needed.</doc>
+      <source-position filename="gst/gstinfo.h" line="414"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
@@ -45812,18 +70985,24 @@ Be sure to use #G_GNUC_NO_INSTRUMENT on that function, it is needed.</doc>
                    scope="notified"
                    closure="1"
                    destroy="2">
-          <doc xml:space="preserve">the function to use</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.c"
+               line="1355">the function to use</doc>
           <type name="LogFunction" c:type="GstLogFunction"/>
         </parameter>
         <parameter name="user_data"
                    transfer-ownership="none"
                    nullable="1"
                    allow-none="1">
-          <doc xml:space="preserve">user data</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.c"
+               line="1356">user data</doc>
           <type name="gpointer" c:type="gpointer"/>
         </parameter>
         <parameter name="notify" transfer-ownership="none" scope="async">
-          <doc xml:space="preserve">called when @user_data is not used anymore</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.c"
+               line="1357">called when @user_data is not used anymore</doc>
           <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
         </parameter>
       </parameters>
@@ -45831,138 +71010,192 @@ Be sure to use #G_GNUC_NO_INSTRUMENT on that function, it is needed.</doc>
     <function name="debug_add_ring_buffer_logger"
               c:identifier="gst_debug_add_ring_buffer_logger"
               version="1.14">
-      <doc xml:space="preserve">Adds a memory ringbuffer based debug logger that stores up to
+      <doc xml:space="preserve"
+           filename="gst/gstinfo.c"
+           line="3272">Adds a memory ringbuffer based debug logger that stores up to
 @max_size_per_thread bytes of logs per thread and times out threads after
 @thread_timeout seconds of inactivity.
 
 Logs can be fetched with gst_debug_ring_buffer_logger_get_logs() and the
 logger can be removed again with gst_debug_remove_ring_buffer_logger().
 Only one logger at a time is possible.</doc>
+      <source-position filename="gst/gstinfo.h" line="1771"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="max_size_per_thread" transfer-ownership="none">
-          <doc xml:space="preserve">Maximum size of log per thread in bytes</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.c"
+               line="3274">Maximum size of log per thread in bytes</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
         <parameter name="thread_timeout" transfer-ownership="none">
-          <doc xml:space="preserve">Timeout for threads in seconds</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.c"
+               line="3275">Timeout for threads in seconds</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
       </parameters>
     </function>
     <function name="debug_bin_to_dot_data"
               c:identifier="gst_debug_bin_to_dot_data">
-      <doc xml:space="preserve">To aid debugging applications one can use this method to obtain the whole
+      <doc xml:space="preserve"
+           filename="gst/gstdebugutils.c"
+           line="796">To aid debugging applications one can use this method to obtain the whole
 network of gstreamer elements that form the pipeline into an dot file.
 This data can be processed with graphviz to get an image.</doc>
+      <source-position filename="gst/gstdebugutils.h" line="65"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">a string containing the pipeline in graphviz
+        <doc xml:space="preserve"
+             filename="gst/gstdebugutils.c"
+             line="805">a string containing the pipeline in graphviz
 dot format.</doc>
         <type name="utf8" c:type="gchar*"/>
       </return-value>
       <parameters>
         <parameter name="bin" transfer-ownership="none">
-          <doc xml:space="preserve">the top-level pipeline that should be analyzed</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstdebugutils.c"
+               line="798">the top-level pipeline that should be analyzed</doc>
           <type name="Bin" c:type="GstBin*"/>
         </parameter>
         <parameter name="details" transfer-ownership="none">
-          <doc xml:space="preserve">type of #GstDebugGraphDetails to use</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstdebugutils.c"
+               line="799">type of #GstDebugGraphDetails to use</doc>
           <type name="DebugGraphDetails" c:type="GstDebugGraphDetails"/>
         </parameter>
       </parameters>
     </function>
     <function name="debug_bin_to_dot_file"
               c:identifier="gst_debug_bin_to_dot_file">
-      <doc xml:space="preserve">To aid debugging applications one can use this method to write out the whole
+      <doc xml:space="preserve"
+           filename="gst/gstdebugutils.c"
+           line="824">To aid debugging applications one can use this method to write out the whole
 network of gstreamer elements that form the pipeline into an dot file.
 This file can be processed with graphviz to get an image.
-&lt;informalexample&gt;&lt;programlisting&gt;
+
+``` shell
  dot -Tpng -oimage.png graph_lowlevel.dot
-&lt;/programlisting&gt;&lt;/informalexample&gt;</doc>
+```</doc>
+      <source-position filename="gst/gstdebugutils.h" line="68"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="bin" transfer-ownership="none">
-          <doc xml:space="preserve">the top-level pipeline that should be analyzed</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstdebugutils.c"
+               line="826">the top-level pipeline that should be analyzed</doc>
           <type name="Bin" c:type="GstBin*"/>
         </parameter>
         <parameter name="details" transfer-ownership="none">
-          <doc xml:space="preserve">type of #GstDebugGraphDetails to use</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstdebugutils.c"
+               line="827">type of #GstDebugGraphDetails to use</doc>
           <type name="DebugGraphDetails" c:type="GstDebugGraphDetails"/>
         </parameter>
         <parameter name="file_name" transfer-ownership="none">
-          <doc xml:space="preserve">output base filename (e.g. "myplayer")</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstdebugutils.c"
+               line="828">output base filename (e.g. "myplayer")</doc>
           <type name="filename" c:type="const gchar*"/>
         </parameter>
       </parameters>
     </function>
     <function name="debug_bin_to_dot_file_with_ts"
               c:identifier="gst_debug_bin_to_dot_file_with_ts">
-      <doc xml:space="preserve">This works like gst_debug_bin_to_dot_file(), but adds the current timestamp
+      <doc xml:space="preserve"
+           filename="gst/gstdebugutils.c"
+           line="876">This works like gst_debug_bin_to_dot_file(), but adds the current timestamp
 to the filename, so that it can be used to take multiple snapshots.</doc>
+      <source-position filename="gst/gstdebugutils.h" line="71"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="bin" transfer-ownership="none">
-          <doc xml:space="preserve">the top-level pipeline that should be analyzed</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstdebugutils.c"
+               line="878">the top-level pipeline that should be analyzed</doc>
           <type name="Bin" c:type="GstBin*"/>
         </parameter>
         <parameter name="details" transfer-ownership="none">
-          <doc xml:space="preserve">type of #GstDebugGraphDetails to use</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstdebugutils.c"
+               line="879">type of #GstDebugGraphDetails to use</doc>
           <type name="DebugGraphDetails" c:type="GstDebugGraphDetails"/>
         </parameter>
         <parameter name="file_name" transfer-ownership="none">
-          <doc xml:space="preserve">output base filename (e.g. "myplayer")</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstdebugutils.c"
+               line="880">output base filename (e.g. "myplayer")</doc>
           <type name="filename" c:type="const gchar*"/>
         </parameter>
       </parameters>
     </function>
     <function name="debug_construct_term_color"
               c:identifier="gst_debug_construct_term_color">
-      <doc xml:space="preserve">Constructs a string that can be used for getting the desired color in color
+      <doc xml:space="preserve"
+           filename="gst/gstinfo.c"
+           line="977">Constructs a string that can be used for getting the desired color in color
 terminals.
 You need to free the string after use.</doc>
+      <source-position filename="gst/gstinfo.h" line="486"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">a string containing the color
+        <doc xml:space="preserve"
+             filename="gst/gstinfo.c"
+             line="985">a string containing the color
     definition</doc>
         <type name="utf8" c:type="gchar*"/>
       </return-value>
       <parameters>
         <parameter name="colorinfo" transfer-ownership="none">
-          <doc xml:space="preserve">the color info</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.c"
+               line="979">the color info</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
       </parameters>
     </function>
     <function name="debug_construct_win_color"
               c:identifier="gst_debug_construct_win_color">
-      <doc xml:space="preserve">Constructs an integer that can be used for getting the desired color in
+      <doc xml:space="preserve"
+           filename="gst/gstinfo.c"
+           line="1013">Constructs an integer that can be used for getting the desired color in
 windows' terminals (cmd.exe). As there is no mean to underline, we simply
 ignore this attribute.
 
 This function returns 0 on non-windows machines.</doc>
+      <source-position filename="gst/gstinfo.h" line="489"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">an integer containing the color definition</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstinfo.c"
+             line="1023">an integer containing the color definition</doc>
         <type name="gint" c:type="gint"/>
       </return-value>
       <parameters>
         <parameter name="colorinfo" transfer-ownership="none">
-          <doc xml:space="preserve">the color info</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.c"
+               line="1015">the color info</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
       </parameters>
     </function>
     <function name="debug_get_all_categories"
               c:identifier="gst_debug_get_all_categories">
-      <doc xml:space="preserve">Returns a snapshot of a all categories that are currently in use . This list
+      <doc xml:space="preserve"
+           filename="gst/gstinfo.c"
+           line="1916">Returns a snapshot of a all categories that are currently in use . This list
 may change anytime.
 The caller has to free the list after use.</doc>
+      <source-position filename="gst/gstinfo.h" line="482"/>
       <return-value transfer-ownership="container">
-        <doc xml:space="preserve">the list of
+        <doc xml:space="preserve"
+             filename="gst/gstinfo.c"
+             line="1923">the list of
     debug categories</doc>
         <type name="GLib.SList" c:type="GSList*">
           <type name="DebugCategory"/>
@@ -45972,111 +71205,164 @@ The caller has to free the list after use.</doc>
     <function name="debug_get_color_mode"
               c:identifier="gst_debug_get_color_mode"
               version="1.2">
-      <doc xml:space="preserve">Changes the coloring mode for debug output.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstinfo.c"
+           line="1576">Changes the coloring mode for debug output.</doc>
+      <source-position filename="gst/gstinfo.h" line="442"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">see @GstDebugColorMode for possible values.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstinfo.c"
+             line="1581">see @GstDebugColorMode for possible values.</doc>
         <type name="DebugColorMode" c:type="GstDebugColorMode"/>
       </return-value>
     </function>
     <function name="debug_get_default_threshold"
               c:identifier="gst_debug_get_default_threshold">
-      <doc xml:space="preserve">Returns the default threshold that is used for new categories.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstinfo.c"
+           line="1640">Returns the default threshold that is used for new categories.</doc>
+      <source-position filename="gst/gstinfo.h" line="448"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">the default threshold level</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstinfo.c"
+             line="1645">the default threshold level</doc>
         <type name="DebugLevel" c:type="GstDebugLevel"/>
       </return-value>
     </function>
     <function name="debug_get_stack_trace"
               c:identifier="gst_debug_get_stack_trace"
               version="1.12">
+      <source-position filename="gst/gstinfo.h" line="1768"/>
       <return-value transfer-ownership="full" nullable="1">
-        <doc xml:space="preserve">a stack trace, if libunwind or glibc backtrace are
+        <doc xml:space="preserve"
+             filename="gst/gstinfo.c"
+             line="3004">a stack trace, if libunwind or glibc backtrace are
 present, else %NULL.</doc>
         <type name="utf8" c:type="gchar*"/>
       </return-value>
       <parameters>
         <parameter name="flags" transfer-ownership="none">
-          <doc xml:space="preserve">A set of #GstStackTraceFlags to determine how the stack
-trace should look like. Pass 0 to retrieve a minimal backtrace.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.c"
+               line="3001">A set of #GstStackTraceFlags to determine how the stack trace should
+look like. Pass #GST_STACK_TRACE_SHOW_NONE to retrieve a minimal backtrace.</doc>
           <type name="StackTraceFlags" c:type="GstStackTraceFlags"/>
         </parameter>
       </parameters>
     </function>
     <function name="debug_is_active" c:identifier="gst_debug_is_active">
-      <doc xml:space="preserve">Checks if debugging output is activated.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstinfo.c"
+           line="1611">Checks if debugging output is activated.</doc>
+      <source-position filename="gst/gstinfo.h" line="427"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE, if debugging is activated</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstinfo.c"
+             line="1616">%TRUE, if debugging is activated</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
     </function>
     <function name="debug_is_colored" c:identifier="gst_debug_is_colored">
-      <doc xml:space="preserve">Checks if the debugging output should be colored.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstinfo.c"
+           line="1562">Checks if the debugging output should be colored.</doc>
+      <source-position filename="gst/gstinfo.h" line="439"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE, if the debug output should be colored.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstinfo.c"
+             line="1567">%TRUE, if the debug output should be colored.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
     </function>
     <function name="debug_level_get_name"
               c:identifier="gst_debug_level_get_name"
               moved-to="DebugLevel.get_name">
-      <doc xml:space="preserve">Get the string representation of a debugging level</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstinfo.c"
+           line="1317">Get the string representation of a debugging level</doc>
+      <source-position filename="gst/gstinfo.h" line="411"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">the name</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstinfo.c"
+             line="1323">the name</doc>
         <type name="utf8" c:type="const gchar*"/>
       </return-value>
       <parameters>
         <parameter name="level" transfer-ownership="none">
-          <doc xml:space="preserve">the level to get the name for</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.c"
+               line="1319">the level to get the name for</doc>
           <type name="DebugLevel" c:type="GstDebugLevel"/>
         </parameter>
       </parameters>
     </function>
     <function name="debug_log" c:identifier="gst_debug_log" introspectable="0">
-      <doc xml:space="preserve">Logs the given message using the currently registered debugging handlers.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstinfo.c"
+           line="490">Logs the given message using the currently registered debugging handlers.</doc>
+      <source-position filename="gst/gstinfo.h" line="332"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="category" transfer-ownership="none">
-          <doc xml:space="preserve">category to log</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.c"
+               line="492">category to log</doc>
           <type name="DebugCategory" c:type="GstDebugCategory*"/>
         </parameter>
         <parameter name="level" transfer-ownership="none">
-          <doc xml:space="preserve">level of the message is in</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.c"
+               line="493">level of the message is in</doc>
           <type name="DebugLevel" c:type="GstDebugLevel"/>
         </parameter>
         <parameter name="file" transfer-ownership="none">
-          <doc xml:space="preserve">the file that emitted the message, usually the __FILE__ identifier</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.c"
+               line="494">the file that emitted the message, usually the __FILE__ identifier</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
         <parameter name="function" transfer-ownership="none">
-          <doc xml:space="preserve">the function that emitted the message</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.c"
+               line="495">the function that emitted the message</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
         <parameter name="line" transfer-ownership="none">
-          <doc xml:space="preserve">the line from that the message was emitted, usually __LINE__</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.c"
+               line="496">the line from that the message was emitted, usually __LINE__</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
         <parameter name="object"
                    transfer-ownership="none"
                    nullable="1"
                    allow-none="1">
-          <doc xml:space="preserve">the object this message relates to,
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.c"
+               line="497">the object this message relates to,
     or %NULL if none</doc>
           <type name="GObject.Object" c:type="GObject*"/>
         </parameter>
         <parameter name="format" transfer-ownership="none">
-          <doc xml:space="preserve">a printf style format string</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.c"
+               line="499">a printf style format string</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
         <parameter name="..." transfer-ownership="none">
-          <doc xml:space="preserve">optional arguments for the format</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.c"
+               line="500">optional arguments for the format</doc>
           <varargs/>
         </parameter>
       </parameters>
     </function>
     <function name="debug_log_default" c:identifier="gst_debug_log_default">
-      <doc xml:space="preserve">The default logging handler used by GStreamer. Logging functions get called
+      <doc xml:space="preserve"
+           filename="gst/gstinfo.c"
+           line="1202">The default logging handler used by GStreamer. Logging functions get called
 whenever a macro like GST_DEBUG or similar is used. By default this function
 is setup to output the message and additional info to stderr (or the log file
 specified via the GST_DEBUG_FILE environment variable) as received via
@@ -46085,110 +71371,217 @@ specified via the GST_DEBUG_FILE environment variable) as received via
 You can add other handlers by using gst_debug_add_log_function().
 And you can remove this handler by calling
 gst_debug_remove_log_function(gst_debug_log_default);</doc>
+      <source-position filename="gst/gstinfo.h" line="401"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="category" transfer-ownership="none">
-          <doc xml:space="preserve">category to log</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.c"
+               line="1204">category to log</doc>
           <type name="DebugCategory" c:type="GstDebugCategory*"/>
         </parameter>
         <parameter name="level" transfer-ownership="none">
-          <doc xml:space="preserve">level of the message</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.c"
+               line="1205">level of the message</doc>
           <type name="DebugLevel" c:type="GstDebugLevel"/>
         </parameter>
         <parameter name="file" transfer-ownership="none">
-          <doc xml:space="preserve">the file that emitted the message, usually the __FILE__ identifier</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.c"
+               line="1206">the file that emitted the message, usually the __FILE__ identifier</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
         <parameter name="function" transfer-ownership="none">
-          <doc xml:space="preserve">the function that emitted the message</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.c"
+               line="1207">the function that emitted the message</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
         <parameter name="line" transfer-ownership="none">
-          <doc xml:space="preserve">the line from that the message was emitted, usually __LINE__</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.c"
+               line="1208">the line from that the message was emitted, usually __LINE__</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
         <parameter name="object"
                    transfer-ownership="none"
                    nullable="1"
                    allow-none="1">
-          <doc xml:space="preserve">the object this message relates to,
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.c"
+               line="1210">the object this message relates to,
     or %NULL if none</doc>
           <type name="GObject.Object" c:type="GObject*"/>
         </parameter>
         <parameter name="message" transfer-ownership="none">
-          <doc xml:space="preserve">the actual message</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.c"
+               line="1209">the actual message</doc>
           <type name="DebugMessage" c:type="GstDebugMessage*"/>
         </parameter>
         <parameter name="user_data"
                    transfer-ownership="none"
                    nullable="1"
                    allow-none="1">
-          <doc xml:space="preserve">the FILE* to log to</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.c"
+               line="1212">the FILE* to log to</doc>
           <type name="gpointer" c:type="gpointer"/>
         </parameter>
       </parameters>
     </function>
+    <function name="debug_log_get_line"
+              c:identifier="gst_debug_log_get_line"
+              version="1.18">
+      <doc xml:space="preserve"
+           filename="gst/gstinfo.c"
+           line="1161">Returns the string representation for the specified debug log message
+formatted in the same way as gst_debug_log_default() (the default handler),
+without color. The purpose is to make it easy for custom log output
+handlers to get a log output that is identical to what the default handler
+would write out.</doc>
+      <source-position filename="gst/gstinfo.h" line="392"/>
+      <return-value transfer-ownership="full">
+        <type name="utf8" c:type="gchar*"/>
+      </return-value>
+      <parameters>
+        <parameter name="category" transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.c"
+               line="1163">category to log</doc>
+          <type name="DebugCategory" c:type="GstDebugCategory*"/>
+        </parameter>
+        <parameter name="level" transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.c"
+               line="1164">level of the message</doc>
+          <type name="DebugLevel" c:type="GstDebugLevel"/>
+        </parameter>
+        <parameter name="file" transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.c"
+               line="1165">the file that emitted the message, usually the __FILE__ identifier</doc>
+          <type name="utf8" c:type="const gchar*"/>
+        </parameter>
+        <parameter name="function" transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.c"
+               line="1166">the function that emitted the message</doc>
+          <type name="utf8" c:type="const gchar*"/>
+        </parameter>
+        <parameter name="line" transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.c"
+               line="1167">the line from that the message was emitted, usually __LINE__</doc>
+          <type name="gint" c:type="gint"/>
+        </parameter>
+        <parameter name="object"
+                   transfer-ownership="none"
+                   nullable="1"
+                   allow-none="1">
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.c"
+               line="1168">the object this message relates to,
+    or %NULL if none</doc>
+          <type name="GObject.Object" c:type="GObject*"/>
+        </parameter>
+        <parameter name="message" transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.c"
+               line="1170">the actual message</doc>
+          <type name="DebugMessage" c:type="GstDebugMessage*"/>
+        </parameter>
+      </parameters>
+    </function>
     <function name="debug_log_valist"
               c:identifier="gst_debug_log_valist"
               introspectable="0">
-      <doc xml:space="preserve">Logs the given message using the currently registered debugging handlers.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstinfo.c"
+           line="540">Logs the given message using the currently registered debugging handlers.</doc>
+      <source-position filename="gst/gstinfo.h" line="341"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="category" transfer-ownership="none">
-          <doc xml:space="preserve">category to log</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.c"
+               line="542">category to log</doc>
           <type name="DebugCategory" c:type="GstDebugCategory*"/>
         </parameter>
         <parameter name="level" transfer-ownership="none">
-          <doc xml:space="preserve">level of the message is in</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.c"
+               line="543">level of the message is in</doc>
           <type name="DebugLevel" c:type="GstDebugLevel"/>
         </parameter>
         <parameter name="file" transfer-ownership="none">
-          <doc xml:space="preserve">the file that emitted the message, usually the __FILE__ identifier</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.c"
+               line="544">the file that emitted the message, usually the __FILE__ identifier</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
         <parameter name="function" transfer-ownership="none">
-          <doc xml:space="preserve">the function that emitted the message</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.c"
+               line="545">the function that emitted the message</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
         <parameter name="line" transfer-ownership="none">
-          <doc xml:space="preserve">the line from that the message was emitted, usually __LINE__</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.c"
+               line="546">the line from that the message was emitted, usually __LINE__</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
         <parameter name="object"
                    transfer-ownership="none"
                    nullable="1"
                    allow-none="1">
-          <doc xml:space="preserve">the object this message relates to,
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.c"
+               line="547">the object this message relates to,
     or %NULL if none</doc>
           <type name="GObject.Object" c:type="GObject*"/>
         </parameter>
         <parameter name="format" transfer-ownership="none">
-          <doc xml:space="preserve">a printf style format string</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.c"
+               line="549">a printf style format string</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
         <parameter name="args" transfer-ownership="none">
-          <doc xml:space="preserve">optional arguments for the format</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.c"
+               line="550">optional arguments for the format</doc>
           <type name="va_list" c:type="va_list"/>
         </parameter>
       </parameters>
     </function>
     <function name="debug_print_stack_trace"
               c:identifier="gst_debug_print_stack_trace">
-      <doc xml:space="preserve">If libunwind, glibc backtrace or DbgHelp are present
+      <doc xml:space="preserve"
+           filename="gst/gstinfo.c"
+           line="3034">If libunwind, glibc backtrace or DbgHelp are present
 a stack trace is printed.</doc>
+      <source-position filename="gst/gstinfo.h" line="1765"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
     </function>
     <function name="debug_remove_log_function"
               c:identifier="gst_debug_remove_log_function">
-      <doc xml:space="preserve">Removes all registered instances of the given logging functions.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstinfo.c"
+           line="1445">Removes all registered instances of the given logging functions.</doc>
+      <source-position filename="gst/gstinfo.h" line="418"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">How many instances of the function were removed</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstinfo.c"
+             line="1452">How many instances of the function were removed</doc>
         <type name="guint" c:type="guint"/>
       </return-value>
       <parameters>
@@ -46197,7 +71590,9 @@ a stack trace is printed.</doc>
                    nullable="1"
                    allow-none="1"
                    scope="call">
-          <doc xml:space="preserve">the log function to remove, or %NULL to
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.c"
+               line="1447">the log function to remove, or %NULL to
     remove the default log function</doc>
           <type name="LogFunction" c:type="GstLogFunction"/>
         </parameter>
@@ -46205,9 +71600,14 @@ a stack trace is printed.</doc>
     </function>
     <function name="debug_remove_log_function_by_data"
               c:identifier="gst_debug_remove_log_function_by_data">
-      <doc xml:space="preserve">Removes all registered instances of log functions with the given user data.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstinfo.c"
+           line="1481">Removes all registered instances of log functions with the given user data.</doc>
+      <source-position filename="gst/gstinfo.h" line="421"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">How many instances of the function were removed</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstinfo.c"
+             line="1487">How many instances of the function were removed</doc>
         <type name="guint" c:type="guint"/>
       </return-value>
       <parameters>
@@ -46215,7 +71615,9 @@ a stack trace is printed.</doc>
                    transfer-ownership="none"
                    nullable="1"
                    allow-none="1">
-          <doc xml:space="preserve">user data of the log function to remove</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.c"
+               line="1483">user data of the log function to remove</doc>
           <type name="gpointer" c:type="gpointer"/>
         </parameter>
       </parameters>
@@ -46223,8 +71625,11 @@ a stack trace is printed.</doc>
     <function name="debug_remove_ring_buffer_logger"
               c:identifier="gst_debug_remove_ring_buffer_logger"
               version="1.14">
-      <doc xml:space="preserve">Removes any previously added ring buffer logger with
+      <doc xml:space="preserve"
+           filename="gst/gstinfo.c"
+           line="3313">Removes any previously added ring buffer logger with
 gst_debug_add_ring_buffer_logger().</doc>
+      <source-position filename="gst/gstinfo.h" line="1773"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
@@ -46232,10 +71637,15 @@ gst_debug_add_ring_buffer_logger().</doc>
     <function name="debug_ring_buffer_logger_get_logs"
               c:identifier="gst_debug_ring_buffer_logger_get_logs"
               version="1.14">
-      <doc xml:space="preserve">Fetches the current logs per thread from the ring buffer logger. See
+      <doc xml:space="preserve"
+           filename="gst/gstinfo.c"
+           line="3206">Fetches the current logs per thread from the ring buffer logger. See
 gst_debug_add_ring_buffer_logger() for details.</doc>
+      <source-position filename="gst/gstinfo.h" line="1775"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">NULL-terminated array of
+        <doc xml:space="preserve"
+             filename="gst/gstinfo.c"
+             line="3212">NULL-terminated array of
 strings with the debug output per thread</doc>
         <array c:type="gchar**">
           <type name="utf8"/>
@@ -46243,17 +71653,22 @@ strings with the debug output per thread</doc>
       </return-value>
     </function>
     <function name="debug_set_active" c:identifier="gst_debug_set_active">
-      <doc xml:space="preserve">If activated, debugging messages are sent to the debugging
+      <doc xml:space="preserve"
+           filename="gst/gstinfo.c"
+           line="1591">If activated, debugging messages are sent to the debugging
 handlers.
 It makes sense to deactivate it for speed issues.
 &gt; This function is not threadsafe. It makes sense to only call it
 during initialization.</doc>
+      <source-position filename="gst/gstinfo.h" line="424"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="active" transfer-ownership="none">
-          <doc xml:space="preserve">Whether to use debugging output or not</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.c"
+               line="1593">Whether to use debugging output or not</doc>
           <type name="gboolean" c:type="gboolean"/>
         </parameter>
       </parameters>
@@ -46261,15 +71676,20 @@ during initialization.</doc>
     <function name="debug_set_color_mode"
               c:identifier="gst_debug_set_color_mode"
               version="1.2">
-      <doc xml:space="preserve">Changes the coloring mode for debug output.
+      <doc xml:space="preserve"
+           filename="gst/gstinfo.c"
+           line="1524">Changes the coloring mode for debug output.
 
 This function may be called before gst_init().</doc>
+      <source-position filename="gst/gstinfo.h" line="433"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="mode" transfer-ownership="none">
-          <doc xml:space="preserve">The coloring mode for debug output. See @GstDebugColorMode.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.c"
+               line="1526">The coloring mode for debug output. See @GstDebugColorMode.</doc>
           <type name="DebugColorMode" c:type="GstDebugColorMode"/>
         </parameter>
       </parameters>
@@ -46277,66 +71697,88 @@ This function may be called before gst_init().</doc>
     <function name="debug_set_color_mode_from_string"
               c:identifier="gst_debug_set_color_mode_from_string"
               version="1.2">
-      <doc xml:space="preserve">Changes the coloring mode for debug output.
+      <doc xml:space="preserve"
+           filename="gst/gstinfo.c"
+           line="1540">Changes the coloring mode for debug output.
 
 This function may be called before gst_init().</doc>
+      <source-position filename="gst/gstinfo.h" line="436"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="mode" transfer-ownership="none">
-          <doc xml:space="preserve">The coloring mode for debug output. One of the following:
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.c"
+               line="1542">The coloring mode for debug output. One of the following:
 "on", "auto", "off", "disable", "unix".</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
       </parameters>
     </function>
     <function name="debug_set_colored" c:identifier="gst_debug_set_colored">
-      <doc xml:space="preserve">Sets or unsets the use of coloured debugging output.
+      <doc xml:space="preserve"
+           filename="gst/gstinfo.c"
+           line="1506">Sets or unsets the use of coloured debugging output.
 Same as gst_debug_set_color_mode () with the argument being
 being GST_DEBUG_COLOR_MODE_ON or GST_DEBUG_COLOR_MODE_OFF.
 
 This function may be called before gst_init().</doc>
+      <source-position filename="gst/gstinfo.h" line="430"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="colored" transfer-ownership="none">
-          <doc xml:space="preserve">Whether to use colored output or not</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.c"
+               line="1508">Whether to use colored output or not</doc>
           <type name="gboolean" c:type="gboolean"/>
         </parameter>
       </parameters>
     </function>
     <function name="debug_set_default_threshold"
               c:identifier="gst_debug_set_default_threshold">
-      <doc xml:space="preserve">Sets the default threshold to the given level and updates all categories to
+      <doc xml:space="preserve"
+           filename="gst/gstinfo.c"
+           line="1624">Sets the default threshold to the given level and updates all categories to
 use this threshold.
 
 This function may be called before gst_init().</doc>
+      <source-position filename="gst/gstinfo.h" line="445"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="level" transfer-ownership="none">
-          <doc xml:space="preserve">level to set</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.c"
+               line="1626">level to set</doc>
           <type name="DebugLevel" c:type="GstDebugLevel"/>
         </parameter>
       </parameters>
     </function>
     <function name="debug_set_threshold_for_name"
               c:identifier="gst_debug_set_threshold_for_name">
-      <doc xml:space="preserve">Sets all categories which match the given glob style pattern to the given
+      <doc xml:space="preserve"
+           filename="gst/gstinfo.c"
+           line="1703">Sets all categories which match the given glob style pattern to the given
 level.</doc>
+      <source-position filename="gst/gstinfo.h" line="451"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="name" transfer-ownership="none">
-          <doc xml:space="preserve">name of the categories to set</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.c"
+               line="1705">name of the categories to set</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
         <parameter name="level" transfer-ownership="none">
-          <doc xml:space="preserve">level to set them to</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.c"
+               line="1706">level to set them to</doc>
           <type name="DebugLevel" c:type="GstDebugLevel"/>
         </parameter>
       </parameters>
@@ -46344,21 +71786,28 @@ level.</doc>
     <function name="debug_set_threshold_from_string"
               c:identifier="gst_debug_set_threshold_from_string"
               version="1.2">
-      <doc xml:space="preserve">Sets the debug logging wanted in the same form as with the GST_DEBUG
+      <doc xml:space="preserve"
+           filename="gst/gstinfo.c"
+           line="2022">Sets the debug logging wanted in the same form as with the GST_DEBUG
 environment variable. You can use wildcards such as '*', but note that
 the order matters when you use wild cards, e.g. "foosrc:6,*src:3,*:2" sets
 everything to log level 2.</doc>
+      <source-position filename="gst/gstinfo.h" line="454"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="list" transfer-ownership="none">
-          <doc xml:space="preserve">comma-separated list of "category:level" pairs to be used
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.c"
+               line="2024">comma-separated list of "category:level" pairs to be used
     as debug logging levels</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
         <parameter name="reset" transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE to clear all previously-set debug levels before setting
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.c"
+               line="2026">%TRUE to clear all previously-set debug levels before setting
     new thresholds
 %FALSE if adding the threshold described by @list to the one already set.</doc>
           <type name="gboolean" c:type="gboolean"/>
@@ -46367,19 +71816,26 @@ everything to log level 2.</doc>
     </function>
     <function name="debug_unset_threshold_for_name"
               c:identifier="gst_debug_unset_threshold_for_name">
-      <doc xml:space="preserve">Resets all categories with the given name back to the default level.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstinfo.c"
+           line="1731">Resets all categories with the given name back to the default level.</doc>
+      <source-position filename="gst/gstinfo.h" line="457"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="name" transfer-ownership="none">
-          <doc xml:space="preserve">name of the categories to set</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.c"
+               line="1733">name of the categories to set</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
       </parameters>
     </function>
     <function name="deinit" c:identifier="gst_deinit">
-      <doc xml:space="preserve">Clean up any resources created by GStreamer in gst_init().
+      <doc xml:space="preserve"
+           filename="gst/gst.c"
+           line="1066">Clean up any resources created by GStreamer in gst_init().
 
 It is normally not needed to call this function in a normal application
 as the resources will automatically be freed when the program terminates.
@@ -46387,53 +71843,357 @@ This function is therefore mostly used by testsuites and other memory
 profiling tools.
 
 After this call GStreamer (including this method) should not be used anymore.</doc>
+      <source-position filename="gst/gst.h" line="113"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
     </function>
     <function name="dynamic_type_register"
               c:identifier="gst_dynamic_type_register">
+      <doc xml:space="preserve"
+           filename="gst/gstdynamictypefactory.c"
+           line="144">Registers a new #GstDynamicTypeFactory in the registry</doc>
+      <source-position filename="gst/gstdynamictypefactory.h" line="55"/>
       <return-value transfer-ownership="none">
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="plugin" transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstdynamictypefactory.c"
+               line="146">The #GstPlugin to register @dyn_type for</doc>
           <type name="Plugin" c:type="GstPlugin*"/>
         </parameter>
         <parameter name="type" transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstdynamictypefactory.c"
+               line="147">The #GType to register dynamically</doc>
           <type name="GType" c:type="GType"/>
         </parameter>
       </parameters>
     </function>
+    <function-macro name="element_factory_get_author"
+                    c:identifier="gst_element_factory_get_author"
+                    introspectable="0">
+      <source-position filename="gst/gstcompat.h" line="75"/>
+      <parameters>
+        <parameter name="f">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="element_factory_get_description"
+                    c:identifier="gst_element_factory_get_description"
+                    introspectable="0">
+      <source-position filename="gst/gstcompat.h" line="74"/>
+      <parameters>
+        <parameter name="f">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="element_factory_get_documentation_uri"
+                    c:identifier="gst_element_factory_get_documentation_uri"
+                    introspectable="0">
+      <source-position filename="gst/gstcompat.h" line="76"/>
+      <parameters>
+        <parameter name="f">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="element_factory_get_icon_name"
+                    c:identifier="gst_element_factory_get_icon_name"
+                    introspectable="0">
+      <source-position filename="gst/gstcompat.h" line="77"/>
+      <parameters>
+        <parameter name="f">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="element_factory_get_klass"
+                    c:identifier="gst_element_factory_get_klass"
+                    introspectable="0">
+      <source-position filename="gst/gstcompat.h" line="73"/>
+      <parameters>
+        <parameter name="f">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="element_factory_get_longname"
+                    c:identifier="gst_element_factory_get_longname"
+                    introspectable="0">
+      <source-position filename="gst/gstcompat.h" line="72"/>
+      <parameters>
+        <parameter name="f">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="element_get_name"
+                    c:identifier="gst_element_get_name"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstelement.h"
+           line="797">Returns a copy of the name of @elem.
+Caller should g_free() the return value after usage.
+For a nameless element, this returns %NULL, which you can safely g_free()
+as well.</doc>
+      <source-position filename="gst/gstelement.h" line="810"/>
+      <parameters>
+        <parameter name="elem">
+          <doc xml:space="preserve"
+               filename="gst/gstelement.h"
+               line="799">a #GstElement to get the name of @elem.</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="element_get_parent"
+                    c:identifier="gst_element_get_parent"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstelement.h"
+           line="821">Get the parent of an element.</doc>
+      <source-position filename="gst/gstelement.h" line="829"/>
+      <parameters>
+        <parameter name="elem">
+          <doc xml:space="preserve"
+               filename="gst/gstelement.h"
+               line="823">a #GstElement to get the parent of.</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="element_set_name"
+                    c:identifier="gst_element_set_name"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstelement.h"
+           line="812">Sets the name of the element, getting rid of the old name if there was one.</doc>
+      <source-position filename="gst/gstelement.h" line="819"/>
+      <parameters>
+        <parameter name="elem">
+          <doc xml:space="preserve"
+               filename="gst/gstelement.h"
+               line="814">a #GstElement to set the name of.</doc>
+        </parameter>
+        <parameter name="name">
+          <doc xml:space="preserve"
+               filename="gst/gstelement.h"
+               line="815">the new name</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="element_set_parent"
+                    c:identifier="gst_element_set_parent"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstelement.h"
+           line="831">Sets the parent of an element.</doc>
+      <source-position filename="gst/gstelement.h" line="838"/>
+      <parameters>
+        <parameter name="elem">
+          <doc xml:space="preserve"
+               filename="gst/gstelement.h"
+               line="833">a #GstElement to set the parent of.</doc>
+        </parameter>
+        <parameter name="parent">
+          <doc xml:space="preserve"
+               filename="gst/gstelement.h"
+               line="834">the new parent #GstObject of the element.</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
     <function name="error_get_message" c:identifier="gst_error_get_message">
-      <doc xml:space="preserve">Get a string describing the error message in the current locale.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gsterror.c"
+           line="286">Get a string describing the error message in the current locale.</doc>
+      <source-position filename="gst/gsterror.h" line="246"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">a newly allocated string describing
+        <doc xml:space="preserve"
+             filename="gst/gsterror.c"
+             line="293">a newly allocated string describing
     the error message (in UTF-8 encoding)</doc>
         <type name="utf8" c:type="gchar*"/>
       </return-value>
       <parameters>
         <parameter name="domain" transfer-ownership="none">
-          <doc xml:space="preserve">the GStreamer error domain this error belongs to.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsterror.c"
+               line="288">the GStreamer error domain this error belongs to.</doc>
           <type name="GLib.Quark" c:type="GQuark"/>
         </parameter>
         <parameter name="code" transfer-ownership="none">
-          <doc xml:space="preserve">the error code belonging to the domain.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsterror.c"
+               line="289">the error code belonging to the domain.</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
       </parameters>
     </function>
+    <function-macro name="event_is_writable"
+                    c:identifier="gst_event_is_writable"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstevent.h"
+           line="304">Tests if you can safely write data into a event's structure or validly
+modify the seqnum and timestamp field.</doc>
+      <source-position filename="gst/gstevent.h" line="310"/>
+      <parameters>
+        <parameter name="ev">
+          <doc xml:space="preserve"
+               filename="gst/gstevent.h"
+               line="306">a #GstEvent</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="event_make_writable"
+                    c:identifier="gst_event_make_writable"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstevent.h"
+           line="312">Makes a writable event from the given event. If the source event is
+already writable, this will simply return the same event. A copy will
+otherwise be made using gst_event_copy().</doc>
+      <source-position filename="gst/gstevent.h" line="322"/>
+      <parameters>
+        <parameter name="ev">
+          <doc xml:space="preserve"
+               filename="gst/gstevent.h"
+               line="314">a #GstEvent</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function name="event_replace"
+              c:identifier="gst_event_replace"
+              moved-to="Event.replace"
+              introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstevent.h"
+           line="324">Modifies a pointer to a #GstEvent to point to a different #GstEvent. The
+modification is done atomically (so this is useful for ensuring thread safety
+in some cases), and the reference counts are updated appropriately (the old
+event is unreffed, the new one is reffed).
+
+Either @new_event or the #GstEvent pointed to by @old_event may be %NULL.</doc>
+      <source-position filename="gst/gstevent.h" line="340"/>
+      <return-value transfer-ownership="none">
+        <doc xml:space="preserve"
+             filename="gst/gstevent.h"
+             line="338">%TRUE if @new_event was different from @old_event</doc>
+        <type name="gboolean" c:type="gboolean"/>
+      </return-value>
+      <parameters>
+        <parameter name="old_event"
+                   direction="inout"
+                   caller-allocates="0"
+                   transfer-ownership="full"
+                   nullable="1"
+                   allow-none="1">
+          <doc xml:space="preserve"
+               filename="gst/gstevent.h"
+               line="326">pointer to a
+    pointer to a #GstEvent to be replaced.</doc>
+          <type name="Event" c:type="GstEvent**"/>
+        </parameter>
+        <parameter name="new_event"
+                   transfer-ownership="none"
+                   nullable="1"
+                   allow-none="1">
+          <doc xml:space="preserve"
+               filename="gst/gstevent.h"
+               line="328">pointer to a #GstEvent that will
+    replace the event pointed to by @old_event.</doc>
+          <type name="Event" c:type="GstEvent*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="event_steal"
+              c:identifier="gst_event_steal"
+              moved-to="Event.steal"
+              introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstevent.h"
+           line="347">Atomically replace the #GstEvent pointed to by @old_event with %NULL and
+return the original event.</doc>
+      <source-position filename="gst/gstevent.h" line="357"/>
+      <return-value transfer-ownership="full">
+        <doc xml:space="preserve"
+             filename="gst/gstevent.h"
+             line="355">the #GstEvent that was in @old_event</doc>
+        <type name="Event" c:type="GstEvent*"/>
+      </return-value>
+      <parameters>
+        <parameter name="old_event"
+                   direction="inout"
+                   caller-allocates="0"
+                   transfer-ownership="full"
+                   nullable="1"
+                   allow-none="1">
+          <doc xml:space="preserve"
+               filename="gst/gstevent.h"
+               line="349">pointer to a
+    pointer to a #GstEvent to be stolen.</doc>
+          <type name="Event" c:type="GstEvent**"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="event_take"
+              c:identifier="gst_event_take"
+              moved-to="Event.take"
+              introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstevent.h"
+           line="364">Modifies a pointer to a #GstEvent to point to a different #GstEvent. This
+function is similar to gst_event_replace() except that it takes ownership of
+@new_event.
+
+Either @new_event or the #GstEvent pointed to by @old_event may be %NULL.</doc>
+      <source-position filename="gst/gstevent.h" line="379"/>
+      <return-value transfer-ownership="none">
+        <doc xml:space="preserve"
+             filename="gst/gstevent.h"
+             line="377">%TRUE if @new_event was different from @old_event</doc>
+        <type name="gboolean" c:type="gboolean"/>
+      </return-value>
+      <parameters>
+        <parameter name="old_event"
+                   direction="inout"
+                   caller-allocates="0"
+                   transfer-ownership="full"
+                   nullable="1"
+                   allow-none="1">
+          <doc xml:space="preserve"
+               filename="gst/gstevent.h"
+               line="366">pointer to a
+    pointer to a #GstEvent to be stolen.</doc>
+          <type name="Event" c:type="GstEvent**"/>
+        </parameter>
+        <parameter name="new_event"
+                   transfer-ownership="full"
+                   nullable="1"
+                   allow-none="1">
+          <doc xml:space="preserve"
+               filename="gst/gstevent.h"
+               line="368">pointer to a #GstEvent that will
+    replace the event pointed to by @old_event.</doc>
+          <type name="Event" c:type="GstEvent*"/>
+        </parameter>
+      </parameters>
+    </function>
     <function name="event_type_get_flags"
               c:identifier="gst_event_type_get_flags"
               moved-to="EventType.get_flags">
-      <doc xml:space="preserve">Gets the #GstEventTypeFlags associated with @type.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstevent.c"
+           line="198">Gets the #GstEventTypeFlags associated with @type.</doc>
+      <source-position filename="gst/gstevent.h" line="435"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">a #GstEventTypeFlags.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstevent.c"
+             line="204">a #GstEventTypeFlags.</doc>
         <type name="EventTypeFlags" c:type="GstEventTypeFlags"/>
       </return-value>
       <parameters>
         <parameter name="type" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstEventType</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstevent.c"
+               line="200">a #GstEventType</doc>
           <type name="EventType" c:type="GstEventType"/>
         </parameter>
       </parameters>
@@ -46441,14 +72201,21 @@ After this call GStreamer (including this method) should not be used anymore.</d
     <function name="event_type_get_name"
               c:identifier="gst_event_type_get_name"
               moved-to="EventType.get_name">
-      <doc xml:space="preserve">Get a printable name for the given event type. Do not modify or free.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstevent.c"
+           line="158">Get a printable name for the given event type. Do not modify or free.</doc>
+      <source-position filename="gst/gstevent.h" line="428"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">a reference to the static name of the event.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstevent.c"
+             line="164">a reference to the static name of the event.</doc>
         <type name="utf8" c:type="const gchar*"/>
       </return-value>
       <parameters>
         <parameter name="type" transfer-ownership="none">
-          <doc xml:space="preserve">the event type</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstevent.c"
+               line="160">the event type</doc>
           <type name="EventType" c:type="GstEventType"/>
         </parameter>
       </parameters>
@@ -46456,14 +72223,21 @@ After this call GStreamer (including this method) should not be used anymore.</d
     <function name="event_type_to_quark"
               c:identifier="gst_event_type_to_quark"
               moved-to="EventType.to_quark">
-      <doc xml:space="preserve">Get the unique quark for the given event type.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstevent.c"
+           line="178">Get the unique quark for the given event type.</doc>
+      <source-position filename="gst/gstevent.h" line="431"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">the quark associated with the event type</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstevent.c"
+             line="184">the quark associated with the event type</doc>
         <type name="GLib.Quark" c:type="GQuark"/>
       </return-value>
       <parameters>
         <parameter name="type" transfer-ownership="none">
-          <doc xml:space="preserve">the event type</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstevent.c"
+               line="180">the event type</doc>
           <type name="EventType" c:type="GstEventType"/>
         </parameter>
       </parameters>
@@ -46471,47 +72245,68 @@ After this call GStreamer (including this method) should not be used anymore.</d
     <function name="filename_to_uri"
               c:identifier="gst_filename_to_uri"
               throws="1">
-      <doc xml:space="preserve">Similar to g_filename_to_uri(), but attempts to handle relative file paths
+      <doc xml:space="preserve"
+           filename="gst/gsturi.c"
+           line="893">Similar to g_filename_to_uri(), but attempts to handle relative file paths
 as well. Before converting @filename into an URI, it will be prefixed by
 the current working directory if it is a relative path, and then the path
 will be canonicalised so that it doesn't contain any './' or '../' segments.
 
-On Windows #filename should be in UTF-8 encoding.</doc>
+On Windows @filename should be in UTF-8 encoding.</doc>
+      <source-position filename="gst/gsturi.h" line="158"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">newly-allocated URI string, or NULL on error. The caller must
+        <doc xml:space="preserve"
+             filename="gst/gsturi.c"
+             line="905">newly-allocated URI string, or NULL on error. The caller must
   free the URI string with g_free() when no longer needed.</doc>
         <type name="utf8" c:type="gchar*"/>
       </return-value>
       <parameters>
         <parameter name="filename" transfer-ownership="none">
-          <doc xml:space="preserve">absolute or relative file name path</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsturi.c"
+               line="895">absolute or relative file name path</doc>
           <type name="filename" c:type="const gchar*"/>
         </parameter>
       </parameters>
     </function>
     <function name="flow_get_name" c:identifier="gst_flow_get_name">
-      <doc xml:space="preserve">Gets a string representing the given flow return.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstpad.c"
+           line="226">Gets a string representing the given flow return.</doc>
+      <source-position filename="gst/gstpad.h" line="186"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">a static string with the name of the flow return.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpad.c"
+             line="232">a static string with the name of the flow return.</doc>
         <type name="utf8" c:type="const gchar*"/>
       </return-value>
       <parameters>
         <parameter name="ret" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstFlowReturn to get the name of.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstpad.c"
+               line="228">a #GstFlowReturn to get the name of.</doc>
           <type name="FlowReturn" c:type="GstFlowReturn"/>
         </parameter>
       </parameters>
     </function>
     <function name="flow_to_quark" c:identifier="gst_flow_to_quark">
-      <doc xml:space="preserve">Get the unique quark for the given GstFlowReturn.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstpad.c"
+           line="248">Get the unique quark for the given GstFlowReturn.</doc>
+      <source-position filename="gst/gstpad.h" line="189"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">the quark associated with the flow return or 0 if an
+        <doc xml:space="preserve"
+             filename="gst/gstpad.c"
+             line="254">the quark associated with the flow return or 0 if an
 invalid return was specified.</doc>
         <type name="GLib.Quark" c:type="GQuark"/>
       </return-value>
       <parameters>
         <parameter name="ret" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstFlowReturn to get the quark of.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstpad.c"
+               line="250">a #GstFlowReturn to get the quark of.</doc>
           <type name="FlowReturn" c:type="GstFlowReturn"/>
         </parameter>
       </parameters>
@@ -46519,15 +72314,22 @@ invalid return was specified.</doc>
     <function name="format_get_by_nick"
               c:identifier="gst_format_get_by_nick"
               moved-to="Format.get_by_nick">
-      <doc xml:space="preserve">Return the format registered with the given nick.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstformat.c"
+           line="172">Return the format registered with the given nick.</doc>
+      <source-position filename="gst/gstformat.h" line="108"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">The format with @nick or GST_FORMAT_UNDEFINED
+        <doc xml:space="preserve"
+             filename="gst/gstformat.c"
+             line="178">The format with @nick or GST_FORMAT_UNDEFINED
 if the format was not registered.</doc>
         <type name="Format" c:type="GstFormat"/>
       </return-value>
       <parameters>
         <parameter name="nick" transfer-ownership="none">
-          <doc xml:space="preserve">The nick of the format</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstformat.c"
+               line="174">The nick of the format</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
       </parameters>
@@ -46535,9 +72337,14 @@ if the format was not registered.</doc>
     <function name="format_get_details"
               c:identifier="gst_format_get_details"
               moved-to="Format.get_details">
-      <doc xml:space="preserve">Get details about the given format.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstformat.c"
+           line="223">Get details about the given format.</doc>
+      <source-position filename="gst/gstformat.h" line="119"/>
       <return-value transfer-ownership="none" nullable="1">
-        <doc xml:space="preserve">The #GstFormatDefinition for @format or %NULL
+        <doc xml:space="preserve"
+             filename="gst/gstformat.c"
+             line="229">The #GstFormatDefinition for @format or %NULL
 on failure.
 
 MT safe.</doc>
@@ -46545,7 +72352,9 @@ MT safe.</doc>
       </return-value>
       <parameters>
         <parameter name="format" transfer-ownership="none">
-          <doc xml:space="preserve">The format to get details of</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstformat.c"
+               line="225">The format to get details of</doc>
           <type name="Format" c:type="GstFormat"/>
         </parameter>
       </parameters>
@@ -46553,15 +72362,22 @@ MT safe.</doc>
     <function name="format_get_name"
               c:identifier="gst_format_get_name"
               moved-to="Format.get_name">
-      <doc xml:space="preserve">Get a printable name for the given format. Do not modify or free.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstformat.c"
+           line="83">Get a printable name for the given format. Do not modify or free.</doc>
+      <source-position filename="gst/gstformat.h" line="96"/>
       <return-value transfer-ownership="none" nullable="1">
-        <doc xml:space="preserve">a reference to the static name of the format
+        <doc xml:space="preserve"
+             filename="gst/gstformat.c"
+             line="89">a reference to the static name of the format
 or %NULL if the format is unknown.</doc>
         <type name="utf8" c:type="const gchar*"/>
       </return-value>
       <parameters>
         <parameter name="format" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstFormat</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstformat.c"
+               line="85">a #GstFormat</doc>
           <type name="Format" c:type="GstFormat"/>
         </parameter>
       </parameters>
@@ -46569,20 +72385,30 @@ or %NULL if the format is unknown.</doc>
     <function name="format_iterate_definitions"
               c:identifier="gst_format_iterate_definitions"
               moved-to="Format.iterate_definitions">
-      <doc xml:space="preserve">Iterate all the registered formats. The format definition is read
+      <doc xml:space="preserve"
+           filename="gst/gstformat.c"
+           line="246">Iterate all the registered formats. The format definition is read
 only.</doc>
+      <source-position filename="gst/gstformat.h" line="122"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">a GstIterator of #GstFormatDefinition.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstformat.c"
+             line="252">a GstIterator of #GstFormatDefinition.</doc>
         <type name="Iterator" c:type="GstIterator*"/>
       </return-value>
     </function>
     <function name="format_register"
               c:identifier="gst_format_register"
               moved-to="Format.register">
-      <doc xml:space="preserve">Create a new GstFormat based on the nick or return an
+      <doc xml:space="preserve"
+           filename="gst/gstformat.c"
+           line="129">Create a new GstFormat based on the nick or return an
 already registered format with that nick.</doc>
+      <source-position filename="gst/gstformat.h" line="104"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">A new GstFormat or an already registered format
+        <doc xml:space="preserve"
+             filename="gst/gstformat.c"
+             line="137">A new GstFormat or an already registered format
 with the same nick.
 
 MT safe.</doc>
@@ -46590,11 +72416,15 @@ MT safe.</doc>
       </return-value>
       <parameters>
         <parameter name="nick" transfer-ownership="none">
-          <doc xml:space="preserve">The nick of the new format</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstformat.c"
+               line="131">The nick of the new format</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
         <parameter name="description" transfer-ownership="none">
-          <doc xml:space="preserve">The description of the new format</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstformat.c"
+               line="132">The description of the new format</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
       </parameters>
@@ -46602,75 +72432,135 @@ MT safe.</doc>
     <function name="format_to_quark"
               c:identifier="gst_format_to_quark"
               moved-to="Format.to_quark">
-      <doc xml:space="preserve">Get the unique quark for the given format.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstformat.c"
+           line="106">Get the unique quark for the given format.</doc>
+      <source-position filename="gst/gstformat.h" line="99"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">the quark associated with the format or 0 if the format
+        <doc xml:space="preserve"
+             filename="gst/gstformat.c"
+             line="112">the quark associated with the format or 0 if the format
 is unknown.</doc>
         <type name="GLib.Quark" c:type="GQuark"/>
       </return-value>
       <parameters>
         <parameter name="format" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstFormat</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstformat.c"
+               line="108">a #GstFormat</doc>
           <type name="Format" c:type="GstFormat"/>
         </parameter>
       </parameters>
     </function>
     <function name="formats_contains" c:identifier="gst_formats_contains">
-      <doc xml:space="preserve">See if the given format is inside the format array.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstformat.c"
+           line="198">See if the given format is inside the format array.</doc>
+      <source-position filename="gst/gstformat.h" line="113"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE if the format is found inside the array</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstformat.c"
+             line="205">%TRUE if the format is found inside the array</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="formats" transfer-ownership="none">
-          <doc xml:space="preserve">The format array to search</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstformat.c"
+               line="200">The format array to search</doc>
           <array c:type="const GstFormat*">
             <type name="Format" c:type="GstFormat"/>
           </array>
         </parameter>
         <parameter name="format" transfer-ownership="none">
-          <doc xml:space="preserve">the format to find</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstformat.c"
+               line="201">the format to find</doc>
           <type name="Format" c:type="GstFormat"/>
         </parameter>
       </parameters>
     </function>
+    <function-macro name="gdouble_to_guint64"
+                    c:identifier="gst_gdouble_to_guint64"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstutils.h"
+           line="68">Convert @value to a guint64.</doc>
+      <source-position filename="gst/gstutils.h" line="77"/>
+      <parameters>
+        <parameter name="value">
+          <doc xml:space="preserve"
+               filename="gst/gstutils.h"
+               line="70">the #gdouble value to convert</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
     <function name="get_main_executable_path"
               c:identifier="gst_get_main_executable_path"
               version="1.14">
-      <doc xml:space="preserve">This helper is mostly helpful for plugins that need to
+      <doc xml:space="preserve"
+           filename="gst/gst.c"
+           line="367">This helper is mostly helpful for plugins that need to
 inspect the folder of the main executable to determine
 their set of features.
 
 When a plugin is initialized from the gst-plugin-scanner
 external process, the returned path will be the same as from the
 parent process.</doc>
+      <source-position filename="gst/gst.h" line="137"/>
       <return-value transfer-ownership="none" nullable="1">
-        <doc xml:space="preserve">The path of the executable that
+        <doc xml:space="preserve"
+             filename="gst/gst.c"
+             line="378">The path of the executable that
   initialized GStreamer, or %NULL if it could not be determined.</doc>
         <type name="utf8" c:type="const gchar*"/>
       </return-value>
     </function>
+    <function-macro name="guint64_to_gdouble"
+                    c:identifier="gst_guint64_to_gdouble"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstutils.h"
+           line="59">Convert @value to a gdouble.</doc>
+      <source-position filename="gst/gstutils.h" line="78"/>
+      <parameters>
+        <parameter name="value">
+          <doc xml:space="preserve"
+               filename="gst/gstutils.h"
+               line="61">the #guint64 value to convert</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
     <function name="info_strdup_printf"
               c:identifier="gst_info_strdup_printf"
               version="1.8"
               introspectable="0">
-      <doc xml:space="preserve">Allocates, fills and returns a 0-terminated string from the printf style
+      <doc xml:space="preserve"
+           filename="gst/gstinfo.c"
+           line="2563">Allocates, fills and returns a 0-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().</doc>
+      <source-position filename="gst/gstinfo.h" line="499"/>
       <return-value transfer-ownership="full" nullable="1">
-        <doc xml:space="preserve">a newly allocated null terminated string or %NULL on any error</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstinfo.c"
+             line="2575">a newly allocated null terminated string or %NULL on any error</doc>
         <type name="utf8" c:type="gchar*"/>
       </return-value>
       <parameters>
         <parameter name="format" transfer-ownership="none">
-          <doc xml:space="preserve">a printf style format string</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.c"
+               line="2565">a printf style format string</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
         <parameter name="..." transfer-ownership="none">
-          <doc xml:space="preserve">the printf arguments for @format</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.c"
+               line="2566">the printf arguments for @format</doc>
           <varargs/>
         </parameter>
       </parameters>
@@ -46679,23 +72569,32 @@ Free with g_free().</doc>
               c:identifier="gst_info_strdup_vprintf"
               version="1.8"
               introspectable="0">
-      <doc xml:space="preserve">Allocates, fills and returns a null terminated string from the printf style
+      <doc xml:space="preserve"
+           filename="gst/gstinfo.c"
+           line="2536">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().</doc>
+      <source-position filename="gst/gstinfo.h" line="496"/>
       <return-value transfer-ownership="full" nullable="1">
-        <doc xml:space="preserve">a newly allocated null terminated string or %NULL on any error</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstinfo.c"
+             line="2548">a newly allocated null terminated string or %NULL on any error</doc>
         <type name="utf8" c:type="gchar*"/>
       </return-value>
       <parameters>
         <parameter name="format" transfer-ownership="none">
-          <doc xml:space="preserve">a printf style format string</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.c"
+               line="2538">a printf style format string</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
         <parameter name="args" transfer-ownership="none">
-          <doc xml:space="preserve">the va_list of printf arguments for @format</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.c"
+               line="2539">the va_list of printf arguments for @format</doc>
           <type name="va_list" c:type="va_list"/>
         </parameter>
       </parameters>
@@ -46704,7 +72603,9 @@ Free with g_free().</doc>
               c:identifier="gst_info_vasprintf"
               version="1.8"
               introspectable="0">
-      <doc xml:space="preserve">Allocates and fills a string large enough (including the terminating null
+      <doc xml:space="preserve"
+           filename="gst/gstinfo.c"
+           line="2507">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
@@ -46713,8 +72614,11 @@ 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().</doc>
+      <source-position filename="gst/gstinfo.h" line="492"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">the length of the string allocated into @result or -1 on any error</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstinfo.c"
+             line="2523">the length of the string allocated into @result or -1 on any error</doc>
         <type name="gint" c:type="gint"/>
       </return-value>
       <parameters>
@@ -46722,21 +72626,29 @@ Free @result with g_free().</doc>
                    direction="out"
                    caller-allocates="0"
                    transfer-ownership="full">
-          <doc xml:space="preserve">the resulting string</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.c"
+               line="2509">the resulting string</doc>
           <type name="utf8" c:type="gchar**"/>
         </parameter>
         <parameter name="format" transfer-ownership="none">
-          <doc xml:space="preserve">a printf style format string</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.c"
+               line="2510">a printf style format string</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
         <parameter name="args" transfer-ownership="none">
-          <doc xml:space="preserve">the va_list of printf arguments for @format</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.c"
+               line="2511">the va_list of printf arguments for @format</doc>
           <type name="va_list" c:type="va_list"/>
         </parameter>
       </parameters>
     </function>
     <function name="init" c:identifier="gst_init">
-      <doc xml:space="preserve">Initializes the GStreamer library, setting up internal path lists,
+      <doc xml:space="preserve"
+           filename="gst/gst.c"
+           line="442">Initializes the GStreamer library, setting up internal path lists,
 registering built-in elements, and loading standard plugins.
 
 Unless the plugin registry is disabled at compile time, the registry will be
@@ -46754,6 +72666,7 @@ WARNING: This function does not work in the same way as corresponding
 functions in other glib-style libraries, such as gtk_init\(\). In
 particular, unknown command line options cause this function to
 abort program execution.</doc>
+      <source-position filename="gst/gst.h" line="101"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
@@ -46764,7 +72677,9 @@ abort program execution.</doc>
                    transfer-ownership="full"
                    nullable="1"
                    allow-none="1">
-          <doc xml:space="preserve">pointer to application's argc</doc>
+          <doc xml:space="preserve"
+               filename="gst/gst.c"
+               line="444">pointer to application's argc</doc>
           <type name="gint" c:type="int*"/>
         </parameter>
         <parameter name="argv"
@@ -46773,7 +72688,9 @@ abort program execution.</doc>
                    transfer-ownership="full"
                    nullable="1"
                    allow-none="1">
-          <doc xml:space="preserve">pointer to application's argv</doc>
+          <doc xml:space="preserve"
+               filename="gst/gst.c"
+               line="445">pointer to application's argv</doc>
           <array length="0" zero-terminated="0" c:type="char***">
             <type name="utf8" c:type="char**"/>
           </array>
@@ -46781,14 +72698,19 @@ abort program execution.</doc>
       </parameters>
     </function>
     <function name="init_check" c:identifier="gst_init_check" throws="1">
-      <doc xml:space="preserve">Initializes the GStreamer library, setting up internal path lists,
+      <doc xml:space="preserve"
+           filename="gst/gst.c"
+           line="389">Initializes the GStreamer library, setting up internal path lists,
 registering built-in elements, and loading standard plugins.
 
 This function will return %FALSE if GStreamer could not be initialized
 for some reason.  If you want your program to fail fatally,
 use gst_init() instead.</doc>
+      <source-position filename="gst/gst.h" line="104"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE if GStreamer could be initialized.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gst.c"
+             line="402">%TRUE if GStreamer could be initialized.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
@@ -46798,7 +72720,9 @@ use gst_init() instead.</doc>
                    transfer-ownership="full"
                    nullable="1"
                    allow-none="1">
-          <doc xml:space="preserve">pointer to application's argc</doc>
+          <doc xml:space="preserve"
+               filename="gst/gst.c"
+               line="391">pointer to application's argc</doc>
           <type name="gint" c:type="int*"/>
         </parameter>
         <parameter name="argv"
@@ -46807,7 +72731,9 @@ use gst_init() instead.</doc>
                    transfer-ownership="full"
                    nullable="1"
                    allow-none="1">
-          <doc xml:space="preserve">pointer to application's argv</doc>
+          <doc xml:space="preserve"
+               filename="gst/gst.c"
+               line="392">pointer to application's argv</doc>
           <array length="0" zero-terminated="0" c:type="char***">
             <type name="utf8" c:type="char**"/>
           </array>
@@ -46817,7 +72743,9 @@ use gst_init() instead.</doc>
     <function name="init_get_option_group"
               c:identifier="gst_init_get_option_group"
               introspectable="0">
-      <doc xml:space="preserve">Returns a #GOptionGroup with GStreamer's argument specifications. The
+      <doc xml:space="preserve"
+           filename="gst/gst.c"
+           line="225">Returns a #GOptionGroup with GStreamer's argument specifications. The
 group is set up to use standard GOption callbacks, so when using this
 group in combination with GOption parsing methods, all argument parsing
 and initialization is automated.
@@ -46828,13 +72756,23 @@ libraries that use GOption (see g_option_context_add_group() ).
 If you use this function, you should make sure you initialise the GLib
 threading system as one of the very first things in your program
 (see the example at the beginning of this section).</doc>
+      <source-position filename="gst/gst.h" line="110"/>
       <return-value transfer-ownership="full" nullable="1">
-        <doc xml:space="preserve">a pointer to GStreamer's option group.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gst.c"
+             line="240">a pointer to GStreamer's option group.</doc>
         <type name="GLib.OptionGroup" c:type="GOptionGroup*"/>
       </return-value>
     </function>
     <function name="is_caps_features" c:identifier="gst_is_caps_features">
+      <doc xml:space="preserve"
+           filename="gst/gstcapsfeatures.c"
+           line="121">Checks if @obj is a #GstCapsFeatures</doc>
+      <source-position filename="gst/gstcapsfeatures.h" line="52"/>
       <return-value transfer-ownership="none">
+        <doc xml:space="preserve"
+             filename="gst/gstcapsfeatures.c"
+             line="126">%TRUE if @obj is a #GstCapsFeatures %FALSE otherwise</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
@@ -46847,16 +72785,22 @@ threading system as one of the very first things in your program
       </parameters>
     </function>
     <function name="is_initialized" c:identifier="gst_is_initialized">
-      <doc xml:space="preserve">Use this function to check if GStreamer has been initialized with gst_init()
+      <doc xml:space="preserve"
+           filename="gst/gst.c"
+           line="481">Use this function to check if GStreamer has been initialized with gst_init()
 or gst_init_check().</doc>
+      <source-position filename="gst/gst.h" line="107"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE if initialization has been done, %FALSE otherwise.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gst.c"
+             line="487">%TRUE if initialization has been done, %FALSE otherwise.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
     </function>
     <function name="library_error_quark"
               c:identifier="gst_library_error_quark"
               moved-to="LibraryError.quark">
+      <attribute name="doc.skip" value="true"/>
       <return-value transfer-ownership="none">
         <type name="GLib.Quark" c:type="GQuark"/>
       </return-value>
@@ -46864,29 +72808,188 @@ or gst_init_check().</doc>
     <function name="make_element_message_details"
               c:identifier="gst_make_element_message_details"
               introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstelement.c"
+           line="3824">Create a #GstStructure to be used with #gst_element_message_full_with_details</doc>
+      <source-position filename="gst/gstelement.h" line="351"/>
       <return-value transfer-ownership="full">
         <type name="Structure" c:type="GstStructure*"/>
       </return-value>
       <parameters>
         <parameter name="name" transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstelement.c"
+               line="3826">Name of the first field to set</doc>
           <type name="utf8" c:type="const char*"/>
         </parameter>
         <parameter name="..." transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstelement.c"
+               line="3827">variable arguments in the same form as #GstStructure</doc>
           <varargs/>
         </parameter>
       </parameters>
     </function>
+    <function-macro name="memory_is_writable"
+                    c:identifier="gst_memory_is_writable"
+                    introspectable="0">
+      <source-position filename="gst/gstmemory.h" line="360"/>
+      <parameters>
+        <parameter name="m">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="memory_lock"
+                    c:identifier="gst_memory_lock"
+                    introspectable="0">
+      <source-position filename="gst/gstmemory.h" line="358"/>
+      <parameters>
+        <parameter name="m">
+        </parameter>
+        <parameter name="f">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="memory_make_writable"
+                    c:identifier="gst_memory_make_writable"
+                    introspectable="0">
+      <source-position filename="gst/gstmemory.h" line="361"/>
+      <parameters>
+        <parameter name="m">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="memory_unlock"
+                    c:identifier="gst_memory_unlock"
+                    introspectable="0">
+      <source-position filename="gst/gstmemory.h" line="359"/>
+      <parameters>
+        <parameter name="m">
+        </parameter>
+        <parameter name="f">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="message_is_writable"
+                    c:identifier="gst_message_is_writable"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstmessage.h"
+           line="430">Tests if you can safely write into a message's structure or validly
+modify the seqnum and timestamp fields.</doc>
+      <source-position filename="gst/gstmessage.h" line="437"/>
+      <parameters>
+        <parameter name="msg">
+          <doc xml:space="preserve"
+               filename="gst/gstmessage.h"
+               line="432">a #GstMessage</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="message_make_writable"
+                    c:identifier="gst_message_make_writable"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstmessage.h"
+           line="438">Checks if a message is writable. If not, a writable copy is made and
+returned.</doc>
+      <source-position filename="gst/gstmessage.h" line="449"/>
+      <parameters>
+        <parameter name="msg">
+          <doc xml:space="preserve"
+               filename="gst/gstmessage.h"
+               line="440">the message to make writable</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="message_new_duration"
+                    c:identifier="gst_message_new_duration"
+                    introspectable="0">
+      <source-position filename="gst/gstcompat.h" line="87"/>
+      <parameters>
+        <parameter name="src">
+        </parameter>
+        <parameter name="fmt">
+        </parameter>
+        <parameter name="dur">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="message_parse_duration"
+                    c:identifier="gst_message_parse_duration"
+                    introspectable="0">
+      <source-position filename="gst/gstcompat.h" line="89"/>
+      <parameters>
+        <parameter name="msg">
+        </parameter>
+        <parameter name="fmt">
+        </parameter>
+        <parameter name="dur">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function name="message_replace"
+              c:identifier="gst_message_replace"
+              moved-to="Message.replace"
+              introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstmessage.h"
+           line="450">Modifies a pointer to a #GstMessage to point to a different #GstMessage. The
+modification is done atomically (so this is useful for ensuring thread safety
+in some cases), and the reference counts are updated appropriately (the old
+message is unreffed, the new one is reffed).
+
+Either @new_message or the #GstMessage pointed to by @old_message may be %NULL.</doc>
+      <source-position filename="gst/gstmessage.h" line="466"/>
+      <return-value transfer-ownership="none">
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.h"
+             line="464">%TRUE if @new_message was different from @old_message</doc>
+        <type name="gboolean" c:type="gboolean"/>
+      </return-value>
+      <parameters>
+        <parameter name="old_message"
+                   direction="inout"
+                   caller-allocates="0"
+                   transfer-ownership="full"
+                   nullable="1"
+                   allow-none="1">
+          <doc xml:space="preserve"
+               filename="gst/gstmessage.h"
+               line="452">pointer to a
+    pointer to a #GstMessage to be replaced.</doc>
+          <type name="Message" c:type="GstMessage**"/>
+        </parameter>
+        <parameter name="new_message"
+                   transfer-ownership="none"
+                   nullable="1"
+                   allow-none="1">
+          <doc xml:space="preserve"
+               filename="gst/gstmessage.h"
+               line="454">pointer to a #GstMessage that will
+    replace the message pointed to by @old_message.</doc>
+          <type name="Message" c:type="GstMessage*"/>
+        </parameter>
+      </parameters>
+    </function>
     <function name="message_type_get_name"
               c:identifier="gst_message_type_get_name"
               moved-to="MessageType.get_name">
-      <doc xml:space="preserve">Get a printable name for the given message type. Do not modify or free.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstmessage.c"
+           line="140">Get a printable name for the given message type. Do not modify or free.</doc>
+      <source-position filename="gst/gstmessage.h" line="358"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">a reference to the static name of the message.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="146">a reference to the static name of the message.</doc>
         <type name="utf8" c:type="const gchar*"/>
       </return-value>
       <parameters>
         <parameter name="type" transfer-ownership="none">
-          <doc xml:space="preserve">the message type</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstmessage.c"
+               line="142">the message type</doc>
           <type name="MessageType" c:type="GstMessageType"/>
         </parameter>
       </parameters>
@@ -46894,14 +72997,21 @@ or gst_init_check().</doc>
     <function name="message_type_to_quark"
               c:identifier="gst_message_type_to_quark"
               moved-to="MessageType.to_quark">
-      <doc xml:space="preserve">Get the unique quark for the given message type.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstmessage.c"
+           line="160">Get the unique quark for the given message type.</doc>
+      <source-position filename="gst/gstmessage.h" line="361"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">the quark associated with the message type</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmessage.c"
+             line="166">the quark associated with the message type</doc>
         <type name="GLib.Quark" c:type="GQuark"/>
       </return-value>
       <parameters>
         <parameter name="type" transfer-ownership="none">
-          <doc xml:space="preserve">the message type</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstmessage.c"
+               line="162">the message type</doc>
           <type name="MessageType" c:type="GstMessageType"/>
         </parameter>
       </parameters>
@@ -46910,15 +73020,20 @@ or gst_init_check().</doc>
               c:identifier="gst_meta_api_type_get_tags"
               moved-to="Meta.api_type_get_tags"
               version="1.2">
+      <source-position filename="gst/gstmeta.h" line="223"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">an array of tags as strings.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmeta.c"
+             line="129">an array of tags as strings.</doc>
         <array c:type="const gchar* const*">
           <type name="utf8"/>
         </array>
       </return-value>
       <parameters>
         <parameter name="api" transfer-ownership="none">
-          <doc xml:space="preserve">an API</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstmeta.c"
+               line="127">an API</doc>
           <type name="GType" c:type="GType"/>
         </parameter>
       </parameters>
@@ -46926,18 +73041,27 @@ or gst_init_check().</doc>
     <function name="meta_api_type_has_tag"
               c:identifier="gst_meta_api_type_has_tag"
               moved-to="Meta.api_type_has_tag">
-      <doc xml:space="preserve">Check if @api was registered with @tag.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstmeta.c"
+           line="107">Check if @api was registered with @tag.</doc>
+      <source-position filename="gst/gstmeta.h" line="211"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE if @api was registered with @tag.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmeta.c"
+             line="114">%TRUE if @api was registered with @tag.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="api" transfer-ownership="none">
-          <doc xml:space="preserve">an API</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstmeta.c"
+               line="109">an API</doc>
           <type name="GType" c:type="GType"/>
         </parameter>
         <parameter name="tag" transfer-ownership="none">
-          <doc xml:space="preserve">the tag to check</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstmeta.c"
+               line="110">the tag to check</doc>
           <type name="GLib.Quark" c:type="GQuark"/>
         </parameter>
       </parameters>
@@ -46945,19 +73069,28 @@ or gst_init_check().</doc>
     <function name="meta_api_type_register"
               c:identifier="gst_meta_api_type_register"
               moved-to="Meta.api_type_register">
-      <doc xml:space="preserve">Register and return a GType for the @api and associate it with
+      <doc xml:space="preserve"
+           filename="gst/gstmeta.c"
+           line="71">Register and return a GType for the @api and associate it with
 @tags.</doc>
+      <source-position filename="gst/gstmeta.h" line="208"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">a unique GType for @api.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstmeta.c"
+             line="79">a unique GType for @api.</doc>
         <type name="GType" c:type="GType"/>
       </return-value>
       <parameters>
         <parameter name="api" transfer-ownership="none">
-          <doc xml:space="preserve">an API to register</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstmeta.c"
+               line="73">an API to register</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
         <parameter name="tags" transfer-ownership="none">
-          <doc xml:space="preserve">tags for @api</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstmeta.c"
+               line="74">tags for @api</doc>
           <array c:type="const gchar**">
             <type name="utf8" c:type="gchar*"/>
           </array>
@@ -46967,16 +73100,23 @@ or gst_init_check().</doc>
     <function name="meta_get_info"
               c:identifier="gst_meta_get_info"
               moved-to="Meta.get_info">
-      <doc xml:space="preserve">Lookup a previously registered meta info structure by its implementation name
+      <doc xml:space="preserve"
+           filename="gst/gstmeta.c"
+           line="207">Lookup a previously registered meta info structure by its implementation name
 @impl.</doc>
+      <source-position filename="gst/gstmeta.h" line="220"/>
       <return-value transfer-ownership="none" nullable="1">
-        <doc xml:space="preserve">a #GstMetaInfo with @impl, or
+        <doc xml:space="preserve"
+             filename="gst/gstmeta.c"
+             line="214">a #GstMetaInfo with @impl, or
 %NULL when no such metainfo exists.</doc>
         <type name="MetaInfo" c:type="const GstMetaInfo*"/>
       </return-value>
       <parameters>
         <parameter name="impl" transfer-ownership="none">
-          <doc xml:space="preserve">the name</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstmeta.c"
+               line="209">the name</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
       </parameters>
@@ -46984,40 +73124,57 @@ or gst_init_check().</doc>
     <function name="meta_register"
               c:identifier="gst_meta_register"
               moved-to="Meta.register">
-      <doc xml:space="preserve">Register a new #GstMeta implementation.
+      <doc xml:space="preserve"
+           filename="gst/gstmeta.c"
+           line="147">Register a new #GstMeta implementation.
 
 The same @info can be retrieved later with gst_meta_get_info() by using
 @impl as the key.</doc>
+      <source-position filename="gst/gstmeta.h" line="214"/>
       <return-value transfer-ownership="none" nullable="1">
-        <doc xml:space="preserve">a #GstMetaInfo that can be used to
+        <doc xml:space="preserve"
+             filename="gst/gstmeta.c"
+             line="161">a #GstMetaInfo that can be used to
 access metadata.</doc>
         <type name="MetaInfo" c:type="const GstMetaInfo*"/>
       </return-value>
       <parameters>
         <parameter name="api" transfer-ownership="none">
-          <doc xml:space="preserve">the type of the #GstMeta API</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstmeta.c"
+               line="149">the type of the #GstMeta API</doc>
           <type name="GType" c:type="GType"/>
         </parameter>
         <parameter name="impl" transfer-ownership="none">
-          <doc xml:space="preserve">the name of the #GstMeta implementation</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstmeta.c"
+               line="150">the name of the #GstMeta implementation</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
         <parameter name="size" transfer-ownership="none">
-          <doc xml:space="preserve">the size of the #GstMeta structure</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstmeta.c"
+               line="151">the size of the #GstMeta structure</doc>
           <type name="gsize" c:type="gsize"/>
         </parameter>
         <parameter name="init_func" transfer-ownership="none" scope="async">
-          <doc xml:space="preserve">a #GstMetaInitFunction</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstmeta.c"
+               line="152">a #GstMetaInitFunction</doc>
           <type name="MetaInitFunction" c:type="GstMetaInitFunction"/>
         </parameter>
         <parameter name="free_func" transfer-ownership="none" scope="async">
-          <doc xml:space="preserve">a #GstMetaFreeFunction</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstmeta.c"
+               line="153">a #GstMetaFreeFunction</doc>
           <type name="MetaFreeFunction" c:type="GstMetaFreeFunction"/>
         </parameter>
         <parameter name="transform_func"
                    transfer-ownership="none"
                    scope="async">
-          <doc xml:space="preserve">a #GstMetaTransformFunction</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstmeta.c"
+               line="154">a #GstMetaTransformFunction</doc>
           <type name="MetaTransformFunction"
                 c:type="GstMetaTransformFunction"/>
         </parameter>
@@ -47026,13 +73183,18 @@ access metadata.</doc>
     <function name="mini_object_replace"
               c:identifier="gst_mini_object_replace"
               moved-to="MiniObject.replace">
-      <doc xml:space="preserve">Atomically modifies a pointer to point to a new mini-object.
+      <doc xml:space="preserve"
+           filename="gst/gstminiobject.c"
+           line="700">Atomically modifies a pointer to point to a new mini-object.
 The reference count of @olddata is decreased and the reference count of
 @newdata is increased.
 
 Either @newdata and the value pointed to by @olddata may be %NULL.</doc>
+      <source-position filename="gst/gstminiobject.h" line="285"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE if @newdata was different from @olddata</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstminiobject.c"
+             line="712">%TRUE if @newdata was different from @olddata</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
@@ -47042,7 +73204,9 @@ Either @newdata and the value pointed to by @olddata may be %NULL.</doc>
                    transfer-ownership="full"
                    nullable="1"
                    allow-none="1">
-          <doc xml:space="preserve">pointer to a pointer to a
+          <doc xml:space="preserve"
+               filename="gst/gstminiobject.c"
+               line="702">pointer to a pointer to a
     mini-object to be replaced</doc>
           <type name="MiniObject" c:type="GstMiniObject**"/>
         </parameter>
@@ -47050,7 +73214,9 @@ Either @newdata and the value pointed to by @olddata may be %NULL.</doc>
                    transfer-ownership="none"
                    nullable="1"
                    allow-none="1">
-          <doc xml:space="preserve">pointer to new mini-object</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstminiobject.c"
+               line="704">pointer to new mini-object</doc>
           <type name="MiniObject" c:type="GstMiniObject*"/>
         </parameter>
       </parameters>
@@ -47059,10 +73225,15 @@ Either @newdata and the value pointed to by @olddata may be %NULL.</doc>
               c:identifier="gst_mini_object_steal"
               moved-to="MiniObject.steal"
               introspectable="0">
-      <doc xml:space="preserve">Replace the current #GstMiniObject pointer to by @olddata with %NULL and
+      <doc xml:space="preserve"
+           filename="gst/gstminiobject.c"
+           line="746">Replace the current #GstMiniObject pointer to by @olddata with %NULL and
 return the old value.</doc>
+      <source-position filename="gst/gstminiobject.h" line="291"/>
       <return-value nullable="1">
-        <doc xml:space="preserve">the #GstMiniObject at @oldata</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstminiobject.c"
+             line="754">the #GstMiniObject at @oldata</doc>
         <type name="MiniObject" c:type="GstMiniObject*"/>
       </return-value>
       <parameters>
@@ -47070,7 +73241,9 @@ return the old value.</doc>
                    direction="inout"
                    caller-allocates="0"
                    transfer-ownership="full">
-          <doc xml:space="preserve">pointer to a pointer to a mini-object to
+          <doc xml:space="preserve"
+               filename="gst/gstminiobject.c"
+               line="748">pointer to a pointer to a mini-object to
     be stolen</doc>
           <type name="MiniObject" c:type="GstMiniObject**"/>
         </parameter>
@@ -47079,14 +73252,19 @@ return the old value.</doc>
     <function name="mini_object_take"
               c:identifier="gst_mini_object_take"
               moved-to="MiniObject.take">
-      <doc xml:space="preserve">Modifies a pointer to point to a new mini-object. The modification
+      <doc xml:space="preserve"
+           filename="gst/gstminiobject.c"
+           line="776">Modifies a pointer to point to a new mini-object. The modification
 is done atomically. This version is similar to gst_mini_object_replace()
 except that it does not increase the refcount of @newdata and thus
 takes ownership of @newdata.
 
 Either @newdata and the value pointed to by @olddata may be %NULL.</doc>
+      <source-position filename="gst/gstminiobject.h" line="288"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE if @newdata was different from @olddata</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstminiobject.c"
+             line="789">%TRUE if @newdata was different from @olddata</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
@@ -47094,120 +73272,458 @@ Either @newdata and the value pointed to by @olddata may be %NULL.</doc>
                    direction="inout"
                    caller-allocates="0"
                    transfer-ownership="full">
-          <doc xml:space="preserve">pointer to a pointer to a mini-object to
+          <doc xml:space="preserve"
+               filename="gst/gstminiobject.c"
+               line="778">pointer to a pointer to a mini-object to
     be replaced</doc>
           <type name="MiniObject" c:type="GstMiniObject**"/>
         </parameter>
         <parameter name="newdata" transfer-ownership="none">
-          <doc xml:space="preserve">pointer to new mini-object</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstminiobject.c"
+               line="780">pointer to new mini-object</doc>
           <type name="MiniObject" c:type="GstMiniObject*"/>
         </parameter>
       </parameters>
     </function>
+    <function-macro name="pad_get_caps_reffed"
+                    c:identifier="gst_pad_get_caps_reffed"
+                    introspectable="0">
+      <source-position filename="gst/gstcompat.h" line="79"/>
+      <parameters>
+        <parameter name="p">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="pad_get_name"
+                    c:identifier="gst_pad_get_name"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstpad.h"
+           line="1294">Get a copy of the name of the pad. g_free() after usage.
+
+MT safe.</doc>
+      <source-position filename="gst/gstpad.h" line="1302"/>
+      <parameters>
+        <parameter name="pad">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="1296">the pad to get the name from</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="pad_get_parent"
+                    c:identifier="gst_pad_get_parent"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstpad.h"
+           line="1303">Get the parent of @pad. This function increases the refcount
+of the parent object so you should gst_object_unref() it after usage.
+Can return %NULL if the pad did not have a parent.
+
+MT safe.</doc>
+      <source-position filename="gst/gstpad.h" line="1315"/>
+      <parameters>
+        <parameter name="pad">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.h"
+               line="1305">the pad to get the parent of</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
     <function name="pad_mode_get_name"
               c:identifier="gst_pad_mode_get_name"
               moved-to="PadMode.get_name">
-      <doc xml:space="preserve">Return the name of a pad mode, for use in debug messages mostly.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstpad.c"
+           line="944">Return the name of a pad mode, for use in debug messages mostly.</doc>
+      <source-position filename="gst/gstpad.h" line="67"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">short mnemonic for pad mode @mode</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpad.c"
+             line="950">short mnemonic for pad mode @mode</doc>
         <type name="utf8" c:type="const gchar*"/>
       </return-value>
       <parameters>
         <parameter name="mode" transfer-ownership="none">
-          <doc xml:space="preserve">the pad mode</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstpad.c"
+               line="946">the pad mode</doc>
           <type name="PadMode" c:type="GstPadMode"/>
         </parameter>
       </parameters>
     </function>
+    <function-macro name="pad_peer_get_caps_reffed"
+                    c:identifier="gst_pad_peer_get_caps_reffed"
+                    introspectable="0">
+      <source-position filename="gst/gstcompat.h" line="80"/>
+      <parameters>
+        <parameter name="p">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="pad_set_activate_function"
+                    c:identifier="gst_pad_set_activate_function"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstpad.c"
+           line="1698">Calls gst_pad_set_activate_function_full() with %NULL for the user_data and
+notify.</doc>
+      <source-position filename="gst/gstpad.h" line="1412"/>
+      <parameters>
+        <parameter name="p">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.c"
+               line="1700">a #GstPad.</doc>
+        </parameter>
+        <parameter name="f">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.c"
+               line="1701">the #GstPadActivateFunction to set.</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="pad_set_activatemode_function"
+                    c:identifier="gst_pad_set_activatemode_function"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstpad.c"
+           line="1735">Calls gst_pad_set_activatemode_function_full() with %NULL for the user_data and
+notify.</doc>
+      <source-position filename="gst/gstpad.h" line="1413"/>
+      <parameters>
+        <parameter name="p">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.c"
+               line="1737">a #GstPad.</doc>
+        </parameter>
+        <parameter name="f">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.c"
+               line="1738">the #GstPadActivateModeFunction to set.</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="pad_set_chain_function"
+                    c:identifier="gst_pad_set_chain_function"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstpad.c"
+           line="1770">Calls gst_pad_set_chain_function_full() with %NULL for the user_data and
+notify.</doc>
+      <source-position filename="gst/gstpad.h" line="1414"/>
+      <parameters>
+        <parameter name="p">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.c"
+               line="1772">a sink #GstPad.</doc>
+        </parameter>
+        <parameter name="f">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.c"
+               line="1773">the #GstPadChainFunction to set.</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="pad_set_chain_list_function"
+                    c:identifier="gst_pad_set_chain_list_function"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstpad.c"
+           line="1805">Calls gst_pad_set_chain_list_function_full() with %NULL for the user_data and
+notify.</doc>
+      <source-position filename="gst/gstpad.h" line="1415"/>
+      <parameters>
+        <parameter name="p">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.c"
+               line="1807">a sink #GstPad.</doc>
+        </parameter>
+        <parameter name="f">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.c"
+               line="1808">the #GstPadChainListFunction to set.</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="pad_set_event_full_function"
+                    c:identifier="gst_pad_set_event_full_function"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstpad.c"
+           line="1922">Calls gst_pad_set_event_full_function_full() with %NULL for the user_data and
+notify.</doc>
+      <source-position filename="gst/gstpad.h" line="1418"/>
+      <parameters>
+        <parameter name="p">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.c"
+               line="1924">a #GstPad of either direction.</doc>
+        </parameter>
+        <parameter name="f">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.c"
+               line="1925">the #GstPadEventFullFunction to set.</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="pad_set_event_function"
+                    c:identifier="gst_pad_set_event_function"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstpad.c"
+           line="1878">Calls gst_pad_set_event_function_full() with %NULL for the user_data and
+notify.</doc>
+      <source-position filename="gst/gstpad.h" line="1417"/>
+      <parameters>
+        <parameter name="p">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.c"
+               line="1880">a #GstPad of either direction.</doc>
+        </parameter>
+        <parameter name="f">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.c"
+               line="1881">the #GstPadEventFunction to set.</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="pad_set_getrange_function"
+                    c:identifier="gst_pad_set_getrange_function"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstpad.c"
+           line="1842">Calls gst_pad_set_getrange_function_full() with %NULL for the user_data and
+notify.</doc>
+      <source-position filename="gst/gstpad.h" line="1416"/>
+      <parameters>
+        <parameter name="p">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.c"
+               line="1844">a source #GstPad.</doc>
+        </parameter>
+        <parameter name="f">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.c"
+               line="1845">the #GstPadGetRangeFunction to set.</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="pad_set_iterate_internal_links_function"
+                    c:identifier="gst_pad_set_iterate_internal_links_function"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstpad.c"
+           line="1991">Calls gst_pad_set_iterate_internal_links_function_full() with %NULL
+for the user_data and notify.</doc>
+      <source-position filename="gst/gstpad.h" line="1540"/>
+      <parameters>
+        <parameter name="p">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.c"
+               line="1993">a #GstPad of either direction.</doc>
+        </parameter>
+        <parameter name="f">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.c"
+               line="1994">the #GstPadIterIntLinkFunction to set.</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="pad_set_link_function"
+                    c:identifier="gst_pad_set_link_function"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstpad.c"
+           line="2025">Calls gst_pad_set_link_function_full() with %NULL
+for the user_data and notify.</doc>
+      <source-position filename="gst/gstpad.h" line="1433"/>
+      <parameters>
+        <parameter name="p">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.c"
+               line="2027">a #GstPad.</doc>
+        </parameter>
+        <parameter name="f">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.c"
+               line="2028">the #GstPadLinkFunction to set.</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="pad_set_query_function"
+                    c:identifier="gst_pad_set_query_function"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstpad.c"
+           line="1958">Calls gst_pad_set_query_function_full() with %NULL for the user_data and
+notify.</doc>
+      <source-position filename="gst/gstpad.h" line="1561"/>
+      <parameters>
+        <parameter name="p">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.c"
+               line="1960">a #GstPad of either direction.</doc>
+        </parameter>
+        <parameter name="f">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.c"
+               line="1961">the #GstPadQueryFunction to set.</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="pad_set_unlink_function"
+                    c:identifier="gst_pad_set_unlink_function"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstpad.c"
+           line="2068">Calls gst_pad_set_unlink_function_full() with %NULL
+for the user_data and notify.</doc>
+      <source-position filename="gst/gstpad.h" line="1434"/>
+      <parameters>
+        <parameter name="p">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.c"
+               line="2070">a #GstPad.</doc>
+        </parameter>
+        <parameter name="f">
+          <doc xml:space="preserve"
+               filename="gst/gstpad.c"
+               line="2071">the #GstPadUnlinkFunction to set.</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
     <function name="param_spec_array"
               c:identifier="gst_param_spec_array"
               version="1.14">
-      <doc xml:space="preserve">This function creates a GstArray GParamSpec for use by objects/elements
+      <doc xml:space="preserve"
+           filename="gst/gstparamspecs.c"
+           line="330">This function creates a GstArray GParamSpec for use by objects/elements
 that want to expose properties of GstArray type. This function is
 typically * used in connection with g_object_class_install_property() in a
 GObjects's instance_init function.</doc>
+      <source-position filename="gst/gstparamspecs.h" line="179"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">a newly created parameter specification</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstparamspecs.c"
+             line="343">a newly created parameter specification</doc>
         <type name="GObject.ParamSpec" c:type="GParamSpec*"/>
       </return-value>
       <parameters>
         <parameter name="name" transfer-ownership="none">
-          <doc xml:space="preserve">canonical name of the property specified</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstparamspecs.c"
+               line="332">canonical name of the property specified</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
         <parameter name="nick" transfer-ownership="none">
-          <doc xml:space="preserve">nick name for the property specified</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstparamspecs.c"
+               line="333">nick name for the property specified</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
         <parameter name="blurb" transfer-ownership="none">
-          <doc xml:space="preserve">description of the property specified</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstparamspecs.c"
+               line="334">description of the property specified</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
         <parameter name="element_spec" transfer-ownership="none">
-          <doc xml:space="preserve">GParamSpec of the array</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstparamspecs.c"
+               line="335">GParamSpec of the array</doc>
           <type name="GObject.ParamSpec" c:type="GParamSpec*"/>
         </parameter>
         <parameter name="flags" transfer-ownership="none">
-          <doc xml:space="preserve">flags for the property specified</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstparamspecs.c"
+               line="336">flags for the property specified</doc>
           <type name="GObject.ParamFlags" c:type="GParamFlags"/>
         </parameter>
       </parameters>
     </function>
     <function name="param_spec_fraction"
               c:identifier="gst_param_spec_fraction">
-      <doc xml:space="preserve">This function creates a fraction GParamSpec for use by objects/elements
+      <doc xml:space="preserve"
+           filename="gst/gstparamspecs.c"
+           line="149">This function creates a fraction GParamSpec for use by objects/elements
 that want to expose properties of fraction type. This function is typically
 used in connection with g_object_class_install_property() in a GObjects's
 instance_init function.</doc>
+      <source-position filename="gst/gstparamspecs.h" line="171"/>
       <return-value transfer-ownership="full" nullable="1">
-        <doc xml:space="preserve">a newly created parameter specification</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstparamspecs.c"
+             line="167">a newly created parameter specification</doc>
         <type name="GObject.ParamSpec" c:type="GParamSpec*"/>
       </return-value>
       <parameters>
         <parameter name="name" transfer-ownership="none">
-          <doc xml:space="preserve">canonical name of the property specified</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstparamspecs.c"
+               line="151">canonical name of the property specified</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
         <parameter name="nick" transfer-ownership="none">
-          <doc xml:space="preserve">nick name for the property specified</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstparamspecs.c"
+               line="152">nick name for the property specified</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
         <parameter name="blurb" transfer-ownership="none">
-          <doc xml:space="preserve">description of the property specified</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstparamspecs.c"
+               line="153">description of the property specified</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
         <parameter name="min_num" transfer-ownership="none">
-          <doc xml:space="preserve">minimum value (fraction numerator)</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstparamspecs.c"
+               line="154">minimum value (fraction numerator)</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
         <parameter name="min_denom" transfer-ownership="none">
-          <doc xml:space="preserve">minimum value (fraction denominator)</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstparamspecs.c"
+               line="155">minimum value (fraction denominator)</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
         <parameter name="max_num" transfer-ownership="none">
-          <doc xml:space="preserve">maximum value (fraction numerator)</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstparamspecs.c"
+               line="156">maximum value (fraction numerator)</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
         <parameter name="max_denom" transfer-ownership="none">
-          <doc xml:space="preserve">maximum value (fraction denominator)</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstparamspecs.c"
+               line="157">maximum value (fraction denominator)</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
         <parameter name="default_num" transfer-ownership="none">
-          <doc xml:space="preserve">default value (fraction numerator)</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstparamspecs.c"
+               line="158">default value (fraction numerator)</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
         <parameter name="default_denom" transfer-ownership="none">
-          <doc xml:space="preserve">default value (fraction denominator)</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstparamspecs.c"
+               line="159">default value (fraction denominator)</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
         <parameter name="flags" transfer-ownership="none">
-          <doc xml:space="preserve">flags for the property specified</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstparamspecs.c"
+               line="160">flags for the property specified</doc>
           <type name="GObject.ParamFlags" c:type="GParamFlags"/>
         </parameter>
       </parameters>
     </function>
     <function name="parent_buffer_meta_api_get_type"
               c:identifier="gst_parent_buffer_meta_api_get_type">
+      <attribute name="doc.skip" value="true"/>
+      <source-position filename="gst/gstbuffer.h" line="722"/>
       <return-value transfer-ownership="none">
         <type name="GType" c:type="GType"/>
       </return-value>
@@ -47216,16 +73732,23 @@ instance_init function.</doc>
               c:identifier="gst_parent_buffer_meta_get_info"
               moved-to="ParentBufferMeta.get_info"
               version="1.6">
-      <doc xml:space="preserve">Get the global #GstMetaInfo describing  the #GstParentBufferMeta meta.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstbuffer.c"
+           line="2672">Get the global #GstMetaInfo describing  the #GstParentBufferMeta meta.</doc>
+      <source-position filename="gst/gstbuffer.h" line="739"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">The #GstMetaInfo</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.c"
+             line="2677">The #GstMetaInfo</doc>
         <type name="MetaInfo" c:type="const GstMetaInfo*"/>
       </return-value>
     </function>
     <function name="parse_bin_from_description"
               c:identifier="gst_parse_bin_from_description"
               throws="1">
-      <doc xml:space="preserve">This is a convenience wrapper around gst_parse_launch() to create a
+      <doc xml:space="preserve"
+           filename="gst/gstutils.c"
+           line="3393">This is a convenience wrapper around gst_parse_launch() to create a
 #GstBin from a gst-launch-style pipeline description. See
 gst_parse_launch() and the gst-launch man page for details about the
 syntax. Ghost pads on the bin for unlinked source or sink pads
@@ -47234,18 +73757,25 @@ one ghost pad for each direction will be created; if you expect
 multiple unlinked source pads or multiple unlinked sink pads
 and want them all ghosted, you will have to create the ghost pads
 yourself).</doc>
+      <source-position filename="gst/gstutils.h" line="1145"/>
       <return-value transfer-ownership="none" nullable="1">
-        <doc xml:space="preserve">a
+        <doc xml:space="preserve"
+             filename="gst/gstutils.c"
+             line="3410">a
   newly-created bin, or %NULL if an error occurred.</doc>
         <type name="Bin" c:type="GstElement*"/>
       </return-value>
       <parameters>
         <parameter name="bin_description" transfer-ownership="none">
-          <doc xml:space="preserve">command line describing the bin</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="3395">command line describing the bin</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
         <parameter name="ghost_unlinked_pads" transfer-ownership="none">
-          <doc xml:space="preserve">whether to automatically create ghost pads
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="3396">whether to automatically create ghost pads
     for unlinked source or sink pads within the bin</doc>
           <type name="gboolean" c:type="gboolean"/>
         </parameter>
@@ -47254,7 +73784,9 @@ yourself).</doc>
     <function name="parse_bin_from_description_full"
               c:identifier="gst_parse_bin_from_description_full"
               throws="1">
-      <doc xml:space="preserve">This is a convenience wrapper around gst_parse_launch() to create a
+      <doc xml:space="preserve"
+           filename="gst/gstutils.c"
+           line="3421">This is a convenience wrapper around gst_parse_launch() to create a
 #GstBin from a gst-launch-style pipeline description. See
 gst_parse_launch() and the gst-launch man page for details about the
 syntax. Ghost pads on the bin for unlinked source or sink pads
@@ -47263,8 +73795,11 @@ one ghost pad for each direction will be created; if you expect
 multiple unlinked source pads or multiple unlinked sink pads
 and want them all ghosted, you will have to create the ghost pads
 yourself).</doc>
+      <source-position filename="gst/gstutils.h" line="1149"/>
       <return-value transfer-ownership="none" nullable="1">
-        <doc xml:space="preserve">a newly-created
+        <doc xml:space="preserve"
+             filename="gst/gstutils.c"
+             line="3441">a newly-created
   element, which is guaranteed to be a bin unless
   GST_FLAG_NO_SINGLE_ELEMENT_BINS was passed, or %NULL if an error
   occurred.</doc>
@@ -47272,11 +73807,15 @@ yourself).</doc>
       </return-value>
       <parameters>
         <parameter name="bin_description" transfer-ownership="none">
-          <doc xml:space="preserve">command line describing the bin</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="3423">command line describing the bin</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
         <parameter name="ghost_unlinked_pads" transfer-ownership="none">
-          <doc xml:space="preserve">whether to automatically create ghost pads
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="3424">whether to automatically create ghost pads
     for unlinked source or sink pads within the bin</doc>
           <type name="gboolean" c:type="gboolean"/>
         </parameter>
@@ -47284,12 +73823,16 @@ yourself).</doc>
                    transfer-ownership="none"
                    nullable="1"
                    allow-none="1">
-          <doc xml:space="preserve">a parse context allocated with
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="3426">a parse context allocated with
     gst_parse_context_new(), or %NULL</doc>
           <type name="ParseContext" c:type="GstParseContext*"/>
         </parameter>
         <parameter name="flags" transfer-ownership="none">
-          <doc xml:space="preserve">parsing options, or #GST_PARSE_FLAG_NONE</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="3428">parsing options, or #GST_PARSE_FLAG_NONE</doc>
           <type name="ParseFlags" c:type="GstParseFlags"/>
         </parameter>
       </parameters>
@@ -47297,19 +73840,31 @@ yourself).</doc>
     <function name="parse_error_quark"
               c:identifier="gst_parse_error_quark"
               moved-to="ParseError.quark">
-      <doc xml:space="preserve">Get the error quark used by the parsing subsystem.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstparse.c"
+           line="52">Get the error quark used by the parsing subsystem.</doc>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">the quark of the parse errors.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstparse.c"
+             line="57">the quark of the parse errors.</doc>
         <type name="GLib.Quark" c:type="GQuark"/>
       </return-value>
     </function>
     <function name="parse_launch" c:identifier="gst_parse_launch" throws="1">
-      <doc xml:space="preserve">Create a new pipeline based on command line syntax.
+      <doc xml:space="preserve"
+           filename="gst/gstparse.c"
+           line="284">Create a new pipeline based on command line syntax.
 Please note that you might get a return value that is not %NULL even though
 the @error is set. In this case there was a recoverable parsing error and you
-can try to play the pipeline.</doc>
+can try to play the pipeline.
+
+To create a sub-pipeline (bin) for embedding into an existing pipeline
+use gst_parse_bin_from_description().</doc>
+      <source-position filename="gst/gstparse.h" line="118"/>
       <return-value transfer-ownership="none" nullable="1">
-        <doc xml:space="preserve">a new element on success, %NULL on
+        <doc xml:space="preserve"
+             filename="gst/gstparse.c"
+             line="297">a new element on success, %NULL on
   failure. If more than one toplevel element is specified by the
   @pipeline_description, all elements are put into a #GstPipeline, which
   than is returned.</doc>
@@ -47317,7 +73872,9 @@ can try to play the pipeline.</doc>
       </return-value>
       <parameters>
         <parameter name="pipeline_description" transfer-ownership="none">
-          <doc xml:space="preserve">the command line describing the pipeline</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstparse.c"
+               line="286">the command line describing the pipeline</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
       </parameters>
@@ -47325,12 +73882,20 @@ can try to play the pipeline.</doc>
     <function name="parse_launch_full"
               c:identifier="gst_parse_launch_full"
               throws="1">
-      <doc xml:space="preserve">Create a new pipeline based on command line syntax.
+      <doc xml:space="preserve"
+           filename="gst/gstparse.c"
+           line="309">Create a new pipeline based on command line syntax.
 Please note that you might get a return value that is not %NULL even though
 the @error is set. In this case there was a recoverable parsing error and you
-can try to play the pipeline.</doc>
+can try to play the pipeline.
+
+To create a sub-pipeline (bin) for embedding into an existing pipeline
+use gst_parse_bin_from_description_full().</doc>
+      <source-position filename="gst/gstparse.h" line="124"/>
       <return-value transfer-ownership="none" nullable="1">
-        <doc xml:space="preserve">a new element on success, %NULL on
+        <doc xml:space="preserve"
+             filename="gst/gstparse.c"
+             line="325">a new element on success, %NULL on
    failure. If more than one toplevel element is specified by the
    @pipeline_description, all elements are put into a #GstPipeline, which
    then is returned (unless the GST_PARSE_FLAG_PLACE_IN_BIN flag is set, in
@@ -47339,35 +73904,48 @@ can try to play the pipeline.</doc>
       </return-value>
       <parameters>
         <parameter name="pipeline_description" transfer-ownership="none">
-          <doc xml:space="preserve">the command line describing the pipeline</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstparse.c"
+               line="311">the command line describing the pipeline</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
         <parameter name="context"
                    transfer-ownership="none"
                    nullable="1"
                    allow-none="1">
-          <doc xml:space="preserve">a parse context allocated with
+          <doc xml:space="preserve"
+               filename="gst/gstparse.c"
+               line="312">a parse context allocated with
      gst_parse_context_new(), or %NULL</doc>
           <type name="ParseContext" c:type="GstParseContext*"/>
         </parameter>
         <parameter name="flags" transfer-ownership="none">
-          <doc xml:space="preserve">parsing options, or #GST_PARSE_FLAG_NONE</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstparse.c"
+               line="314">parsing options, or #GST_PARSE_FLAG_NONE</doc>
           <type name="ParseFlags" c:type="GstParseFlags"/>
         </parameter>
       </parameters>
     </function>
     <function name="parse_launchv" c:identifier="gst_parse_launchv" throws="1">
-      <doc xml:space="preserve">Create a new element based on command line syntax.
+      <doc xml:space="preserve"
+           filename="gst/gstparse.c"
+           line="210">Create a new element based on command line syntax.
 @error will contain an error message if an erroneous pipeline is specified.
 An error does not mean that the pipeline could not be constructed.</doc>
+      <source-position filename="gst/gstparse.h" line="121"/>
       <return-value transfer-ownership="none" nullable="1">
-        <doc xml:space="preserve">a new element on success and %NULL
+        <doc xml:space="preserve"
+             filename="gst/gstparse.c"
+             line="219">a new element on success and %NULL
 on failure.</doc>
         <type name="Element" c:type="GstElement*"/>
       </return-value>
       <parameters>
         <parameter name="argv" transfer-ownership="none">
-          <doc xml:space="preserve">null-terminated array of arguments</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstparse.c"
+               line="212">null-terminated array of arguments</doc>
           <array c:type="const gchar**">
             <type name="utf8" c:type="gchar*"/>
           </array>
@@ -47377,11 +73955,16 @@ on failure.</doc>
     <function name="parse_launchv_full"
               c:identifier="gst_parse_launchv_full"
               throws="1">
-      <doc xml:space="preserve">Create a new element based on command line syntax.
+      <doc xml:space="preserve"
+           filename="gst/gstparse.c"
+           line="228">Create a new element based on command line syntax.
 @error will contain an error message if an erroneous pipeline is specified.
 An error does not mean that the pipeline could not be constructed.</doc>
+      <source-position filename="gst/gstparse.h" line="129"/>
       <return-value transfer-ownership="none" nullable="1">
-        <doc xml:space="preserve">a new element on success; on
+        <doc xml:space="preserve"
+             filename="gst/gstparse.c"
+             line="240">a new element on success; on
   failure, either %NULL or a partially-constructed bin or element will be
   returned and @error will be set (unless you passed
   #GST_PARSE_FLAG_FATAL_ERRORS in @flags, then %NULL will always be returned
@@ -47390,7 +73973,9 @@ An error does not mean that the pipeline could not be constructed.</doc>
       </return-value>
       <parameters>
         <parameter name="argv" transfer-ownership="none">
-          <doc xml:space="preserve">null-terminated array of arguments</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstparse.c"
+               line="230">null-terminated array of arguments</doc>
           <array c:type="const gchar**">
             <type name="utf8" c:type="gchar*"/>
           </array>
@@ -47399,12 +73984,16 @@ An error does not mean that the pipeline could not be constructed.</doc>
                    transfer-ownership="none"
                    nullable="1"
                    allow-none="1">
-          <doc xml:space="preserve">a parse context allocated with
+          <doc xml:space="preserve"
+               filename="gst/gstparse.c"
+               line="231">a parse context allocated with
     gst_parse_context_new(), or %NULL</doc>
           <type name="ParseContext" c:type="GstParseContext*"/>
         </parameter>
         <parameter name="flags" transfer-ownership="none">
-          <doc xml:space="preserve">parsing options, or #GST_PARSE_FLAG_NONE</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstparse.c"
+               line="233">parsing options, or #GST_PARSE_FLAG_NONE</doc>
           <type name="ParseFlags" c:type="GstParseFlags"/>
         </parameter>
       </parameters>
@@ -47412,29 +74001,76 @@ An error does not mean that the pipeline could not be constructed.</doc>
     <function name="plugin_error_quark"
               c:identifier="gst_plugin_error_quark"
               moved-to="PluginError.quark">
-      <doc xml:space="preserve">Get the error quark.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstplugin.h"
+           line="44">Get the error quark.</doc>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">The error quark used in GError messages</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstplugin.h"
+             line="49">The error quark used in GError messages</doc>
         <type name="GLib.Quark" c:type="GQuark"/>
       </return-value>
     </function>
+    <function-macro name="plugin_feature_get_name"
+                    c:identifier="gst_plugin_feature_get_name"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstpluginfeature.h"
+           line="71">Returns the name of @feature.
+For a nameless plugin feature, this returns %NULL.</doc>
+      <source-position filename="gst/gstpluginfeature.h" line="81"/>
+      <parameters>
+        <parameter name="feature">
+          <doc xml:space="preserve"
+               filename="gst/gstpluginfeature.h"
+               line="73">a #GstPluginFeature to get the name of @feature.</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="plugin_feature_set_name"
+                    c:identifier="gst_plugin_feature_set_name"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstpluginfeature.h"
+           line="83">Sets the name of the plugin feature, getting rid of the old name if there was one.</doc>
+      <source-position filename="gst/gstpluginfeature.h" line="90"/>
+      <parameters>
+        <parameter name="feature">
+          <doc xml:space="preserve"
+               filename="gst/gstpluginfeature.h"
+               line="85">a #GstPluginFeature to set the name of.</doc>
+        </parameter>
+        <parameter name="name">
+          <doc xml:space="preserve"
+               filename="gst/gstpluginfeature.h"
+               line="86">the new name</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
     <function name="poll_new"
               c:identifier="gst_poll_new"
               moved-to="Poll.new"
               introspectable="0">
-      <doc xml:space="preserve">Create a new file descriptor set. If @controllable, it
+      <doc xml:space="preserve"
+           filename="gst/gstpoll.c"
+           line="662">Create a new file descriptor set. If @controllable, it
 is possible to restart or flush a call to gst_poll_wait() with
 gst_poll_restart() and gst_poll_set_flushing() respectively.
 
 Free-function: gst_poll_free</doc>
+      <source-position filename="gst/gstpoll.h" line="65"/>
       <return-value transfer-ownership="full" nullable="1">
-        <doc xml:space="preserve">a new #GstPoll, or %NULL in
+        <doc xml:space="preserve"
+             filename="gst/gstpoll.c"
+             line="672">a new #GstPoll, or %NULL in
     case of an error.  Free with gst_poll_free().</doc>
         <type name="Poll" c:type="GstPoll*"/>
       </return-value>
       <parameters>
         <parameter name="controllable" transfer-ownership="none">
-          <doc xml:space="preserve">whether it should be possible to control a wait.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstpoll.c"
+               line="664">whether it should be possible to control a wait.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </parameter>
       </parameters>
@@ -47443,15 +74079,20 @@ Free-function: gst_poll_free</doc>
               c:identifier="gst_poll_new_timer"
               moved-to="Poll.new_timer"
               introspectable="0">
-      <doc xml:space="preserve">Create a new poll object that can be used for scheduling cancellable
+      <doc xml:space="preserve"
+           filename="gst/gstpoll.c"
+           line="731">Create a new poll object that can be used for scheduling cancellable
 timeouts.
 
 A timeout is performed with gst_poll_wait(). Multiple timeouts can be
 performed from different threads.
 
 Free-function: gst_poll_free</doc>
+      <source-position filename="gst/gstpoll.h" line="68"/>
       <return-value transfer-ownership="full" nullable="1">
-        <doc xml:space="preserve">a new #GstPoll, or %NULL in
+        <doc xml:space="preserve"
+             filename="gst/gstpoll.c"
+             line="742">a new #GstPoll, or %NULL in
     case of an error.  Free with gst_poll_free().</doc>
         <type name="Poll" c:type="GstPoll*"/>
       </return-value>
@@ -47459,10 +74100,15 @@ Free-function: gst_poll_free</doc>
     <function name="preset_get_app_dir"
               c:identifier="gst_preset_get_app_dir"
               moved-to="Preset.get_app_dir">
-      <doc xml:space="preserve">Gets the directory for application specific presets if set by the
+      <doc xml:space="preserve"
+           filename="gst/gstpreset.c"
+           line="1234">Gets the directory for application specific presets if set by the
 application.</doc>
+      <source-position filename="gst/gstpreset.h" line="111"/>
       <return-value transfer-ownership="none" nullable="1">
-        <doc xml:space="preserve">the directory or %NULL, don't free or modify
+        <doc xml:space="preserve"
+             filename="gst/gstpreset.c"
+             line="1240">the directory or %NULL, don't free or modify
 the string</doc>
         <type name="filename" c:type="const gchar*"/>
       </return-value>
@@ -47470,16 +74116,23 @@ the string</doc>
     <function name="preset_set_app_dir"
               c:identifier="gst_preset_set_app_dir"
               moved-to="Preset.set_app_dir">
-      <doc xml:space="preserve">Sets an extra directory as an absolute path that should be considered when
+      <doc xml:space="preserve"
+           filename="gst/gstpreset.c"
+           line="1212">Sets an extra directory as an absolute path that should be considered when
 looking for presets. Any presets in the application dir will shadow the
 system presets.</doc>
+      <source-position filename="gst/gstpreset.h" line="108"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE for success, %FALSE if the dir already has been set</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstpreset.c"
+             line="1220">%TRUE for success, %FALSE if the dir already has been set</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="app_dir" transfer-ownership="none">
-          <doc xml:space="preserve">the application specific preset dir</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstpreset.c"
+               line="1214">the application specific preset dir</doc>
           <type name="filename" c:type="const gchar*"/>
         </parameter>
       </parameters>
@@ -47488,7 +74141,9 @@ system presets.</doc>
               c:identifier="gst_print"
               version="1.12"
               introspectable="0">
-      <doc xml:space="preserve">Outputs a formatted message via the GLib print handler. The default print
+      <doc xml:space="preserve"
+           filename="gst/gstinfo.c"
+           line="2592">Outputs a formatted message via the GLib print handler. The default print
 handler simply outputs the message to stdout.
 
 This function will not append a new-line character at the end, unlike
@@ -47501,16 +74156,21 @@ printf specifiers that are supported by GStreamer's debug logging system,
 such as #GST_PTR_FORMAT and #GST_SEGMENT_FORMAT.
 
 This function is primarily for printing debug output.</doc>
+      <source-position filename="gst/gstinfo.h" line="502"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="format" transfer-ownership="none">
-          <doc xml:space="preserve">a printf style format string</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.c"
+               line="2594">a printf style format string</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
         <parameter name="..." transfer-ownership="none">
-          <doc xml:space="preserve">the printf arguments for @format</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.c"
+               line="2595">the printf arguments for @format</doc>
           <varargs/>
         </parameter>
       </parameters>
@@ -47519,7 +74179,9 @@ This function is primarily for printing debug output.</doc>
               c:identifier="gst_printerr"
               version="1.12"
               introspectable="0">
-      <doc xml:space="preserve">Outputs a formatted message via the GLib error message handler. The default
+      <doc xml:space="preserve"
+           filename="gst/gstinfo.c"
+           line="2678">Outputs a formatted message via the GLib error message handler. The default
 handler simply outputs the message to stderr.
 
 This function will not append a new-line character at the end, unlike
@@ -47532,16 +74194,21 @@ printf specifiers that are supported by GStreamer's debug logging system,
 such as #GST_PTR_FORMAT and #GST_SEGMENT_FORMAT.
 
 This function is primarily for printing debug output.</doc>
+      <source-position filename="gst/gstinfo.h" line="508"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="format" transfer-ownership="none">
-          <doc xml:space="preserve">a printf style format string</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.c"
+               line="2680">a printf style format string</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
         <parameter name="..." transfer-ownership="none">
-          <doc xml:space="preserve">the printf arguments for @format</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.c"
+               line="2681">the printf arguments for @format</doc>
           <varargs/>
         </parameter>
       </parameters>
@@ -47550,7 +74217,9 @@ This function is primarily for printing debug output.</doc>
               c:identifier="gst_printerrln"
               version="1.12"
               introspectable="0">
-      <doc xml:space="preserve">Outputs a formatted message via the GLib error message handler. The default
+      <doc xml:space="preserve"
+           filename="gst/gstinfo.c"
+           line="2721">Outputs a formatted message via the GLib error message handler. The default
 handler simply outputs the message to stderr.
 
 This function will append a new-line character at the end, unlike
@@ -47563,16 +74232,21 @@ printf specifiers that are supported by GStreamer's debug logging system,
 such as #GST_PTR_FORMAT and #GST_SEGMENT_FORMAT.
 
 This function is primarily for printing debug output.</doc>
+      <source-position filename="gst/gstinfo.h" line="511"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="format" transfer-ownership="none">
-          <doc xml:space="preserve">a printf style format string</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.c"
+               line="2723">a printf style format string</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
         <parameter name="..." transfer-ownership="none">
-          <doc xml:space="preserve">the printf arguments for @format</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.c"
+               line="2724">the printf arguments for @format</doc>
           <varargs/>
         </parameter>
       </parameters>
@@ -47581,7 +74255,9 @@ This function is primarily for printing debug output.</doc>
               c:identifier="gst_println"
               version="1.12"
               introspectable="0">
-      <doc xml:space="preserve">Outputs a formatted message via the GLib print handler. The default print
+      <doc xml:space="preserve"
+           filename="gst/gstinfo.c"
+           line="2635">Outputs a formatted message via the GLib print handler. The default print
 handler simply outputs the message to stdout.
 
 This function will append a new-line character at the end, unlike
@@ -47594,16 +74270,21 @@ printf specifiers that are supported by GStreamer's debug logging system,
 such as #GST_PTR_FORMAT and #GST_SEGMENT_FORMAT.
 
 This function is primarily for printing debug output.</doc>
+      <source-position filename="gst/gstinfo.h" line="505"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="format" transfer-ownership="none">
-          <doc xml:space="preserve">a printf style format string</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.c"
+               line="2637">a printf style format string</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
         <parameter name="..." transfer-ownership="none">
-          <doc xml:space="preserve">the printf arguments for @format</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstinfo.c"
+               line="2638">the printf arguments for @format</doc>
           <varargs/>
         </parameter>
       </parameters>
@@ -47611,10 +74292,15 @@ This function is primarily for printing debug output.</doc>
     <function name="protection_filter_systems_by_available_decryptors"
               c:identifier="gst_protection_filter_systems_by_available_decryptors"
               version="1.14">
-      <doc xml:space="preserve">Iterates the supplied list of UUIDs and checks the GstRegistry for
+      <doc xml:space="preserve"
+           filename="gst/gstprotection.c"
+           line="197">Iterates the supplied list of UUIDs and checks the GstRegistry for
 all the decryptors supporting one of the supplied UUIDs.</doc>
+      <source-position filename="gst/gstprotection.h" line="96"/>
       <return-value transfer-ownership="full" nullable="1">
-        <doc xml:space="preserve">
+        <doc xml:space="preserve"
+             filename="gst/gstprotection.c"
+             line="206">
 A null terminated array containing all
 the @system_identifiers supported by the set of available decryptors, or
 %NULL if no matches were found.</doc>
@@ -47624,7 +74310,9 @@ the @system_identifiers supported by the set of available decryptors, or
       </return-value>
       <parameters>
         <parameter name="system_identifiers" transfer-ownership="none">
-          <doc xml:space="preserve">
+          <doc xml:space="preserve"
+               filename="gst/gstprotection.c"
+               line="199">
 A null terminated array of strings that contains the UUID values of each
 protection system that is to be checked.</doc>
           <array c:type="const gchar**">
@@ -47635,6 +74323,8 @@ protection system that is to be checked.</doc>
     </function>
     <function name="protection_meta_api_get_type"
               c:identifier="gst_protection_meta_api_get_type">
+      <attribute name="doc.skip" value="true"/>
+      <source-position filename="gst/gstprotection.h" line="77"/>
       <return-value transfer-ownership="none">
         <type name="GType" c:type="GType"/>
       </return-value>
@@ -47642,6 +74332,7 @@ protection system that is to be checked.</doc>
     <function name="protection_meta_get_info"
               c:identifier="gst_protection_meta_get_info"
               moved-to="ProtectionMeta.get_info">
+      <source-position filename="gst/gstprotection.h" line="87"/>
       <return-value transfer-ownership="none">
         <type name="MetaInfo" c:type="const GstMetaInfo*"/>
       </return-value>
@@ -47649,11 +74340,16 @@ protection system that is to be checked.</doc>
     <function name="protection_select_system"
               c:identifier="gst_protection_select_system"
               version="1.6">
-      <doc xml:space="preserve">Iterates the supplied list of UUIDs and checks the GstRegistry for
+      <doc xml:space="preserve"
+           filename="gst/gstprotection.c"
+           line="159">Iterates the supplied list of UUIDs and checks the GstRegistry for
 an element that supports one of the supplied UUIDs. If more than one
 element matches, the system ID of the highest ranked element is selected.</doc>
+      <source-position filename="gst/gstprotection.h" line="93"/>
       <return-value transfer-ownership="none" nullable="1">
-        <doc xml:space="preserve">One of the strings from
+        <doc xml:space="preserve"
+             filename="gst/gstprotection.c"
+             line="169">One of the strings from
 @system_identifiers that indicates the highest ranked element that
 implements the protection system indicated by that system ID, or %NULL if no
 element has been found.</doc>
@@ -47661,7 +74357,9 @@ element has been found.</doc>
       </return-value>
       <parameters>
         <parameter name="system_identifiers" transfer-ownership="none">
-          <doc xml:space="preserve">A null terminated array of strings
+          <doc xml:space="preserve"
+               filename="gst/gstprotection.c"
+               line="161">A null terminated array of strings
 that contains the UUID values of each protection system that is to be
 checked.</doc>
           <array c:type="const gchar**">
@@ -47670,17 +74368,98 @@ checked.</doc>
         </parameter>
       </parameters>
     </function>
+    <function-macro name="query_is_writable"
+                    c:identifier="gst_query_is_writable"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstquery.h"
+           line="297">Tests if you can safely write data into a query's structure.</doc>
+      <source-position filename="gst/gstquery.h" line="302"/>
+      <parameters>
+        <parameter name="q">
+          <doc xml:space="preserve"
+               filename="gst/gstquery.h"
+               line="299">a #GstQuery</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="query_make_writable"
+                    c:identifier="gst_query_make_writable"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstquery.h"
+           line="304">Makes a writable query from the given query.</doc>
+      <source-position filename="gst/gstquery.h" line="311"/>
+      <parameters>
+        <parameter name="q">
+          <doc xml:space="preserve"
+               filename="gst/gstquery.h"
+               line="306">a #GstQuery to make writable</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function name="query_replace"
+              c:identifier="gst_query_replace"
+              moved-to="Query.replace"
+              introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstquery.h"
+           line="313">Modifies a pointer to a #GstQuery to point to a different #GstQuery. The
+modification is done atomically (so this is useful for ensuring thread safety
+in some cases), and the reference counts are updated appropriately (the old
+query is unreffed, the new one is reffed).
+
+Either @new_query or the #GstQuery pointed to by @old_query may be %NULL.</doc>
+      <source-position filename="gst/gstquery.h" line="329"/>
+      <return-value transfer-ownership="none">
+        <doc xml:space="preserve"
+             filename="gst/gstquery.h"
+             line="327">%TRUE if @new_query was different from @old_query</doc>
+        <type name="gboolean" c:type="gboolean"/>
+      </return-value>
+      <parameters>
+        <parameter name="old_query"
+                   direction="inout"
+                   caller-allocates="0"
+                   transfer-ownership="full"
+                   nullable="1"
+                   allow-none="1">
+          <doc xml:space="preserve"
+               filename="gst/gstquery.h"
+               line="315">pointer to a pointer to a
+    #GstQuery to be replaced.</doc>
+          <type name="Query" c:type="GstQuery**"/>
+        </parameter>
+        <parameter name="new_query"
+                   transfer-ownership="none"
+                   nullable="1"
+                   allow-none="1">
+          <doc xml:space="preserve"
+               filename="gst/gstquery.h"
+               line="317">pointer to a #GstQuery that will
+    replace the query pointed to by @old_query.</doc>
+          <type name="Query" c:type="GstQuery*"/>
+        </parameter>
+      </parameters>
+    </function>
     <function name="query_type_get_flags"
               c:identifier="gst_query_type_get_flags"
               moved-to="QueryType.get_flags">
-      <doc xml:space="preserve">Gets the #GstQueryTypeFlags associated with @type.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstquery.c"
+           line="169">Gets the #GstQueryTypeFlags associated with @type.</doc>
+      <source-position filename="gst/gstquery.h" line="225"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">a #GstQueryTypeFlags.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="175">a #GstQueryTypeFlags.</doc>
         <type name="QueryTypeFlags" c:type="GstQueryTypeFlags"/>
       </return-value>
       <parameters>
         <parameter name="type" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstQueryType</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstquery.c"
+               line="171">a #GstQueryType</doc>
           <type name="QueryType" c:type="GstQueryType"/>
         </parameter>
       </parameters>
@@ -47688,14 +74467,21 @@ checked.</doc>
     <function name="query_type_get_name"
               c:identifier="gst_query_type_get_name"
               moved-to="QueryType.get_name">
-      <doc xml:space="preserve">Get a printable name for the given query type. Do not modify or free.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstquery.c"
+           line="129">Get a printable name for the given query type. Do not modify or free.</doc>
+      <source-position filename="gst/gstquery.h" line="218"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">a reference to the static name of the query.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="135">a reference to the static name of the query.</doc>
         <type name="utf8" c:type="const gchar*"/>
       </return-value>
       <parameters>
         <parameter name="type" transfer-ownership="none">
-          <doc xml:space="preserve">the query type</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstquery.c"
+               line="131">the query type</doc>
           <type name="QueryType" c:type="GstQueryType"/>
         </parameter>
       </parameters>
@@ -47703,20 +74489,29 @@ checked.</doc>
     <function name="query_type_to_quark"
               c:identifier="gst_query_type_to_quark"
               moved-to="QueryType.to_quark">
-      <doc xml:space="preserve">Get the unique quark for the given query type.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstquery.c"
+           line="149">Get the unique quark for the given query type.</doc>
+      <source-position filename="gst/gstquery.h" line="221"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">the quark associated with the query type</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstquery.c"
+             line="155">the quark associated with the query type</doc>
         <type name="GLib.Quark" c:type="GQuark"/>
       </return-value>
       <parameters>
         <parameter name="type" transfer-ownership="none">
-          <doc xml:space="preserve">the query type</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstquery.c"
+               line="151">the query type</doc>
           <type name="QueryType" c:type="GstQueryType"/>
         </parameter>
       </parameters>
     </function>
     <function name="reference_timestamp_meta_api_get_type"
               c:identifier="gst_reference_timestamp_meta_api_get_type">
+      <attribute name="doc.skip" value="true"/>
+      <source-position filename="gst/gstbuffer.h" line="780"/>
       <return-value transfer-ownership="none">
         <type name="GType" c:type="GType"/>
       </return-value>
@@ -47725,42 +74520,105 @@ checked.</doc>
               c:identifier="gst_reference_timestamp_meta_get_info"
               moved-to="ReferenceTimestampMeta.get_info"
               version="1.14">
-      <doc xml:space="preserve">Get the global #GstMetaInfo describing  the #GstReferenceTimestampMeta meta.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstbuffer.c"
+           line="2844">Get the global #GstMetaInfo describing  the #GstReferenceTimestampMeta meta.</doc>
+      <source-position filename="gst/gstbuffer.h" line="784"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">The #GstMetaInfo</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstbuffer.c"
+             line="2849">The #GstMetaInfo</doc>
         <type name="MetaInfo" c:type="const GstMetaInfo*"/>
       </return-value>
     </function>
     <function name="resource_error_quark"
               c:identifier="gst_resource_error_quark"
               moved-to="ResourceError.quark">
+      <attribute name="doc.skip" value="true"/>
       <return-value transfer-ownership="none">
         <type name="GLib.Quark" c:type="GQuark"/>
       </return-value>
     </function>
+    <function-macro name="sample_is_writable"
+                    c:identifier="gst_sample_is_writable"
+                    version="1.16"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstsample.h"
+           line="121">Tests if you can safely set the buffer and / or buffer list of @sample.</doc>
+      <source-position filename="gst/gstsample.h" line="129"/>
+      <parameters>
+        <parameter name="sample">
+          <doc xml:space="preserve"
+               filename="gst/gstsample.h"
+               line="123">A #GstSample</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="sample_make_writable"
+                    c:identifier="gst_sample_make_writable"
+                    version="1.16"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstsample.h"
+           line="131">Returns a writable copy of @sample. If the source sample is
+already writable, this will simply return the same sample.
+
+Use this function to ensure that a sample can be safely modified before
+making changes to it, for example before calling gst_sample_set_buffer()
+
+If the reference count of the source sample @sample is exactly one, the caller
+is the sole owner and this function will return the sample object unchanged.
+
+If there is more than one reference on the object, a copy will be made using
+gst_sample_copy(). The passed-in @sample will be unreffed in that case, and the
+caller will now own a reference to the new returned sample object.
+
+In short, this function unrefs the sample in the argument and refs the sample
+that it returns. Don't access the argument after calling this function unless
+you have an additional reference to it.</doc>
+      <source-position filename="gst/gstsample.h" line="157"/>
+      <parameters>
+        <parameter name="sample">
+          <doc xml:space="preserve"
+               filename="gst/gstsample.h"
+               line="133">A #GstSample</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
     <function name="segtrap_is_enabled" c:identifier="gst_segtrap_is_enabled">
-      <doc xml:space="preserve">Some functions in the GStreamer core might install a custom SIGSEGV handler
+      <doc xml:space="preserve"
+           filename="gst/gst.c"
+           line="1291">Some functions in the GStreamer core might install a custom SIGSEGV handler
 to better catch and report errors to the application. Currently this feature
 is enabled by default when loading plugins.
 
 Applications might want to disable this behaviour with the
 gst_segtrap_set_enabled() function. This is typically done if the application
 wants to install its own handler without GStreamer interfering.</doc>
+      <source-position filename="gst/gst.h" line="122"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE if GStreamer is allowed to install a custom SIGSEGV handler.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gst.c"
+             line="1302">%TRUE if GStreamer is allowed to install a custom SIGSEGV handler.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
     </function>
     <function name="segtrap_set_enabled"
               c:identifier="gst_segtrap_set_enabled">
-      <doc xml:space="preserve">Applications might want to disable/enable the SIGSEGV handling of
+      <doc xml:space="preserve"
+           filename="gst/gst.c"
+           line="1311">Applications might want to disable/enable the SIGSEGV handling of
 the GStreamer core. See gst_segtrap_is_enabled() for more information.</doc>
+      <source-position filename="gst/gst.h" line="125"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="enabled" transfer-ownership="none">
-          <doc xml:space="preserve">whether a custom SIGSEGV handler should be installed.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gst.c"
+               line="1313">whether a custom SIGSEGV handler should be installed.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </parameter>
       </parameters>
@@ -47769,27 +74627,38 @@ the GStreamer core. See gst_segtrap_is_enabled() for more information.</doc>
               c:identifier="gst_state_change_get_name"
               moved-to="StateChange.get_name"
               version="1.14">
-      <doc xml:space="preserve">Gets a string representing the given state transition.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstutils.c"
+           line="1331">Gets a string representing the given state transition.</doc>
+      <source-position filename="gst/gstutils.h" line="996"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">a string with the name of the state
+        <doc xml:space="preserve"
+             filename="gst/gstutils.c"
+             line="1337">a string with the name of the state
    result.</doc>
         <type name="utf8" c:type="const gchar*"/>
       </return-value>
       <parameters>
         <parameter name="transition" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstStateChange to get the name of.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="1333">a #GstStateChange to get the name of.</doc>
           <type name="StateChange" c:type="GstStateChange"/>
         </parameter>
       </parameters>
     </function>
     <function name="static_caps_get_type"
               c:identifier="gst_static_caps_get_type">
+      <attribute name="doc.skip" value="true"/>
+      <source-position filename="gst/gstcaps.h" line="432"/>
       <return-value transfer-ownership="none">
         <type name="GType" c:type="GType"/>
       </return-value>
     </function>
     <function name="static_pad_template_get_type"
               c:identifier="gst_static_pad_template_get_type">
+      <attribute name="doc.skip" value="true"/>
+      <source-position filename="gst/gstpadtemplate.h" line="208"/>
       <return-value transfer-ownership="none">
         <type name="GType" c:type="GType"/>
       </return-value>
@@ -47797,6 +74666,7 @@ the GStreamer core. See gst_segtrap_is_enabled() for more information.</doc>
     <function name="stream_error_quark"
               c:identifier="gst_stream_error_quark"
               moved-to="StreamError.quark">
+      <attribute name="doc.skip" value="true"/>
       <return-value transfer-ownership="none">
         <type name="GLib.Quark" c:type="GQuark"/>
       </return-value>
@@ -47805,127 +74675,190 @@ the GStreamer core. See gst_segtrap_is_enabled() for more information.</doc>
               c:identifier="gst_stream_type_get_name"
               moved-to="StreamType.get_name"
               version="1.10">
-      <doc xml:space="preserve">Get a descriptive string for a given #GstStreamType</doc>
+      <doc xml:space="preserve"
+           filename="gst/gststreams.c"
+           line="538">Get a descriptive string for a given #GstStreamType</doc>
+      <source-position filename="gst/gststreams.h" line="153"/>
       <return-value transfer-ownership="none" nullable="1">
-        <doc xml:space="preserve">A string describing the stream type</doc>
+        <doc xml:space="preserve"
+             filename="gst/gststreams.c"
+             line="544">A string describing the stream type</doc>
         <type name="utf8" c:type="const gchar*"/>
       </return-value>
       <parameters>
         <parameter name="stype" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstStreamType</doc>
+          <doc xml:space="preserve"
+               filename="gst/gststreams.c"
+               line="540">a #GstStreamType</doc>
           <type name="StreamType" c:type="GstStreamType"/>
         </parameter>
       </parameters>
     </function>
-    <function name="structure_from_string"
-              c:identifier="gst_structure_from_string"
-              moved-to="Structure.from_string">
-      <doc xml:space="preserve">Creates a #GstStructure from a string representation.
-If end is not %NULL, a pointer to the place inside the given string
-where parsing ended will be returned.
-
-Free-function: gst_structure_free</doc>
-      <return-value transfer-ownership="full" nullable="1">
-        <doc xml:space="preserve">a new #GstStructure or %NULL
-    when the string could not be parsed. Free with
-    gst_structure_free() after use.</doc>
-        <type name="Structure" c:type="GstStructure*"/>
+    <function name="structure_take"
+              c:identifier="gst_structure_take"
+              moved-to="Structure.take"
+              version="1.18">
+      <doc xml:space="preserve"
+           filename="gst/gststructure.c"
+           line="575">Atomically modifies a pointer to point to a new structure.
+The #GstStructure @oldstr_ptr is pointing to is freed and
+@newstr is taken ownership over.
+
+Either @newstr and the value pointed to by @oldstr_ptr may be %NULL.
+
+It is a programming error if both @newstr and the value pointed to by
+@oldstr_ptr refer to the same, non-%NULL structure.</doc>
+      <source-position filename="gst/gststructure.h" line="141"/>
+      <return-value transfer-ownership="none">
+        <doc xml:space="preserve"
+             filename="gst/gststructure.c"
+             line="590">%TRUE if @newstr was different from @oldstr_ptr</doc>
+        <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
-        <parameter name="string" transfer-ownership="none">
-          <doc xml:space="preserve">a string representation of a #GstStructure.</doc>
-          <type name="utf8" c:type="const gchar*"/>
-        </parameter>
-        <parameter name="end"
-                   direction="out"
+        <parameter name="oldstr_ptr"
+                   direction="inout"
                    caller-allocates="0"
-                   transfer-ownership="none"
-                   optional="1"
-                   allow-none="1"
-                   skip="1">
-          <doc xml:space="preserve">pointer to store the end of the string in.</doc>
-          <type name="utf8" c:type="gchar**"/>
+                   transfer-ownership="full"
+                   nullable="1"
+                   allow-none="1">
+          <doc xml:space="preserve"
+               filename="gst/gststructure.c"
+               line="577">pointer to a place of
+    a #GstStructure to take</doc>
+          <type name="Structure" c:type="GstStructure**"/>
+        </parameter>
+        <parameter name="newstr"
+                   transfer-ownership="full"
+                   nullable="1"
+                   allow-none="1">
+          <doc xml:space="preserve"
+               filename="gst/gststructure.c"
+               line="579">a new #GstStructure</doc>
+          <type name="Structure" c:type="GstStructure*"/>
         </parameter>
       </parameters>
     </function>
     <function name="tag_exists" c:identifier="gst_tag_exists">
-      <doc xml:space="preserve">Checks if the given type is already registered.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.c"
+           line="564">Checks if the given type is already registered.</doc>
+      <source-position filename="gst/gsttaglist.h" line="168"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE if the type is already registered</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttaglist.c"
+             line="570">%TRUE if the type is already registered</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="tag" transfer-ownership="none">
-          <doc xml:space="preserve">name of the tag</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsttaglist.c"
+               line="566">name of the tag</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
       </parameters>
     </function>
     <function name="tag_get_description"
               c:identifier="gst_tag_get_description">
-      <doc xml:space="preserve">Returns the human-readable description of this tag, You must not change or
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.c"
+           line="625">Returns the human-readable description of this tag, You must not change or
 free this string.</doc>
+      <source-position filename="gst/gsttaglist.h" line="177"/>
       <return-value transfer-ownership="none" nullable="1">
-        <doc xml:space="preserve">the human-readable description of this tag</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttaglist.c"
+             line="632">the human-readable description of this tag</doc>
         <type name="utf8" c:type="const gchar*"/>
       </return-value>
       <parameters>
         <parameter name="tag" transfer-ownership="none">
-          <doc xml:space="preserve">the tag</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsttaglist.c"
+               line="627">the tag</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
       </parameters>
     </function>
     <function name="tag_get_flag" c:identifier="gst_tag_get_flag">
-      <doc xml:space="preserve">Gets the flag of @tag.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.c"
+           line="646">Gets the flag of @tag.</doc>
+      <source-position filename="gst/gsttaglist.h" line="180"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">the flag of this tag.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttaglist.c"
+             line="652">the flag of this tag.</doc>
         <type name="TagFlag" c:type="GstTagFlag"/>
       </return-value>
       <parameters>
         <parameter name="tag" transfer-ownership="none">
-          <doc xml:space="preserve">the tag</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsttaglist.c"
+               line="648">the tag</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
       </parameters>
     </function>
     <function name="tag_get_nick" c:identifier="gst_tag_get_nick">
-      <doc xml:space="preserve">Returns the human-readable name of this tag, You must not change or free
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.c"
+           line="600">Returns the human-readable name of this tag, You must not change or free
 this string.</doc>
+      <source-position filename="gst/gsttaglist.h" line="174"/>
       <return-value transfer-ownership="none" nullable="1">
-        <doc xml:space="preserve">the human-readable name of this tag</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttaglist.c"
+             line="607">the human-readable name of this tag</doc>
         <type name="utf8" c:type="const gchar*"/>
       </return-value>
       <parameters>
         <parameter name="tag" transfer-ownership="none">
-          <doc xml:space="preserve">the tag</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsttaglist.c"
+               line="602">the tag</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
       </parameters>
     </function>
     <function name="tag_get_type" c:identifier="gst_tag_get_type">
-      <doc xml:space="preserve">Gets the #GType used for this tag.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.c"
+           line="580">Gets the #GType used for this tag.</doc>
+      <source-position filename="gst/gsttaglist.h" line="171"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">the #GType of this tag</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttaglist.c"
+             line="586">the #GType of this tag</doc>
         <type name="GType" c:type="GType"/>
       </return-value>
       <parameters>
         <parameter name="tag" transfer-ownership="none">
-          <doc xml:space="preserve">the tag</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsttaglist.c"
+               line="582">the tag</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
       </parameters>
     </function>
     <function name="tag_is_fixed" c:identifier="gst_tag_is_fixed">
-      <doc xml:space="preserve">Checks if the given tag is fixed. A fixed tag can only contain one value.
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.c"
+           line="666">Checks if the given tag is fixed. A fixed tag can only contain one value.
 Unfixed tags can contain lists of values.</doc>
+      <source-position filename="gst/gsttaglist.h" line="183"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE, if the given tag is fixed.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttaglist.c"
+             line="673">%TRUE, if the given tag is fixed.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="tag" transfer-ownership="none">
-          <doc xml:space="preserve">tag to check</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsttaglist.c"
+               line="668">tag to check</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
       </parameters>
@@ -47933,12 +74866,17 @@ Unfixed tags can contain lists of values.</doc>
     <function name="tag_list_copy_value"
               c:identifier="gst_tag_list_copy_value"
               moved-to="TagList.copy_value">
-      <doc xml:space="preserve">Copies the contents for the given tag into the value,
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.c"
+           line="1472">Copies the contents for the given tag into the value,
 merging multiple values into one if multiple values are associated
 with the tag.
 You must g_value_unset() the value after use.</doc>
+      <source-position filename="gst/gsttaglist.h" line="282"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE, if a value was copied, %FALSE if the tag didn't exist in the
+        <doc xml:space="preserve"
+             filename="gst/gsttaglist.c"
+             line="1483">%TRUE, if a value was copied, %FALSE if the tag didn't exist in the
          given list.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
@@ -47947,24 +74885,84 @@ You must g_value_unset() the value after use.</doc>
                    direction="out"
                    caller-allocates="1"
                    transfer-ownership="none">
-          <doc xml:space="preserve">uninitialized #GValue to copy into</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsttaglist.c"
+               line="1474">uninitialized #GValue to copy into</doc>
           <type name="GObject.Value" c:type="GValue*"/>
         </parameter>
         <parameter name="list" transfer-ownership="none">
-          <doc xml:space="preserve">list to get the tag from</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsttaglist.c"
+               line="1475">list to get the tag from</doc>
           <type name="TagList" c:type="const GstTagList*"/>
         </parameter>
         <parameter name="tag" transfer-ownership="none">
-          <doc xml:space="preserve">tag to read out</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsttaglist.c"
+               line="1476">tag to read out</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
       </parameters>
     </function>
+    <function-macro name="tag_list_free"
+                    c:identifier="gst_tag_list_free"
+                    introspectable="0">
+      <source-position filename="gst/gstcompat.h" line="84"/>
+      <parameters>
+        <parameter name="taglist">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="tag_list_is_writable"
+                    c:identifier="gst_tag_list_is_writable"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="527">Tests if you can safely modify @taglist. It is only safe to modify taglist
+when there is only one owner of the taglist - ie, the refcount is 1.</doc>
+      <source-position filename="gst/gsttaglist.h" line="534"/>
+      <parameters>
+        <parameter name="taglist">
+          <doc xml:space="preserve"
+               filename="gst/gsttaglist.h"
+               line="529">a #GstTagList</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="tag_list_make_writable"
+                    c:identifier="gst_tag_list_make_writable"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.h"
+           line="536">Returns a writable copy of @taglist.
+
+If there is only one reference count on @taglist, the caller must be the
+owner, and so this function will return the taglist object unchanged. If on
+the other hand there is more than one reference on the object, a new taglist
+object will be returned (which will be a copy of @taglist). The caller's
+reference on @taglist will be removed, and instead the caller will own a
+reference to the returned object.
+
+In short, this function unrefs the taglist in the argument and refs the
+taglist that it returns. Don't access the argument after calling this
+function. See also: gst_tag_list_ref().</doc>
+      <source-position filename="gst/gsttaglist.h" line="556"/>
+      <parameters>
+        <parameter name="taglist">
+          <doc xml:space="preserve"
+               filename="gst/gsttaglist.h"
+               line="538">a #GstTagList</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
     <function name="tag_merge_strings_with_comma"
               c:identifier="gst_tag_merge_strings_with_comma">
-      <doc xml:space="preserve">This is a convenience function for the func argument of gst_tag_register().
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.c"
+           line="432">This is a convenience function for the func argument of gst_tag_register().
 It concatenates all given strings using a comma. The tag must be registered
 as a G_TYPE_STRING or this function will fail.</doc>
+      <source-position filename="gst/gsttaglist.h" line="163"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
@@ -47973,19 +74971,26 @@ as a G_TYPE_STRING or this function will fail.</doc>
                    direction="out"
                    caller-allocates="1"
                    transfer-ownership="none">
-          <doc xml:space="preserve">uninitialized GValue to store result in</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsttaglist.c"
+               line="434">uninitialized GValue to store result in</doc>
           <type name="GObject.Value" c:type="GValue*"/>
         </parameter>
         <parameter name="src" transfer-ownership="none">
-          <doc xml:space="preserve">GValue to copy from</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsttaglist.c"
+               line="435">GValue to copy from</doc>
           <type name="GObject.Value" c:type="const GValue*"/>
         </parameter>
       </parameters>
     </function>
     <function name="tag_merge_use_first"
               c:identifier="gst_tag_merge_use_first">
-      <doc xml:space="preserve">This is a convenience function for the func argument of gst_tag_register().
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.c"
+           line="415">This is a convenience function for the func argument of gst_tag_register().
 It creates a copy of the first value from the list.</doc>
+      <source-position filename="gst/gsttaglist.h" line="160"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
@@ -47994,11 +74999,15 @@ It creates a copy of the first value from the list.</doc>
                    direction="out"
                    caller-allocates="1"
                    transfer-ownership="none">
-          <doc xml:space="preserve">uninitialized GValue to store result in</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsttaglist.c"
+               line="417">uninitialized GValue to store result in</doc>
           <type name="GObject.Value" c:type="GValue*"/>
         </parameter>
         <parameter name="src" transfer-ownership="none">
-          <doc xml:space="preserve">GValue to copy from</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsttaglist.c"
+               line="418">GValue to copy from</doc>
           <type name="GObject.Value" c:type="const GValue*"/>
         </parameter>
       </parameters>
@@ -48006,7 +75015,9 @@ It creates a copy of the first value from the list.</doc>
     <function name="tag_register"
               c:identifier="gst_tag_register"
               introspectable="0">
-      <doc xml:space="preserve">Registers a new tag type for the use with GStreamer's type system. If a type
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.c"
+           line="473">Registers a new tag type for the use with GStreamer's type system. If a type
 with that name is already registered, that one is used.
 The old registration may have used a different type however. So don't rely
 on your supplied values.
@@ -48027,35 +75038,48 @@ merge function was supplied and if so which one.
 
 Two default merge functions are provided: gst_tag_merge_use_first() and
 gst_tag_merge_strings_with_comma().</doc>
+      <source-position filename="gst/gsttaglist.h" line="143"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="name" transfer-ownership="none">
-          <doc xml:space="preserve">the name or identifier string</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsttaglist.c"
+               line="475">the name or identifier string</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
         <parameter name="flag" transfer-ownership="none">
-          <doc xml:space="preserve">a flag describing the type of tag info</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsttaglist.c"
+               line="476">a flag describing the type of tag info</doc>
           <type name="TagFlag" c:type="GstTagFlag"/>
         </parameter>
         <parameter name="type" transfer-ownership="none">
-          <doc xml:space="preserve">the type this data is in</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsttaglist.c"
+               line="477">the type this data is in</doc>
           <type name="GType" c:type="GType"/>
         </parameter>
         <parameter name="nick" transfer-ownership="none">
-          <doc xml:space="preserve">human-readable name</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsttaglist.c"
+               line="478">human-readable name</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
         <parameter name="blurb" transfer-ownership="none">
-          <doc xml:space="preserve">a human-readable description about this tag</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsttaglist.c"
+               line="479">a human-readable description about this tag</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
         <parameter name="func"
                    transfer-ownership="none"
                    nullable="1"
                    allow-none="1">
-          <doc xml:space="preserve">function for merging multiple values of this tag, or %NULL</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsttaglist.c"
+               line="480">function for merging multiple values of this tag, or %NULL</doc>
           <type name="TagMergeFunc" c:type="GstTagMergeFunc"/>
         </parameter>
       </parameters>
@@ -48063,63 +75087,220 @@ gst_tag_merge_strings_with_comma().</doc>
     <function name="tag_register_static"
               c:identifier="gst_tag_register_static"
               introspectable="0">
-      <doc xml:space="preserve">Registers a new tag type for the use with GStreamer's type system.
+      <doc xml:space="preserve"
+           filename="gst/gsttaglist.c"
+           line="517">Registers a new tag type for the use with GStreamer's type system.
 
 Same as gst_tag_register(), but @name, @nick, and @blurb must be
 static strings or inlined strings, as they will not be copied. (GStreamer
 plugins will be made resident once loaded, so this function can be used
 even from dynamically loaded plugins.)</doc>
+      <source-position filename="gst/gsttaglist.h" line="150"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="name" transfer-ownership="none">
-          <doc xml:space="preserve">the name or identifier string (string constant)</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsttaglist.c"
+               line="519">the name or identifier string (string constant)</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
         <parameter name="flag" transfer-ownership="none">
-          <doc xml:space="preserve">a flag describing the type of tag info</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsttaglist.c"
+               line="520">a flag describing the type of tag info</doc>
           <type name="TagFlag" c:type="GstTagFlag"/>
         </parameter>
         <parameter name="type" transfer-ownership="none">
-          <doc xml:space="preserve">the type this data is in</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsttaglist.c"
+               line="521">the type this data is in</doc>
           <type name="GType" c:type="GType"/>
         </parameter>
         <parameter name="nick" transfer-ownership="none">
-          <doc xml:space="preserve">human-readable name or short description (string constant)</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsttaglist.c"
+               line="522">human-readable name or short description (string constant)</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
         <parameter name="blurb" transfer-ownership="none">
-          <doc xml:space="preserve">a human-readable description for this tag (string constant)</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsttaglist.c"
+               line="523">a human-readable description for this tag (string constant)</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
         <parameter name="func"
                    transfer-ownership="none"
                    nullable="1"
                    allow-none="1">
-          <doc xml:space="preserve">function for merging multiple values of this tag, or %NULL</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsttaglist.c"
+               line="524">function for merging multiple values of this tag, or %NULL</doc>
           <type name="TagMergeFunc" c:type="GstTagMergeFunc"/>
         </parameter>
       </parameters>
     </function>
+    <function-macro name="toc_copy"
+                    c:identifier="gst_toc_copy"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gsttoc.c"
+           line="447">Copy #GstToc with all subentries (deep copy).</doc>
+      <source-position filename="gst/gsttoc.h" line="166"/>
+      <parameters>
+        <parameter name="toc">
+          <doc xml:space="preserve"
+               filename="gst/gsttoc.c"
+               line="449">#GstToc to copy.</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="toc_entry_copy"
+                    c:identifier="gst_toc_entry_copy"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gsttoc.c"
+           line="412">Copy #GstTocEntry with all subentries (deep copy).</doc>
+      <source-position filename="gst/gsttoc.h" line="176"/>
+      <parameters>
+        <parameter name="entry">
+          <doc xml:space="preserve"
+               filename="gst/gsttoc.c"
+               line="414">#GstTocEntry to copy.</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="toc_entry_make_writable"
+                    c:identifier="gst_toc_entry_make_writable"
+                    introspectable="0">
+      <source-position filename="gst/gsttoc.h" line="177"/>
+      <parameters>
+        <parameter name="entry">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="toc_entry_ref"
+                    c:identifier="gst_toc_entry_ref"
+                    introspectable="0">
+      <source-position filename="gst/gsttoc.h" line="174"/>
+      <parameters>
+        <parameter name="entry">
+        </parameter>
+      </parameters>
+    </function-macro>
     <function name="toc_entry_type_get_nick"
               c:identifier="gst_toc_entry_type_get_nick"
               moved-to="TocEntryType.get_nick">
-      <doc xml:space="preserve">Converts @type to a string representation.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gsttoc.c"
+           line="576">Converts @type to a string representation.</doc>
+      <source-position filename="gst/gsttoc.h" line="229"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">Returns a human-readable string for @type. This string is
+        <doc xml:space="preserve"
+             filename="gst/gsttoc.c"
+             line="582">Returns a human-readable string for @type. This string is
    only for debugging purpose and should not be displayed in a user
    interface.</doc>
         <type name="utf8" c:type="const gchar*"/>
       </return-value>
       <parameters>
         <parameter name="type" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstTocEntryType.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsttoc.c"
+               line="578">a #GstTocEntryType.</doc>
           <type name="TocEntryType" c:type="GstTocEntryType"/>
         </parameter>
       </parameters>
     </function>
+    <function-macro name="toc_entry_unref"
+                    c:identifier="gst_toc_entry_unref"
+                    introspectable="0">
+      <source-position filename="gst/gsttoc.h" line="175"/>
+      <parameters>
+        <parameter name="entry">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="toc_make_writable"
+                    c:identifier="gst_toc_make_writable"
+                    introspectable="0">
+      <source-position filename="gst/gsttoc.h" line="167"/>
+      <parameters>
+        <parameter name="toc">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="toc_ref"
+                    c:identifier="gst_toc_ref"
+                    introspectable="0">
+      <source-position filename="gst/gsttoc.h" line="164"/>
+      <parameters>
+        <parameter name="toc">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="toc_unref"
+                    c:identifier="gst_toc_unref"
+                    introspectable="0">
+      <source-position filename="gst/gsttoc.h" line="165"/>
+      <parameters>
+        <parameter name="toc">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function name="tracing_get_active_tracers"
+              c:identifier="gst_tracing_get_active_tracers"
+              version="1.18">
+      <doc xml:space="preserve"
+           filename="gst/gsttracerutils.c"
+           line="199">Get a list of all active tracer objects owned by the tracing framework for
+the entirety of the run-time of the process or till gst_deinit() is called.</doc>
+      <source-position filename="gst/gsttracer.h" line="78"/>
+      <return-value transfer-ownership="full">
+        <doc xml:space="preserve"
+             filename="gst/gsttracerutils.c"
+             line="205">A #GList of
+#GstTracer objects</doc>
+        <type name="GLib.List" c:type="GList*">
+          <type name="Tracer"/>
+        </type>
+      </return-value>
+    </function>
+    <function name="tracing_register_hook"
+              c:identifier="gst_tracing_register_hook">
+      <doc xml:space="preserve"
+           filename="gst/gsttracerutils.c"
+           line="183">Register @func to be called when the trace hook @detail is getting invoked.
+Use %NULL for @detail to register to all hooks.</doc>
+      <source-position filename="gst/gsttracer.h" line="69"/>
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="tracer" transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gsttracerutils.c"
+               line="185">the tracer</doc>
+          <type name="Tracer" c:type="GstTracer*"/>
+        </parameter>
+        <parameter name="detail" transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gsttracerutils.c"
+               line="186">the detailed hook</doc>
+          <type name="utf8" c:type="const gchar*"/>
+        </parameter>
+        <parameter name="func" transfer-ownership="none" scope="async">
+          <doc xml:space="preserve"
+               filename="gst/gsttracerutils.c"
+               line="187">the callback</doc>
+          <type name="GObject.Callback" c:type="GCallback"/>
+        </parameter>
+      </parameters>
+    </function>
     <function name="type_find_get_type" c:identifier="gst_type_find_get_type">
+      <attribute name="doc.skip" value="true"/>
+      <source-position filename="gst/gsttypefind.h" line="98"/>
       <return-value transfer-ownership="none">
         <type name="GType" c:type="GType"/>
       </return-value>
@@ -48127,11 +75308,16 @@ even from dynamically loaded plugins.)</doc>
     <function name="type_find_register"
               c:identifier="gst_type_find_register"
               moved-to="TypeFind.register">
-      <doc xml:space="preserve">Registers a new typefind function to be used for typefinding. After
+      <doc xml:space="preserve"
+           filename="gst/gsttypefind.c"
+           line="42">Registers a new typefind function to be used for typefinding. After
 registering this function will be available for typefinding.
 This function is typically called during an element's plugin initialization.</doc>
+      <source-position filename="gst/gsttypefind.h" line="121"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE on success, %FALSE otherwise</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsttypefind.c"
+             line="61">%TRUE on success, %FALSE otherwise</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
@@ -48139,15 +75325,21 @@ This function is typically called during an element's plugin initialization.</do
                    transfer-ownership="none"
                    nullable="1"
                    allow-none="1">
-          <doc xml:space="preserve">A #GstPlugin, or %NULL for a static typefind function</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsttypefind.c"
+               line="44">A #GstPlugin, or %NULL for a static typefind function</doc>
           <type name="Plugin" c:type="GstPlugin*"/>
         </parameter>
         <parameter name="name" transfer-ownership="none">
-          <doc xml:space="preserve">The name for registering</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsttypefind.c"
+               line="45">The name for registering</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
         <parameter name="rank" transfer-ownership="none">
-          <doc xml:space="preserve">The rank (or importance) of this typefind function</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsttypefind.c"
+               line="46">The rank (or importance) of this typefind function</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
         <parameter name="func"
@@ -48155,19 +75347,25 @@ This function is typically called during an element's plugin initialization.</do
                    scope="notified"
                    closure="6"
                    destroy="7">
-          <doc xml:space="preserve">The #GstTypeFindFunction to use</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsttypefind.c"
+               line="47">The #GstTypeFindFunction to use</doc>
           <type name="TypeFindFunction" c:type="GstTypeFindFunction"/>
         </parameter>
         <parameter name="extensions"
                    transfer-ownership="none"
                    nullable="1"
                    allow-none="1">
-          <doc xml:space="preserve">Optional comma-separated list of extensions
+          <doc xml:space="preserve"
+               filename="gst/gsttypefind.c"
+               line="48">Optional comma-separated list of extensions
     that could belong to this type</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
         <parameter name="possible_caps" transfer-ownership="none">
-          <doc xml:space="preserve">Optionally the caps that could be returned when typefinding
+          <doc xml:space="preserve"
+               filename="gst/gsttypefind.c"
+               line="50">Optionally the caps that could be returned when typefinding
                 succeeds</doc>
           <type name="Caps" c:type="GstCaps*"/>
         </parameter>
@@ -48175,19 +75373,92 @@ This function is typically called during an element's plugin initialization.</do
                    transfer-ownership="none"
                    nullable="1"
                    allow-none="1">
-          <doc xml:space="preserve">Optional user data. This user data must be available until the plugin
+          <doc xml:space="preserve"
+               filename="gst/gsttypefind.c"
+               line="52">Optional user data. This user data must be available until the plugin
        is unloaded.</doc>
           <type name="gpointer" c:type="gpointer"/>
         </parameter>
         <parameter name="data_notify" transfer-ownership="none" scope="async">
-          <doc xml:space="preserve">a #GDestroyNotify that will be called on @data when the plugin
+          <doc xml:space="preserve"
+               filename="gst/gsttypefind.c"
+               line="54">a #GDestroyNotify that will be called on @data when the plugin
        is unloaded.</doc>
           <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
         </parameter>
       </parameters>
     </function>
+    <function name="type_is_plugin_api"
+              c:identifier="gst_type_is_plugin_api"
+              version="1.18">
+      <doc xml:space="preserve"
+           filename="gst/gstutils.c"
+           line="4547">Checks if @type is plugin API. See gst_type_mark_as_plugin_api() for
+details.</doc>
+      <source-position filename="gst/gstutils.h" line="1223"/>
+      <return-value transfer-ownership="none">
+        <doc xml:space="preserve"
+             filename="gst/gstutils.c"
+             line="4555">%TRUE if @type is plugin API or %FALSE otherwise.</doc>
+        <type name="gboolean" c:type="gboolean"/>
+      </return-value>
+      <parameters>
+        <parameter name="type" transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="4549">a GType</doc>
+          <type name="GType" c:type="GType"/>
+        </parameter>
+        <parameter name="flags"
+                   direction="out"
+                   caller-allocates="0"
+                   transfer-ownership="full"
+                   nullable="1">
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="4550">What #GstPluginAPIFlags the plugin was marked with</doc>
+          <type name="PluginAPIFlags" c:type="GstPluginAPIFlags*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="type_mark_as_plugin_api"
+              c:identifier="gst_type_mark_as_plugin_api"
+              version="1.18">
+      <doc xml:space="preserve"
+           filename="gst/gstutils.c"
+           line="4521">Marks @type as plugin API. This should be called in `class_init` of
+elements that expose new types (i.e. enums, flags or internal GObjects) via
+properties, signals or pad templates.
+
+Types exposed by plugins are not automatically added to the documentation
+as they might originate from another library and should in that case be
+documented via that library instead.
+
+By marking a type as plugin API it will be included in the documentation of
+the plugin that defines it.</doc>
+      <source-position filename="gst/gstutils.h" line="1220"/>
+      <return-value transfer-ownership="none">
+        <type name="none" c:type="void"/>
+      </return-value>
+      <parameters>
+        <parameter name="type" transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="4523">a GType</doc>
+          <type name="GType" c:type="GType"/>
+        </parameter>
+        <parameter name="flags" transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="4524">a set of #GstPluginAPIFlags to further inform cache generation.</doc>
+          <type name="PluginAPIFlags" c:type="GstPluginAPIFlags"/>
+        </parameter>
+      </parameters>
+    </function>
     <function name="update_registry" c:identifier="gst_update_registry">
-      <doc xml:space="preserve">Forces GStreamer to re-scan its plugin paths and update the default
+      <doc xml:space="preserve"
+           filename="gst/gstregistry.c"
+           line="1816">Forces GStreamer to re-scan its plugin paths and update the default
 plugin registry.
 
 Applications will almost never need to call this function, it is only
@@ -48203,8 +75474,11 @@ any elements or access the GStreamer registry while the update is in
 progress.
 
 Note that this function may block for a significant amount of time.</doc>
+      <source-position filename="gst/gst.h" line="134"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE if the registry has been updated successfully (does not
+        <doc xml:space="preserve"
+             filename="gst/gstregistry.c"
+             line="1836">%TRUE if the registry has been updated successfully (does not
          imply that there were changes), otherwise %FALSE.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
@@ -48213,22 +75487,31 @@ Note that this function may block for a significant amount of time.</doc>
               c:identifier="gst_uri_construct"
               moved-to="Uri.construct"
               deprecated="1">
-      <doc xml:space="preserve">Constructs a URI for a given valid protocol and location.
+      <doc xml:space="preserve"
+           filename="gst/gsturi.c"
+           line="490">Constructs a URI for a given valid protocol and location.
 
 Free-function: g_free</doc>
       <doc-deprecated xml:space="preserve">Use GstURI instead.</doc-deprecated>
+      <source-position filename="gst/gsturi.h" line="155"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">a new string for this URI. Returns %NULL if the
+        <doc xml:space="preserve"
+             filename="gst/gsturi.c"
+             line="499">a new string for this URI. Returns %NULL if the
     given URI protocol is not valid, or the given location is %NULL.</doc>
         <type name="utf8" c:type="gchar*"/>
       </return-value>
       <parameters>
         <parameter name="protocol" transfer-ownership="none">
-          <doc xml:space="preserve">Protocol for URI</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsturi.c"
+               line="492">Protocol for URI</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
         <parameter name="location" transfer-ownership="none">
-          <doc xml:space="preserve">Location for URI</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsturi.c"
+               line="493">Location for URI</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
       </parameters>
@@ -48236,6 +75519,7 @@ Free-function: g_free</doc>
     <function name="uri_error_quark"
               c:identifier="gst_uri_error_quark"
               moved-to="URIError.quark">
+      <attribute name="doc.skip" value="true"/>
       <return-value transfer-ownership="none">
         <type name="GLib.Quark" c:type="GQuark"/>
       </return-value>
@@ -48244,15 +75528,22 @@ Free-function: g_free</doc>
               c:identifier="gst_uri_from_string"
               moved-to="Uri.from_string"
               version="1.6">
-      <doc xml:space="preserve">Parses a URI string into a new #GstUri object. Will return NULL if the URI
+      <doc xml:space="preserve"
+           filename="gst/gsturi.c"
+           line="1500">Parses a URI string into a new #GstUri object. Will return NULL if the URI
 cannot be parsed.</doc>
+      <source-position filename="gst/gsturi.h" line="236"/>
       <return-value transfer-ownership="full" nullable="1">
-        <doc xml:space="preserve">A new #GstUri object, or NULL.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsturi.c"
+             line="1507">A new #GstUri object, or NULL.</doc>
         <type name="Uri" c:type="GstUri*"/>
       </return-value>
       <parameters>
         <parameter name="uri" transfer-ownership="none">
-          <doc xml:space="preserve">The URI string to parse.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsturi.c"
+               line="1502">The URI string to parse.</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
       </parameters>
@@ -48260,21 +75551,28 @@ cannot be parsed.</doc>
     <function name="uri_get_location"
               c:identifier="gst_uri_get_location"
               moved-to="Uri.get_location">
-      <doc xml:space="preserve">Extracts the location out of a given valid URI, ie. the protocol and "://"
+      <doc xml:space="preserve"
+           filename="gst/gsturi.c"
+           line="441">Extracts the location out of a given valid URI, ie. the protocol and "://"
 are stripped from the URI, which means that the location returned includes
 the hostname if one is specified. The returned string must be freed using
 g_free().
 
 Free-function: g_free</doc>
+      <source-position filename="gst/gsturi.h" line="152"/>
       <return-value transfer-ownership="full" nullable="1">
-        <doc xml:space="preserve">the location for this URI. Returns
+        <doc xml:space="preserve"
+             filename="gst/gsturi.c"
+             line="452">the location for this URI. Returns
     %NULL if the URI isn't valid. If the URI does not contain a location, an
     empty string is returned.</doc>
         <type name="utf8" c:type="gchar*"/>
       </return-value>
       <parameters>
         <parameter name="uri" transfer-ownership="none">
-          <doc xml:space="preserve">A URI string</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsturi.c"
+               line="443">A URI string</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
       </parameters>
@@ -48282,15 +75580,22 @@ Free-function: g_free</doc>
     <function name="uri_get_protocol"
               c:identifier="gst_uri_get_protocol"
               moved-to="Uri.get_protocol">
-      <doc xml:space="preserve">Extracts the protocol out of a given valid URI. The returned string must be
+      <doc xml:space="preserve"
+           filename="gst/gsturi.c"
+           line="393">Extracts the protocol out of a given valid URI. The returned string must be
 freed using g_free().</doc>
+      <source-position filename="gst/gsturi.h" line="146"/>
       <return-value transfer-ownership="full" nullable="1">
-        <doc xml:space="preserve">The protocol for this URI.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsturi.c"
+             line="400">The protocol for this URI.</doc>
         <type name="utf8" c:type="gchar*"/>
       </return-value>
       <parameters>
         <parameter name="uri" transfer-ownership="none">
-          <doc xml:space="preserve">A URI string</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsturi.c"
+               line="395">A URI string</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
       </parameters>
@@ -48298,18 +75603,27 @@ freed using g_free().</doc>
     <function name="uri_has_protocol"
               c:identifier="gst_uri_has_protocol"
               moved-to="Uri.has_protocol">
-      <doc xml:space="preserve">Checks if the protocol of a given valid URI matches @protocol.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gsturi.c"
+           line="415">Checks if the protocol of a given valid URI matches @protocol.</doc>
+      <source-position filename="gst/gsturi.h" line="149"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE if the protocol matches.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsturi.c"
+             line="422">%TRUE if the protocol matches.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="uri" transfer-ownership="none">
-          <doc xml:space="preserve">a URI string</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsturi.c"
+               line="417">a URI string</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
         <parameter name="protocol" transfer-ownership="none">
-          <doc xml:space="preserve">a protocol string (e.g. "http")</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsturi.c"
+               line="418">a protocol string (e.g. "http")</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
       </parameters>
@@ -48317,15 +75631,22 @@ freed using g_free().</doc>
     <function name="uri_is_valid"
               c:identifier="gst_uri_is_valid"
               moved-to="Uri.is_valid">
-      <doc xml:space="preserve">Tests if the given string is a valid URI identifier. URIs start with a valid
+      <doc xml:space="preserve"
+           filename="gst/gsturi.c"
+           line="372">Tests if the given string is a valid URI identifier. URIs start with a valid
 scheme followed by ":" and maybe a string identifying the location.</doc>
+      <source-position filename="gst/gsturi.h" line="143"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE if the string is a valid URI</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsturi.c"
+             line="379">%TRUE if the string is a valid URI</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="uri" transfer-ownership="none">
-          <doc xml:space="preserve">A URI string</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsturi.c"
+               line="374">A URI string</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
       </parameters>
@@ -48334,20 +75655,29 @@ scheme followed by ":" and maybe a string identifying the location.</doc>
               c:identifier="gst_uri_join_strings"
               moved-to="Uri.join_strings"
               version="1.6">
-      <doc xml:space="preserve">This is a convenience function to join two URI strings and return the result.
+      <doc xml:space="preserve"
+           filename="gst/gsturi.c"
+           line="1856">This is a convenience function to join two URI strings and return the result.
 The returned string should be g_free()'d after use.</doc>
+      <source-position filename="gst/gsturi.h" line="248"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">A string representing the percent-encoded join of
+        <doc xml:space="preserve"
+             filename="gst/gsturi.c"
+             line="1864">A string representing the percent-encoded join of
          the two URIs.</doc>
         <type name="utf8" c:type="gchar*"/>
       </return-value>
       <parameters>
         <parameter name="base_uri" transfer-ownership="none">
-          <doc xml:space="preserve">The percent-encoded base URI.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsturi.c"
+               line="1858">The percent-encoded base URI.</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
         <parameter name="ref_uri" transfer-ownership="none">
-          <doc xml:space="preserve">The percent-encoded reference URI to join to the @base_uri.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsturi.c"
+               line="1859">The percent-encoded reference URI to join to the @base_uri.</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
       </parameters>
@@ -48355,20 +75685,29 @@ The returned string should be g_free()'d after use.</doc>
     <function name="uri_protocol_is_supported"
               c:identifier="gst_uri_protocol_is_supported"
               moved-to="Uri.protocol_is_supported">
-      <doc xml:space="preserve">Checks if an element exists that supports the given URI protocol. Note
+      <doc xml:space="preserve"
+           filename="gst/gsturi.c"
+           line="585">Checks if an element exists that supports the given URI protocol. Note
 that a positive return value does not imply that a subsequent call to
 gst_element_make_from_uri() is guaranteed to work.</doc>
+      <source-position filename="gst/gsturi.h" line="140"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsturi.c"
+             line="594">%TRUE</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="type" transfer-ownership="none">
-          <doc xml:space="preserve">Whether to check for a source or a sink</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsturi.c"
+               line="587">Whether to check for a source or a sink</doc>
           <type name="URIType" c:type="const GstURIType"/>
         </parameter>
         <parameter name="protocol" transfer-ownership="none">
-          <doc xml:space="preserve">Protocol that should be checked for (e.g. "http" or "smb")</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsturi.c"
+               line="588">Protocol that should be checked for (e.g. "http" or "smb")</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
       </parameters>
@@ -48376,31 +75715,43 @@ gst_element_make_from_uri() is guaranteed to work.</doc>
     <function name="uri_protocol_is_valid"
               c:identifier="gst_uri_protocol_is_valid"
               moved-to="Uri.protocol_is_valid">
-      <doc xml:space="preserve">Tests if the given string is a valid protocol identifier. Protocols
+      <doc xml:space="preserve"
+           filename="gst/gsturi.c"
+           line="350">Tests if the given string is a valid protocol identifier. Protocols
 must consist of alphanumeric characters, '+', '-' and '.' and must
 start with a alphabetic character. See RFC 3986 Section 3.1.</doc>
+      <source-position filename="gst/gsturi.h" line="137"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE if the string is a valid protocol identifier, %FALSE otherwise.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gsturi.c"
+             line="358">%TRUE if the string is a valid protocol identifier, %FALSE otherwise.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="protocol" transfer-ownership="none">
-          <doc xml:space="preserve">A string</doc>
+          <doc xml:space="preserve"
+               filename="gst/gsturi.c"
+               line="352">A string</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
       </parameters>
     </function>
     <function name="util_array_binary_search"
               c:identifier="gst_util_array_binary_search">
-      <doc xml:space="preserve">Searches inside @array for @search_data by using the comparison function
+      <doc xml:space="preserve"
+           filename="gst/gstutils.c"
+           line="3531">Searches inside @array for @search_data by using the comparison function
 @search_func. @array must be sorted ascending.
 
 As @search_data is always passed as second argument to @search_func it's
 not required that @search_data has the same type as the array elements.
 
 The complexity of this search function is O(log (num_elements)).</doc>
+      <source-position filename="gst/gstutils.h" line="1184"/>
       <return-value transfer-ownership="none" nullable="1">
-        <doc xml:space="preserve">The address of the found
+        <doc xml:space="preserve"
+             filename="gst/gstutils.c"
+             line="3549">The address of the found
 element or %NULL if nothing was found</doc>
         <type name="gpointer" c:type="gpointer"/>
       </return-value>
@@ -48409,68 +75760,91 @@ element or %NULL if nothing was found</doc>
                    transfer-ownership="none"
                    nullable="1"
                    allow-none="1">
-          <doc xml:space="preserve">the sorted input array</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="3533">the sorted input array</doc>
           <type name="gpointer" c:type="gpointer"/>
         </parameter>
         <parameter name="num_elements" transfer-ownership="none">
-          <doc xml:space="preserve">number of elements in the array</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="3534">number of elements in the array</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
         <parameter name="element_size" transfer-ownership="none">
-          <doc xml:space="preserve">size of every element in bytes</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="3535">size of every element in bytes</doc>
           <type name="gsize" c:type="gsize"/>
         </parameter>
         <parameter name="search_func"
                    transfer-ownership="none"
                    scope="call"
                    closure="6">
-          <doc xml:space="preserve">function to compare two elements, @search_data will always be passed as second argument</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="3536">function to compare two elements, @search_data will always be passed as second argument</doc>
           <type name="GLib.CompareDataFunc" c:type="GCompareDataFunc"/>
         </parameter>
         <parameter name="mode" transfer-ownership="none">
-          <doc xml:space="preserve">search mode that should be used</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="3537">search mode that should be used</doc>
           <type name="SearchMode" c:type="GstSearchMode"/>
         </parameter>
         <parameter name="search_data"
                    transfer-ownership="none"
                    nullable="1"
                    allow-none="1">
-          <doc xml:space="preserve">element that should be found</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="3538">element that should be found</doc>
           <type name="gpointer" c:type="gconstpointer"/>
         </parameter>
         <parameter name="user_data"
                    transfer-ownership="none"
                    nullable="1"
                    allow-none="1">
-          <doc xml:space="preserve">data to pass to @search_func</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="3539">data to pass to @search_func</doc>
           <type name="gpointer" c:type="gpointer"/>
         </parameter>
       </parameters>
     </function>
     <function name="util_double_to_fraction"
               c:identifier="gst_util_double_to_fraction">
-      <doc xml:space="preserve">Transforms a #gdouble to a fraction and simplifies
+      <doc xml:space="preserve"
+           filename="gst/gstutils.c"
+           line="3695">Transforms a #gdouble to a fraction and simplifies
 the result.</doc>
+      <source-position filename="gst/gstutils.h" line="1201"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="src" transfer-ownership="none">
-          <doc xml:space="preserve">#gdouble to transform</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="3697">#gdouble to transform</doc>
           <type name="gdouble" c:type="gdouble"/>
         </parameter>
         <parameter name="dest_n"
                    direction="out"
                    caller-allocates="0"
                    transfer-ownership="full">
-          <doc xml:space="preserve">pointer to a #gint to hold the result numerator</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="3698">pointer to a #gint to hold the result numerator</doc>
           <type name="gint" c:type="gint*"/>
         </parameter>
         <parameter name="dest_d"
                    direction="out"
                    caller-allocates="0"
                    transfer-ownership="full">
-          <doc xml:space="preserve">pointer to a #gint to hold the result denominator</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="3699">pointer to a #gint to hold the result denominator</doc>
           <type name="gint" c:type="gint*"/>
         </parameter>
       </parameters>
@@ -48478,174 +75852,249 @@ the result.</doc>
     <function name="util_dump_buffer"
               c:identifier="gst_util_dump_buffer"
               version="1.14">
-      <doc xml:space="preserve">Dumps the buffer memory into a hex representation. Useful for debugging.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstutils.c"
+           line="97">Dumps the buffer memory into a hex representation. Useful for debugging.</doc>
+      <source-position filename="gst/gstutils.h" line="51"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="buf" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstBuffer whose memory to dump</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="99">a #GstBuffer whose memory to dump</doc>
           <type name="Buffer" c:type="GstBuffer*"/>
         </parameter>
       </parameters>
     </function>
     <function name="util_dump_mem" c:identifier="gst_util_dump_mem">
-      <doc xml:space="preserve">Dumps the memory block into a hex representation. Useful for debugging.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstutils.c"
+           line="84">Dumps the memory block into a hex representation. Useful for debugging.</doc>
+      <source-position filename="gst/gstutils.h" line="48"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="mem" transfer-ownership="none">
-          <doc xml:space="preserve">a pointer to the memory to dump</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="86">a pointer to the memory to dump</doc>
           <array length="1" zero-terminated="0" c:type="const guchar*">
             <type name="guint8" c:type="guchar"/>
           </array>
         </parameter>
         <parameter name="size" transfer-ownership="none">
-          <doc xml:space="preserve">the size of the memory block to dump</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="87">the size of the memory block to dump</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
       </parameters>
     </function>
     <function name="util_fraction_add" c:identifier="gst_util_fraction_add">
-      <doc xml:space="preserve">Adds the fractions @a_n/@a_d and @b_n/@b_d and stores
+      <doc xml:space="preserve"
+           filename="gst/gstutils.c"
+           line="3853">Adds the fractions @a_n/@a_d and @b_n/@b_d and stores
 the result in @res_n and @res_d.</doc>
+      <source-position filename="gst/gstutils.h" line="1207"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%FALSE on overflow, %TRUE otherwise.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstutils.c"
+             line="3865">%FALSE on overflow, %TRUE otherwise.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="a_n" transfer-ownership="none">
-          <doc xml:space="preserve">Numerator of first value</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="3855">Numerator of first value</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
         <parameter name="a_d" transfer-ownership="none">
-          <doc xml:space="preserve">Denominator of first value</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="3856">Denominator of first value</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
         <parameter name="b_n" transfer-ownership="none">
-          <doc xml:space="preserve">Numerator of second value</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="3857">Numerator of second value</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
         <parameter name="b_d" transfer-ownership="none">
-          <doc xml:space="preserve">Denominator of second value</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="3858">Denominator of second value</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
         <parameter name="res_n"
                    direction="out"
                    caller-allocates="0"
                    transfer-ownership="full">
-          <doc xml:space="preserve">Pointer to #gint to hold the result numerator</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="3859">Pointer to #gint to hold the result numerator</doc>
           <type name="gint" c:type="gint*"/>
         </parameter>
         <parameter name="res_d"
                    direction="out"
                    caller-allocates="0"
                    transfer-ownership="full">
-          <doc xml:space="preserve">Pointer to #gint to hold the result denominator</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="3860">Pointer to #gint to hold the result denominator</doc>
           <type name="gint" c:type="gint*"/>
         </parameter>
       </parameters>
     </function>
     <function name="util_fraction_compare"
               c:identifier="gst_util_fraction_compare">
-      <doc xml:space="preserve">Compares the fractions @a_n/@a_d and @b_n/@b_d and returns
+      <doc xml:space="preserve"
+           filename="gst/gstutils.c"
+           line="3918">Compares the fractions @a_n/@a_d and @b_n/@b_d and returns
 -1 if a &lt; b, 0 if a = b and 1 if a &gt; b.</doc>
+      <source-position filename="gst/gstutils.h" line="1210"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">-1 if a &lt; b; 0 if a = b; 1 if a &gt; b.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstutils.c"
+             line="3928">-1 if a &lt; b; 0 if a = b; 1 if a &gt; b.</doc>
         <type name="gint" c:type="gint"/>
       </return-value>
       <parameters>
         <parameter name="a_n" transfer-ownership="none">
-          <doc xml:space="preserve">Numerator of first value</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="3920">Numerator of first value</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
         <parameter name="a_d" transfer-ownership="none">
-          <doc xml:space="preserve">Denominator of first value</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="3921">Denominator of first value</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
         <parameter name="b_n" transfer-ownership="none">
-          <doc xml:space="preserve">Numerator of second value</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="3922">Numerator of second value</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
         <parameter name="b_d" transfer-ownership="none">
-          <doc xml:space="preserve">Denominator of second value</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="3923">Denominator of second value</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
       </parameters>
     </function>
     <function name="util_fraction_multiply"
               c:identifier="gst_util_fraction_multiply">
-      <doc xml:space="preserve">Multiplies the fractions @a_n/@a_d and @b_n/@b_d and stores
+      <doc xml:space="preserve"
+           filename="gst/gstutils.c"
+           line="3789">Multiplies the fractions @a_n/@a_d and @b_n/@b_d and stores
 the result in @res_n and @res_d.</doc>
+      <source-position filename="gst/gstutils.h" line="1204"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%FALSE on overflow, %TRUE otherwise.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstutils.c"
+             line="3801">%FALSE on overflow, %TRUE otherwise.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="a_n" transfer-ownership="none">
-          <doc xml:space="preserve">Numerator of first value</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="3791">Numerator of first value</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
         <parameter name="a_d" transfer-ownership="none">
-          <doc xml:space="preserve">Denominator of first value</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="3792">Denominator of first value</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
         <parameter name="b_n" transfer-ownership="none">
-          <doc xml:space="preserve">Numerator of second value</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="3793">Numerator of second value</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
         <parameter name="b_d" transfer-ownership="none">
-          <doc xml:space="preserve">Denominator of second value</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="3794">Denominator of second value</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
         <parameter name="res_n"
                    direction="out"
                    caller-allocates="0"
                    transfer-ownership="full">
-          <doc xml:space="preserve">Pointer to #gint to hold the result numerator</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="3795">Pointer to #gint to hold the result numerator</doc>
           <type name="gint" c:type="gint*"/>
         </parameter>
         <parameter name="res_d"
                    direction="out"
                    caller-allocates="0"
                    transfer-ownership="full">
-          <doc xml:space="preserve">Pointer to #gint to hold the result denominator</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="3796">Pointer to #gint to hold the result denominator</doc>
           <type name="gint" c:type="gint*"/>
         </parameter>
       </parameters>
     </function>
     <function name="util_fraction_to_double"
               c:identifier="gst_util_fraction_to_double">
-      <doc xml:space="preserve">Transforms a fraction to a #gdouble.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstutils.c"
+           line="3669">Transforms a fraction to a #gdouble.</doc>
+      <source-position filename="gst/gstutils.h" line="1198"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="src_n" transfer-ownership="none">
-          <doc xml:space="preserve">Fraction numerator as #gint</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="3671">Fraction numerator as #gint</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
         <parameter name="src_d" transfer-ownership="none">
-          <doc xml:space="preserve">Fraction denominator #gint</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="3672">Fraction denominator #gint</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
         <parameter name="dest"
                    direction="out"
                    caller-allocates="0"
                    transfer-ownership="full">
-          <doc xml:space="preserve">pointer to a #gdouble for the result</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="3673">pointer to a #gdouble for the result</doc>
           <type name="gdouble" c:type="gdouble*"/>
         </parameter>
       </parameters>
     </function>
     <function name="util_gdouble_to_guint64"
               c:identifier="gst_util_gdouble_to_guint64">
+      <source-position filename="gst/gstutils.h" line="54"/>
       <return-value transfer-ownership="none">
+        <doc xml:space="preserve"
+             filename="gst/gstutils.c"
+             line="320">@value casted to #guint64</doc>
         <type name="guint64" c:type="guint64"/>
       </return-value>
       <parameters>
         <parameter name="value" transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="318">The #gdouble value to convert guint64 double</doc>
           <type name="gdouble" c:type="gdouble"/>
         </parameter>
       </parameters>
@@ -48653,123 +76102,178 @@ the result in @res_n and @res_d.</doc>
     <function name="util_get_object_array"
               c:identifier="gst_util_get_object_array"
               version="1.12">
-      <doc xml:space="preserve">Get a property of type %GST_TYPE_ARRAY and transform it into a
+      <doc xml:space="preserve"
+           filename="gst/gstutils.c"
+           line="260">Get a property of type %GST_TYPE_ARRAY and transform it into a
 #GValueArray. This allow language bindings to get GST_TYPE_ARRAY
 properties which are otherwise not an accessible type.</doc>
+      <source-position filename="gst/gstutils.h" line="45"/>
       <return-value transfer-ownership="none">
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="object" transfer-ownership="none">
-          <doc xml:space="preserve">the object to set the array to</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="262">the object to set the array to</doc>
           <type name="GObject.Object" c:type="GObject*"/>
         </parameter>
         <parameter name="name" transfer-ownership="none">
-          <doc xml:space="preserve">the name of the property to set</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="263">the name of the property to set</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
         <parameter name="array"
                    direction="out"
                    caller-allocates="0"
                    transfer-ownership="full">
-          <doc xml:space="preserve">a return #GValueArray</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="264">a return #GValueArray</doc>
           <type name="GObject.ValueArray" c:type="GValueArray**"/>
         </parameter>
       </parameters>
     </function>
     <function name="util_get_timestamp" c:identifier="gst_util_get_timestamp">
-      <doc xml:space="preserve">Get a timestamp as GstClockTime to be used for interval measurements.
+      <doc xml:space="preserve"
+           filename="gst/gstutils.c"
+           line="3509">Get a timestamp as GstClockTime to be used for interval measurements.
 The timestamp should not be interpreted in any other way.</doc>
+      <source-position filename="gst/gstutils.h" line="1155"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">the timestamp</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstutils.c"
+             line="3515">the timestamp</doc>
         <type name="ClockTime" c:type="GstClockTime"/>
       </return-value>
     </function>
     <function name="util_greatest_common_divisor"
               c:identifier="gst_util_greatest_common_divisor">
-      <doc xml:space="preserve">Calculates the greatest common divisor of @a
+      <doc xml:space="preserve"
+           filename="gst/gstutils.c"
+           line="3622">Calculates the greatest common divisor of @a
 and @b.</doc>
+      <source-position filename="gst/gstutils.h" line="1192"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">Greatest common divisor of @a and @b</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstutils.c"
+             line="3630">Greatest common divisor of @a and @b</doc>
         <type name="gint" c:type="gint"/>
       </return-value>
       <parameters>
         <parameter name="a" transfer-ownership="none">
-          <doc xml:space="preserve">First value as #gint</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="3624">First value as #gint</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
         <parameter name="b" transfer-ownership="none">
-          <doc xml:space="preserve">Second value as #gint</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="3625">Second value as #gint</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
       </parameters>
     </function>
     <function name="util_greatest_common_divisor_int64"
               c:identifier="gst_util_greatest_common_divisor_int64">
-      <doc xml:space="preserve">Calculates the greatest common divisor of @a
+      <doc xml:space="preserve"
+           filename="gst/gstutils.c"
+           line="3645">Calculates the greatest common divisor of @a
 and @b.</doc>
+      <source-position filename="gst/gstutils.h" line="1195"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">Greatest common divisor of @a and @b</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstutils.c"
+             line="3653">Greatest common divisor of @a and @b</doc>
         <type name="gint64" c:type="gint64"/>
       </return-value>
       <parameters>
         <parameter name="a" transfer-ownership="none">
-          <doc xml:space="preserve">First value as #gint64</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="3647">First value as #gint64</doc>
           <type name="gint64" c:type="gint64"/>
         </parameter>
         <parameter name="b" transfer-ownership="none">
-          <doc xml:space="preserve">Second value as #gint64</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="3648">Second value as #gint64</doc>
           <type name="gint64" c:type="gint64"/>
         </parameter>
       </parameters>
     </function>
     <function name="util_group_id_next" c:identifier="gst_util_group_id_next">
-      <doc xml:space="preserve">Return a constantly incrementing group id.
+      <doc xml:space="preserve"
+           filename="gst/gstutils.c"
+           line="4232">Return a constantly incrementing group id.
 
 This function is used to generate a new group-id for the
 stream-start event.
 
 This function never returns %GST_GROUP_ID_INVALID (which is 0)</doc>
+      <source-position filename="gst/gstutils.h" line="133"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">A constantly incrementing unsigned integer, which might
+        <doc xml:space="preserve"
+             filename="gst/gstutils.c"
+             line="4242">A constantly incrementing unsigned integer, which might
 overflow back to 0 at some point.</doc>
         <type name="guint" c:type="guint"/>
       </return-value>
     </function>
     <function name="util_guint64_to_gdouble"
               c:identifier="gst_util_guint64_to_gdouble">
+      <source-position filename="gst/gstutils.h" line="57"/>
       <return-value transfer-ownership="none">
+        <doc xml:space="preserve"
+             filename="gst/gstutils.c"
+             line="305">@value casted to #gdouble</doc>
         <type name="gdouble" c:type="gdouble"/>
       </return-value>
       <parameters>
         <parameter name="value" transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="303">The #guint64 value to convert to double</doc>
           <type name="guint64" c:type="guint64"/>
         </parameter>
       </parameters>
     </function>
     <function name="util_seqnum_compare"
               c:identifier="gst_util_seqnum_compare">
-      <doc xml:space="preserve">Compare two sequence numbers, handling wraparound.
+      <doc xml:space="preserve"
+           filename="gst/gstutils.c"
+           line="855">Compare two sequence numbers, handling wraparound.
 
 The current implementation just returns (gint32)(@s1 - @s2).</doc>
+      <source-position filename="gst/gstutils.h" line="118"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">A negative number if @s1 is before @s2, 0 if they are equal, or a
+        <doc xml:space="preserve"
+             filename="gst/gstutils.c"
+             line="864">A negative number if @s1 is before @s2, 0 if they are equal, or a
 positive number if @s1 is after @s2.</doc>
         <type name="gint32" c:type="gint32"/>
       </return-value>
       <parameters>
         <parameter name="s1" transfer-ownership="none">
-          <doc xml:space="preserve">A sequence number.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="857">A sequence number.</doc>
           <type name="guint32" c:type="guint32"/>
         </parameter>
         <parameter name="s2" transfer-ownership="none">
-          <doc xml:space="preserve">Another sequence number.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="858">Another sequence number.</doc>
           <type name="guint32" c:type="guint32"/>
         </parameter>
       </parameters>
     </function>
     <function name="util_seqnum_next" c:identifier="gst_util_seqnum_next">
-      <doc xml:space="preserve">Return a constantly incrementing sequence number.
+      <doc xml:space="preserve"
+           filename="gst/gstutils.c"
+           line="826">Return a constantly incrementing sequence number.
 
 This function is used internally to GStreamer to be able to determine which
 events and messages are "the same". For example, elements may set the seqnum
@@ -48777,8 +76281,11 @@ on a segment-done message to be the same as that of the last seek event, to
 indicate that event and the message correspond to the same segment.
 
 This function never returns %GST_SEQNUM_INVALID (which is 0).</doc>
+      <source-position filename="gst/gstutils.h" line="115"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">A constantly incrementing 32-bit unsigned integer, which might
+        <doc xml:space="preserve"
+             filename="gst/gstutils.c"
+             line="838">A constantly incrementing 32-bit unsigned integer, which might
 overflow at some point. Use gst_util_seqnum_compare() to make sure
 you handle wraparound correctly.</doc>
         <type name="guint32" c:type="guint32"/>
@@ -48786,25 +76293,34 @@ you handle wraparound correctly.</doc>
     </function>
     <function name="util_set_object_arg"
               c:identifier="gst_util_set_object_arg">
-      <doc xml:space="preserve">Converts the string value to the type of the objects argument and
+      <doc xml:space="preserve"
+           filename="gst/gstutils.c"
+           line="172">Converts the string value to the type of the objects argument and
 sets the argument with it.
 
 Note that this function silently returns if @object has no property named
 @name or when @value cannot be converted to the type of the property.</doc>
+      <source-position filename="gst/gstutils.h" line="39"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="object" transfer-ownership="none">
-          <doc xml:space="preserve">the object to set the argument of</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="174">the object to set the argument of</doc>
           <type name="GObject.Object" c:type="GObject*"/>
         </parameter>
         <parameter name="name" transfer-ownership="none">
-          <doc xml:space="preserve">the name of the argument to set</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="175">the name of the argument to set</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
         <parameter name="value" transfer-ownership="none">
-          <doc xml:space="preserve">the string value to set</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="176">the string value to set</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
       </parameters>
@@ -48812,34 +76328,46 @@ Note that this function silently returns if @object has no property named
     <function name="util_set_object_array"
               c:identifier="gst_util_set_object_array"
               version="1.12">
-      <doc xml:space="preserve">Transfer a #GValueArray to %GST_TYPE_ARRAY and set this value on the
+      <doc xml:space="preserve"
+           filename="gst/gstutils.c"
+           line="225">Transfer a #GValueArray to %GST_TYPE_ARRAY and set this value on the
 specified property name. This allow language bindings to set GST_TYPE_ARRAY
 properties which are otherwise not an accessible type.</doc>
+      <source-position filename="gst/gstutils.h" line="42"/>
       <return-value transfer-ownership="none">
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="object" transfer-ownership="none">
-          <doc xml:space="preserve">the object to set the array to</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="227">the object to set the array to</doc>
           <type name="GObject.Object" c:type="GObject*"/>
         </parameter>
         <parameter name="name" transfer-ownership="none">
-          <doc xml:space="preserve">the name of the property to set</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="228">the name of the property to set</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
         <parameter name="array" transfer-ownership="none">
-          <doc xml:space="preserve">a #GValueArray containing the values</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="229">a #GValueArray containing the values</doc>
           <type name="GObject.ValueArray" c:type="const GValueArray*"/>
         </parameter>
       </parameters>
     </function>
     <function name="util_set_value_from_string"
               c:identifier="gst_util_set_value_from_string">
-      <doc xml:space="preserve">Converts the string to the type of the value and
+      <doc xml:space="preserve"
+           filename="gst/gstutils.c"
+           line="141">Converts the string to the type of the value and
 sets the value with it.
 
 Note that this function is dangerous as it does not return any indication
 if the conversion worked or not.</doc>
+      <source-position filename="gst/gstutils.h" line="36"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
@@ -48848,23 +76376,32 @@ if the conversion worked or not.</doc>
                    direction="out"
                    caller-allocates="1"
                    transfer-ownership="none">
-          <doc xml:space="preserve">the value to set</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="143">the value to set</doc>
           <type name="GObject.Value" c:type="GValue*"/>
         </parameter>
         <parameter name="value_str" transfer-ownership="none">
-          <doc xml:space="preserve">the string to get the value from</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="144">the string to get the value from</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
       </parameters>
     </function>
     <function name="util_uint64_scale" c:identifier="gst_util_uint64_scale">
-      <doc xml:space="preserve">Scale @val by the rational number @num / @denom, avoiding overflows and
+      <doc xml:space="preserve"
+           filename="gst/gstutils.c"
+           line="646">Scale @val by the rational number @num / @denom, avoiding overflows and
 underflows and without loss of precision.
 
 This function can potentially be very slow if val and num are both
 greater than G_MAXUINT32.</doc>
+      <source-position filename="gst/gstutils.h" line="85"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">@val * @num / @denom.  In the case of an overflow, this
+        <doc xml:space="preserve"
+             filename="gst/gstutils.c"
+             line="658">@val * @num / @denom.  In the case of an overflow, this
 function returns G_MAXUINT64.  If the result is not exactly
 representable as an integer it is truncated.  See also
 gst_util_uint64_scale_round(), gst_util_uint64_scale_ceil(),
@@ -48874,28 +76411,39 @@ gst_util_uint64_scale_int_ceil().</doc>
       </return-value>
       <parameters>
         <parameter name="val" transfer-ownership="none">
-          <doc xml:space="preserve">the number to scale</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="648">the number to scale</doc>
           <type name="guint64" c:type="guint64"/>
         </parameter>
         <parameter name="num" transfer-ownership="none">
-          <doc xml:space="preserve">the numerator of the scale ratio</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="649">the numerator of the scale ratio</doc>
           <type name="guint64" c:type="guint64"/>
         </parameter>
         <parameter name="denom" transfer-ownership="none">
-          <doc xml:space="preserve">the denominator of the scale ratio</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="650">the denominator of the scale ratio</doc>
           <type name="guint64" c:type="guint64"/>
         </parameter>
       </parameters>
     </function>
     <function name="util_uint64_scale_ceil"
               c:identifier="gst_util_uint64_scale_ceil">
-      <doc xml:space="preserve">Scale @val by the rational number @num / @denom, avoiding overflows and
+      <doc xml:space="preserve"
+           filename="gst/gstutils.c"
+           line="696">Scale @val by the rational number @num / @denom, avoiding overflows and
 underflows and without loss of precision.
 
 This function can potentially be very slow if val and num are both
 greater than G_MAXUINT32.</doc>
+      <source-position filename="gst/gstutils.h" line="91"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">@val * @num / @denom.  In the case of an overflow, this
+        <doc xml:space="preserve"
+             filename="gst/gstutils.c"
+             line="708">@val * @num / @denom.  In the case of an overflow, this
 function returns G_MAXUINT64.  If the result is not exactly
 representable as an integer, it is rounded up.  See also
 gst_util_uint64_scale(), gst_util_uint64_scale_round(),
@@ -48905,26 +76453,37 @@ gst_util_uint64_scale_int_ceil().</doc>
       </return-value>
       <parameters>
         <parameter name="val" transfer-ownership="none">
-          <doc xml:space="preserve">the number to scale</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="698">the number to scale</doc>
           <type name="guint64" c:type="guint64"/>
         </parameter>
         <parameter name="num" transfer-ownership="none">
-          <doc xml:space="preserve">the numerator of the scale ratio</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="699">the numerator of the scale ratio</doc>
           <type name="guint64" c:type="guint64"/>
         </parameter>
         <parameter name="denom" transfer-ownership="none">
-          <doc xml:space="preserve">the denominator of the scale ratio</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="700">the denominator of the scale ratio</doc>
           <type name="guint64" c:type="guint64"/>
         </parameter>
       </parameters>
     </function>
     <function name="util_uint64_scale_int"
               c:identifier="gst_util_uint64_scale_int">
-      <doc xml:space="preserve">Scale @val by the rational number @num / @denom, avoiding overflows and
+      <doc xml:space="preserve"
+           filename="gst/gstutils.c"
+           line="755">Scale @val by the rational number @num / @denom, avoiding overflows and
 underflows and without loss of precision.  @num must be non-negative and
 @denom must be positive.</doc>
+      <source-position filename="gst/gstutils.h" line="94"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">@val * @num / @denom.  In the case of an overflow, this
+        <doc xml:space="preserve"
+             filename="gst/gstutils.c"
+             line="765">@val * @num / @denom.  In the case of an overflow, this
 function returns G_MAXUINT64.  If the result is not exactly
 representable as an integer, it is truncated.  See also
 gst_util_uint64_scale_int_round(), gst_util_uint64_scale_int_ceil(),
@@ -48934,26 +76493,37 @@ gst_util_uint64_scale_ceil().</doc>
       </return-value>
       <parameters>
         <parameter name="val" transfer-ownership="none">
-          <doc xml:space="preserve">guint64 (such as a #GstClockTime) to scale.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="757">guint64 (such as a #GstClockTime) to scale.</doc>
           <type name="guint64" c:type="guint64"/>
         </parameter>
         <parameter name="num" transfer-ownership="none">
-          <doc xml:space="preserve">numerator of the scale factor.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="758">numerator of the scale factor.</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
         <parameter name="denom" transfer-ownership="none">
-          <doc xml:space="preserve">denominator of the scale factor.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="759">denominator of the scale factor.</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
       </parameters>
     </function>
     <function name="util_uint64_scale_int_ceil"
               c:identifier="gst_util_uint64_scale_int_ceil">
-      <doc xml:space="preserve">Scale @val by the rational number @num / @denom, avoiding overflows and
+      <doc xml:space="preserve"
+           filename="gst/gstutils.c"
+           line="803">Scale @val by the rational number @num / @denom, avoiding overflows and
 underflows and without loss of precision.  @num must be non-negative and
 @denom must be positive.</doc>
+      <source-position filename="gst/gstutils.h" line="100"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">@val * @num / @denom.  In the case of an overflow, this
+        <doc xml:space="preserve"
+             filename="gst/gstutils.c"
+             line="813">@val * @num / @denom.  In the case of an overflow, this
 function returns G_MAXUINT64.  If the result is not exactly
 representable as an integer, it is rounded up.  See also
 gst_util_uint64_scale_int(), gst_util_uint64_scale_int_round(),
@@ -48963,26 +76533,37 @@ gst_util_uint64_scale_ceil().</doc>
       </return-value>
       <parameters>
         <parameter name="val" transfer-ownership="none">
-          <doc xml:space="preserve">guint64 (such as a #GstClockTime) to scale.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="805">guint64 (such as a #GstClockTime) to scale.</doc>
           <type name="guint64" c:type="guint64"/>
         </parameter>
         <parameter name="num" transfer-ownership="none">
-          <doc xml:space="preserve">numerator of the scale factor.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="806">numerator of the scale factor.</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
         <parameter name="denom" transfer-ownership="none">
-          <doc xml:space="preserve">denominator of the scale factor.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="807">denominator of the scale factor.</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
       </parameters>
     </function>
     <function name="util_uint64_scale_int_round"
               c:identifier="gst_util_uint64_scale_int_round">
-      <doc xml:space="preserve">Scale @val by the rational number @num / @denom, avoiding overflows and
+      <doc xml:space="preserve"
+           filename="gst/gstutils.c"
+           line="778">Scale @val by the rational number @num / @denom, avoiding overflows and
 underflows and without loss of precision.  @num must be non-negative and
 @denom must be positive.</doc>
+      <source-position filename="gst/gstutils.h" line="97"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">@val * @num / @denom.  In the case of an overflow, this
+        <doc xml:space="preserve"
+             filename="gst/gstutils.c"
+             line="788">@val * @num / @denom.  In the case of an overflow, this
 function returns G_MAXUINT64.  If the result is not exactly
 representable as an integer, it is rounded to the nearest integer
 (half-way cases are rounded up).  See also gst_util_uint64_scale_int(),
@@ -48992,28 +76573,39 @@ gst_util_uint64_scale_round(), gst_util_uint64_scale_ceil().</doc>
       </return-value>
       <parameters>
         <parameter name="val" transfer-ownership="none">
-          <doc xml:space="preserve">guint64 (such as a #GstClockTime) to scale.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="780">guint64 (such as a #GstClockTime) to scale.</doc>
           <type name="guint64" c:type="guint64"/>
         </parameter>
         <parameter name="num" transfer-ownership="none">
-          <doc xml:space="preserve">numerator of the scale factor.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="781">numerator of the scale factor.</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
         <parameter name="denom" transfer-ownership="none">
-          <doc xml:space="preserve">denominator of the scale factor.</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="782">denominator of the scale factor.</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
       </parameters>
     </function>
     <function name="util_uint64_scale_round"
               c:identifier="gst_util_uint64_scale_round">
-      <doc xml:space="preserve">Scale @val by the rational number @num / @denom, avoiding overflows and
+      <doc xml:space="preserve"
+           filename="gst/gstutils.c"
+           line="671">Scale @val by the rational number @num / @denom, avoiding overflows and
 underflows and without loss of precision.
 
 This function can potentially be very slow if val and num are both
 greater than G_MAXUINT32.</doc>
+      <source-position filename="gst/gstutils.h" line="88"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">@val * @num / @denom.  In the case of an overflow, this
+        <doc xml:space="preserve"
+             filename="gst/gstutils.c"
+             line="683">@val * @num / @denom.  In the case of an overflow, this
 function returns G_MAXUINT64.  If the result is not exactly
 representable as an integer, it is rounded to the nearest integer
 (half-way cases are rounded up).  See also gst_util_uint64_scale(),
@@ -49023,123 +76615,179 @@ gst_util_uint64_scale_int_round(), gst_util_uint64_scale_int_ceil().</doc>
       </return-value>
       <parameters>
         <parameter name="val" transfer-ownership="none">
-          <doc xml:space="preserve">the number to scale</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="673">the number to scale</doc>
           <type name="guint64" c:type="guint64"/>
         </parameter>
         <parameter name="num" transfer-ownership="none">
-          <doc xml:space="preserve">the numerator of the scale ratio</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="674">the numerator of the scale ratio</doc>
           <type name="guint64" c:type="guint64"/>
         </parameter>
         <parameter name="denom" transfer-ownership="none">
-          <doc xml:space="preserve">the denominator of the scale ratio</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstutils.c"
+               line="675">the denominator of the scale ratio</doc>
           <type name="guint64" c:type="guint64"/>
         </parameter>
       </parameters>
     </function>
     <function name="value_can_compare" c:identifier="gst_value_can_compare">
-      <doc xml:space="preserve">Determines if @value1 and @value2 can be compared.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.c"
+           line="5798">Determines if @value1 and @value2 can be compared.</doc>
+      <source-position filename="gst/gstvalue.h" line="736"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE if the values can be compared</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstvalue.c"
+             line="5805">%TRUE if the values can be compared</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="value1" transfer-ownership="none">
-          <doc xml:space="preserve">a value to compare</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="5800">a value to compare</doc>
           <type name="GObject.Value" c:type="const GValue*"/>
         </parameter>
         <parameter name="value2" transfer-ownership="none">
-          <doc xml:space="preserve">another value to compare</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="5801">another value to compare</doc>
           <type name="GObject.Value" c:type="const GValue*"/>
         </parameter>
       </parameters>
     </function>
     <function name="value_can_intersect"
               c:identifier="gst_value_can_intersect">
-      <doc xml:space="preserve">Determines if intersecting two values will produce a valid result.
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.c"
+           line="6080">Determines if intersecting two values will produce a valid result.
 Two values will produce a valid intersection if they have the same
 type.</doc>
+      <source-position filename="gst/gstvalue.h" line="759"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE if the values can intersect</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstvalue.c"
+             line="6089">%TRUE if the values can intersect</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="value1" transfer-ownership="none">
-          <doc xml:space="preserve">a value to intersect</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="6082">a value to intersect</doc>
           <type name="GObject.Value" c:type="const GValue*"/>
         </parameter>
         <parameter name="value2" transfer-ownership="none">
-          <doc xml:space="preserve">another value to intersect</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="6083">another value to intersect</doc>
           <type name="GObject.Value" c:type="const GValue*"/>
         </parameter>
       </parameters>
     </function>
     <function name="value_can_subtract" c:identifier="gst_value_can_subtract">
-      <doc xml:space="preserve">Checks if it's possible to subtract @subtrahend from @minuend.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.c"
+           line="6320">Checks if it's possible to subtract @subtrahend from @minuend.</doc>
+      <source-position filename="gst/gstvalue.h" line="769"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE if a subtraction is possible</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstvalue.c"
+             line="6327">%TRUE if a subtraction is possible</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="minuend" transfer-ownership="none">
-          <doc xml:space="preserve">the value to subtract from</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="6322">the value to subtract from</doc>
           <type name="GObject.Value" c:type="const GValue*"/>
         </parameter>
         <parameter name="subtrahend" transfer-ownership="none">
-          <doc xml:space="preserve">the value to subtract</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="6323">the value to subtract</doc>
           <type name="GObject.Value" c:type="const GValue*"/>
         </parameter>
       </parameters>
     </function>
     <function name="value_can_union" c:identifier="gst_value_can_union">
-      <doc xml:space="preserve">Determines if @value1 and @value2 can be non-trivially unioned.
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.c"
+           line="5973">Determines if @value1 and @value2 can be non-trivially unioned.
 Any two values can be trivially unioned by adding both of them
 to a GstValueList.  However, certain types have the possibility
 to be unioned in a simpler way.  For example, an integer range
 and an integer can be unioned if the integer is a subset of the
 integer range.  If there is the possibility that two values can
 be unioned, this function returns %TRUE.</doc>
+      <source-position filename="gst/gstvalue.h" line="749"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE if there is a function allowing the two values to
+        <doc xml:space="preserve"
+             filename="gst/gstvalue.c"
+             line="5986">%TRUE if there is a function allowing the two values to
 be unioned.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="value1" transfer-ownership="none">
-          <doc xml:space="preserve">a value to union</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="5975">a value to union</doc>
           <type name="GObject.Value" c:type="const GValue*"/>
         </parameter>
         <parameter name="value2" transfer-ownership="none">
-          <doc xml:space="preserve">another value to union</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="5976">another value to union</doc>
           <type name="GObject.Value" c:type="const GValue*"/>
         </parameter>
       </parameters>
     </function>
     <function name="value_compare" c:identifier="gst_value_compare">
-      <doc xml:space="preserve">Compares @value1 and @value2.  If @value1 and @value2 cannot be
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.c"
+           line="5892">Compares @value1 and @value2.  If @value1 and @value2 cannot be
 compared, the function returns GST_VALUE_UNORDERED.  Otherwise,
 if @value1 is greater than @value2, GST_VALUE_GREATER_THAN is returned.
 If @value1 is less than @value2, GST_VALUE_LESS_THAN is returned.
 If the values are equal, GST_VALUE_EQUAL is returned.</doc>
+      <source-position filename="gst/gstvalue.h" line="733"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">comparison result</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstvalue.c"
+             line="5903">comparison result</doc>
         <type name="gint" c:type="gint"/>
       </return-value>
       <parameters>
         <parameter name="value1" transfer-ownership="none">
-          <doc xml:space="preserve">a value to compare</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="5894">a value to compare</doc>
           <type name="GObject.Value" c:type="const GValue*"/>
         </parameter>
         <parameter name="value2" transfer-ownership="none">
-          <doc xml:space="preserve">another value to compare</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="5895">another value to compare</doc>
           <type name="GObject.Value" c:type="const GValue*"/>
         </parameter>
       </parameters>
     </function>
     <function name="value_deserialize" c:identifier="gst_value_deserialize">
-      <doc xml:space="preserve">Tries to deserialize a string into the type specified by the given GValue.
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.c"
+           line="6506">Tries to deserialize a string into the type specified by the given GValue.
 If the operation succeeds, %TRUE is returned, %FALSE otherwise.</doc>
+      <source-position filename="gst/gstvalue.h" line="538"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE on success</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstvalue.c"
+             line="6515">%TRUE on success</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
@@ -49147,147 +76795,234 @@ If the operation succeeds, %TRUE is returned, %FALSE otherwise.</doc>
                    direction="out"
                    caller-allocates="1"
                    transfer-ownership="none">
-          <doc xml:space="preserve">#GValue to fill with contents of
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="6508">#GValue to fill with contents of
     deserialization</doc>
           <type name="GObject.Value" c:type="GValue*"/>
         </parameter>
         <parameter name="src" transfer-ownership="none">
-          <doc xml:space="preserve">string to deserialize</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="6510">string to deserialize</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
       </parameters>
     </function>
     <function name="value_fixate" c:identifier="gst_value_fixate">
-      <doc xml:space="preserve">Fixate @src into a new value @dest.
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.c"
+           line="6602">Fixate @src into a new value @dest.
 For ranges, the first element is taken. For lists and arrays, the
 first item is fixated and returned.
 If @src is already fixed, this function returns %FALSE.</doc>
+      <source-position filename="gst/gstvalue.h" line="778"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE if @dest contains a fixated version of @src.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstvalue.c"
+             line="6612">%TRUE if @dest contains a fixated version of @src.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="dest" transfer-ownership="none">
-          <doc xml:space="preserve">the #GValue destination</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="6604">the #GValue destination</doc>
           <type name="GObject.Value" c:type="GValue*"/>
         </parameter>
         <parameter name="src" transfer-ownership="none">
-          <doc xml:space="preserve">the #GValue to fixate</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="6605">the #GValue to fixate</doc>
           <type name="GObject.Value" c:type="const GValue*"/>
         </parameter>
       </parameters>
     </function>
     <function name="value_fraction_multiply"
               c:identifier="gst_value_fraction_multiply">
-      <doc xml:space="preserve">Multiplies the two #GValue items containing a #GST_TYPE_FRACTION and sets
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.c"
+           line="6828">Multiplies the two #GValue items containing a #GST_TYPE_FRACTION and sets
 @product to the product of the two fractions.</doc>
+      <source-position filename="gst/gstvalue.h" line="685"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%FALSE in case of an error (like integer overflow), %TRUE otherwise.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstvalue.c"
+             line="6837">%FALSE in case of an error (like integer overflow), %TRUE otherwise.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="product" transfer-ownership="none">
-          <doc xml:space="preserve">a GValue initialized to #GST_TYPE_FRACTION</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="6830">a GValue initialized to #GST_TYPE_FRACTION</doc>
           <type name="GObject.Value" c:type="GValue*"/>
         </parameter>
         <parameter name="factor1" transfer-ownership="none">
-          <doc xml:space="preserve">a GValue initialized to #GST_TYPE_FRACTION</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="6831">a GValue initialized to #GST_TYPE_FRACTION</doc>
           <type name="GObject.Value" c:type="const GValue*"/>
         </parameter>
         <parameter name="factor2" transfer-ownership="none">
-          <doc xml:space="preserve">a GValue initialized to #GST_TYPE_FRACTION</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="6832">a GValue initialized to #GST_TYPE_FRACTION</doc>
           <type name="GObject.Value" c:type="const GValue*"/>
         </parameter>
       </parameters>
     </function>
     <function name="value_fraction_subtract"
               c:identifier="gst_value_fraction_subtract">
-      <doc xml:space="preserve">Subtracts the @subtrahend from the @minuend and sets @dest to the result.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.c"
+           line="6863">Subtracts the @subtrahend from the @minuend and sets @dest to the result.</doc>
+      <source-position filename="gst/gstvalue.h" line="689"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%FALSE in case of an error (like integer overflow), %TRUE otherwise.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstvalue.c"
+             line="6871">%FALSE in case of an error (like integer overflow), %TRUE otherwise.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="dest" transfer-ownership="none">
-          <doc xml:space="preserve">a GValue initialized to #GST_TYPE_FRACTION</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="6865">a GValue initialized to #GST_TYPE_FRACTION</doc>
           <type name="GObject.Value" c:type="GValue*"/>
         </parameter>
         <parameter name="minuend" transfer-ownership="none">
-          <doc xml:space="preserve">a GValue initialized to #GST_TYPE_FRACTION</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="6866">a GValue initialized to #GST_TYPE_FRACTION</doc>
           <type name="GObject.Value" c:type="const GValue*"/>
         </parameter>
         <parameter name="subtrahend" transfer-ownership="none">
-          <doc xml:space="preserve">a GValue initialized to #GST_TYPE_FRACTION</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="6867">a GValue initialized to #GST_TYPE_FRACTION</doc>
           <type name="GObject.Value" c:type="const GValue*"/>
         </parameter>
       </parameters>
     </function>
     <function name="value_get_bitmask" c:identifier="gst_value_get_bitmask">
-      <doc xml:space="preserve">Gets the bitmask specified by @value.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.c"
+           line="7239">Gets the bitmask specified by @value.</doc>
+      <source-position filename="gst/gstvalue.h" line="714"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">the bitmask.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstvalue.c"
+             line="7245">the bitmask.</doc>
         <type name="guint64" c:type="guint64"/>
       </return-value>
       <parameters>
         <parameter name="value" transfer-ownership="none">
-          <doc xml:space="preserve">a GValue initialized to #GST_TYPE_BITMASK</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="7241">a GValue initialized to #GST_TYPE_BITMASK</doc>
           <type name="GObject.Value" c:type="const GValue*"/>
         </parameter>
       </parameters>
     </function>
+    <function-macro name="value_get_buffer"
+                    c:identifier="gst_value_get_buffer"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstbuffer.h"
+           line="683">Receives a #GstBuffer as the value of @v. Does not return a reference to
+the buffer, so the pointer is only valid for as long as the caller owns
+a reference to @v.</doc>
+      <source-position filename="gst/gstbuffer.h" line="692"/>
+      <parameters>
+        <parameter name="v">
+          <doc xml:space="preserve"
+               filename="gst/gstbuffer.h"
+               line="685">a #GValue to query</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
     <function name="value_get_caps" c:identifier="gst_value_get_caps">
-      <doc xml:space="preserve">Gets the contents of @value. The reference count of the returned
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.c"
+           line="2195">Gets the contents of @value. The reference count of the returned
 #GstCaps will not be modified, therefore the caller must take one
 before getting rid of the @value.</doc>
+      <source-position filename="gst/gstvalue.h" line="646"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">the contents of @value</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstvalue.c"
+             line="2203">the contents of @value</doc>
         <type name="Caps" c:type="const GstCaps*"/>
       </return-value>
       <parameters>
         <parameter name="value" transfer-ownership="none">
-          <doc xml:space="preserve">a GValue initialized to GST_TYPE_CAPS</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="2197">a GValue initialized to GST_TYPE_CAPS</doc>
           <type name="GObject.Value" c:type="const GValue*"/>
         </parameter>
       </parameters>
     </function>
     <function name="value_get_caps_features"
               c:identifier="gst_value_get_caps_features">
-      <doc xml:space="preserve">Gets the contents of @value.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.c"
+           line="3010">Gets the contents of @value.</doc>
+      <source-position filename="gst/gstvalue.h" line="666"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">the contents of @value</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstvalue.c"
+             line="3016">the contents of @value</doc>
         <type name="CapsFeatures" c:type="const GstCapsFeatures*"/>
       </return-value>
       <parameters>
         <parameter name="value" transfer-ownership="none">
-          <doc xml:space="preserve">a GValue initialized to GST_TYPE_CAPS_FEATURES</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="3012">a GValue initialized to GST_TYPE_CAPS_FEATURES</doc>
           <type name="GObject.Value" c:type="const GValue*"/>
         </parameter>
       </parameters>
     </function>
     <function name="value_get_double_range_max"
               c:identifier="gst_value_get_double_range_max">
-      <doc xml:space="preserve">Gets the maximum of the range specified by @value.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.c"
+           line="1829">Gets the maximum of the range specified by @value.</doc>
+      <source-position filename="gst/gstvalue.h" line="641"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">the maximum of the range</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstvalue.c"
+             line="1835">the maximum of the range</doc>
         <type name="gdouble" c:type="gdouble"/>
       </return-value>
       <parameters>
         <parameter name="value" transfer-ownership="none">
-          <doc xml:space="preserve">a GValue initialized to GST_TYPE_DOUBLE_RANGE</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="1831">a GValue initialized to GST_TYPE_DOUBLE_RANGE</doc>
           <type name="GObject.Value" c:type="const GValue*"/>
         </parameter>
       </parameters>
     </function>
     <function name="value_get_double_range_min"
               c:identifier="gst_value_get_double_range_min">
-      <doc xml:space="preserve">Gets the minimum of the range specified by @value.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.c"
+           line="1813">Gets the minimum of the range specified by @value.</doc>
+      <source-position filename="gst/gstvalue.h" line="638"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">the minimum of the range</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstvalue.c"
+             line="1819">the minimum of the range</doc>
         <type name="gdouble" c:type="gdouble"/>
       </return-value>
       <parameters>
         <parameter name="value" transfer-ownership="none">
-          <doc xml:space="preserve">a GValue initialized to GST_TYPE_DOUBLE_RANGE</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="1815">a GValue initialized to GST_TYPE_DOUBLE_RANGE</doc>
           <type name="GObject.Value" c:type="const GValue*"/>
         </parameter>
       </parameters>
@@ -49295,14 +77030,21 @@ before getting rid of the @value.</doc>
     <function name="value_get_flagset_flags"
               c:identifier="gst_value_get_flagset_flags"
               version="1.6">
-      <doc xml:space="preserve">Retrieve the flags field of a GstFlagSet @value.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.c"
+           line="7398">Retrieve the flags field of a GstFlagSet @value.</doc>
+      <source-position filename="gst/gstvalue.h" line="725"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">the flags field of the flagset instance.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstvalue.c"
+             line="7404">the flags field of the flagset instance.</doc>
         <type name="guint" c:type="guint"/>
       </return-value>
       <parameters>
         <parameter name="value" transfer-ownership="none">
-          <doc xml:space="preserve">a GValue initialized to #GST_TYPE_FLAG_SET</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="7400">a GValue initialized to #GST_TYPE_FLAG_SET</doc>
           <type name="GObject.Value" c:type="const GValue*"/>
         </parameter>
       </parameters>
@@ -49310,176 +77052,280 @@ before getting rid of the @value.</doc>
     <function name="value_get_flagset_mask"
               c:identifier="gst_value_get_flagset_mask"
               version="1.6">
-      <doc xml:space="preserve">Retrieve the mask field of a GstFlagSet @value.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.c"
+           line="7416">Retrieve the mask field of a GstFlagSet @value.</doc>
+      <source-position filename="gst/gstvalue.h" line="728"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">the mask field of the flagset instance.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstvalue.c"
+             line="7422">the mask field of the flagset instance.</doc>
         <type name="guint" c:type="guint"/>
       </return-value>
       <parameters>
         <parameter name="value" transfer-ownership="none">
-          <doc xml:space="preserve">a GValue initialized to #GST_TYPE_FLAG_SET</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="7418">a GValue initialized to #GST_TYPE_FLAG_SET</doc>
           <type name="GObject.Value" c:type="const GValue*"/>
         </parameter>
       </parameters>
     </function>
     <function name="value_get_fraction_denominator"
               c:identifier="gst_value_get_fraction_denominator">
-      <doc xml:space="preserve">Gets the denominator of the fraction specified by @value.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.c"
+           line="6812">Gets the denominator of the fraction specified by @value.</doc>
+      <source-position filename="gst/gstvalue.h" line="682"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">the denominator of the fraction.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstvalue.c"
+             line="6818">the denominator of the fraction.</doc>
         <type name="gint" c:type="gint"/>
       </return-value>
       <parameters>
         <parameter name="value" transfer-ownership="none">
-          <doc xml:space="preserve">a GValue initialized to #GST_TYPE_FRACTION</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="6814">a GValue initialized to #GST_TYPE_FRACTION</doc>
           <type name="GObject.Value" c:type="const GValue*"/>
         </parameter>
       </parameters>
     </function>
     <function name="value_get_fraction_numerator"
               c:identifier="gst_value_get_fraction_numerator">
-      <doc xml:space="preserve">Gets the numerator of the fraction specified by @value.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.c"
+           line="6796">Gets the numerator of the fraction specified by @value.</doc>
+      <source-position filename="gst/gstvalue.h" line="679"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">the numerator of the fraction.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstvalue.c"
+             line="6802">the numerator of the fraction.</doc>
         <type name="gint" c:type="gint"/>
       </return-value>
       <parameters>
         <parameter name="value" transfer-ownership="none">
-          <doc xml:space="preserve">a GValue initialized to #GST_TYPE_FRACTION</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="6798">a GValue initialized to #GST_TYPE_FRACTION</doc>
           <type name="GObject.Value" c:type="const GValue*"/>
         </parameter>
       </parameters>
     </function>
     <function name="value_get_fraction_range_max"
               c:identifier="gst_value_get_fraction_range_max">
-      <doc xml:space="preserve">Gets the maximum of the range specified by @value.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.c"
+           line="2093">Gets the maximum of the range specified by @value.</doc>
+      <source-position filename="gst/gstvalue.h" line="709"/>
       <return-value transfer-ownership="none" nullable="1">
-        <doc xml:space="preserve">the maximum of the range</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstvalue.c"
+             line="2099">the maximum of the range</doc>
         <type name="GObject.Value" c:type="const GValue*"/>
       </return-value>
       <parameters>
         <parameter name="value" transfer-ownership="none">
-          <doc xml:space="preserve">a GValue initialized to GST_TYPE_FRACTION_RANGE</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="2095">a GValue initialized to GST_TYPE_FRACTION_RANGE</doc>
           <type name="GObject.Value" c:type="const GValue*"/>
         </parameter>
       </parameters>
     </function>
     <function name="value_get_fraction_range_min"
               c:identifier="gst_value_get_fraction_range_min">
-      <doc xml:space="preserve">Gets the minimum of the range specified by @value.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.c"
+           line="2070">Gets the minimum of the range specified by @value.</doc>
+      <source-position filename="gst/gstvalue.h" line="706"/>
       <return-value transfer-ownership="none" nullable="1">
-        <doc xml:space="preserve">the minimum of the range</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstvalue.c"
+             line="2076">the minimum of the range</doc>
         <type name="GObject.Value" c:type="const GValue*"/>
       </return-value>
       <parameters>
         <parameter name="value" transfer-ownership="none">
-          <doc xml:space="preserve">a GValue initialized to GST_TYPE_FRACTION_RANGE</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="2072">a GValue initialized to GST_TYPE_FRACTION_RANGE</doc>
           <type name="GObject.Value" c:type="const GValue*"/>
         </parameter>
       </parameters>
     </function>
     <function name="value_get_int64_range_max"
               c:identifier="gst_value_get_int64_range_max">
-      <doc xml:space="preserve">Gets the maximum of the range specified by @value.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.c"
+           line="1650">Gets the maximum of the range specified by @value.</doc>
+      <source-position filename="gst/gstvalue.h" line="626"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">the maximum of the range</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstvalue.c"
+             line="1656">the maximum of the range</doc>
         <type name="gint64" c:type="gint64"/>
       </return-value>
       <parameters>
         <parameter name="value" transfer-ownership="none">
-          <doc xml:space="preserve">a GValue initialized to GST_TYPE_INT64_RANGE</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="1652">a GValue initialized to GST_TYPE_INT64_RANGE</doc>
           <type name="GObject.Value" c:type="const GValue*"/>
         </parameter>
       </parameters>
     </function>
     <function name="value_get_int64_range_min"
               c:identifier="gst_value_get_int64_range_min">
-      <doc xml:space="preserve">Gets the minimum of the range specified by @value.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.c"
+           line="1634">Gets the minimum of the range specified by @value.</doc>
+      <source-position filename="gst/gstvalue.h" line="623"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">the minimum of the range</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstvalue.c"
+             line="1640">the minimum of the range</doc>
         <type name="gint64" c:type="gint64"/>
       </return-value>
       <parameters>
         <parameter name="value" transfer-ownership="none">
-          <doc xml:space="preserve">a GValue initialized to GST_TYPE_INT64_RANGE</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="1636">a GValue initialized to GST_TYPE_INT64_RANGE</doc>
           <type name="GObject.Value" c:type="const GValue*"/>
         </parameter>
       </parameters>
     </function>
     <function name="value_get_int64_range_step"
               c:identifier="gst_value_get_int64_range_step">
-      <doc xml:space="preserve">Gets the step of the range specified by @value.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.c"
+           line="1666">Gets the step of the range specified by @value.</doc>
+      <source-position filename="gst/gstvalue.h" line="629"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">the step of the range</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstvalue.c"
+             line="1672">the step of the range</doc>
         <type name="gint64" c:type="gint64"/>
       </return-value>
       <parameters>
         <parameter name="value" transfer-ownership="none">
-          <doc xml:space="preserve">a GValue initialized to GST_TYPE_INT64_RANGE</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="1668">a GValue initialized to GST_TYPE_INT64_RANGE</doc>
           <type name="GObject.Value" c:type="const GValue*"/>
         </parameter>
       </parameters>
     </function>
     <function name="value_get_int_range_max"
               c:identifier="gst_value_get_int_range_max">
-      <doc xml:space="preserve">Gets the maximum of the range specified by @value.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.c"
+           line="1404">Gets the maximum of the range specified by @value.</doc>
+      <source-position filename="gst/gstvalue.h" line="606"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">the maximum of the range</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstvalue.c"
+             line="1410">the maximum of the range</doc>
         <type name="gint" c:type="gint"/>
       </return-value>
       <parameters>
         <parameter name="value" transfer-ownership="none">
-          <doc xml:space="preserve">a GValue initialized to GST_TYPE_INT_RANGE</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="1406">a GValue initialized to GST_TYPE_INT_RANGE</doc>
           <type name="GObject.Value" c:type="const GValue*"/>
         </parameter>
       </parameters>
     </function>
     <function name="value_get_int_range_min"
               c:identifier="gst_value_get_int_range_min">
-      <doc xml:space="preserve">Gets the minimum of the range specified by @value.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.c"
+           line="1388">Gets the minimum of the range specified by @value.</doc>
+      <source-position filename="gst/gstvalue.h" line="603"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">the minimum of the range</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstvalue.c"
+             line="1394">the minimum of the range</doc>
         <type name="gint" c:type="gint"/>
       </return-value>
       <parameters>
         <parameter name="value" transfer-ownership="none">
-          <doc xml:space="preserve">a GValue initialized to GST_TYPE_INT_RANGE</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="1390">a GValue initialized to GST_TYPE_INT_RANGE</doc>
           <type name="GObject.Value" c:type="const GValue*"/>
         </parameter>
       </parameters>
     </function>
     <function name="value_get_int_range_step"
               c:identifier="gst_value_get_int_range_step">
-      <doc xml:space="preserve">Gets the step of the range specified by @value.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.c"
+           line="1420">Gets the step of the range specified by @value.</doc>
+      <source-position filename="gst/gstvalue.h" line="609"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">the step of the range</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstvalue.c"
+             line="1426">the step of the range</doc>
         <type name="gint" c:type="gint"/>
       </return-value>
       <parameters>
         <parameter name="value" transfer-ownership="none">
-          <doc xml:space="preserve">a GValue initialized to GST_TYPE_INT_RANGE</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="1422">a GValue initialized to GST_TYPE_INT_RANGE</doc>
           <type name="GObject.Value" c:type="const GValue*"/>
         </parameter>
       </parameters>
     </function>
+    <function-macro name="value_get_sample"
+                    c:identifier="gst_value_get_sample"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstsample.h"
+           line="195">Receives a #GstSample as the value of @v. Does not return a reference to
+the sample, so the pointer is only valid for as long as the caller owns
+a reference to @v.</doc>
+      <source-position filename="gst/gstsample.h" line="205"/>
+      <parameters>
+        <parameter name="v">
+          <doc xml:space="preserve"
+               filename="gst/gstsample.h"
+               line="197">a #GValue to query</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
     <function name="value_get_structure"
               c:identifier="gst_value_get_structure">
-      <doc xml:space="preserve">Gets the contents of @value.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.c"
+           line="2922">Gets the contents of @value.</doc>
+      <source-position filename="gst/gstvalue.h" line="656"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">the contents of @value</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstvalue.c"
+             line="2928">the contents of @value</doc>
         <type name="Structure" c:type="const GstStructure*"/>
       </return-value>
       <parameters>
         <parameter name="value" transfer-ownership="none">
-          <doc xml:space="preserve">a GValue initialized to GST_TYPE_STRUCTURE</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="2924">a GValue initialized to GST_TYPE_STRUCTURE</doc>
           <type name="GObject.Value" c:type="const GValue*"/>
         </parameter>
       </parameters>
     </function>
     <function name="value_init_and_copy"
               c:identifier="gst_value_init_and_copy">
-      <doc xml:space="preserve">Initialises the target value to be of the same type as source and then copies
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.c"
+           line="6411">Initialises the target value to be of the same type as source and then copies
 the contents from source to target.</doc>
+      <source-position filename="gst/gstvalue.h" line="532"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
@@ -49488,22 +77334,31 @@ the contents from source to target.</doc>
                    direction="out"
                    caller-allocates="1"
                    transfer-ownership="none">
-          <doc xml:space="preserve">the target value</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="6413">the target value</doc>
           <type name="GObject.Value" c:type="GValue*"/>
         </parameter>
         <parameter name="src" transfer-ownership="none">
-          <doc xml:space="preserve">the source value</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="6414">the source value</doc>
           <type name="GObject.Value" c:type="const GValue*"/>
         </parameter>
       </parameters>
     </function>
     <function name="value_intersect" c:identifier="gst_value_intersect">
-      <doc xml:space="preserve">Calculates the intersection of two values.  If the values have
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.c"
+           line="6139">Calculates the intersection of two values.  If the values have
 a non-empty intersection, the value representing the intersection
 is placed in @dest, unless %NULL.  If the intersection is non-empty,
 @dest is not modified.</doc>
+      <source-position filename="gst/gstvalue.h" line="755"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE if the intersection is non-empty</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstvalue.c"
+             line="6153">%TRUE if the intersection is non-empty</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
@@ -49513,152 +77368,236 @@ is placed in @dest, unless %NULL.  If the intersection is non-empty,
                    transfer-ownership="full"
                    optional="1"
                    allow-none="1">
-          <doc xml:space="preserve">
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="6141">
   a uninitialized #GValue that will hold the calculated
   intersection value. May be %NULL if the resulting set if not
   needed.</doc>
           <type name="GObject.Value" c:type="GValue*"/>
         </parameter>
         <parameter name="value1" transfer-ownership="none">
-          <doc xml:space="preserve">a value to intersect</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="6145">a value to intersect</doc>
           <type name="GObject.Value" c:type="const GValue*"/>
         </parameter>
         <parameter name="value2" transfer-ownership="none">
-          <doc xml:space="preserve">another value to intersect</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="6146">another value to intersect</doc>
           <type name="GObject.Value" c:type="const GValue*"/>
         </parameter>
       </parameters>
     </function>
     <function name="value_is_fixed" c:identifier="gst_value_is_fixed">
-      <doc xml:space="preserve">Tests if the given GValue, if available in a GstStructure (or any other
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.c"
+           line="6554">Tests if the given GValue, if available in a GstStructure (or any other
 container) contains a "fixed" (which means: one value) or an "unfixed"
 (which means: multiple possible values, such as data lists or data
 ranges) value.</doc>
+      <source-position filename="gst/gstvalue.h" line="775"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">true if the value is "fixed".</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstvalue.c"
+             line="6563">true if the value is "fixed".</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="value" transfer-ownership="none">
-          <doc xml:space="preserve">the #GValue to check</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="6556">the #GValue to check</doc>
           <type name="GObject.Value" c:type="const GValue*"/>
         </parameter>
       </parameters>
     </function>
     <function name="value_is_subset" c:identifier="gst_value_is_subset">
-      <doc xml:space="preserve">Check that @value1 is a subset of @value2.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.c"
+           line="4391">Check that @value1 is a subset of @value2.</doc>
+      <source-position filename="gst/gstvalue.h" line="739"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE is @value1 is a subset of @value2</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstvalue.c"
+             line="4398">%TRUE is @value1 is a subset of @value2</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="value1" transfer-ownership="none">
-          <doc xml:space="preserve">a #GValue</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="4393">a #GValue</doc>
           <type name="GObject.Value" c:type="const GValue*"/>
         </parameter>
         <parameter name="value2" transfer-ownership="none">
-          <doc xml:space="preserve">a #GValue</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="4394">a #GValue</doc>
           <type name="GObject.Value" c:type="const GValue*"/>
         </parameter>
       </parameters>
     </function>
     <function name="value_register" c:identifier="gst_value_register">
-      <doc xml:space="preserve">Registers functions to perform calculations on #GValue items of a given
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.c"
+           line="6386">Registers functions to perform calculations on #GValue items of a given
 type. Each type can only be added once.</doc>
+      <source-position filename="gst/gstvalue.h" line="529"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="table" transfer-ownership="none">
-          <doc xml:space="preserve">structure containing functions to register</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="6388">structure containing functions to register</doc>
           <type name="ValueTable" c:type="const GstValueTable*"/>
         </parameter>
       </parameters>
     </function>
     <function name="value_serialize" c:identifier="gst_value_serialize">
-      <doc xml:space="preserve">tries to transform the given @value into a string representation that allows
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.c"
+           line="6454">tries to transform the given @value into a string representation that allows
 getting back this string later on using gst_value_deserialize().
 
 Free-function: g_free</doc>
+      <source-position filename="gst/gstvalue.h" line="535"/>
       <return-value transfer-ownership="full" nullable="1">
-        <doc xml:space="preserve">the serialization for @value
+        <doc xml:space="preserve"
+             filename="gst/gstvalue.c"
+             line="6463">the serialization for @value
 or %NULL if none exists</doc>
         <type name="utf8" c:type="gchar*"/>
       </return-value>
       <parameters>
         <parameter name="value" transfer-ownership="none">
-          <doc xml:space="preserve">a #GValue to serialize</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="6456">a #GValue to serialize</doc>
           <type name="GObject.Value" c:type="const GValue*"/>
         </parameter>
       </parameters>
     </function>
     <function name="value_set_bitmask" c:identifier="gst_value_set_bitmask">
-      <doc xml:space="preserve">Sets @value to the bitmask specified by @bitmask.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.c"
+           line="7224">Sets @value to the bitmask specified by @bitmask.</doc>
+      <source-position filename="gst/gstvalue.h" line="717"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="value" transfer-ownership="none">
-          <doc xml:space="preserve">a GValue initialized to #GST_TYPE_BITMASK</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="7226">a GValue initialized to #GST_TYPE_BITMASK</doc>
           <type name="GObject.Value" c:type="GValue*"/>
         </parameter>
         <parameter name="bitmask" transfer-ownership="none">
-          <doc xml:space="preserve">the bitmask</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="7227">the bitmask</doc>
           <type name="guint64" c:type="guint64"/>
         </parameter>
       </parameters>
     </function>
+    <function-macro name="value_set_buffer"
+                    c:identifier="gst_value_set_buffer"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstbuffer.h"
+           line="667">Sets @b as the value of @v.  Caller retains reference to buffer.</doc>
+      <source-position filename="gst/gstbuffer.h" line="673"/>
+      <parameters>
+        <parameter name="v">
+          <doc xml:space="preserve"
+               filename="gst/gstbuffer.h"
+               line="669">a #GValue to receive the data</doc>
+        </parameter>
+        <parameter name="b">
+          <doc xml:space="preserve"
+               filename="gst/gstbuffer.h"
+               line="670">a #GstBuffer to assign to the GstValue</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
     <function name="value_set_caps" c:identifier="gst_value_set_caps">
-      <doc xml:space="preserve">Sets the contents of @value to @caps. A reference to the
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.c"
+           line="2177">Sets the contents of @value to @caps. A reference to the
 provided @caps will be taken by the @value.</doc>
+      <source-position filename="gst/gstvalue.h" line="649"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="value" transfer-ownership="none">
-          <doc xml:space="preserve">a GValue initialized to GST_TYPE_CAPS</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="2179">a GValue initialized to GST_TYPE_CAPS</doc>
           <type name="GObject.Value" c:type="GValue*"/>
         </parameter>
         <parameter name="caps" transfer-ownership="none">
-          <doc xml:space="preserve">the caps to set the value to</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="2180">the caps to set the value to</doc>
           <type name="Caps" c:type="const GstCaps*"/>
         </parameter>
       </parameters>
     </function>
     <function name="value_set_caps_features"
               c:identifier="gst_value_set_caps_features">
-      <doc xml:space="preserve">Sets the contents of @value to @features.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.c"
+           line="2993">Sets the contents of @value to @features.</doc>
+      <source-position filename="gst/gstvalue.h" line="669"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="value" transfer-ownership="none">
-          <doc xml:space="preserve">a GValue initialized to GST_TYPE_CAPS_FEATURES</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="2995">a GValue initialized to GST_TYPE_CAPS_FEATURES</doc>
           <type name="GObject.Value" c:type="GValue*"/>
         </parameter>
         <parameter name="features" transfer-ownership="none">
-          <doc xml:space="preserve">the features to set the value to</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="2996">the features to set the value to</doc>
           <type name="CapsFeatures" c:type="const GstCapsFeatures*"/>
         </parameter>
       </parameters>
     </function>
     <function name="value_set_double_range"
               c:identifier="gst_value_set_double_range">
-      <doc xml:space="preserve">Sets @value to the range specified by @start and @end.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.c"
+           line="1795">Sets @value to the range specified by @start and @end.</doc>
+      <source-position filename="gst/gstvalue.h" line="634"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="value" transfer-ownership="none">
-          <doc xml:space="preserve">a GValue initialized to GST_TYPE_DOUBLE_RANGE</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="1797">a GValue initialized to GST_TYPE_DOUBLE_RANGE</doc>
           <type name="GObject.Value" c:type="GValue*"/>
         </parameter>
         <parameter name="start" transfer-ownership="none">
-          <doc xml:space="preserve">the start of the range</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="1798">the start of the range</doc>
           <type name="gdouble" c:type="gdouble"/>
         </parameter>
         <parameter name="end" transfer-ownership="none">
-          <doc xml:space="preserve">the end of the range</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="1799">the end of the range</doc>
           <type name="gdouble" c:type="gdouble"/>
         </parameter>
       </parameters>
@@ -49666,214 +77605,326 @@ provided @caps will be taken by the @value.</doc>
     <function name="value_set_flagset"
               c:identifier="gst_value_set_flagset"
               version="1.6">
-      <doc xml:space="preserve">Sets @value to the flags and mask values provided in @flags and @mask.
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.c"
+           line="7376">Sets @value to the flags and mask values provided in @flags and @mask.
 The @flags value indicates the values of flags, the @mask represents
 which bits in the flag value have been set, and which are "don't care"</doc>
+      <source-position filename="gst/gstvalue.h" line="722"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="value" transfer-ownership="none">
-          <doc xml:space="preserve">a GValue initialized to %GST_TYPE_FLAG_SET</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="7378">a GValue initialized to %GST_TYPE_FLAG_SET</doc>
           <type name="GObject.Value" c:type="GValue*"/>
         </parameter>
         <parameter name="flags" transfer-ownership="none">
-          <doc xml:space="preserve">The value of the flags set or unset</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="7379">The value of the flags set or unset</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
         <parameter name="mask" transfer-ownership="none">
-          <doc xml:space="preserve">The mask indicate which flags bits must match for comparisons</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="7380">The mask indicate which flags bits must match for comparisons</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
       </parameters>
     </function>
     <function name="value_set_fraction" c:identifier="gst_value_set_fraction">
-      <doc xml:space="preserve">Sets @value to the fraction specified by @numerator over @denominator.
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.c"
+           line="6757">Sets @value to the fraction specified by @numerator over @denominator.
 The fraction gets reduced to the smallest numerator and denominator,
 and if necessary the sign is moved to the numerator.</doc>
+      <source-position filename="gst/gstvalue.h" line="675"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="value" transfer-ownership="none">
-          <doc xml:space="preserve">a GValue initialized to #GST_TYPE_FRACTION</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="6759">a GValue initialized to #GST_TYPE_FRACTION</doc>
           <type name="GObject.Value" c:type="GValue*"/>
         </parameter>
         <parameter name="numerator" transfer-ownership="none">
-          <doc xml:space="preserve">the numerator of the fraction</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="6760">the numerator of the fraction</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
         <parameter name="denominator" transfer-ownership="none">
-          <doc xml:space="preserve">the denominator of the fraction</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="6761">the denominator of the fraction</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
       </parameters>
     </function>
     <function name="value_set_fraction_range"
               c:identifier="gst_value_set_fraction_range">
-      <doc xml:space="preserve">Sets @value to the range specified by @start and @end.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.c"
+           line="1995">Sets @value to the range specified by @start and @end.</doc>
+      <source-position filename="gst/gstvalue.h" line="696"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="value" transfer-ownership="none">
-          <doc xml:space="preserve">a GValue initialized to GST_TYPE_FRACTION_RANGE</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="1997">a GValue initialized to GST_TYPE_FRACTION_RANGE</doc>
           <type name="GObject.Value" c:type="GValue*"/>
         </parameter>
         <parameter name="start" transfer-ownership="none">
-          <doc xml:space="preserve">the start of the range (a GST_TYPE_FRACTION GValue)</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="1998">the start of the range (a GST_TYPE_FRACTION GValue)</doc>
           <type name="GObject.Value" c:type="const GValue*"/>
         </parameter>
         <parameter name="end" transfer-ownership="none">
-          <doc xml:space="preserve">the end of the range (a GST_TYPE_FRACTION GValue)</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="1999">the end of the range (a GST_TYPE_FRACTION GValue)</doc>
           <type name="GObject.Value" c:type="const GValue*"/>
         </parameter>
       </parameters>
     </function>
     <function name="value_set_fraction_range_full"
               c:identifier="gst_value_set_fraction_range_full">
-      <doc xml:space="preserve">Sets @value to the range specified by @numerator_start/@denominator_start
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.c"
+           line="2024">Sets @value to the range specified by @numerator_start/@denominator_start
 and @numerator_end/@denominator_end.</doc>
+      <source-position filename="gst/gstvalue.h" line="700"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="value" transfer-ownership="none">
-          <doc xml:space="preserve">a GValue initialized to GST_TYPE_FRACTION_RANGE</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="2026">a GValue initialized to GST_TYPE_FRACTION_RANGE</doc>
           <type name="GObject.Value" c:type="GValue*"/>
         </parameter>
         <parameter name="numerator_start" transfer-ownership="none">
-          <doc xml:space="preserve">the numerator start of the range</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="2027">the numerator start of the range</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
         <parameter name="denominator_start" transfer-ownership="none">
-          <doc xml:space="preserve">the denominator start of the range</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="2028">the denominator start of the range</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
         <parameter name="numerator_end" transfer-ownership="none">
-          <doc xml:space="preserve">the numerator end of the range</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="2029">the numerator end of the range</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
         <parameter name="denominator_end" transfer-ownership="none">
-          <doc xml:space="preserve">the denominator end of the range</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="2030">the denominator end of the range</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
       </parameters>
     </function>
     <function name="value_set_int64_range"
               c:identifier="gst_value_set_int64_range">
-      <doc xml:space="preserve">Sets @value to the range specified by @start and @end.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.c"
+           line="1620">Sets @value to the range specified by @start and @end.</doc>
+      <source-position filename="gst/gstvalue.h" line="614"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="value" transfer-ownership="none">
-          <doc xml:space="preserve">a GValue initialized to GST_TYPE_INT64_RANGE</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="1622">a GValue initialized to GST_TYPE_INT64_RANGE</doc>
           <type name="GObject.Value" c:type="GValue*"/>
         </parameter>
         <parameter name="start" transfer-ownership="none">
-          <doc xml:space="preserve">the start of the range</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="1623">the start of the range</doc>
           <type name="gint64" c:type="gint64"/>
         </parameter>
         <parameter name="end" transfer-ownership="none">
-          <doc xml:space="preserve">the end of the range</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="1624">the end of the range</doc>
           <type name="gint64" c:type="gint64"/>
         </parameter>
       </parameters>
     </function>
     <function name="value_set_int64_range_step"
               c:identifier="gst_value_set_int64_range_step">
-      <doc xml:space="preserve">Sets @value to the range specified by @start, @end and @step.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.c"
+           line="1596">Sets @value to the range specified by @start, @end and @step.</doc>
+      <source-position filename="gst/gstvalue.h" line="618"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="value" transfer-ownership="none">
-          <doc xml:space="preserve">a GValue initialized to GST_TYPE_INT64_RANGE</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="1598">a GValue initialized to GST_TYPE_INT64_RANGE</doc>
           <type name="GObject.Value" c:type="GValue*"/>
         </parameter>
         <parameter name="start" transfer-ownership="none">
-          <doc xml:space="preserve">the start of the range</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="1599">the start of the range</doc>
           <type name="gint64" c:type="gint64"/>
         </parameter>
         <parameter name="end" transfer-ownership="none">
-          <doc xml:space="preserve">the end of the range</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="1600">the end of the range</doc>
           <type name="gint64" c:type="gint64"/>
         </parameter>
         <parameter name="step" transfer-ownership="none">
-          <doc xml:space="preserve">the step of the range</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="1601">the step of the range</doc>
           <type name="gint64" c:type="gint64"/>
         </parameter>
       </parameters>
     </function>
     <function name="value_set_int_range"
               c:identifier="gst_value_set_int_range">
-      <doc xml:space="preserve">Sets @value to the range specified by @start and @end.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.c"
+           line="1374">Sets @value to the range specified by @start and @end.</doc>
+      <source-position filename="gst/gstvalue.h" line="594"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="value" transfer-ownership="none">
-          <doc xml:space="preserve">a GValue initialized to GST_TYPE_INT_RANGE</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="1376">a GValue initialized to GST_TYPE_INT_RANGE</doc>
           <type name="GObject.Value" c:type="GValue*"/>
         </parameter>
         <parameter name="start" transfer-ownership="none">
-          <doc xml:space="preserve">the start of the range</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="1377">the start of the range</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
         <parameter name="end" transfer-ownership="none">
-          <doc xml:space="preserve">the end of the range</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="1378">the end of the range</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
       </parameters>
     </function>
     <function name="value_set_int_range_step"
               c:identifier="gst_value_set_int_range_step">
-      <doc xml:space="preserve">Sets @value to the range specified by @start, @end and @step.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.c"
+           line="1348">Sets @value to the range specified by @start, @end and @step.</doc>
+      <source-position filename="gst/gstvalue.h" line="598"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="value" transfer-ownership="none">
-          <doc xml:space="preserve">a GValue initialized to GST_TYPE_INT_RANGE</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="1350">a GValue initialized to GST_TYPE_INT_RANGE</doc>
           <type name="GObject.Value" c:type="GValue*"/>
         </parameter>
         <parameter name="start" transfer-ownership="none">
-          <doc xml:space="preserve">the start of the range</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="1351">the start of the range</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
         <parameter name="end" transfer-ownership="none">
-          <doc xml:space="preserve">the end of the range</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="1352">the end of the range</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
         <parameter name="step" transfer-ownership="none">
-          <doc xml:space="preserve">the step of the range</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="1353">the step of the range</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
       </parameters>
     </function>
+    <function-macro name="value_set_sample"
+                    c:identifier="gst_value_set_sample"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstsample.h"
+           line="179">Sets @b as the value of @v.  Caller retains reference to sample.</doc>
+      <source-position filename="gst/gstsample.h" line="186"/>
+      <parameters>
+        <parameter name="v">
+          <doc xml:space="preserve"
+               filename="gst/gstsample.h"
+               line="181">a #GValue to receive the data</doc>
+        </parameter>
+        <parameter name="b">
+          <doc xml:space="preserve"
+               filename="gst/gstsample.h"
+               line="182">a #GstSample to assign to the GstValue</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
     <function name="value_set_structure"
               c:identifier="gst_value_set_structure">
-      <doc xml:space="preserve">Sets the contents of @value to @structure.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.c"
+           line="2905">Sets the contents of @value to @structure.</doc>
+      <source-position filename="gst/gstvalue.h" line="659"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="value" transfer-ownership="none">
-          <doc xml:space="preserve">a GValue initialized to GST_TYPE_STRUCTURE</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="2907">a GValue initialized to GST_TYPE_STRUCTURE</doc>
           <type name="GObject.Value" c:type="GValue*"/>
         </parameter>
         <parameter name="structure" transfer-ownership="none">
-          <doc xml:space="preserve">the structure to set the value to</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="2908">the structure to set the value to</doc>
           <type name="Structure" c:type="const GstStructure*"/>
         </parameter>
       </parameters>
     </function>
     <function name="value_subtract" c:identifier="gst_value_subtract">
-      <doc xml:space="preserve">Subtracts @subtrahend from @minuend and stores the result in @dest.
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.c"
+           line="6255">Subtracts @subtrahend from @minuend and stores the result in @dest.
 Note that this means subtraction as in sets, not as in mathematics.</doc>
+      <source-position filename="gst/gstvalue.h" line="765"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE if the subtraction is not empty</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstvalue.c"
+             line="6267">%TRUE if the subtraction is not empty</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
@@ -49883,26 +77934,77 @@ Note that this means subtraction as in sets, not as in mathematics.</doc>
                    transfer-ownership="none"
                    optional="1"
                    allow-none="1">
-          <doc xml:space="preserve">the destination value
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="6257">the destination value
     for the result if the subtraction is not empty. May be %NULL,
     in which case the resulting set will not be computed, which can
     give a fair speedup.</doc>
           <type name="GObject.Value" c:type="GValue*"/>
         </parameter>
         <parameter name="minuend" transfer-ownership="none">
-          <doc xml:space="preserve">the value to subtract from</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="6261">the value to subtract from</doc>
           <type name="GObject.Value" c:type="const GValue*"/>
         </parameter>
         <parameter name="subtrahend" transfer-ownership="none">
-          <doc xml:space="preserve">the value to subtract</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="6262">the value to subtract</doc>
           <type name="GObject.Value" c:type="const GValue*"/>
         </parameter>
       </parameters>
     </function>
+    <function-macro name="value_take_buffer"
+                    c:identifier="gst_value_take_buffer"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstbuffer.h"
+           line="675">Sets @b as the value of @v.  Caller gives away reference to buffer.</doc>
+      <source-position filename="gst/gstbuffer.h" line="681"/>
+      <parameters>
+        <parameter name="v">
+          <doc xml:space="preserve"
+               filename="gst/gstbuffer.h"
+               line="677">a #GValue to receive the data</doc>
+        </parameter>
+        <parameter name="b">
+          <doc xml:space="preserve"
+               filename="gst/gstbuffer.h"
+               line="678">a #GstBuffer to assign to the GstValue</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="value_take_sample"
+                    c:identifier="gst_value_take_sample"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst/gstsample.h"
+           line="187">Sets @b as the value of @v.  Caller gives away reference to sample.</doc>
+      <source-position filename="gst/gstsample.h" line="194"/>
+      <parameters>
+        <parameter name="v">
+          <doc xml:space="preserve"
+               filename="gst/gstsample.h"
+               line="189">a #GValue to receive the data</doc>
+        </parameter>
+        <parameter name="b">
+          <doc xml:space="preserve"
+               filename="gst/gstsample.h"
+               line="190">a #GstSample to assign to the GstValue</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
     <function name="value_union" c:identifier="gst_value_union">
-      <doc xml:space="preserve">Creates a GValue corresponding to the union of @value1 and @value2.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gstvalue.c"
+           line="6013">Creates a GValue corresponding to the union of @value1 and @value2.</doc>
+      <source-position filename="gst/gstvalue.h" line="745"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE if the union succeeded.</doc>
+        <doc xml:space="preserve"
+             filename="gst/gstvalue.c"
+             line="6021">%TRUE if the union succeeded.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
@@ -49910,21 +78012,30 @@ Note that this means subtraction as in sets, not as in mathematics.</doc>
                    direction="out"
                    caller-allocates="1"
                    transfer-ownership="none">
-          <doc xml:space="preserve">the destination value</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="6015">the destination value</doc>
           <type name="GObject.Value" c:type="GValue*"/>
         </parameter>
         <parameter name="value1" transfer-ownership="none">
-          <doc xml:space="preserve">a value to union</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="6016">a value to union</doc>
           <type name="GObject.Value" c:type="const GValue*"/>
         </parameter>
         <parameter name="value2" transfer-ownership="none">
-          <doc xml:space="preserve">another value to union</doc>
+          <doc xml:space="preserve"
+               filename="gst/gstvalue.c"
+               line="6017">another value to union</doc>
           <type name="GObject.Value" c:type="const GValue*"/>
         </parameter>
       </parameters>
     </function>
     <function name="version" c:identifier="gst_version">
-      <doc xml:space="preserve">Gets the version number of the GStreamer library.</doc>
+      <doc xml:space="preserve"
+           filename="gst/gst.c"
+           line="1243">Gets the version number of the GStreamer library.</doc>
+      <source-position filename="gst/gst.h" line="116"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
@@ -49933,37 +78044,50 @@ Note that this means subtraction as in sets, not as in mathematics.</doc>
                    direction="out"
                    caller-allocates="0"
                    transfer-ownership="full">
-          <doc xml:space="preserve">pointer to a guint to store the major version number</doc>
+          <doc xml:space="preserve"
+               filename="gst/gst.c"
+               line="1245">pointer to a guint to store the major version number</doc>
           <type name="guint" c:type="guint*"/>
         </parameter>
         <parameter name="minor"
                    direction="out"
                    caller-allocates="0"
                    transfer-ownership="full">
-          <doc xml:space="preserve">pointer to a guint to store the minor version number</doc>
+          <doc xml:space="preserve"
+               filename="gst/gst.c"
+               line="1246">pointer to a guint to store the minor version number</doc>
           <type name="guint" c:type="guint*"/>
         </parameter>
         <parameter name="micro"
                    direction="out"
                    caller-allocates="0"
                    transfer-ownership="full">
-          <doc xml:space="preserve">pointer to a guint to store the micro version number</doc>
+          <doc xml:space="preserve"
+               filename="gst/gst.c"
+               line="1247">pointer to a guint to store the micro version number</doc>
           <type name="guint" c:type="guint*"/>
         </parameter>
         <parameter name="nano"
                    direction="out"
                    caller-allocates="0"
                    transfer-ownership="full">
-          <doc xml:space="preserve">pointer to a guint to store the nano version number</doc>
+          <doc xml:space="preserve"
+               filename="gst/gst.c"
+               line="1248">pointer to a guint to store the nano version number</doc>
           <type name="guint" c:type="guint*"/>
         </parameter>
       </parameters>
     </function>
     <function name="version_string" c:identifier="gst_version_string">
-      <doc xml:space="preserve">This function returns a string that is useful for describing this version
+      <doc xml:space="preserve"
+           filename="gst/gst.c"
+           line="1266">This function returns a string that is useful for describing this version
 of GStreamer to the outside world: user agent strings, logging, ...</doc>
+      <source-position filename="gst/gst.h" line="119"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">a newly allocated string describing this version
+        <doc xml:space="preserve"
+             filename="gst/gst.c"
+             line="1272">a newly allocated string describing this version
     of GStreamer.</doc>
         <type name="utf8" c:type="gchar*"/>
       </return-value>
index 775b6d2..b8c04eb 100644 (file)
@@ -15,6 +15,60 @@ and/or use gtk-doc annotations.  -->
              shared-library="libgstapp-1.0.so.0"
              c:identifier-prefixes="Gst"
              c:symbol-prefixes="gst">
+    <function-macro name="APP_SINK"
+                    c:identifier="GST_APP_SINK"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/app/gstappsink.h" line="30"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="APP_SINK_CAST"
+                    c:identifier="GST_APP_SINK_CAST"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/app/gstappsink.h" line="38"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="APP_SINK_CLASS"
+                    c:identifier="GST_APP_SINK_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/app/gstappsink.h" line="32"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="APP_SRC"
+                    c:identifier="GST_APP_SRC"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/app/gstappsrc.h" line="31"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="APP_SRC_CAST"
+                    c:identifier="GST_APP_SRC_CAST"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/app/gstappsrc.h" line="39"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="APP_SRC_CLASS"
+                    c:identifier="GST_APP_SRC_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/app/gstappsrc.h" line="33"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
     <class name="AppSink"
            c:symbol-prefix="app_sink"
            c:type="GstAppSink"
@@ -22,7 +76,9 @@ and/or use gtk-doc annotations.  -->
            glib:type-name="GstAppSink"
            glib:get-type="gst_app_sink_get_type"
            glib:type-struct="AppSinkClass">
-      <doc xml:space="preserve">Appsink is a sink plugin that supports many different methods for making
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/app/gstappsink.c"
+           line="20">Appsink is a sink plugin that supports many different methods for making
 the application get a handle on the GStreamer data in a pipeline. Unlike
 most GStreamer elements, Appsink provides external API functions.
 
@@ -58,8 +114,10 @@ is stopped or in the EOS state. You can check for the EOS state with the
 
 The eos signal can also be used to be informed when the EOS state is reached
 to avoid polling.</doc>
+      <source-position filename="gst-libs/gst/app/gstappsink.h" line="103"/>
       <implements name="Gst.URIHandler"/>
       <virtual-method name="eos">
+        <source-position filename="gst-libs/gst/app/gstappsink.h" line="91"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
@@ -70,6 +128,7 @@ to avoid polling.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="new_preroll">
+        <source-position filename="gst-libs/gst/app/gstappsink.h" line="92"/>
         <return-value transfer-ownership="none">
           <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
@@ -80,6 +139,7 @@ to avoid polling.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="new_sample">
+        <source-position filename="gst-libs/gst/app/gstappsink.h" line="93"/>
         <return-value transfer-ownership="none">
           <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
@@ -90,7 +150,9 @@ to avoid polling.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="pull_preroll" invoker="pull_preroll">
-        <doc xml:space="preserve">Get the last preroll sample in @appsink. This was the sample that caused the
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/app/gstappsink.c"
+             line="1479">Get the last preroll sample in @appsink. This was the sample that caused the
 appsink to preroll in the PAUSED state.
 
 This function is typically used when dealing with a pipeline in the PAUSED
@@ -108,20 +170,27 @@ If an EOS event was received before any buffers, this function returns
 
 This function blocks until a preroll sample or EOS is received or the appsink
 element is set to the READY/NULL state.</doc>
+        <source-position filename="gst-libs/gst/app/gstappsink.h" line="96"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a #GstSample or NULL when the appsink is stopped or EOS.
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/app/gstappsink.c"
+               line="1502">a #GstSample or NULL when the appsink is stopped or EOS.
          Call gst_sample_unref() after usage.</doc>
           <type name="Gst.Sample" c:type="GstSample*"/>
         </return-value>
         <parameters>
           <instance-parameter name="appsink" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAppSink</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsink.c"
+                 line="1481">a #GstAppSink</doc>
             <type name="AppSink" c:type="GstAppSink*"/>
           </instance-parameter>
         </parameters>
       </virtual-method>
       <virtual-method name="pull_sample" invoker="pull_sample">
-        <doc xml:space="preserve">This function blocks until a sample or EOS becomes available or the appsink
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/app/gstappsink.c"
+             line="1511">This function blocks until a sample or EOS becomes available or the appsink
 element is set to the READY/NULL state.
 
 This function will only return samples when the appsink is in the PLAYING
@@ -132,14 +201,19 @@ especially when dealing with raw video frames.
 
 If an EOS event was received before any buffers, this function returns
 %NULL. Use gst_app_sink_is_eos () to check for the EOS condition.</doc>
+        <source-position filename="gst-libs/gst/app/gstappsink.h" line="97"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a #GstSample or NULL when the appsink is stopped or EOS.
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/app/gstappsink.c"
+               line="1527">a #GstSample or NULL when the appsink is stopped or EOS.
          Call gst_sample_unref() after usage.</doc>
           <type name="Gst.Sample" c:type="GstSample*"/>
         </return-value>
         <parameters>
           <instance-parameter name="appsink" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAppSink</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsink.c"
+                 line="1513">a #GstAppSink</doc>
             <type name="AppSink" c:type="GstAppSink*"/>
           </instance-parameter>
         </parameters>
@@ -147,7 +221,9 @@ If an EOS event was received before any buffers, this function returns
       <virtual-method name="try_pull_preroll"
                       invoker="try_pull_preroll"
                       version="1.10">
-        <doc xml:space="preserve">Get the last preroll sample in @appsink. This was the sample that caused the
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/app/gstappsink.c"
+             line="1536">Get the last preroll sample in @appsink. This was the sample that caused the
 appsink to preroll in the PAUSED state.
 
 This function is typically used when dealing with a pipeline in the PAUSED
@@ -166,18 +242,25 @@ condition.
 
 This function blocks until a preroll sample or EOS is received, the appsink
 element is set to the READY/NULL state, or the timeout expires.</doc>
+        <source-position filename="gst-libs/gst/app/gstappsink.h" line="98"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a #GstSample or NULL when the appsink is stopped or EOS or the timeout expires.
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/app/gstappsink.c"
+               line="1561">a #GstSample or NULL when the appsink is stopped or EOS or the timeout expires.
          Call gst_sample_unref() after usage.</doc>
           <type name="Gst.Sample" c:type="GstSample*"/>
         </return-value>
         <parameters>
           <instance-parameter name="appsink" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAppSink</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsink.c"
+                 line="1538">a #GstAppSink</doc>
             <type name="AppSink" c:type="GstAppSink*"/>
           </instance-parameter>
           <parameter name="timeout" transfer-ownership="none">
-            <doc xml:space="preserve">the maximum amount of time to wait for the preroll sample</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsink.c"
+                 line="1539">the maximum amount of time to wait for the preroll sample</doc>
             <type name="Gst.ClockTime" c:type="GstClockTime"/>
           </parameter>
         </parameters>
@@ -185,7 +268,9 @@ element is set to the READY/NULL state, or the timeout expires.</doc>
       <virtual-method name="try_pull_sample"
                       invoker="try_pull_sample"
                       version="1.10">
-        <doc xml:space="preserve">This function blocks until a sample or EOS becomes available or the appsink
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/app/gstappsink.c"
+             line="1639">This function blocks until a sample or EOS becomes available or the appsink
 element is set to the READY/NULL state or the timeout expires.
 
 This function will only return samples when the appsink is in the PLAYING
@@ -197,18 +282,25 @@ especially when dealing with raw video frames.
 If an EOS event was received before any buffers or the timeout expires,
 this function returns %NULL. Use gst_app_sink_is_eos () to check for the EOS
 condition.</doc>
+        <source-position filename="gst-libs/gst/app/gstappsink.h" line="99"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a #GstSample or NULL when the appsink is stopped or EOS or the timeout expires.
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/app/gstappsink.c"
+               line="1657">a #GstSample or NULL when the appsink is stopped or EOS or the timeout expires.
 Call gst_sample_unref() after usage.</doc>
           <type name="Gst.Sample" c:type="GstSample*"/>
         </return-value>
         <parameters>
           <instance-parameter name="appsink" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAppSink</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsink.c"
+                 line="1641">a #GstAppSink</doc>
             <type name="AppSink" c:type="GstAppSink*"/>
           </instance-parameter>
           <parameter name="timeout" transfer-ownership="none">
-            <doc xml:space="preserve">the maximum amount of time to wait for a sample</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsink.c"
+                 line="1642">the maximum amount of time to wait for a sample</doc>
             <type name="Gst.ClockTime" c:type="GstClockTime"/>
           </parameter>
         </parameters>
@@ -216,110 +308,161 @@ Call gst_sample_unref() after usage.</doc>
       <method name="get_buffer_list_support"
               c:identifier="gst_app_sink_get_buffer_list_support"
               version="1.12">
-        <doc xml:space="preserve">Check if @appsink supports buffer lists.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/app/gstappsink.c"
+             line="1399">Check if @appsink supports buffer lists.</doc>
+        <source-position filename="gst-libs/gst/app/gstappsink.h" line="139"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if @appsink supports buffer lists.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/app/gstappsink.c"
+               line="1405">%TRUE if @appsink supports buffer lists.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="appsink" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAppSink</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsink.c"
+                 line="1401">a #GstAppSink</doc>
             <type name="AppSink" c:type="GstAppSink*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_caps" c:identifier="gst_app_sink_get_caps">
-        <doc xml:space="preserve">Get the configured caps on @appsink.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/app/gstappsink.c"
+             line="1144">Get the configured caps on @appsink.</doc>
+        <source-position filename="gst-libs/gst/app/gstappsink.h" line="112"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the #GstCaps accepted by the sink. gst_caps_unref() after usage.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/app/gstappsink.c"
+               line="1150">the #GstCaps accepted by the sink. gst_caps_unref() after usage.</doc>
           <type name="Gst.Caps" c:type="GstCaps*"/>
         </return-value>
         <parameters>
           <instance-parameter name="appsink" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAppSink</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsink.c"
+                 line="1146">a #GstAppSink</doc>
             <type name="AppSink" c:type="GstAppSink*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_drop" c:identifier="gst_app_sink_get_drop">
-        <doc xml:space="preserve">Check if @appsink will drop old buffers when the maximum amount of queued
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/app/gstappsink.c"
+             line="1343">Check if @appsink will drop old buffers when the maximum amount of queued
 buffers is reached.</doc>
+        <source-position filename="gst-libs/gst/app/gstappsink.h" line="133"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if @appsink is dropping old buffers when the queue is
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/app/gstappsink.c"
+               line="1350">%TRUE if @appsink is dropping old buffers when the queue is
 filled.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="appsink" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAppSink</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsink.c"
+                 line="1345">a #GstAppSink</doc>
             <type name="AppSink" c:type="GstAppSink*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_emit_signals"
               c:identifier="gst_app_sink_get_emit_signals">
-        <doc xml:space="preserve">Check if appsink will emit the "new-preroll" and "new-sample" signals.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/app/gstappsink.c"
+             line="1239">Check if appsink will emit the "new-preroll" and "new-sample" signals.</doc>
+        <source-position filename="gst-libs/gst/app/gstappsink.h" line="121"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if @appsink is emiting the "new-preroll" and "new-sample"
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/app/gstappsink.c"
+               line="1245">%TRUE if @appsink is emitting the "new-preroll" and "new-sample"
 signals.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="appsink" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAppSink</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsink.c"
+                 line="1241">a #GstAppSink</doc>
             <type name="AppSink" c:type="GstAppSink*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_max_buffers"
               c:identifier="gst_app_sink_get_max_buffers">
-        <doc xml:space="preserve">Get the maximum amount of buffers that can be queued in @appsink.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/app/gstappsink.c"
+             line="1292">Get the maximum amount of buffers that can be queued in @appsink.</doc>
+        <source-position filename="gst-libs/gst/app/gstappsink.h" line="127"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The maximum amount of buffers that can be queued.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/app/gstappsink.c"
+               line="1298">The maximum amount of buffers that can be queued.</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="appsink" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAppSink</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsink.c"
+                 line="1294">a #GstAppSink</doc>
             <type name="AppSink" c:type="GstAppSink*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_wait_on_eos"
               c:identifier="gst_app_sink_get_wait_on_eos">
-        <doc xml:space="preserve">Check if @appsink will wait for all buffers to be consumed when an EOS is
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/app/gstappsink.c"
+             line="1452">Check if @appsink will wait for all buffers to be consumed when an EOS is
 received.</doc>
+        <source-position filename="gst-libs/gst/app/gstappsink.h" line="145"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if @appsink will wait for all buffers to be consumed when an
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/app/gstappsink.c"
+               line="1459">%TRUE if @appsink will wait for all buffers to be consumed when an
 EOS is received.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="appsink" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAppSink</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsink.c"
+                 line="1454">a #GstAppSink</doc>
             <type name="AppSink" c:type="GstAppSink*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="is_eos" c:identifier="gst_app_sink_is_eos">
-        <doc xml:space="preserve">Check if @appsink is EOS, which is when no more samples can be pulled because
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/app/gstappsink.c"
+             line="1171">Check if @appsink is EOS, which is when no more samples can be pulled because
 an EOS event was received.
 
 This function also returns %TRUE when the appsink is not in the PAUSED or
 PLAYING state.</doc>
+        <source-position filename="gst-libs/gst/app/gstappsink.h" line="115"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if no more samples can be pulled and the appsink is EOS.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/app/gstappsink.c"
+               line="1181">%TRUE if no more samples can be pulled and the appsink is EOS.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="appsink" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAppSink</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsink.c"
+                 line="1173">a #GstAppSink</doc>
             <type name="AppSink" c:type="GstAppSink*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="pull_preroll" c:identifier="gst_app_sink_pull_preroll">
-        <doc xml:space="preserve">Get the last preroll sample in @appsink. This was the sample that caused the
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/app/gstappsink.c"
+             line="1479">Get the last preroll sample in @appsink. This was the sample that caused the
 appsink to preroll in the PAUSED state.
 
 This function is typically used when dealing with a pipeline in the PAUSED
@@ -337,20 +480,27 @@ If an EOS event was received before any buffers, this function returns
 
 This function blocks until a preroll sample or EOS is received or the appsink
 element is set to the READY/NULL state.</doc>
+        <source-position filename="gst-libs/gst/app/gstappsink.h" line="148"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a #GstSample or NULL when the appsink is stopped or EOS.
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/app/gstappsink.c"
+               line="1502">a #GstSample or NULL when the appsink is stopped or EOS.
          Call gst_sample_unref() after usage.</doc>
           <type name="Gst.Sample" c:type="GstSample*"/>
         </return-value>
         <parameters>
           <instance-parameter name="appsink" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAppSink</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsink.c"
+                 line="1481">a #GstAppSink</doc>
             <type name="AppSink" c:type="GstAppSink*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="pull_sample" c:identifier="gst_app_sink_pull_sample">
-        <doc xml:space="preserve">This function blocks until a sample or EOS becomes available or the appsink
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/app/gstappsink.c"
+             line="1511">This function blocks until a sample or EOS becomes available or the appsink
 element is set to the READY/NULL state.
 
 This function will only return samples when the appsink is in the PLAYING
@@ -361,14 +511,19 @@ especially when dealing with raw video frames.
 
 If an EOS event was received before any buffers, this function returns
 %NULL. Use gst_app_sink_is_eos () to check for the EOS condition.</doc>
+        <source-position filename="gst-libs/gst/app/gstappsink.h" line="151"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a #GstSample or NULL when the appsink is stopped or EOS.
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/app/gstappsink.c"
+               line="1527">a #GstSample or NULL when the appsink is stopped or EOS.
          Call gst_sample_unref() after usage.</doc>
           <type name="Gst.Sample" c:type="GstSample*"/>
         </return-value>
         <parameters>
           <instance-parameter name="appsink" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAppSink</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsink.c"
+                 line="1513">a #GstAppSink</doc>
             <type name="AppSink" c:type="GstAppSink*"/>
           </instance-parameter>
         </parameters>
@@ -376,20 +531,27 @@ If an EOS event was received before any buffers, this function returns
       <method name="set_buffer_list_support"
               c:identifier="gst_app_sink_set_buffer_list_support"
               version="1.12">
-        <doc xml:space="preserve">Instruct @appsink to enable or disable buffer list support.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/app/gstappsink.c"
+             line="1370">Instruct @appsink to enable or disable buffer list support.
 
 For backwards-compatibility reasons applications need to opt in
 to indicate that they will be able to handle buffer lists.</doc>
+        <source-position filename="gst-libs/gst/app/gstappsink.h" line="136"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="appsink" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAppSink</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsink.c"
+                 line="1372">a #GstAppSink</doc>
             <type name="AppSink" c:type="GstAppSink*"/>
           </instance-parameter>
           <parameter name="enable_lists" transfer-ownership="none">
-            <doc xml:space="preserve">enable or disable buffer list support</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsink.c"
+                 line="1373">enable or disable buffer list support</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
@@ -397,124 +559,173 @@ to indicate that they will be able to handle buffer lists.</doc>
       <method name="set_callbacks"
               c:identifier="gst_app_sink_set_callbacks"
               introspectable="0">
-        <doc xml:space="preserve">Set callbacks which will be executed for each new preroll, new sample and eos.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/app/gstappsink.c"
+             line="1752">Set callbacks which will be executed for each new preroll, new sample and eos.
 This is an alternative to using the signals, it has lower overhead and is thus
 less expensive, but also less flexible.
 
 If callbacks are installed, no signals will be emitted for performance
-reasons.</doc>
+reasons.
+
+Before 1.16.3 it was not possible to change the callbacks in a thread-safe
+way.</doc>
+        <source-position filename="gst-libs/gst/app/gstappsink.h" line="160"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="appsink" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAppSink</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsink.c"
+                 line="1754">a #GstAppSink</doc>
             <type name="AppSink" c:type="GstAppSink*"/>
           </instance-parameter>
           <parameter name="callbacks" transfer-ownership="none">
-            <doc xml:space="preserve">the callbacks</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsink.c"
+                 line="1755">the callbacks</doc>
             <type name="AppSinkCallbacks" c:type="GstAppSinkCallbacks*"/>
           </parameter>
           <parameter name="user_data"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">a user_data argument for the callbacks</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsink.c"
+                 line="1756">a user_data argument for the callbacks</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
           <parameter name="notify" transfer-ownership="none" scope="async">
-            <doc xml:space="preserve">a destroy notify function</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsink.c"
+                 line="1757">a destroy notify function</doc>
             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_caps" c:identifier="gst_app_sink_set_caps">
-        <doc xml:space="preserve">Set the capabilities on the appsink element.  This function takes
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/app/gstappsink.c"
+             line="1111">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, or incomplete,
 you must check the caps on the samples to get the actual used caps.</doc>
+        <source-position filename="gst-libs/gst/app/gstappsink.h" line="109"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="appsink" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAppSink</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsink.c"
+                 line="1113">a #GstAppSink</doc>
             <type name="AppSink" c:type="GstAppSink*"/>
           </instance-parameter>
           <parameter name="caps" transfer-ownership="none">
-            <doc xml:space="preserve">caps to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsink.c"
+                 line="1114">caps to set</doc>
             <type name="Gst.Caps" c:type="const GstCaps*"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_drop" c:identifier="gst_app_sink_set_drop">
-        <doc xml:space="preserve">Instruct @appsink to drop old buffers when the maximum amount of queued
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/app/gstappsink.c"
+             line="1317">Instruct @appsink to drop old buffers when the maximum amount of queued
 buffers is reached.</doc>
+        <source-position filename="gst-libs/gst/app/gstappsink.h" line="130"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="appsink" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAppSink</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsink.c"
+                 line="1319">a #GstAppSink</doc>
             <type name="AppSink" c:type="GstAppSink*"/>
           </instance-parameter>
           <parameter name="drop" transfer-ownership="none">
-            <doc xml:space="preserve">the new state</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsink.c"
+                 line="1320">the new state</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_emit_signals"
               c:identifier="gst_app_sink_set_emit_signals">
-        <doc xml:space="preserve">Make appsink emit the "new-preroll" and "new-sample" signals. This option is
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/app/gstappsink.c"
+             line="1216">Make appsink emit the "new-preroll" and "new-sample" signals. This option is
 by default disabled because signal emission is expensive and unneeded when
 the application prefers to operate in pull mode.</doc>
+        <source-position filename="gst-libs/gst/app/gstappsink.h" line="118"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="appsink" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAppSink</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsink.c"
+                 line="1218">a #GstAppSink</doc>
             <type name="AppSink" c:type="GstAppSink*"/>
           </instance-parameter>
           <parameter name="emit" transfer-ownership="none">
-            <doc xml:space="preserve">the new state</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsink.c"
+                 line="1219">the new state</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_max_buffers"
               c:identifier="gst_app_sink_set_max_buffers">
-        <doc xml:space="preserve">Set the maximum amount of buffers that can be queued in @appsink. After this
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/app/gstappsink.c"
+             line="1265">Set the maximum amount of buffers that can be queued in @appsink. After this
 amount of buffers are queued in appsink, any more buffers will block upstream
 elements until a sample is pulled from @appsink.</doc>
+        <source-position filename="gst-libs/gst/app/gstappsink.h" line="124"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="appsink" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAppSink</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsink.c"
+                 line="1267">a #GstAppSink</doc>
             <type name="AppSink" c:type="GstAppSink*"/>
           </instance-parameter>
           <parameter name="max" transfer-ownership="none">
-            <doc xml:space="preserve">the maximum number of buffers to queue</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsink.c"
+                 line="1268">the maximum number of buffers to queue</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_wait_on_eos"
               c:identifier="gst_app_sink_set_wait_on_eos">
-        <doc xml:space="preserve">Instruct @appsink to wait for all buffers to be consumed when an EOS is received.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/app/gstappsink.c"
+             line="1426">Instruct @appsink to wait for all buffers to be consumed when an EOS is received.</doc>
+        <source-position filename="gst-libs/gst/app/gstappsink.h" line="142"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="appsink" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAppSink</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsink.c"
+                 line="1428">a #GstAppSink</doc>
             <type name="AppSink" c:type="GstAppSink*"/>
           </instance-parameter>
           <parameter name="wait" transfer-ownership="none">
-            <doc xml:space="preserve">the new state</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsink.c"
+                 line="1429">the new state</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
@@ -522,7 +733,9 @@ elements until a sample is pulled from @appsink.</doc>
       <method name="try_pull_preroll"
               c:identifier="gst_app_sink_try_pull_preroll"
               version="1.10">
-        <doc xml:space="preserve">Get the last preroll sample in @appsink. This was the sample that caused the
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/app/gstappsink.c"
+             line="1536">Get the last preroll sample in @appsink. This was the sample that caused the
 appsink to preroll in the PAUSED state.
 
 This function is typically used when dealing with a pipeline in the PAUSED
@@ -541,18 +754,25 @@ condition.
 
 This function blocks until a preroll sample or EOS is received, the appsink
 element is set to the READY/NULL state, or the timeout expires.</doc>
+        <source-position filename="gst-libs/gst/app/gstappsink.h" line="154"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a #GstSample or NULL when the appsink is stopped or EOS or the timeout expires.
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/app/gstappsink.c"
+               line="1561">a #GstSample or NULL when the appsink is stopped or EOS or the timeout expires.
          Call gst_sample_unref() after usage.</doc>
           <type name="Gst.Sample" c:type="GstSample*"/>
         </return-value>
         <parameters>
           <instance-parameter name="appsink" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAppSink</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsink.c"
+                 line="1538">a #GstAppSink</doc>
             <type name="AppSink" c:type="GstAppSink*"/>
           </instance-parameter>
           <parameter name="timeout" transfer-ownership="none">
-            <doc xml:space="preserve">the maximum amount of time to wait for the preroll sample</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsink.c"
+                 line="1539">the maximum amount of time to wait for the preroll sample</doc>
             <type name="Gst.ClockTime" c:type="GstClockTime"/>
           </parameter>
         </parameters>
@@ -560,7 +780,9 @@ element is set to the READY/NULL state, or the timeout expires.</doc>
       <method name="try_pull_sample"
               c:identifier="gst_app_sink_try_pull_sample"
               version="1.10">
-        <doc xml:space="preserve">This function blocks until a sample or EOS becomes available or the appsink
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/app/gstappsink.c"
+             line="1639">This function blocks until a sample or EOS becomes available or the appsink
 element is set to the READY/NULL state or the timeout expires.
 
 This function will only return samples when the appsink is in the PLAYING
@@ -572,18 +794,25 @@ especially when dealing with raw video frames.
 If an EOS event was received before any buffers or the timeout expires,
 this function returns %NULL. Use gst_app_sink_is_eos () to check for the EOS
 condition.</doc>
+        <source-position filename="gst-libs/gst/app/gstappsink.h" line="157"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a #GstSample or NULL when the appsink is stopped or EOS or the timeout expires.
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/app/gstappsink.c"
+               line="1657">a #GstSample or NULL when the appsink is stopped or EOS or the timeout expires.
 Call gst_sample_unref() after usage.</doc>
           <type name="Gst.Sample" c:type="GstSample*"/>
         </return-value>
         <parameters>
           <instance-parameter name="appsink" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAppSink</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsink.c"
+                 line="1641">a #GstAppSink</doc>
             <type name="AppSink" c:type="GstAppSink*"/>
           </instance-parameter>
           <parameter name="timeout" transfer-ownership="none">
-            <doc xml:space="preserve">the maximum amount of time to wait for a sample</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsink.c"
+                 line="1642">the maximum amount of time to wait for a sample</doc>
             <type name="Gst.ClockTime" c:type="GstClockTime"/>
           </parameter>
         </parameters>
@@ -616,19 +845,23 @@ Call gst_sample_unref() after usage.</doc>
         <type name="AppSinkPrivate" c:type="GstAppSinkPrivate*"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
       <glib:signal name="eos" when="last">
-        <doc xml:space="preserve">Signal that the end-of-stream has been reached. This signal is emitted from
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/app/gstappsink.c"
+             line="283">Signal that the end-of-stream has been reached. This signal is emitted from
 the streaming thread.</doc>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
       </glib:signal>
       <glib:signal name="new-preroll" when="last">
-        <doc xml:space="preserve">Signal that a new preroll sample is available.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/app/gstappsink.c"
+             line="294">Signal that a new preroll sample is available.
 
 This signal is emitted from the streaming thread and only when the
 "emit-signals" property is %TRUE.
@@ -644,7 +877,9 @@ set to %TRUE, which it is not by default for performance reasons.</doc>
         </return-value>
       </glib:signal>
       <glib:signal name="new-sample" when="last">
-        <doc xml:space="preserve">Signal that a new sample is available.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/app/gstappsink.c"
+             line="314">Signal that a new sample is available.
 
 This signal is emitted from the streaming thread and only when the
 "emit-signals" property is %TRUE.
@@ -660,7 +895,9 @@ set to %TRUE, which it is not by default for performance reasons.</doc>
         </return-value>
       </glib:signal>
       <glib:signal name="pull-preroll" when="last" action="1">
-        <doc xml:space="preserve">Get the last preroll sample in @appsink. This was the sample that caused the
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/app/gstappsink.c"
+             line="335">Get the last preroll sample in @appsink. This was the sample that caused the
 appsink to preroll in the PAUSED state.
 
 This function is typically used when dealing with a pipeline in the PAUSED
@@ -679,12 +916,16 @@ If an EOS event was received before any buffers, this function returns
 This function blocks until a preroll sample or EOS is received or the appsink
 element is set to the READY/NULL state.</doc>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a #GstSample or NULL when the appsink is stopped or EOS.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/app/gstappsink.c"
+               line="358">a #GstSample or NULL when the appsink is stopped or EOS.</doc>
           <type name="Gst.Sample"/>
         </return-value>
       </glib:signal>
       <glib:signal name="pull-sample" when="last" action="1">
-        <doc xml:space="preserve">This function blocks until a sample or EOS becomes available or the appsink
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/app/gstappsink.c"
+             line="364">This function blocks until a sample or EOS becomes available or the appsink
 element is set to the READY/NULL state.
 
 This function will only return samples when the appsink is in the PLAYING
@@ -699,7 +940,9 @@ the "drop" and "max-buffers" properties.
 If an EOS event was received before any buffers, this function returns
 %NULL. Use gst_app_sink_is_eos () to check for the EOS condition.</doc>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a #GstSample or NULL when the appsink is stopped or EOS.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/app/gstappsink.c"
+               line="383">a #GstSample or NULL when the appsink is stopped or EOS.</doc>
           <type name="Gst.Sample"/>
         </return-value>
       </glib:signal>
@@ -707,7 +950,9 @@ If an EOS event was received before any buffers, this function returns
                    when="last"
                    action="1"
                    version="1.10">
-        <doc xml:space="preserve">Get the last preroll sample in @appsink. This was the sample that caused the
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/app/gstappsink.c"
+             line="389">Get the last preroll sample in @appsink. This was the sample that caused the
 appsink to preroll in the PAUSED state.
 
 This function is typically used when dealing with a pipeline in the PAUSED
@@ -727,12 +972,16 @@ condition.
 This function blocks until a preroll sample or EOS is received, the appsink
 element is set to the READY/NULL state, or the timeout expires.</doc>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a #GstSample or NULL when the appsink is stopped or EOS or the timeout expires.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/app/gstappsink.c"
+               line="414">a #GstSample or NULL when the appsink is stopped or EOS or the timeout expires.</doc>
           <type name="Gst.Sample"/>
         </return-value>
         <parameters>
           <parameter name="timeout" transfer-ownership="none">
-            <doc xml:space="preserve">the maximum amount of time to wait for the preroll sample</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsink.c"
+                 line="392">the maximum amount of time to wait for the preroll sample</doc>
             <type name="guint64" c:type="guint64"/>
           </parameter>
         </parameters>
@@ -741,7 +990,9 @@ element is set to the READY/NULL state, or the timeout expires.</doc>
                    when="last"
                    action="1"
                    version="1.10">
-        <doc xml:space="preserve">This function blocks until a sample or EOS becomes available or the appsink
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/app/gstappsink.c"
+             line="423">This function blocks until a sample or EOS becomes available or the appsink
 element is set to the READY/NULL state or the timeout expires.
 
 This function will only return samples when the appsink is in the PLAYING
@@ -757,12 +1008,16 @@ If an EOS event was received before any buffers or the timeout expires,
 this function returns %NULL. Use gst_app_sink_is_eos () to check
 for the EOS condition.</doc>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a #GstSample or NULL when the appsink is stopped or EOS or the timeout expires.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/app/gstappsink.c"
+               line="444">a #GstSample or NULL when the appsink is stopped or EOS or the timeout expires.</doc>
           <type name="Gst.Sample"/>
         </return-value>
         <parameters>
           <parameter name="timeout" transfer-ownership="none">
-            <doc xml:space="preserve">the maximum amount of time to wait for a sample</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsink.c"
+                 line="426">the maximum amount of time to wait for a sample</doc>
             <type name="guint64" c:type="guint64"/>
           </parameter>
         </parameters>
@@ -771,10 +1026,14 @@ for the EOS condition.</doc>
     <record name="AppSinkCallbacks"
             c:type="GstAppSinkCallbacks"
             introspectable="0">
-      <doc xml:space="preserve">A set of callbacks that can be installed on the appsink with
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/app/gstappsink.h"
+           line="48">A set of callbacks that can be installed on the appsink with
 gst_app_sink_set_callbacks().</doc>
+      <source-position filename="gst-libs/gst/app/gstappsink.h" line="73"/>
       <field name="eos">
         <callback name="eos">
+          <source-position filename="gst-libs/gst/app/gstappsink.h" line="67"/>
           <return-value transfer-ownership="none">
             <type name="none" c:type="void"/>
           </return-value>
@@ -794,6 +1053,7 @@ gst_app_sink_set_callbacks().</doc>
       </field>
       <field name="new_preroll">
         <callback name="new_preroll">
+          <source-position filename="gst-libs/gst/app/gstappsink.h" line="68"/>
           <return-value transfer-ownership="none">
             <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
           </return-value>
@@ -813,6 +1073,7 @@ gst_app_sink_set_callbacks().</doc>
       </field>
       <field name="new_sample">
         <callback name="new_sample">
+          <source-position filename="gst-libs/gst/app/gstappsink.h" line="69"/>
           <return-value transfer-ownership="none">
             <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
           </return-value>
@@ -831,7 +1092,7 @@ gst_app_sink_set_callbacks().</doc>
         </callback>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -839,11 +1100,13 @@ gst_app_sink_set_callbacks().</doc>
     <record name="AppSinkClass"
             c:type="GstAppSinkClass"
             glib:is-gtype-struct-for="AppSink">
+      <source-position filename="gst-libs/gst/app/gstappsink.h" line="103"/>
       <field name="basesink_class">
         <type name="GstBase.BaseSinkClass" c:type="GstBaseSinkClass"/>
       </field>
       <field name="eos">
         <callback name="eos">
+          <source-position filename="gst-libs/gst/app/gstappsink.h" line="91"/>
           <return-value transfer-ownership="none">
             <type name="none" c:type="void"/>
           </return-value>
@@ -856,6 +1119,7 @@ gst_app_sink_set_callbacks().</doc>
       </field>
       <field name="new_preroll">
         <callback name="new_preroll">
+          <source-position filename="gst-libs/gst/app/gstappsink.h" line="92"/>
           <return-value transfer-ownership="none">
             <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
           </return-value>
@@ -868,6 +1132,7 @@ gst_app_sink_set_callbacks().</doc>
       </field>
       <field name="new_sample">
         <callback name="new_sample">
+          <source-position filename="gst-libs/gst/app/gstappsink.h" line="93"/>
           <return-value transfer-ownership="none">
             <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
           </return-value>
@@ -880,14 +1145,19 @@ gst_app_sink_set_callbacks().</doc>
       </field>
       <field name="pull_preroll">
         <callback name="pull_preroll">
+          <source-position filename="gst-libs/gst/app/gstappsink.h" line="96"/>
           <return-value transfer-ownership="full">
-            <doc xml:space="preserve">a #GstSample or NULL when the appsink is stopped or EOS.
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsink.c"
+                 line="1502">a #GstSample or NULL when the appsink is stopped or EOS.
          Call gst_sample_unref() after usage.</doc>
             <type name="Gst.Sample" c:type="GstSample*"/>
           </return-value>
           <parameters>
             <parameter name="appsink" transfer-ownership="none">
-              <doc xml:space="preserve">a #GstAppSink</doc>
+              <doc xml:space="preserve"
+                   filename="gst-libs/gst/app/gstappsink.c"
+                   line="1481">a #GstAppSink</doc>
               <type name="AppSink" c:type="GstAppSink*"/>
             </parameter>
           </parameters>
@@ -895,14 +1165,19 @@ gst_app_sink_set_callbacks().</doc>
       </field>
       <field name="pull_sample">
         <callback name="pull_sample">
+          <source-position filename="gst-libs/gst/app/gstappsink.h" line="97"/>
           <return-value transfer-ownership="full">
-            <doc xml:space="preserve">a #GstSample or NULL when the appsink is stopped or EOS.
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsink.c"
+                 line="1527">a #GstSample or NULL when the appsink is stopped or EOS.
          Call gst_sample_unref() after usage.</doc>
             <type name="Gst.Sample" c:type="GstSample*"/>
           </return-value>
           <parameters>
             <parameter name="appsink" transfer-ownership="none">
-              <doc xml:space="preserve">a #GstAppSink</doc>
+              <doc xml:space="preserve"
+                   filename="gst-libs/gst/app/gstappsink.c"
+                   line="1513">a #GstAppSink</doc>
               <type name="AppSink" c:type="GstAppSink*"/>
             </parameter>
           </parameters>
@@ -910,18 +1185,25 @@ gst_app_sink_set_callbacks().</doc>
       </field>
       <field name="try_pull_preroll">
         <callback name="try_pull_preroll">
+          <source-position filename="gst-libs/gst/app/gstappsink.h" line="98"/>
           <return-value transfer-ownership="full">
-            <doc xml:space="preserve">a #GstSample or NULL when the appsink is stopped or EOS or the timeout expires.
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsink.c"
+                 line="1561">a #GstSample or NULL when the appsink is stopped or EOS or the timeout expires.
          Call gst_sample_unref() after usage.</doc>
             <type name="Gst.Sample" c:type="GstSample*"/>
           </return-value>
           <parameters>
             <parameter name="appsink" transfer-ownership="none">
-              <doc xml:space="preserve">a #GstAppSink</doc>
+              <doc xml:space="preserve"
+                   filename="gst-libs/gst/app/gstappsink.c"
+                   line="1538">a #GstAppSink</doc>
               <type name="AppSink" c:type="GstAppSink*"/>
             </parameter>
             <parameter name="timeout" transfer-ownership="none">
-              <doc xml:space="preserve">the maximum amount of time to wait for the preroll sample</doc>
+              <doc xml:space="preserve"
+                   filename="gst-libs/gst/app/gstappsink.c"
+                   line="1539">the maximum amount of time to wait for the preroll sample</doc>
               <type name="Gst.ClockTime" c:type="GstClockTime"/>
             </parameter>
           </parameters>
@@ -929,30 +1211,38 @@ gst_app_sink_set_callbacks().</doc>
       </field>
       <field name="try_pull_sample">
         <callback name="try_pull_sample">
+          <source-position filename="gst-libs/gst/app/gstappsink.h" line="99"/>
           <return-value transfer-ownership="full">
-            <doc xml:space="preserve">a #GstSample or NULL when the appsink is stopped or EOS or the timeout expires.
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsink.c"
+                 line="1657">a #GstSample or NULL when the appsink is stopped or EOS or the timeout expires.
 Call gst_sample_unref() after usage.</doc>
             <type name="Gst.Sample" c:type="GstSample*"/>
           </return-value>
           <parameters>
             <parameter name="appsink" transfer-ownership="none">
-              <doc xml:space="preserve">a #GstAppSink</doc>
+              <doc xml:space="preserve"
+                   filename="gst-libs/gst/app/gstappsink.c"
+                   line="1641">a #GstAppSink</doc>
               <type name="AppSink" c:type="GstAppSink*"/>
             </parameter>
             <parameter name="timeout" transfer-ownership="none">
-              <doc xml:space="preserve">the maximum amount of time to wait for a sample</doc>
+              <doc xml:space="preserve"
+                   filename="gst-libs/gst/app/gstappsink.c"
+                   line="1642">the maximum amount of time to wait for a sample</doc>
               <type name="Gst.ClockTime" c:type="GstClockTime"/>
             </parameter>
           </parameters>
         </callback>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="2">
+        <array zero-terminated="0" fixed-size="2">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
     </record>
     <record name="AppSinkPrivate" c:type="GstAppSinkPrivate" disguised="1">
+      <source-position filename="gst-libs/gst/app/gstappsink.h" line="44"/>
     </record>
     <class name="AppSrc"
            c:symbol-prefix="app_src"
@@ -961,7 +1251,9 @@ Call gst_sample_unref() after usage.</doc>
            glib:type-name="GstAppSrc"
            glib:get-type="gst_app_src_get_type"
            glib:type-struct="AppSrcClass">
-      <doc xml:space="preserve">The appsrc element can be used by applications to insert data into a
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/app/gstappsrc.c"
+           line="20">The appsrc element can be used by applications to insert data into a
 GStreamer pipeline. Unlike most GStreamer elements, appsrc provides
 external API functions.
 
@@ -1012,7 +1304,7 @@ mode when implementing various network protocols or hardware devices.
 
 The pull mode, in which the need-data signal triggers the next push-buffer call.
 This mode is typically used in the "random-access" stream-type. Use this
-mode for file access or other randomly accessable sources. In this mode, a
+mode for file access or other randomly accessible sources. In this mode, a
 buffer of exactly the amount of bytes given by the need-data signal should be
 pushed into appsrc.
 
@@ -1025,23 +1317,32 @@ When the application has finished pushing data into appsrc, it should call
 gst_app_src_end_of_stream() or emit the end-of-stream action signal. After
 this call, no more buffers can be pushed into appsrc until a flushing seek
 occurs or the state of the appsrc has gone through READY.</doc>
+      <source-position filename="gst-libs/gst/app/gstappsrc.h" line="119"/>
       <implements name="Gst.URIHandler"/>
       <virtual-method name="end_of_stream" invoker="end_of_stream">
-        <doc xml:space="preserve">Indicates to the appsrc element that the last buffer queued in the
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/app/gstappsrc.c"
+             line="2075">Indicates to the appsrc element that the last buffer queued in the
 element is the last buffer of the stream.</doc>
+        <source-position filename="gst-libs/gst/app/gstappsrc.h" line="113"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">#GST_FLOW_OK when the EOS was successfuly queued.
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/app/gstappsrc.c"
+               line="2082">#GST_FLOW_OK when the EOS was successfully queued.
 #GST_FLOW_FLUSHING when @appsrc is not PAUSED or PLAYING.</doc>
           <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
         <parameters>
           <instance-parameter name="appsrc" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAppSrc</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsrc.c"
+                 line="2077">a #GstAppSrc</doc>
             <type name="AppSrc" c:type="GstAppSrc*"/>
           </instance-parameter>
         </parameters>
       </virtual-method>
       <virtual-method name="enough_data">
+        <source-position filename="gst-libs/gst/app/gstappsrc.h" line="108"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
@@ -1052,6 +1353,7 @@ element is the last buffer of the stream.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="need_data">
+        <source-position filename="gst-libs/gst/app/gstappsrc.h" line="107"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
@@ -1065,24 +1367,33 @@ element is the last buffer of the stream.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="push_buffer" invoker="push_buffer">
-        <doc xml:space="preserve">Adds a buffer to the queue of buffers that the appsrc element will
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/app/gstappsrc.c"
+             line="1975">Adds a buffer to the queue of buffers that the appsrc element will
 push to its source pad.  This function takes ownership of the buffer.
 
 When the block property is TRUE, this function can block until free
 space becomes available in the queue.</doc>
+        <source-position filename="gst-libs/gst/app/gstappsrc.h" line="112"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">#GST_FLOW_OK when the buffer was successfuly queued.
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/app/gstappsrc.c"
+               line="1986">#GST_FLOW_OK when the buffer was successfully queued.
 #GST_FLOW_FLUSHING when @appsrc is not PAUSED or PLAYING.
-#GST_FLOW_EOS when EOS occured.</doc>
+#GST_FLOW_EOS when EOS occurred.</doc>
           <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
         <parameters>
           <instance-parameter name="appsrc" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAppSrc</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsrc.c"
+                 line="1977">a #GstAppSrc</doc>
             <type name="AppSrc" c:type="GstAppSrc*"/>
           </instance-parameter>
           <parameter name="buffer" transfer-ownership="full">
-            <doc xml:space="preserve">a #GstBuffer to push</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsrc.c"
+                 line="1978">a #GstBuffer to push</doc>
             <type name="Gst.Buffer" c:type="GstBuffer*"/>
           </parameter>
         </parameters>
@@ -1090,31 +1401,42 @@ space becomes available in the queue.</doc>
       <virtual-method name="push_buffer_list"
                       invoker="push_buffer_list"
                       version="1.14">
-        <doc xml:space="preserve">Adds a buffer list to the queue of buffers and buffer lists that the
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/app/gstappsrc.c"
+             line="1996">Adds a buffer list to the queue of buffers and buffer lists that the
 appsrc element will push to its source pad.  This function takes ownership
 of @buffer_list.
 
 When the block property is TRUE, this function can block until free
 space becomes available in the queue.</doc>
+        <source-position filename="gst-libs/gst/app/gstappsrc.h" line="115"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">#GST_FLOW_OK when the buffer list was successfuly queued.
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/app/gstappsrc.c"
+               line="2008">#GST_FLOW_OK when the buffer list was successfully queued.
 #GST_FLOW_FLUSHING when @appsrc is not PAUSED or PLAYING.
-#GST_FLOW_EOS when EOS occured.</doc>
+#GST_FLOW_EOS when EOS occurred.</doc>
           <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
         <parameters>
           <instance-parameter name="appsrc" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAppSrc</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsrc.c"
+                 line="1998">a #GstAppSrc</doc>
             <type name="AppSrc" c:type="GstAppSrc*"/>
           </instance-parameter>
           <parameter name="buffer_list" transfer-ownership="full">
-            <doc xml:space="preserve">a #GstBufferList to push</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsrc.c"
+                 line="1999">a #GstBufferList to push</doc>
             <type name="Gst.BufferList" c:type="GstBufferList*"/>
           </parameter>
         </parameters>
       </virtual-method>
       <virtual-method name="push_sample" invoker="push_sample" version="1.6">
-        <doc xml:space="preserve">Extract a buffer from the provided sample and adds it to the queue of
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/app/gstappsrc.c"
+             line="2020">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 that were set on appsrc will be replaced by the caps
 associated with the sample if not equal.
@@ -1124,25 +1446,33 @@ sample so the sample needs to be unreffed after calling this function.
 
 When the block property is TRUE, this function can block until free
 space becomes available in the queue.</doc>
+        <source-position filename="gst-libs/gst/app/gstappsrc.h" line="114"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">#GST_FLOW_OK when the buffer was successfuly queued.
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/app/gstappsrc.c"
+               line="2037">#GST_FLOW_OK when the buffer was successfully queued.
 #GST_FLOW_FLUSHING when @appsrc is not PAUSED or PLAYING.
-#GST_FLOW_EOS when EOS occured.</doc>
+#GST_FLOW_EOS when EOS occurred.</doc>
           <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
         <parameters>
           <instance-parameter name="appsrc" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAppSrc</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsrc.c"
+                 line="2022">a #GstAppSrc</doc>
             <type name="AppSrc" c:type="GstAppSrc*"/>
           </instance-parameter>
           <parameter name="sample" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSample from which buffer and caps may be
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsrc.c"
+                 line="2023">a #GstSample from which buffer and caps may be
 extracted</doc>
             <type name="Gst.Sample" c:type="GstSample*"/>
           </parameter>
         </parameters>
       </virtual-method>
       <virtual-method name="seek_data">
+        <source-position filename="gst-libs/gst/app/gstappsrc.h" line="109"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -1156,29 +1486,43 @@ extracted</doc>
         </parameters>
       </virtual-method>
       <method name="end_of_stream" c:identifier="gst_app_src_end_of_stream">
-        <doc xml:space="preserve">Indicates to the appsrc element that the last buffer queued in the
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/app/gstappsrc.c"
+             line="2075">Indicates to the appsrc element that the last buffer queued in the
 element is the last buffer of the stream.</doc>
+        <source-position filename="gst-libs/gst/app/gstappsrc.h" line="176"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">#GST_FLOW_OK when the EOS was successfuly queued.
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/app/gstappsrc.c"
+               line="2082">#GST_FLOW_OK when the EOS was successfully queued.
 #GST_FLOW_FLUSHING when @appsrc is not PAUSED or PLAYING.</doc>
           <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
         <parameters>
           <instance-parameter name="appsrc" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAppSrc</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsrc.c"
+                 line="2077">a #GstAppSrc</doc>
             <type name="AppSrc" c:type="GstAppSrc*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_caps" c:identifier="gst_app_src_get_caps">
-        <doc xml:space="preserve">Get the configured caps on @appsrc.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/app/gstappsrc.c"
+             line="1397">Get the configured caps on @appsrc.</doc>
+        <source-position filename="gst-libs/gst/app/gstappsrc.h" line="128"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the #GstCaps produced by the source. gst_caps_unref() after usage.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/app/gstappsrc.c"
+               line="1403">the #GstCaps produced by the source. gst_caps_unref() after usage.</doc>
           <type name="Gst.Caps" c:type="GstCaps*"/>
         </return-value>
         <parameters>
           <instance-parameter name="appsrc" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAppSrc</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsrc.c"
+                 line="1399">a #GstAppSrc</doc>
             <type name="AppSrc" c:type="GstAppSrc*"/>
           </instance-parameter>
         </parameters>
@@ -1186,14 +1530,21 @@ element is the last buffer of the stream.</doc>
       <method name="get_current_level_bytes"
               c:identifier="gst_app_src_get_current_level_bytes"
               version="1.2">
-        <doc xml:space="preserve">Get the number of currently queued bytes inside @appsrc.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/app/gstappsrc.c"
+             line="1634">Get the number of currently queued bytes inside @appsrc.</doc>
+        <source-position filename="gst-libs/gst/app/gstappsrc.h" line="155"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The number of currently queued bytes.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/app/gstappsrc.c"
+               line="1640">The number of currently queued bytes.</doc>
           <type name="guint64" c:type="guint64"/>
         </return-value>
         <parameters>
           <instance-parameter name="appsrc" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAppSrc</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsrc.c"
+                 line="1636">a #GstAppSrc</doc>
             <type name="AppSrc" c:type="GstAppSrc*"/>
           </instance-parameter>
         </parameters>
@@ -1201,121 +1552,174 @@ element is the last buffer of the stream.</doc>
       <method name="get_duration"
               c:identifier="gst_app_src_get_duration"
               version="1.10">
-        <doc xml:space="preserve">Get the duration of the stream in nanoseconds. A value of GST_CLOCK_TIME_NONE means that the duration is
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/app/gstappsrc.c"
+             line="1498">Get the duration of the stream in nanoseconds. A value of GST_CLOCK_TIME_NONE means that the duration is
 not known.</doc>
+        <source-position filename="gst-libs/gst/app/gstappsrc.h" line="140"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the duration of the stream previously set with gst_app_src_set_duration();</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/app/gstappsrc.c"
+               line="1505">the duration of the stream previously set with gst_app_src_set_duration();</doc>
           <type name="Gst.ClockTime" c:type="GstClockTime"/>
         </return-value>
         <parameters>
           <instance-parameter name="appsrc" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAppSrc</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsrc.c"
+                 line="1500">a #GstAppSrc</doc>
             <type name="AppSrc" c:type="GstAppSrc*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_emit_signals"
               c:identifier="gst_app_src_get_emit_signals">
-        <doc xml:space="preserve">Check if appsrc will emit the "new-preroll" and "new-buffer" signals.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/app/gstappsrc.c"
+             line="1751">Check if appsrc will emit the "new-preroll" and "new-buffer" signals.</doc>
+        <source-position filename="gst-libs/gst/app/gstappsrc.h" line="167"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if @appsrc is emitting the "new-preroll" and "new-buffer"
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/app/gstappsrc.c"
+               line="1757">%TRUE if @appsrc is emitting the "new-preroll" and "new-buffer"
 signals.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="appsrc" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAppSrc</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsrc.c"
+                 line="1753">a #GstAppSrc</doc>
             <type name="AppSrc" c:type="GstAppSrc*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_latency" c:identifier="gst_app_src_get_latency">
-        <doc xml:space="preserve">Retrieve the min and max latencies in @min and @max respectively.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/app/gstappsrc.c"
+             line="1703">Retrieve the min and max latencies in @min and @max respectively.</doc>
+        <source-position filename="gst-libs/gst/app/gstappsrc.h" line="161"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="appsrc" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAppSrc</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsrc.c"
+                 line="1705">a #GstAppSrc</doc>
             <type name="AppSrc" c:type="GstAppSrc*"/>
           </instance-parameter>
           <parameter name="min"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">the min latency</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsrc.c"
+                 line="1706">the min latency</doc>
             <type name="guint64" c:type="guint64*"/>
           </parameter>
           <parameter name="max"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">the max latency</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsrc.c"
+                 line="1707">the max latency</doc>
             <type name="guint64" c:type="guint64*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_max_bytes" c:identifier="gst_app_src_get_max_bytes">
-        <doc xml:space="preserve">Get the maximum amount of bytes that can be queued in @appsrc.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/app/gstappsrc.c"
+             line="1608">Get the maximum amount of bytes that can be queued in @appsrc.</doc>
+        <source-position filename="gst-libs/gst/app/gstappsrc.h" line="152"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The maximum amount of bytes that can be queued.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/app/gstappsrc.c"
+               line="1614">The maximum amount of bytes that can be queued.</doc>
           <type name="guint64" c:type="guint64"/>
         </return-value>
         <parameters>
           <instance-parameter name="appsrc" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAppSrc</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsrc.c"
+                 line="1610">a #GstAppSrc</doc>
             <type name="AppSrc" c:type="GstAppSrc*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_size" c:identifier="gst_app_src_get_size">
-        <doc xml:space="preserve">Get the size of the stream in bytes. A value of -1 means that the size is
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/app/gstappsrc.c"
+             line="1445">Get the size of the stream in bytes. A value of -1 means that the size is
 not known.</doc>
+        <source-position filename="gst-libs/gst/app/gstappsrc.h" line="134"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the size of the stream previously set with gst_app_src_set_size();</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/app/gstappsrc.c"
+               line="1452">the size of the stream previously set with gst_app_src_set_size();</doc>
           <type name="gint64" c:type="gint64"/>
         </return-value>
         <parameters>
           <instance-parameter name="appsrc" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAppSrc</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsrc.c"
+                 line="1447">a #GstAppSrc</doc>
             <type name="AppSrc" c:type="GstAppSrc*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_stream_type"
               c:identifier="gst_app_src_get_stream_type">
-        <doc xml:space="preserve">Get the stream type. Control the stream type of @appsrc
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/app/gstappsrc.c"
+             line="1553">Get the stream type. Control the stream type of @appsrc
 with gst_app_src_set_stream_type().</doc>
+        <source-position filename="gst-libs/gst/app/gstappsrc.h" line="146"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the stream type.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/app/gstappsrc.c"
+               line="1560">the stream type.</doc>
           <type name="AppStreamType" c:type="GstAppStreamType"/>
         </return-value>
         <parameters>
           <instance-parameter name="appsrc" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAppSrc</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsrc.c"
+                 line="1555">a #GstAppSrc</doc>
             <type name="AppSrc" c:type="GstAppSrc*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="push_buffer" c:identifier="gst_app_src_push_buffer">
-        <doc xml:space="preserve">Adds a buffer to the queue of buffers that the appsrc element will
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/app/gstappsrc.c"
+             line="1975">Adds a buffer to the queue of buffers that the appsrc element will
 push to its source pad.  This function takes ownership of the buffer.
 
 When the block property is TRUE, this function can block until free
 space becomes available in the queue.</doc>
+        <source-position filename="gst-libs/gst/app/gstappsrc.h" line="170"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">#GST_FLOW_OK when the buffer was successfuly queued.
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/app/gstappsrc.c"
+               line="1986">#GST_FLOW_OK when the buffer was successfully queued.
 #GST_FLOW_FLUSHING when @appsrc is not PAUSED or PLAYING.
-#GST_FLOW_EOS when EOS occured.</doc>
+#GST_FLOW_EOS when EOS occurred.</doc>
           <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
         <parameters>
           <instance-parameter name="appsrc" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAppSrc</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsrc.c"
+                 line="1977">a #GstAppSrc</doc>
             <type name="AppSrc" c:type="GstAppSrc*"/>
           </instance-parameter>
           <parameter name="buffer" transfer-ownership="full">
-            <doc xml:space="preserve">a #GstBuffer to push</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsrc.c"
+                 line="1978">a #GstBuffer to push</doc>
             <type name="Gst.Buffer" c:type="GstBuffer*"/>
           </parameter>
         </parameters>
@@ -1323,25 +1727,34 @@ space becomes available in the queue.</doc>
       <method name="push_buffer_list"
               c:identifier="gst_app_src_push_buffer_list"
               version="1.14">
-        <doc xml:space="preserve">Adds a buffer list to the queue of buffers and buffer lists that the
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/app/gstappsrc.c"
+             line="1996">Adds a buffer list to the queue of buffers and buffer lists that the
 appsrc element will push to its source pad.  This function takes ownership
 of @buffer_list.
 
 When the block property is TRUE, this function can block until free
 space becomes available in the queue.</doc>
+        <source-position filename="gst-libs/gst/app/gstappsrc.h" line="173"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">#GST_FLOW_OK when the buffer list was successfuly queued.
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/app/gstappsrc.c"
+               line="2008">#GST_FLOW_OK when the buffer list was successfully queued.
 #GST_FLOW_FLUSHING when @appsrc is not PAUSED or PLAYING.
-#GST_FLOW_EOS when EOS occured.</doc>
+#GST_FLOW_EOS when EOS occurred.</doc>
           <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
         <parameters>
           <instance-parameter name="appsrc" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAppSrc</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsrc.c"
+                 line="1998">a #GstAppSrc</doc>
             <type name="AppSrc" c:type="GstAppSrc*"/>
           </instance-parameter>
           <parameter name="buffer_list" transfer-ownership="full">
-            <doc xml:space="preserve">a #GstBufferList to push</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsrc.c"
+                 line="1999">a #GstBufferList to push</doc>
             <type name="Gst.BufferList" c:type="GstBufferList*"/>
           </parameter>
         </parameters>
@@ -1349,7 +1762,9 @@ space becomes available in the queue.</doc>
       <method name="push_sample"
               c:identifier="gst_app_src_push_sample"
               version="1.6">
-        <doc xml:space="preserve">Extract a buffer from the provided sample and adds it to the queue of
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/app/gstappsrc.c"
+             line="2020">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 that were set on appsrc will be replaced by the caps
 associated with the sample if not equal.
@@ -1359,19 +1774,26 @@ sample so the sample needs to be unreffed after calling this function.
 
 When the block property is TRUE, this function can block until free
 space becomes available in the queue.</doc>
+        <source-position filename="gst-libs/gst/app/gstappsrc.h" line="179"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">#GST_FLOW_OK when the buffer was successfuly queued.
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/app/gstappsrc.c"
+               line="2037">#GST_FLOW_OK when the buffer was successfully queued.
 #GST_FLOW_FLUSHING when @appsrc is not PAUSED or PLAYING.
-#GST_FLOW_EOS when EOS occured.</doc>
+#GST_FLOW_EOS when EOS occurred.</doc>
           <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
         <parameters>
           <instance-parameter name="appsrc" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAppSrc</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsrc.c"
+                 line="2022">a #GstAppSrc</doc>
             <type name="AppSrc" c:type="GstAppSrc*"/>
           </instance-parameter>
           <parameter name="sample" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSample from which buffer and caps may be
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsrc.c"
+                 line="2023">a #GstSample from which buffer and caps may be
 extracted</doc>
             <type name="Gst.Sample" c:type="GstSample*"/>
           </parameter>
@@ -1380,53 +1802,74 @@ extracted</doc>
       <method name="set_callbacks"
               c:identifier="gst_app_src_set_callbacks"
               introspectable="0">
-        <doc xml:space="preserve">Set callbacks which will be executed when data is needed, enough data has
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/app/gstappsrc.c"
+             line="2116">Set callbacks which will be executed when data is needed, enough data has
 been collected or when a seek should be performed.
 This is an alternative to using the signals, it has lower overhead and is thus
 less expensive, but also less flexible.
 
 If callbacks are installed, no signals will be emitted for performance
-reasons.</doc>
+reasons.
+
+Before 1.16.3 it was not possible to change the callbacks in a thread-safe
+way.</doc>
+        <source-position filename="gst-libs/gst/app/gstappsrc.h" line="182"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="appsrc" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAppSrc</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsrc.c"
+                 line="2118">a #GstAppSrc</doc>
             <type name="AppSrc" c:type="GstAppSrc*"/>
           </instance-parameter>
           <parameter name="callbacks" transfer-ownership="none">
-            <doc xml:space="preserve">the callbacks</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsrc.c"
+                 line="2119">the callbacks</doc>
             <type name="AppSrcCallbacks" c:type="GstAppSrcCallbacks*"/>
           </parameter>
           <parameter name="user_data"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">a user_data argument for the callbacks</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsrc.c"
+                 line="2120">a user_data argument for the callbacks</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
           <parameter name="notify" transfer-ownership="none" scope="async">
-            <doc xml:space="preserve">a destroy notify function</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsrc.c"
+                 line="2121">a destroy notify function</doc>
             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_caps" c:identifier="gst_app_src_set_caps">
-        <doc xml:space="preserve">Set the capabilities on the appsrc element.  This function takes
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/app/gstappsrc.c"
+             line="1350">Set the capabilities on the appsrc element.  This function takes
 a copy of the caps structure. After calling this method, the source will
 only produce caps that match @caps. @caps must be fixed and the caps on the
 buffers must match the caps or left NULL.</doc>
+        <source-position filename="gst-libs/gst/app/gstappsrc.h" line="125"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="appsrc" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAppSrc</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsrc.c"
+                 line="1352">a #GstAppSrc</doc>
             <type name="AppSrc" c:type="GstAppSrc*"/>
           </instance-parameter>
           <parameter name="caps" transfer-ownership="none">
-            <doc xml:space="preserve">caps to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsrc.c"
+                 line="1353">caps to set</doc>
             <type name="Gst.Caps" c:type="const GstCaps*"/>
           </parameter>
         </parameters>
@@ -1434,113 +1877,157 @@ buffers must match the caps or left NULL.</doc>
       <method name="set_duration"
               c:identifier="gst_app_src_set_duration"
               version="1.10">
-        <doc xml:space="preserve">Set the duration of the stream in nanoseconds. A value of GST_CLOCK_TIME_NONE means that the duration is
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/app/gstappsrc.c"
+             line="1472">Set the duration of the stream in nanoseconds. A value of GST_CLOCK_TIME_NONE means that the duration is
 not known.</doc>
+        <source-position filename="gst-libs/gst/app/gstappsrc.h" line="137"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="appsrc" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAppSrc</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsrc.c"
+                 line="1474">a #GstAppSrc</doc>
             <type name="AppSrc" c:type="GstAppSrc*"/>
           </instance-parameter>
           <parameter name="duration" transfer-ownership="none">
-            <doc xml:space="preserve">the duration to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsrc.c"
+                 line="1475">the duration to set</doc>
             <type name="Gst.ClockTime" c:type="GstClockTime"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_emit_signals"
               c:identifier="gst_app_src_set_emit_signals">
-        <doc xml:space="preserve">Make appsrc emit the "new-preroll" and "new-buffer" signals. This option is
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/app/gstappsrc.c"
+             line="1728">Make appsrc emit the "new-preroll" and "new-buffer" signals. This option is
 by default disabled because signal emission is expensive and unneeded when
 the application prefers to operate in pull mode.</doc>
+        <source-position filename="gst-libs/gst/app/gstappsrc.h" line="164"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="appsrc" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAppSrc</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsrc.c"
+                 line="1730">a #GstAppSrc</doc>
             <type name="AppSrc" c:type="GstAppSrc*"/>
           </instance-parameter>
           <parameter name="emit" transfer-ownership="none">
-            <doc xml:space="preserve">the new state</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsrc.c"
+                 line="1731">the new state</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_latency" c:identifier="gst_app_src_set_latency">
-        <doc xml:space="preserve">Configure the @min and @max latency in @src. If @min is set to -1, the
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/app/gstappsrc.c"
+             line="1688">Configure the @min and @max latency in @src. If @min is set to -1, the
 default latency calculations for pseudo-live sources will be used.</doc>
+        <source-position filename="gst-libs/gst/app/gstappsrc.h" line="158"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="appsrc" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAppSrc</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsrc.c"
+                 line="1690">a #GstAppSrc</doc>
             <type name="AppSrc" c:type="GstAppSrc*"/>
           </instance-parameter>
           <parameter name="min" transfer-ownership="none">
-            <doc xml:space="preserve">the min latency</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsrc.c"
+                 line="1691">the min latency</doc>
             <type name="guint64" c:type="guint64"/>
           </parameter>
           <parameter name="max" transfer-ownership="none">
-            <doc xml:space="preserve">the max latency</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsrc.c"
+                 line="1692">the max latency</doc>
             <type name="guint64" c:type="guint64"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_max_bytes" c:identifier="gst_app_src_set_max_bytes">
-        <doc xml:space="preserve">Set the maximum amount of bytes that can be queued in @appsrc.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/app/gstappsrc.c"
+             line="1580">Set the maximum amount of bytes that can be queued in @appsrc.
 After the maximum amount of bytes are queued, @appsrc will emit the
 "enough-data" signal.</doc>
+        <source-position filename="gst-libs/gst/app/gstappsrc.h" line="149"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="appsrc" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAppSrc</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsrc.c"
+                 line="1582">a #GstAppSrc</doc>
             <type name="AppSrc" c:type="GstAppSrc*"/>
           </instance-parameter>
           <parameter name="max" transfer-ownership="none">
-            <doc xml:space="preserve">the maximum number of bytes to queue</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsrc.c"
+                 line="1583">the maximum number of bytes to queue</doc>
             <type name="guint64" c:type="guint64"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_size" c:identifier="gst_app_src_set_size">
-        <doc xml:space="preserve">Set the size of the stream in bytes. A value of -1 means that the size is
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/app/gstappsrc.c"
+             line="1422">Set the size of the stream in bytes. A value of -1 means that the size is
 not known.</doc>
+        <source-position filename="gst-libs/gst/app/gstappsrc.h" line="131"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="appsrc" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAppSrc</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsrc.c"
+                 line="1424">a #GstAppSrc</doc>
             <type name="AppSrc" c:type="GstAppSrc*"/>
           </instance-parameter>
           <parameter name="size" transfer-ownership="none">
-            <doc xml:space="preserve">the size to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsrc.c"
+                 line="1425">the size to set</doc>
             <type name="gint64" c:type="gint64"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_stream_type"
               c:identifier="gst_app_src_set_stream_type">
-        <doc xml:space="preserve">Set the stream type on @appsrc. For seekable streams, the "seek" signal must
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/app/gstappsrc.c"
+             line="1528">Set the stream type on @appsrc. For seekable streams, the "seek" signal must
 be connected to.
 
 A stream_type stream</doc>
+        <source-position filename="gst-libs/gst/app/gstappsrc.h" line="143"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="appsrc" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAppSrc</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsrc.c"
+                 line="1530">a #GstAppSrc</doc>
             <type name="AppSrc" c:type="GstAppSrc*"/>
           </instance-parameter>
           <parameter name="type" transfer-ownership="none">
-            <doc xml:space="preserve">the new state</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsrc.c"
+                 line="1531">the new state</doc>
             <type name="AppStreamType" c:type="GstAppStreamType"/>
           </parameter>
         </parameters>
@@ -1591,18 +2078,22 @@ A stream_type stream</doc>
         <type name="AppSrcPrivate" c:type="GstAppSrcPrivate*"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
       <glib:signal name="end-of-stream" when="last" action="1">
-        <doc xml:space="preserve">Notify @appsrc that no more buffer are available.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/app/gstappsrc.c"
+             line="555">Notify @appsrc that no more buffer are available.</doc>
         <return-value transfer-ownership="none">
           <type name="Gst.FlowReturn"/>
         </return-value>
       </glib:signal>
       <glib:signal name="enough-data" when="last">
-        <doc xml:space="preserve">Signal that the source has enough data. It is recommended that the
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/app/gstappsrc.c"
+             line="460">Signal that the source has enough data. It is recommended that the
 application stops calling push-buffer until the need-data signal is
 emitted again to avoid excessive buffer queueing.</doc>
         <return-value transfer-ownership="none">
@@ -1610,7 +2101,9 @@ emitted again to avoid excessive buffer queueing.</doc>
         </return-value>
       </glib:signal>
       <glib:signal name="need-data" when="last">
-        <doc xml:space="preserve">Signal that the source needs more data. In the callback or from another
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/app/gstappsrc.c"
+             line="441">Signal that the source needs more data. In the callback or from another
 thread you should call push-buffer or end-of-stream.
 
 @length is just a hint and when it is set to -1, any number of bytes can be
@@ -1623,13 +2116,17 @@ fired.</doc>
         </return-value>
         <parameters>
           <parameter name="length" transfer-ownership="none">
-            <doc xml:space="preserve">the amount of bytes needed.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsrc.c"
+                 line="444">the amount of bytes needed.</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </glib:signal>
       <glib:signal name="push-buffer" when="last" action="1">
-        <doc xml:space="preserve">Adds a buffer to the queue of buffers that the appsrc element will
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/app/gstappsrc.c"
+             line="489">Adds a buffer to the queue of buffers that the appsrc element will
 push to its source pad. This function does not take ownership of the
 buffer so the buffer needs to be unreffed after calling this function.
 
@@ -1640,7 +2137,9 @@ becomes available in the queue.</doc>
         </return-value>
         <parameters>
           <parameter name="buffer" transfer-ownership="none">
-            <doc xml:space="preserve">a buffer to push</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsrc.c"
+                 line="492">a buffer to push</doc>
             <type name="Gst.Buffer"/>
           </parameter>
         </parameters>
@@ -1649,7 +2148,9 @@ becomes available in the queue.</doc>
                    when="last"
                    action="1"
                    version="1.14">
-        <doc xml:space="preserve">Adds a buffer list to the queue of buffers and buffer lists that the
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/app/gstappsrc.c"
+             line="507">Adds a buffer list to the queue of buffers and buffer lists that the
 appsrc element will push to its source pad. This function does not take
 ownership of the buffer list so the buffer list needs to be unreffed
 after calling this function.
@@ -1661,13 +2162,17 @@ becomes available in the queue.</doc>
         </return-value>
         <parameters>
           <parameter name="buffer_list" transfer-ownership="none">
-            <doc xml:space="preserve">a buffer list to push</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsrc.c"
+                 line="510">a buffer list to push</doc>
             <type name="Gst.BufferList"/>
           </parameter>
         </parameters>
       </glib:signal>
       <glib:signal name="push-sample" when="last" action="1" version="1.6">
-        <doc xml:space="preserve">Extract a buffer from the provided sample and adds the extracted buffer
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/app/gstappsrc.c"
+             line="528">Extract a buffer from the provided sample and adds the extracted buffer
 to the queue of buffers that the appsrc element will
 push to its source pad. This function set the appsrc caps based on the caps
 in the sample and reset the caps if they change.
@@ -1683,22 +2188,30 @@ becomes available in the queue.</doc>
         </return-value>
         <parameters>
           <parameter name="sample" transfer-ownership="none">
-            <doc xml:space="preserve">a sample from which extract buffer to push</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsrc.c"
+                 line="531">a sample from which extract buffer to push</doc>
             <type name="Gst.Sample"/>
           </parameter>
         </parameters>
       </glib:signal>
       <glib:signal name="seek-data" when="last">
-        <doc xml:space="preserve">Seek to the given offset. The next push-buffer should produce buffers from
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/app/gstappsrc.c"
+             line="473">Seek to the given offset. The next push-buffer should produce buffers from
 the new @offset.
 This callback is only called for seekable stream types.</doc>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the seek succeeded.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/app/gstappsrc.c"
+               line="482">%TRUE if the seek succeeded.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <parameter name="offset" transfer-ownership="none">
-            <doc xml:space="preserve">the offset to seek to</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsrc.c"
+                 line="476">the offset to seek to</doc>
             <type name="guint64" c:type="guint64"/>
           </parameter>
         </parameters>
@@ -1707,10 +2220,14 @@ This callback is only called for seekable stream types.</doc>
     <record name="AppSrcCallbacks"
             c:type="GstAppSrcCallbacks"
             introspectable="0">
-      <doc xml:space="preserve">A set of callbacks that can be installed on the appsrc with
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/app/gstappsrc.h"
+           line="49">A set of callbacks that can be installed on the appsrc with
 gst_app_src_set_callbacks().</doc>
+      <source-position filename="gst-libs/gst/app/gstappsrc.h" line="71"/>
       <field name="need_data">
         <callback name="need_data">
+          <source-position filename="gst-libs/gst/app/gstappsrc.h" line="65"/>
           <return-value transfer-ownership="none">
             <type name="none" c:type="void"/>
           </return-value>
@@ -1733,6 +2250,7 @@ gst_app_src_set_callbacks().</doc>
       </field>
       <field name="enough_data">
         <callback name="enough_data">
+          <source-position filename="gst-libs/gst/app/gstappsrc.h" line="66"/>
           <return-value transfer-ownership="none">
             <type name="none" c:type="void"/>
           </return-value>
@@ -1752,6 +2270,7 @@ gst_app_src_set_callbacks().</doc>
       </field>
       <field name="seek_data">
         <callback name="seek_data">
+          <source-position filename="gst-libs/gst/app/gstappsrc.h" line="67"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -1773,7 +2292,7 @@ gst_app_src_set_callbacks().</doc>
         </callback>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -1781,11 +2300,13 @@ gst_app_src_set_callbacks().</doc>
     <record name="AppSrcClass"
             c:type="GstAppSrcClass"
             glib:is-gtype-struct-for="AppSrc">
+      <source-position filename="gst-libs/gst/app/gstappsrc.h" line="119"/>
       <field name="basesrc_class">
         <type name="GstBase.BaseSrcClass" c:type="GstBaseSrcClass"/>
       </field>
       <field name="need_data">
         <callback name="need_data">
+          <source-position filename="gst-libs/gst/app/gstappsrc.h" line="107"/>
           <return-value transfer-ownership="none">
             <type name="none" c:type="void"/>
           </return-value>
@@ -1801,6 +2322,7 @@ gst_app_src_set_callbacks().</doc>
       </field>
       <field name="enough_data">
         <callback name="enough_data">
+          <source-position filename="gst-libs/gst/app/gstappsrc.h" line="108"/>
           <return-value transfer-ownership="none">
             <type name="none" c:type="void"/>
           </return-value>
@@ -1813,6 +2335,7 @@ gst_app_src_set_callbacks().</doc>
       </field>
       <field name="seek_data">
         <callback name="seek_data">
+          <source-position filename="gst-libs/gst/app/gstappsrc.h" line="109"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -1828,19 +2351,26 @@ gst_app_src_set_callbacks().</doc>
       </field>
       <field name="push_buffer">
         <callback name="push_buffer">
+          <source-position filename="gst-libs/gst/app/gstappsrc.h" line="112"/>
           <return-value transfer-ownership="none">
-            <doc xml:space="preserve">#GST_FLOW_OK when the buffer was successfuly queued.
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsrc.c"
+                 line="1986">#GST_FLOW_OK when the buffer was successfully queued.
 #GST_FLOW_FLUSHING when @appsrc is not PAUSED or PLAYING.
-#GST_FLOW_EOS when EOS occured.</doc>
+#GST_FLOW_EOS when EOS occurred.</doc>
             <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
           </return-value>
           <parameters>
             <parameter name="appsrc" transfer-ownership="none">
-              <doc xml:space="preserve">a #GstAppSrc</doc>
+              <doc xml:space="preserve"
+                   filename="gst-libs/gst/app/gstappsrc.c"
+                   line="1977">a #GstAppSrc</doc>
               <type name="AppSrc" c:type="GstAppSrc*"/>
             </parameter>
             <parameter name="buffer" transfer-ownership="full">
-              <doc xml:space="preserve">a #GstBuffer to push</doc>
+              <doc xml:space="preserve"
+                   filename="gst-libs/gst/app/gstappsrc.c"
+                   line="1978">a #GstBuffer to push</doc>
               <type name="Gst.Buffer" c:type="GstBuffer*"/>
             </parameter>
           </parameters>
@@ -1848,14 +2378,19 @@ gst_app_src_set_callbacks().</doc>
       </field>
       <field name="end_of_stream">
         <callback name="end_of_stream">
+          <source-position filename="gst-libs/gst/app/gstappsrc.h" line="113"/>
           <return-value transfer-ownership="none">
-            <doc xml:space="preserve">#GST_FLOW_OK when the EOS was successfuly queued.
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsrc.c"
+                 line="2082">#GST_FLOW_OK when the EOS was successfully queued.
 #GST_FLOW_FLUSHING when @appsrc is not PAUSED or PLAYING.</doc>
             <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
           </return-value>
           <parameters>
             <parameter name="appsrc" transfer-ownership="none">
-              <doc xml:space="preserve">a #GstAppSrc</doc>
+              <doc xml:space="preserve"
+                   filename="gst-libs/gst/app/gstappsrc.c"
+                   line="2077">a #GstAppSrc</doc>
               <type name="AppSrc" c:type="GstAppSrc*"/>
             </parameter>
           </parameters>
@@ -1863,19 +2398,26 @@ gst_app_src_set_callbacks().</doc>
       </field>
       <field name="push_sample">
         <callback name="push_sample">
+          <source-position filename="gst-libs/gst/app/gstappsrc.h" line="114"/>
           <return-value transfer-ownership="none">
-            <doc xml:space="preserve">#GST_FLOW_OK when the buffer was successfuly queued.
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsrc.c"
+                 line="2037">#GST_FLOW_OK when the buffer was successfully queued.
 #GST_FLOW_FLUSHING when @appsrc is not PAUSED or PLAYING.
-#GST_FLOW_EOS when EOS occured.</doc>
+#GST_FLOW_EOS when EOS occurred.</doc>
             <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
           </return-value>
           <parameters>
             <parameter name="appsrc" transfer-ownership="none">
-              <doc xml:space="preserve">a #GstAppSrc</doc>
+              <doc xml:space="preserve"
+                   filename="gst-libs/gst/app/gstappsrc.c"
+                   line="2022">a #GstAppSrc</doc>
               <type name="AppSrc" c:type="GstAppSrc*"/>
             </parameter>
             <parameter name="sample" transfer-ownership="none">
-              <doc xml:space="preserve">a #GstSample from which buffer and caps may be
+              <doc xml:space="preserve"
+                   filename="gst-libs/gst/app/gstappsrc.c"
+                   line="2023">a #GstSample from which buffer and caps may be
 extracted</doc>
               <type name="Gst.Sample" c:type="GstSample*"/>
             </parameter>
@@ -1884,58 +2426,110 @@ extracted</doc>
       </field>
       <field name="push_buffer_list">
         <callback name="push_buffer_list">
+          <source-position filename="gst-libs/gst/app/gstappsrc.h" line="115"/>
           <return-value transfer-ownership="none">
-            <doc xml:space="preserve">#GST_FLOW_OK when the buffer list was successfuly queued.
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/app/gstappsrc.c"
+                 line="2008">#GST_FLOW_OK when the buffer list was successfully queued.
 #GST_FLOW_FLUSHING when @appsrc is not PAUSED or PLAYING.
-#GST_FLOW_EOS when EOS occured.</doc>
+#GST_FLOW_EOS when EOS occurred.</doc>
             <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
           </return-value>
           <parameters>
             <parameter name="appsrc" transfer-ownership="none">
-              <doc xml:space="preserve">a #GstAppSrc</doc>
+              <doc xml:space="preserve"
+                   filename="gst-libs/gst/app/gstappsrc.c"
+                   line="1998">a #GstAppSrc</doc>
               <type name="AppSrc" c:type="GstAppSrc*"/>
             </parameter>
             <parameter name="buffer_list" transfer-ownership="full">
-              <doc xml:space="preserve">a #GstBufferList to push</doc>
+              <doc xml:space="preserve"
+                   filename="gst-libs/gst/app/gstappsrc.c"
+                   line="1999">a #GstBufferList to push</doc>
               <type name="Gst.BufferList" c:type="GstBufferList*"/>
             </parameter>
           </parameters>
         </callback>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="2">
+        <array zero-terminated="0" fixed-size="2">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
     </record>
     <record name="AppSrcPrivate" c:type="GstAppSrcPrivate" disguised="1">
+      <source-position filename="gst-libs/gst/app/gstappsrc.h" line="45"/>
     </record>
     <enumeration name="AppStreamType"
                  glib:type-name="GstAppStreamType"
                  glib:get-type="gst_app_stream_type_get_type"
                  c:type="GstAppStreamType">
-      <doc xml:space="preserve">The stream type.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/app/gstappsrc.h"
+           line="73">The stream type.</doc>
       <member name="stream"
               value="0"
               c:identifier="GST_APP_STREAM_TYPE_STREAM"
               glib:nick="stream">
-        <doc xml:space="preserve">No seeking is supported in the stream, such as a
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/app/gstappsrc.h"
+             line="75">No seeking is supported in the stream, such as a
 live stream.</doc>
       </member>
       <member name="seekable"
               value="1"
               c:identifier="GST_APP_STREAM_TYPE_SEEKABLE"
               glib:nick="seekable">
-        <doc xml:space="preserve">The stream is seekable but seeking might not
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/app/gstappsrc.h"
+             line="77">The stream is seekable but seeking might not
 be very fast, such as data from a webserver.</doc>
       </member>
       <member name="random_access"
               value="2"
               c:identifier="GST_APP_STREAM_TYPE_RANDOM_ACCESS"
               glib:nick="random-access">
-        <doc xml:space="preserve">The stream is seekable and seeking is fast,
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/app/gstappsrc.h"
+             line="79">The stream is seekable and seeking is fast,
 such as in a local file.</doc>
       </member>
     </enumeration>
+    <function-macro name="IS_APP_SINK"
+                    c:identifier="GST_IS_APP_SINK"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/app/gstappsink.h" line="34"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_APP_SINK_CLASS"
+                    c:identifier="GST_IS_APP_SINK_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/app/gstappsink.h" line="36"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_APP_SRC"
+                    c:identifier="GST_IS_APP_SRC"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/app/gstappsrc.h" line="35"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_APP_SRC_CLASS"
+                    c:identifier="GST_IS_APP_SRC_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/app/gstappsrc.h" line="37"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
   </namespace>
 </repository>
index 81348a6..6a11bf0 100644 (file)
@@ -18,24 +18,474 @@ and/or use gtk-doc annotations.  -->
              shared-library="libgstaudio-1.0.so.0"
              c:identifier-prefixes="Gst"
              c:symbol-prefixes="gst">
+    <function-macro name="AUDIO_AGGREGATOR"
+                    c:identifier="GST_AUDIO_AGGREGATOR"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudioaggregator.h"
+                       line="163"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_AGGREGATOR_CLASS"
+                    c:identifier="GST_AUDIO_AGGREGATOR_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudioaggregator.h"
+                       line="164"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_AGGREGATOR_CONVERT_PAD"
+                    c:identifier="GST_AUDIO_AGGREGATOR_CONVERT_PAD"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudioaggregator.h"
+                       line="109"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_AGGREGATOR_CONVERT_PAD_CLASS"
+                    c:identifier="GST_AUDIO_AGGREGATOR_CONVERT_PAD_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudioaggregator.h"
+                       line="110"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_AGGREGATOR_CONVERT_PAD_GET_CLASS"
+                    c:identifier="GST_AUDIO_AGGREGATOR_CONVERT_PAD_GET_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudioaggregator.h"
+                       line="111"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_AGGREGATOR_GET_CLASS"
+                    c:identifier="GST_AUDIO_AGGREGATOR_GET_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudioaggregator.h"
+                       line="165"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_AGGREGATOR_PAD"
+                    c:identifier="GST_AUDIO_AGGREGATOR_PAD"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudioaggregator.h"
+                       line="46"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_AGGREGATOR_PAD_CLASS"
+                    c:identifier="GST_AUDIO_AGGREGATOR_PAD_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudioaggregator.h"
+                       line="47"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_AGGREGATOR_PAD_GET_CLASS"
+                    c:identifier="GST_AUDIO_AGGREGATOR_PAD_GET_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudioaggregator.h"
+                       line="48"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_BASE_SINK"
+                    c:identifier="GST_AUDIO_BASE_SINK"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudiobasesink.h"
+                       line="61"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_BASE_SINK_CAST"
+                    c:identifier="GST_AUDIO_BASE_SINK_CAST"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudiobasesink.h"
+                       line="62"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_BASE_SINK_CLASS"
+                    c:identifier="GST_AUDIO_BASE_SINK_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudiobasesink.h"
+                       line="63"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_BASE_SINK_CLOCK"
+                    c:identifier="GST_AUDIO_BASE_SINK_CLOCK"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/gstaudiobasesink.h"
+           line="68">Get the #GstClock of @obj.</doc>
+      <source-position filename="gst-libs/gst/audio/gstaudiobasesink.h"
+                       line="74"/>
+      <parameters>
+        <parameter name="obj">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudiobasesink.h"
+               line="70">a #GstAudioBaseSink</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_BASE_SINK_GET_CLASS"
+                    c:identifier="GST_AUDIO_BASE_SINK_GET_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudiobasesink.h"
+                       line="64"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_BASE_SINK_PAD"
+                    c:identifier="GST_AUDIO_BASE_SINK_PAD"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/gstaudiobasesink.h"
+           line="75">Get the sink #GstPad of @obj.</doc>
+      <source-position filename="gst-libs/gst/audio/gstaudiobasesink.h"
+                       line="81"/>
+      <parameters>
+        <parameter name="obj">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudiobasesink.h"
+               line="77">a #GstAudioBaseSink</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_BASE_SRC"
+                    c:identifier="GST_AUDIO_BASE_SRC"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudiobasesrc.h"
+                       line="39"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_BASE_SRC_CAST"
+                    c:identifier="GST_AUDIO_BASE_SRC_CAST"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudiobasesrc.h"
+                       line="40"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_BASE_SRC_CLASS"
+                    c:identifier="GST_AUDIO_BASE_SRC_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudiobasesrc.h"
+                       line="41"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_BASE_SRC_CLOCK"
+                    c:identifier="GST_AUDIO_BASE_SRC_CLOCK"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/gstaudiobasesrc.h"
+           line="46">Get the #GstClock of @obj.</doc>
+      <source-position filename="gst-libs/gst/audio/gstaudiobasesrc.h"
+                       line="52"/>
+      <parameters>
+        <parameter name="obj">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudiobasesrc.h"
+               line="48">a #GstAudioBaseSrc</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_BASE_SRC_GET_CLASS"
+                    c:identifier="GST_AUDIO_BASE_SRC_GET_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudiobasesrc.h"
+                       line="42"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_BASE_SRC_PAD"
+                    c:identifier="GST_AUDIO_BASE_SRC_PAD"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/gstaudiobasesrc.h"
+           line="53">Get the source #GstPad of @obj.</doc>
+      <source-position filename="gst-libs/gst/audio/gstaudiobasesrc.h"
+                       line="59"/>
+      <parameters>
+        <parameter name="obj">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudiobasesrc.h"
+               line="55">a #GstAudioBaseSrc</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_BUFFER_BPF"
+                    c:identifier="GST_AUDIO_BUFFER_BPF"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/audio-buffer.h" line="85"/>
+      <parameters>
+        <parameter name="b">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_BUFFER_BPS"
+                    c:identifier="GST_AUDIO_BUFFER_BPS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/audio-buffer.h" line="84"/>
+      <parameters>
+        <parameter name="b">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_BUFFER_CHANNELS"
+                    c:identifier="GST_AUDIO_BUFFER_CHANNELS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/audio-buffer.h" line="77"/>
+      <parameters>
+        <parameter name="b">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_BUFFER_DEPTH"
+                    c:identifier="GST_AUDIO_BUFFER_DEPTH"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/audio-buffer.h" line="82"/>
+      <parameters>
+        <parameter name="b">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_BUFFER_FORMAT"
+                    c:identifier="GST_AUDIO_BUFFER_FORMAT"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/audio-buffer.h" line="76"/>
+      <parameters>
+        <parameter name="b">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_BUFFER_LAYOUT"
+                    c:identifier="GST_AUDIO_BUFFER_LAYOUT"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/audio-buffer.h" line="78"/>
+      <parameters>
+        <parameter name="b">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_BUFFER_N_PLANES"
+                    c:identifier="GST_AUDIO_BUFFER_N_PLANES"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/audio-buffer.h" line="88"/>
+      <parameters>
+        <parameter name="b">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_BUFFER_N_SAMPLES"
+                    c:identifier="GST_AUDIO_BUFFER_N_SAMPLES"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/audio-buffer.h" line="87"/>
+      <parameters>
+        <parameter name="b">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_BUFFER_PLANE_DATA"
+                    c:identifier="GST_AUDIO_BUFFER_PLANE_DATA"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/audio-buffer.h" line="89"/>
+      <parameters>
+        <parameter name="b">
+        </parameter>
+        <parameter name="p">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_BUFFER_PLANE_SIZE"
+                    c:identifier="GST_AUDIO_BUFFER_PLANE_SIZE"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/audio-buffer.h" line="92"/>
+      <parameters>
+        <parameter name="b">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_BUFFER_RATE"
+                    c:identifier="GST_AUDIO_BUFFER_RATE"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/audio-buffer.h" line="79"/>
+      <parameters>
+        <parameter name="b">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_BUFFER_SAMPLE_STRIDE"
+                    c:identifier="GST_AUDIO_BUFFER_SAMPLE_STRIDE"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/audio-buffer.h" line="83"/>
+      <parameters>
+        <parameter name="b">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_BUFFER_WIDTH"
+                    c:identifier="GST_AUDIO_BUFFER_WIDTH"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/audio-buffer.h" line="81"/>
+      <parameters>
+        <parameter name="b">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_CAPS_MAKE"
+                    c:identifier="GST_AUDIO_CAPS_MAKE"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/audio-format.h"
+           line="359">Generic caps string for audio, for use in pad templates.</doc>
+      <source-position filename="gst-libs/gst/audio/audio-format.h"
+                       line="352"/>
+      <parameters>
+        <parameter name="format">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-format.h"
+               line="361">string format that describes the sample layout, as string
+    (e.g. "S16LE", "S8", etc.)</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_CD_SRC"
+                    c:identifier="GST_AUDIO_CD_SRC"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudiocdsrc.h"
+                       line="33"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_CD_SRC_CLASS"
+                    c:identifier="GST_AUDIO_CD_SRC_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudiocdsrc.h"
+                       line="34"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_CD_SRC_GET_CLASS"
+                    c:identifier="GST_AUDIO_CD_SRC_GET_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudiocdsrc.h"
+                       line="37"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
     <constant name="AUDIO_CHANNELS_RANGE"
               value="(int) [ 1, max ]"
               c:type="GST_AUDIO_CHANNELS_RANGE">
-      <doc xml:space="preserve">Maximum range of allowed channels, for use in template caps strings.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/audio-format.h"
+           line="298">Maximum range of allowed channels, for use in template caps strings.</doc>
+      <source-position filename="gst-libs/gst/audio/audio-format.h"
+                       line="303"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
+    <function-macro name="AUDIO_CHANNEL_POSITION_MASK"
+                    c:identifier="GST_AUDIO_CHANNEL_POSITION_MASK"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/audio-channels.h"
+                       line="132"/>
+      <parameters>
+        <parameter name="pos">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_CLOCK"
+                    c:identifier="GST_AUDIO_CLOCK"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudioclock.h"
+                       line="36"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_CLOCK_CAST"
+                    c:identifier="GST_AUDIO_CLOCK_CAST"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudioclock.h"
+                       line="44"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_CLOCK_CLASS"
+                    c:identifier="GST_AUDIO_CLOCK_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudioclock.h"
+                       line="38"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
     <constant name="AUDIO_CONVERTER_OPT_DITHER_METHOD"
               value="GstAudioConverter.dither-method"
               c:type="GST_AUDIO_CONVERTER_OPT_DITHER_METHOD">
-      <doc xml:space="preserve">#GST_TYPE_AUDIO_DITHER_METHOD, The dither method to use when
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/audio-converter.h"
+           line="42">#GstAudioDitherMethod, The dither method to use when
 changing bit depth.
 Default is #GST_AUDIO_DITHER_NONE.</doc>
+      <source-position filename="gst-libs/gst/audio/audio-converter.h"
+                       line="49"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="AUDIO_CONVERTER_OPT_MIX_MATRIX"
               value="GstAudioConverter.mix-matrix"
               c:type="GST_AUDIO_CONVERTER_OPT_MIX_MATRIX">
-      <doc xml:space="preserve">#GST_TYPE_VALUE_LIST, The channel mapping matrix.
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/audio-converter.h"
+           line="69">#GST_TYPE_LIST, The channel mapping matrix.
 
 The matrix coefficients must be between -1 and 1: the number of rows is equal
 to the number of output channels and the number of columns is equal to the
@@ -62,94 +512,884 @@ g_value_unset (&amp;v2);
 g_object_set_property (G_OBJECT (audiomixmatrix), "matrix", &amp;v);
 g_value_unset (&amp;v);
 ]|</doc>
+      <source-position filename="gst-libs/gst/audio/audio-converter.h"
+                       line="100"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="AUDIO_CONVERTER_OPT_NOISE_SHAPING_METHOD"
               value="GstAudioConverter.noise-shaping-method"
               c:type="GST_AUDIO_CONVERTER_OPT_NOISE_SHAPING_METHOD">
-      <doc xml:space="preserve">#GST_TYPE_AUDIO_NOISE_SHAPING_METHOD, The noise shaping method to use
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/audio-converter.h"
+           line="51">#GstAudioNoiseShapingMethod, The noise shaping method to use
 to mask noise from quantization errors.
 Default is #GST_AUDIO_NOISE_SHAPING_NONE.</doc>
+      <source-position filename="gst-libs/gst/audio/audio-converter.h"
+                       line="58"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="AUDIO_CONVERTER_OPT_QUANTIZATION"
               value="GstAudioConverter.quantization"
               c:type="GST_AUDIO_CONVERTER_OPT_QUANTIZATION">
-      <doc xml:space="preserve">#G_TYPE_UINT, The quantization amount. Components will be
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/audio-converter.h"
+           line="60">#G_TYPE_UINT, The quantization amount. Components will be
 quantized to multiples of this value.
 Default is 1</doc>
+      <source-position filename="gst-libs/gst/audio/audio-converter.h"
+                       line="67"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="AUDIO_CONVERTER_OPT_RESAMPLER_METHOD"
               value="GstAudioConverter.resampler-method"
               c:type="GST_AUDIO_CONVERTER_OPT_RESAMPLER_METHOD">
-      <doc xml:space="preserve">#GST_TYPE_AUDIO_RESAMPLER_METHOD, The resampler method to use when
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/audio-converter.h"
+           line="33">#GstAudioResamplerMethod, The resampler method to use when
 changing sample rates.
 Default is #GST_AUDIO_RESAMPLER_METHOD_BLACKMAN_NUTTALL.</doc>
+      <source-position filename="gst-libs/gst/audio/audio-converter.h"
+                       line="40"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
+    <function-macro name="AUDIO_DECODER"
+                    c:identifier="GST_AUDIO_DECODER"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                       line="37"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_DECODER_CAST"
+                    c:identifier="GST_AUDIO_DECODER_CAST"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                       line="47"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_DECODER_CLASS"
+                    c:identifier="GST_AUDIO_DECODER_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                       line="39"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_DECODER_ERROR"
+                    c:identifier="GST_AUDIO_DECODER_ERROR"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/gstaudiodecoder.h"
+           line="113">Utility function that audio decoder elements can use in case they encountered
+a data processing error that may be fatal for the current "data unit" but
+need not prevent subsequent decoding.  Such errors are counted and if there
+are too many, as configured in the context's max_errors, the pipeline will
+post an error message and the application will be requested to stop further
+media processing.  Otherwise, it is considered a "glitch" and only a warning
+is logged. In either case, @ret is set to the proper value to
+return to upstream/caller (indicating either GST_FLOW_ERROR or GST_FLOW_OK).</doc>
+      <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                       line="133"/>
+      <parameters>
+        <parameter name="el">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudiodecoder.h"
+               line="115">the base audio decoder element that generates the error</doc>
+        </parameter>
+        <parameter name="weight">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudiodecoder.h"
+               line="116">element defined weight of the error, added to error count</doc>
+        </parameter>
+        <parameter name="domain">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudiodecoder.h"
+               line="117">like CORE, LIBRARY, RESOURCE or STREAM (see #gstreamer-GstGError)</doc>
+        </parameter>
+        <parameter name="code">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudiodecoder.h"
+               line="118">error code defined for that domain (see #gstreamer-GstGError)</doc>
+        </parameter>
+        <parameter name="text">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudiodecoder.h"
+               line="119">the message to display (format string and args enclosed in
+         parentheses)</doc>
+        </parameter>
+        <parameter name="debug">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudiodecoder.h"
+               line="121">debugging information for the message (format string and args
+         enclosed in parentheses)</doc>
+        </parameter>
+        <parameter name="ret">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudiodecoder.h"
+               line="123">variable to receive return value</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_DECODER_GET_CLASS"
+                    c:identifier="GST_AUDIO_DECODER_GET_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                       line="41"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_DECODER_INPUT_SEGMENT"
+                    c:identifier="GST_AUDIO_DECODER_INPUT_SEGMENT"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/gstaudiodecoder.h"
+           line="83">Gives the input segment of the element.</doc>
+      <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                       line="88"/>
+      <parameters>
+        <parameter name="obj">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudiodecoder.h"
+               line="85">audio decoder instance</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
     <constant name="AUDIO_DECODER_MAX_ERRORS"
               value="10"
               c:type="GST_AUDIO_DECODER_MAX_ERRORS">
-      <doc xml:space="preserve">Default maximum number of errors tolerated before signaling error.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/gstaudiodecoder.h"
+           line="145">Default maximum number of errors tolerated before signaling error.</doc>
+      <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                       line="149"/>
       <type name="gint" c:type="gint"/>
     </constant>
+    <function-macro name="AUDIO_DECODER_OUTPUT_SEGMENT"
+                    c:identifier="GST_AUDIO_DECODER_OUTPUT_SEGMENT"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/gstaudiodecoder.h"
+           line="91">Gives the output segment of the element.</doc>
+      <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                       line="96"/>
+      <parameters>
+        <parameter name="obj">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudiodecoder.h"
+               line="93">audio decoder instance</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
     <constant name="AUDIO_DECODER_SINK_NAME"
               value="sink"
               c:type="GST_AUDIO_DECODER_SINK_NAME">
-      <doc xml:space="preserve">The name of the templates for the sink pad.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/gstaudiodecoder.h"
+           line="51">The name of the templates for the sink pad.</doc>
+      <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                       line="55"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
+    <function-macro name="AUDIO_DECODER_SINK_PAD"
+                    c:identifier="GST_AUDIO_DECODER_SINK_PAD"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/gstaudiodecoder.h"
+           line="72">Gives the pointer to the sink #GstPad object of the element.</doc>
+      <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                       line="77"/>
+      <parameters>
+        <parameter name="obj">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudiodecoder.h"
+               line="74">base audio codec instance</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
     <constant name="AUDIO_DECODER_SRC_NAME"
               value="src"
               c:type="GST_AUDIO_DECODER_SRC_NAME">
-      <doc xml:space="preserve">The name of the templates for the source pad.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/gstaudiodecoder.h"
+           line="57">The name of the templates for the source pad.</doc>
+      <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                       line="61"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
+    <function-macro name="AUDIO_DECODER_SRC_PAD"
+                    c:identifier="GST_AUDIO_DECODER_SRC_PAD"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/gstaudiodecoder.h"
+           line="64">Gives the pointer to the source #GstPad object of the element.</doc>
+      <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                       line="69"/>
+      <parameters>
+        <parameter name="obj">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudiodecoder.h"
+               line="66">base audio codec instance</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_DECODER_STREAM_LOCK"
+                    c:identifier="GST_AUDIO_DECODER_STREAM_LOCK"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                       line="79"/>
+      <parameters>
+        <parameter name="dec">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_DECODER_STREAM_UNLOCK"
+                    c:identifier="GST_AUDIO_DECODER_STREAM_UNLOCK"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                       line="80"/>
+      <parameters>
+        <parameter name="dec">
+        </parameter>
+      </parameters>
+    </function-macro>
     <constant name="AUDIO_DEF_CHANNELS"
               value="2"
               c:type="GST_AUDIO_DEF_CHANNELS">
-      <doc xml:space="preserve">Standard number of channels used in consumer audio.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/audio-format.h"
+           line="378">Standard number of channels used in consumer audio.</doc>
+      <source-position filename="gst-libs/gst/audio/audio-format.h"
+                       line="369"/>
       <type name="gint" c:type="gint"/>
     </constant>
     <constant name="AUDIO_DEF_FORMAT"
               value="S16LE"
               c:type="GST_AUDIO_DEF_FORMAT">
-      <doc xml:space="preserve">Standard format used in consumer audio.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/audio-format.h"
+           line="384">Standard format used in consumer audio.</doc>
+      <source-position filename="gst-libs/gst/audio/audio-format.h"
+                       line="375"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="AUDIO_DEF_RATE" value="44100" c:type="GST_AUDIO_DEF_RATE">
-      <doc xml:space="preserve">Standard sampling rate used in consumer audio.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/audio-format.h"
+           line="372">Standard sampling rate used in consumer audio.</doc>
+      <source-position filename="gst-libs/gst/audio/audio-format.h"
+                       line="363"/>
       <type name="gint" c:type="gint"/>
     </constant>
+    <function-macro name="AUDIO_ENCODER"
+                    c:identifier="GST_AUDIO_ENCODER"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudioencoder.h"
+                       line="34"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_ENCODER_CAST"
+                    c:identifier="GST_AUDIO_ENCODER_CAST"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudioencoder.h"
+                       line="39"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_ENCODER_CLASS"
+                    c:identifier="GST_AUDIO_ENCODER_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudioencoder.h"
+                       line="35"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_ENCODER_GET_CLASS"
+                    c:identifier="GST_AUDIO_ENCODER_GET_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudioencoder.h"
+                       line="36"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_ENCODER_INPUT_SEGMENT"
+                    c:identifier="GST_AUDIO_ENCODER_INPUT_SEGMENT"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/gstaudioencoder.h"
+           line="70">Gives the input segment of the element.</doc>
+      <source-position filename="gst-libs/gst/audio/gstaudioencoder.h"
+                       line="76"/>
+      <parameters>
+        <parameter name="obj">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudioencoder.h"
+               line="72">base parse instance</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_ENCODER_OUTPUT_SEGMENT"
+                    c:identifier="GST_AUDIO_ENCODER_OUTPUT_SEGMENT"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/gstaudioencoder.h"
+           line="78">Gives the output segment of the element.</doc>
+      <source-position filename="gst-libs/gst/audio/gstaudioencoder.h"
+                       line="84"/>
+      <parameters>
+        <parameter name="obj">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudioencoder.h"
+               line="80">base parse instance</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
     <constant name="AUDIO_ENCODER_SINK_NAME"
               value="sink"
               c:type="GST_AUDIO_ENCODER_SINK_NAME">
-      <doc xml:space="preserve">the name of the templates for the sink pad</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/gstaudioencoder.h"
+           line="41">the name of the templates for the sink pad</doc>
+      <source-position filename="gst-libs/gst/audio/gstaudioencoder.h"
+                       line="46"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
+    <function-macro name="AUDIO_ENCODER_SINK_PAD"
+                    c:identifier="GST_AUDIO_ENCODER_SINK_PAD"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/gstaudioencoder.h"
+           line="62">Gives the pointer to the sink #GstPad object of the element.</doc>
+      <source-position filename="gst-libs/gst/audio/gstaudioencoder.h"
+                       line="68"/>
+      <parameters>
+        <parameter name="obj">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudioencoder.h"
+               line="64">audio encoder instance</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
     <constant name="AUDIO_ENCODER_SRC_NAME"
               value="src"
               c:type="GST_AUDIO_ENCODER_SRC_NAME">
-      <doc xml:space="preserve">the name of the templates for the source pad</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/gstaudioencoder.h"
+           line="47">the name of the templates for the source pad</doc>
+      <source-position filename="gst-libs/gst/audio/gstaudioencoder.h"
+                       line="52"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
+    <function-macro name="AUDIO_ENCODER_SRC_PAD"
+                    c:identifier="GST_AUDIO_ENCODER_SRC_PAD"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/gstaudioencoder.h"
+           line="54">Gives the pointer to the source #GstPad object of the element.</doc>
+      <source-position filename="gst-libs/gst/audio/gstaudioencoder.h"
+                       line="60"/>
+      <parameters>
+        <parameter name="obj">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudioencoder.h"
+               line="56">audio encoder instance</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_ENCODER_STREAM_LOCK"
+                    c:identifier="GST_AUDIO_ENCODER_STREAM_LOCK"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudioencoder.h"
+                       line="86"/>
+      <parameters>
+        <parameter name="enc">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_ENCODER_STREAM_UNLOCK"
+                    c:identifier="GST_AUDIO_ENCODER_STREAM_UNLOCK"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudioencoder.h"
+                       line="87"/>
+      <parameters>
+        <parameter name="enc">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_FILTER"
+                    c:identifier="GST_AUDIO_FILTER"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudiofilter.h"
+                       line="36"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_FILTER_BPF"
+                    c:identifier="GST_AUDIO_FILTER_BPF"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudiofilter.h"
+                       line="71"/>
+      <parameters>
+        <parameter name="filter">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_FILTER_BPS"
+                    c:identifier="GST_AUDIO_FILTER_BPS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudiofilter.h"
+                       line="72"/>
+      <parameters>
+        <parameter name="filter">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_FILTER_CAST"
+                    c:identifier="GST_AUDIO_FILTER_CAST"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudiofilter.h"
+                       line="38"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_FILTER_CHANNELS"
+                    c:identifier="GST_AUDIO_FILTER_CHANNELS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudiofilter.h"
+                       line="70"/>
+      <parameters>
+        <parameter name="filter">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_FILTER_CLASS"
+                    c:identifier="GST_AUDIO_FILTER_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudiofilter.h"
+                       line="40"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_FILTER_CLASS_CAST"
+                    c:identifier="GST_AUDIO_FILTER_CLASS_CAST"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudiofilter.h"
+                       line="42"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_FILTER_FORMAT"
+                    c:identifier="GST_AUDIO_FILTER_FORMAT"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudiofilter.h"
+                       line="68"/>
+      <parameters>
+        <parameter name="filter">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_FILTER_GET_CLASS"
+                    c:identifier="GST_AUDIO_FILTER_GET_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudiofilter.h"
+                       line="44"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_FILTER_INFO"
+                    c:identifier="GST_AUDIO_FILTER_INFO"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudiofilter.h"
+                       line="66"/>
+      <parameters>
+        <parameter name="filter">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_FILTER_RATE"
+                    c:identifier="GST_AUDIO_FILTER_RATE"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudiofilter.h"
+                       line="69"/>
+      <parameters>
+        <parameter name="filter">
+        </parameter>
+      </parameters>
+    </function-macro>
     <constant name="AUDIO_FORMATS_ALL"
-              value=" { S8, U8, S16LE, S16BE, U16LE, U16BE, S24_32LE, S24_32BE, U24_32LE, U24_32BE, S32LE, S32BE, U32LE, U32BE, S24LE, S24BE, U24LE, U24BE, S20LE, S20BE, U20LE, U20BE, S18LE, S18BE, U18LE, U18BE, F32LE, F32BE, F64LE, F64BE }"
+              value="{ F64BE, F64LE, F32BE, F32LE, S32BE, S32LE, U32BE, U32LE, S24_32BE, S24_32LE, U24_32BE, U24_32LE, S24BE, S24LE, U24BE, U24LE, S20BE, S20LE, U20BE, U20LE, S18BE, S18LE, U18BE, U18LE, S16BE, S16LE, U16BE, U16LE, S8, U8 }"
               c:type="GST_AUDIO_FORMATS_ALL">
-      <doc xml:space="preserve">List of all audio formats, for use in template caps strings.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/audio-format.h"
+           line="325">List of all audio formats, for use in template caps strings.
+
+Formats are sorted by decreasing "quality", using these criteria by priority:
+  - depth
+  - width
+  - Float &gt; Signed &gt; Unsigned
+  - native endianness preferred</doc>
+      <source-position filename="gst-libs/gst/audio/audio-format.h"
+                       line="337"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
+    <function-macro name="AUDIO_FORMAT_INFO_DEPTH"
+                    c:identifier="GST_AUDIO_FORMAT_INFO_DEPTH"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/audio-format.h"
+                       line="271"/>
+      <parameters>
+        <parameter name="info">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_FORMAT_INFO_ENDIANNESS"
+                    c:identifier="GST_AUDIO_FORMAT_INFO_ENDIANNESS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/audio-format.h"
+                       line="267"/>
+      <parameters>
+        <parameter name="info">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_FORMAT_INFO_FLAGS"
+                    c:identifier="GST_AUDIO_FORMAT_INFO_FLAGS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/audio-format.h"
+                       line="261"/>
+      <parameters>
+        <parameter name="info">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_FORMAT_INFO_FORMAT"
+                    c:identifier="GST_AUDIO_FORMAT_INFO_FORMAT"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/audio-format.h"
+                       line="259"/>
+      <parameters>
+        <parameter name="info">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_FORMAT_INFO_IS_BIG_ENDIAN"
+                    c:identifier="GST_AUDIO_FORMAT_INFO_IS_BIG_ENDIAN"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/audio-format.h"
+                       line="269"/>
+      <parameters>
+        <parameter name="info">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_FORMAT_INFO_IS_FLOAT"
+                    c:identifier="GST_AUDIO_FORMAT_INFO_IS_FLOAT"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/audio-format.h"
+                       line="264"/>
+      <parameters>
+        <parameter name="info">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_FORMAT_INFO_IS_INTEGER"
+                    c:identifier="GST_AUDIO_FORMAT_INFO_IS_INTEGER"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/audio-format.h"
+                       line="263"/>
+      <parameters>
+        <parameter name="info">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_FORMAT_INFO_IS_LITTLE_ENDIAN"
+                    c:identifier="GST_AUDIO_FORMAT_INFO_IS_LITTLE_ENDIAN"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/audio-format.h"
+                       line="268"/>
+      <parameters>
+        <parameter name="info">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_FORMAT_INFO_IS_SIGNED"
+                    c:identifier="GST_AUDIO_FORMAT_INFO_IS_SIGNED"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/audio-format.h"
+                       line="265"/>
+      <parameters>
+        <parameter name="info">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_FORMAT_INFO_NAME"
+                    c:identifier="GST_AUDIO_FORMAT_INFO_NAME"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/audio-format.h"
+                       line="260"/>
+      <parameters>
+        <parameter name="info">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_FORMAT_INFO_WIDTH"
+                    c:identifier="GST_AUDIO_FORMAT_INFO_WIDTH"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/audio-format.h"
+                       line="270"/>
+      <parameters>
+        <parameter name="info">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_INFO_BPF"
+                    c:identifier="GST_AUDIO_INFO_BPF"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/audio-info.h" line="101"/>
+      <parameters>
+        <parameter name="info">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_INFO_BPS"
+                    c:identifier="GST_AUDIO_INFO_BPS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/audio-info.h" line="85"/>
+      <parameters>
+        <parameter name="info">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_INFO_CHANNELS"
+                    c:identifier="GST_AUDIO_INFO_CHANNELS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/audio-info.h" line="100"/>
+      <parameters>
+        <parameter name="info">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_INFO_DEPTH"
+                    c:identifier="GST_AUDIO_INFO_DEPTH"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/audio-info.h" line="84"/>
+      <parameters>
+        <parameter name="i">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_INFO_ENDIANNESS"
+                    c:identifier="GST_AUDIO_INFO_ENDIANNESS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/audio-info.h" line="91"/>
+      <parameters>
+        <parameter name="i">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_INFO_FLAGS"
+                    c:identifier="GST_AUDIO_INFO_FLAGS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/audio-info.h" line="95"/>
+      <parameters>
+        <parameter name="info">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_INFO_FORMAT"
+                    c:identifier="GST_AUDIO_INFO_FORMAT"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/audio-info.h" line="81"/>
+      <parameters>
+        <parameter name="i">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_INFO_IS_BIG_ENDIAN"
+                    c:identifier="GST_AUDIO_INFO_IS_BIG_ENDIAN"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/audio-info.h" line="93"/>
+      <parameters>
+        <parameter name="i">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_INFO_IS_FLOAT"
+                    c:identifier="GST_AUDIO_INFO_IS_FLOAT"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/audio-info.h" line="88"/>
+      <parameters>
+        <parameter name="i">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_INFO_IS_INTEGER"
+                    c:identifier="GST_AUDIO_INFO_IS_INTEGER"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/audio-info.h" line="87"/>
+      <parameters>
+        <parameter name="i">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_INFO_IS_LITTLE_ENDIAN"
+                    c:identifier="GST_AUDIO_INFO_IS_LITTLE_ENDIAN"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/audio-info.h" line="92"/>
+      <parameters>
+        <parameter name="i">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_INFO_IS_SIGNED"
+                    c:identifier="GST_AUDIO_INFO_IS_SIGNED"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/audio-info.h" line="89"/>
+      <parameters>
+        <parameter name="i">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_INFO_IS_UNPOSITIONED"
+                    c:identifier="GST_AUDIO_INFO_IS_UNPOSITIONED"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/audio-info.h" line="96"/>
+      <parameters>
+        <parameter name="info">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_INFO_IS_VALID"
+                    c:identifier="GST_AUDIO_INFO_IS_VALID"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/audio-info.h" line="79"/>
+      <parameters>
+        <parameter name="i">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_INFO_LAYOUT"
+                    c:identifier="GST_AUDIO_INFO_LAYOUT"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/audio-info.h" line="97"/>
+      <parameters>
+        <parameter name="info">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_INFO_NAME"
+                    c:identifier="GST_AUDIO_INFO_NAME"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/audio-info.h" line="82"/>
+      <parameters>
+        <parameter name="i">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_INFO_POSITION"
+                    c:identifier="GST_AUDIO_INFO_POSITION"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/audio-info.h" line="102"/>
+      <parameters>
+        <parameter name="info">
+        </parameter>
+        <parameter name="c">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_INFO_RATE"
+                    c:identifier="GST_AUDIO_INFO_RATE"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/audio-info.h" line="99"/>
+      <parameters>
+        <parameter name="info">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_INFO_WIDTH"
+                    c:identifier="GST_AUDIO_INFO_WIDTH"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/audio-info.h" line="83"/>
+      <parameters>
+        <parameter name="i">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_NE"
+                    c:identifier="GST_AUDIO_NE"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/audio-format.h"
+           line="305">Turns audio format string @s into the format string for native endianness.</doc>
+      <source-position filename="gst-libs/gst/audio/audio-format.h"
+                       line="318"/>
+      <parameters>
+        <parameter name="s">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-format.h"
+               line="307">format string without endianness marker</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_OE"
+                    c:identifier="GST_AUDIO_OE"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/audio-format.h"
+           line="311">Turns audio format string @s into the format string for other endianness.</doc>
+      <source-position filename="gst-libs/gst/audio/audio-format.h"
+                       line="319"/>
+      <parameters>
+        <parameter name="s">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-format.h"
+               line="313">format string without endianness marker</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
     <constant name="AUDIO_RATE_RANGE"
               value="(int) [ 1, max ]"
               c:type="GST_AUDIO_RATE_RANGE">
-      <doc xml:space="preserve">Maximum range of allowed sample rates, for use in template caps strings.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/audio-format.h"
+           line="292">Maximum range of allowed sample rates, for use in template caps strings.</doc>
+      <source-position filename="gst-libs/gst/audio/audio-format.h"
+                       line="297"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="AUDIO_RESAMPLER_OPT_CUBIC_B"
               value="GstAudioResampler.cubic-b"
               c:type="GST_AUDIO_RESAMPLER_OPT_CUBIC_B">
-      <doc xml:space="preserve">G_TYPE_DOUBLE, B parameter of the cubic filter.
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/audio-resampler.h"
+           line="51">G_TYPE_DOUBLE, B parameter of the cubic filter.
 Values between 0.0 and 2.0 are accepted. 1.0 is the default.
 
 Below are some values of popular filters:
@@ -157,107 +1397,292 @@ Below are some values of popular filters:
 Hermite           0.0     0.0
 Spline            1.0     0.0
 Catmull-Rom       0.0     1/2</doc>
+      <source-position filename="gst-libs/gst/audio/audio-resampler.h"
+                       line="63"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="AUDIO_RESAMPLER_OPT_CUBIC_C"
               value="GstAudioResampler.cubic-c"
               c:type="GST_AUDIO_RESAMPLER_OPT_CUBIC_C">
-      <doc xml:space="preserve">G_TYPE_DOUBLE, C parameter of the cubic filter.
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/audio-resampler.h"
+           line="64">G_TYPE_DOUBLE, C parameter of the cubic filter.
 Values between 0.0 and 2.0 are accepted. 0.0 is the default.
 
 See #GST_AUDIO_RESAMPLER_OPT_CUBIC_B for some more common values</doc>
+      <source-position filename="gst-libs/gst/audio/audio-resampler.h"
+                       line="72"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="AUDIO_RESAMPLER_OPT_CUTOFF"
               value="GstAudioResampler.cutoff"
               c:type="GST_AUDIO_RESAMPLER_OPT_CUTOFF">
-      <doc xml:space="preserve">G_TYPE_DOUBLE, Cutoff parameter for the filter. 0.940 is the default.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/audio-resampler.h"
+           line="30">G_TYPE_DOUBLE, Cutoff parameter for the filter. 0.940 is the default.</doc>
+      <source-position filename="gst-libs/gst/audio/audio-resampler.h"
+                       line="35"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="AUDIO_RESAMPLER_OPT_FILTER_INTERPOLATION"
               value="GstAudioResampler.filter-interpolation"
               c:type="GST_AUDIO_RESAMPLER_OPT_FILTER_INTERPOLATION">
-      <doc xml:space="preserve">GST_TYPE_AUDIO_RESAMPLER_INTERPOLATION: how the filter coeficients should be
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/audio-resampler.h"
+           line="131">GST_TYPE_AUDIO_RESAMPLER_INTERPOLATION: how the filter coefficients should be
    interpolated.
 GST_AUDIO_RESAMPLER_FILTER_INTERPOLATION_CUBIC is default.</doc>
+      <source-position filename="gst-libs/gst/audio/audio-resampler.h"
+                       line="138"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="AUDIO_RESAMPLER_OPT_FILTER_MODE"
               value="GstAudioResampler.filter-mode"
               c:type="GST_AUDIO_RESAMPLER_OPT_FILTER_MODE">
-      <doc xml:space="preserve">GST_TYPE_AUDIO_RESAMPLER_FILTER_MODE: how the filter tables should be
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/audio-resampler.h"
+           line="99">GST_TYPE_AUDIO_RESAMPLER_FILTER_MODE: how the filter tables should be
 constructed.
 GST_AUDIO_RESAMPLER_FILTER_MODE_AUTO is the default.</doc>
+      <source-position filename="gst-libs/gst/audio/audio-resampler.h"
+                       line="106"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="AUDIO_RESAMPLER_OPT_FILTER_MODE_THRESHOLD"
               value="GstAudioResampler.filter-mode-threshold"
               c:type="GST_AUDIO_RESAMPLER_OPT_FILTER_MODE_THRESHOLD">
-      <doc xml:space="preserve">G_TYPE_UINT: the amount of memory to use for full filter tables before
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/audio-resampler.h"
+           line="107">G_TYPE_UINT: the amount of memory to use for full filter tables before
 switching to interpolated filter tables.
 1048576 is the default.</doc>
+      <source-position filename="gst-libs/gst/audio/audio-resampler.h"
+                       line="114"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="AUDIO_RESAMPLER_OPT_FILTER_OVERSAMPLE"
               value="GstAudioResampler.filter-oversample"
               c:type="GST_AUDIO_RESAMPLER_OPT_FILTER_OVERSAMPLE">
-      <doc xml:space="preserve">G_TYPE_UINT, oversampling to use when interpolating filters
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/audio-resampler.h"
+           line="139">G_TYPE_UINT, oversampling to use when interpolating filters
 8 is the default.</doc>
+      <source-position filename="gst-libs/gst/audio/audio-resampler.h"
+                       line="145"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="AUDIO_RESAMPLER_OPT_MAX_PHASE_ERROR"
               value="GstAudioResampler.max-phase-error"
               c:type="GST_AUDIO_RESAMPLER_OPT_MAX_PHASE_ERROR">
-      <doc xml:space="preserve">G_TYPE_DOUBLE: The maximum allowed phase error when switching sample
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/audio-resampler.h"
+           line="147">G_TYPE_DOUBLE: The maximum allowed phase error when switching sample
 rates.
 0.1 is the default.</doc>
+      <source-position filename="gst-libs/gst/audio/audio-resampler.h"
+                       line="154"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="AUDIO_RESAMPLER_OPT_N_TAPS"
               value="GstAudioResampler.n-taps"
               c:type="GST_AUDIO_RESAMPLER_OPT_N_TAPS">
-      <doc xml:space="preserve">G_TYPE_INT: the number of taps to use for the filter.
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/audio-resampler.h"
+           line="74">G_TYPE_INT: the number of taps to use for the filter.
 0 is the default and selects the taps automatically.</doc>
+      <source-position filename="gst-libs/gst/audio/audio-resampler.h"
+                       line="80"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="AUDIO_RESAMPLER_OPT_STOP_ATTENUATION"
               value="GstAudioResampler.stop-attenutation"
               c:type="GST_AUDIO_RESAMPLER_OPT_STOP_ATTENUATION">
-      <doc xml:space="preserve">G_TYPE_DOUBLE, stopband attenuation in decibels. The attenuation
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/audio-resampler.h"
+           line="36">G_TYPE_DOUBLE, stopband attenuation in decibels. The attenuation
 after the stopband for the kaiser window. 85 dB is the default.</doc>
+      <source-position filename="gst-libs/gst/audio/audio-resampler.h"
+                       line="42"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="AUDIO_RESAMPLER_OPT_TRANSITION_BANDWIDTH"
               value="GstAudioResampler.transition-bandwidth"
               c:type="GST_AUDIO_RESAMPLER_OPT_TRANSITION_BANDWIDTH">
-      <doc xml:space="preserve">G_TYPE_DOUBLE, transition bandwidth. The width of the
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/audio-resampler.h"
+           line="43">G_TYPE_DOUBLE, transition bandwidth. The width of the
 transition band for the kaiser window. 0.087 is the default.</doc>
+      <source-position filename="gst-libs/gst/audio/audio-resampler.h"
+                       line="49"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="AUDIO_RESAMPLER_QUALITY_DEFAULT"
               value="4"
               c:type="GST_AUDIO_RESAMPLER_QUALITY_DEFAULT">
+      <source-position filename="gst-libs/gst/audio/audio-resampler.h"
+                       line="202"/>
       <type name="gint" c:type="gint"/>
     </constant>
     <constant name="AUDIO_RESAMPLER_QUALITY_MAX"
               value="10"
               c:type="GST_AUDIO_RESAMPLER_QUALITY_MAX">
+      <source-position filename="gst-libs/gst/audio/audio-resampler.h"
+                       line="201"/>
       <type name="gint" c:type="gint"/>
     </constant>
     <constant name="AUDIO_RESAMPLER_QUALITY_MIN"
               value="0"
               c:type="GST_AUDIO_RESAMPLER_QUALITY_MIN">
+      <source-position filename="gst-libs/gst/audio/audio-resampler.h"
+                       line="200"/>
       <type name="gint" c:type="gint"/>
     </constant>
+    <function-macro name="AUDIO_RING_BUFFER"
+                    c:identifier="GST_AUDIO_RING_BUFFER"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+                       line="33"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_RING_BUFFER_BROADCAST"
+                    c:identifier="GST_AUDIO_RING_BUFFER_BROADCAST"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+                       line="162"/>
+      <parameters>
+        <parameter name="buf">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_RING_BUFFER_CAST"
+                    c:identifier="GST_AUDIO_RING_BUFFER_CAST"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+                       line="36"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_RING_BUFFER_CLASS"
+                    c:identifier="GST_AUDIO_RING_BUFFER_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+                       line="34"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_RING_BUFFER_GET_CLASS"
+                    c:identifier="GST_AUDIO_RING_BUFFER_GET_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+                       line="35"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_RING_BUFFER_GET_COND"
+                    c:identifier="GST_AUDIO_RING_BUFFER_GET_COND"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+                       line="159"/>
+      <parameters>
+        <parameter name="buf">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_RING_BUFFER_SIGNAL"
+                    c:identifier="GST_AUDIO_RING_BUFFER_SIGNAL"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+                       line="161"/>
+      <parameters>
+        <parameter name="buf">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_RING_BUFFER_WAIT"
+                    c:identifier="GST_AUDIO_RING_BUFFER_WAIT"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+                       line="160"/>
+      <parameters>
+        <parameter name="buf">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_SINK"
+                    c:identifier="GST_AUDIO_SINK"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudiosink.h" line="36"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_SINK_CLASS"
+                    c:identifier="GST_AUDIO_SINK_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudiosink.h" line="37"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_SINK_GET_CLASS"
+                    c:identifier="GST_AUDIO_SINK_GET_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudiosink.h" line="38"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_SRC"
+                    c:identifier="GST_AUDIO_SRC"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudiosrc.h" line="36"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_SRC_CLASS"
+                    c:identifier="GST_AUDIO_SRC_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudiosrc.h" line="37"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_SRC_GET_CLASS"
+                    c:identifier="GST_AUDIO_SRC_GET_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudiosrc.h" line="38"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
     <class name="AudioAggregator"
            c:symbol-prefix="audio_aggregator"
            c:type="GstAudioAggregator"
+           version="1.14"
            parent="GstBase.Aggregator"
            abstract="1"
            glib:type-name="GstAudioAggregator"
            glib:get-type="gst_audio_aggregator_get_type"
            glib:type-struct="AudioAggregatorClass">
-      <doc xml:space="preserve">Subclasses must use (a subclass of) #GstAudioAggregatorPad for both
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/gstaudioaggregator.c"
+           line="26">Subclasses must use (a subclass of) #GstAudioAggregatorPad for both
 their source and sink pads,
 gst_element_class_add_static_pad_template_with_gtype() is a convenient
 helper.
@@ -287,7 +1712,11 @@ A notable exception for now is the sample rate, sink pads must
 have the same sample rate as either the downstream requirement,
 or the first configured pad, or a combination of both (when
 downstream specifies a range or a set of acceptable rates).</doc>
+      <source-position filename="gst-libs/gst/audio/gstaudioaggregator.h"
+                       line="212"/>
       <virtual-method name="aggregate_one_buffer">
+        <source-position filename="gst-libs/gst/audio/gstaudioaggregator.h"
+                         line="206"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -316,6 +1745,8 @@ downstream specifies a range or a set of acceptable rates).</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="create_output_buffer">
+        <source-position filename="gst-libs/gst/audio/gstaudioaggregator.h"
+                         line="204"/>
         <return-value transfer-ownership="full">
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </return-value>
@@ -330,6 +1761,8 @@ downstream specifies a range or a set of acceptable rates).</doc>
       </virtual-method>
       <method name="set_sink_caps"
               c:identifier="gst_audio_aggregator_set_sink_caps">
+        <source-position filename="gst-libs/gst/audio/gstaudioaggregator.h"
+                         line="222"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
@@ -358,11 +1791,22 @@ downstream specifies a range or a set of acceptable rates).</doc>
                 transfer-ownership="none">
         <type name="guint64" c:type="guint64"/>
       </property>
+      <property name="output-buffer-duration-fraction"
+                version="1.18"
+                writable="1"
+                transfer-ownership="none">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioaggregator.c"
+             line="575">Output block size in nanoseconds, expressed as a fraction.</doc>
+        <type name="Gst.Fraction"/>
+      </property>
       <field name="parent">
         <type name="GstBase.Aggregator" c:type="GstAggregator"/>
       </field>
       <field name="current_caps">
-        <doc xml:space="preserve">The caps set by the subclass</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioaggregator.h"
+             line="171">The caps set by the subclass</doc>
         <type name="Gst.Caps" c:type="GstCaps*"/>
       </field>
       <field name="priv" readable="0" private="1">
@@ -370,19 +1814,24 @@ downstream specifies a range or a set of acceptable rates).</doc>
               c:type="GstAudioAggregatorPrivate*"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
     </class>
     <record name="AudioAggregatorClass"
             c:type="GstAudioAggregatorClass"
-            glib:is-gtype-struct-for="AudioAggregator">
+            glib:is-gtype-struct-for="AudioAggregator"
+            version="1.14">
+      <source-position filename="gst-libs/gst/audio/gstaudioaggregator.h"
+                       line="212"/>
       <field name="parent_class">
         <type name="GstBase.AggregatorClass" c:type="GstAggregatorClass"/>
       </field>
       <field name="create_output_buffer">
         <callback name="create_output_buffer">
+          <source-position filename="gst-libs/gst/audio/gstaudioaggregator.h"
+                           line="204"/>
           <return-value transfer-ownership="full">
             <type name="Gst.Buffer" c:type="GstBuffer*"/>
           </return-value>
@@ -398,6 +1847,8 @@ downstream specifies a range or a set of acceptable rates).</doc>
       </field>
       <field name="aggregate_one_buffer">
         <callback name="aggregate_one_buffer">
+          <source-position filename="gst-libs/gst/audio/gstaudioaggregator.h"
+                           line="206"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -427,7 +1878,7 @@ downstream specifies a range or a set of acceptable rates).</doc>
         </callback>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="20">
+        <array zero-terminated="0" fixed-size="20">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -435,13 +1886,18 @@ downstream specifies a range or a set of acceptable rates).</doc>
     <class name="AudioAggregatorConvertPad"
            c:symbol-prefix="audio_aggregator_convert_pad"
            c:type="GstAudioAggregatorConvertPad"
+           version="1.14"
            parent="AudioAggregatorPad"
            glib:type-name="GstAudioAggregatorConvertPad"
            glib:get-type="gst_audio_aggregator_convert_pad_get_type"
            glib:type-struct="AudioAggregatorConvertPadClass">
-      <doc xml:space="preserve">An implementation of GstPad that can be used with #GstAudioAggregator.
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/gstaudioaggregator.h"
+           line="123">An implementation of GstPad that can be used with #GstAudioAggregator.
 
 See #GstAudioAggregator for more details.</doc>
+      <source-position filename="gst-libs/gst/audio/gstaudioaggregator.h"
+                       line="153"/>
       <property name="converter-config" writable="1" transfer-ownership="none">
         <type name="Gst.Structure"/>
       </property>
@@ -453,20 +1909,23 @@ See #GstAudioAggregator for more details.</doc>
               c:type="GstAudioAggregatorConvertPadPrivate*"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
     </class>
     <record name="AudioAggregatorConvertPadClass"
             c:type="GstAudioAggregatorConvertPadClass"
-            glib:is-gtype-struct-for="AudioAggregatorConvertPad">
+            glib:is-gtype-struct-for="AudioAggregatorConvertPad"
+            version="1.14">
+      <source-position filename="gst-libs/gst/audio/gstaudioaggregator.h"
+                       line="153"/>
       <field name="parent_class">
         <type name="AudioAggregatorPadClass"
               c:type="GstAudioAggregatorPadClass"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -474,16 +1933,25 @@ See #GstAudioAggregator for more details.</doc>
     <record name="AudioAggregatorConvertPadPrivate"
             c:type="GstAudioAggregatorConvertPadPrivate"
             disguised="1">
+      <source-position filename="gst-libs/gst/audio/gstaudioaggregator.h"
+                       line="121"/>
     </record>
     <class name="AudioAggregatorPad"
            c:symbol-prefix="audio_aggregator_pad"
            c:type="GstAudioAggregatorPad"
+           version="1.14"
            parent="GstBase.AggregatorPad"
            glib:type-name="GstAudioAggregatorPad"
            glib:get-type="gst_audio_aggregator_pad_get_type"
            glib:type-struct="AudioAggregatorPadClass">
-      <doc xml:space="preserve">The default implementation of GstPad used with #GstAudioAggregator</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/gstaudioaggregator.h"
+           line="60">The default implementation of GstPad used with #GstAudioAggregator</doc>
+      <source-position filename="gst-libs/gst/audio/gstaudioaggregator.h"
+                       line="103"/>
       <virtual-method name="convert_buffer">
+        <source-position filename="gst-libs/gst/audio/gstaudioaggregator.h"
+                         line="94"/>
         <return-value transfer-ownership="full">
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </return-value>
@@ -503,6 +1971,8 @@ See #GstAudioAggregator for more details.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="update_conversion_info">
+        <source-position filename="gst-libs/gst/audio/gstaudioaggregator.h"
+                         line="99"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
@@ -516,7 +1986,9 @@ See #GstAudioAggregator for more details.</doc>
         <type name="GstBase.AggregatorPad" c:type="GstAggregatorPad"/>
       </field>
       <field name="info">
-        <doc xml:space="preserve">The audio info for this pad set from the incoming caps</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioaggregator.h"
+             line="62">The audio info for this pad set from the incoming caps</doc>
         <type name="AudioInfo" c:type="GstAudioInfo"/>
       </field>
       <field name="priv" readable="0" private="1">
@@ -524,20 +1996,25 @@ See #GstAudioAggregator for more details.</doc>
               c:type="GstAudioAggregatorPadPrivate*"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
     </class>
     <record name="AudioAggregatorPadClass"
             c:type="GstAudioAggregatorPadClass"
-            glib:is-gtype-struct-for="AudioAggregatorPad">
+            glib:is-gtype-struct-for="AudioAggregatorPad"
+            version="1.14">
+      <source-position filename="gst-libs/gst/audio/gstaudioaggregator.h"
+                       line="103"/>
       <field name="parent_class">
         <type name="GstBase.AggregatorPadClass"
               c:type="GstAggregatorPadClass"/>
       </field>
       <field name="convert_buffer">
         <callback name="convert_buffer">
+          <source-position filename="gst-libs/gst/audio/gstaudioaggregator.h"
+                           line="94"/>
           <return-value transfer-ownership="full">
             <type name="Gst.Buffer" c:type="GstBuffer*"/>
           </return-value>
@@ -559,6 +2036,8 @@ See #GstAudioAggregator for more details.</doc>
       </field>
       <field name="update_conversion_info">
         <callback name="update_conversion_info">
+          <source-position filename="gst-libs/gst/audio/gstaudioaggregator.h"
+                           line="99"/>
           <return-value transfer-ownership="none">
             <type name="none" c:type="void"/>
           </return-value>
@@ -570,7 +2049,7 @@ See #GstAudioAggregator for more details.</doc>
         </callback>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="20">
+        <array zero-terminated="0" fixed-size="20">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -578,10 +2057,14 @@ See #GstAudioAggregator for more details.</doc>
     <record name="AudioAggregatorPadPrivate"
             c:type="GstAudioAggregatorPadPrivate"
             disguised="1">
+      <source-position filename="gst-libs/gst/audio/gstaudioaggregator.h"
+                       line="58"/>
     </record>
     <record name="AudioAggregatorPrivate"
             c:type="GstAudioAggregatorPrivate"
             disguised="1">
+      <source-position filename="gst-libs/gst/audio/gstaudioaggregator.h"
+                       line="37"/>
     </record>
     <class name="AudioBaseSink"
            c:symbol-prefix="audio_base_sink"
@@ -590,25 +2073,39 @@ See #GstAudioAggregator for more details.</doc>
            glib:type-name="GstAudioBaseSink"
            glib:get-type="gst_audio_base_sink_get_type"
            glib:type-struct="AudioBaseSinkClass">
-      <doc xml:space="preserve">This is the base class for audio sinks. Subclasses need to implement the
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/gstaudiobasesink.c"
+           line="23">This is the base class for audio sinks. Subclasses need to implement the
 ::create_ringbuffer vmethod. This base class will then take care of
 writing samples to the ringbuffer, synchronisation, clipping and flushing.</doc>
+      <source-position filename="gst-libs/gst/audio/gstaudiobasesink.h"
+                       line="221"/>
       <virtual-method name="create_ringbuffer" invoker="create_ringbuffer">
-        <doc xml:space="preserve">Create and return the #GstAudioRingBuffer for @sink. This function will
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiobasesink.c"
+             line="2249">Create and return the #GstAudioRingBuffer for @sink. This function will
 call the ::create_ringbuffer vmethod and will set @sink as the parent of
 the returned buffer (see gst_object_set_parent()).</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudiobasesink.h"
+                         line="214"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The new ringbuffer of @sink.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudiobasesink.c"
+               line="2257">The new ringbuffer of @sink.</doc>
           <type name="AudioRingBuffer" c:type="GstAudioRingBuffer*"/>
         </return-value>
         <parameters>
           <instance-parameter name="sink" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioBaseSink.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiobasesink.c"
+                 line="2251">a #GstAudioBaseSink.</doc>
             <type name="AudioBaseSink" c:type="GstAudioBaseSink*"/>
           </instance-parameter>
         </parameters>
       </virtual-method>
       <virtual-method name="payload">
+        <source-position filename="gst-libs/gst/audio/gstaudiobasesink.h"
+                         line="217"/>
         <return-value transfer-ownership="full">
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </return-value>
@@ -623,88 +2120,136 @@ the returned buffer (see gst_object_set_parent()).</doc>
       </virtual-method>
       <method name="create_ringbuffer"
               c:identifier="gst_audio_base_sink_create_ringbuffer">
-        <doc xml:space="preserve">Create and return the #GstAudioRingBuffer for @sink. This function will
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiobasesink.c"
+             line="2249">Create and return the #GstAudioRingBuffer for @sink. This function will
 call the ::create_ringbuffer vmethod and will set @sink as the parent of
 the returned buffer (see gst_object_set_parent()).</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudiobasesink.h"
+                         line="228"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The new ringbuffer of @sink.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudiobasesink.c"
+               line="2257">The new ringbuffer of @sink.</doc>
           <type name="AudioRingBuffer" c:type="GstAudioRingBuffer*"/>
         </return-value>
         <parameters>
           <instance-parameter name="sink" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioBaseSink.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiobasesink.c"
+                 line="2251">a #GstAudioBaseSink.</doc>
             <type name="AudioBaseSink" c:type="GstAudioBaseSink*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_alignment_threshold"
               c:identifier="gst_audio_base_sink_get_alignment_threshold">
-        <doc xml:space="preserve">Get the current alignment threshold, in nanoseconds, used by @sink.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The current alignment threshold used by @sink.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiobasesink.c"
+             line="694">Get the current alignment threshold, in nanoseconds, used by @sink.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudiobasesink.h"
+                         line="254"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudiobasesink.c"
+               line="700">The current alignment threshold used by @sink.</doc>
           <type name="Gst.ClockTime" c:type="GstClockTime"/>
         </return-value>
         <parameters>
           <instance-parameter name="sink" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioBaseSink</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiobasesink.c"
+                 line="696">a #GstAudioBaseSink</doc>
             <type name="AudioBaseSink" c:type="GstAudioBaseSink*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_discont_wait"
               c:identifier="gst_audio_base_sink_get_discont_wait">
-        <doc xml:space="preserve">Get the current discont wait, in nanoseconds, used by @sink.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The current discont wait used by @sink.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiobasesink.c"
+             line="801">Get the current discont wait, in nanoseconds, used by @sink.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudiobasesink.h"
+                         line="261"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudiobasesink.c"
+               line="807">The current discont wait used by @sink.</doc>
           <type name="Gst.ClockTime" c:type="GstClockTime"/>
         </return-value>
         <parameters>
           <instance-parameter name="sink" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioBaseSink</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiobasesink.c"
+                 line="803">a #GstAudioBaseSink</doc>
             <type name="AudioBaseSink" c:type="GstAudioBaseSink*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_drift_tolerance"
               c:identifier="gst_audio_base_sink_get_drift_tolerance">
-        <doc xml:space="preserve">Get the current drift tolerance, in microseconds, used by @sink.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The current drift tolerance used by @sink.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiobasesink.c"
+             line="654">Get the current drift tolerance, in microseconds, used by @sink.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudiobasesink.h"
+                         line="247"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudiobasesink.c"
+               line="660">The current drift tolerance used by @sink.</doc>
           <type name="gint64" c:type="gint64"/>
         </return-value>
         <parameters>
           <instance-parameter name="sink" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioBaseSink</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiobasesink.c"
+                 line="656">a #GstAudioBaseSink</doc>
             <type name="AudioBaseSink" c:type="GstAudioBaseSink*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_provide_clock"
               c:identifier="gst_audio_base_sink_get_provide_clock">
-        <doc xml:space="preserve">Queries whether @sink will provide a clock or not. See also
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiobasesink.c"
+             line="572">Queries whether @sink will provide a clock or not. See also
 gst_audio_base_sink_set_provide_clock.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudiobasesink.h"
+                         line="234"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if @sink will provide a clock.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudiobasesink.c"
+               line="579">%TRUE if @sink will provide a clock.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="sink" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioBaseSink</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiobasesink.c"
+                 line="574">a #GstAudioBaseSink</doc>
             <type name="AudioBaseSink" c:type="GstAudioBaseSink*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_slave_method"
               c:identifier="gst_audio_base_sink_get_slave_method">
-        <doc xml:space="preserve">Get the current slave method used by @sink.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The current slave method used by @sink.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiobasesink.c"
+             line="613">Get the current slave method used by @sink.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudiobasesink.h"
+                         line="241"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudiobasesink.c"
+               line="619">The current slave method used by @sink.</doc>
           <type name="AudioBaseSinkSlaveMethod"
                 c:type="GstAudioBaseSinkSlaveMethod"/>
         </return-value>
         <parameters>
           <instance-parameter name="sink" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioBaseSink</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiobasesink.c"
+                 line="615">a #GstAudioBaseSink</doc>
             <type name="AudioBaseSink" c:type="GstAudioBaseSink*"/>
           </instance-parameter>
         </parameters>
@@ -712,34 +2257,48 @@ gst_audio_base_sink_set_provide_clock.</doc>
       <method name="report_device_failure"
               c:identifier="gst_audio_base_sink_report_device_failure"
               version="1.6">
-        <doc xml:space="preserve">Informs this base class that the audio output device has failed for
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiobasesink.c"
+             line="778">Informs this base class that the audio output device has failed for
 some reason, causing a discontinuity (for example, because the device
 recovered from the error, but lost all contents of its ring buffer).
 This function is typically called by derived classes, and is useful
 for the custom slave method.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudiobasesink.h"
+                         line="271"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="sink" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioBaseSink</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiobasesink.c"
+                 line="780">a #GstAudioBaseSink</doc>
             <type name="AudioBaseSink" c:type="GstAudioBaseSink*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="set_alignment_threshold"
               c:identifier="gst_audio_base_sink_set_alignment_threshold">
-        <doc xml:space="preserve">Controls the sink's alignment threshold.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiobasesink.c"
+             line="676">Controls the sink's alignment threshold.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudiobasesink.h"
+                         line="250"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="sink" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioBaseSink</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiobasesink.c"
+                 line="678">a #GstAudioBaseSink</doc>
             <type name="AudioBaseSink" c:type="GstAudioBaseSink*"/>
           </instance-parameter>
           <parameter name="alignment_threshold" transfer-ownership="none">
-            <doc xml:space="preserve">the new alignment threshold in nanoseconds</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiobasesink.c"
+                 line="679">the new alignment threshold in nanoseconds</doc>
             <type name="Gst.ClockTime" c:type="GstClockTime"/>
           </parameter>
         </parameters>
@@ -747,7 +2306,9 @@ for the custom slave method.</doc>
       <method name="set_custom_slaving_callback"
               c:identifier="gst_audio_base_sink_set_custom_slaving_callback"
               version="1.6">
-        <doc xml:space="preserve">Sets the custom slaving callback. This callback will
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiobasesink.c"
+             line="734">Sets the custom slaving callback. This callback will
 be invoked if the slave-method property is set to
 GST_AUDIO_BASE_SINK_SLAVE_CUSTOM and the audio sink
 receives and plays samples.
@@ -755,12 +2316,16 @@ receives and plays samples.
 Setting the callback to NULL causes the sink to
 behave as if the GST_AUDIO_BASE_SINK_SLAVE_NONE
 method were used.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudiobasesink.h"
+                         line="265"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="sink" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioBaseSink</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiobasesink.c"
+                 line="736">a #GstAudioBaseSink</doc>
             <type name="AudioBaseSink" c:type="GstAudioBaseSink*"/>
           </instance-parameter>
           <parameter name="callback"
@@ -768,7 +2333,9 @@ method were used.</doc>
                      scope="notified"
                      closure="1"
                      destroy="2">
-            <doc xml:space="preserve">a #GstAudioBaseSinkCustomSlavingCallback</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiobasesink.c"
+                 line="737">a #GstAudioBaseSinkCustomSlavingCallback</doc>
             <type name="AudioBaseSinkCustomSlavingCallback"
                   c:type="GstAudioBaseSinkCustomSlavingCallback"/>
           </parameter>
@@ -776,82 +2343,118 @@ method were used.</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">user data passed to the callback</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiobasesink.c"
+                 line="738">user data passed to the callback</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
           <parameter name="notify" transfer-ownership="none" scope="async">
-            <doc xml:space="preserve">called when user_data becomes unused</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiobasesink.c"
+                 line="739">called when user_data becomes unused</doc>
             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_discont_wait"
               c:identifier="gst_audio_base_sink_set_discont_wait">
-        <doc xml:space="preserve">Controls how long the sink will wait before creating a discontinuity.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiobasesink.c"
+             line="716">Controls how long the sink will wait before creating a discontinuity.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudiobasesink.h"
+                         line="257"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="sink" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioBaseSink</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiobasesink.c"
+                 line="718">a #GstAudioBaseSink</doc>
             <type name="AudioBaseSink" c:type="GstAudioBaseSink*"/>
           </instance-parameter>
           <parameter name="discont_wait" transfer-ownership="none">
-            <doc xml:space="preserve">the new discont wait in nanoseconds</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiobasesink.c"
+                 line="719">the new discont wait in nanoseconds</doc>
             <type name="Gst.ClockTime" c:type="GstClockTime"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_drift_tolerance"
               c:identifier="gst_audio_base_sink_set_drift_tolerance">
-        <doc xml:space="preserve">Controls the sink's drift tolerance.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiobasesink.c"
+             line="636">Controls the sink's drift tolerance.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudiobasesink.h"
+                         line="244"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="sink" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioBaseSink</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiobasesink.c"
+                 line="638">a #GstAudioBaseSink</doc>
             <type name="AudioBaseSink" c:type="GstAudioBaseSink*"/>
           </instance-parameter>
           <parameter name="drift_tolerance" transfer-ownership="none">
-            <doc xml:space="preserve">the new drift tolerance in microseconds</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiobasesink.c"
+                 line="639">the new drift tolerance in microseconds</doc>
             <type name="gint64" c:type="gint64"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_provide_clock"
               c:identifier="gst_audio_base_sink_set_provide_clock">
-        <doc xml:space="preserve">Controls whether @sink will provide a clock or not. If @provide is %TRUE,
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiobasesink.c"
+             line="548">Controls whether @sink will provide a clock or not. If @provide is %TRUE,
 gst_element_provide_clock() will return a clock that reflects the datarate
 of @sink. If @provide is %FALSE, gst_element_provide_clock() will return
 NULL.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudiobasesink.h"
+                         line="231"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="sink" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioBaseSink</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiobasesink.c"
+                 line="550">a #GstAudioBaseSink</doc>
             <type name="AudioBaseSink" c:type="GstAudioBaseSink*"/>
           </instance-parameter>
           <parameter name="provide" transfer-ownership="none">
-            <doc xml:space="preserve">new state</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiobasesink.c"
+                 line="551">new state</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_slave_method"
               c:identifier="gst_audio_base_sink_set_slave_method">
-        <doc xml:space="preserve">Controls how clock slaving will be performed in @sink.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiobasesink.c"
+             line="595">Controls how clock slaving will be performed in @sink.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudiobasesink.h"
+                         line="237"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="sink" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioBaseSink</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiobasesink.c"
+                 line="597">a #GstAudioBaseSink</doc>
             <type name="AudioBaseSink" c:type="GstAudioBaseSink*"/>
           </instance-parameter>
           <parameter name="method" transfer-ownership="none">
-            <doc xml:space="preserve">the new slave method</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiobasesink.c"
+                 line="598">the new slave method</doc>
             <type name="AudioBaseSinkSlaveMethod"
                   c:type="GstAudioBaseSinkSlaveMethod"/>
           </parameter>
@@ -871,12 +2474,16 @@ NULL.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </property>
       <property name="discont-wait" writable="1" transfer-ownership="none">
-        <doc xml:space="preserve">A window of time in nanoseconds to wait before creating a discontinuity as
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiobasesink.c"
+             line="237">A window of time in nanoseconds to wait before creating a discontinuity as
 a result of breaching the drift-tolerance.</doc>
         <type name="guint64" c:type="guint64"/>
       </property>
       <property name="drift-tolerance" writable="1" transfer-ownership="none">
-        <doc xml:space="preserve">Controls the amount of time in microseconds that clocks are allowed
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiobasesink.c"
+             line="214">Controls the amount of time in microseconds that clocks are allowed
 to drift before resynchronisation happens.</doc>
         <type name="gint64" c:type="gint64"/>
       </property>
@@ -914,7 +2521,7 @@ to drift before resynchronisation happens.</doc>
         <type name="AudioBaseSinkPrivate" c:type="GstAudioBaseSinkPrivate*"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -922,21 +2529,33 @@ to drift before resynchronisation happens.</doc>
     <record name="AudioBaseSinkClass"
             c:type="GstAudioBaseSinkClass"
             glib:is-gtype-struct-for="AudioBaseSink">
-      <doc xml:space="preserve">#GstAudioBaseSink class. Override the vmethod to implement
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/gstaudiobasesink.h"
+           line="198">#GstAudioBaseSink class. Override the vmethod to implement
 functionality.</doc>
+      <source-position filename="gst-libs/gst/audio/gstaudiobasesink.h"
+                       line="221"/>
       <field name="parent_class">
-        <doc xml:space="preserve">the parent class.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiobasesink.h"
+             line="200">the parent class.</doc>
         <type name="GstBase.BaseSinkClass" c:type="GstBaseSinkClass"/>
       </field>
       <field name="create_ringbuffer">
         <callback name="create_ringbuffer">
+          <source-position filename="gst-libs/gst/audio/gstaudiobasesink.h"
+                           line="214"/>
           <return-value transfer-ownership="none">
-            <doc xml:space="preserve">The new ringbuffer of @sink.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiobasesink.c"
+                 line="2257">The new ringbuffer of @sink.</doc>
             <type name="AudioRingBuffer" c:type="GstAudioRingBuffer*"/>
           </return-value>
           <parameters>
             <parameter name="sink" transfer-ownership="none">
-              <doc xml:space="preserve">a #GstAudioBaseSink.</doc>
+              <doc xml:space="preserve"
+                   filename="gst-libs/gst/audio/gstaudiobasesink.c"
+                   line="2251">a #GstAudioBaseSink.</doc>
               <type name="AudioBaseSink" c:type="GstAudioBaseSink*"/>
             </parameter>
           </parameters>
@@ -944,6 +2563,8 @@ functionality.</doc>
       </field>
       <field name="payload">
         <callback name="payload">
+          <source-position filename="gst-libs/gst/audio/gstaudiobasesink.h"
+                           line="217"/>
           <return-value transfer-ownership="full">
             <type name="Gst.Buffer" c:type="GstBuffer*"/>
           </return-value>
@@ -958,7 +2579,7 @@ functionality.</doc>
         </callback>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -966,7 +2587,9 @@ functionality.</doc>
     <callback name="AudioBaseSinkCustomSlavingCallback"
               c:type="GstAudioBaseSinkCustomSlavingCallback"
               version="1.6">
-      <doc xml:space="preserve">This function is set with gst_audio_base_sink_set_custom_slaving_callback()
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/gstaudiobasesink.h"
+           line="130">This function is set with gst_audio_base_sink_set_custom_slaving_callback()
 and is called during playback. It receives the current time of external and
 internal clocks, which the callback can then use to apply any custom
 slaving/synchronization schemes.
@@ -989,28 +2612,40 @@ The sink may experience discontinuities. If one happens, discont is TRUE,
 itime, etime are set to GST_CLOCK_TIME_NONE, and requested_skew is NULL.
 This makes it possible to reset custom clock slaving algorithms when a
 discontinuity happens.</doc>
+      <source-position filename="gst-libs/gst/audio/gstaudiobasesink.h"
+                       line="165"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="sink" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstAudioBaseSink</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudiobasesink.h"
+               line="132">a #GstAudioBaseSink</doc>
           <type name="AudioBaseSink" c:type="GstAudioBaseSink*"/>
         </parameter>
         <parameter name="etime" transfer-ownership="none">
-          <doc xml:space="preserve">external clock time</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudiobasesink.h"
+               line="133">external clock time</doc>
           <type name="Gst.ClockTime" c:type="GstClockTime"/>
         </parameter>
         <parameter name="itime" transfer-ownership="none">
-          <doc xml:space="preserve">internal clock time</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudiobasesink.h"
+               line="134">internal clock time</doc>
           <type name="Gst.ClockTime" c:type="GstClockTime"/>
         </parameter>
         <parameter name="requested_skew" transfer-ownership="none">
-          <doc xml:space="preserve">skew amount requested by the callback</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudiobasesink.h"
+               line="135">skew amount requested by the callback</doc>
           <type name="Gst.ClockTimeDiff" c:type="GstClockTimeDiff*"/>
         </parameter>
         <parameter name="discont_reason" transfer-ownership="none">
-          <doc xml:space="preserve">reason for discontinuity (if any)</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudiobasesink.h"
+               line="136">reason for discontinuity (if any)</doc>
           <type name="AudioBaseSinkDiscontReason"
                 c:type="GstAudioBaseSinkDiscontReason"/>
         </parameter>
@@ -1019,7 +2654,9 @@ discontinuity happens.</doc>
                    nullable="1"
                    allow-none="1"
                    closure="5">
-          <doc xml:space="preserve">user data</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudiobasesink.h"
+               line="137">user data</doc>
           <type name="gpointer" c:type="gpointer"/>
         </parameter>
       </parameters>
@@ -1029,79 +2666,105 @@ discontinuity happens.</doc>
                  glib:type-name="GstAudioBaseSinkDiscontReason"
                  glib:get-type="gst_audio_base_sink_discont_reason_get_type"
                  c:type="GstAudioBaseSinkDiscontReason">
-      <doc xml:space="preserve">Different possible reasons for discontinuities. This enum is useful for the custom
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/gstaudiobasesink.h"
+           line="106">Different possible reasons for discontinuities. This enum is useful for the custom
 slave method.</doc>
       <member name="no_discont"
               value="0"
               c:identifier="GST_AUDIO_BASE_SINK_DISCONT_REASON_NO_DISCONT"
               glib:nick="no-discont">
-        <doc xml:space="preserve">No discontinuity occurred</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiobasesink.h"
+             line="108">No discontinuity occurred</doc>
       </member>
       <member name="new_caps"
               value="1"
               c:identifier="GST_AUDIO_BASE_SINK_DISCONT_REASON_NEW_CAPS"
               glib:nick="new-caps">
-        <doc xml:space="preserve">New caps are set, causing renegotiotion</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiobasesink.h"
+             line="109">New caps are set, causing renegotiotion</doc>
       </member>
       <member name="flush"
               value="2"
               c:identifier="GST_AUDIO_BASE_SINK_DISCONT_REASON_FLUSH"
               glib:nick="flush">
-        <doc xml:space="preserve">Samples have been flushed</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiobasesink.h"
+             line="110">Samples have been flushed</doc>
       </member>
       <member name="sync_latency"
               value="3"
               c:identifier="GST_AUDIO_BASE_SINK_DISCONT_REASON_SYNC_LATENCY"
               glib:nick="sync-latency">
-        <doc xml:space="preserve">Sink was synchronized to the estimated latency (occurs during initialization)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiobasesink.h"
+             line="111">Sink was synchronized to the estimated latency (occurs during initialization)</doc>
       </member>
       <member name="alignment"
               value="4"
               c:identifier="GST_AUDIO_BASE_SINK_DISCONT_REASON_ALIGNMENT"
               glib:nick="alignment">
-        <doc xml:space="preserve">Aligning buffers failed because the timestamps are too discontinuous</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiobasesink.h"
+             line="112">Aligning buffers failed because the timestamps are too discontinuous</doc>
       </member>
       <member name="device_failure"
               value="5"
               c:identifier="GST_AUDIO_BASE_SINK_DISCONT_REASON_DEVICE_FAILURE"
               glib:nick="device-failure">
-        <doc xml:space="preserve">Audio output device experienced and recovered from an error but introduced latency in the process (see also @gst_audio_base_sink_report_device_failure())</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiobasesink.h"
+             line="113">Audio output device experienced and recovered from an error but introduced latency in the process (see also @gst_audio_base_sink_report_device_failure())</doc>
       </member>
     </enumeration>
     <record name="AudioBaseSinkPrivate"
             c:type="GstAudioBaseSinkPrivate"
             disguised="1">
+      <source-position filename="gst-libs/gst/audio/gstaudiobasesink.h"
+                       line="104"/>
     </record>
     <enumeration name="AudioBaseSinkSlaveMethod"
                  glib:type-name="GstAudioBaseSinkSlaveMethod"
                  glib:get-type="gst_audio_base_sink_slave_method_get_type"
                  c:type="GstAudioBaseSinkSlaveMethod">
-      <doc xml:space="preserve">Different possible clock slaving algorithms used when the internal audio
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/gstaudiobasesink.h"
+           line="83">Different possible clock slaving algorithms used when the internal audio
 clock is not selected as the pipeline master clock.</doc>
       <member name="resample"
               value="0"
               c:identifier="GST_AUDIO_BASE_SINK_SLAVE_RESAMPLE"
               glib:nick="resample">
-        <doc xml:space="preserve">Resample to match the master clock</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiobasesink.h"
+             line="85">Resample to match the master clock</doc>
       </member>
       <member name="skew"
               value="1"
               c:identifier="GST_AUDIO_BASE_SINK_SLAVE_SKEW"
               glib:nick="skew">
-        <doc xml:space="preserve">Adjust playout pointer when master clock
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiobasesink.h"
+             line="86">Adjust playout pointer when master clock
 drifts too much.</doc>
       </member>
       <member name="none"
               value="2"
               c:identifier="GST_AUDIO_BASE_SINK_SLAVE_NONE"
               glib:nick="none">
-        <doc xml:space="preserve">No adjustment is done.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiobasesink.h"
+             line="88">No adjustment is done.</doc>
       </member>
       <member name="custom"
               value="3"
               c:identifier="GST_AUDIO_BASE_SINK_SLAVE_CUSTOM"
               glib:nick="custom">
-        <doc xml:space="preserve">Use custom clock slaving algorithm (Since: 1.6)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiobasesink.h"
+             line="89">Use custom clock slaving algorithm (Since: 1.6)</doc>
       </member>
     </enumeration>
     <class name="AudioBaseSrc"
@@ -1111,113 +2774,169 @@ drifts too much.</doc>
            glib:type-name="GstAudioBaseSrc"
            glib:get-type="gst_audio_base_src_get_type"
            glib:type-struct="AudioBaseSrcClass">
-      <doc xml:space="preserve">This is the base class for audio sources. Subclasses need to implement the
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/gstaudiobasesrc.c"
+           line="23">This is the base class for audio sources. Subclasses need to implement the
 ::create_ringbuffer vmethod. This base class will then take care of
 reading samples from the ringbuffer, synchronisation and flushing.</doc>
+      <source-position filename="gst-libs/gst/audio/gstaudiobasesrc.h"
+                       line="133"/>
       <virtual-method name="create_ringbuffer" invoker="create_ringbuffer">
-        <doc xml:space="preserve">Create and return the #GstAudioRingBuffer for @src. This function will call
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiobasesrc.c"
+             line="1075">Create and return the #GstAudioRingBuffer for @src. This function will call
 the ::create_ringbuffer vmethod and will set @src as the parent of the
 returned buffer (see gst_object_set_parent()).</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudiobasesrc.h"
+                         line="129"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The new ringbuffer of @src.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudiobasesrc.c"
+               line="1083">The new ringbuffer of @src.</doc>
           <type name="AudioRingBuffer" c:type="GstAudioRingBuffer*"/>
         </return-value>
         <parameters>
           <instance-parameter name="src" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioBaseSrc.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiobasesrc.c"
+                 line="1077">a #GstAudioBaseSrc.</doc>
             <type name="AudioBaseSrc" c:type="GstAudioBaseSrc*"/>
           </instance-parameter>
         </parameters>
       </virtual-method>
       <method name="create_ringbuffer"
               c:identifier="gst_audio_base_src_create_ringbuffer">
-        <doc xml:space="preserve">Create and return the #GstAudioRingBuffer for @src. This function will call
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiobasesrc.c"
+             line="1075">Create and return the #GstAudioRingBuffer for @src. This function will call
 the ::create_ringbuffer vmethod and will set @src as the parent of the
 returned buffer (see gst_object_set_parent()).</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudiobasesrc.h"
+                         line="140"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The new ringbuffer of @src.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudiobasesrc.c"
+               line="1083">The new ringbuffer of @src.</doc>
           <type name="AudioRingBuffer" c:type="GstAudioRingBuffer*"/>
         </return-value>
         <parameters>
           <instance-parameter name="src" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioBaseSrc.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiobasesrc.c"
+                 line="1077">a #GstAudioBaseSrc.</doc>
             <type name="AudioBaseSrc" c:type="GstAudioBaseSrc*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_provide_clock"
               c:identifier="gst_audio_base_src_get_provide_clock">
-        <doc xml:space="preserve">Queries whether @src will provide a clock or not. See also
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiobasesrc.c"
+             line="354">Queries whether @src will provide a clock or not. See also
 gst_audio_base_src_set_provide_clock.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudiobasesrc.h"
+                         line="146"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if @src will provide a clock.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudiobasesrc.c"
+               line="361">%TRUE if @src will provide a clock.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="src" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioBaseSrc</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiobasesrc.c"
+                 line="356">a #GstAudioBaseSrc</doc>
             <type name="AudioBaseSrc" c:type="GstAudioBaseSrc*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_slave_method"
               c:identifier="gst_audio_base_src_get_slave_method">
-        <doc xml:space="preserve">Get the current slave method used by @src.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The current slave method used by @src.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiobasesrc.c"
+             line="395">Get the current slave method used by @src.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudiobasesrc.h"
+                         line="153"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudiobasesrc.c"
+               line="401">The current slave method used by @src.</doc>
           <type name="AudioBaseSrcSlaveMethod"
                 c:type="GstAudioBaseSrcSlaveMethod"/>
         </return-value>
         <parameters>
           <instance-parameter name="src" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioBaseSrc</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiobasesrc.c"
+                 line="397">a #GstAudioBaseSrc</doc>
             <type name="AudioBaseSrc" c:type="GstAudioBaseSrc*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="set_provide_clock"
               c:identifier="gst_audio_base_src_set_provide_clock">
-        <doc xml:space="preserve">Controls whether @src will provide a clock or not. If @provide is %TRUE,
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiobasesrc.c"
+             line="332">Controls whether @src will provide a clock or not. If @provide is %TRUE,
 gst_element_provide_clock() will return a clock that reflects the datarate
 of @src. If @provide is %FALSE, gst_element_provide_clock() will return NULL.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudiobasesrc.h"
+                         line="143"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="src" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioBaseSrc</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiobasesrc.c"
+                 line="334">a #GstAudioBaseSrc</doc>
             <type name="AudioBaseSrc" c:type="GstAudioBaseSrc*"/>
           </instance-parameter>
           <parameter name="provide" transfer-ownership="none">
-            <doc xml:space="preserve">new state</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiobasesrc.c"
+                 line="335">new state</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_slave_method"
               c:identifier="gst_audio_base_src_set_slave_method">
-        <doc xml:space="preserve">Controls how clock slaving will be performed in @src.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiobasesrc.c"
+             line="377">Controls how clock slaving will be performed in @src.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudiobasesrc.h"
+                         line="149"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="src" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioBaseSrc</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiobasesrc.c"
+                 line="379">a #GstAudioBaseSrc</doc>
             <type name="AudioBaseSrc" c:type="GstAudioBaseSrc*"/>
           </instance-parameter>
           <parameter name="method" transfer-ownership="none">
-            <doc xml:space="preserve">the new slave method</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiobasesrc.c"
+                 line="380">the new slave method</doc>
             <type name="AudioBaseSrcSlaveMethod"
                   c:type="GstAudioBaseSrcSlaveMethod"/>
           </parameter>
         </parameters>
       </method>
       <property name="actual-buffer-time" transfer-ownership="none">
-        <doc xml:space="preserve">Actual configured size of audio buffer in microseconds.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiobasesrc.c"
+             line="159">Actual configured size of audio buffer in microseconds.</doc>
         <type name="gint64" c:type="gint64"/>
       </property>
       <property name="actual-latency-time" transfer-ownership="none">
-        <doc xml:space="preserve">Actual configured audio latency in microseconds.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiobasesrc.c"
+             line="170">Actual configured audio latency in microseconds.</doc>
         <type name="gint64" c:type="gint64"/>
       </property>
       <property name="buffer-time" writable="1" transfer-ownership="none">
@@ -1254,7 +2973,7 @@ of @src. If @provide is %FALSE, gst_element_provide_clock() will return NULL.</d
         <type name="AudioBaseSrcPrivate" c:type="GstAudioBaseSrcPrivate*"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -1262,28 +2981,40 @@ of @src. If @provide is %FALSE, gst_element_provide_clock() will return NULL.</d
     <record name="AudioBaseSrcClass"
             c:type="GstAudioBaseSrcClass"
             glib:is-gtype-struct-for="AudioBaseSrc">
-      <doc xml:space="preserve">#GstAudioBaseSrc class. Override the vmethod to implement
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/gstaudiobasesrc.h"
+           line="117">#GstAudioBaseSrc class. Override the vmethod to implement
 functionality.</doc>
+      <source-position filename="gst-libs/gst/audio/gstaudiobasesrc.h"
+                       line="133"/>
       <field name="parent_class">
-        <doc xml:space="preserve">the parent class.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiobasesrc.h"
+             line="119">the parent class.</doc>
         <type name="GstBase.PushSrcClass" c:type="GstPushSrcClass"/>
       </field>
       <field name="create_ringbuffer">
         <callback name="create_ringbuffer">
+          <source-position filename="gst-libs/gst/audio/gstaudiobasesrc.h"
+                           line="129"/>
           <return-value transfer-ownership="none">
-            <doc xml:space="preserve">The new ringbuffer of @src.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiobasesrc.c"
+                 line="1083">The new ringbuffer of @src.</doc>
             <type name="AudioRingBuffer" c:type="GstAudioRingBuffer*"/>
           </return-value>
           <parameters>
             <parameter name="src" transfer-ownership="none">
-              <doc xml:space="preserve">a #GstAudioBaseSrc.</doc>
+              <doc xml:space="preserve"
+                   filename="gst-libs/gst/audio/gstaudiobasesrc.c"
+                   line="1077">a #GstAudioBaseSrc.</doc>
               <type name="AudioBaseSrc" c:type="GstAudioBaseSrc*"/>
             </parameter>
           </parameters>
         </callback>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -1291,42 +3022,56 @@ functionality.</doc>
     <record name="AudioBaseSrcPrivate"
             c:type="GstAudioBaseSrcPrivate"
             disguised="1">
+      <source-position filename="gst-libs/gst/audio/gstaudiobasesrc.h"
+                       line="63"/>
     </record>
     <enumeration name="AudioBaseSrcSlaveMethod"
                  glib:type-name="GstAudioBaseSrcSlaveMethod"
                  glib:get-type="gst_audio_base_src_slave_method_get_type"
                  c:type="GstAudioBaseSrcSlaveMethod">
-      <doc xml:space="preserve">Different possible clock slaving algorithms when the internal audio clock was
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/gstaudiobasesrc.h"
+           line="67">Different possible clock slaving algorithms when the internal audio clock was
 not selected as the pipeline clock.</doc>
       <member name="resample"
               value="0"
               c:identifier="GST_AUDIO_BASE_SRC_SLAVE_RESAMPLE"
               glib:nick="resample">
-        <doc xml:space="preserve">Resample to match the master clock.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiobasesrc.h"
+             line="69">Resample to match the master clock.</doc>
       </member>
       <member name="re_timestamp"
               value="1"
               c:identifier="GST_AUDIO_BASE_SRC_SLAVE_RE_TIMESTAMP"
               glib:nick="re-timestamp">
-        <doc xml:space="preserve">Retimestamp output buffers with master
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiobasesrc.h"
+             line="70">Retimestamp output buffers with master
 clock time.</doc>
       </member>
       <member name="skew"
               value="2"
               c:identifier="GST_AUDIO_BASE_SRC_SLAVE_SKEW"
               glib:nick="skew">
-        <doc xml:space="preserve">Adjust capture pointer when master clock
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiobasesrc.h"
+             line="72">Adjust capture pointer when master clock
 drifts too much.</doc>
       </member>
       <member name="none"
               value="3"
               c:identifier="GST_AUDIO_BASE_SRC_SLAVE_NONE"
               glib:nick="none">
-        <doc xml:space="preserve">No adjustment is done.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiobasesrc.h"
+             line="74">No adjustment is done.</doc>
       </member>
     </enumeration>
     <record name="AudioBuffer" c:type="GstAudioBuffer" version="1.16">
-      <doc xml:space="preserve">A structure containing the result of an audio buffer map operation,
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/audio-buffer.h"
+           line="30">A structure containing the result of an audio buffer map operation,
 which is executed with gst_audio_buffer_map(). For non-interleaved (planar)
 buffers, the beginning of each channel in the buffer has its own pointer in
 the @planes array. For interleaved buffers, the @planes array only contains
@@ -1334,47 +3079,60 @@ one item, which is the pointer to the beginning of the buffer, and @n_planes
 equals 1.
 
 The different channels in @planes are always in the GStreamer channel order.</doc>
+      <source-position filename="gst-libs/gst/audio/audio-buffer.h" line="65"/>
       <field name="info" writable="1">
-        <doc xml:space="preserve">a #GstAudioInfo describing the audio properties of this buffer</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-buffer.h"
+             line="32">a #GstAudioInfo describing the audio properties of this buffer</doc>
         <type name="AudioInfo" c:type="GstAudioInfo"/>
       </field>
       <field name="n_samples" writable="1">
-        <doc xml:space="preserve">the size of the buffer in samples</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-buffer.h"
+             line="33">the size of the buffer in samples</doc>
         <type name="gsize" c:type="gsize"/>
       </field>
       <field name="n_planes" writable="1">
-        <doc xml:space="preserve">the number of planes available</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-buffer.h"
+             line="34">the number of planes available</doc>
         <type name="gint" c:type="gint"/>
       </field>
       <field name="planes" writable="1">
-        <doc xml:space="preserve">an array of @n_planes pointers pointing to the start of each
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-buffer.h"
+             line="35">an array of @n_planes pointers pointing to the start of each
   plane in the mapped buffer</doc>
         <type name="gpointer" c:type="gpointer*"/>
       </field>
       <field name="buffer" writable="1">
-        <doc xml:space="preserve">the mapped buffer</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-buffer.h"
+             line="37">the mapped buffer</doc>
         <type name="Gst.Buffer" c:type="GstBuffer*"/>
       </field>
       <field name="map_infos" readable="0" private="1">
         <type name="Gst.MapInfo" c:type="GstMapInfo*"/>
       </field>
       <field name="priv_planes_arr" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="8">
+        <array zero-terminated="0" fixed-size="8">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
       <field name="priv_map_infos_arr" readable="0" private="1">
-        <array zero-terminated="0" c:type="GstMapInfo" fixed-size="8">
+        <array zero-terminated="0" fixed-size="8">
           <type name="Gst.MapInfo" c:type="GstMapInfo"/>
         </array>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
       <method name="map" c:identifier="gst_audio_buffer_map" version="1.16">
-        <doc xml:space="preserve">Maps an audio @gstbuffer so that it can be read or written and stores the
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-buffer.c"
+             line="56">Maps an audio @gstbuffer so that it can be read or written and stores the
 result of the map operation in @buffer.
 
 This is especially useful when the @gstbuffer is in non-interleaved (planar)
@@ -1398,25 +3156,37 @@ memories in the buffer before calling this function.
 
 Note: The actual #GstBuffer is not ref'ed, but it is required to stay valid
 as long as it's mapped.</doc>
+        <source-position filename="gst-libs/gst/audio/audio-buffer.h"
+                         line="69"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the map operation succeeded or %FALSE on failure</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-buffer.c"
+               line="88">%TRUE if the map operation succeeded or %FALSE on failure</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="buffer" transfer-ownership="none">
-            <doc xml:space="preserve">pointer to a #GstAudioBuffer</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-buffer.c"
+                 line="58">pointer to a #GstAudioBuffer</doc>
             <type name="AudioBuffer" c:type="GstAudioBuffer*"/>
           </instance-parameter>
           <parameter name="info" transfer-ownership="none">
-            <doc xml:space="preserve">the audio properties of the buffer</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-buffer.c"
+                 line="59">the audio properties of the buffer</doc>
             <type name="AudioInfo" c:type="const GstAudioInfo*"/>
           </parameter>
           <parameter name="gstbuffer" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstBuffer to be mapped</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-buffer.c"
+                 line="60">the #GstBuffer to be mapped</doc>
             <type name="Gst.Buffer" c:type="GstBuffer*"/>
           </parameter>
           <parameter name="flags" transfer-ownership="none">
-            <doc xml:space="preserve">the access mode for the memory</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-buffer.c"
+                 line="61">the access mode for the memory</doc>
             <type name="Gst.MapFlags" c:type="GstMapFlags"/>
           </parameter>
         </parameters>
@@ -1424,25 +3194,36 @@ as long as it's mapped.</doc>
       <method name="unmap"
               c:identifier="gst_audio_buffer_unmap"
               version="1.16">
-        <doc xml:space="preserve">Unmaps an audio buffer that was previously mapped with
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-buffer.c"
+             line="41">Unmaps an audio buffer that was previously mapped with
 gst_audio_buffer_map().</doc>
+        <source-position filename="gst-libs/gst/audio/audio-buffer.h"
+                         line="73"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="buffer" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstAudioBuffer to unmap</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-buffer.c"
+                 line="43">the #GstAudioBuffer to unmap</doc>
             <type name="AudioBuffer" c:type="GstAudioBuffer*"/>
           </instance-parameter>
         </parameters>
       </method>
       <function name="clip" c:identifier="gst_audio_buffer_clip">
-        <doc xml:space="preserve">Clip the buffer to the given %GstSegment.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio.c"
+             line="58">Clip the buffer to the given %GstSegment.
 
 After calling this function the caller does not own a reference to
 @buffer anymore.</doc>
+        <source-position filename="gst-libs/gst/audio/audio.h" line="96"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">%NULL if the buffer is completely outside the configured segment,
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio.c"
+               line="72">%NULL if the buffer is completely outside the configured segment,
 otherwise the clipped buffer is returned.
 
 If the buffer has no timestamp, it is assumed to be inside the segment and
@@ -1451,20 +3232,28 @@ is not clipped</doc>
         </return-value>
         <parameters>
           <parameter name="buffer" transfer-ownership="full">
-            <doc xml:space="preserve">The buffer to clip.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio.c"
+                 line="60">The buffer to clip.</doc>
             <type name="Gst.Buffer" c:type="GstBuffer*"/>
           </parameter>
           <parameter name="segment" transfer-ownership="none">
-            <doc xml:space="preserve">Segment in %GST_FORMAT_TIME or %GST_FORMAT_DEFAULT to which
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio.c"
+                 line="61">Segment in %GST_FORMAT_TIME or %GST_FORMAT_DEFAULT to which
           the buffer should be clipped.</doc>
             <type name="Gst.Segment" c:type="const GstSegment*"/>
           </parameter>
           <parameter name="rate" transfer-ownership="none">
-            <doc xml:space="preserve">sample rate.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio.c"
+                 line="63">sample rate.</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="bpf" transfer-ownership="none">
-            <doc xml:space="preserve">size of one audio frame in bytes. This is the size of one sample *
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio.c"
+                 line="64">size of one audio frame in bytes. This is the size of one sample *
 number of channels.</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
@@ -1472,29 +3261,43 @@ number of channels.</doc>
       </function>
       <function name="reorder_channels"
                 c:identifier="gst_audio_buffer_reorder_channels">
-        <doc xml:space="preserve">Reorders @buffer from the channel positions @from to the channel
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-channels.c"
+             line="278">Reorders @buffer from the channel positions @from to the channel
 positions @to. @from and @to must contain the same number of
 positions and the same positions, only in a different order.
 @buffer must be writable.</doc>
+        <source-position filename="gst-libs/gst/audio/audio-channels.h"
+                         line="135"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the reordering was possible.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-channels.c"
+               line="291">%TRUE if the reordering was possible.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <parameter name="buffer" transfer-ownership="none">
-            <doc xml:space="preserve">The buffer to reorder.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-channels.c"
+                 line="280">The buffer to reorder.</doc>
             <type name="Gst.Buffer" c:type="GstBuffer*"/>
           </parameter>
           <parameter name="format" transfer-ownership="none">
-            <doc xml:space="preserve">The %GstAudioFormat of the buffer.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-channels.c"
+                 line="281">The %GstAudioFormat of the buffer.</doc>
             <type name="AudioFormat" c:type="GstAudioFormat"/>
           </parameter>
           <parameter name="channels" transfer-ownership="none">
-            <doc xml:space="preserve">The number of channels.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-channels.c"
+                 line="282">The number of channels.</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="from" transfer-ownership="none">
-            <doc xml:space="preserve">The channel positions in the buffer.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-channels.c"
+                 line="283">The channel positions in the buffer.</doc>
             <array length="2"
                    zero-terminated="0"
                    c:type="const GstAudioChannelPosition*">
@@ -1503,7 +3306,9 @@ positions and the same positions, only in a different order.
             </array>
           </parameter>
           <parameter name="to" transfer-ownership="none">
-            <doc xml:space="preserve">The channel positions to convert to.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-channels.c"
+                 line="284">The channel positions to convert to.</doc>
             <array length="2"
                    zero-terminated="0"
                    c:type="const GstAudioChannelPosition*">
@@ -1516,33 +3321,46 @@ positions and the same positions, only in a different order.
       <function name="truncate"
                 c:identifier="gst_audio_buffer_truncate"
                 version="1.16">
-        <doc xml:space="preserve">Truncate the buffer to finally have @samples number of samples, removing
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio.c"
+             line="247">Truncate the buffer to finally have @samples number of samples, removing
 the necessary amount of samples from the end and @trim number of samples
 from the beginning.
 
 After calling this function the caller does not own a reference to
 @buffer anymore.</doc>
+        <source-position filename="gst-libs/gst/audio/audio.h" line="101"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the truncated buffer or %NULL if the arguments
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio.c"
+               line="264">the truncated buffer or %NULL if the arguments
   were invalid</doc>
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </return-value>
         <parameters>
           <parameter name="buffer" transfer-ownership="full">
-            <doc xml:space="preserve">The buffer to truncate.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio.c"
+                 line="249">The buffer to truncate.</doc>
             <type name="Gst.Buffer" c:type="GstBuffer*"/>
           </parameter>
           <parameter name="bpf" transfer-ownership="none">
-            <doc xml:space="preserve">size of one audio frame in bytes. This is the size of one sample *
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio.c"
+                 line="250">size of one audio frame in bytes. This is the size of one sample *
 number of channels.</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="trim" transfer-ownership="none">
-            <doc xml:space="preserve">the number of samples to remove from the beginning of the buffer</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio.c"
+                 line="252">the number of samples to remove from the beginning of the buffer</doc>
             <type name="gsize" c:type="gsize"/>
           </parameter>
           <parameter name="samples" transfer-ownership="none">
-            <doc xml:space="preserve">the final number of samples that should exist in this buffer or -1
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio.c"
+                 line="253">the final number of samples that should exist in this buffer or -1
 to use all the remaining samples if you are only removing samples from the
 beginning.</doc>
             <type name="gsize" c:type="gsize"/>
@@ -1557,7 +3375,9 @@ beginning.</doc>
            glib:type-name="GstAudioCdSrc"
            glib:get-type="gst_audio_cd_src_get_type"
            glib:type-struct="AudioCdSrcClass">
-      <doc xml:space="preserve">Provides a base class for CD digital audio (CDDA) sources, which handles
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/gstaudiocdsrc.c"
+           line="37">Provides a base class for CD digital audio (CDDA) sources, which handles
 things like seeking, querying, discid calculation, tags, and buffer
 timestamping.
 
@@ -1600,8 +3420,12 @@ each track, with information about each track. The duration for each
 track can be retrieved via the #GST_TAG_DURATION tag from each entry's
 tag list, or calculated via gst_toc_entry_get_start_stop_times().
 The track entries in the TOC will be sorted by track number.</doc>
+      <source-position filename="gst-libs/gst/audio/gstaudiocdsrc.h"
+                       line="132"/>
       <implements name="Gst.URIHandler"/>
       <virtual-method name="close">
+        <source-position filename="gst-libs/gst/audio/gstaudiocdsrc.h"
+                         line="116"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
@@ -1612,6 +3436,8 @@ The track entries in the TOC will be sorted by track number.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="open">
+        <source-position filename="gst-libs/gst/audio/gstaudiocdsrc.h"
+                         line="115"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -1625,6 +3451,8 @@ The track entries in the TOC will be sorted by track number.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="read_sector">
+        <source-position filename="gst-libs/gst/audio/gstaudiocdsrc.h"
+                         line="119"/>
         <return-value transfer-ownership="full">
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </return-value>
@@ -1638,21 +3466,31 @@ The track entries in the TOC will be sorted by track number.</doc>
         </parameters>
       </virtual-method>
       <method name="add_track" c:identifier="gst_audio_cd_src_add_track">
-        <doc xml:space="preserve">CDDA sources use this function from their start vfunc to announce the
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiocdsrc.c"
+             line="1072">CDDA sources use this function from their start vfunc to announce the
 available data and audio tracks to the base source class. The caller
 should allocate @track on the stack, the base source will do a shallow
 copy of the structure (and take ownership of the taglist if there is one).</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudiocdsrc.h"
+                         line="138"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">FALSE on error, otherwise TRUE.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudiocdsrc.c"
+               line="1082">FALSE on error, otherwise TRUE.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="src" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioCdSrc</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiocdsrc.c"
+                 line="1074">a #GstAudioCdSrc</doc>
             <type name="AudioCdSrc" c:type="GstAudioCdSrc*"/>
           </instance-parameter>
           <parameter name="track" transfer-ownership="none">
-            <doc xml:space="preserve">address of #GstAudioCdSrcTrack to add</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiocdsrc.c"
+                 line="1075">address of #GstAudioCdSrcTrack to add</doc>
             <type name="AudioCdSrcTrack" c:type="GstAudioCdSrcTrack*"/>
           </parameter>
         </parameters>
@@ -1676,12 +3514,12 @@ copy of the structure (and take ownership of the taglist if there is one).</doc>
         <type name="AudioCdSrcPrivate" c:type="GstAudioCdSrcPrivate*"/>
       </field>
       <field name="_gst_reserved1" readable="0" private="1">
-        <array zero-terminated="0" c:type="guint" fixed-size="2">
+        <array zero-terminated="0" fixed-size="2">
           <type name="guint" c:type="guint"/>
         </array>
       </field>
       <field name="_gst_reserved2" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="2">
+        <array zero-terminated="0" fixed-size="2">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -1689,13 +3527,21 @@ copy of the structure (and take ownership of the taglist if there is one).</doc>
     <record name="AudioCdSrcClass"
             c:type="GstAudioCdSrcClass"
             glib:is-gtype-struct-for="AudioCdSrc">
-      <doc xml:space="preserve">Audio CD source base class.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/gstaudiocdsrc.h"
+           line="100">Audio CD source base class.</doc>
+      <source-position filename="gst-libs/gst/audio/gstaudiocdsrc.h"
+                       line="132"/>
       <field name="pushsrc_class">
-        <doc xml:space="preserve">the parent class</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiocdsrc.h"
+             line="102">the parent class</doc>
         <type name="GstBase.PushSrcClass" c:type="GstPushSrcClass"/>
       </field>
       <field name="open">
         <callback name="open">
+          <source-position filename="gst-libs/gst/audio/gstaudiocdsrc.h"
+                           line="115"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -1711,6 +3557,8 @@ copy of the structure (and take ownership of the taglist if there is one).</doc>
       </field>
       <field name="close">
         <callback name="close">
+          <source-position filename="gst-libs/gst/audio/gstaudiocdsrc.h"
+                           line="116"/>
           <return-value transfer-ownership="none">
             <type name="none" c:type="void"/>
           </return-value>
@@ -1723,6 +3571,8 @@ copy of the structure (and take ownership of the taglist if there is one).</doc>
       </field>
       <field name="read_sector">
         <callback name="read_sector">
+          <source-position filename="gst-libs/gst/audio/gstaudiocdsrc.h"
+                           line="119"/>
           <return-value transfer-ownership="full">
             <type name="Gst.Buffer" c:type="GstBuffer*"/>
           </return-value>
@@ -1737,7 +3587,7 @@ copy of the structure (and take ownership of the taglist if there is one).</doc>
         </callback>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="20">
+        <array zero-terminated="0" fixed-size="20">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -1746,60 +3596,82 @@ copy of the structure (and take ownership of the taglist if there is one).</doc>
                  glib:type-name="GstAudioCdSrcMode"
                  glib:get-type="gst_audio_cd_src_mode_get_type"
                  c:type="GstAudioCdSrcMode">
-      <doc xml:space="preserve">Mode in which the CD audio source operates. Influences timestamping,
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/gstaudiocdsrc.h"
+           line="44">Mode in which the CD audio source operates. Influences timestamping,
 EOS handling and seeking.</doc>
       <member name="normal"
               value="0"
               c:identifier="GST_AUDIO_CD_SRC_MODE_NORMAL"
               glib:nick="normal">
-        <doc xml:space="preserve">each single track is a stream</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiocdsrc.h"
+             line="46">each single track is a stream</doc>
       </member>
       <member name="continuous"
               value="1"
               c:identifier="GST_AUDIO_CD_SRC_MODE_CONTINUOUS"
               glib:nick="continuous">
-        <doc xml:space="preserve">the entire disc is a single stream</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiocdsrc.h"
+             line="47">the entire disc is a single stream</doc>
       </member>
     </enumeration>
     <record name="AudioCdSrcPrivate"
             c:type="GstAudioCdSrcPrivate"
             disguised="1">
+      <source-position filename="gst-libs/gst/audio/gstaudiocdsrc.h"
+                       line="42"/>
     </record>
     <record name="AudioCdSrcTrack" c:type="GstAudioCdSrcTrack">
-      <doc xml:space="preserve">CD track abstraction to communicate TOC entries to the base class.
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/gstaudiocdsrc.h"
+           line="57">CD track abstraction to communicate TOC entries to the base class.
 
 This structure is only for use by sub-classed in connection with
 gst_audio_cd_src_add_track().
 
 Applications will be informed of the available tracks via a TOC message
 on the pipeline's #GstBus instead.</doc>
+      <source-position filename="gst-libs/gst/audio/gstaudiocdsrc.h"
+                       line="84"/>
       <field name="is_audio" writable="1">
-        <doc xml:space="preserve">Whether this is an audio track</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiocdsrc.h"
+             line="59">Whether this is an audio track</doc>
         <type name="gboolean" c:type="gboolean"/>
       </field>
       <field name="num" writable="1">
-        <doc xml:space="preserve">Track number in TOC (usually starts from 1, but not always)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiocdsrc.h"
+             line="60">Track number in TOC (usually starts from 1, but not always)</doc>
         <type name="guint" c:type="guint"/>
       </field>
       <field name="start" writable="1">
-        <doc xml:space="preserve">The first sector of this track (LBA)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiocdsrc.h"
+             line="61">The first sector of this track (LBA)</doc>
         <type name="guint" c:type="guint"/>
       </field>
       <field name="end" writable="1">
-        <doc xml:space="preserve">The last sector of this track (LBA)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiocdsrc.h"
+             line="62">The last sector of this track (LBA)</doc>
         <type name="guint" c:type="guint"/>
       </field>
       <field name="tags" writable="1">
-        <doc xml:space="preserve">Track-specific tags (e.g. from cd-text information), or NULL</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiocdsrc.h"
+             line="63">Track-specific tags (e.g. from cd-text information), or NULL</doc>
         <type name="Gst.TagList" c:type="GstTagList*"/>
       </field>
       <field name="_gst_reserved1" readable="0" private="1">
-        <array zero-terminated="0" c:type="guint" fixed-size="2">
+        <array zero-terminated="0" fixed-size="2">
           <type name="guint" c:type="guint"/>
         </array>
       </field>
       <field name="_gst_reserved2" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="2">
+        <array zero-terminated="0" fixed-size="2">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -1807,21 +3679,31 @@ on the pipeline's #GstBus instead.</doc>
     <record name="AudioChannelMixer"
             c:type="GstAudioChannelMixer"
             disguised="1">
+      <source-position filename="gst-libs/gst/audio/audio-channel-mixer.h"
+                       line="29"/>
       <method name="free" c:identifier="gst_audio_channel_mixer_free">
-        <doc xml:space="preserve">Free memory allocated by @mix.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-channel-mixer.c"
+             line="76">Free memory allocated by @mix.</doc>
+        <source-position filename="gst-libs/gst/audio/audio-channel-mixer.h"
+                         line="65"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="mix" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioChannelMixer</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-channel-mixer.c"
+                 line="78">a #GstAudioChannelMixer</doc>
             <type name="AudioChannelMixer" c:type="GstAudioChannelMixer*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="is_passthrough"
               c:identifier="gst_audio_channel_mixer_is_passthrough">
-        <doc xml:space="preserve">Check if @mix is in passthrough.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-channel-mixer.c"
+             line="1009">Check if @mix is in passthrough.
 
 Only N x N mix identity matrices are considered passthrough,
 this is determined by comparing the contents of the matrix
@@ -1832,19 +3714,27 @@ generated, they should be rounded up or down by explicit
 assignment of 0.0 or 1.0 to values within a user-defined
 epsilon, this code doesn't make assumptions as to what may
 constitute an appropriate epsilon.</doc>
+        <source-position filename="gst-libs/gst/audio/audio-channel-mixer.h"
+                         line="72"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE is @mix is passthrough.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-channel-mixer.c"
+               line="1025">%TRUE is @mix is passthrough.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="mix" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioChannelMixer</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-channel-mixer.c"
+                 line="1011">a #GstAudioChannelMixer</doc>
             <type name="AudioChannelMixer" c:type="GstAudioChannelMixer*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="samples" c:identifier="gst_audio_channel_mixer_samples">
-        <doc xml:space="preserve">In case the samples are interleaved, @in and @out must point to an
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-channel-mixer.c"
+             line="1052">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
@@ -1852,30 +3742,40 @@ 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.</doc>
+        <source-position filename="gst-libs/gst/audio/audio-channel-mixer.h"
+                         line="79"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="mix" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioChannelMixer</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-channel-mixer.c"
+                 line="1054">a #GstAudioChannelMixer</doc>
             <type name="AudioChannelMixer" c:type="GstAudioChannelMixer*"/>
           </instance-parameter>
           <parameter name="in"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">input samples</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-channel-mixer.c"
+                 line="1055">input samples</doc>
             <type name="gpointer" c:type="const gpointer*"/>
           </parameter>
           <parameter name="out"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">output samples</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-channel-mixer.c"
+                 line="1056">output samples</doc>
             <type name="gpointer" c:type="gpointer*"/>
           </parameter>
           <parameter name="samples" transfer-ownership="none">
-            <doc xml:space="preserve">number of samples</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-channel-mixer.c"
+                 line="1057">number of samples</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
         </parameters>
@@ -1883,15 +3783,23 @@ Perform channel mixing on @in_data and write the result to @out_data.
       <function name="new"
                 c:identifier="gst_audio_channel_mixer_new"
                 introspectable="0">
-        <doc xml:space="preserve">Create a new channel mixer object for the given parameters.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-channel-mixer.c"
+             line="973">Create a new channel mixer object for the given parameters.</doc>
+        <source-position filename="gst-libs/gst/audio/audio-channel-mixer.h"
+                         line="50"/>
         <return-value>
-          <doc xml:space="preserve">a new #GstAudioChannelMixer object, or %NULL if @format isn't supported.
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-channel-mixer.c"
+               line="983">a new #GstAudioChannelMixer object, or %NULL if @format isn't supported.
   Free with gst_audio_channel_mixer_free() after usage.</doc>
           <type name="AudioChannelMixer" c:type="GstAudioChannelMixer*"/>
         </return-value>
         <parameters>
           <parameter name="flags" transfer-ownership="none">
-            <doc xml:space="preserve">#GstAudioChannelMixerFlags</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-channel-mixer.c"
+                 line="975">#GstAudioChannelMixerFlags</doc>
             <type name="AudioChannelMixerFlags"
                   c:type="GstAudioChannelMixerFlags"/>
           </parameter>
@@ -1899,20 +3807,28 @@ Perform channel mixing on @in_data and write the result to @out_data.
             <type name="AudioFormat" c:type="GstAudioFormat"/>
           </parameter>
           <parameter name="in_channels" transfer-ownership="none">
-            <doc xml:space="preserve">number of input channels</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-channel-mixer.c"
+                 line="976">number of input channels</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="in_position" transfer-ownership="none">
-            <doc xml:space="preserve">positions of input channels</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-channel-mixer.c"
+                 line="977">positions of input channels</doc>
             <type name="AudioChannelPosition"
                   c:type="GstAudioChannelPosition*"/>
           </parameter>
           <parameter name="out_channels" transfer-ownership="none">
-            <doc xml:space="preserve">number of output channels</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-channel-mixer.c"
+                 line="978">number of output channels</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="out_position" transfer-ownership="none">
-            <doc xml:space="preserve">positions of output channels</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-channel-mixer.c"
+                 line="979">positions of output channels</doc>
             <type name="AudioChannelPosition"
                   c:type="GstAudioChannelPosition*"/>
           </parameter>
@@ -1922,16 +3838,24 @@ Perform channel mixing on @in_data and write the result to @out_data.
                 c:identifier="gst_audio_channel_mixer_new_with_matrix"
                 version="1.14"
                 introspectable="0">
-        <doc xml:space="preserve">Create a new channel mixer object for the given parameters.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-channel-mixer.c"
+             line="809">Create a new channel mixer object for the given parameters.</doc>
+        <source-position filename="gst-libs/gst/audio/audio-channel-mixer.h"
+                         line="58"/>
         <return-value>
-          <doc xml:space="preserve">a new #GstAudioChannelMixer object, or %NULL if @format isn't supported,
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-channel-mixer.c"
+               line="820">a new #GstAudioChannelMixer object, or %NULL if @format isn't supported,
   @matrix is invalid, or @matrix is %NULL and @in_channels != @out_channels.
   Free with gst_audio_channel_mixer_free() after usage.</doc>
           <type name="AudioChannelMixer" c:type="GstAudioChannelMixer*"/>
         </return-value>
         <parameters>
           <parameter name="flags" transfer-ownership="none">
-            <doc xml:space="preserve">#GstAudioChannelMixerFlags</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-channel-mixer.c"
+                 line="811">#GstAudioChannelMixerFlags</doc>
             <type name="AudioChannelMixerFlags"
                   c:type="GstAudioChannelMixerFlags"/>
           </parameter>
@@ -1939,18 +3863,24 @@ Perform channel mixing on @in_data and write the result to @out_data.
             <type name="AudioFormat" c:type="GstAudioFormat"/>
           </parameter>
           <parameter name="in_channels" transfer-ownership="none">
-            <doc xml:space="preserve">number of input channels</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-channel-mixer.c"
+                 line="812">number of input channels</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="out_channels" transfer-ownership="none">
-            <doc xml:space="preserve">number of output channels</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-channel-mixer.c"
+                 line="813">number of output channels</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="matrix"
                      transfer-ownership="full"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">channel conversion matrix, m[@in_channels][@out_channels].
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-channel-mixer.c"
+                 line="814">channel conversion matrix, m[@in_channels][@out_channels].
   If identity matrix, passthrough applies. If %NULL, a (potentially truncated)
   identity matrix is generated.</doc>
             <type name="gfloat" c:type="gfloat**"/>
@@ -1962,43 +3892,57 @@ Perform channel mixing on @in_data and write the result to @out_data.
               glib:type-name="GstAudioChannelMixerFlags"
               glib:get-type="gst_audio_channel_mixer_flags_get_type"
               c:type="GstAudioChannelMixerFlags">
-      <doc xml:space="preserve">Flags passed to gst_audio_channel_mixer_new()</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/audio-channel-mixer.h"
+           line="31">Flags passed to gst_audio_channel_mixer_new()</doc>
       <member name="none"
               value="0"
               c:identifier="GST_AUDIO_CHANNEL_MIXER_FLAGS_NONE"
               glib:nick="none">
-        <doc xml:space="preserve">no flag</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-channel-mixer.h"
+             line="33">no flag</doc>
       </member>
       <member name="non_interleaved_in"
               value="1"
               c:identifier="GST_AUDIO_CHANNEL_MIXER_FLAGS_NON_INTERLEAVED_IN"
               glib:nick="non-interleaved-in">
-        <doc xml:space="preserve">input channels are not interleaved</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-channel-mixer.h"
+             line="34">input channels are not interleaved</doc>
       </member>
       <member name="non_interleaved_out"
               value="2"
               c:identifier="GST_AUDIO_CHANNEL_MIXER_FLAGS_NON_INTERLEAVED_OUT"
               glib:nick="non-interleaved-out">
-        <doc xml:space="preserve">output channels are not interleaved</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-channel-mixer.h"
+             line="35">output channels are not interleaved</doc>
       </member>
       <member name="unpositioned_in"
               value="4"
               c:identifier="GST_AUDIO_CHANNEL_MIXER_FLAGS_UNPOSITIONED_IN"
               glib:nick="unpositioned-in">
-        <doc xml:space="preserve">input channels are explicitly unpositioned</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-channel-mixer.h"
+             line="36">input channels are explicitly unpositioned</doc>
       </member>
       <member name="unpositioned_out"
               value="8"
               c:identifier="GST_AUDIO_CHANNEL_MIXER_FLAGS_UNPOSITIONED_OUT"
               glib:nick="unpositioned-out">
-        <doc xml:space="preserve">output channels are explicitly unpositioned</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-channel-mixer.h"
+             line="37">output channels are explicitly unpositioned</doc>
       </member>
     </bitfield>
     <enumeration name="AudioChannelPosition"
                  glib:type-name="GstAudioChannelPosition"
                  glib:get-type="gst_audio_channel_position_get_type"
                  c:type="GstAudioChannelPosition">
-      <doc xml:space="preserve">Audio channel positions.
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/audio-channels.h"
+           line="31">Audio channel positions.
 
 These are the channels defined in SMPTE 2036-2-2008
 Table 1 for 22.2 audio systems with the Surround and Wide channels from
@@ -2020,13 +3964,15 @@ This is expressed in caps by having a single channel and no channel mask.
 This is expressed in caps by having a channel mask with no bits set.
 
 As another special case it is allowed to have two channels without a channel mask.
-This implicitely means that this is a stereo stream with a front left and front right
+This implicitly means that this is a stereo stream with a front left and front right
 channel.</doc>
       <member name="none"
               value="-3"
               c:identifier="GST_AUDIO_CHANNEL_POSITION_NONE"
               glib:nick="none">
-        <doc xml:space="preserve">used for position-less channels, e.g.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-channels.h"
+             line="63">used for position-less channels, e.g.
     from a sound card that records 1024 channels; mutually exclusive with
     any other channel position</doc>
       </member>
@@ -2034,188 +3980,250 @@ channel.</doc>
               value="-2"
               c:identifier="GST_AUDIO_CHANNEL_POSITION_MONO"
               glib:nick="mono">
-        <doc xml:space="preserve">Mono without direction;
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-channels.h"
+             line="33">Mono without direction;
     can only be used with 1 channel</doc>
       </member>
       <member name="invalid"
               value="-1"
               c:identifier="GST_AUDIO_CHANNEL_POSITION_INVALID"
               glib:nick="invalid">
-        <doc xml:space="preserve">invalid position</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-channels.h"
+             line="66">invalid position</doc>
       </member>
       <member name="front_left"
               value="0"
               c:identifier="GST_AUDIO_CHANNEL_POSITION_FRONT_LEFT"
               glib:nick="front-left">
-        <doc xml:space="preserve">Front left</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-channels.h"
+             line="35">Front left</doc>
       </member>
       <member name="front_right"
               value="1"
               c:identifier="GST_AUDIO_CHANNEL_POSITION_FRONT_RIGHT"
               glib:nick="front-right">
-        <doc xml:space="preserve">Front right</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-channels.h"
+             line="36">Front right</doc>
       </member>
       <member name="front_center"
               value="2"
               c:identifier="GST_AUDIO_CHANNEL_POSITION_FRONT_CENTER"
               glib:nick="front-center">
-        <doc xml:space="preserve">Front center</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-channels.h"
+             line="37">Front center</doc>
       </member>
       <member name="lfe1"
               value="3"
               c:identifier="GST_AUDIO_CHANNEL_POSITION_LFE1"
               glib:nick="lfe1">
-        <doc xml:space="preserve">Low-frequency effects 1 (subwoofer)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-channels.h"
+             line="38">Low-frequency effects 1 (subwoofer)</doc>
       </member>
       <member name="rear_left"
               value="4"
               c:identifier="GST_AUDIO_CHANNEL_POSITION_REAR_LEFT"
               glib:nick="rear-left">
-        <doc xml:space="preserve">Rear left</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-channels.h"
+             line="39">Rear left</doc>
       </member>
       <member name="rear_right"
               value="5"
               c:identifier="GST_AUDIO_CHANNEL_POSITION_REAR_RIGHT"
               glib:nick="rear-right">
-        <doc xml:space="preserve">Rear right</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-channels.h"
+             line="40">Rear right</doc>
       </member>
       <member name="front_left_of_center"
               value="6"
               c:identifier="GST_AUDIO_CHANNEL_POSITION_FRONT_LEFT_OF_CENTER"
               glib:nick="front-left-of-center">
-        <doc xml:space="preserve">Front left of center</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-channels.h"
+             line="41">Front left of center</doc>
       </member>
       <member name="front_right_of_center"
               value="7"
               c:identifier="GST_AUDIO_CHANNEL_POSITION_FRONT_RIGHT_OF_CENTER"
               glib:nick="front-right-of-center">
-        <doc xml:space="preserve">Front right of center</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-channels.h"
+             line="42">Front right of center</doc>
       </member>
       <member name="rear_center"
               value="8"
               c:identifier="GST_AUDIO_CHANNEL_POSITION_REAR_CENTER"
               glib:nick="rear-center">
-        <doc xml:space="preserve">Rear center</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-channels.h"
+             line="43">Rear center</doc>
       </member>
       <member name="lfe2"
               value="9"
               c:identifier="GST_AUDIO_CHANNEL_POSITION_LFE2"
               glib:nick="lfe2">
-        <doc xml:space="preserve">Low-frequency effects 2 (subwoofer)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-channels.h"
+             line="44">Low-frequency effects 2 (subwoofer)</doc>
       </member>
       <member name="side_left"
               value="10"
               c:identifier="GST_AUDIO_CHANNEL_POSITION_SIDE_LEFT"
               glib:nick="side-left">
-        <doc xml:space="preserve">Side left</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-channels.h"
+             line="45">Side left</doc>
       </member>
       <member name="side_right"
               value="11"
               c:identifier="GST_AUDIO_CHANNEL_POSITION_SIDE_RIGHT"
               glib:nick="side-right">
-        <doc xml:space="preserve">Side right</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-channels.h"
+             line="46">Side right</doc>
       </member>
       <member name="top_front_left"
               value="12"
               c:identifier="GST_AUDIO_CHANNEL_POSITION_TOP_FRONT_LEFT"
               glib:nick="top-front-left">
-        <doc xml:space="preserve">Top front left</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-channels.h"
+             line="47">Top front left</doc>
       </member>
       <member name="top_front_right"
               value="13"
               c:identifier="GST_AUDIO_CHANNEL_POSITION_TOP_FRONT_RIGHT"
               glib:nick="top-front-right">
-        <doc xml:space="preserve">Top front right</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-channels.h"
+             line="48">Top front right</doc>
       </member>
       <member name="top_front_center"
               value="14"
               c:identifier="GST_AUDIO_CHANNEL_POSITION_TOP_FRONT_CENTER"
               glib:nick="top-front-center">
-        <doc xml:space="preserve">Top front center</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-channels.h"
+             line="49">Top front center</doc>
       </member>
       <member name="top_center"
               value="15"
               c:identifier="GST_AUDIO_CHANNEL_POSITION_TOP_CENTER"
               glib:nick="top-center">
-        <doc xml:space="preserve">Top center</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-channels.h"
+             line="50">Top center</doc>
       </member>
       <member name="top_rear_left"
               value="16"
               c:identifier="GST_AUDIO_CHANNEL_POSITION_TOP_REAR_LEFT"
               glib:nick="top-rear-left">
-        <doc xml:space="preserve">Top rear left</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-channels.h"
+             line="51">Top rear left</doc>
       </member>
       <member name="top_rear_right"
               value="17"
               c:identifier="GST_AUDIO_CHANNEL_POSITION_TOP_REAR_RIGHT"
               glib:nick="top-rear-right">
-        <doc xml:space="preserve">Top rear right</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-channels.h"
+             line="52">Top rear right</doc>
       </member>
       <member name="top_side_left"
               value="18"
               c:identifier="GST_AUDIO_CHANNEL_POSITION_TOP_SIDE_LEFT"
               glib:nick="top-side-left">
-        <doc xml:space="preserve">Top side right</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-channels.h"
+             line="53">Top side right</doc>
       </member>
       <member name="top_side_right"
               value="19"
               c:identifier="GST_AUDIO_CHANNEL_POSITION_TOP_SIDE_RIGHT"
               glib:nick="top-side-right">
-        <doc xml:space="preserve">Top rear right</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-channels.h"
+             line="54">Top rear right</doc>
       </member>
       <member name="top_rear_center"
               value="20"
               c:identifier="GST_AUDIO_CHANNEL_POSITION_TOP_REAR_CENTER"
               glib:nick="top-rear-center">
-        <doc xml:space="preserve">Top rear center</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-channels.h"
+             line="55">Top rear center</doc>
       </member>
       <member name="bottom_front_center"
               value="21"
               c:identifier="GST_AUDIO_CHANNEL_POSITION_BOTTOM_FRONT_CENTER"
               glib:nick="bottom-front-center">
-        <doc xml:space="preserve">Bottom front center</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-channels.h"
+             line="56">Bottom front center</doc>
       </member>
       <member name="bottom_front_left"
               value="22"
               c:identifier="GST_AUDIO_CHANNEL_POSITION_BOTTOM_FRONT_LEFT"
               glib:nick="bottom-front-left">
-        <doc xml:space="preserve">Bottom front left</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-channels.h"
+             line="57">Bottom front left</doc>
       </member>
       <member name="bottom_front_right"
               value="23"
               c:identifier="GST_AUDIO_CHANNEL_POSITION_BOTTOM_FRONT_RIGHT"
               glib:nick="bottom-front-right">
-        <doc xml:space="preserve">Bottom front right</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-channels.h"
+             line="58">Bottom front right</doc>
       </member>
       <member name="wide_left"
               value="24"
               c:identifier="GST_AUDIO_CHANNEL_POSITION_WIDE_LEFT"
               glib:nick="wide-left">
-        <doc xml:space="preserve">Wide left (between front left and side left)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-channels.h"
+             line="59">Wide left (between front left and side left)</doc>
       </member>
       <member name="wide_right"
               value="25"
               c:identifier="GST_AUDIO_CHANNEL_POSITION_WIDE_RIGHT"
               glib:nick="wide-right">
-        <doc xml:space="preserve">Wide right (between front right and side right)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-channels.h"
+             line="60">Wide right (between front right and side right)</doc>
       </member>
       <member name="surround_left"
               value="26"
               c:identifier="GST_AUDIO_CHANNEL_POSITION_SURROUND_LEFT"
               glib:nick="surround-left">
-        <doc xml:space="preserve">Surround left (between rear left and side left)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-channels.h"
+             line="61">Surround left (between rear left and side left)</doc>
       </member>
       <member name="surround_right"
               value="27"
               c:identifier="GST_AUDIO_CHANNEL_POSITION_SURROUND_RIGHT"
               glib:nick="surround-right">
-        <doc xml:space="preserve">Surround right (between rear right and side right)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-channels.h"
+             line="62">Surround right (between rear right and side right)</doc>
       </member>
     </enumeration>
     <record name="AudioClippingMeta"
             c:type="GstAudioClippingMeta"
             version="1.8">
-      <doc xml:space="preserve">Extra buffer metadata describing how much audio has to be clipped from
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/gstaudiometa.h"
+           line="85">Extra buffer metadata describing how much audio has to be clipped from
 the start or end of a buffer. This is used for compressed formats, where
 the first frame usually has some additional samples due to encoder and
 decoder delays, and the last frame usually has some additional samples to
@@ -2226,24 +4234,36 @@ samples, and multiply decoded streams can be gaplessly concatenated.
 
 Note: If clipping of the start is done by adjusting the segment, this meta
 has to be dropped from buffers as otherwise clipping could happen twice.</doc>
+      <source-position filename="gst-libs/gst/audio/gstaudiometa.h"
+                       line="112"/>
       <field name="meta" writable="1">
-        <doc xml:space="preserve">parent #GstMeta</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiometa.h"
+             line="87">parent #GstMeta</doc>
         <type name="Gst.Meta" c:type="GstMeta"/>
       </field>
       <field name="format" writable="1">
-        <doc xml:space="preserve">GstFormat of @start and @stop, GST_FORMAT_DEFAULT is samples</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiometa.h"
+             line="88">GstFormat of @start and @stop, GST_FORMAT_DEFAULT is samples</doc>
         <type name="Gst.Format" c:type="GstFormat"/>
       </field>
       <field name="start" writable="1">
-        <doc xml:space="preserve">Amount of audio to clip from start of buffer</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiometa.h"
+             line="89">Amount of audio to clip from start of buffer</doc>
         <type name="guint64" c:type="guint64"/>
       </field>
       <field name="end" writable="1">
-        <doc xml:space="preserve">Amount of  to clip from end of buffer</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiometa.h"
+             line="90">Amount of  to clip from end of buffer</doc>
         <type name="guint64" c:type="guint64"/>
       </field>
       <function name="get_info"
                 c:identifier="gst_audio_clipping_meta_get_info">
+        <source-position filename="gst-libs/gst/audio/gstaudiometa.h"
+                         line="118"/>
         <return-value transfer-ownership="none">
           <type name="Gst.MetaInfo" c:type="const GstMetaInfo*"/>
         </return-value>
@@ -2256,21 +4276,33 @@ has to be dropped from buffers as otherwise clipping could happen twice.</doc>
            glib:type-name="GstAudioClock"
            glib:get-type="gst_audio_clock_get_type"
            glib:type-struct="AudioClockClass">
-      <doc xml:space="preserve">#GstAudioClock makes it easy for elements to implement a #GstClock, they
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/gstaudioclock.c"
+           line="23">#GstAudioClock makes it easy for elements to implement a #GstClock, they
 simply need to provide a function that returns the current clock time.
 
 This object is internally used to implement the clock in #GstAudioBaseSink.</doc>
+      <source-position filename="gst-libs/gst/audio/gstaudioclock.h"
+                       line="90"/>
       <constructor name="new" c:identifier="gst_audio_clock_new">
-        <doc xml:space="preserve">Create a new #GstAudioClock instance. Whenever the clock time should be
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioclock.c"
+             line="89">Create a new #GstAudioClock instance. Whenever the clock time should be
 calculated it will call @func with @user_data. When @func returns
 #GST_CLOCK_TIME_NONE, the clock will return the last reported time.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudioclock.h"
+                         line="96"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new #GstAudioClock casted to a #GstClock.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudioclock.c"
+               line="100">a new #GstAudioClock casted to a #GstClock.</doc>
           <type name="Gst.Clock" c:type="GstClock*"/>
         </return-value>
         <parameters>
           <parameter name="name" transfer-ownership="none">
-            <doc xml:space="preserve">the name of the clock</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioclock.c"
+                 line="91">the name of the clock</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="func"
@@ -2278,7 +4310,9 @@ calculated it will call @func with @user_data. When @func returns
                      scope="notified"
                      closure="2"
                      destroy="3">
-            <doc xml:space="preserve">a function</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioclock.c"
+                 line="92">a function</doc>
             <type name="AudioClockGetTimeFunc"
                   c:type="GstAudioClockGetTimeFunc"/>
           </parameter>
@@ -2286,80 +4320,116 @@ calculated it will call @func with @user_data. When @func returns
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">user data</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioclock.c"
+                 line="93">user data</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
           <parameter name="destroy_notify"
                      transfer-ownership="none"
                      scope="async">
-            <doc xml:space="preserve">#GDestroyNotify for @user_data</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioclock.c"
+                 line="94">#GDestroyNotify for @user_data</doc>
             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
           </parameter>
         </parameters>
       </constructor>
       <method name="adjust" c:identifier="gst_audio_clock_adjust">
-        <doc xml:space="preserve">Adjust @time with the internal offset of the audio clock.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">@time adjusted with the internal offset.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioclock.c"
+             line="207">Adjust @time with the internal offset of the audio clock.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudioclock.h"
+                         line="106"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudioclock.c"
+               line="214">@time adjusted with the internal offset.</doc>
           <type name="Gst.ClockTime" c:type="GstClockTime"/>
         </return-value>
         <parameters>
           <instance-parameter name="clock" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioClock</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioclock.c"
+                 line="209">a #GstAudioClock</doc>
             <type name="AudioClock" c:type="GstAudioClock*"/>
           </instance-parameter>
           <parameter name="time" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstClockTime</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioclock.c"
+                 line="210">a #GstClockTime</doc>
             <type name="Gst.ClockTime" c:type="GstClockTime"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_time" c:identifier="gst_audio_clock_get_time">
-        <doc xml:space="preserve">Report the time as returned by the #GstAudioClockGetTimeFunc without applying
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioclock.c"
+             line="180">Report the time as returned by the #GstAudioClockGetTimeFunc without applying
 any offsets.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudioclock.h"
+                         line="103"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the time as reported by the time function of the audio clock</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudioclock.c"
+               line="187">the time as reported by the time function of the audio clock</doc>
           <type name="Gst.ClockTime" c:type="GstClockTime"/>
         </return-value>
         <parameters>
           <instance-parameter name="clock" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioClock</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioclock.c"
+                 line="182">a #GstAudioClock</doc>
             <type name="AudioClock" c:type="GstAudioClock*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="invalidate" c:identifier="gst_audio_clock_invalidate">
-        <doc xml:space="preserve">Invalidate the clock function. Call this function when the provided
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioclock.c"
+             line="226">Invalidate the clock function. Call this function when the provided
 #GstAudioClockGetTimeFunc cannot be called anymore, for example, when the
 user_data becomes invalid.
 
 After calling this function, @clock will return the last returned time for
 the rest of its lifetime.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudioclock.h"
+                         line="109"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="clock" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioClock</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioclock.c"
+                 line="228">a #GstAudioClock</doc>
             <type name="AudioClock" c:type="GstAudioClock*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="reset" c:identifier="gst_audio_clock_reset">
-        <doc xml:space="preserve">Inform @clock that future calls to #GstAudioClockGetTimeFunc will return values
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioclock.c"
+             line="119">Inform @clock that future calls to #GstAudioClockGetTimeFunc will return values
 starting from @time. The clock will update an internal offset to make sure that
 future calls to internal_time will return an increasing result as required by
 the #GstClock object.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudioclock.h"
+                         line="100"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="clock" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioClock</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioclock.c"
+                 line="121">a #GstAudioClock</doc>
             <type name="AudioClock" c:type="GstAudioClock*"/>
           </instance-parameter>
           <parameter name="time" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstClockTime</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioclock.c"
+                 line="122">a #GstClockTime</doc>
             <type name="Gst.ClockTime" c:type="GstClockTime"/>
           </parameter>
         </parameters>
@@ -2383,7 +4453,7 @@ the #GstClock object.</doc>
         <type name="Gst.ClockTimeDiff" c:type="GstClockTimeDiff"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -2391,27 +4461,37 @@ the #GstClock object.</doc>
     <record name="AudioClockClass"
             c:type="GstAudioClockClass"
             glib:is-gtype-struct-for="AudioClock">
+      <source-position filename="gst-libs/gst/audio/gstaudioclock.h"
+                       line="90"/>
       <field name="parent_class">
         <type name="Gst.SystemClockClass" c:type="GstSystemClockClass"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
     </record>
     <callback name="AudioClockGetTimeFunc" c:type="GstAudioClockGetTimeFunc">
-      <doc xml:space="preserve">This function will be called whenever the current clock time needs to be
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/gstaudioclock.h"
+           line="51">This function will be called whenever the current clock time needs to be
 calculated. If this function returns #GST_CLOCK_TIME_NONE, the last reported
 time will be returned by the clock.</doc>
+      <source-position filename="gst-libs/gst/audio/gstaudioclock.h"
+                       line="63"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">the current time or #GST_CLOCK_TIME_NONE if the previous time should
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioclock.h"
+             line="60">the current time or #GST_CLOCK_TIME_NONE if the previous time should
 be used.</doc>
         <type name="Gst.ClockTime" c:type="GstClockTime"/>
       </return-value>
       <parameters>
         <parameter name="clock" transfer-ownership="none">
-          <doc xml:space="preserve">the #GstAudioClock</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudioclock.h"
+               line="53">the #GstAudioClock</doc>
           <type name="Gst.Clock" c:type="GstClock*"/>
         </parameter>
         <parameter name="user_data"
@@ -2419,7 +4499,9 @@ be used.</doc>
                    nullable="1"
                    allow-none="1"
                    closure="1">
-          <doc xml:space="preserve">user data</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudioclock.h"
+               line="54">user data</doc>
           <type name="gpointer" c:type="gpointer"/>
         </parameter>
       </parameters>
@@ -2429,7 +4511,9 @@ be used.</doc>
             glib:type-name="GstAudioConverter"
             glib:get-type="gst_audio_converter_get_type"
             c:symbol-prefix="audio_converter">
-      <doc xml:space="preserve">This object is used to convert audio samples from one format to another.
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/audio-converter.c"
+           line="33">This object is used to convert audio samples from one format to another.
 The object can perform conversion of:
 
  * audio format with optional dithering and noise shaping
@@ -2437,34 +4521,50 @@ The object can perform conversion of:
  * audio samplerate
 
  * audio channels and channel layout</doc>
+      <source-position filename="gst-libs/gst/audio/audio-converter.h"
+                       line="31"/>
       <constructor name="new" c:identifier="gst_audio_converter_new">
-        <doc xml:space="preserve">Create a new #GstAudioConverter that is able to convert between @in and @out
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-converter.c"
+             line="1306">Create a new #GstAudioConverter that is able to convert between @in and @out
 audio formats.
 
-@config contains extra configuration options, see #GST_AUDIO_CONVERTER_OPT_*
+@config contains extra configuration options, see `GST_AUDIO_CONVERTER_OPT_*`
 parameters for details about the options and values.</doc>
+        <source-position filename="gst-libs/gst/audio/audio-converter.h"
+                         line="119"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a #GstAudioConverter or %NULL if conversion is not possible.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-converter.c"
+               line="1319">a #GstAudioConverter or %NULL if conversion is not possible.</doc>
           <type name="AudioConverter" c:type="GstAudioConverter*"/>
         </return-value>
         <parameters>
           <parameter name="flags" transfer-ownership="none">
-            <doc xml:space="preserve">extra #GstAudioConverterFlags</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-converter.c"
+                 line="1308">extra #GstAudioConverterFlags</doc>
             <type name="AudioConverterFlags" c:type="GstAudioConverterFlags"/>
           </parameter>
           <parameter name="in_info" transfer-ownership="none">
-            <doc xml:space="preserve">a source #GstAudioInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-converter.c"
+                 line="1309">a source #GstAudioInfo</doc>
             <type name="AudioInfo" c:type="GstAudioInfo*"/>
           </parameter>
           <parameter name="out_info" transfer-ownership="none">
-            <doc xml:space="preserve">a destination #GstAudioInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-converter.c"
+                 line="1310">a destination #GstAudioInfo</doc>
             <type name="AudioInfo" c:type="GstAudioInfo*"/>
           </parameter>
           <parameter name="config"
                      transfer-ownership="full"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">a #GstStructure with configuration options</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-converter.c"
+                 line="1311">a #GstStructure with configuration options</doc>
             <type name="Gst.Structure" c:type="GstStructure*"/>
           </parameter>
         </parameters>
@@ -2472,37 +4572,53 @@ parameters for details about the options and values.</doc>
       <method name="convert"
               c:identifier="gst_audio_converter_convert"
               version="1.14">
-        <doc xml:space="preserve">Convenience wrapper around gst_audio_converter_samples(), which will
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-converter.c"
+             line="1599">Convenience wrapper around gst_audio_converter_samples(), which will
 perform allocation of the output buffer based on the result from
 gst_audio_converter_get_out_frames().</doc>
+        <source-position filename="gst-libs/gst/audio/audio-converter.h"
+                         line="166"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE is the conversion could be performed.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-converter.c"
+               line="1613">%TRUE is the conversion could be performed.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="convert" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioConverter</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-converter.c"
+                 line="1601">a #GstAudioConverter</doc>
             <type name="AudioConverter" c:type="GstAudioConverter*"/>
           </instance-parameter>
           <parameter name="flags" transfer-ownership="none">
-            <doc xml:space="preserve">extra #GstAudioConverterFlags</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-converter.c"
+                 line="1602">extra #GstAudioConverterFlags</doc>
             <type name="AudioConverterFlags" c:type="GstAudioConverterFlags"/>
           </parameter>
           <parameter name="in" transfer-ownership="none">
-            <doc xml:space="preserve">input data</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-converter.c"
+                 line="1603">input data</doc>
             <array length="2" zero-terminated="0" c:type="gpointer">
               <type name="guint8"/>
             </array>
           </parameter>
           <parameter name="in_size" transfer-ownership="none">
-            <doc xml:space="preserve">size of @in</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-converter.c"
+                 line="1604">size of @in</doc>
             <type name="gsize" c:type="gsize"/>
           </parameter>
           <parameter name="out"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">a pointer where
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-converter.c"
+                 line="1605">a pointer where
  the output data will be written</doc>
             <array length="4" zero-terminated="0" c:type="gpointer*">
               <type name="guint8"/>
@@ -2512,34 +4628,50 @@ gst_audio_converter_get_out_frames().</doc>
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">a pointer where the size of @out will be written</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-converter.c"
+                 line="1607">a pointer where the size of @out will be written</doc>
             <type name="gsize" c:type="gsize*"/>
           </parameter>
         </parameters>
       </method>
       <method name="free" c:identifier="gst_audio_converter_free">
-        <doc xml:space="preserve">Free a previously allocated @convert instance.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-converter.c"
+             line="1447">Free a previously allocated @convert instance.</doc>
+        <source-position filename="gst-libs/gst/audio/audio-converter.h"
+                         line="128"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="convert" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioConverter</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-converter.c"
+                 line="1449">a #GstAudioConverter</doc>
             <type name="AudioConverter" c:type="GstAudioConverter*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_config" c:identifier="gst_audio_converter_get_config">
-        <doc xml:space="preserve">Get the current configuration of @convert.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-converter.c"
+             line="375">Get the current configuration of @convert.</doc>
+        <source-position filename="gst-libs/gst/audio/audio-converter.h"
+                         line="139"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-converter.c"
+               line="383">
   a #GstStructure that remains valid for as long as @convert is valid
   or until gst_audio_converter_update_config() is called.</doc>
           <type name="Gst.Structure" c:type="const GstStructure*"/>
         </return-value>
         <parameters>
           <instance-parameter name="convert" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioConverter</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-converter.c"
+                 line="377">a #GstAudioConverter</doc>
             <type name="AudioConverter" c:type="GstAudioConverter*"/>
           </instance-parameter>
           <parameter name="in_rate"
@@ -2548,7 +4680,9 @@ gst_audio_converter_get_out_frames().</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">result input rate</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-converter.c"
+                 line="378">result input rate</doc>
             <type name="gint" c:type="gint*"/>
           </parameter>
           <parameter name="out_rate"
@@ -2557,61 +4691,91 @@ gst_audio_converter_get_out_frames().</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">result output rate</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-converter.c"
+                 line="379">result output rate</doc>
             <type name="gint" c:type="gint*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_in_frames"
               c:identifier="gst_audio_converter_get_in_frames">
-        <doc xml:space="preserve">Calculate how many input frames are currently needed by @convert to produce
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-converter.c"
+             line="1501">Calculate how many input frames are currently needed by @convert to produce
 @out_frames of output frames.</doc>
+        <source-position filename="gst-libs/gst/audio/audio-converter.h"
+                         line="147"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the number of input frames</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-converter.c"
+               line="1509">the number of input frames</doc>
           <type name="gsize" c:type="gsize"/>
         </return-value>
         <parameters>
           <instance-parameter name="convert" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioConverter</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-converter.c"
+                 line="1503">a #GstAudioConverter</doc>
             <type name="AudioConverter" c:type="GstAudioConverter*"/>
           </instance-parameter>
           <parameter name="out_frames" transfer-ownership="none">
-            <doc xml:space="preserve">number of output frames</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-converter.c"
+                 line="1504">number of output frames</doc>
             <type name="gsize" c:type="gsize"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_max_latency"
               c:identifier="gst_audio_converter_get_max_latency">
-        <doc xml:space="preserve">Get the maximum number of input frames that the converter would
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-converter.c"
+             line="1521">Get the maximum number of input frames that the converter would
 need before producing output.</doc>
+        <source-position filename="gst-libs/gst/audio/audio-converter.h"
+                         line="151"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the latency of @convert as expressed in the number of
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-converter.c"
+               line="1528">the latency of @convert as expressed in the number of
 frames.</doc>
           <type name="gsize" c:type="gsize"/>
         </return-value>
         <parameters>
           <instance-parameter name="convert" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioConverter</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-converter.c"
+                 line="1523">a #GstAudioConverter</doc>
             <type name="AudioConverter" c:type="GstAudioConverter*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_out_frames"
               c:identifier="gst_audio_converter_get_out_frames">
-        <doc xml:space="preserve">Calculate how many output frames can be produced when @in_frames input
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-converter.c"
+             line="1481">Calculate how many output frames can be produced when @in_frames input
 frames are given to @convert.</doc>
+        <source-position filename="gst-libs/gst/audio/audio-converter.h"
+                         line="143"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the number of output frames</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-converter.c"
+               line="1489">the number of output frames</doc>
           <type name="gsize" c:type="gsize"/>
         </return-value>
         <parameters>
           <instance-parameter name="convert" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioConverter</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-converter.c"
+                 line="1483">a #GstAudioConverter</doc>
             <type name="AudioConverter" c:type="GstAudioConverter*"/>
           </instance-parameter>
           <parameter name="in_frames" transfer-ownership="none">
-            <doc xml:space="preserve">number of input frames</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-converter.c"
+                 line="1484">number of input frames</doc>
             <type name="gsize" c:type="gsize"/>
           </parameter>
         </parameters>
@@ -2619,10 +4783,16 @@ frames are given to @convert.</doc>
       <method name="is_passthrough"
               c:identifier="gst_audio_converter_is_passthrough"
               version="1.16">
-        <doc xml:space="preserve">Returns whether the audio converter will operate in passthrough mode.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-converter.c"
+             line="1653">Returns whether the audio converter will operate in passthrough mode.
 The return value would be typically input to gst_base_transform_set_passthrough()</doc>
+        <source-position filename="gst-libs/gst/audio/audio-converter.h"
+                         line="163"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE when no conversion will actually occur.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-converter.c"
+               line="1659">%TRUE when no conversion will actually occur.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
@@ -2632,20 +4802,28 @@ The return value would be typically input to gst_base_transform_set_passthrough(
         </parameters>
       </method>
       <method name="reset" c:identifier="gst_audio_converter_reset">
-        <doc xml:space="preserve">Reset @convert to the state it was when it was first created, clearing
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-converter.c"
+             line="1540">Reset @convert to the state it was when it was first created, clearing
 any history it might currently have.</doc>
+        <source-position filename="gst-libs/gst/audio/audio-converter.h"
+                         line="131"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="convert" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioConverter</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-converter.c"
+                 line="1542">a #GstAudioConverter</doc>
             <type name="AudioConverter" c:type="GstAudioConverter*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="samples" c:identifier="gst_audio_converter_samples">
-        <doc xml:space="preserve">Perform the conversion with @in_frames in @in to @out_frames in @out
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-converter.c"
+             line="1556">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
@@ -2661,61 +4839,87 @@ 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.</doc>
+        <source-position filename="gst-libs/gst/audio/audio-converter.h"
+                         line="154"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE is the conversion could be performed.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-converter.c"
+               line="1582">%TRUE is the conversion could be performed.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="convert" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioConverter</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-converter.c"
+                 line="1558">a #GstAudioConverter</doc>
             <type name="AudioConverter" c:type="GstAudioConverter*"/>
           </instance-parameter>
           <parameter name="flags" transfer-ownership="none">
-            <doc xml:space="preserve">extra #GstAudioConverterFlags</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-converter.c"
+                 line="1559">extra #GstAudioConverterFlags</doc>
             <type name="AudioConverterFlags" c:type="GstAudioConverterFlags"/>
           </parameter>
           <parameter name="in"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">input frames</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-converter.c"
+                 line="1560">input frames</doc>
             <type name="gpointer" c:type="gpointer*"/>
           </parameter>
           <parameter name="in_frames" transfer-ownership="none">
-            <doc xml:space="preserve">number of input frames</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-converter.c"
+                 line="1561">number of input frames</doc>
             <type name="gsize" c:type="gsize"/>
           </parameter>
           <parameter name="out"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">output frames</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-converter.c"
+                 line="1562">output frames</doc>
             <type name="gpointer" c:type="gpointer*"/>
           </parameter>
           <parameter name="out_frames" transfer-ownership="none">
-            <doc xml:space="preserve">number of output frames</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-converter.c"
+                 line="1563">number of output frames</doc>
             <type name="gsize" c:type="gsize"/>
           </parameter>
         </parameters>
       </method>
       <method name="supports_inplace"
               c:identifier="gst_audio_converter_supports_inplace">
-        <doc xml:space="preserve">Returns whether the audio converter can perform the conversion in-place.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-converter.c"
+             line="1638">Returns whether the audio converter can perform the conversion in-place.
 The return value would be typically input to gst_base_transform_set_in_place()</doc>
+        <source-position filename="gst-libs/gst/audio/audio-converter.h"
+                         line="160"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE when the conversion can be done in place.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-converter.c"
+               line="1645">%TRUE when the conversion can be done in place.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="convert" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioConverter</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-converter.c"
+                 line="1640">a #GstAudioConverter</doc>
             <type name="AudioConverter" c:type="GstAudioConverter*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="update_config"
               c:identifier="gst_audio_converter_update_config">
-        <doc xml:space="preserve">Set @in_rate, @out_rate and @config as extra configuration for @convert.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-converter.c"
+             line="322">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.
@@ -2727,30 +4931,42 @@ 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
+Look at the `GST_AUDIO_CONVERTER_OPT_*` fields to check valid configuration
 option and values.</doc>
+        <source-position filename="gst-libs/gst/audio/audio-converter.h"
+                         line="134"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE when the new parameters could be set</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-converter.c"
+               line="344">%TRUE when the new parameters could be set</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="convert" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioConverter</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-converter.c"
+                 line="324">a #GstAudioConverter</doc>
             <type name="AudioConverter" c:type="GstAudioConverter*"/>
           </instance-parameter>
           <parameter name="in_rate" transfer-ownership="none">
-            <doc xml:space="preserve">input rate</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-converter.c"
+                 line="325">input rate</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="out_rate" transfer-ownership="none">
-            <doc xml:space="preserve">output rate</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-converter.c"
+                 line="326">output rate</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="config"
                      transfer-ownership="full"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">a #GstStructure or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-converter.c"
+                 line="327">a #GstStructure or %NULL</doc>
             <type name="Gst.Structure" c:type="GstStructure*"/>
           </parameter>
         </parameters>
@@ -2760,25 +4976,33 @@ option and values.</doc>
               glib:type-name="GstAudioConverterFlags"
               glib:get-type="gst_audio_converter_flags_get_type"
               c:type="GstAudioConverterFlags">
-      <doc xml:space="preserve">Extra flags passed to gst_audio_converter_new() and gst_audio_converter_samples().</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/audio-converter.h"
+           line="102">Extra flags passed to gst_audio_converter_new() and gst_audio_converter_samples().</doc>
       <member name="none"
               value="0"
               c:identifier="GST_AUDIO_CONVERTER_FLAG_NONE"
               glib:nick="none">
-        <doc xml:space="preserve">no flag</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-converter.h"
+             line="104">no flag</doc>
       </member>
       <member name="in_writable"
               value="1"
               c:identifier="GST_AUDIO_CONVERTER_FLAG_IN_WRITABLE"
               glib:nick="in-writable">
-        <doc xml:space="preserve">the input sample arrays are writable and can be
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-converter.h"
+             line="105">the input sample arrays are writable and can be
    used as temporary storage during conversion.</doc>
       </member>
       <member name="variable_rate"
               value="2"
               c:identifier="GST_AUDIO_CONVERTER_FLAG_VARIABLE_RATE"
               glib:nick="variable-rate">
-        <doc xml:space="preserve">allow arbitrary rate updates with
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-converter.h"
+             line="107">allow arbitrary rate updates with
    gst_audio_converter_update_config().</doc>
       </member>
     </bitfield>
@@ -2790,7 +5014,9 @@ option and values.</doc>
            glib:type-name="GstAudioDecoder"
            glib:get-type="gst_audio_decoder_get_type"
            glib:type-struct="AudioDecoderClass">
-      <doc xml:space="preserve">This base class is for audio decoders turning encoded data into
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/gstaudiodecoder.c"
+           line="24">This base class is for audio decoders turning encoded data into
 raw audio samples.
 
 GstAudioDecoder and subclass should cooperate as follows.
@@ -2879,7 +5105,11 @@ Things that subclass need to take care of:
      @gst_audio_decoder_finish_frame.  If it is prepared to perform
      PLC, it should also accept NULL data in @handle_frame and provide for
      data for indicated duration.</doc>
+      <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                       line="315"/>
       <virtual-method name="close">
+        <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                         line="294"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -2890,6 +5120,8 @@ Things that subclass need to take care of:
         </parameters>
       </virtual-method>
       <virtual-method name="decide_allocation">
+        <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                         line="298"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -2903,6 +5135,8 @@ Things that subclass need to take care of:
         </parameters>
       </virtual-method>
       <virtual-method name="flush">
+        <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                         line="282"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
@@ -2916,6 +5150,8 @@ Things that subclass need to take care of:
         </parameters>
       </virtual-method>
       <virtual-method name="getcaps">
+        <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                         line="307"/>
         <return-value transfer-ownership="full">
           <type name="Gst.Caps" c:type="GstCaps*"/>
         </return-value>
@@ -2929,6 +5165,8 @@ Things that subclass need to take care of:
         </parameters>
       </virtual-method>
       <virtual-method name="handle_frame">
+        <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                         line="279"/>
         <return-value transfer-ownership="none">
           <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
@@ -2942,21 +5180,31 @@ Things that subclass need to take care of:
         </parameters>
       </virtual-method>
       <virtual-method name="negotiate" invoker="negotiate">
-        <doc xml:space="preserve">Negotiate with downstream elements to currently configured #GstAudioInfo.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiodecoder.c"
+             line="737">Negotiate with downstream elements to currently configured #GstAudioInfo.
 Unmark GST_PAD_FLAG_NEED_RECONFIGURE in any case. But mark it again if
 negotiate fails.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                         line="296"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the negotiation succeeded, else %FALSE.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudiodecoder.c"
+               line="745">%TRUE if the negotiation succeeded, else %FALSE.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="dec" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioDecoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiodecoder.c"
+                 line="739">a #GstAudioDecoder</doc>
             <type name="AudioDecoder" c:type="GstAudioDecoder*"/>
           </instance-parameter>
         </parameters>
       </virtual-method>
       <virtual-method name="open">
+        <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                         line="292"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -2967,6 +5215,8 @@ negotiate fails.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="parse">
+        <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                         line="275"/>
         <return-value transfer-ownership="none">
           <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
@@ -2986,6 +5236,8 @@ negotiate fails.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="pre_push">
+        <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                         line="284"/>
         <return-value transfer-ownership="none">
           <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
@@ -2999,6 +5251,8 @@ negotiate fails.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="propose_allocation">
+        <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                         line="300"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -3012,6 +5266,8 @@ negotiate fails.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="set_format">
+        <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                         line="272"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -3025,6 +5281,8 @@ negotiate fails.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="sink_event">
+        <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                         line="287"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -3038,6 +5296,8 @@ negotiate fails.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="sink_query">
+        <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                         line="303"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -3051,6 +5311,8 @@ negotiate fails.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="src_event">
+        <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                         line="289"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -3064,6 +5326,8 @@ negotiate fails.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="src_query">
+        <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                         line="305"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -3077,6 +5341,8 @@ negotiate fails.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="start">
+        <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                         line="268"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -3087,6 +5353,8 @@ negotiate fails.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="stop">
+        <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                         line="270"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -3097,6 +5365,8 @@ negotiate fails.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="transform_meta">
+        <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                         line="310"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -3117,26 +5387,38 @@ negotiate fails.</doc>
       </virtual-method>
       <method name="allocate_output_buffer"
               c:identifier="gst_audio_decoder_allocate_output_buffer">
-        <doc xml:space="preserve">Helper function that allocates a buffer to hold an audio frame
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiodecoder.c"
+             line="3705">Helper function that allocates a buffer to hold an audio frame
 for @dec's current output format.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                         line="344"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">allocated buffer</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudiodecoder.c"
+               line="3713">allocated buffer</doc>
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </return-value>
         <parameters>
           <instance-parameter name="dec" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioDecoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiodecoder.c"
+                 line="3707">a #GstAudioDecoder</doc>
             <type name="AudioDecoder" c:type="GstAudioDecoder*"/>
           </instance-parameter>
           <parameter name="size" transfer-ownership="none">
-            <doc xml:space="preserve">size of the buffer</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiodecoder.c"
+                 line="3708">size of the buffer</doc>
             <type name="gsize" c:type="gsize"/>
           </parameter>
         </parameters>
       </method>
       <method name="finish_frame"
               c:identifier="gst_audio_decoder_finish_frame">
-        <doc xml:space="preserve">Collects decoded data and pushes it downstream.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiodecoder.c"
+             line="1273">Collects decoded data and pushes it downstream.
 
 @buf may be NULL in which case the indicated number of frames
 are discarded and considered to have produced no output
@@ -3146,21 +5428,34 @@ data in @buf.
 
 Note that a frame received in #GstAudioDecoderClass.handle_frame() may be
 invalidated by a call to this function.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                         line="340"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstFlowReturn that should be escalated to caller (of caller)</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudiodecoder.c"
+               line="1290">a #GstFlowReturn that should be escalated to caller (of caller)</doc>
           <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
         <parameters>
           <instance-parameter name="dec" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioDecoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiodecoder.c"
+                 line="1275">a #GstAudioDecoder</doc>
             <type name="AudioDecoder" c:type="GstAudioDecoder*"/>
           </instance-parameter>
-          <parameter name="buf" transfer-ownership="none">
-            <doc xml:space="preserve">decoded data</doc>
+          <parameter name="buf"
+                     transfer-ownership="full"
+                     nullable="1"
+                     allow-none="1">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiodecoder.c"
+                 line="1276">decoded data</doc>
             <type name="Gst.Buffer" c:type="GstBuffer*"/>
           </parameter>
           <parameter name="frames" transfer-ownership="none">
-            <doc xml:space="preserve">number of decoded frames represented by decoded data</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiodecoder.c"
+                 line="1277">number of decoded frames represented by decoded data</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
         </parameters>
@@ -3168,7 +5463,9 @@ invalidated by a call to this function.</doc>
       <method name="finish_subframe"
               c:identifier="gst_audio_decoder_finish_subframe"
               version="1.16">
-        <doc xml:space="preserve">Collects decoded data and pushes it downstream. This function may be called
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiodecoder.c"
+             line="1239">Collects decoded data and pushes it downstream. This function may be called
 multiple times for a given input frame.
 
 @buf may be NULL in which case it is assumed that the current input frame is
@@ -3181,33 +5478,50 @@ already.
 
 Note that a frame received in #GstAudioDecoderClass.handle_frame() may be
 invalidated by a call to this function.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                         line="336"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstFlowReturn that should be escalated to caller (of caller)</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudiodecoder.c"
+               line="1258">a #GstFlowReturn that should be escalated to caller (of caller)</doc>
           <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
         <parameters>
           <instance-parameter name="dec" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioDecoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiodecoder.c"
+                 line="1241">a #GstAudioDecoder</doc>
             <type name="AudioDecoder" c:type="GstAudioDecoder*"/>
           </instance-parameter>
-          <parameter name="buf" transfer-ownership="none">
-            <doc xml:space="preserve">decoded data</doc>
+          <parameter name="buf"
+                     transfer-ownership="full"
+                     nullable="1"
+                     allow-none="1">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiodecoder.c"
+                 line="1242">decoded data</doc>
             <type name="Gst.Buffer" c:type="GstBuffer*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_allocator"
               c:identifier="gst_audio_decoder_get_allocator">
-        <doc xml:space="preserve">Lets #GstAudioDecoder sub-classes to know the memory @allocator
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiodecoder.c"
+             line="3756">Lets #GstAudioDecoder sub-classes to know the memory @allocator
 used by the base class and its @params.
 
 Unref the @allocator after use it.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                         line="433"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="dec" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioDecoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiodecoder.c"
+                 line="3758">a #GstAudioDecoder</doc>
             <type name="AudioDecoder" c:type="GstAudioDecoder*"/>
           </instance-parameter>
           <parameter name="allocator"
@@ -3216,7 +5530,9 @@ Unref the @allocator after use it.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">the #GstAllocator
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiodecoder.c"
+                 line="3759">the #GstAllocator
 used</doc>
             <type name="Gst.Allocator" c:type="GstAllocator**"/>
           </parameter>
@@ -3226,7 +5542,9 @@ used</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">the
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiodecoder.c"
+                 line="3761">the
 #GstAllocationParams of @allocator</doc>
             <type name="Gst.AllocationParams" c:type="GstAllocationParams*"/>
           </parameter>
@@ -3234,67 +5552,99 @@ used</doc>
       </method>
       <method name="get_audio_info"
               c:identifier="gst_audio_decoder_get_audio_info">
+        <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                         line="350"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a #GstAudioInfo describing the input audio format</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudiodecoder.c"
+               line="3236">a #GstAudioInfo describing the input audio format</doc>
           <type name="AudioInfo" c:type="GstAudioInfo*"/>
         </return-value>
         <parameters>
           <instance-parameter name="dec" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioDecoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiodecoder.c"
+                 line="3234">a #GstAudioDecoder</doc>
             <type name="AudioDecoder" c:type="GstAudioDecoder*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_delay" c:identifier="gst_audio_decoder_get_delay">
+        <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                         line="367"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">currently configured decoder delay</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudiodecoder.c"
+               line="3308">currently configured decoder delay</doc>
           <type name="gint" c:type="gint"/>
         </return-value>
         <parameters>
           <instance-parameter name="dec" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioDecoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiodecoder.c"
+                 line="3306">a #GstAudioDecoder</doc>
             <type name="AudioDecoder" c:type="GstAudioDecoder*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_drainable"
               c:identifier="gst_audio_decoder_get_drainable">
-        <doc xml:space="preserve">Queries decoder drain handling.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiodecoder.c"
+             line="3594">Queries decoder drain handling.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                         line="423"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">TRUE if drainable handling is enabled.
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudiodecoder.c"
+               line="3600">TRUE if drainable handling is enabled.
 
 MT safe.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="dec" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioDecoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiodecoder.c"
+                 line="3596">a #GstAudioDecoder</doc>
             <type name="AudioDecoder" c:type="GstAudioDecoder*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_estimate_rate"
               c:identifier="gst_audio_decoder_get_estimate_rate">
+        <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                         line="364"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">currently configured byte to time conversion setting</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudiodecoder.c"
+               line="3294">currently configured byte to time conversion setting</doc>
           <type name="gint" c:type="gint"/>
         </return-value>
         <parameters>
           <instance-parameter name="dec" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioDecoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiodecoder.c"
+                 line="3292">a #GstAudioDecoder</doc>
             <type name="AudioDecoder" c:type="GstAudioDecoder*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_latency" c:identifier="gst_audio_decoder_get_latency">
-        <doc xml:space="preserve">Sets the variables pointed to by @min and @max to the currently configured
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiodecoder.c"
+             line="3376">Sets the variables pointed to by @min and @max to the currently configured
 latency.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                         line="382"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="dec" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioDecoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiodecoder.c"
+                 line="3378">a #GstAudioDecoder</doc>
             <type name="AudioDecoder" c:type="GstAudioDecoder*"/>
           </instance-parameter>
           <parameter name="min"
@@ -3303,7 +5653,9 @@ latency.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">a pointer to storage to hold minimum latency</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiodecoder.c"
+                 line="3379">a pointer to storage to hold minimum latency</doc>
             <type name="Gst.ClockTime" c:type="GstClockTime*"/>
           </parameter>
           <parameter name="max"
@@ -3312,65 +5664,95 @@ latency.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">a pointer to storage to hold maximum latency</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiodecoder.c"
+                 line="3380">a pointer to storage to hold maximum latency</doc>
             <type name="Gst.ClockTime" c:type="GstClockTime*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_max_errors"
               c:identifier="gst_audio_decoder_get_max_errors">
+        <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                         line="374"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">currently configured decoder tolerated error count.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudiodecoder.c"
+               line="3340">currently configured decoder tolerated error count.</doc>
           <type name="gint" c:type="gint"/>
         </return-value>
         <parameters>
           <instance-parameter name="dec" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioDecoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiodecoder.c"
+                 line="3338">a #GstAudioDecoder</doc>
             <type name="AudioDecoder" c:type="GstAudioDecoder*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_min_latency"
               c:identifier="gst_audio_decoder_get_min_latency">
-        <doc xml:space="preserve">Queries decoder's latency aggregation.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiodecoder.c"
+             line="3505">Queries decoder's latency aggregation.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                         line="409"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">aggregation latency.
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudiodecoder.c"
+               line="3511">aggregation latency.
 
 MT safe.</doc>
           <type name="Gst.ClockTime" c:type="GstClockTime"/>
         </return-value>
         <parameters>
           <instance-parameter name="dec" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioDecoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiodecoder.c"
+                 line="3507">a #GstAudioDecoder</doc>
             <type name="AudioDecoder" c:type="GstAudioDecoder*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_needs_format"
               c:identifier="gst_audio_decoder_get_needs_format">
-        <doc xml:space="preserve">Queries decoder required format handling.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiodecoder.c"
+             line="3642">Queries decoder required format handling.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                         line="430"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">TRUE if required format handling is enabled.
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudiodecoder.c"
+               line="3648">TRUE if required format handling is enabled.
 
 MT safe.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="dec" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioDecoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiodecoder.c"
+                 line="3644">a #GstAudioDecoder</doc>
             <type name="AudioDecoder" c:type="GstAudioDecoder*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_parse_state"
               c:identifier="gst_audio_decoder_get_parse_state">
-        <doc xml:space="preserve">Return current parsing (sync and eos) state.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiodecoder.c"
+             line="3399">Return current parsing (sync and eos) state.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                         line="387"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="dec" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioDecoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiodecoder.c"
+                 line="3401">a #GstAudioDecoder</doc>
             <type name="AudioDecoder" c:type="GstAudioDecoder*"/>
           </instance-parameter>
           <parameter name="sync"
@@ -3379,7 +5761,9 @@ MT safe.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">a pointer to a variable to hold the current sync state</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiodecoder.c"
+                 line="3402">a pointer to a variable to hold the current sync state</doc>
             <type name="gboolean" c:type="gboolean*"/>
           </parameter>
           <parameter name="eos"
@@ -3388,94 +5772,136 @@ MT safe.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">a pointer to a variable to hold the current eos state</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiodecoder.c"
+                 line="3403">a pointer to a variable to hold the current eos state</doc>
             <type name="gboolean" c:type="gboolean*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_plc" c:identifier="gst_audio_decoder_get_plc">
-        <doc xml:space="preserve">Queries decoder packet loss concealment handling.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiodecoder.c"
+             line="3462">Queries decoder packet loss concealment handling.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                         line="402"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">TRUE if packet loss concealment is enabled.
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudiodecoder.c"
+               line="3468">TRUE if packet loss concealment is enabled.
 
 MT safe.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="dec" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioDecoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiodecoder.c"
+                 line="3464">a #GstAudioDecoder</doc>
             <type name="AudioDecoder" c:type="GstAudioDecoder*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_plc_aware"
               c:identifier="gst_audio_decoder_get_plc_aware">
+        <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                         line="357"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">currently configured plc handling</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudiodecoder.c"
+               line="3265">currently configured plc handling</doc>
           <type name="gint" c:type="gint"/>
         </return-value>
         <parameters>
           <instance-parameter name="dec" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioDecoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiodecoder.c"
+                 line="3263">a #GstAudioDecoder</doc>
             <type name="AudioDecoder" c:type="GstAudioDecoder*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_tolerance"
               c:identifier="gst_audio_decoder_get_tolerance">
-        <doc xml:space="preserve">Queries current audio jitter tolerance threshold.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiodecoder.c"
+             line="3548">Queries current audio jitter tolerance threshold.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                         line="416"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">decoder audio jitter tolerance threshold.
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudiodecoder.c"
+               line="3554">decoder audio jitter tolerance threshold.
 
 MT safe.</doc>
           <type name="Gst.ClockTime" c:type="GstClockTime"/>
         </return-value>
         <parameters>
           <instance-parameter name="dec" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioDecoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiodecoder.c"
+                 line="3550">a #GstAudioDecoder</doc>
             <type name="AudioDecoder" c:type="GstAudioDecoder*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="merge_tags" c:identifier="gst_audio_decoder_merge_tags">
-        <doc xml:space="preserve">Sets the audio decoder tags and how they should be merged with any
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiodecoder.c"
+             line="3666">Sets the audio decoder tags and how they should be merged with any
 upstream stream tags. This will override any tags previously-set
 with gst_audio_decoder_merge_tags().
 
 Note that this is provided for convenience, and the subclass is
 not required to use this and can still do tag handling on its own.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                         line="438"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="dec" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioDecoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiodecoder.c"
+                 line="3668">a #GstAudioDecoder</doc>
             <type name="AudioDecoder" c:type="GstAudioDecoder*"/>
           </instance-parameter>
           <parameter name="tags"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">a #GstTagList to merge, or NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiodecoder.c"
+                 line="3669">a #GstTagList to merge, or NULL</doc>
             <type name="Gst.TagList" c:type="const GstTagList*"/>
           </parameter>
           <parameter name="mode" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstTagMergeMode to use, usually #GST_TAG_MERGE_REPLACE</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiodecoder.c"
+                 line="3670">the #GstTagMergeMode to use, usually #GST_TAG_MERGE_REPLACE</doc>
             <type name="Gst.TagMergeMode" c:type="GstTagMergeMode"/>
           </parameter>
         </parameters>
       </method>
       <method name="negotiate" c:identifier="gst_audio_decoder_negotiate">
-        <doc xml:space="preserve">Negotiate with downstream elements to currently configured #GstAudioInfo.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiodecoder.c"
+             line="737">Negotiate with downstream elements to currently configured #GstAudioInfo.
 Unmark GST_PAD_FLAG_NEED_RECONFIGURE in any case. But mark it again if
 negotiate fails.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                         line="333"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the negotiation succeeded, else %FALSE.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudiodecoder.c"
+               line="745">%TRUE if the negotiation succeeded, else %FALSE.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="dec" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioDecoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiodecoder.c"
+                 line="739">a #GstAudioDecoder</doc>
             <type name="AudioDecoder" c:type="GstAudioDecoder*"/>
           </instance-parameter>
         </parameters>
@@ -3483,30 +5909,42 @@ negotiate fails.</doc>
       <method name="proxy_getcaps"
               c:identifier="gst_audio_decoder_proxy_getcaps"
               version="1.6">
-        <doc xml:space="preserve">Returns caps that express @caps (or sink template caps if @caps == NULL)
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiodecoder.c"
+             line="2730">Returns caps that express @caps (or sink template caps if @caps == NULL)
 restricted to rate/channels/... combinations supported by downstream
 elements.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                         line="328"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a #GstCaps owned by caller</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudiodecoder.c"
+               line="2740">a #GstCaps owned by caller</doc>
           <type name="Gst.Caps" c:type="GstCaps*"/>
         </return-value>
         <parameters>
           <instance-parameter name="decoder" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioDecoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiodecoder.c"
+                 line="2732">a #GstAudioDecoder</doc>
             <type name="AudioDecoder" c:type="GstAudioDecoder*"/>
           </instance-parameter>
           <parameter name="caps"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">initial caps</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiodecoder.c"
+                 line="2733">initial caps</doc>
             <type name="Gst.Caps" c:type="GstCaps*"/>
           </parameter>
           <parameter name="filter"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">filter caps</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiodecoder.c"
+                 line="2734">filter caps</doc>
             <type name="Gst.Caps" c:type="GstCaps*"/>
           </parameter>
         </parameters>
@@ -3514,128 +5952,180 @@ elements.</doc>
       <method name="set_allocation_caps"
               c:identifier="gst_audio_decoder_set_allocation_caps"
               version="1.10">
-        <doc xml:space="preserve">Sets a caps in allocation query which are different from the set
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiodecoder.c"
+             line="3419">Sets a caps in allocation query which are different from the set
 pad's caps. Use this function before calling
 gst_audio_decoder_negotiate(). Setting to %NULL the allocation
 query will use the caps from the pad.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                         line="392"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="dec" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioDecoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiodecoder.c"
+                 line="3421">a #GstAudioDecoder</doc>
             <type name="AudioDecoder" c:type="GstAudioDecoder*"/>
           </instance-parameter>
           <parameter name="allocation_caps"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">a #GstCaps or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiodecoder.c"
+                 line="3422">a #GstCaps or %NULL</doc>
             <type name="Gst.Caps" c:type="GstCaps*"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_drainable"
               c:identifier="gst_audio_decoder_set_drainable">
-        <doc xml:space="preserve">Configures decoder drain handling.  If drainable, subclass might
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiodecoder.c"
+             line="3572">Configures decoder drain handling.  If drainable, subclass might
 be handed a NULL buffer to have it return any leftover decoded data.
 Otherwise, it is not considered so capable and will only ever be passed
 real data.
 
 MT safe.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                         line="419"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="dec" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioDecoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiodecoder.c"
+                 line="3574">a #GstAudioDecoder</doc>
             <type name="AudioDecoder" c:type="GstAudioDecoder*"/>
           </instance-parameter>
           <parameter name="enabled" transfer-ownership="none">
-            <doc xml:space="preserve">new state</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiodecoder.c"
+                 line="3575">new state</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_estimate_rate"
               c:identifier="gst_audio_decoder_set_estimate_rate">
-        <doc xml:space="preserve">Allows baseclass to perform byte to time estimated conversion.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiodecoder.c"
+             line="3275">Allows baseclass to perform byte to time estimated conversion.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                         line="360"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="dec" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioDecoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiodecoder.c"
+                 line="3277">a #GstAudioDecoder</doc>
             <type name="AudioDecoder" c:type="GstAudioDecoder*"/>
           </instance-parameter>
           <parameter name="enabled" transfer-ownership="none">
-            <doc xml:space="preserve">whether to enable byte to time conversion</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiodecoder.c"
+                 line="3278">whether to enable byte to time conversion</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_latency" c:identifier="gst_audio_decoder_set_latency">
-        <doc xml:space="preserve">Sets decoder latency.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiodecoder.c"
+             line="3350">Sets decoder latency.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                         line="377"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="dec" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioDecoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiodecoder.c"
+                 line="3352">a #GstAudioDecoder</doc>
             <type name="AudioDecoder" c:type="GstAudioDecoder*"/>
           </instance-parameter>
           <parameter name="min" transfer-ownership="none">
-            <doc xml:space="preserve">minimum latency</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiodecoder.c"
+                 line="3353">minimum latency</doc>
             <type name="Gst.ClockTime" c:type="GstClockTime"/>
           </parameter>
           <parameter name="max" transfer-ownership="none">
-            <doc xml:space="preserve">maximum latency</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiodecoder.c"
+                 line="3354">maximum latency</doc>
             <type name="Gst.ClockTime" c:type="GstClockTime"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_max_errors"
               c:identifier="gst_audio_decoder_set_max_errors">
-        <doc xml:space="preserve">Sets numbers of tolerated decoder errors, where a tolerated one is then only
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiodecoder.c"
+             line="3318">Sets numbers of tolerated decoder errors, where a tolerated one is then only
 warned about, but more than tolerated will lead to fatal error. You can set
 -1 for never returning fatal errors. Default is set to
 GST_AUDIO_DECODER_MAX_ERRORS.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                         line="370"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="dec" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioDecoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiodecoder.c"
+                 line="3320">a #GstAudioDecoder</doc>
             <type name="AudioDecoder" c:type="GstAudioDecoder*"/>
           </instance-parameter>
           <parameter name="num" transfer-ownership="none">
-            <doc xml:space="preserve">max tolerated errors</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiodecoder.c"
+                 line="3321">max tolerated errors</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_min_latency"
               c:identifier="gst_audio_decoder_set_min_latency">
-        <doc xml:space="preserve">Sets decoder minimum aggregation latency.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiodecoder.c"
+             line="3486">Sets decoder minimum aggregation latency.
 
 MT safe.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                         line="405"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="dec" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioDecoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiodecoder.c"
+                 line="3488">a #GstAudioDecoder</doc>
             <type name="AudioDecoder" c:type="GstAudioDecoder*"/>
           </instance-parameter>
           <parameter name="num" transfer-ownership="none">
-            <doc xml:space="preserve">new minimum latency</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiodecoder.c"
+                 line="3489">new minimum latency</doc>
             <type name="Gst.ClockTime" c:type="GstClockTime"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_needs_format"
               c:identifier="gst_audio_decoder_set_needs_format">
-        <doc xml:space="preserve">Configures decoder format needs.  If enabled, subclass needs to be
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiodecoder.c"
+             line="3618">Configures decoder format needs.  If enabled, subclass needs to be
 negotiated with format caps before it can process any data.  It will then
 never be handed any data before it has been configured.
 Otherwise, it might be handed data without having been configured and
@@ -3643,16 +6133,22 @@ is then expected being able to do so either by default
 or based on the input data.
 
 MT safe.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                         line="426"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="dec" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioDecoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiodecoder.c"
+                 line="3620">a #GstAudioDecoder</doc>
             <type name="AudioDecoder" c:type="GstAudioDecoder*"/>
           </instance-parameter>
           <parameter name="enabled" transfer-ownership="none">
-            <doc xml:space="preserve">new state</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiodecoder.c"
+                 line="3621">new state</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
@@ -3660,94 +6156,138 @@ MT safe.</doc>
       <method name="set_output_caps"
               c:identifier="gst_audio_decoder_set_output_caps"
               version="1.16">
-        <doc xml:space="preserve">Configure output caps on the srcpad of @dec. Similar to
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiodecoder.c"
+             line="802">Configure output caps on the srcpad of @dec. Similar to
 gst_audio_decoder_set_output_format(), but allows subclasses to specify
 output caps that can't be expressed via #GstAudioInfo e.g. caps that have
 caps features.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                         line="325"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE on success.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudiodecoder.c"
+               line="812">%TRUE on success.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="dec" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioDecoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiodecoder.c"
+                 line="804">a #GstAudioDecoder</doc>
             <type name="AudioDecoder" c:type="GstAudioDecoder*"/>
           </instance-parameter>
           <parameter name="caps" transfer-ownership="none">
-            <doc xml:space="preserve">(fixed) #GstCaps</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiodecoder.c"
+                 line="805">(fixed) #GstCaps</doc>
             <type name="Gst.Caps" c:type="GstCaps*"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_output_format"
               c:identifier="gst_audio_decoder_set_output_format">
-        <doc xml:space="preserve">Configure output info on the srcpad of @dec.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE on success.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiodecoder.c"
+             line="769">Configure output info on the srcpad of @dec.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                         line="321"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudiodecoder.c"
+               line="776">%TRUE on success.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="dec" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioDecoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiodecoder.c"
+                 line="771">a #GstAudioDecoder</doc>
             <type name="AudioDecoder" c:type="GstAudioDecoder*"/>
           </instance-parameter>
           <parameter name="info" transfer-ownership="none">
-            <doc xml:space="preserve">#GstAudioInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiodecoder.c"
+                 line="772">#GstAudioInfo</doc>
             <type name="AudioInfo" c:type="const GstAudioInfo*"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_plc" c:identifier="gst_audio_decoder_set_plc">
-        <doc xml:space="preserve">Enable or disable decoder packet loss concealment, provided subclass
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiodecoder.c"
+             line="3440">Enable or disable decoder packet loss concealment, provided subclass
 and codec are capable and allow handling plc.
 
 MT safe.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                         line="398"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="dec" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioDecoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiodecoder.c"
+                 line="3442">a #GstAudioDecoder</doc>
             <type name="AudioDecoder" c:type="GstAudioDecoder*"/>
           </instance-parameter>
           <parameter name="enabled" transfer-ownership="none">
-            <doc xml:space="preserve">new state</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiodecoder.c"
+                 line="3443">new state</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_plc_aware"
               c:identifier="gst_audio_decoder_set_plc_aware">
-        <doc xml:space="preserve">Indicates whether or not subclass handles packet loss concealment (plc).</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiodecoder.c"
+             line="3246">Indicates whether or not subclass handles packet loss concealment (plc).</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                         line="353"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="dec" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioDecoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiodecoder.c"
+                 line="3248">a #GstAudioDecoder</doc>
             <type name="AudioDecoder" c:type="GstAudioDecoder*"/>
           </instance-parameter>
           <parameter name="plc" transfer-ownership="none">
-            <doc xml:space="preserve">new plc state</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiodecoder.c"
+                 line="3249">new plc state</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_tolerance"
               c:identifier="gst_audio_decoder_set_tolerance">
-        <doc xml:space="preserve">Configures decoder audio jitter tolerance threshold.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiodecoder.c"
+             line="3529">Configures decoder audio jitter tolerance threshold.
 
 MT safe.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                         line="412"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="dec" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioDecoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiodecoder.c"
+                 line="3531">a #GstAudioDecoder</doc>
             <type name="AudioDecoder" c:type="GstAudioDecoder*"/>
           </instance-parameter>
           <parameter name="tolerance" transfer-ownership="none">
-            <doc xml:space="preserve">new tolerance</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiodecoder.c"
+                 line="3532">new tolerance</doc>
             <type name="Gst.ClockTime" c:type="GstClockTime"/>
           </parameter>
         </parameters>
@@ -3755,22 +6295,30 @@ MT safe.</doc>
       <method name="set_use_default_pad_acceptcaps"
               c:identifier="gst_audio_decoder_set_use_default_pad_acceptcaps"
               version="1.6">
-        <doc xml:space="preserve">Lets #GstAudioDecoder sub-classes decide if they want the sink pad
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiodecoder.c"
+             line="3783">Lets #GstAudioDecoder sub-classes decide if they want the sink pad
 to use the default pad query handler to reply to accept-caps queries.
 
 By setting this to true it is possible to further customize the default
 handler with %GST_PAD_SET_ACCEPT_INTERSECT and
 %GST_PAD_SET_ACCEPT_TEMPLATE</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                         line="442"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="decoder" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioDecoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiodecoder.c"
+                 line="3785">a #GstAudioDecoder</doc>
             <type name="AudioDecoder" c:type="GstAudioDecoder*"/>
           </instance-parameter>
           <parameter name="use" transfer-ownership="none">
-            <doc xml:space="preserve">if the default pad accept-caps query handling should be used</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiodecoder.c"
+                 line="3786">if the default pad accept-caps query handling should be used</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
@@ -3806,7 +6354,7 @@ handler with %GST_PAD_SET_ACCEPT_INTERSECT and
         <type name="AudioDecoderPrivate" c:type="GstAudioDecoderPrivate*"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="20">
+        <array zero-terminated="0" fixed-size="20">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -3814,15 +6362,23 @@ handler with %GST_PAD_SET_ACCEPT_INTERSECT and
     <record name="AudioDecoderClass"
             c:type="GstAudioDecoderClass"
             glib:is-gtype-struct-for="AudioDecoder">
-      <doc xml:space="preserve">Subclasses can override any of the available virtual methods or not, as
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/gstaudiodecoder.h"
+           line="181">Subclasses can override any of the available virtual methods or not, as
 needed. At minimum @handle_frame (and likely @set_format) needs to be
 overridden.</doc>
+      <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                       line="315"/>
       <field name="element_class">
-        <doc xml:space="preserve">The parent class structure</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiodecoder.h"
+             line="183">The parent class structure</doc>
         <type name="Gst.ElementClass" c:type="GstElementClass"/>
       </field>
       <field name="start">
         <callback name="start">
+          <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                           line="268"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -3835,6 +6391,8 @@ overridden.</doc>
       </field>
       <field name="stop">
         <callback name="stop">
+          <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                           line="270"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -3847,6 +6405,8 @@ overridden.</doc>
       </field>
       <field name="set_format">
         <callback name="set_format">
+          <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                           line="272"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -3862,6 +6422,8 @@ overridden.</doc>
       </field>
       <field name="parse">
         <callback name="parse">
+          <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                           line="275"/>
           <return-value transfer-ownership="none">
             <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
           </return-value>
@@ -3883,6 +6445,8 @@ overridden.</doc>
       </field>
       <field name="handle_frame">
         <callback name="handle_frame">
+          <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                           line="279"/>
           <return-value transfer-ownership="none">
             <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
           </return-value>
@@ -3898,6 +6462,8 @@ overridden.</doc>
       </field>
       <field name="flush">
         <callback name="flush">
+          <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                           line="282"/>
           <return-value transfer-ownership="none">
             <type name="none" c:type="void"/>
           </return-value>
@@ -3913,6 +6479,8 @@ overridden.</doc>
       </field>
       <field name="pre_push">
         <callback name="pre_push">
+          <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                           line="284"/>
           <return-value transfer-ownership="none">
             <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
           </return-value>
@@ -3928,6 +6496,8 @@ overridden.</doc>
       </field>
       <field name="sink_event">
         <callback name="sink_event">
+          <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                           line="287"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -3943,6 +6513,8 @@ overridden.</doc>
       </field>
       <field name="src_event">
         <callback name="src_event">
+          <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                           line="289"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -3958,6 +6530,8 @@ overridden.</doc>
       </field>
       <field name="open">
         <callback name="open">
+          <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                           line="292"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -3970,6 +6544,8 @@ overridden.</doc>
       </field>
       <field name="close">
         <callback name="close">
+          <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                           line="294"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -3982,13 +6558,19 @@ overridden.</doc>
       </field>
       <field name="negotiate">
         <callback name="negotiate">
+          <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                           line="296"/>
           <return-value transfer-ownership="none">
-            <doc xml:space="preserve">%TRUE if the negotiation succeeded, else %FALSE.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiodecoder.c"
+                 line="745">%TRUE if the negotiation succeeded, else %FALSE.</doc>
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
           <parameters>
             <parameter name="dec" transfer-ownership="none">
-              <doc xml:space="preserve">a #GstAudioDecoder</doc>
+              <doc xml:space="preserve"
+                   filename="gst-libs/gst/audio/gstaudiodecoder.c"
+                   line="739">a #GstAudioDecoder</doc>
               <type name="AudioDecoder" c:type="GstAudioDecoder*"/>
             </parameter>
           </parameters>
@@ -3996,6 +6578,8 @@ overridden.</doc>
       </field>
       <field name="decide_allocation">
         <callback name="decide_allocation">
+          <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                           line="298"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -4011,6 +6595,8 @@ overridden.</doc>
       </field>
       <field name="propose_allocation">
         <callback name="propose_allocation">
+          <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                           line="300"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -4026,6 +6612,8 @@ overridden.</doc>
       </field>
       <field name="sink_query">
         <callback name="sink_query">
+          <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                           line="303"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -4041,6 +6629,8 @@ overridden.</doc>
       </field>
       <field name="src_query">
         <callback name="src_query">
+          <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                           line="305"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -4056,6 +6646,8 @@ overridden.</doc>
       </field>
       <field name="getcaps">
         <callback name="getcaps">
+          <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                           line="307"/>
           <return-value transfer-ownership="full">
             <type name="Gst.Caps" c:type="GstCaps*"/>
           </return-value>
@@ -4071,6 +6663,8 @@ overridden.</doc>
       </field>
       <field name="transform_meta">
         <callback name="transform_meta">
+          <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                           line="310"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -4091,7 +6685,7 @@ overridden.</doc>
         </callback>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="16">
+        <array zero-terminated="0" fixed-size="16">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -4099,39 +6693,53 @@ overridden.</doc>
     <record name="AudioDecoderPrivate"
             c:type="GstAudioDecoderPrivate"
             disguised="1">
+      <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                       line="102"/>
     </record>
     <enumeration name="AudioDitherMethod"
                  glib:type-name="GstAudioDitherMethod"
                  glib:get-type="gst_audio_dither_method_get_type"
                  c:type="GstAudioDitherMethod">
-      <doc xml:space="preserve">Set of available dithering methods.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/audio-quantize.h"
+           line="32">Set of available dithering methods.</doc>
       <member name="none"
               value="0"
               c:identifier="GST_AUDIO_DITHER_NONE"
               glib:nick="none">
-        <doc xml:space="preserve">No dithering</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-quantize.h"
+             line="34">No dithering</doc>
       </member>
       <member name="rpdf"
               value="1"
               c:identifier="GST_AUDIO_DITHER_RPDF"
               glib:nick="rpdf">
-        <doc xml:space="preserve">Rectangular dithering</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-quantize.h"
+             line="35">Rectangular dithering</doc>
       </member>
       <member name="tpdf"
               value="2"
               c:identifier="GST_AUDIO_DITHER_TPDF"
               glib:nick="tpdf">
-        <doc xml:space="preserve">Triangular dithering (default)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-quantize.h"
+             line="36">Triangular dithering (default)</doc>
       </member>
       <member name="tpdf_hf"
               value="3"
               c:identifier="GST_AUDIO_DITHER_TPDF_HF"
               glib:nick="tpdf-hf">
-        <doc xml:space="preserve">High frequency triangular dithering</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-quantize.h"
+             line="37">High frequency triangular dithering</doc>
       </member>
     </enumeration>
     <record name="AudioDownmixMeta" c:type="GstAudioDownmixMeta">
-      <doc xml:space="preserve">Extra buffer metadata describing audio downmixing matrix. This metadata is
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/gstaudiometa.h"
+           line="32">Extra buffer metadata describing audio downmixing matrix. This metadata is
 attached to audio buffers and contains a matrix to downmix the buffer number
 of channels to @channels.
 
@@ -4139,31 +6747,46 @@ of channels to @channels.
 coefficients, i.e. the i-th output channels is constructed by multiplicating
 the input channels with the coefficients in @matrix[i] and taking the sum
 of the results.</doc>
+      <source-position filename="gst-libs/gst/audio/gstaudiometa.h" line="57"/>
       <field name="meta" writable="1">
-        <doc xml:space="preserve">parent #GstMeta</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiometa.h"
+             line="34">parent #GstMeta</doc>
         <type name="Gst.Meta" c:type="GstMeta"/>
       </field>
       <field name="from_position" writable="1">
-        <doc xml:space="preserve">the channel positions of the source</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiometa.h"
+             line="35">the channel positions of the source</doc>
         <type name="AudioChannelPosition" c:type="GstAudioChannelPosition*"/>
       </field>
       <field name="to_position" writable="1">
-        <doc xml:space="preserve">the channel positions of the destination</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiometa.h"
+             line="36">the channel positions of the destination</doc>
         <type name="AudioChannelPosition" c:type="GstAudioChannelPosition*"/>
       </field>
       <field name="from_channels" writable="1">
-        <doc xml:space="preserve">the number of channels of the source</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiometa.h"
+             line="37">the number of channels of the source</doc>
         <type name="gint" c:type="gint"/>
       </field>
       <field name="to_channels" writable="1">
-        <doc xml:space="preserve">the number of channels of the destination</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiometa.h"
+             line="38">the number of channels of the destination</doc>
         <type name="gint" c:type="gint"/>
       </field>
       <field name="matrix" writable="1">
-        <doc xml:space="preserve">the matrix coefficients.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiometa.h"
+             line="39">the matrix coefficients.</doc>
         <type name="gfloat" c:type="gfloat**"/>
       </field>
       <function name="get_info" c:identifier="gst_audio_downmix_meta_get_info">
+        <source-position filename="gst-libs/gst/audio/gstaudiometa.h"
+                         line="63"/>
         <return-value transfer-ownership="none">
           <type name="Gst.MetaInfo" c:type="const GstMetaInfo*"/>
         </return-value>
@@ -4177,7 +6800,9 @@ of the results.</doc>
            glib:type-name="GstAudioEncoder"
            glib:get-type="gst_audio_encoder_get_type"
            glib:type-struct="AudioEncoderClass">
-      <doc xml:space="preserve">This base class is for audio encoders turning raw audio samples into
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/gstaudioencoder.c"
+           line="22">This base class is for audio encoders turning raw audio samples into
 encoded audio data.
 
 GstAudioEncoder and subclass should cooperate as follows.
@@ -4269,8 +6894,12 @@ Things that subclass need to take care of:
      and discontinuity processing.
   * Accept data in @handle_frame and provide encoded results to
      gst_audio_encoder_finish_frame().</doc>
+      <source-position filename="gst-libs/gst/audio/gstaudioencoder.h"
+                       line="248"/>
       <implements name="Gst.Preset"/>
       <virtual-method name="close">
+        <source-position filename="gst-libs/gst/audio/gstaudioencoder.h"
+                         line="227"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -4281,6 +6910,8 @@ Things that subclass need to take care of:
         </parameters>
       </virtual-method>
       <virtual-method name="decide_allocation">
+        <source-position filename="gst-libs/gst/audio/gstaudioencoder.h"
+                         line="231"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -4294,6 +6925,8 @@ Things that subclass need to take care of:
         </parameters>
       </virtual-method>
       <virtual-method name="flush">
+        <source-position filename="gst-libs/gst/audio/gstaudioencoder.h"
+                         line="212"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
@@ -4304,6 +6937,8 @@ Things that subclass need to take care of:
         </parameters>
       </virtual-method>
       <virtual-method name="getcaps">
+        <source-position filename="gst-libs/gst/audio/gstaudioencoder.h"
+                         line="223"/>
         <return-value transfer-ownership="full">
           <type name="Gst.Caps" c:type="GstCaps*"/>
         </return-value>
@@ -4317,6 +6952,8 @@ Things that subclass need to take care of:
         </parameters>
       </virtual-method>
       <virtual-method name="handle_frame">
+        <source-position filename="gst-libs/gst/audio/gstaudioencoder.h"
+                         line="209"/>
         <return-value transfer-ownership="none">
           <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
@@ -4330,21 +6967,31 @@ Things that subclass need to take care of:
         </parameters>
       </virtual-method>
       <virtual-method name="negotiate" invoker="negotiate">
-        <doc xml:space="preserve">Negotiate with downstream elements to currently configured #GstCaps.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioencoder.c"
+             line="2804">Negotiate with downstream elements to currently configured #GstCaps.
 Unmark GST_PAD_FLAG_NEED_RECONFIGURE in any case. But mark it again if
 negotiate fails.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudioencoder.h"
+                         line="229"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the negotiation succeeded, else %FALSE.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudioencoder.c"
+               line="2812">%TRUE if the negotiation succeeded, else %FALSE.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="enc" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioEncoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioencoder.c"
+                 line="2806">a #GstAudioEncoder</doc>
             <type name="AudioEncoder" c:type="GstAudioEncoder*"/>
           </instance-parameter>
         </parameters>
       </virtual-method>
       <virtual-method name="open">
+        <source-position filename="gst-libs/gst/audio/gstaudioencoder.h"
+                         line="225"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -4355,6 +7002,8 @@ negotiate fails.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="pre_push">
+        <source-position filename="gst-libs/gst/audio/gstaudioencoder.h"
+                         line="214"/>
         <return-value transfer-ownership="none">
           <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
@@ -4368,6 +7017,8 @@ negotiate fails.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="propose_allocation">
+        <source-position filename="gst-libs/gst/audio/gstaudioencoder.h"
+                         line="233"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -4381,6 +7032,8 @@ negotiate fails.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="set_format">
+        <source-position filename="gst-libs/gst/audio/gstaudioencoder.h"
+                         line="206"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -4394,6 +7047,8 @@ negotiate fails.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="sink_event">
+        <source-position filename="gst-libs/gst/audio/gstaudioencoder.h"
+                         line="217"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -4407,6 +7062,8 @@ negotiate fails.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="sink_query">
+        <source-position filename="gst-libs/gst/audio/gstaudioencoder.h"
+                         line="239"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -4420,6 +7077,8 @@ negotiate fails.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="src_event">
+        <source-position filename="gst-libs/gst/audio/gstaudioencoder.h"
+                         line="220"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -4433,6 +7092,8 @@ negotiate fails.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="src_query">
+        <source-position filename="gst-libs/gst/audio/gstaudioencoder.h"
+                         line="242"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -4446,6 +7107,8 @@ negotiate fails.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="start">
+        <source-position filename="gst-libs/gst/audio/gstaudioencoder.h"
+                         line="202"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -4456,6 +7119,8 @@ negotiate fails.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="stop">
+        <source-position filename="gst-libs/gst/audio/gstaudioencoder.h"
+                         line="204"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -4466,6 +7131,8 @@ negotiate fails.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="transform_meta">
+        <source-position filename="gst-libs/gst/audio/gstaudioencoder.h"
+                         line="236"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -4486,26 +7153,38 @@ negotiate fails.</doc>
       </virtual-method>
       <method name="allocate_output_buffer"
               c:identifier="gst_audio_encoder_allocate_output_buffer">
-        <doc xml:space="preserve">Helper function that allocates a buffer to hold an encoded audio frame
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioencoder.c"
+             line="2882">Helper function that allocates a buffer to hold an encoded audio frame
 for @enc's current output format.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudioencoder.h"
+                         line="271"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">allocated buffer</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudioencoder.c"
+               line="2890">allocated buffer</doc>
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </return-value>
         <parameters>
           <instance-parameter name="enc" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioEncoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioencoder.c"
+                 line="2884">a #GstAudioEncoder</doc>
             <type name="AudioEncoder" c:type="GstAudioEncoder*"/>
           </instance-parameter>
           <parameter name="size" transfer-ownership="none">
-            <doc xml:space="preserve">size of the buffer</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioencoder.c"
+                 line="2885">size of the buffer</doc>
             <type name="gsize" c:type="gsize"/>
           </parameter>
         </parameters>
       </method>
       <method name="finish_frame"
               c:identifier="gst_audio_encoder_finish_frame">
-        <doc xml:space="preserve">Collects encoded data and pushes encoded data downstream.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioencoder.c"
+             line="717">Collects encoded data and pushes encoded data downstream.
 Source pad caps must be set when this is called.
 
 If @samples &lt; 0, then best estimate is all samples provided to encoder
@@ -4515,37 +7194,56 @@ and a discontinuity is marked.
 
 Note that samples received in #GstAudioEncoderClass.handle_frame()
 may be invalidated by a call to this function.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudioencoder.h"
+                         line="254"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstFlowReturn that should be escalated to caller (of caller)</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudioencoder.c"
+               line="734">a #GstFlowReturn that should be escalated to caller (of caller)</doc>
           <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
         <parameters>
           <instance-parameter name="enc" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioEncoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioencoder.c"
+                 line="719">a #GstAudioEncoder</doc>
             <type name="AudioEncoder" c:type="GstAudioEncoder*"/>
           </instance-parameter>
-          <parameter name="buffer" transfer-ownership="none">
-            <doc xml:space="preserve">encoded data</doc>
+          <parameter name="buffer"
+                     transfer-ownership="full"
+                     nullable="1"
+                     allow-none="1">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioencoder.c"
+                 line="720">encoded data</doc>
             <type name="Gst.Buffer" c:type="GstBuffer*"/>
           </parameter>
           <parameter name="samples" transfer-ownership="none">
-            <doc xml:space="preserve">number of samples (per channel) represented by encoded data</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioencoder.c"
+                 line="721">number of samples (per channel) represented by encoded data</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_allocator"
               c:identifier="gst_audio_encoder_get_allocator">
-        <doc xml:space="preserve">Lets #GstAudioEncoder sub-classes to know the memory @allocator
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioencoder.c"
+             line="2933">Lets #GstAudioEncoder sub-classes to know the memory @allocator
 used by the base class and its @params.
 
 Unref the @allocator after use it.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudioencoder.h"
+                         line="366"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="enc" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioEncoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioencoder.c"
+                 line="2935">a #GstAudioEncoder</doc>
             <type name="AudioEncoder" c:type="GstAudioEncoder*"/>
           </instance-parameter>
           <parameter name="allocator"
@@ -4554,7 +7252,9 @@ Unref the @allocator after use it.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">the #GstAllocator
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioencoder.c"
+                 line="2936">the #GstAllocator
 used</doc>
             <type name="Gst.Allocator" c:type="GstAllocator**"/>
           </parameter>
@@ -4564,7 +7264,9 @@ used</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">the
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioencoder.c"
+                 line="2938">the
 #GstAllocationParams of @allocator</doc>
             <type name="Gst.AllocationParams" c:type="GstAllocationParams*"/>
           </parameter>
@@ -4572,90 +7274,132 @@ used</doc>
       </method>
       <method name="get_audio_info"
               c:identifier="gst_audio_encoder_get_audio_info">
+        <source-position filename="gst-libs/gst/audio/gstaudioencoder.h"
+                         line="277"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a #GstAudioInfo describing the input audio format</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudioencoder.c"
+               line="2138">a #GstAudioInfo describing the input audio format</doc>
           <type name="AudioInfo" c:type="GstAudioInfo*"/>
         </return-value>
         <parameters>
           <instance-parameter name="enc" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioEncoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioencoder.c"
+                 line="2136">a #GstAudioEncoder</doc>
             <type name="AudioEncoder" c:type="GstAudioEncoder*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_drainable"
               c:identifier="gst_audio_encoder_get_drainable">
-        <doc xml:space="preserve">Queries encoder drain handling.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioencoder.c"
+             line="2632">Queries encoder drain handling.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudioencoder.h"
+                         line="363"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">TRUE if drainable handling is enabled.
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudioencoder.c"
+               line="2638">TRUE if drainable handling is enabled.
 
 MT safe.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="enc" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioEncoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioencoder.c"
+                 line="2634">a #GstAudioEncoder</doc>
             <type name="AudioEncoder" c:type="GstAudioEncoder*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_frame_max"
               c:identifier="gst_audio_encoder_get_frame_max">
+        <source-position filename="gst-libs/gst/audio/gstaudioencoder.h"
+                         line="292"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">currently configured maximum handled frames</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudioencoder.c"
+               line="2246">currently configured maximum handled frames</doc>
           <type name="gint" c:type="gint"/>
         </return-value>
         <parameters>
           <instance-parameter name="enc" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioEncoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioencoder.c"
+                 line="2244">a #GstAudioEncoder</doc>
             <type name="AudioEncoder" c:type="GstAudioEncoder*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_frame_samples_max"
               c:identifier="gst_audio_encoder_get_frame_samples_max">
+        <source-position filename="gst-libs/gst/audio/gstaudioencoder.h"
+                         line="286"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">currently maximum requested samples per frame</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudioencoder.c"
+               line="2212">currently maximum requested samples per frame</doc>
           <type name="gint" c:type="gint"/>
         </return-value>
         <parameters>
           <instance-parameter name="enc" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioEncoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioencoder.c"
+                 line="2210">a #GstAudioEncoder</doc>
             <type name="AudioEncoder" c:type="GstAudioEncoder*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_frame_samples_min"
               c:identifier="gst_audio_encoder_get_frame_samples_min">
+        <source-position filename="gst-libs/gst/audio/gstaudioencoder.h"
+                         line="280"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">currently minimum requested samples per frame</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudioencoder.c"
+               line="2175">currently minimum requested samples per frame</doc>
           <type name="gint" c:type="gint"/>
         </return-value>
         <parameters>
           <instance-parameter name="enc" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioEncoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioencoder.c"
+                 line="2173">a #GstAudioEncoder</doc>
             <type name="AudioEncoder" c:type="GstAudioEncoder*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_hard_min"
               c:identifier="gst_audio_encoder_get_hard_min">
-        <doc xml:space="preserve">Queries encoder hard minimum handling.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioencoder.c"
+             line="2586">Queries encoder hard minimum handling.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudioencoder.h"
+                         line="356"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">TRUE if hard minimum handling is enabled.
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudioencoder.c"
+               line="2592">TRUE if hard minimum handling is enabled.
 
 MT safe.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="enc" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioEncoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioencoder.c"
+                 line="2588">a #GstAudioEncoder</doc>
             <type name="AudioEncoder" c:type="GstAudioEncoder*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_hard_resync"
               c:identifier="gst_audio_encoder_get_hard_resync">
+        <source-position filename="gst-libs/gst/audio/gstaudioencoder.h"
+                         line="342"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -4666,14 +7410,20 @@ MT safe.</doc>
         </parameters>
       </method>
       <method name="get_latency" c:identifier="gst_audio_encoder_get_latency">
-        <doc xml:space="preserve">Sets the variables pointed to by @min and @max to the currently configured
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioencoder.c"
+             line="2318">Sets the variables pointed to by @min and @max to the currently configured
 latency.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudioencoder.h"
+                         line="304"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="enc" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioEncoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioencoder.c"
+                 line="2320">a #GstAudioEncoder</doc>
             <type name="AudioEncoder" c:type="GstAudioEncoder*"/>
           </instance-parameter>
           <parameter name="min"
@@ -4682,7 +7432,9 @@ latency.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">a pointer to storage to hold minimum latency</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioencoder.c"
+                 line="2321">a pointer to storage to hold minimum latency</doc>
             <type name="Gst.ClockTime" c:type="GstClockTime*"/>
           </parameter>
           <parameter name="max"
@@ -4691,74 +7443,108 @@ latency.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">a pointer to storage to hold maximum latency</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioencoder.c"
+                 line="2322">a pointer to storage to hold maximum latency</doc>
             <type name="Gst.ClockTime" c:type="GstClockTime*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_lookahead"
               c:identifier="gst_audio_encoder_get_lookahead">
+        <source-position filename="gst-libs/gst/audio/gstaudioencoder.h"
+                         line="298"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">currently configured encoder lookahead</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudioencoder.c"
+               line="2279">currently configured encoder lookahead</doc>
           <type name="gint" c:type="gint"/>
         </return-value>
         <parameters>
           <instance-parameter name="enc" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioEncoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioencoder.c"
+                 line="2277">a #GstAudioEncoder</doc>
             <type name="AudioEncoder" c:type="GstAudioEncoder*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_mark_granule"
               c:identifier="gst_audio_encoder_get_mark_granule">
-        <doc xml:space="preserve">Queries if the encoder will handle granule marking.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioencoder.c"
+             line="2404">Queries if the encoder will handle granule marking.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudioencoder.h"
+                         line="328"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">TRUE if granule marking is enabled.
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudioencoder.c"
+               line="2410">TRUE if granule marking is enabled.
 
 MT safe.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="enc" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioEncoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioencoder.c"
+                 line="2406">a #GstAudioEncoder</doc>
             <type name="AudioEncoder" c:type="GstAudioEncoder*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_perfect_timestamp"
               c:identifier="gst_audio_encoder_get_perfect_timestamp">
-        <doc xml:space="preserve">Queries encoder perfect timestamp behaviour.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioencoder.c"
+             line="2450">Queries encoder perfect timestamp behaviour.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudioencoder.h"
+                         line="335"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">TRUE if perfect timestamp setting enabled.
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudioencoder.c"
+               line="2456">TRUE if perfect timestamp setting enabled.
 
 MT safe.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="enc" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioEncoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioencoder.c"
+                 line="2452">a #GstAudioEncoder</doc>
             <type name="AudioEncoder" c:type="GstAudioEncoder*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_tolerance"
               c:identifier="gst_audio_encoder_get_tolerance">
-        <doc xml:space="preserve">Queries current audio jitter tolerance threshold.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioencoder.c"
+             line="2540">Queries current audio jitter tolerance threshold.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudioencoder.h"
+                         line="349"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">encoder audio jitter tolerance threshold.
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudioencoder.c"
+               line="2546">encoder audio jitter tolerance threshold.
 
 MT safe.</doc>
           <type name="Gst.ClockTime" c:type="GstClockTime"/>
         </return-value>
         <parameters>
           <instance-parameter name="enc" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioEncoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioencoder.c"
+                 line="2542">a #GstAudioEncoder</doc>
             <type name="AudioEncoder" c:type="GstAudioEncoder*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="merge_tags" c:identifier="gst_audio_encoder_merge_tags">
-        <doc xml:space="preserve">Sets the audio encoder tags and how they should be merged with any
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioencoder.c"
+             line="2656">Sets the audio encoder tags and how they should be merged with any
 upstream stream tags. This will override any tags previously-set
 with gst_audio_encoder_merge_tags().
 
@@ -4766,69 +7552,97 @@ Note that this is provided for convenience, and the subclass is
 not required to use this and can still do tag handling on its own.
 
 MT safe.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudioencoder.h"
+                         line="371"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="enc" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioEncoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioencoder.c"
+                 line="2658">a #GstAudioEncoder</doc>
             <type name="AudioEncoder" c:type="GstAudioEncoder*"/>
           </instance-parameter>
           <parameter name="tags"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">a #GstTagList to merge, or NULL to unset
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioencoder.c"
+                 line="2659">a #GstTagList to merge, or NULL to unset
     previously-set tags</doc>
             <type name="Gst.TagList" c:type="const GstTagList*"/>
           </parameter>
           <parameter name="mode" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstTagMergeMode to use, usually #GST_TAG_MERGE_REPLACE</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioencoder.c"
+                 line="2661">the #GstTagMergeMode to use, usually #GST_TAG_MERGE_REPLACE</doc>
             <type name="Gst.TagMergeMode" c:type="GstTagMergeMode"/>
           </parameter>
         </parameters>
       </method>
       <method name="negotiate" c:identifier="gst_audio_encoder_negotiate">
-        <doc xml:space="preserve">Negotiate with downstream elements to currently configured #GstCaps.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioencoder.c"
+             line="2804">Negotiate with downstream elements to currently configured #GstCaps.
 Unmark GST_PAD_FLAG_NEED_RECONFIGURE in any case. But mark it again if
 negotiate fails.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudioencoder.h"
+                         line="268"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the negotiation succeeded, else %FALSE.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudioencoder.c"
+               line="2812">%TRUE if the negotiation succeeded, else %FALSE.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="enc" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioEncoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioencoder.c"
+                 line="2806">a #GstAudioEncoder</doc>
             <type name="AudioEncoder" c:type="GstAudioEncoder*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="proxy_getcaps"
               c:identifier="gst_audio_encoder_proxy_getcaps">
-        <doc xml:space="preserve">Returns caps that express @caps (or sink template caps if @caps == NULL)
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioencoder.c"
+             line="1482">Returns caps that express @caps (or sink template caps if @caps == NULL)
 restricted to channel/rate combinations supported by downstream elements
 (e.g. muxers).</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudioencoder.h"
+                         line="259"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a #GstCaps owned by caller</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudioencoder.c"
+               line="1492">a #GstCaps owned by caller</doc>
           <type name="Gst.Caps" c:type="GstCaps*"/>
         </return-value>
         <parameters>
           <instance-parameter name="enc" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioEncoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioencoder.c"
+                 line="1484">a #GstAudioEncoder</doc>
             <type name="AudioEncoder" c:type="GstAudioEncoder*"/>
           </instance-parameter>
           <parameter name="caps"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">initial caps</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioencoder.c"
+                 line="1485">initial caps</doc>
             <type name="Gst.Caps" c:type="GstCaps*"/>
           </parameter>
           <parameter name="filter"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">filter caps</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioencoder.c"
+                 line="1486">filter caps</doc>
             <type name="Gst.Caps" c:type="GstCaps*"/>
           </parameter>
         </parameters>
@@ -4836,73 +7650,99 @@ restricted to channel/rate combinations supported by downstream elements
       <method name="set_allocation_caps"
               c:identifier="gst_audio_encoder_set_allocation_caps"
               version="1.10">
-        <doc xml:space="preserve">Sets a caps in allocation query which are different from the set
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioencoder.c"
+             line="2362">Sets a caps in allocation query which are different from the set
 pad's caps. Use this function before calling
 gst_audio_encoder_negotiate(). Setting to %NULL the allocation
 query will use the caps from the pad.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudioencoder.h"
+                         line="318"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="enc" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioEncoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioencoder.c"
+                 line="2364">a #GstAudioEncoder</doc>
             <type name="AudioEncoder" c:type="GstAudioEncoder*"/>
           </instance-parameter>
           <parameter name="allocation_caps"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">a #GstCaps or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioencoder.c"
+                 line="2365">a #GstCaps or %NULL</doc>
             <type name="Gst.Caps" c:type="GstCaps*"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_drainable"
               c:identifier="gst_audio_encoder_set_drainable">
-        <doc xml:space="preserve">Configures encoder drain handling.  If drainable, subclass might
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioencoder.c"
+             line="2610">Configures encoder drain handling.  If drainable, subclass might
 be handed a NULL buffer to have it return any leftover encoded data.
 Otherwise, it is not considered so capable and will only ever be passed
 real data.
 
 MT safe.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudioencoder.h"
+                         line="359"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="enc" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioEncoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioencoder.c"
+                 line="2612">a #GstAudioEncoder</doc>
             <type name="AudioEncoder" c:type="GstAudioEncoder*"/>
           </instance-parameter>
           <parameter name="enabled" transfer-ownership="none">
-            <doc xml:space="preserve">new state</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioencoder.c"
+                 line="2613">new state</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_frame_max"
               c:identifier="gst_audio_encoder_set_frame_max">
-        <doc xml:space="preserve">Sets max number of frames accepted at once (assumed minimally 1).
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioencoder.c"
+             line="2222">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
 #GstAudioEncoderClass.set_format() is called.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudioencoder.h"
+                         line="295"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="enc" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioEncoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioencoder.c"
+                 line="2224">a #GstAudioEncoder</doc>
             <type name="AudioEncoder" c:type="GstAudioEncoder*"/>
           </instance-parameter>
           <parameter name="num" transfer-ownership="none">
-            <doc xml:space="preserve">number of frames</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioencoder.c"
+                 line="2225">number of frames</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_frame_samples_max"
               c:identifier="gst_audio_encoder_set_frame_samples_max">
-        <doc xml:space="preserve">Sets number of samples (per channel) subclass needs to be handed,
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioencoder.c"
+             line="2185">Sets number of samples (per channel) subclass needs to be handed,
 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()
@@ -4910,23 +7750,31 @@ must be called with the same number.
 
 Note: This value will be reset to 0 every time before
 #GstAudioEncoderClass.set_format() is called.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudioencoder.h"
+                         line="289"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="enc" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioEncoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioencoder.c"
+                 line="2187">a #GstAudioEncoder</doc>
             <type name="AudioEncoder" c:type="GstAudioEncoder*"/>
           </instance-parameter>
           <parameter name="num" transfer-ownership="none">
-            <doc xml:space="preserve">number of samples per frame</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioencoder.c"
+                 line="2188">number of samples per frame</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_frame_samples_min"
               c:identifier="gst_audio_encoder_set_frame_samples_min">
-        <doc xml:space="preserve">Sets number of samples (per channel) subclass needs to be handed,
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioencoder.c"
+             line="2148">Sets number of samples (per channel) subclass needs to be handed,
 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()
@@ -4934,44 +7782,60 @@ must be called with the same number.
 
 Note: This value will be reset to 0 every time before
 #GstAudioEncoderClass.set_format() is called.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudioencoder.h"
+                         line="283"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="enc" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioEncoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioencoder.c"
+                 line="2150">a #GstAudioEncoder</doc>
             <type name="AudioEncoder" c:type="GstAudioEncoder*"/>
           </instance-parameter>
           <parameter name="num" transfer-ownership="none">
-            <doc xml:space="preserve">number of samples per frame</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioencoder.c"
+                 line="2151">number of samples per frame</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_hard_min"
               c:identifier="gst_audio_encoder_set_hard_min">
-        <doc xml:space="preserve">Configures encoder hard minimum handling.  If enabled, subclass
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioencoder.c"
+             line="2564">Configures encoder hard minimum handling.  If enabled, subclass
 will never be handed less samples than it configured, which otherwise
 might occur near end-of-data handling.  Instead, the leftover samples
 will simply be discarded.
 
 MT safe.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudioencoder.h"
+                         line="352"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="enc" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioEncoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioencoder.c"
+                 line="2566">a #GstAudioEncoder</doc>
             <type name="AudioEncoder" c:type="GstAudioEncoder*"/>
           </instance-parameter>
           <parameter name="enabled" transfer-ownership="none">
-            <doc xml:space="preserve">new state</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioencoder.c"
+                 line="2567">new state</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_hard_resync"
               c:identifier="gst_audio_encoder_set_hard_resync">
+        <source-position filename="gst-libs/gst/audio/gstaudioencoder.h"
+                         line="338"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
@@ -4985,17 +7849,25 @@ MT safe.</doc>
         </parameters>
       </method>
       <method name="set_headers" c:identifier="gst_audio_encoder_set_headers">
-        <doc xml:space="preserve">Set the codec headers to be sent downstream whenever requested.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioencoder.c"
+             line="2341">Set the codec headers to be sent downstream whenever requested.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudioencoder.h"
+                         line="314"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="enc" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioEncoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioencoder.c"
+                 line="2343">a #GstAudioEncoder</doc>
             <type name="AudioEncoder" c:type="GstAudioEncoder*"/>
           </instance-parameter>
           <parameter name="headers" transfer-ownership="full">
-            <doc xml:space="preserve">a list of
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioencoder.c"
+                 line="2344">a list of
   #GstBuffer containing the codec header</doc>
             <type name="GLib.List" c:type="GList*">
               <type name="Gst.Buffer"/>
@@ -5004,116 +7876,168 @@ MT safe.</doc>
         </parameters>
       </method>
       <method name="set_latency" c:identifier="gst_audio_encoder_set_latency">
-        <doc xml:space="preserve">Sets encoder latency.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioencoder.c"
+             line="2289">Sets encoder latency.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudioencoder.h"
+                         line="309"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="enc" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioEncoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioencoder.c"
+                 line="2291">a #GstAudioEncoder</doc>
             <type name="AudioEncoder" c:type="GstAudioEncoder*"/>
           </instance-parameter>
           <parameter name="min" transfer-ownership="none">
-            <doc xml:space="preserve">minimum latency</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioencoder.c"
+                 line="2292">minimum latency</doc>
             <type name="Gst.ClockTime" c:type="GstClockTime"/>
           </parameter>
           <parameter name="max" transfer-ownership="none">
-            <doc xml:space="preserve">maximum latency</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioencoder.c"
+                 line="2293">maximum latency</doc>
             <type name="Gst.ClockTime" c:type="GstClockTime"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_lookahead"
               c:identifier="gst_audio_encoder_set_lookahead">
-        <doc xml:space="preserve">Sets encoder lookahead (in units of input rate samples)
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioencoder.c"
+             line="2256">Sets encoder lookahead (in units of input rate samples)
 
 Note: This value will be reset to 0 every time before
 #GstAudioEncoderClass.set_format() is called.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudioencoder.h"
+                         line="301"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="enc" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioEncoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioencoder.c"
+                 line="2258">a #GstAudioEncoder</doc>
             <type name="AudioEncoder" c:type="GstAudioEncoder*"/>
           </instance-parameter>
           <parameter name="num" transfer-ownership="none">
-            <doc xml:space="preserve">lookahead</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioencoder.c"
+                 line="2259">lookahead</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_mark_granule"
               c:identifier="gst_audio_encoder_set_mark_granule">
-        <doc xml:space="preserve">Enable or disable encoder granule handling.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioencoder.c"
+             line="2383">Enable or disable encoder granule handling.
 
 MT safe.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudioencoder.h"
+                         line="324"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="enc" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioEncoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioencoder.c"
+                 line="2385">a #GstAudioEncoder</doc>
             <type name="AudioEncoder" c:type="GstAudioEncoder*"/>
           </instance-parameter>
           <parameter name="enabled" transfer-ownership="none">
-            <doc xml:space="preserve">new state</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioencoder.c"
+                 line="2386">new state</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_output_format"
               c:identifier="gst_audio_encoder_set_output_format">
-        <doc xml:space="preserve">Configure output caps on the srcpad of @enc.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE on success.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioencoder.c"
+             line="2836">Configure output caps on the srcpad of @enc.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudioencoder.h"
+                         line="264"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudioencoder.c"
+               line="2843">%TRUE on success.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="enc" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioEncoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioencoder.c"
+                 line="2838">a #GstAudioEncoder</doc>
             <type name="AudioEncoder" c:type="GstAudioEncoder*"/>
           </instance-parameter>
           <parameter name="caps" transfer-ownership="none">
-            <doc xml:space="preserve">#GstCaps</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioencoder.c"
+                 line="2839">#GstCaps</doc>
             <type name="Gst.Caps" c:type="GstCaps*"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_perfect_timestamp"
               c:identifier="gst_audio_encoder_set_perfect_timestamp">
-        <doc xml:space="preserve">Enable or disable encoder perfect output timestamp preference.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioencoder.c"
+             line="2428">Enable or disable encoder perfect output timestamp preference.
 
 MT safe.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudioencoder.h"
+                         line="331"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="enc" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioEncoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioencoder.c"
+                 line="2430">a #GstAudioEncoder</doc>
             <type name="AudioEncoder" c:type="GstAudioEncoder*"/>
           </instance-parameter>
           <parameter name="enabled" transfer-ownership="none">
-            <doc xml:space="preserve">new state</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioencoder.c"
+                 line="2431">new state</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_tolerance"
               c:identifier="gst_audio_encoder_set_tolerance">
-        <doc xml:space="preserve">Configures encoder audio jitter tolerance threshold.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioencoder.c"
+             line="2519">Configures encoder audio jitter tolerance threshold.
 
 MT safe.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudioencoder.h"
+                         line="345"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="enc" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioEncoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioencoder.c"
+                 line="2521">a #GstAudioEncoder</doc>
             <type name="AudioEncoder" c:type="GstAudioEncoder*"/>
           </instance-parameter>
           <parameter name="tolerance" transfer-ownership="none">
-            <doc xml:space="preserve">new tolerance</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioencoder.c"
+                 line="2522">new tolerance</doc>
             <type name="Gst.ClockTime" c:type="GstClockTime"/>
           </parameter>
         </parameters>
@@ -5154,7 +8078,7 @@ MT safe.</doc>
         <type name="AudioEncoderPrivate" c:type="GstAudioEncoderPrivate*"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="20">
+        <array zero-terminated="0" fixed-size="20">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -5162,14 +8086,22 @@ MT safe.</doc>
     <record name="AudioEncoderClass"
             c:type="GstAudioEncoderClass"
             glib:is-gtype-struct-for="AudioEncoder">
-      <doc xml:space="preserve">Subclasses can override any of the available virtual methods or not, as
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/gstaudioencoder.h"
+           line="122">Subclasses can override any of the available virtual methods or not, as
 needed. At minimum @set_format and @handle_frame needs to be overridden.</doc>
+      <source-position filename="gst-libs/gst/audio/gstaudioencoder.h"
+                       line="248"/>
       <field name="element_class">
-        <doc xml:space="preserve">The parent class structure</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioencoder.h"
+             line="124">The parent class structure</doc>
         <type name="Gst.ElementClass" c:type="GstElementClass"/>
       </field>
       <field name="start">
         <callback name="start">
+          <source-position filename="gst-libs/gst/audio/gstaudioencoder.h"
+                           line="202"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -5182,6 +8114,8 @@ needed. At minimum @set_format and @handle_frame needs to be overridden.</doc>
       </field>
       <field name="stop">
         <callback name="stop">
+          <source-position filename="gst-libs/gst/audio/gstaudioencoder.h"
+                           line="204"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -5194,6 +8128,8 @@ needed. At minimum @set_format and @handle_frame needs to be overridden.</doc>
       </field>
       <field name="set_format">
         <callback name="set_format">
+          <source-position filename="gst-libs/gst/audio/gstaudioencoder.h"
+                           line="206"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -5209,6 +8145,8 @@ needed. At minimum @set_format and @handle_frame needs to be overridden.</doc>
       </field>
       <field name="handle_frame">
         <callback name="handle_frame">
+          <source-position filename="gst-libs/gst/audio/gstaudioencoder.h"
+                           line="209"/>
           <return-value transfer-ownership="none">
             <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
           </return-value>
@@ -5224,6 +8162,8 @@ needed. At minimum @set_format and @handle_frame needs to be overridden.</doc>
       </field>
       <field name="flush">
         <callback name="flush">
+          <source-position filename="gst-libs/gst/audio/gstaudioencoder.h"
+                           line="212"/>
           <return-value transfer-ownership="none">
             <type name="none" c:type="void"/>
           </return-value>
@@ -5236,6 +8176,8 @@ needed. At minimum @set_format and @handle_frame needs to be overridden.</doc>
       </field>
       <field name="pre_push">
         <callback name="pre_push">
+          <source-position filename="gst-libs/gst/audio/gstaudioencoder.h"
+                           line="214"/>
           <return-value transfer-ownership="none">
             <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
           </return-value>
@@ -5251,6 +8193,8 @@ needed. At minimum @set_format and @handle_frame needs to be overridden.</doc>
       </field>
       <field name="sink_event">
         <callback name="sink_event">
+          <source-position filename="gst-libs/gst/audio/gstaudioencoder.h"
+                           line="217"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -5266,6 +8210,8 @@ needed. At minimum @set_format and @handle_frame needs to be overridden.</doc>
       </field>
       <field name="src_event">
         <callback name="src_event">
+          <source-position filename="gst-libs/gst/audio/gstaudioencoder.h"
+                           line="220"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -5281,6 +8227,8 @@ needed. At minimum @set_format and @handle_frame needs to be overridden.</doc>
       </field>
       <field name="getcaps">
         <callback name="getcaps">
+          <source-position filename="gst-libs/gst/audio/gstaudioencoder.h"
+                           line="223"/>
           <return-value transfer-ownership="full">
             <type name="Gst.Caps" c:type="GstCaps*"/>
           </return-value>
@@ -5296,6 +8244,8 @@ needed. At minimum @set_format and @handle_frame needs to be overridden.</doc>
       </field>
       <field name="open">
         <callback name="open">
+          <source-position filename="gst-libs/gst/audio/gstaudioencoder.h"
+                           line="225"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -5308,6 +8258,8 @@ needed. At minimum @set_format and @handle_frame needs to be overridden.</doc>
       </field>
       <field name="close">
         <callback name="close">
+          <source-position filename="gst-libs/gst/audio/gstaudioencoder.h"
+                           line="227"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -5320,13 +8272,19 @@ needed. At minimum @set_format and @handle_frame needs to be overridden.</doc>
       </field>
       <field name="negotiate">
         <callback name="negotiate">
+          <source-position filename="gst-libs/gst/audio/gstaudioencoder.h"
+                           line="229"/>
           <return-value transfer-ownership="none">
-            <doc xml:space="preserve">%TRUE if the negotiation succeeded, else %FALSE.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioencoder.c"
+                 line="2812">%TRUE if the negotiation succeeded, else %FALSE.</doc>
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
           <parameters>
             <parameter name="enc" transfer-ownership="none">
-              <doc xml:space="preserve">a #GstAudioEncoder</doc>
+              <doc xml:space="preserve"
+                   filename="gst-libs/gst/audio/gstaudioencoder.c"
+                   line="2806">a #GstAudioEncoder</doc>
               <type name="AudioEncoder" c:type="GstAudioEncoder*"/>
             </parameter>
           </parameters>
@@ -5334,6 +8292,8 @@ needed. At minimum @set_format and @handle_frame needs to be overridden.</doc>
       </field>
       <field name="decide_allocation">
         <callback name="decide_allocation">
+          <source-position filename="gst-libs/gst/audio/gstaudioencoder.h"
+                           line="231"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -5349,6 +8309,8 @@ needed. At minimum @set_format and @handle_frame needs to be overridden.</doc>
       </field>
       <field name="propose_allocation">
         <callback name="propose_allocation">
+          <source-position filename="gst-libs/gst/audio/gstaudioencoder.h"
+                           line="233"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -5364,6 +8326,8 @@ needed. At minimum @set_format and @handle_frame needs to be overridden.</doc>
       </field>
       <field name="transform_meta">
         <callback name="transform_meta">
+          <source-position filename="gst-libs/gst/audio/gstaudioencoder.h"
+                           line="236"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -5385,6 +8349,8 @@ needed. At minimum @set_format and @handle_frame needs to be overridden.</doc>
       </field>
       <field name="sink_query">
         <callback name="sink_query">
+          <source-position filename="gst-libs/gst/audio/gstaudioencoder.h"
+                           line="239"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -5400,6 +8366,8 @@ needed. At minimum @set_format and @handle_frame needs to be overridden.</doc>
       </field>
       <field name="src_query">
         <callback name="src_query">
+          <source-position filename="gst-libs/gst/audio/gstaudioencoder.h"
+                           line="242"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -5414,7 +8382,7 @@ needed. At minimum @set_format and @handle_frame needs to be overridden.</doc>
         </callback>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="17">
+        <array zero-terminated="0" fixed-size="17">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -5422,6 +8390,8 @@ needed. At minimum @set_format and @handle_frame needs to be overridden.</doc>
     <record name="AudioEncoderPrivate"
             c:type="GstAudioEncoderPrivate"
             disguised="1">
+      <source-position filename="gst-libs/gst/audio/gstaudioencoder.h"
+                       line="92"/>
     </record>
     <class name="AudioFilter"
            c:symbol-prefix="audio_filter"
@@ -5431,7 +8401,9 @@ needed. At minimum @set_format and @handle_frame needs to be overridden.</doc>
            glib:type-name="GstAudioFilter"
            glib:get-type="gst_audio_filter_get_type"
            glib:type-struct="AudioFilterClass">
-      <doc xml:space="preserve">#GstAudioFilter is a #GstBaseTransform&lt;!-- --&gt;-derived base class for simple audio
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/gstaudiofilter.c"
+           line="22">#GstAudioFilter is a #GstBaseTransform&lt;!-- --&gt;-derived base class for simple audio
 filters, ie. those that output the same format that they get as input.
 
 #GstAudioFilter will parse the input format for you (with error checking)
@@ -5444,7 +8416,11 @@ Derived classes should override the #GstAudioFilterClass.setup() and
 #GstBaseTransformClass.transform_ip() and/or
 #GstBaseTransformClass.transform()
 virtual functions in their class_init function.</doc>
+      <source-position filename="gst-libs/gst/audio/gstaudiofilter.h"
+                       line="93"/>
       <virtual-method name="setup">
+        <source-position filename="gst-libs/gst/audio/gstaudiofilter.h"
+                         line="89"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -5464,7 +8440,7 @@ virtual functions in their class_init function.</doc>
         <type name="AudioInfo" c:type="GstAudioInfo"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -5472,16 +8448,24 @@ virtual functions in their class_init function.</doc>
     <record name="AudioFilterClass"
             c:type="GstAudioFilterClass"
             glib:is-gtype-struct-for="AudioFilter">
-      <doc xml:space="preserve">In addition to the @setup virtual function, you should also override the
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/gstaudiofilter.h"
+           line="75">In addition to the @setup virtual function, you should also override the
 GstBaseTransform::transform and/or GstBaseTransform::transform_ip virtual
 function.</doc>
+      <source-position filename="gst-libs/gst/audio/gstaudiofilter.h"
+                       line="93"/>
       <field name="basetransformclass">
-        <doc xml:space="preserve">parent class</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiofilter.h"
+             line="77">parent class</doc>
         <type name="GstBase.BaseTransformClass"
               c:type="GstBaseTransformClass"/>
       </field>
       <field name="setup">
         <callback name="setup">
+          <source-position filename="gst-libs/gst/audio/gstaudiofilter.h"
+                           line="89"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -5496,26 +8480,34 @@ function.</doc>
         </callback>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
       <method name="add_pad_templates"
               c:identifier="gst_audio_filter_class_add_pad_templates">
-        <doc xml:space="preserve">Convenience function to add pad templates to this element class, with
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiofilter.c"
+             line="206">Convenience function to add pad templates to this element class, with
 @allowed_caps as the caps that can be handled.
 
 This function is usually used from within a GObject class_init function.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudiofilter.h"
+                         line="99"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="klass" transfer-ownership="none">
-            <doc xml:space="preserve">an #GstAudioFilterClass</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiofilter.c"
+                 line="208">an #GstAudioFilterClass</doc>
             <type name="AudioFilterClass" c:type="GstAudioFilterClass*"/>
           </instance-parameter>
           <parameter name="allowed_caps" transfer-ownership="none">
-            <doc xml:space="preserve">what formats the filter can handle, as #GstCaps</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiofilter.c"
+                 line="209">what formats the filter can handle, as #GstCaps</doc>
             <type name="Gst.Caps" c:type="GstCaps*"/>
           </parameter>
         </parameters>
@@ -5525,18 +8517,24 @@ This function is usually used from within a GObject class_init function.</doc>
               glib:type-name="GstAudioFlags"
               glib:get-type="gst_audio_flags_get_type"
               c:type="GstAudioFlags">
-      <doc xml:space="preserve">Extra audio flags</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/audio-info.h"
+           line="33">Extra audio flags</doc>
       <member name="none"
               value="0"
               c:identifier="GST_AUDIO_FLAG_NONE"
               glib:nick="none">
-        <doc xml:space="preserve">no valid flag</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-info.h"
+             line="35">no valid flag</doc>
       </member>
       <member name="unpositioned"
               value="1"
               c:identifier="GST_AUDIO_FLAG_UNPOSITIONED"
               glib:nick="unpositioned">
-        <doc xml:space="preserve">the position array explicitly
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-info.h"
+             line="36">the position array explicitly
     contains unpositioned channels.</doc>
       </member>
     </bitfield>
@@ -5544,362 +8542,498 @@ This function is usually used from within a GObject class_init function.</doc>
                  glib:type-name="GstAudioFormat"
                  glib:get-type="gst_audio_format_get_type"
                  c:type="GstAudioFormat">
-      <doc xml:space="preserve">Enum value describing the most common audio formats.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/audio-format.h"
+           line="39">Enum value describing the most common audio formats.</doc>
       <member name="unknown"
               value="0"
               c:identifier="GST_AUDIO_FORMAT_UNKNOWN"
               glib:nick="unknown">
-        <doc xml:space="preserve">unknown or unset audio format</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-format.h"
+             line="41">unknown or unset audio format</doc>
       </member>
       <member name="encoded"
               value="1"
               c:identifier="GST_AUDIO_FORMAT_ENCODED"
               glib:nick="encoded">
-        <doc xml:space="preserve">encoded audio format</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-format.h"
+             line="42">encoded audio format</doc>
       </member>
       <member name="s8"
               value="2"
               c:identifier="GST_AUDIO_FORMAT_S8"
               glib:nick="s8">
-        <doc xml:space="preserve">8 bits in 8 bits, signed</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-format.h"
+             line="43">8 bits in 8 bits, signed</doc>
       </member>
       <member name="u8"
               value="3"
               c:identifier="GST_AUDIO_FORMAT_U8"
               glib:nick="u8">
-        <doc xml:space="preserve">8 bits in 8 bits, unsigned</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-format.h"
+             line="44">8 bits in 8 bits, unsigned</doc>
       </member>
       <member name="s16le"
               value="4"
               c:identifier="GST_AUDIO_FORMAT_S16LE"
               glib:nick="s16le">
-        <doc xml:space="preserve">16 bits in 16 bits, signed, little endian</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-format.h"
+             line="45">16 bits in 16 bits, signed, little endian</doc>
       </member>
       <member name="s16be"
               value="5"
               c:identifier="GST_AUDIO_FORMAT_S16BE"
               glib:nick="s16be">
-        <doc xml:space="preserve">16 bits in 16 bits, signed, big endian</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-format.h"
+             line="46">16 bits in 16 bits, signed, big endian</doc>
       </member>
       <member name="u16le"
               value="6"
               c:identifier="GST_AUDIO_FORMAT_U16LE"
               glib:nick="u16le">
-        <doc xml:space="preserve">16 bits in 16 bits, unsigned, little endian</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-format.h"
+             line="47">16 bits in 16 bits, unsigned, little endian</doc>
       </member>
       <member name="u16be"
               value="7"
               c:identifier="GST_AUDIO_FORMAT_U16BE"
               glib:nick="u16be">
-        <doc xml:space="preserve">16 bits in 16 bits, unsigned, big endian</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-format.h"
+             line="48">16 bits in 16 bits, unsigned, big endian</doc>
       </member>
       <member name="s24_32le"
               value="8"
               c:identifier="GST_AUDIO_FORMAT_S24_32LE"
               glib:nick="s24-32le">
-        <doc xml:space="preserve">24 bits in 32 bits, signed, little endian</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-format.h"
+             line="49">24 bits in 32 bits, signed, little endian</doc>
       </member>
       <member name="s24_32be"
               value="9"
               c:identifier="GST_AUDIO_FORMAT_S24_32BE"
               glib:nick="s24-32be">
-        <doc xml:space="preserve">24 bits in 32 bits, signed, big endian</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-format.h"
+             line="50">24 bits in 32 bits, signed, big endian</doc>
       </member>
       <member name="u24_32le"
               value="10"
               c:identifier="GST_AUDIO_FORMAT_U24_32LE"
               glib:nick="u24-32le">
-        <doc xml:space="preserve">24 bits in 32 bits, unsigned, little endian</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-format.h"
+             line="51">24 bits in 32 bits, unsigned, little endian</doc>
       </member>
       <member name="u24_32be"
               value="11"
               c:identifier="GST_AUDIO_FORMAT_U24_32BE"
               glib:nick="u24-32be">
-        <doc xml:space="preserve">24 bits in 32 bits, unsigned, big endian</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-format.h"
+             line="52">24 bits in 32 bits, unsigned, big endian</doc>
       </member>
       <member name="s32le"
               value="12"
               c:identifier="GST_AUDIO_FORMAT_S32LE"
               glib:nick="s32le">
-        <doc xml:space="preserve">32 bits in 32 bits, signed, little endian</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-format.h"
+             line="53">32 bits in 32 bits, signed, little endian</doc>
       </member>
       <member name="s32be"
               value="13"
               c:identifier="GST_AUDIO_FORMAT_S32BE"
               glib:nick="s32be">
-        <doc xml:space="preserve">32 bits in 32 bits, signed, big endian</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-format.h"
+             line="54">32 bits in 32 bits, signed, big endian</doc>
       </member>
       <member name="u32le"
               value="14"
               c:identifier="GST_AUDIO_FORMAT_U32LE"
               glib:nick="u32le">
-        <doc xml:space="preserve">32 bits in 32 bits, unsigned, little endian</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-format.h"
+             line="55">32 bits in 32 bits, unsigned, little endian</doc>
       </member>
       <member name="u32be"
               value="15"
               c:identifier="GST_AUDIO_FORMAT_U32BE"
               glib:nick="u32be">
-        <doc xml:space="preserve">32 bits in 32 bits, unsigned, big endian</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-format.h"
+             line="56">32 bits in 32 bits, unsigned, big endian</doc>
       </member>
       <member name="s24le"
               value="16"
               c:identifier="GST_AUDIO_FORMAT_S24LE"
               glib:nick="s24le">
-        <doc xml:space="preserve">24 bits in 24 bits, signed, little endian</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-format.h"
+             line="57">24 bits in 24 bits, signed, little endian</doc>
       </member>
       <member name="s24be"
               value="17"
               c:identifier="GST_AUDIO_FORMAT_S24BE"
               glib:nick="s24be">
-        <doc xml:space="preserve">24 bits in 24 bits, signed, big endian</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-format.h"
+             line="58">24 bits in 24 bits, signed, big endian</doc>
       </member>
       <member name="u24le"
               value="18"
               c:identifier="GST_AUDIO_FORMAT_U24LE"
               glib:nick="u24le">
-        <doc xml:space="preserve">24 bits in 24 bits, unsigned, little endian</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-format.h"
+             line="59">24 bits in 24 bits, unsigned, little endian</doc>
       </member>
       <member name="u24be"
               value="19"
               c:identifier="GST_AUDIO_FORMAT_U24BE"
               glib:nick="u24be">
-        <doc xml:space="preserve">24 bits in 24 bits, unsigned, big endian</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-format.h"
+             line="60">24 bits in 24 bits, unsigned, big endian</doc>
       </member>
       <member name="s20le"
               value="20"
               c:identifier="GST_AUDIO_FORMAT_S20LE"
               glib:nick="s20le">
-        <doc xml:space="preserve">20 bits in 24 bits, signed, little endian</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-format.h"
+             line="61">20 bits in 24 bits, signed, little endian</doc>
       </member>
       <member name="s20be"
               value="21"
               c:identifier="GST_AUDIO_FORMAT_S20BE"
               glib:nick="s20be">
-        <doc xml:space="preserve">20 bits in 24 bits, signed, big endian</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-format.h"
+             line="62">20 bits in 24 bits, signed, big endian</doc>
       </member>
       <member name="u20le"
               value="22"
               c:identifier="GST_AUDIO_FORMAT_U20LE"
               glib:nick="u20le">
-        <doc xml:space="preserve">20 bits in 24 bits, unsigned, little endian</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-format.h"
+             line="63">20 bits in 24 bits, unsigned, little endian</doc>
       </member>
       <member name="u20be"
               value="23"
               c:identifier="GST_AUDIO_FORMAT_U20BE"
               glib:nick="u20be">
-        <doc xml:space="preserve">20 bits in 24 bits, unsigned, big endian</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-format.h"
+             line="64">20 bits in 24 bits, unsigned, big endian</doc>
       </member>
       <member name="s18le"
               value="24"
               c:identifier="GST_AUDIO_FORMAT_S18LE"
               glib:nick="s18le">
-        <doc xml:space="preserve">18 bits in 24 bits, signed, little endian</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-format.h"
+             line="65">18 bits in 24 bits, signed, little endian</doc>
       </member>
       <member name="s18be"
               value="25"
               c:identifier="GST_AUDIO_FORMAT_S18BE"
               glib:nick="s18be">
-        <doc xml:space="preserve">18 bits in 24 bits, signed, big endian</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-format.h"
+             line="66">18 bits in 24 bits, signed, big endian</doc>
       </member>
       <member name="u18le"
               value="26"
               c:identifier="GST_AUDIO_FORMAT_U18LE"
               glib:nick="u18le">
-        <doc xml:space="preserve">18 bits in 24 bits, unsigned, little endian</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-format.h"
+             line="67">18 bits in 24 bits, unsigned, little endian</doc>
       </member>
       <member name="u18be"
               value="27"
               c:identifier="GST_AUDIO_FORMAT_U18BE"
               glib:nick="u18be">
-        <doc xml:space="preserve">18 bits in 24 bits, unsigned, big endian</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-format.h"
+             line="68">18 bits in 24 bits, unsigned, big endian</doc>
       </member>
       <member name="f32le"
               value="28"
               c:identifier="GST_AUDIO_FORMAT_F32LE"
               glib:nick="f32le">
-        <doc xml:space="preserve">32-bit floating point samples, little endian</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-format.h"
+             line="69">32-bit floating point samples, little endian</doc>
       </member>
       <member name="f32be"
               value="29"
               c:identifier="GST_AUDIO_FORMAT_F32BE"
               glib:nick="f32be">
-        <doc xml:space="preserve">32-bit floating point samples, big endian</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-format.h"
+             line="70">32-bit floating point samples, big endian</doc>
       </member>
       <member name="f64le"
               value="30"
               c:identifier="GST_AUDIO_FORMAT_F64LE"
               glib:nick="f64le">
-        <doc xml:space="preserve">64-bit floating point samples, little endian</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-format.h"
+             line="71">64-bit floating point samples, little endian</doc>
       </member>
       <member name="f64be"
               value="31"
               c:identifier="GST_AUDIO_FORMAT_F64BE"
               glib:nick="f64be">
-        <doc xml:space="preserve">64-bit floating point samples, big endian</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-format.h"
+             line="72">64-bit floating point samples, big endian</doc>
       </member>
       <member name="s16"
               value="4"
               c:identifier="GST_AUDIO_FORMAT_S16"
               glib:nick="s16">
-        <doc xml:space="preserve">16 bits in 16 bits, signed, native endianness</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-format.h"
+             line="73">16 bits in 16 bits, signed, native endianness</doc>
       </member>
       <member name="u16"
               value="6"
               c:identifier="GST_AUDIO_FORMAT_U16"
               glib:nick="u16">
-        <doc xml:space="preserve">16 bits in 16 bits, unsigned, native endianness</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-format.h"
+             line="74">16 bits in 16 bits, unsigned, native endianness</doc>
       </member>
       <member name="s24_32"
               value="8"
               c:identifier="GST_AUDIO_FORMAT_S24_32"
               glib:nick="s24-32">
-        <doc xml:space="preserve">24 bits in 32 bits, signed, native endianness</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-format.h"
+             line="75">24 bits in 32 bits, signed, native endianness</doc>
       </member>
       <member name="u24_32"
               value="10"
               c:identifier="GST_AUDIO_FORMAT_U24_32"
               glib:nick="u24-32">
-        <doc xml:space="preserve">24 bits in 32 bits, unsigned, native endianness</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-format.h"
+             line="76">24 bits in 32 bits, unsigned, native endianness</doc>
       </member>
       <member name="s32"
               value="12"
               c:identifier="GST_AUDIO_FORMAT_S32"
               glib:nick="s32">
-        <doc xml:space="preserve">32 bits in 32 bits, signed, native endianness</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-format.h"
+             line="77">32 bits in 32 bits, signed, native endianness</doc>
       </member>
       <member name="u32"
               value="14"
               c:identifier="GST_AUDIO_FORMAT_U32"
               glib:nick="u32">
-        <doc xml:space="preserve">32 bits in 32 bits, unsigned, native endianness</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-format.h"
+             line="78">32 bits in 32 bits, unsigned, native endianness</doc>
       </member>
       <member name="s24"
               value="16"
               c:identifier="GST_AUDIO_FORMAT_S24"
               glib:nick="s24">
-        <doc xml:space="preserve">24 bits in 24 bits, signed, native endianness</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-format.h"
+             line="79">24 bits in 24 bits, signed, native endianness</doc>
       </member>
       <member name="u24"
               value="18"
               c:identifier="GST_AUDIO_FORMAT_U24"
               glib:nick="u24">
-        <doc xml:space="preserve">24 bits in 24 bits, unsigned, native endianness</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-format.h"
+             line="80">24 bits in 24 bits, unsigned, native endianness</doc>
       </member>
       <member name="s20"
               value="20"
               c:identifier="GST_AUDIO_FORMAT_S20"
               glib:nick="s20">
-        <doc xml:space="preserve">20 bits in 24 bits, signed, native endianness</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-format.h"
+             line="81">20 bits in 24 bits, signed, native endianness</doc>
       </member>
       <member name="u20"
               value="22"
               c:identifier="GST_AUDIO_FORMAT_U20"
               glib:nick="u20">
-        <doc xml:space="preserve">20 bits in 24 bits, unsigned, native endianness</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-format.h"
+             line="82">20 bits in 24 bits, unsigned, native endianness</doc>
       </member>
       <member name="s18"
               value="24"
               c:identifier="GST_AUDIO_FORMAT_S18"
               glib:nick="s18">
-        <doc xml:space="preserve">18 bits in 24 bits, signed, native endianness</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-format.h"
+             line="83">18 bits in 24 bits, signed, native endianness</doc>
       </member>
       <member name="u18"
               value="26"
               c:identifier="GST_AUDIO_FORMAT_U18"
               glib:nick="u18">
-        <doc xml:space="preserve">18 bits in 24 bits, unsigned, native endianness</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-format.h"
+             line="84">18 bits in 24 bits, unsigned, native endianness</doc>
       </member>
       <member name="f32"
               value="28"
               c:identifier="GST_AUDIO_FORMAT_F32"
               glib:nick="f32">
-        <doc xml:space="preserve">32-bit floating point samples, native endianness</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-format.h"
+             line="85">32-bit floating point samples, native endianness</doc>
       </member>
       <member name="f64"
               value="30"
               c:identifier="GST_AUDIO_FORMAT_F64"
               glib:nick="f64">
-        <doc xml:space="preserve">64-bit floating point samples, native endianness</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-format.h"
+             line="86">64-bit floating point samples, native endianness</doc>
       </member>
       <function name="build_integer"
                 c:identifier="gst_audio_format_build_integer">
-        <doc xml:space="preserve">Construct a #GstAudioFormat with given parameters.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstAudioFormat or GST_AUDIO_FORMAT_UNKNOWN when no audio format
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-format.c"
+             line="358">Construct a #GstAudioFormat with given parameters.</doc>
+        <source-position filename="gst-libs/gst/audio/audio-format.h"
+                         line="275"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-format.c"
+               line="367">a #GstAudioFormat or GST_AUDIO_FORMAT_UNKNOWN when no audio format
 exists with the given parameters.</doc>
           <type name="AudioFormat" c:type="GstAudioFormat"/>
         </return-value>
         <parameters>
           <parameter name="sign" transfer-ownership="none">
-            <doc xml:space="preserve">signed or unsigned format</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-format.c"
+                 line="360">signed or unsigned format</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
           <parameter name="endianness" transfer-ownership="none">
-            <doc xml:space="preserve">G_LITTLE_ENDIAN or G_BIG_ENDIAN</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-format.c"
+                 line="361">G_LITTLE_ENDIAN or G_BIG_ENDIAN</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="width" transfer-ownership="none">
-            <doc xml:space="preserve">amount of bits used per sample</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-format.c"
+                 line="362">amount of bits used per sample</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="depth" transfer-ownership="none">
-            <doc xml:space="preserve">amount of used bits in @width</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-format.c"
+                 line="363">amount of used bits in @width</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
         </parameters>
       </function>
       <function name="fill_silence"
                 c:identifier="gst_audio_format_fill_silence">
-        <doc xml:space="preserve">Fill @length bytes in @dest with silence samples for @info.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-format.c"
+             line="454">Fill @length bytes in @dest with silence samples for @info.</doc>
+        <source-position filename="gst-libs/gst/audio/audio-format.h"
+                         line="289"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <parameter name="info" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioFormatInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-format.c"
+                 line="456">a #GstAudioFormatInfo</doc>
             <type name="AudioFormatInfo" c:type="const GstAudioFormatInfo*"/>
           </parameter>
           <parameter name="dest" transfer-ownership="none">
-            <doc xml:space="preserve">a destination
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-format.c"
+                 line="457">a destination
   to fill</doc>
             <array length="2" zero-terminated="0" c:type="gpointer">
               <type name="guint8"/>
             </array>
           </parameter>
           <parameter name="length" transfer-ownership="none">
-            <doc xml:space="preserve">the length to fill</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-format.c"
+                 line="459">the length to fill</doc>
             <type name="gsize" c:type="gsize"/>
           </parameter>
         </parameters>
       </function>
       <function name="from_string" c:identifier="gst_audio_format_from_string">
-        <doc xml:space="preserve">Convert the @format string to its #GstAudioFormat.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the #GstAudioFormat for @format or GST_AUDIO_FORMAT_UNKNOWN when the
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-format.c"
+             line="404">Convert the @format string to its #GstAudioFormat.</doc>
+        <source-position filename="gst-libs/gst/audio/audio-format.h"
+                         line="279"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-format.c"
+               line="410">the #GstAudioFormat for @format or GST_AUDIO_FORMAT_UNKNOWN when the
 string is not a known format.</doc>
           <type name="AudioFormat" c:type="GstAudioFormat"/>
         </return-value>
         <parameters>
           <parameter name="format" transfer-ownership="none">
-            <doc xml:space="preserve">a format string</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-format.c"
+                 line="406">a format string</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </function>
       <function name="get_info" c:identifier="gst_audio_format_get_info">
-        <doc xml:space="preserve">Get the #GstAudioFormatInfo for @format</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The #GstAudioFormatInfo for @format.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-format.c"
+             line="438">Get the #GstAudioFormatInfo for @format</doc>
+        <source-position filename="gst-libs/gst/audio/audio-format.h"
+                         line="286"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-format.c"
+               line="444">The #GstAudioFormatInfo for @format.</doc>
           <type name="AudioFormatInfo" c:type="const GstAudioFormatInfo*"/>
         </return-value>
         <parameters>
           <parameter name="format" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioFormat</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-format.c"
+                 line="440">a #GstAudioFormat</doc>
             <type name="AudioFormat" c:type="GstAudioFormat"/>
           </parameter>
         </parameters>
       </function>
       <function name="to_string" c:identifier="gst_audio_format_to_string">
+        <source-position filename="gst-libs/gst/audio/audio-format.h"
+                         line="282"/>
         <return-value transfer-ownership="none">
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
@@ -5914,159 +9048,225 @@ string is not a known format.</doc>
               glib:type-name="GstAudioFormatFlags"
               glib:get-type="gst_audio_format_flags_get_type"
               c:type="GstAudioFormatFlags">
-      <doc xml:space="preserve">The different audio flags that a format info can have.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/audio-format.h"
+           line="151">The different audio flags that a format info can have.</doc>
       <member name="integer"
               value="1"
               c:identifier="GST_AUDIO_FORMAT_FLAG_INTEGER"
               glib:nick="integer">
-        <doc xml:space="preserve">integer samples</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-format.h"
+             line="153">integer samples</doc>
       </member>
       <member name="float"
               value="2"
               c:identifier="GST_AUDIO_FORMAT_FLAG_FLOAT"
               glib:nick="float">
-        <doc xml:space="preserve">float samples</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-format.h"
+             line="154">float samples</doc>
       </member>
       <member name="signed"
               value="4"
               c:identifier="GST_AUDIO_FORMAT_FLAG_SIGNED"
               glib:nick="signed">
-        <doc xml:space="preserve">signed samples</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-format.h"
+             line="155">signed samples</doc>
       </member>
       <member name="complex"
               value="16"
               c:identifier="GST_AUDIO_FORMAT_FLAG_COMPLEX"
               glib:nick="complex">
-        <doc xml:space="preserve">complex layout</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-format.h"
+             line="156">complex layout</doc>
       </member>
       <member name="unpack"
               value="32"
               c:identifier="GST_AUDIO_FORMAT_FLAG_UNPACK"
               glib:nick="unpack">
-        <doc xml:space="preserve">the format can be used in
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-format.h"
+             line="157">the format can be used in
 #GstAudioFormatUnpack and #GstAudioFormatPack functions</doc>
       </member>
     </bitfield>
     <record name="AudioFormatInfo" c:type="GstAudioFormatInfo">
-      <doc xml:space="preserve">Information for an audio format.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/audio-format.h"
+           line="221">Information for an audio format.</doc>
+      <source-position filename="gst-libs/gst/audio/audio-format.h"
+                       line="254"/>
       <field name="format" writable="1">
-        <doc xml:space="preserve">#GstAudioFormat</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-format.h"
+             line="223">#GstAudioFormat</doc>
         <type name="AudioFormat" c:type="GstAudioFormat"/>
       </field>
       <field name="name" writable="1">
-        <doc xml:space="preserve">string representation of the format</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-format.h"
+             line="224">string representation of the format</doc>
         <type name="utf8" c:type="const gchar*"/>
       </field>
       <field name="description" writable="1">
-        <doc xml:space="preserve">user readable description of the format</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-format.h"
+             line="225">user readable description of the format</doc>
         <type name="utf8" c:type="const gchar*"/>
       </field>
       <field name="flags" writable="1">
-        <doc xml:space="preserve">#GstAudioFormatFlags</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-format.h"
+             line="226">#GstAudioFormatFlags</doc>
         <type name="AudioFormatFlags" c:type="GstAudioFormatFlags"/>
       </field>
       <field name="endianness" writable="1">
-        <doc xml:space="preserve">the endianness</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-format.h"
+             line="227">the endianness</doc>
         <type name="gint" c:type="gint"/>
       </field>
       <field name="width" writable="1">
-        <doc xml:space="preserve">amount of bits used for one sample</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-format.h"
+             line="228">amount of bits used for one sample</doc>
         <type name="gint" c:type="gint"/>
       </field>
       <field name="depth" writable="1">
-        <doc xml:space="preserve">amount of valid bits in @width</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-format.h"
+             line="229">amount of valid bits in @width</doc>
         <type name="gint" c:type="gint"/>
       </field>
       <field name="silence" writable="1">
-        <doc xml:space="preserve">@width/8 bytes with 1 silent sample</doc>
-        <array zero-terminated="0" c:type="guint8" fixed-size="8">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-format.h"
+             line="230">@width/8 bytes with 1 silent sample</doc>
+        <array zero-terminated="0" fixed-size="8">
           <type name="guint8" c:type="guint8"/>
         </array>
       </field>
       <field name="unpack_format" writable="1">
-        <doc xml:space="preserve">the format of the unpacked samples</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-format.h"
+             line="231">the format of the unpacked samples</doc>
         <type name="AudioFormat" c:type="GstAudioFormat"/>
       </field>
       <field name="unpack_func" writable="1">
-        <doc xml:space="preserve">function to unpack samples</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-format.h"
+             line="232">function to unpack samples</doc>
         <type name="AudioFormatUnpack" c:type="GstAudioFormatUnpack"/>
       </field>
       <field name="pack_func" writable="1">
-        <doc xml:space="preserve">function to pack samples</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-format.h"
+             line="233">function to pack samples</doc>
         <type name="AudioFormatPack" c:type="GstAudioFormatPack"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
     </record>
     <callback name="AudioFormatPack" c:type="GstAudioFormatPack">
-      <doc xml:space="preserve">Packs @length samples from @src to the data array in format @info.
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/audio-format.h"
+           line="204">Packs @length samples from @src to the data array in format @info.
 The samples from source have each channel interleaved
 and will be packed into @data.</doc>
+      <source-position filename="gst-libs/gst/audio/audio-format.h"
+                       line="217"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="info" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstAudioFormatInfo</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-format.h"
+               line="206">a #GstAudioFormatInfo</doc>
           <type name="AudioFormatInfo" c:type="const GstAudioFormatInfo*"/>
         </parameter>
         <parameter name="flags" transfer-ownership="none">
-          <doc xml:space="preserve">#GstAudioPackFlags</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-format.h"
+               line="207">#GstAudioPackFlags</doc>
           <type name="AudioPackFlags" c:type="GstAudioPackFlags"/>
         </parameter>
         <parameter name="src" transfer-ownership="none">
-          <doc xml:space="preserve">a source array</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-format.h"
+               line="208">a source array</doc>
           <array zero-terminated="0" c:type="gconstpointer">
             <type name="guint8"/>
           </array>
         </parameter>
         <parameter name="data" transfer-ownership="none">
-          <doc xml:space="preserve">pointer to the destination
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-format.h"
+               line="209">pointer to the destination
   data</doc>
           <array zero-terminated="0" c:type="gpointer">
             <type name="guint8"/>
           </array>
         </parameter>
         <parameter name="length" transfer-ownership="none">
-          <doc xml:space="preserve">the amount of samples to pack.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-format.h"
+               line="211">the amount of samples to pack.</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
       </parameters>
     </callback>
     <callback name="AudioFormatUnpack" c:type="GstAudioFormatUnpack">
-      <doc xml:space="preserve">Unpacks @length samples from the given data of format @info.
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/audio-format.h"
+           line="188">Unpacks @length samples from the given data of format @info.
 The samples will be unpacked into @dest which each channel
 interleaved. @dest should at least be big enough to hold @length *
 channels * size(unpack_format) bytes.</doc>
+      <source-position filename="gst-libs/gst/audio/audio-format.h"
+                       line="201"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="info" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstAudioFormatInfo</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-format.h"
+               line="190">a #GstAudioFormatInfo</doc>
           <type name="AudioFormatInfo" c:type="const GstAudioFormatInfo*"/>
         </parameter>
         <parameter name="flags" transfer-ownership="none">
-          <doc xml:space="preserve">#GstAudioPackFlags</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-format.h"
+               line="191">#GstAudioPackFlags</doc>
           <type name="AudioPackFlags" c:type="GstAudioPackFlags"/>
         </parameter>
         <parameter name="dest" transfer-ownership="none">
-          <doc xml:space="preserve">a destination array</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-format.h"
+               line="192">a destination array</doc>
           <array zero-terminated="0" c:type="gpointer">
             <type name="guint8"/>
           </array>
         </parameter>
         <parameter name="data" transfer-ownership="none">
-          <doc xml:space="preserve">pointer to the audio data</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-format.h"
+               line="193">pointer to the audio data</doc>
           <array zero-terminated="0" c:type="gconstpointer">
             <type name="guint8"/>
           </array>
         </parameter>
         <parameter name="length" transfer-ownership="none">
-          <doc xml:space="preserve">the amount of samples to unpack.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-format.h"
+               line="194">the amount of samples to unpack.</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
       </parameters>
@@ -6076,142 +9276,209 @@ channels * size(unpack_format) bytes.</doc>
             glib:type-name="GstAudioInfo"
             glib:get-type="gst_audio_info_get_type"
             c:symbol-prefix="audio_info">
-      <doc xml:space="preserve">Information describing audio properties. This information can be filled
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/audio-info.h"
+           line="46">Information describing audio properties. This information can be filled
 in from GstCaps with gst_audio_info_from_caps().
 
 Use the provided macros to access the info in this structure.</doc>
+      <source-position filename="gst-libs/gst/audio/audio-info.h" line="73"/>
       <field name="finfo" writable="1">
-        <doc xml:space="preserve">the format info of the audio</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-info.h"
+             line="48">the format info of the audio</doc>
         <type name="AudioFormatInfo" c:type="const GstAudioFormatInfo*"/>
       </field>
       <field name="flags" writable="1">
-        <doc xml:space="preserve">additional audio flags</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-info.h"
+             line="49">additional audio flags</doc>
         <type name="AudioFlags" c:type="GstAudioFlags"/>
       </field>
       <field name="layout" writable="1">
-        <doc xml:space="preserve">audio layout</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-info.h"
+             line="50">audio layout</doc>
         <type name="AudioLayout" c:type="GstAudioLayout"/>
       </field>
       <field name="rate" writable="1">
-        <doc xml:space="preserve">the audio sample rate</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-info.h"
+             line="51">the audio sample rate</doc>
         <type name="gint" c:type="gint"/>
       </field>
       <field name="channels" writable="1">
-        <doc xml:space="preserve">the number of channels</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-info.h"
+             line="52">the number of channels</doc>
         <type name="gint" c:type="gint"/>
       </field>
       <field name="bpf" writable="1">
-        <doc xml:space="preserve">the number of bytes for one frame, this is the size of one
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-info.h"
+             line="53">the number of bytes for one frame, this is the size of one
         sample * @channels</doc>
         <type name="gint" c:type="gint"/>
       </field>
       <field name="position" writable="1">
-        <doc xml:space="preserve">the positions for each channel</doc>
-        <array zero-terminated="0"
-               c:type="GstAudioChannelPosition"
-               fixed-size="64">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-info.h"
+             line="55">the positions for each channel</doc>
+        <array zero-terminated="0" fixed-size="64">
           <type name="AudioChannelPosition" c:type="GstAudioChannelPosition"/>
         </array>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
       <constructor name="new" c:identifier="gst_audio_info_new">
-        <doc xml:space="preserve">Allocate a new #GstAudioInfo that is also initialized with
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-info.c"
+             line="83">Allocate a new #GstAudioInfo that is also initialized with
 gst_audio_info_init().</doc>
+        <source-position filename="gst-libs/gst/audio/audio-info.h"
+                         line="105"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new #GstAudioInfo. free with gst_audio_info_free().</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-info.c"
+               line="89">a new #GstAudioInfo. free with gst_audio_info_free().</doc>
           <type name="AudioInfo" c:type="GstAudioInfo*"/>
         </return-value>
       </constructor>
       <method name="convert" c:identifier="gst_audio_info_convert">
-        <doc xml:space="preserve">Converts among various #GstFormat types.  This function handles
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-info.c"
+             line="404">Converts among various #GstFormat types.  This function handles
 GST_FORMAT_BYTES, GST_FORMAT_TIME, and GST_FORMAT_DEFAULT.  For
 raw audio, GST_FORMAT_DEFAULT corresponds to audio frames.  This
 function can be used to handle pad queries of the type GST_QUERY_CONVERT.</doc>
+        <source-position filename="gst-libs/gst/audio/audio-info.h"
+                         line="128"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">TRUE if the conversion was successful.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-info.c"
+               line="417">TRUE if the conversion was successful.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="info" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-info.c"
+                 line="406">a #GstAudioInfo</doc>
             <type name="AudioInfo" c:type="const GstAudioInfo*"/>
           </instance-parameter>
           <parameter name="src_fmt" transfer-ownership="none">
-            <doc xml:space="preserve">#GstFormat of the @src_val</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-info.c"
+                 line="407">#GstFormat of the @src_val</doc>
             <type name="Gst.Format" c:type="GstFormat"/>
           </parameter>
           <parameter name="src_val" transfer-ownership="none">
-            <doc xml:space="preserve">value to convert</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-info.c"
+                 line="408">value to convert</doc>
             <type name="gint64" c:type="gint64"/>
           </parameter>
           <parameter name="dest_fmt" transfer-ownership="none">
-            <doc xml:space="preserve">#GstFormat of the @dest_val</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-info.c"
+                 line="409">#GstFormat of the @dest_val</doc>
             <type name="Gst.Format" c:type="GstFormat"/>
           </parameter>
           <parameter name="dest_val"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">pointer to destination value</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-info.c"
+                 line="410">pointer to destination value</doc>
             <type name="gint64" c:type="gint64*"/>
           </parameter>
         </parameters>
       </method>
       <method name="copy" c:identifier="gst_audio_info_copy">
-        <doc xml:space="preserve">Copy a GstAudioInfo structure.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-info.c"
+             line="53">Copy a GstAudioInfo structure.</doc>
+        <source-position filename="gst-libs/gst/audio/audio-info.h"
+                         line="111"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new #GstAudioInfo. free with gst_audio_info_free.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-info.c"
+               line="59">a new #GstAudioInfo. free with gst_audio_info_free.</doc>
           <type name="AudioInfo" c:type="GstAudioInfo*"/>
         </return-value>
         <parameters>
           <instance-parameter name="info" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-info.c"
+                 line="55">a #GstAudioInfo</doc>
             <type name="AudioInfo" c:type="const GstAudioInfo*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="free" c:identifier="gst_audio_info_free">
-        <doc xml:space="preserve">Free a GstAudioInfo structure previously allocated with gst_audio_info_new()
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-info.c"
+             line="67">Free a GstAudioInfo structure previously allocated with gst_audio_info_new()
 or gst_audio_info_copy().</doc>
+        <source-position filename="gst-libs/gst/audio/audio-info.h"
+                         line="114"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="info" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-info.c"
+                 line="69">a #GstAudioInfo</doc>
             <type name="AudioInfo" c:type="GstAudioInfo*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="from_caps" c:identifier="gst_audio_info_from_caps">
-        <doc xml:space="preserve">Parse @caps and update @info.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">TRUE if @caps could be parsed</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-info.c"
+             line="182">Parse @caps and update @info.</doc>
+        <source-position filename="gst-libs/gst/audio/audio-info.h"
+                         line="122"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-info.c"
+               line="189">TRUE if @caps could be parsed</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="info" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-info.c"
+                 line="184">a #GstAudioInfo</doc>
             <type name="AudioInfo" c:type="GstAudioInfo*"/>
           </instance-parameter>
           <parameter name="caps" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstCaps</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-info.c"
+                 line="185">a #GstCaps</doc>
             <type name="Gst.Caps" c:type="const GstCaps*"/>
           </parameter>
         </parameters>
       </method>
       <method name="init" c:identifier="gst_audio_info_init">
-        <doc xml:space="preserve">Initialize @info with default values.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-info.c"
+             line="102">Initialize @info with default values.</doc>
+        <source-position filename="gst-libs/gst/audio/audio-info.h"
+                         line="108"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="info" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-info.c"
+                 line="104">a #GstAudioInfo</doc>
             <type name="AudioInfo" c:type="GstAudioInfo*"/>
           </instance-parameter>
         </parameters>
@@ -6219,51 +9486,75 @@ or gst_audio_info_copy().</doc>
       <method name="is_equal"
               c:identifier="gst_audio_info_is_equal"
               version="1.2">
-        <doc xml:space="preserve">Compares two #GstAudioInfo and returns whether they are equal or not</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if @info and @other are equal, else %FALSE.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-info.c"
+             line="497">Compares two #GstAudioInfo and returns whether they are equal or not</doc>
+        <source-position filename="gst-libs/gst/audio/audio-info.h"
+                         line="133"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-info.c"
+               line="504">%TRUE if @info and @other are equal, else %FALSE.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="info" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-info.c"
+                 line="499">a #GstAudioInfo</doc>
             <type name="AudioInfo" c:type="const GstAudioInfo*"/>
           </instance-parameter>
           <parameter name="other" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-info.c"
+                 line="500">a #GstAudioInfo</doc>
             <type name="AudioInfo" c:type="const GstAudioInfo*"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_format" c:identifier="gst_audio_info_set_format">
-        <doc xml:space="preserve">Set the default info for the audio info of @format and @rate and @channels.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-info.c"
+             line="118">Set the default info for the audio info of @format and @rate and @channels.
 
 Note: This initializes @info first, no values are preserved.</doc>
+        <source-position filename="gst-libs/gst/audio/audio-info.h"
+                         line="117"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="info" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-info.c"
+                 line="120">a #GstAudioInfo</doc>
             <type name="AudioInfo" c:type="GstAudioInfo*"/>
           </instance-parameter>
           <parameter name="format" transfer-ownership="none">
-            <doc xml:space="preserve">the format</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-info.c"
+                 line="121">the format</doc>
             <type name="AudioFormat" c:type="GstAudioFormat"/>
           </parameter>
           <parameter name="rate" transfer-ownership="none">
-            <doc xml:space="preserve">the samplerate</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-info.c"
+                 line="122">the samplerate</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="channels" transfer-ownership="none">
-            <doc xml:space="preserve">the number of channels</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-info.c"
+                 line="123">the number of channels</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="position"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">the channel positions</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-info.c"
+                 line="124">the channel positions</doc>
             <array zero-terminated="0"
                    c:type="const GstAudioChannelPosition*"
                    fixed-size="64">
@@ -6274,15 +9565,23 @@ Note: This initializes @info first, no values are preserved.</doc>
         </parameters>
       </method>
       <method name="to_caps" c:identifier="gst_audio_info_to_caps">
-        <doc xml:space="preserve">Convert the values of @info into a #GstCaps.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-info.c"
+             line="323">Convert the values of @info into a #GstCaps.</doc>
+        <source-position filename="gst-libs/gst/audio/audio-info.h"
+                         line="125"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the new #GstCaps containing the
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-info.c"
+               line="329">the new #GstCaps containing the
          info of @info.</doc>
           <type name="Gst.Caps" c:type="GstCaps*"/>
         </return-value>
         <parameters>
           <instance-parameter name="info" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-info.c"
+                 line="325">a #GstAudioInfo</doc>
             <type name="AudioInfo" c:type="const GstAudioInfo*"/>
           </instance-parameter>
         </parameters>
@@ -6292,53 +9591,73 @@ Note: This initializes @info first, no values are preserved.</doc>
                  glib:type-name="GstAudioLayout"
                  glib:get-type="gst_audio_layout_get_type"
                  c:type="GstAudioLayout">
-      <doc xml:space="preserve">Layout of the audio samples for the different channels.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/audio-format.h"
+           line="391">Layout of the audio samples for the different channels.</doc>
       <member name="interleaved"
               value="0"
               c:identifier="GST_AUDIO_LAYOUT_INTERLEAVED"
               glib:nick="interleaved">
-        <doc xml:space="preserve">interleaved audio</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-format.h"
+             line="393">interleaved audio</doc>
       </member>
       <member name="non_interleaved"
               value="1"
               c:identifier="GST_AUDIO_LAYOUT_NON_INTERLEAVED"
               glib:nick="non-interleaved">
-        <doc xml:space="preserve">non-interleaved audio</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-format.h"
+             line="394">non-interleaved audio</doc>
       </member>
     </enumeration>
     <record name="AudioMeta" c:type="GstAudioMeta" version="1.16">
-      <doc xml:space="preserve">#GstAudioDownmixMeta defines an audio downmix matrix to be send along with
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/gstaudiometa.c"
+           line="20">#GstAudioDownmixMeta defines an audio downmix matrix to be send along with
 audio buffers. These functions in this module help to create and attach the
 meta as well as extracting it.</doc>
+      <source-position filename="gst-libs/gst/audio/gstaudiometa.h"
+                       line="185"/>
       <field name="meta" writable="1">
-        <doc xml:space="preserve">parent #GstMeta</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiometa.h"
+             line="136">parent #GstMeta</doc>
         <type name="Gst.Meta" c:type="GstMeta"/>
       </field>
       <field name="info" writable="1">
-        <doc xml:space="preserve">the audio properties of the buffer</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiometa.h"
+             line="137">the audio properties of the buffer</doc>
         <type name="AudioInfo" c:type="GstAudioInfo"/>
       </field>
       <field name="samples" writable="1">
-        <doc xml:space="preserve">the number of valid samples in the buffer</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiometa.h"
+             line="138">the number of valid samples in the buffer</doc>
         <type name="gsize" c:type="gsize"/>
       </field>
       <field name="offsets" writable="1">
-        <doc xml:space="preserve">the offsets (in bytes) where each channel plane starts in the
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiometa.h"
+             line="139">the offsets (in bytes) where each channel plane starts in the
   buffer or %NULL if the buffer has interleaved layout; if not %NULL, this
   is guaranteed to be an array of @info.channels elements</doc>
         <type name="gsize" c:type="gsize*"/>
       </field>
       <field name="priv_offsets_arr" readable="0" private="1">
-        <array zero-terminated="0" c:type="gsize" fixed-size="8">
+        <array zero-terminated="0" fixed-size="8">
           <type name="gsize" c:type="gsize"/>
         </array>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
       <function name="get_info" c:identifier="gst_audio_meta_get_info">
+        <source-position filename="gst-libs/gst/audio/gstaudiometa.h"
+                         line="191"/>
         <return-value transfer-ownership="none">
           <type name="Gst.MetaInfo" c:type="const GstMetaInfo*"/>
         </return-value>
@@ -6348,88 +9667,122 @@ meta as well as extracting it.</doc>
                  glib:type-name="GstAudioNoiseShapingMethod"
                  glib:get-type="gst_audio_noise_shaping_method_get_type"
                  c:type="GstAudioNoiseShapingMethod">
-      <doc xml:space="preserve">Set of available noise shaping methods</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/audio-quantize.h"
+           line="49">Set of available noise shaping methods</doc>
       <member name="none"
               value="0"
               c:identifier="GST_AUDIO_NOISE_SHAPING_NONE"
               glib:nick="none">
-        <doc xml:space="preserve">No noise shaping (default)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-quantize.h"
+             line="51">No noise shaping (default)</doc>
       </member>
       <member name="error_feedback"
               value="1"
               c:identifier="GST_AUDIO_NOISE_SHAPING_ERROR_FEEDBACK"
               glib:nick="error-feedback">
-        <doc xml:space="preserve">Error feedback</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-quantize.h"
+             line="52">Error feedback</doc>
       </member>
       <member name="simple"
               value="2"
               c:identifier="GST_AUDIO_NOISE_SHAPING_SIMPLE"
               glib:nick="simple">
-        <doc xml:space="preserve">Simple 2-pole noise shaping</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-quantize.h"
+             line="53">Simple 2-pole noise shaping</doc>
       </member>
       <member name="medium"
               value="3"
               c:identifier="GST_AUDIO_NOISE_SHAPING_MEDIUM"
               glib:nick="medium">
-        <doc xml:space="preserve">Medium 5-pole noise shaping</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-quantize.h"
+             line="54">Medium 5-pole noise shaping</doc>
       </member>
       <member name="high"
               value="4"
               c:identifier="GST_AUDIO_NOISE_SHAPING_HIGH"
               glib:nick="high">
-        <doc xml:space="preserve">High 8-pole noise shaping</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-quantize.h"
+             line="55">High 8-pole noise shaping</doc>
       </member>
     </enumeration>
     <bitfield name="AudioPackFlags"
               glib:type-name="GstAudioPackFlags"
               glib:get-type="gst_audio_pack_flags_get_type"
               c:type="GstAudioPackFlags">
-      <doc xml:space="preserve">The different flags that can be used when packing and unpacking.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/audio-format.h"
+           line="171">The different flags that can be used when packing and unpacking.</doc>
       <member name="none"
               value="0"
               c:identifier="GST_AUDIO_PACK_FLAG_NONE"
               glib:nick="none">
-        <doc xml:space="preserve">No flag</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-format.h"
+             line="173">No flag</doc>
       </member>
       <member name="truncate_range"
               value="1"
               c:identifier="GST_AUDIO_PACK_FLAG_TRUNCATE_RANGE"
               glib:nick="truncate-range">
-        <doc xml:space="preserve">When the source has a smaller depth
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-format.h"
+             line="174">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
+  to 0. This is likely slightly 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.</doc>
       </member>
     </bitfield>
     <record name="AudioQuantize" c:type="GstAudioQuantize" disguised="1">
+      <source-position filename="gst-libs/gst/audio/audio-quantize.h"
+                       line="82"/>
       <method name="free" c:identifier="gst_audio_quantize_free">
-        <doc xml:space="preserve">Free a #GstAudioQuantize.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-quantize.c"
+             line="470">Free a #GstAudioQuantize.</doc>
+        <source-position filename="gst-libs/gst/audio/audio-quantize.h"
+                         line="93"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="quant" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioQuantize</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-quantize.c"
+                 line="472">a #GstAudioQuantize</doc>
             <type name="AudioQuantize" c:type="GstAudioQuantize*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="reset" c:identifier="gst_audio_quantize_reset">
-        <doc xml:space="preserve">Reset @quant to the state is was when created, clearing any
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-quantize.c"
+             line="489">Reset @quant to the state is was when created, clearing any
 history it might have.</doc>
+        <source-position filename="gst-libs/gst/audio/audio-quantize.h"
+                         line="96"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="quant" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioQuantize</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-quantize.c"
+                 line="491">a #GstAudioQuantize</doc>
             <type name="AudioQuantize" c:type="GstAudioQuantize*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="samples" c:identifier="gst_audio_quantize_samples">
-        <doc xml:space="preserve">Perform quantization on @samples in @in and write the result to @out.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-quantize.c"
+             line="504">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.
@@ -6439,30 +9792,40 @@ 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.</doc>
+        <source-position filename="gst-libs/gst/audio/audio-quantize.h"
+                         line="99"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="quant" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioQuantize</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-quantize.c"
+                 line="506">a #GstAudioQuantize</doc>
             <type name="AudioQuantize" c:type="GstAudioQuantize*"/>
           </instance-parameter>
           <parameter name="in"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">input samples</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-quantize.c"
+                 line="507">input samples</doc>
             <type name="gpointer" c:type="const gpointer*"/>
           </parameter>
           <parameter name="out"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">output samples</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-quantize.c"
+                 line="508">output samples</doc>
             <type name="gpointer" c:type="gpointer*"/>
           </parameter>
           <parameter name="samples" transfer-ownership="none">
-            <doc xml:space="preserve">number of samples</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-quantize.c"
+                 line="509">number of samples</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
@@ -6470,41 +9833,59 @@ modified in-place.</doc>
       <function name="new"
                 c:identifier="gst_audio_quantize_new"
                 introspectable="0">
-        <doc xml:space="preserve">Create a new quantizer object with the given parameters.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-quantize.c"
+             line="413">Create a new quantizer object with the given parameters.
 
 Output samples will be quantized to a multiple of @quantizer. Better
 performance is achieved when @quantizer is a power of 2.
 
 Dithering and noise-shaping can be performed during quantization with
 the @dither and @ns parameters.</doc>
+        <source-position filename="gst-libs/gst/audio/audio-quantize.h"
+                         line="85"/>
         <return-value>
-          <doc xml:space="preserve">a new #GstAudioQuantize. Free with gst_audio_quantize_free().</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-quantize.c"
+               line="430">a new #GstAudioQuantize. Free with gst_audio_quantize_free().</doc>
           <type name="AudioQuantize" c:type="GstAudioQuantize*"/>
         </return-value>
         <parameters>
           <parameter name="dither" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioDitherMethod</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-quantize.c"
+                 line="415">a #GstAudioDitherMethod</doc>
             <type name="AudioDitherMethod" c:type="GstAudioDitherMethod"/>
           </parameter>
           <parameter name="ns" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioNoiseShapingMethod</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-quantize.c"
+                 line="416">a #GstAudioNoiseShapingMethod</doc>
             <type name="AudioNoiseShapingMethod"
                   c:type="GstAudioNoiseShapingMethod"/>
           </parameter>
           <parameter name="flags" transfer-ownership="none">
-            <doc xml:space="preserve">#GstAudioQuantizeFlags</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-quantize.c"
+                 line="417">#GstAudioQuantizeFlags</doc>
             <type name="AudioQuantizeFlags" c:type="GstAudioQuantizeFlags"/>
           </parameter>
           <parameter name="format" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstAudioFormat of the samples</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-quantize.c"
+                 line="418">the #GstAudioFormat of the samples</doc>
             <type name="AudioFormat" c:type="GstAudioFormat"/>
           </parameter>
           <parameter name="channels" transfer-ownership="none">
-            <doc xml:space="preserve">the amount of channels in the samples</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-quantize.c"
+                 line="419">the amount of channels in the samples</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="quantizer" transfer-ownership="none">
-            <doc xml:space="preserve">the quantizer to use</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-quantize.c"
+                 line="420">the quantizer to use</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
@@ -6514,95 +9895,141 @@ the @dither and @ns parameters.</doc>
               glib:type-name="GstAudioQuantizeFlags"
               glib:get-type="gst_audio_quantize_flags_get_type"
               c:type="GstAudioQuantizeFlags">
-      <doc xml:space="preserve">Extra flags that can be passed to gst_audio_quantize_new()</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/audio-quantize.h"
+           line="68">Extra flags that can be passed to gst_audio_quantize_new()</doc>
       <member name="none"
               value="0"
               c:identifier="GST_AUDIO_QUANTIZE_FLAG_NONE"
               glib:nick="none">
-        <doc xml:space="preserve">no flags</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-quantize.h"
+             line="70">no flags</doc>
       </member>
       <member name="non_interleaved"
               value="1"
               c:identifier="GST_AUDIO_QUANTIZE_FLAG_NON_INTERLEAVED"
               glib:nick="non-interleaved">
-        <doc xml:space="preserve">samples are non-interleaved</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-quantize.h"
+             line="71">samples are non-interleaved</doc>
       </member>
     </bitfield>
     <record name="AudioResampler" c:type="GstAudioResampler" disguised="1">
-      <doc xml:space="preserve">#GstAudioResampler is a structure which holds the information
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/audio-resampler.c"
+           line="43">#GstAudioResampler is a structure which holds the information
 required to perform various kinds of resampling filtering.</doc>
+      <source-position filename="gst-libs/gst/audio/audio-resampler.h"
+                       line="28"/>
       <method name="free"
               c:identifier="gst_audio_resampler_free"
               version="1.6">
-        <doc xml:space="preserve">Free a previously allocated #GstAudioResampler @resampler.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-resampler.c"
+             line="1620">Free a previously allocated #GstAudioResampler @resampler.</doc>
+        <source-position filename="gst-libs/gst/audio/audio-resampler.h"
+                         line="218"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="resampler" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioResampler</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-resampler.c"
+                 line="1622">a #GstAudioResampler</doc>
             <type name="AudioResampler" c:type="GstAudioResampler*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_in_frames"
               c:identifier="gst_audio_resampler_get_in_frames">
-        <doc xml:space="preserve">Get the number of input frames that would currently be needed
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-resampler.c"
+             line="1682">Get the number of input frames that would currently be needed
 to produce @out_frames from @resampler.</doc>
+        <source-position filename="gst-libs/gst/audio/audio-resampler.h"
+                         line="233"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The number of input frames needed for producing
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-resampler.c"
+               line="1690">The number of input frames needed for producing
 @out_frames of data from @resampler.</doc>
           <type name="gsize" c:type="gsize"/>
         </return-value>
         <parameters>
           <instance-parameter name="resampler" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioResampler</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-resampler.c"
+                 line="1684">a #GstAudioResampler</doc>
             <type name="AudioResampler" c:type="GstAudioResampler*"/>
           </instance-parameter>
           <parameter name="out_frames" transfer-ownership="none">
-            <doc xml:space="preserve">number of input frames</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-resampler.c"
+                 line="1685">number of input frames</doc>
             <type name="gsize" c:type="gsize"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_max_latency"
               c:identifier="gst_audio_resampler_get_max_latency">
-        <doc xml:space="preserve">Get the maximum number of input samples that the resampler would
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-resampler.c"
+             line="1709">Get the maximum number of input samples that the resampler would
 need before producing output.</doc>
+        <source-position filename="gst-libs/gst/audio/audio-resampler.h"
+                         line="237"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the latency of @resampler as expressed in the number of
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-resampler.c"
+               line="1716">the latency of @resampler as expressed in the number of
 frames.</doc>
           <type name="gsize" c:type="gsize"/>
         </return-value>
         <parameters>
           <instance-parameter name="resampler" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioResampler</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-resampler.c"
+                 line="1711">a #GstAudioResampler</doc>
             <type name="AudioResampler" c:type="GstAudioResampler*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_out_frames"
               c:identifier="gst_audio_resampler_get_out_frames">
-        <doc xml:space="preserve">Get the number of output frames that would be currently available when
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-resampler.c"
+             line="1643">Get the number of output frames that would be currently available when
 @in_frames are given to @resampler.</doc>
+        <source-position filename="gst-libs/gst/audio/audio-resampler.h"
+                         line="229"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The number of frames that would be availabe after giving
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-resampler.c"
+               line="1651">The number of frames that would be available after giving
 @in_frames as input to @resampler.</doc>
           <type name="gsize" c:type="gsize"/>
         </return-value>
         <parameters>
           <instance-parameter name="resampler" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioResampler</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-resampler.c"
+                 line="1645">a #GstAudioResampler</doc>
             <type name="AudioResampler" c:type="GstAudioResampler*"/>
           </instance-parameter>
           <parameter name="in_frames" transfer-ownership="none">
-            <doc xml:space="preserve">number of input frames</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-resampler.c"
+                 line="1646">number of input frames</doc>
             <type name="gsize" c:type="gsize"/>
           </parameter>
         </parameters>
       </method>
       <method name="resample" c:identifier="gst_audio_resampler_resample">
-        <doc xml:space="preserve">Perform resampling on @in_frames frames in @in and write @out_frames to @out.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-resampler.c"
+             line="1727">Perform resampling on @in_frames frames in @in and write @out_frames 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.
@@ -6617,147 +10044,213 @@ This function always produces @out_frames of output and consumes @in_frames of
 input. Use gst_audio_resampler_get_out_frames() and
 gst_audio_resampler_get_in_frames() to make sure @in_frames and @out_frames
 are matching and @in and @out point to enough memory.</doc>
+        <source-position filename="gst-libs/gst/audio/audio-resampler.h"
+                         line="240"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="resampler" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioResampler</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-resampler.c"
+                 line="1729">a #GstAudioResampler</doc>
             <type name="AudioResampler" c:type="GstAudioResampler*"/>
           </instance-parameter>
           <parameter name="in"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">input samples</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-resampler.c"
+                 line="1730">input samples</doc>
             <type name="gpointer" c:type="gpointer*"/>
           </parameter>
           <parameter name="in_frames" transfer-ownership="none">
-            <doc xml:space="preserve">number of input frames</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-resampler.c"
+                 line="1731">number of input frames</doc>
             <type name="gsize" c:type="gsize"/>
           </parameter>
           <parameter name="out"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">output samples</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-resampler.c"
+                 line="1732">output samples</doc>
             <type name="gpointer" c:type="gpointer*"/>
           </parameter>
           <parameter name="out_frames" transfer-ownership="none">
-            <doc xml:space="preserve">number of output frames</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-resampler.c"
+                 line="1733">number of output frames</doc>
             <type name="gsize" c:type="gsize"/>
           </parameter>
         </parameters>
       </method>
       <method name="reset" c:identifier="gst_audio_resampler_reset">
-        <doc xml:space="preserve">Reset @resampler to the state it was when it was first created, discarding
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-resampler.c"
+             line="1462">Reset @resampler to the state it was when it was first created, discarding
 all sample history.</doc>
+        <source-position filename="gst-libs/gst/audio/audio-resampler.h"
+                         line="221"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="resampler" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioResampler</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-resampler.c"
+                 line="1464">a #GstAudioResampler</doc>
             <type name="AudioResampler" c:type="GstAudioResampler*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="update" c:identifier="gst_audio_resampler_update">
-        <doc xml:space="preserve">Update the resampler parameters for @resampler. This function should
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-resampler.c"
+             line="1490">Update the resampler parameters for @resampler. This function should
 not be called concurrently with any other function on @resampler.
 
 When @in_rate or @out_rate is 0, its value is unchanged.
 
 When @options is %NULL, the previously configured options are reused.</doc>
+        <source-position filename="gst-libs/gst/audio/audio-resampler.h"
+                         line="224"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the new parameters could be set</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-resampler.c"
+               line="1504">%TRUE if the new parameters could be set</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="resampler" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioResampler</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-resampler.c"
+                 line="1492">a #GstAudioResampler</doc>
             <type name="AudioResampler" c:type="GstAudioResampler*"/>
           </instance-parameter>
           <parameter name="in_rate" transfer-ownership="none">
-            <doc xml:space="preserve">new input rate</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-resampler.c"
+                 line="1493">new input rate</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="out_rate" transfer-ownership="none">
-            <doc xml:space="preserve">new output rate</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-resampler.c"
+                 line="1494">new output rate</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="options" transfer-ownership="none">
-            <doc xml:space="preserve">new options or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-resampler.c"
+                 line="1495">new options or %NULL</doc>
             <type name="Gst.Structure" c:type="GstStructure*"/>
           </parameter>
         </parameters>
       </method>
       <function name="new" c:identifier="gst_audio_resampler_new">
-        <doc xml:space="preserve">Make a new resampler.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-resampler.c"
+             line="1333">Make a new resampler.</doc>
+        <source-position filename="gst-libs/gst/audio/audio-resampler.h"
+                         line="211"/>
         <return-value transfer-ownership="full" skip="1">
-          <doc xml:space="preserve">The new #GstAudioResampler, or
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-resampler.c"
+               line="1345">The new #GstAudioResampler, or
 %NULL on failure.</doc>
           <type name="AudioResampler" c:type="GstAudioResampler*"/>
         </return-value>
         <parameters>
           <parameter name="method" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioResamplerMethod</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-resampler.c"
+                 line="1335">a #GstAudioResamplerMethod</doc>
             <type name="AudioResamplerMethod"
                   c:type="GstAudioResamplerMethod"/>
           </parameter>
           <parameter name="flags" transfer-ownership="none">
-            <doc xml:space="preserve">#GstAudioResamplerFlags</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-resampler.c"
+                 line="1336">#GstAudioResamplerFlags</doc>
             <type name="AudioResamplerFlags" c:type="GstAudioResamplerFlags"/>
           </parameter>
           <parameter name="format" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstAudioFormat</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-resampler.c"
+                 line="1337">the #GstAudioFormat</doc>
             <type name="AudioFormat" c:type="GstAudioFormat"/>
           </parameter>
           <parameter name="channels" transfer-ownership="none">
-            <doc xml:space="preserve">the number of channels</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-resampler.c"
+                 line="1338">the number of channels</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="in_rate" transfer-ownership="none">
-            <doc xml:space="preserve">input rate</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-resampler.c"
+                 line="1339">input rate</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="out_rate" transfer-ownership="none">
-            <doc xml:space="preserve">output rate</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-resampler.c"
+                 line="1340">output rate</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="options" transfer-ownership="none">
-            <doc xml:space="preserve">extra options</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-resampler.c"
+                 line="1341">extra options</doc>
             <type name="Gst.Structure" c:type="GstStructure*"/>
           </parameter>
         </parameters>
       </function>
       <function name="options_set_quality"
                 c:identifier="gst_audio_resampler_options_set_quality">
-        <doc xml:space="preserve">Set the parameters for resampling from @in_rate to @out_rate using @method
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-resampler.c"
+             line="1269">Set the parameters for resampling from @in_rate to @out_rate using @method
 for @quality in @options.</doc>
+        <source-position filename="gst-libs/gst/audio/audio-resampler.h"
+                         line="205"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <parameter name="method" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioResamplerMethod</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-resampler.c"
+                 line="1271">a #GstAudioResamplerMethod</doc>
             <type name="AudioResamplerMethod"
                   c:type="GstAudioResamplerMethod"/>
           </parameter>
           <parameter name="quality" transfer-ownership="none">
-            <doc xml:space="preserve">the quality</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-resampler.c"
+                 line="1272">the quality</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="in_rate" transfer-ownership="none">
-            <doc xml:space="preserve">the input rate</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-resampler.c"
+                 line="1273">the input rate</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="out_rate" transfer-ownership="none">
-            <doc xml:space="preserve">the output rate</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-resampler.c"
+                 line="1274">the output rate</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="options" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstStructure</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/audio-resampler.c"
+                 line="1275">a #GstStructure</doc>
             <type name="Gst.Structure" c:type="GstStructure*"/>
           </parameter>
         </parameters>
@@ -6767,38 +10260,50 @@ for @quality in @options.</doc>
                  glib:type-name="GstAudioResamplerFilterInterpolation"
                  glib:get-type="gst_audio_resampler_filter_interpolation_get_type"
                  c:type="GstAudioResamplerFilterInterpolation">
-      <doc xml:space="preserve">The different filter interpolation methods.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/audio-resampler.h"
+           line="116">The different filter interpolation methods.</doc>
       <member name="none"
               value="0"
               c:identifier="GST_AUDIO_RESAMPLER_FILTER_INTERPOLATION_NONE"
               glib:nick="none">
-        <doc xml:space="preserve">no interpolation</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-resampler.h"
+             line="118">no interpolation</doc>
       </member>
       <member name="linear"
               value="1"
               c:identifier="GST_AUDIO_RESAMPLER_FILTER_INTERPOLATION_LINEAR"
               glib:nick="linear">
-        <doc xml:space="preserve">linear interpolation of the
-  filter coeficients.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-resampler.h"
+             line="119">linear interpolation of the
+  filter coefficients.</doc>
       </member>
       <member name="cubic"
               value="2"
               c:identifier="GST_AUDIO_RESAMPLER_FILTER_INTERPOLATION_CUBIC"
               glib:nick="cubic">
-        <doc xml:space="preserve">cubic interpolation of the
-  filter coeficients.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-resampler.h"
+             line="121">cubic interpolation of the
+  filter coefficients.</doc>
       </member>
     </enumeration>
     <enumeration name="AudioResamplerFilterMode"
                  glib:type-name="GstAudioResamplerFilterMode"
                  glib:get-type="gst_audio_resampler_filter_mode_get_type"
                  c:type="GstAudioResamplerFilterMode">
-      <doc xml:space="preserve">Select for the filter tables should be set up.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/audio-resampler.h"
+           line="82">Select for the filter tables should be set up.</doc>
       <member name="interpolated"
               value="0"
               c:identifier="GST_AUDIO_RESAMPLER_FILTER_MODE_INTERPOLATED"
               glib:nick="interpolated">
-        <doc xml:space="preserve">Use interpolated filter tables. This
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-resampler.h"
+             line="84">Use interpolated filter tables. This
     uses less memory but more CPU and is slightly less accurate but it allows for more
     efficient variable rate resampling with gst_audio_resampler_update().</doc>
       </member>
@@ -6806,14 +10311,18 @@ for @quality in @options.</doc>
               value="1"
               c:identifier="GST_AUDIO_RESAMPLER_FILTER_MODE_FULL"
               glib:nick="full">
-        <doc xml:space="preserve">Use full filter table. This uses more memory
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-resampler.h"
+             line="87">Use full filter table. This uses more memory
     but less CPU.</doc>
       </member>
       <member name="auto"
               value="2"
               c:identifier="GST_AUDIO_RESAMPLER_FILTER_MODE_AUTO"
               glib:nick="auto">
-        <doc xml:space="preserve">Automatically choose between interpolated
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-resampler.h"
+             line="89">Automatically choose between interpolated
     and full filter tables.</doc>
       </member>
     </enumeration>
@@ -6821,18 +10330,24 @@ for @quality in @options.</doc>
               glib:type-name="GstAudioResamplerFlags"
               glib:get-type="gst_audio_resampler_flags_get_type"
               c:type="GstAudioResamplerFlags">
-      <doc xml:space="preserve">Different resampler flags.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/audio-resampler.h"
+           line="178">Different resampler flags.</doc>
       <member name="none"
               value="0"
               c:identifier="GST_AUDIO_RESAMPLER_FLAG_NONE"
               glib:nick="none">
-        <doc xml:space="preserve">no flags</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-resampler.h"
+             line="180">no flags</doc>
       </member>
       <member name="non_interleaved_in"
               value="1"
               c:identifier="GST_AUDIO_RESAMPLER_FLAG_NON_INTERLEAVED_IN"
               glib:nick="non-interleaved-in">
-        <doc xml:space="preserve">input samples are non-interleaved.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-resampler.h"
+             line="181">input samples are non-interleaved.
    an array of blocks of samples, one for each channel, should be passed to the
    resample function.</doc>
       </member>
@@ -6840,7 +10355,9 @@ for @quality in @options.</doc>
               value="2"
               c:identifier="GST_AUDIO_RESAMPLER_FLAG_NON_INTERLEAVED_OUT"
               glib:nick="non-interleaved-out">
-        <doc xml:space="preserve">output samples are non-interleaved.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-resampler.h"
+             line="184">output samples are non-interleaved.
    an array of blocks of samples, one for each channel, should be passed to the
    resample function.</doc>
       </member>
@@ -6848,7 +10365,9 @@ for @quality in @options.</doc>
               value="4"
               c:identifier="GST_AUDIO_RESAMPLER_FLAG_VARIABLE_RATE"
               glib:nick="variable-rate">
-        <doc xml:space="preserve">optimize for dynamic updates of the sample
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-resampler.h"
+             line="187">optimize for dynamic updates of the sample
    rates with gst_audio_resampler_update(). This will select an interpolating filter
    when #GST_AUDIO_RESAMPLER_FILTER_MODE_AUTO is configured.</doc>
       </member>
@@ -6858,38 +10377,50 @@ for @quality in @options.</doc>
                  glib:type-name="GstAudioResamplerMethod"
                  glib:get-type="gst_audio_resampler_method_get_type"
                  c:type="GstAudioResamplerMethod">
-      <doc xml:space="preserve">Different subsampling and upsampling methods</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/audio-resampler.h"
+           line="156">Different subsampling and upsampling methods</doc>
       <member name="nearest"
               value="0"
               c:identifier="GST_AUDIO_RESAMPLER_METHOD_NEAREST"
               glib:nick="nearest">
-        <doc xml:space="preserve">Duplicates the samples when
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-resampler.h"
+             line="158">Duplicates the samples when
    upsampling and drops when downsampling</doc>
       </member>
       <member name="linear"
               value="1"
               c:identifier="GST_AUDIO_RESAMPLER_METHOD_LINEAR"
               glib:nick="linear">
-        <doc xml:space="preserve">Uses linear interpolation to reconstruct
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-resampler.h"
+             line="160">Uses linear interpolation to reconstruct
    missing samples and averaging to downsample</doc>
       </member>
       <member name="cubic"
               value="2"
               c:identifier="GST_AUDIO_RESAMPLER_METHOD_CUBIC"
               glib:nick="cubic">
-        <doc xml:space="preserve">Uses cubic interpolation</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-resampler.h"
+             line="162">Uses cubic interpolation</doc>
       </member>
       <member name="blackman_nuttall"
               value="3"
               c:identifier="GST_AUDIO_RESAMPLER_METHOD_BLACKMAN_NUTTALL"
               glib:nick="blackman-nuttall">
-        <doc xml:space="preserve">Uses Blackman-Nuttall windowed sinc interpolation</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-resampler.h"
+             line="163">Uses Blackman-Nuttall windowed sinc interpolation</doc>
       </member>
       <member name="kaiser"
               value="4"
               c:identifier="GST_AUDIO_RESAMPLER_METHOD_KAISER"
               glib:nick="kaiser">
-        <doc xml:space="preserve">Uses Kaiser windowed sinc interpolation</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-resampler.h"
+             line="164">Uses Kaiser windowed sinc interpolation</doc>
       </member>
     </enumeration>
     <class name="AudioRingBuffer"
@@ -6900,7 +10431,9 @@ for @quality in @options.</doc>
            glib:type-name="GstAudioRingBuffer"
            glib:get-type="gst_audio_ring_buffer_get_type"
            glib:type-struct="AudioRingBufferClass">
-      <doc xml:space="preserve">This object is the base class for audio ringbuffers used by the base
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+           line="20">This object is the base class for audio ringbuffers used by the base
 audio source and sink classes.
 
 The ringbuffer abstracts a circular buffer of data. One reader and
@@ -6908,123 +10441,183 @@ one writer can operate on the data from different threads in a lockfree
 manner. The base class is sufficiently flexible to be used as an
 abstraction for DMA based ringbuffers as well as a pure software
 implementations.</doc>
+      <source-position filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+                       line="271"/>
       <function name="debug_spec_buff"
                 c:identifier="gst_audio_ring_buffer_debug_spec_buff">
-        <doc xml:space="preserve">Print debug info about the buffer sized in @spec to the debug log.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+             line="169">Print debug info about the buffer sized in @spec to the debug log.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+                         line="296"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <parameter name="spec" transfer-ownership="none">
-            <doc xml:space="preserve">the spec to debug</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="171">the spec to debug</doc>
             <type name="AudioRingBufferSpec" c:type="GstAudioRingBufferSpec*"/>
           </parameter>
         </parameters>
       </function>
       <function name="debug_spec_caps"
                 c:identifier="gst_audio_ring_buffer_debug_spec_caps">
-        <doc xml:space="preserve">Print debug info about the parsed caps in @spec to the debug log.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+             line="139">Print debug info about the parsed caps in @spec to the debug log.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+                         line="293"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <parameter name="spec" transfer-ownership="none">
-            <doc xml:space="preserve">the spec to debug</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="141">the spec to debug</doc>
             <type name="AudioRingBufferSpec" c:type="GstAudioRingBufferSpec*"/>
           </parameter>
         </parameters>
       </function>
       <function name="parse_caps"
                 c:identifier="gst_audio_ring_buffer_parse_caps">
-        <doc xml:space="preserve">Parse @caps into @spec.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">TRUE if the caps could be parsed.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+             line="193">Parse @caps into @spec.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+                         line="290"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+               line="200">TRUE if the caps could be parsed.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <parameter name="spec" transfer-ownership="none">
-            <doc xml:space="preserve">a spec</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="195">a spec</doc>
             <type name="AudioRingBufferSpec" c:type="GstAudioRingBufferSpec*"/>
           </parameter>
           <parameter name="caps" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstCaps</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="196">a #GstCaps</doc>
             <type name="Gst.Caps" c:type="GstCaps*"/>
           </parameter>
         </parameters>
       </function>
       <virtual-method name="acquire" invoker="acquire">
-        <doc xml:space="preserve">Allocate the resources for the ringbuffer. This function fills
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+             line="588">Allocate the resources for the ringbuffer. This function fills
 in the data pointer of the ring buffer with a valid #GstBuffer
 to which samples can be written.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+                         line="249"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">TRUE if the device could be acquired, FALSE on error.
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+               line="597">TRUE if the device could be acquired, FALSE on error.
 
 MT safe.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="buf" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstAudioRingBuffer to acquire</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="590">the #GstAudioRingBuffer to acquire</doc>
             <type name="AudioRingBuffer" c:type="GstAudioRingBuffer*"/>
           </instance-parameter>
           <parameter name="spec" transfer-ownership="none">
-            <doc xml:space="preserve">the specs of the buffer</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="591">the specs of the buffer</doc>
             <type name="AudioRingBufferSpec" c:type="GstAudioRingBufferSpec*"/>
           </parameter>
         </parameters>
       </virtual-method>
       <virtual-method name="activate" invoker="activate">
-        <doc xml:space="preserve">Activate @buf to start or stop pulling data.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+             line="805">Activate @buf to start or stop pulling data.
 
 MT safe.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+                         line="261"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">TRUE if the device could be activated in the requested mode,
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+               line="814">TRUE if the device could be activated in the requested mode,
 FALSE on error.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="buf" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstAudioRingBuffer to activate</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="807">the #GstAudioRingBuffer to activate</doc>
             <type name="AudioRingBuffer" c:type="GstAudioRingBuffer*"/>
           </instance-parameter>
           <parameter name="active" transfer-ownership="none">
-            <doc xml:space="preserve">the new mode</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="808">the new mode</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </virtual-method>
       <virtual-method name="clear_all" invoker="clear_all">
-        <doc xml:space="preserve">Fill the ringbuffer with silence.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+             line="1316">Clear all samples from the ringbuffer.
 
 MT safe.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+                         line="267"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="buf" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstAudioRingBuffer to clear</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="1318">the #GstAudioRingBuffer to clear</doc>
             <type name="AudioRingBuffer" c:type="GstAudioRingBuffer*"/>
           </instance-parameter>
         </parameters>
       </virtual-method>
       <virtual-method name="close_device" invoker="close_device">
-        <doc xml:space="preserve">Close the audio device associated with the ring buffer. The ring buffer
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+             line="497">Close the audio device associated with the ring buffer. The ring buffer
 should already have been released via gst_audio_ring_buffer_release().</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+                         line="251"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">TRUE if the device could be closed, FALSE on error.
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+               line="504">TRUE if the device could be closed, FALSE on error.
 
 MT safe.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="buf" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstAudioRingBuffer</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="499">the #GstAudioRingBuffer</doc>
             <type name="AudioRingBuffer" c:type="GstAudioRingBuffer*"/>
           </instance-parameter>
         </parameters>
       </virtual-method>
       <virtual-method name="commit" invoker="commit">
-        <doc xml:space="preserve">Commit @in_samples samples pointed to by @data to the ringbuffer @buf.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+             line="1675">Commit @in_samples samples pointed to by @data to the ringbuffer @buf.
 
 @in_samples and @out_samples define the rate conversion to perform on the
 samples in @data. For negative rates, @out_samples must be negative and
@@ -7043,116 +10636,166 @@ interrupted, one can resume the processing by passing the previously returned
 @accum value back to this function.
 
 MT safe.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+                         line="263"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The number of samples written to the ringbuffer or -1 on error. The
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+               line="1704">The number of samples written to the ringbuffer or -1 on error. The
 number of samples written can be less than @out_samples when @buf was interrupted
 with a flush or stop.</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="buf" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstAudioRingBuffer to commit</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="1677">the #GstAudioRingBuffer to commit</doc>
             <type name="AudioRingBuffer" c:type="GstAudioRingBuffer*"/>
           </instance-parameter>
           <parameter name="sample" transfer-ownership="none">
-            <doc xml:space="preserve">the sample position of the data</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="1678">the sample position of the data</doc>
             <type name="guint64" c:type="guint64*"/>
           </parameter>
           <parameter name="data" transfer-ownership="none">
-            <doc xml:space="preserve">the data to commit</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="1679">the data to commit</doc>
             <array length="2" zero-terminated="0" c:type="guint8*">
               <type name="guint8" c:type="guint8"/>
             </array>
           </parameter>
           <parameter name="in_samples" transfer-ownership="none">
-            <doc xml:space="preserve">the number of samples in the data to commit</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="1680">the number of samples in the data to commit</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="out_samples" transfer-ownership="none">
-            <doc xml:space="preserve">the number of samples to write to the ringbuffer</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="1681">the number of samples to write to the ringbuffer</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="accum"
                      direction="inout"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">accumulator for rate conversion.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="1682">accumulator for rate conversion.</doc>
             <type name="gint" c:type="gint*"/>
           </parameter>
         </parameters>
       </virtual-method>
       <virtual-method name="delay" invoker="delay">
-        <doc xml:space="preserve">Get the number of samples queued in the audio device. This is
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+             line="1183">Get the number of samples queued in the audio device. This is
 usually less than the segment size but can be bigger when the
 implementation uses another internal buffer between the audio
 device.
 
-For playback ringbuffers this is the amount of samples transfered from the
+For playback ringbuffers this is the amount of samples transferred from the
 ringbuffer to the device but still not played.
 
 For capture ringbuffers this is the amount of samples in the device that are
-not yet transfered to the ringbuffer.</doc>
+not yet transferred to the ringbuffer.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+                         line="258"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The number of samples queued in the audio device.
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+               line="1198">The number of samples queued in the audio device.
 
 MT safe.</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="buf" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstAudioRingBuffer to query</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="1185">the #GstAudioRingBuffer to query</doc>
             <type name="AudioRingBuffer" c:type="GstAudioRingBuffer*"/>
           </instance-parameter>
         </parameters>
       </virtual-method>
       <virtual-method name="open_device" invoker="open_device">
-        <doc xml:space="preserve">Open the audio device associated with the ring buffer. Does not perform any
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+             line="436">Open the audio device associated with the ring buffer. Does not perform any
 setup on the device. You must open the device before acquiring the ring
 buffer.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+                         line="248"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">TRUE if the device could be opened, FALSE on error.
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+               line="444">TRUE if the device could be opened, FALSE on error.
 
 MT safe.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="buf" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstAudioRingBuffer</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="438">the #GstAudioRingBuffer</doc>
             <type name="AudioRingBuffer" c:type="GstAudioRingBuffer*"/>
           </instance-parameter>
         </parameters>
       </virtual-method>
       <virtual-method name="pause" invoker="pause">
-        <doc xml:space="preserve">Pause processing samples from the ringbuffer.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+             line="1079">Pause processing samples from the ringbuffer.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+                         line="254"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">TRUE if the device could be paused, FALSE on error.
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+               line="1085">TRUE if the device could be paused, FALSE on error.
 
 MT safe.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="buf" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstAudioRingBuffer to pause</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="1081">the #GstAudioRingBuffer to pause</doc>
             <type name="AudioRingBuffer" c:type="GstAudioRingBuffer*"/>
           </instance-parameter>
         </parameters>
       </virtual-method>
       <virtual-method name="release" invoker="release">
-        <doc xml:space="preserve">Free the resources of the ringbuffer.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+             line="703">Free the resources of the ringbuffer.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+                         line="250"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">TRUE if the device could be released, FALSE on error.
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+               line="709">TRUE if the device could be released, FALSE on error.
 
 MT safe.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="buf" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstAudioRingBuffer to release</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="705">the #GstAudioRingBuffer to release</doc>
             <type name="AudioRingBuffer" c:type="GstAudioRingBuffer*"/>
           </instance-parameter>
         </parameters>
       </virtual-method>
       <virtual-method name="resume">
+        <source-position filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+                         line="255"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -7163,147 +10806,215 @@ MT safe.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="start" invoker="start">
-        <doc xml:space="preserve">Start processing samples from the ringbuffer.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+             line="947">Start processing samples from the ringbuffer.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+                         line="253"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">TRUE if the device could be started, FALSE on error.
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+               line="953">TRUE if the device could be started, FALSE on error.
 
 MT safe.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="buf" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstAudioRingBuffer to start</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="949">the #GstAudioRingBuffer to start</doc>
             <type name="AudioRingBuffer" c:type="GstAudioRingBuffer*"/>
           </instance-parameter>
         </parameters>
       </virtual-method>
       <virtual-method name="stop" invoker="stop">
-        <doc xml:space="preserve">Stop processing samples from the ringbuffer.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+             line="1123">Stop processing samples from the ringbuffer.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+                         line="256"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">TRUE if the device could be stopped, FALSE on error.
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+               line="1129">TRUE if the device could be stopped, FALSE on error.
 
 MT safe.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="buf" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstAudioRingBuffer to stop</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="1125">the #GstAudioRingBuffer to stop</doc>
             <type name="AudioRingBuffer" c:type="GstAudioRingBuffer*"/>
           </instance-parameter>
         </parameters>
       </virtual-method>
       <method name="acquire" c:identifier="gst_audio_ring_buffer_acquire">
-        <doc xml:space="preserve">Allocate the resources for the ringbuffer. This function fills
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+             line="588">Allocate the resources for the ringbuffer. This function fills
 in the data pointer of the ring buffer with a valid #GstBuffer
 to which samples can be written.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+                         line="317"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">TRUE if the device could be acquired, FALSE on error.
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+               line="597">TRUE if the device could be acquired, FALSE on error.
 
 MT safe.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="buf" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstAudioRingBuffer to acquire</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="590">the #GstAudioRingBuffer to acquire</doc>
             <type name="AudioRingBuffer" c:type="GstAudioRingBuffer*"/>
           </instance-parameter>
           <parameter name="spec" transfer-ownership="none">
-            <doc xml:space="preserve">the specs of the buffer</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="591">the specs of the buffer</doc>
             <type name="AudioRingBufferSpec" c:type="GstAudioRingBufferSpec*"/>
           </parameter>
         </parameters>
       </method>
       <method name="activate" c:identifier="gst_audio_ring_buffer_activate">
-        <doc xml:space="preserve">Activate @buf to start or stop pulling data.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+             line="805">Activate @buf to start or stop pulling data.
 
 MT safe.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+                         line="333"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">TRUE if the device could be activated in the requested mode,
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+               line="814">TRUE if the device could be activated in the requested mode,
 FALSE on error.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="buf" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstAudioRingBuffer to activate</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="807">the #GstAudioRingBuffer to activate</doc>
             <type name="AudioRingBuffer" c:type="GstAudioRingBuffer*"/>
           </instance-parameter>
           <parameter name="active" transfer-ownership="none">
-            <doc xml:space="preserve">the new mode</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="808">the new mode</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </method>
       <method name="advance" c:identifier="gst_audio_ring_buffer_advance">
-        <doc xml:space="preserve">Subclasses should call this function to notify the fact that
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+             line="1921">Subclasses should call this function to notify the fact that
 @advance segments are now processed by the device.
 
 MT safe.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+                         line="405"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="buf" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstAudioRingBuffer to advance</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="1923">the #GstAudioRingBuffer to advance</doc>
             <type name="AudioRingBuffer" c:type="GstAudioRingBuffer*"/>
           </instance-parameter>
           <parameter name="advance" transfer-ownership="none">
-            <doc xml:space="preserve">the number of segments written</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="1924">the number of segments written</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="clear" c:identifier="gst_audio_ring_buffer_clear">
-        <doc xml:space="preserve">Clear the given segment of the buffer with silence samples.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+             line="1950">Clear the given segment of the buffer with silence samples.
 This function is used by subclasses.
 
 MT safe.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+                         line="402"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="buf" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstAudioRingBuffer to clear</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="1952">the #GstAudioRingBuffer to clear</doc>
             <type name="AudioRingBuffer" c:type="GstAudioRingBuffer*"/>
           </instance-parameter>
           <parameter name="segment" transfer-ownership="none">
-            <doc xml:space="preserve">the segment to clear</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="1953">the segment to clear</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
         </parameters>
       </method>
       <method name="clear_all" c:identifier="gst_audio_ring_buffer_clear_all">
-        <doc xml:space="preserve">Fill the ringbuffer with silence.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+             line="1316">Clear all samples from the ringbuffer.
 
 MT safe.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+                         line="371"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="buf" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstAudioRingBuffer to clear</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="1318">the #GstAudioRingBuffer to clear</doc>
             <type name="AudioRingBuffer" c:type="GstAudioRingBuffer*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="close_device"
               c:identifier="gst_audio_ring_buffer_close_device">
-        <doc xml:space="preserve">Close the audio device associated with the ring buffer. The ring buffer
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+             line="497">Close the audio device associated with the ring buffer. The ring buffer
 should already have been released via gst_audio_ring_buffer_release().</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+                         line="309"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">TRUE if the device could be closed, FALSE on error.
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+               line="504">TRUE if the device could be closed, FALSE on error.
 
 MT safe.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="buf" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstAudioRingBuffer</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="499">the #GstAudioRingBuffer</doc>
             <type name="AudioRingBuffer" c:type="GstAudioRingBuffer*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="commit" c:identifier="gst_audio_ring_buffer_commit">
-        <doc xml:space="preserve">Commit @in_samples samples pointed to by @data to the ringbuffer @buf.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+             line="1675">Commit @in_samples samples pointed to by @data to the ringbuffer @buf.
 
 @in_samples and @out_samples define the rate conversion to perform on the
 samples in @data. For negative rates, @out_samples must be negative and
@@ -7322,243 +11033,351 @@ interrupted, one can resume the processing by passing the previously returned
 @accum value back to this function.
 
 MT safe.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+                         line="376"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The number of samples written to the ringbuffer or -1 on error. The
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+               line="1704">The number of samples written to the ringbuffer or -1 on error. The
 number of samples written can be less than @out_samples when @buf was interrupted
 with a flush or stop.</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="buf" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstAudioRingBuffer to commit</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="1677">the #GstAudioRingBuffer to commit</doc>
             <type name="AudioRingBuffer" c:type="GstAudioRingBuffer*"/>
           </instance-parameter>
           <parameter name="sample" transfer-ownership="none">
-            <doc xml:space="preserve">the sample position of the data</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="1678">the sample position of the data</doc>
             <type name="guint64" c:type="guint64*"/>
           </parameter>
           <parameter name="data" transfer-ownership="none">
-            <doc xml:space="preserve">the data to commit</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="1679">the data to commit</doc>
             <array length="2" zero-terminated="0" c:type="guint8*">
               <type name="guint8" c:type="guint8"/>
             </array>
           </parameter>
           <parameter name="in_samples" transfer-ownership="none">
-            <doc xml:space="preserve">the number of samples in the data to commit</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="1680">the number of samples in the data to commit</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="out_samples" transfer-ownership="none">
-            <doc xml:space="preserve">the number of samples to write to the ringbuffer</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="1681">the number of samples to write to the ringbuffer</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="accum"
                      direction="inout"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">accumulator for rate conversion.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="1682">accumulator for rate conversion.</doc>
             <type name="gint" c:type="gint*"/>
           </parameter>
         </parameters>
       </method>
       <method name="convert" c:identifier="gst_audio_ring_buffer_convert">
-        <doc xml:space="preserve">Convert @src_val in @src_fmt to the equivalent value in @dest_fmt. The result
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+             line="352">Convert @src_val in @src_fmt to the equivalent value in @dest_fmt. The result
 will be put in @dest_val.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+                         line="299"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">TRUE if the conversion succeeded.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+               line="363">TRUE if the conversion succeeded.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="buf" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstAudioRingBuffer</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="354">the #GstAudioRingBuffer</doc>
             <type name="AudioRingBuffer" c:type="GstAudioRingBuffer*"/>
           </instance-parameter>
           <parameter name="src_fmt" transfer-ownership="none">
-            <doc xml:space="preserve">the source format</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="355">the source format</doc>
             <type name="Gst.Format" c:type="GstFormat"/>
           </parameter>
           <parameter name="src_val" transfer-ownership="none">
-            <doc xml:space="preserve">the source value</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="356">the source value</doc>
             <type name="gint64" c:type="gint64"/>
           </parameter>
           <parameter name="dest_fmt" transfer-ownership="none">
-            <doc xml:space="preserve">the destination format</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="357">the destination format</doc>
             <type name="Gst.Format" c:type="GstFormat"/>
           </parameter>
           <parameter name="dest_val"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">a location to store the converted value</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="358">a location to store the converted value</doc>
             <type name="gint64" c:type="gint64*"/>
           </parameter>
         </parameters>
       </method>
       <method name="delay" c:identifier="gst_audio_ring_buffer_delay">
-        <doc xml:space="preserve">Get the number of samples queued in the audio device. This is
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+             line="1183">Get the number of samples queued in the audio device. This is
 usually less than the segment size but can be bigger when the
 implementation uses another internal buffer between the audio
 device.
 
-For playback ringbuffers this is the amount of samples transfered from the
+For playback ringbuffers this is the amount of samples transferred from the
 ringbuffer to the device but still not played.
 
 For capture ringbuffers this is the amount of samples in the device that are
-not yet transfered to the ringbuffer.</doc>
+not yet transferred to the ringbuffer.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+                         line="360"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The number of samples queued in the audio device.
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+               line="1198">The number of samples queued in the audio device.
 
 MT safe.</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="buf" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstAudioRingBuffer to query</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="1185">the #GstAudioRingBuffer to query</doc>
             <type name="AudioRingBuffer" c:type="GstAudioRingBuffer*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="device_is_open"
               c:identifier="gst_audio_ring_buffer_device_is_open">
-        <doc xml:space="preserve">Checks the status of the device associated with the ring buffer.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+             line="564">Checks the status of the device associated with the ring buffer.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+                         line="312"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">TRUE if the device was open, FALSE if it was closed.
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+               line="570">TRUE if the device was open, FALSE if it was closed.
 
 MT safe.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="buf" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstAudioRingBuffer</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="566">the #GstAudioRingBuffer</doc>
             <type name="AudioRingBuffer" c:type="GstAudioRingBuffer*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="is_acquired"
               c:identifier="gst_audio_ring_buffer_is_acquired">
-        <doc xml:space="preserve">Check if the ringbuffer is acquired and ready to use.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+             line="781">Check if the ringbuffer is acquired and ready to use.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+                         line="323"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">TRUE if the ringbuffer is acquired, FALSE on error.
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+               line="787">TRUE if the ringbuffer is acquired, FALSE on error.
 
 MT safe.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="buf" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstAudioRingBuffer to check</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="783">the #GstAudioRingBuffer to check</doc>
             <type name="AudioRingBuffer" c:type="GstAudioRingBuffer*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="is_active" c:identifier="gst_audio_ring_buffer_is_active">
-        <doc xml:space="preserve">Check if @buf is activated.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+             line="873">Check if @buf is activated.
 
 MT safe.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+                         line="336"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">TRUE if the device is active.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+               line="881">TRUE if the device is active.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="buf" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstAudioRingBuffer</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="875">the #GstAudioRingBuffer</doc>
             <type name="AudioRingBuffer" c:type="GstAudioRingBuffer*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="is_flushing"
               c:identifier="gst_audio_ring_buffer_is_flushing">
-        <doc xml:space="preserve">Check if @buf is flushing.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+             line="923">Check if @buf is flushing.
 
 MT safe.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+                         line="344"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">TRUE if the device is flushing.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+               line="931">TRUE if the device is flushing.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="buf" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstAudioRingBuffer</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="925">the #GstAudioRingBuffer</doc>
             <type name="AudioRingBuffer" c:type="GstAudioRingBuffer*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="may_start" c:identifier="gst_audio_ring_buffer_may_start">
-        <doc xml:space="preserve">Tell the ringbuffer that it is allowed to start playback when
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+             line="1985">Tell the ringbuffer that it is allowed to start playback when
 the ringbuffer is filled with samples.
 
 MT safe.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+                         line="408"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="buf" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstAudioRingBuffer</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="1987">the #GstAudioRingBuffer</doc>
             <type name="AudioRingBuffer" c:type="GstAudioRingBuffer*"/>
           </instance-parameter>
           <parameter name="allowed" transfer-ownership="none">
-            <doc xml:space="preserve">the new value</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="1988">the new value</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </method>
       <method name="open_device"
               c:identifier="gst_audio_ring_buffer_open_device">
-        <doc xml:space="preserve">Open the audio device associated with the ring buffer. Does not perform any
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+             line="436">Open the audio device associated with the ring buffer. Does not perform any
 setup on the device. You must open the device before acquiring the ring
 buffer.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+                         line="306"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">TRUE if the device could be opened, FALSE on error.
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+               line="444">TRUE if the device could be opened, FALSE on error.
 
 MT safe.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="buf" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstAudioRingBuffer</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="438">the #GstAudioRingBuffer</doc>
             <type name="AudioRingBuffer" c:type="GstAudioRingBuffer*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="pause" c:identifier="gst_audio_ring_buffer_pause">
-        <doc xml:space="preserve">Pause processing samples from the ringbuffer.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+             line="1079">Pause processing samples from the ringbuffer.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+                         line="352"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">TRUE if the device could be paused, FALSE on error.
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+               line="1085">TRUE if the device could be paused, FALSE on error.
 
 MT safe.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="buf" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstAudioRingBuffer to pause</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="1081">the #GstAudioRingBuffer to pause</doc>
             <type name="AudioRingBuffer" c:type="GstAudioRingBuffer*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="prepare_read"
               c:identifier="gst_audio_ring_buffer_prepare_read">
-        <doc xml:space="preserve">Returns a pointer to memory where the data from segment @segment
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+             line="1866">Returns a pointer to memory where the data from segment @segment
 can be found. This function is mostly used by subclasses.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+                         line="398"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">FALSE if the buffer is not started.
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+               line="1877">FALSE if the buffer is not started.
 
 MT safe.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="buf" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstAudioRingBuffer to read from</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="1868">the #GstAudioRingBuffer to read from</doc>
             <type name="AudioRingBuffer" c:type="GstAudioRingBuffer*"/>
           </instance-parameter>
           <parameter name="segment"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">the segment to read</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="1869">the segment to read</doc>
             <type name="gint" c:type="gint*"/>
           </parameter>
           <parameter name="readptr"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="1870">
     the pointer to the memory where samples can be read</doc>
             <array length="2" zero-terminated="0" c:type="guint8**">
               <type name="guint8" c:type="guint8*"/>
@@ -7568,13 +11387,17 @@ MT safe.</doc>
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">the number of bytes to read</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="1872">the number of bytes to read</doc>
             <type name="gint" c:type="gint*"/>
           </parameter>
         </parameters>
       </method>
       <method name="read" c:identifier="gst_audio_ring_buffer_read">
-        <doc xml:space="preserve">Read @len samples from the ringbuffer into the memory pointed
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+             line="1728">Read @len samples from the ringbuffer into the memory pointed
 to by @data.
 The first sample should be read from position @sample in
 the ringbuffer.
@@ -7583,8 +11406,12 @@ the ringbuffer.
 although it is recommended.
 
 @timestamp will return the timestamp associated with the data returned.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+                         line="383"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The number of samples read from the ringbuffer or -1 on
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+               line="1746">The number of samples read from the ringbuffer or -1 on
 error.
 
 MT safe.</doc>
@@ -7592,61 +11419,87 @@ MT safe.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="buf" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstAudioRingBuffer to read from</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="1730">the #GstAudioRingBuffer to read from</doc>
             <type name="AudioRingBuffer" c:type="GstAudioRingBuffer*"/>
           </instance-parameter>
           <parameter name="sample" transfer-ownership="none">
-            <doc xml:space="preserve">the sample position of the data</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="1731">the sample position of the data</doc>
             <type name="guint64" c:type="guint64"/>
           </parameter>
           <parameter name="data" transfer-ownership="none">
-            <doc xml:space="preserve">where the data should be read</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="1732">where the data should be read</doc>
             <array length="2" zero-terminated="0" c:type="guint8*">
               <type name="guint8" c:type="guint8"/>
             </array>
           </parameter>
           <parameter name="len" transfer-ownership="none">
-            <doc xml:space="preserve">the number of samples in data to read</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="1733">the number of samples in data to read</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="timestamp"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">where the timestamp is returned</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="1734">where the timestamp is returned</doc>
             <type name="Gst.ClockTime" c:type="GstClockTime*"/>
           </parameter>
         </parameters>
       </method>
       <method name="release" c:identifier="gst_audio_ring_buffer_release">
-        <doc xml:space="preserve">Free the resources of the ringbuffer.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+             line="703">Free the resources of the ringbuffer.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+                         line="320"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">TRUE if the device could be released, FALSE on error.
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+               line="709">TRUE if the device could be released, FALSE on error.
 
 MT safe.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="buf" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstAudioRingBuffer to release</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="705">the #GstAudioRingBuffer to release</doc>
             <type name="AudioRingBuffer" c:type="GstAudioRingBuffer*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="samples_done"
               c:identifier="gst_audio_ring_buffer_samples_done">
-        <doc xml:space="preserve">Get the number of samples that were processed by the ringbuffer
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+             line="1229">Get the number of samples that were processed by the ringbuffer
 since it was last started. This does not include the number of samples not
 yet processed (see gst_audio_ring_buffer_delay()).</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+                         line="363"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The number of samples processed by the ringbuffer.
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+               line="1237">The number of samples processed by the ringbuffer.
 
 MT safe.</doc>
           <type name="guint64" c:type="guint64"/>
         </return-value>
         <parameters>
           <instance-parameter name="buf" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstAudioRingBuffer to query</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="1231">the #GstAudioRingBuffer to query</doc>
             <type name="AudioRingBuffer" c:type="GstAudioRingBuffer*"/>
           </instance-parameter>
         </parameters>
@@ -7655,16 +11508,22 @@ MT safe.</doc>
               c:identifier="gst_audio_ring_buffer_set_callback"
               shadowed-by="set_callback_full"
               introspectable="0">
-        <doc xml:space="preserve">Sets the given callback function on the buffer. This function
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+             line="380">Sets the given callback function on the buffer. This function
 will be called every time a segment has been written to a device.
 
 MT safe.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+                         line="279"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="buf" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstAudioRingBuffer to set the callback on</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="382">the #GstAudioRingBuffer to set the callback on</doc>
             <type name="AudioRingBuffer" c:type="GstAudioRingBuffer*"/>
           </instance-parameter>
           <parameter name="cb"
@@ -7672,7 +11531,9 @@ MT safe.</doc>
                      nullable="1"
                      allow-none="1"
                      closure="1">
-            <doc xml:space="preserve">the callback to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="383">the callback to set</doc>
             <type name="AudioRingBufferCallback"
                   c:type="GstAudioRingBufferCallback"/>
           </parameter>
@@ -7680,7 +11541,9 @@ MT safe.</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">user data passed to the callback</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="384">user data passed to the callback</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
         </parameters>
@@ -7689,16 +11552,22 @@ MT safe.</doc>
               c:identifier="gst_audio_ring_buffer_set_callback_full"
               shadows="set_callback"
               version="1.12">
-        <doc xml:space="preserve">Sets the given callback function on the buffer. This function
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+             line="398">Sets the given callback function on the buffer. This function
 will be called every time a segment has been written to a device.
 
 MT safe.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+                         line="284"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="buf" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstAudioRingBuffer to set the callback on</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="400">the #GstAudioRingBuffer to set the callback on</doc>
             <type name="AudioRingBuffer" c:type="GstAudioRingBuffer*"/>
           </instance-parameter>
           <parameter name="cb"
@@ -7708,7 +11577,9 @@ MT safe.</doc>
                      scope="notified"
                      closure="1"
                      destroy="2">
-            <doc xml:space="preserve">the callback to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="401">the callback to set</doc>
             <type name="AudioRingBufferCallback"
                   c:type="GstAudioRingBufferCallback"/>
           </parameter>
@@ -7716,29 +11587,41 @@ MT safe.</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">user data passed to the callback</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="402">user data passed to the callback</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
           <parameter name="notify" transfer-ownership="none" scope="async">
-            <doc xml:space="preserve">function to be called when @user_data is no longer needed</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="403">function to be called when @user_data is no longer needed</doc>
             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_channel_positions"
               c:identifier="gst_audio_ring_buffer_set_channel_positions">
-        <doc xml:space="preserve">Tell the ringbuffer about the device's channel positions. This must
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+             line="2021">Tell the ringbuffer about the device's channel positions. This must
 be called in when the ringbuffer is acquired.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+                         line="328"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="buf" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstAudioRingBuffer</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="2023">the #GstAudioRingBuffer</doc>
             <type name="AudioRingBuffer" c:type="GstAudioRingBuffer*"/>
           </instance-parameter>
           <parameter name="position" transfer-ownership="none">
-            <doc xml:space="preserve">the device channel positions</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="2024">the device channel positions</doc>
             <array zero-terminated="0" c:type="const GstAudioChannelPosition*">
               <type name="AudioChannelPosition"
                     c:type="GstAudioChannelPosition"/>
@@ -7748,26 +11631,36 @@ be called in when the ringbuffer is acquired.</doc>
       </method>
       <method name="set_flushing"
               c:identifier="gst_audio_ring_buffer_set_flushing">
-        <doc xml:space="preserve">Set the ringbuffer to flushing mode or normal mode.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+             line="898">Set the ringbuffer to flushing mode or normal mode.
 
 MT safe.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+                         line="341"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="buf" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstAudioRingBuffer to flush</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="900">the #GstAudioRingBuffer to flush</doc>
             <type name="AudioRingBuffer" c:type="GstAudioRingBuffer*"/>
           </instance-parameter>
           <parameter name="flushing" transfer-ownership="none">
-            <doc xml:space="preserve">the new mode</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="901">the new mode</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_sample"
               c:identifier="gst_audio_ring_buffer_set_sample">
-        <doc xml:space="preserve">Make sure that the next sample written to the device is
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+             line="1258">Make sure that the next sample written to the device is
 accounted for as being the @sample sample written to the
 device. This value will be used in reporting the current
 sample position of the ringbuffer.
@@ -7775,22 +11668,30 @@ sample position of the ringbuffer.
 This function will also clear the buffer with silence.
 
 MT safe.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+                         line="366"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="buf" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstAudioRingBuffer to use</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="1260">the #GstAudioRingBuffer to use</doc>
             <type name="AudioRingBuffer" c:type="GstAudioRingBuffer*"/>
           </instance-parameter>
           <parameter name="sample" transfer-ownership="none">
-            <doc xml:space="preserve">the sample number to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="1261">the sample number to set</doc>
             <type name="guint64" c:type="guint64"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_timestamp"
               c:identifier="gst_audio_ring_buffer_set_timestamp">
+        <source-position filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+                         line="389"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
@@ -7807,31 +11708,47 @@ MT safe.</doc>
         </parameters>
       </method>
       <method name="start" c:identifier="gst_audio_ring_buffer_start">
-        <doc xml:space="preserve">Start processing samples from the ringbuffer.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+             line="947">Start processing samples from the ringbuffer.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+                         line="349"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">TRUE if the device could be started, FALSE on error.
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+               line="953">TRUE if the device could be started, FALSE on error.
 
 MT safe.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="buf" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstAudioRingBuffer to start</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="949">the #GstAudioRingBuffer to start</doc>
             <type name="AudioRingBuffer" c:type="GstAudioRingBuffer*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="stop" c:identifier="gst_audio_ring_buffer_stop">
-        <doc xml:space="preserve">Stop processing samples from the ringbuffer.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+             line="1123">Stop processing samples from the ringbuffer.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+                         line="355"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">TRUE if the device could be stopped, FALSE on error.
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+               line="1129">TRUE if the device could be stopped, FALSE on error.
 
 MT safe.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="buf" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstAudioRingBuffer to stop</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="1125">the #GstAudioRingBuffer to stop</doc>
             <type name="AudioRingBuffer" c:type="GstAudioRingBuffer*"/>
           </instance-parameter>
         </parameters>
@@ -7840,54 +11757,78 @@ MT safe.</doc>
         <type name="Gst.Object" c:type="GstObject"/>
       </field>
       <field name="cond">
-        <doc xml:space="preserve">used to signal start/stop/pause/resume actions</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+             line="166">used to signal start/stop/pause/resume actions</doc>
         <type name="GLib.Cond" c:type="GCond"/>
       </field>
       <field name="open">
-        <doc xml:space="preserve">boolean indicating that the ringbuffer is open</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+             line="167">boolean indicating that the ringbuffer is open</doc>
         <type name="gboolean" c:type="gboolean"/>
       </field>
       <field name="acquired">
-        <doc xml:space="preserve">boolean indicating that the ringbuffer is acquired</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+             line="168">boolean indicating that the ringbuffer is acquired</doc>
         <type name="gboolean" c:type="gboolean"/>
       </field>
       <field name="memory">
-        <doc xml:space="preserve">data in the ringbuffer</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+             line="169">data in the ringbuffer</doc>
         <type name="guint8" c:type="guint8*"/>
       </field>
       <field name="size">
-        <doc xml:space="preserve">size of data in the ringbuffer</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+             line="170">size of data in the ringbuffer</doc>
         <type name="gsize" c:type="gsize"/>
       </field>
       <field name="timestamps" readable="0" private="1">
         <type name="Gst.ClockTime" c:type="GstClockTime*"/>
       </field>
       <field name="spec">
-        <doc xml:space="preserve">format and layout of the ringbuffer data</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+             line="171">format and layout of the ringbuffer data</doc>
         <type name="AudioRingBufferSpec" c:type="GstAudioRingBufferSpec"/>
       </field>
       <field name="samples_per_seg">
-        <doc xml:space="preserve">number of samples in one segment</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+             line="172">number of samples in one segment</doc>
         <type name="gint" c:type="gint"/>
       </field>
       <field name="empty_seg">
-        <doc xml:space="preserve">pointer to memory holding one segment of silence samples</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+             line="173">pointer to memory holding one segment of silence samples</doc>
         <type name="guint8" c:type="guint8*"/>
       </field>
       <field name="state">
-        <doc xml:space="preserve">state of the buffer</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+             line="174">state of the buffer</doc>
         <type name="gint" c:type="gint"/>
       </field>
       <field name="segdone">
-        <doc xml:space="preserve">readpointer in the ringbuffer</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+             line="175">readpointer in the ringbuffer</doc>
         <type name="gint" c:type="gint"/>
       </field>
       <field name="segbase">
-        <doc xml:space="preserve">segment corresponding to segment 0 (unused)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+             line="176">segment corresponding to segment 0 (unused)</doc>
         <type name="gint" c:type="gint"/>
       </field>
       <field name="waiting">
-        <doc xml:space="preserve">is a reader or writer waiting for a free segment</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+             line="177">is a reader or writer waiting for a free segment</doc>
         <type name="gint" c:type="gint"/>
       </field>
       <field name="callback" readable="0" private="1">
@@ -7901,7 +11842,7 @@ MT safe.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </field>
       <field name="channel_reorder_map" readable="0" private="1">
-        <array zero-terminated="0" c:type="gint" fixed-size="64">
+        <array zero-terminated="0" fixed-size="64">
           <type name="gint" c:type="gint"/>
         </array>
       </field>
@@ -7918,31 +11859,41 @@ MT safe.</doc>
         <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="3">
+        <array zero-terminated="0" fixed-size="3">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
     </class>
     <callback name="AudioRingBufferCallback"
               c:type="GstAudioRingBufferCallback">
-      <doc xml:space="preserve">This function is set with gst_audio_ring_buffer_set_callback() and is
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+           line="44">This function is set with gst_audio_ring_buffer_set_callback() and is
 called to fill the memory at @data with @len bytes of samples.</doc>
+      <source-position filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+                       line="54"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="rbuf" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstAudioRingBuffer</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+               line="46">a #GstAudioRingBuffer</doc>
           <type name="AudioRingBuffer" c:type="GstAudioRingBuffer*"/>
         </parameter>
         <parameter name="data" transfer-ownership="none">
-          <doc xml:space="preserve">target to fill</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+               line="47">target to fill</doc>
           <array length="2" zero-terminated="0" c:type="guint8*">
             <type name="guint8" c:type="guint8"/>
           </array>
         </parameter>
         <parameter name="len" transfer-ownership="none">
-          <doc xml:space="preserve">amount to fill</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+               line="48">amount to fill</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
         <parameter name="user_data"
@@ -7950,7 +11901,9 @@ called to fill the memory at @data with @len bytes of samples.</doc>
                    nullable="1"
                    allow-none="1"
                    closure="3">
-          <doc xml:space="preserve">user data</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+               line="49">user data</doc>
           <type name="gpointer" c:type="gpointer"/>
         </parameter>
       </parameters>
@@ -7958,22 +11911,34 @@ called to fill the memory at @data with @len bytes of samples.</doc>
     <record name="AudioRingBufferClass"
             c:type="GstAudioRingBufferClass"
             glib:is-gtype-struct-for="AudioRingBuffer">
-      <doc xml:space="preserve">The vmethods that subclasses can override to implement the ringbuffer.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+           line="222">The vmethods that subclasses can override to implement the ringbuffer.</doc>
+      <source-position filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+                       line="271"/>
       <field name="parent_class">
-        <doc xml:space="preserve">parent class</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+             line="224">parent class</doc>
         <type name="Gst.ObjectClass" c:type="GstObjectClass"/>
       </field>
       <field name="open_device">
         <callback name="open_device">
+          <source-position filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+                           line="248"/>
           <return-value transfer-ownership="none">
-            <doc xml:space="preserve">TRUE if the device could be opened, FALSE on error.
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="444">TRUE if the device could be opened, FALSE on error.
 
 MT safe.</doc>
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
           <parameters>
             <parameter name="buf" transfer-ownership="none">
-              <doc xml:space="preserve">the #GstAudioRingBuffer</doc>
+              <doc xml:space="preserve"
+                   filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                   line="438">the #GstAudioRingBuffer</doc>
               <type name="AudioRingBuffer" c:type="GstAudioRingBuffer*"/>
             </parameter>
           </parameters>
@@ -7981,19 +11946,27 @@ MT safe.</doc>
       </field>
       <field name="acquire">
         <callback name="acquire">
+          <source-position filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+                           line="249"/>
           <return-value transfer-ownership="none">
-            <doc xml:space="preserve">TRUE if the device could be acquired, FALSE on error.
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="597">TRUE if the device could be acquired, FALSE on error.
 
 MT safe.</doc>
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
           <parameters>
             <parameter name="buf" transfer-ownership="none">
-              <doc xml:space="preserve">the #GstAudioRingBuffer to acquire</doc>
+              <doc xml:space="preserve"
+                   filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                   line="590">the #GstAudioRingBuffer to acquire</doc>
               <type name="AudioRingBuffer" c:type="GstAudioRingBuffer*"/>
             </parameter>
             <parameter name="spec" transfer-ownership="none">
-              <doc xml:space="preserve">the specs of the buffer</doc>
+              <doc xml:space="preserve"
+                   filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                   line="591">the specs of the buffer</doc>
               <type name="AudioRingBufferSpec"
                     c:type="GstAudioRingBufferSpec*"/>
             </parameter>
@@ -8002,15 +11975,21 @@ MT safe.</doc>
       </field>
       <field name="release">
         <callback name="release">
+          <source-position filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+                           line="250"/>
           <return-value transfer-ownership="none">
-            <doc xml:space="preserve">TRUE if the device could be released, FALSE on error.
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="709">TRUE if the device could be released, FALSE on error.
 
 MT safe.</doc>
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
           <parameters>
             <parameter name="buf" transfer-ownership="none">
-              <doc xml:space="preserve">the #GstAudioRingBuffer to release</doc>
+              <doc xml:space="preserve"
+                   filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                   line="705">the #GstAudioRingBuffer to release</doc>
               <type name="AudioRingBuffer" c:type="GstAudioRingBuffer*"/>
             </parameter>
           </parameters>
@@ -8018,15 +11997,21 @@ MT safe.</doc>
       </field>
       <field name="close_device">
         <callback name="close_device">
+          <source-position filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+                           line="251"/>
           <return-value transfer-ownership="none">
-            <doc xml:space="preserve">TRUE if the device could be closed, FALSE on error.
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="504">TRUE if the device could be closed, FALSE on error.
 
 MT safe.</doc>
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
           <parameters>
             <parameter name="buf" transfer-ownership="none">
-              <doc xml:space="preserve">the #GstAudioRingBuffer</doc>
+              <doc xml:space="preserve"
+                   filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                   line="499">the #GstAudioRingBuffer</doc>
               <type name="AudioRingBuffer" c:type="GstAudioRingBuffer*"/>
             </parameter>
           </parameters>
@@ -8034,15 +12019,21 @@ MT safe.</doc>
       </field>
       <field name="start">
         <callback name="start">
+          <source-position filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+                           line="253"/>
           <return-value transfer-ownership="none">
-            <doc xml:space="preserve">TRUE if the device could be started, FALSE on error.
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="953">TRUE if the device could be started, FALSE on error.
 
 MT safe.</doc>
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
           <parameters>
             <parameter name="buf" transfer-ownership="none">
-              <doc xml:space="preserve">the #GstAudioRingBuffer to start</doc>
+              <doc xml:space="preserve"
+                   filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                   line="949">the #GstAudioRingBuffer to start</doc>
               <type name="AudioRingBuffer" c:type="GstAudioRingBuffer*"/>
             </parameter>
           </parameters>
@@ -8050,15 +12041,21 @@ MT safe.</doc>
       </field>
       <field name="pause">
         <callback name="pause">
+          <source-position filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+                           line="254"/>
           <return-value transfer-ownership="none">
-            <doc xml:space="preserve">TRUE if the device could be paused, FALSE on error.
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="1085">TRUE if the device could be paused, FALSE on error.
 
 MT safe.</doc>
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
           <parameters>
             <parameter name="buf" transfer-ownership="none">
-              <doc xml:space="preserve">the #GstAudioRingBuffer to pause</doc>
+              <doc xml:space="preserve"
+                   filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                   line="1081">the #GstAudioRingBuffer to pause</doc>
               <type name="AudioRingBuffer" c:type="GstAudioRingBuffer*"/>
             </parameter>
           </parameters>
@@ -8066,6 +12063,8 @@ MT safe.</doc>
       </field>
       <field name="resume">
         <callback name="resume">
+          <source-position filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+                           line="255"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -8078,15 +12077,21 @@ MT safe.</doc>
       </field>
       <field name="stop">
         <callback name="stop">
+          <source-position filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+                           line="256"/>
           <return-value transfer-ownership="none">
-            <doc xml:space="preserve">TRUE if the device could be stopped, FALSE on error.
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="1129">TRUE if the device could be stopped, FALSE on error.
 
 MT safe.</doc>
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
           <parameters>
             <parameter name="buf" transfer-ownership="none">
-              <doc xml:space="preserve">the #GstAudioRingBuffer to stop</doc>
+              <doc xml:space="preserve"
+                   filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                   line="1125">the #GstAudioRingBuffer to stop</doc>
               <type name="AudioRingBuffer" c:type="GstAudioRingBuffer*"/>
             </parameter>
           </parameters>
@@ -8094,15 +12099,21 @@ MT safe.</doc>
       </field>
       <field name="delay">
         <callback name="delay">
+          <source-position filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+                           line="258"/>
           <return-value transfer-ownership="none">
-            <doc xml:space="preserve">The number of samples queued in the audio device.
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="1198">The number of samples queued in the audio device.
 
 MT safe.</doc>
             <type name="guint" c:type="guint"/>
           </return-value>
           <parameters>
             <parameter name="buf" transfer-ownership="none">
-              <doc xml:space="preserve">the #GstAudioRingBuffer to query</doc>
+              <doc xml:space="preserve"
+                   filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                   line="1185">the #GstAudioRingBuffer to query</doc>
               <type name="AudioRingBuffer" c:type="GstAudioRingBuffer*"/>
             </parameter>
           </parameters>
@@ -8110,18 +12121,26 @@ MT safe.</doc>
       </field>
       <field name="activate">
         <callback name="activate">
+          <source-position filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+                           line="261"/>
           <return-value transfer-ownership="none">
-            <doc xml:space="preserve">TRUE if the device could be activated in the requested mode,
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="814">TRUE if the device could be activated in the requested mode,
 FALSE on error.</doc>
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
           <parameters>
             <parameter name="buf" transfer-ownership="none">
-              <doc xml:space="preserve">the #GstAudioRingBuffer to activate</doc>
+              <doc xml:space="preserve"
+                   filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                   line="807">the #GstAudioRingBuffer to activate</doc>
               <type name="AudioRingBuffer" c:type="GstAudioRingBuffer*"/>
             </parameter>
             <parameter name="active" transfer-ownership="none">
-              <doc xml:space="preserve">the new mode</doc>
+              <doc xml:space="preserve"
+                   filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                   line="808">the new mode</doc>
               <type name="gboolean" c:type="gboolean"/>
             </parameter>
           </parameters>
@@ -8129,40 +12148,56 @@ FALSE on error.</doc>
       </field>
       <field name="commit">
         <callback name="commit">
+          <source-position filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+                           line="263"/>
           <return-value transfer-ownership="none">
-            <doc xml:space="preserve">The number of samples written to the ringbuffer or -1 on error. The
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                 line="1704">The number of samples written to the ringbuffer or -1 on error. The
 number of samples written can be less than @out_samples when @buf was interrupted
 with a flush or stop.</doc>
             <type name="guint" c:type="guint"/>
           </return-value>
           <parameters>
             <parameter name="buf" transfer-ownership="none">
-              <doc xml:space="preserve">the #GstAudioRingBuffer to commit</doc>
+              <doc xml:space="preserve"
+                   filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                   line="1677">the #GstAudioRingBuffer to commit</doc>
               <type name="AudioRingBuffer" c:type="GstAudioRingBuffer*"/>
             </parameter>
             <parameter name="sample" transfer-ownership="none">
-              <doc xml:space="preserve">the sample position of the data</doc>
+              <doc xml:space="preserve"
+                   filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                   line="1678">the sample position of the data</doc>
               <type name="guint64" c:type="guint64*"/>
             </parameter>
             <parameter name="data" transfer-ownership="none">
-              <doc xml:space="preserve">the data to commit</doc>
+              <doc xml:space="preserve"
+                   filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                   line="1679">the data to commit</doc>
               <array length="3" zero-terminated="0" c:type="guint8*">
                 <type name="guint8" c:type="guint8"/>
               </array>
             </parameter>
             <parameter name="in_samples" transfer-ownership="none">
-              <doc xml:space="preserve">the number of samples in the data to commit</doc>
+              <doc xml:space="preserve"
+                   filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                   line="1680">the number of samples in the data to commit</doc>
               <type name="gint" c:type="gint"/>
             </parameter>
             <parameter name="out_samples" transfer-ownership="none">
-              <doc xml:space="preserve">the number of samples to write to the ringbuffer</doc>
+              <doc xml:space="preserve"
+                   filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                   line="1681">the number of samples to write to the ringbuffer</doc>
               <type name="gint" c:type="gint"/>
             </parameter>
             <parameter name="accum"
                        direction="inout"
                        caller-allocates="0"
                        transfer-ownership="full">
-              <doc xml:space="preserve">accumulator for rate conversion.</doc>
+              <doc xml:space="preserve"
+                   filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                   line="1682">accumulator for rate conversion.</doc>
               <type name="gint" c:type="gint*"/>
             </parameter>
           </parameters>
@@ -8170,19 +12205,23 @@ with a flush or stop.</doc>
       </field>
       <field name="clear_all">
         <callback name="clear_all">
+          <source-position filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+                           line="267"/>
           <return-value transfer-ownership="none">
             <type name="none" c:type="void"/>
           </return-value>
           <parameters>
             <parameter name="buf" transfer-ownership="none">
-              <doc xml:space="preserve">the #GstAudioRingBuffer to clear</doc>
+              <doc xml:space="preserve"
+                   filename="gst-libs/gst/audio/gstaudioringbuffer.c"
+                   line="1318">the #GstAudioRingBuffer to clear</doc>
               <type name="AudioRingBuffer" c:type="GstAudioRingBuffer*"/>
             </parameter>
           </parameters>
         </callback>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -8191,136 +12230,188 @@ with a flush or stop.</doc>
                  glib:type-name="GstAudioRingBufferFormatType"
                  glib:get-type="gst_audio_ring_buffer_format_type_get_type"
                  c:type="GstAudioRingBufferFormatType">
-      <doc xml:space="preserve">The format of the samples in the ringbuffer.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+           line="74">The format of the samples in the ringbuffer.</doc>
       <member name="raw"
               value="0"
               c:identifier="GST_AUDIO_RING_BUFFER_FORMAT_TYPE_RAW"
               glib:nick="raw">
-        <doc xml:space="preserve">samples in linear or float</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+             line="76">samples in linear or float</doc>
       </member>
       <member name="mu_law"
               value="1"
               c:identifier="GST_AUDIO_RING_BUFFER_FORMAT_TYPE_MU_LAW"
               glib:nick="mu-law">
-        <doc xml:space="preserve">samples in mulaw</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+             line="77">samples in mulaw</doc>
       </member>
       <member name="a_law"
               value="2"
               c:identifier="GST_AUDIO_RING_BUFFER_FORMAT_TYPE_A_LAW"
               glib:nick="a-law">
-        <doc xml:space="preserve">samples in alaw</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+             line="78">samples in alaw</doc>
       </member>
       <member name="ima_adpcm"
               value="3"
               c:identifier="GST_AUDIO_RING_BUFFER_FORMAT_TYPE_IMA_ADPCM"
               glib:nick="ima-adpcm">
-        <doc xml:space="preserve">samples in ima adpcm</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+             line="79">samples in ima adpcm</doc>
       </member>
       <member name="mpeg"
               value="4"
               c:identifier="GST_AUDIO_RING_BUFFER_FORMAT_TYPE_MPEG"
               glib:nick="mpeg">
-        <doc xml:space="preserve">samples in mpeg audio (but not AAC) format</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+             line="80">samples in mpeg audio (but not AAC) format</doc>
       </member>
       <member name="gsm"
               value="5"
               c:identifier="GST_AUDIO_RING_BUFFER_FORMAT_TYPE_GSM"
               glib:nick="gsm">
-        <doc xml:space="preserve">samples in gsm format</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+             line="81">samples in gsm format</doc>
       </member>
       <member name="iec958"
               value="6"
               c:identifier="GST_AUDIO_RING_BUFFER_FORMAT_TYPE_IEC958"
               glib:nick="iec958">
-        <doc xml:space="preserve">samples in IEC958 frames (e.g. AC3)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+             line="82">samples in IEC958 frames (e.g. AC3)</doc>
       </member>
       <member name="ac3"
               value="7"
               c:identifier="GST_AUDIO_RING_BUFFER_FORMAT_TYPE_AC3"
               glib:nick="ac3">
-        <doc xml:space="preserve">samples in AC3 format</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+             line="83">samples in AC3 format</doc>
       </member>
       <member name="eac3"
               value="8"
               c:identifier="GST_AUDIO_RING_BUFFER_FORMAT_TYPE_EAC3"
               glib:nick="eac3">
-        <doc xml:space="preserve">samples in EAC3 format</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+             line="84">samples in EAC3 format</doc>
       </member>
       <member name="dts"
               value="9"
               c:identifier="GST_AUDIO_RING_BUFFER_FORMAT_TYPE_DTS"
               glib:nick="dts">
-        <doc xml:space="preserve">samples in DTS format</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+             line="85">samples in DTS format</doc>
       </member>
       <member name="mpeg2_aac"
               value="10"
               c:identifier="GST_AUDIO_RING_BUFFER_FORMAT_TYPE_MPEG2_AAC"
               glib:nick="mpeg2-aac">
-        <doc xml:space="preserve">samples in MPEG-2 AAC ADTS format</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+             line="86">samples in MPEG-2 AAC ADTS format</doc>
       </member>
       <member name="mpeg4_aac"
               value="11"
               c:identifier="GST_AUDIO_RING_BUFFER_FORMAT_TYPE_MPEG4_AAC"
               glib:nick="mpeg4-aac">
-        <doc xml:space="preserve">samples in MPEG-4 AAC ADTS format</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+             line="87">samples in MPEG-4 AAC ADTS format</doc>
       </member>
       <member name="mpeg2_aac_raw"
               value="12"
               c:identifier="GST_AUDIO_RING_BUFFER_FORMAT_TYPE_MPEG2_AAC_RAW"
               glib:nick="mpeg2-aac-raw">
-        <doc xml:space="preserve">samples in MPEG-2 AAC raw format (Since 1.12)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+             line="88">samples in MPEG-2 AAC raw format (Since: 1.12)</doc>
       </member>
       <member name="mpeg4_aac_raw"
               value="13"
               c:identifier="GST_AUDIO_RING_BUFFER_FORMAT_TYPE_MPEG4_AAC_RAW"
               glib:nick="mpeg4-aac-raw">
-        <doc xml:space="preserve">samples in MPEG-4 AAC raw format (Since 1.12)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+             line="89">samples in MPEG-4 AAC raw format (Since: 1.12)</doc>
       </member>
       <member name="flac"
               value="14"
               c:identifier="GST_AUDIO_RING_BUFFER_FORMAT_TYPE_FLAC"
               glib:nick="flac">
-        <doc xml:space="preserve">samples in FLAC format (Since 1.12)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+             line="90">samples in FLAC format (Since: 1.12)</doc>
       </member>
     </enumeration>
     <record name="AudioRingBufferSpec" c:type="GstAudioRingBufferSpec">
-      <doc xml:space="preserve">The structure containing the format specification of the ringbuffer.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+           line="113">The structure containing the format specification of the ringbuffer.</doc>
+      <source-position filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+                       line="157"/>
       <field name="caps" writable="1">
-        <doc xml:space="preserve">The caps that generated the Spec.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+             line="115">The caps that generated the Spec.</doc>
         <type name="Gst.Caps" c:type="GstCaps*"/>
       </field>
       <field name="type" writable="1">
-        <doc xml:space="preserve">the sample type</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+             line="116">the sample type</doc>
         <type name="AudioRingBufferFormatType"
               c:type="GstAudioRingBufferFormatType"/>
       </field>
       <field name="info" writable="1">
-        <doc xml:space="preserve">the #GstAudioInfo</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+             line="117">the #GstAudioInfo</doc>
         <type name="AudioInfo" c:type="GstAudioInfo"/>
       </field>
       <field name="latency_time" writable="1">
-        <doc xml:space="preserve">the latency in microseconds</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+             line="118">the latency in microseconds</doc>
         <type name="guint64" c:type="guint64"/>
       </field>
       <field name="buffer_time" writable="1">
-        <doc xml:space="preserve">the total buffer size in microseconds</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+             line="119">the total buffer size in microseconds</doc>
         <type name="guint64" c:type="guint64"/>
       </field>
       <field name="segsize" writable="1">
-        <doc xml:space="preserve">the size of one segment in bytes</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+             line="120">the size of one segment in bytes</doc>
         <type name="gint" c:type="gint"/>
       </field>
       <field name="segtotal" writable="1">
-        <doc xml:space="preserve">the total number of segments</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+             line="121">the total number of segments</doc>
         <type name="gint" c:type="gint"/>
       </field>
       <field name="seglatency" writable="1">
-        <doc xml:space="preserve">number of segments queued in the lower level device,
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+             line="122">number of segments queued in the lower level device,
  defaults to segtotal</doc>
         <type name="gint" c:type="gint"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -8329,32 +12420,42 @@ with a flush or stop.</doc>
                  glib:type-name="GstAudioRingBufferState"
                  glib:get-type="gst_audio_ring_buffer_state_get_type"
                  c:type="GstAudioRingBufferState">
-      <doc xml:space="preserve">The state of the ringbuffer.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+           line="56">The state of the ringbuffer.</doc>
       <member name="stopped"
               value="0"
               c:identifier="GST_AUDIO_RING_BUFFER_STATE_STOPPED"
               glib:nick="stopped">
-        <doc xml:space="preserve">The ringbuffer is stopped</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+             line="58">The ringbuffer is stopped</doc>
       </member>
       <member name="paused"
               value="1"
               c:identifier="GST_AUDIO_RING_BUFFER_STATE_PAUSED"
               glib:nick="paused">
-        <doc xml:space="preserve">The ringbuffer is paused</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+             line="59">The ringbuffer is paused</doc>
       </member>
       <member name="started"
               value="2"
               c:identifier="GST_AUDIO_RING_BUFFER_STATE_STARTED"
               glib:nick="started">
-        <doc xml:space="preserve">The ringbuffer is started</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+             line="60">The ringbuffer is started</doc>
       </member>
       <member name="error"
               value="3"
               c:identifier="GST_AUDIO_RING_BUFFER_STATE_ERROR"
               glib:nick="error">
-        <doc xml:space="preserve">The ringbuffer has encountered an
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+             line="61">The ringbuffer has encountered an
     error after it has been started, e.g. because the device was
-    disconnected (Since 1.2)</doc>
+    disconnected (Since: 1.2)</doc>
       </member>
     </enumeration>
     <class name="AudioSink"
@@ -8364,7 +12465,9 @@ with a flush or stop.</doc>
            glib:type-name="GstAudioSink"
            glib:get-type="gst_audio_sink_get_type"
            glib:type-struct="AudioSinkClass">
-      <doc xml:space="preserve">This is the most simple base class for audio sinks that only requires
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/gstaudiosink.c"
+           line="23">This is the most simple base class for audio sinks that only requires
 subclasses to implement a set of simple functions:
 
 * `open()` :Open the device.
@@ -8385,7 +12488,11 @@ by the device.
 All scheduling of samples and timestamps is done in this base class
 together with #GstAudioBaseSink using a default implementation of a
 #GstAudioRingBuffer that uses threads.</doc>
+      <source-position filename="gst-libs/gst/audio/gstaudiosink.h"
+                       line="115"/>
       <virtual-method name="close">
+        <source-position filename="gst-libs/gst/audio/gstaudiosink.h"
+                         line="100"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -8396,6 +12503,8 @@ together with #GstAudioBaseSink using a default implementation of a
         </parameters>
       </virtual-method>
       <virtual-method name="delay">
+        <source-position filename="gst-libs/gst/audio/gstaudiosink.h"
+                         line="104"/>
         <return-value transfer-ownership="none">
           <type name="guint" c:type="guint"/>
         </return-value>
@@ -8406,6 +12515,8 @@ together with #GstAudioBaseSink using a default implementation of a
         </parameters>
       </virtual-method>
       <virtual-method name="open">
+        <source-position filename="gst-libs/gst/audio/gstaudiosink.h"
+                         line="94"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -8415,7 +12526,21 @@ together with #GstAudioBaseSink using a default implementation of a
           </instance-parameter>
         </parameters>
       </virtual-method>
+      <virtual-method name="pause">
+        <source-position filename="gst-libs/gst/audio/gstaudiosink.h"
+                         line="108"/>
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="sink" transfer-ownership="none">
+            <type name="AudioSink" c:type="GstAudioSink*"/>
+          </instance-parameter>
+        </parameters>
+      </virtual-method>
       <virtual-method name="prepare">
+        <source-position filename="gst-libs/gst/audio/gstaudiosink.h"
+                         line="96"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -8429,6 +12554,32 @@ together with #GstAudioBaseSink using a default implementation of a
         </parameters>
       </virtual-method>
       <virtual-method name="reset">
+        <source-position filename="gst-libs/gst/audio/gstaudiosink.h"
+                         line="106"/>
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="sink" transfer-ownership="none">
+            <type name="AudioSink" c:type="GstAudioSink*"/>
+          </instance-parameter>
+        </parameters>
+      </virtual-method>
+      <virtual-method name="resume">
+        <source-position filename="gst-libs/gst/audio/gstaudiosink.h"
+                         line="110"/>
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="sink" transfer-ownership="none">
+            <type name="AudioSink" c:type="GstAudioSink*"/>
+          </instance-parameter>
+        </parameters>
+      </virtual-method>
+      <virtual-method name="stop">
+        <source-position filename="gst-libs/gst/audio/gstaudiosink.h"
+                         line="112"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
@@ -8439,6 +12590,8 @@ together with #GstAudioBaseSink using a default implementation of a
         </parameters>
       </virtual-method>
       <virtual-method name="unprepare">
+        <source-position filename="gst-libs/gst/audio/gstaudiosink.h"
+                         line="98"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -8449,6 +12602,8 @@ together with #GstAudioBaseSink using a default implementation of a
         </parameters>
       </virtual-method>
       <virtual-method name="write">
+        <source-position filename="gst-libs/gst/audio/gstaudiosink.h"
+                         line="102"/>
         <return-value transfer-ownership="none">
           <type name="gint" c:type="gint"/>
         </return-value>
@@ -8474,7 +12629,7 @@ together with #GstAudioBaseSink using a default implementation of a
         <type name="GLib.Thread" c:type="GThread*"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -8482,13 +12637,18 @@ together with #GstAudioBaseSink using a default implementation of a
     <record name="AudioSinkClass"
             c:type="GstAudioSinkClass"
             glib:is-gtype-struct-for="AudioSink">
-      <doc xml:space="preserve">#GstAudioSink class. Override the vmethods to implement functionality.</doc>
+      <source-position filename="gst-libs/gst/audio/gstaudiosink.h"
+                       line="115"/>
       <field name="parent_class">
-        <doc xml:space="preserve">the parent class structure.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiosink.h"
+             line="63">the parent class structure.</doc>
         <type name="AudioBaseSinkClass" c:type="GstAudioBaseSinkClass"/>
       </field>
       <field name="open">
         <callback name="open">
+          <source-position filename="gst-libs/gst/audio/gstaudiosink.h"
+                           line="94"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -8501,6 +12661,8 @@ together with #GstAudioBaseSink using a default implementation of a
       </field>
       <field name="prepare">
         <callback name="prepare">
+          <source-position filename="gst-libs/gst/audio/gstaudiosink.h"
+                           line="96"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -8517,6 +12679,8 @@ together with #GstAudioBaseSink using a default implementation of a
       </field>
       <field name="unprepare">
         <callback name="unprepare">
+          <source-position filename="gst-libs/gst/audio/gstaudiosink.h"
+                           line="98"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -8529,6 +12693,8 @@ together with #GstAudioBaseSink using a default implementation of a
       </field>
       <field name="close">
         <callback name="close">
+          <source-position filename="gst-libs/gst/audio/gstaudiosink.h"
+                           line="100"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -8541,6 +12707,8 @@ together with #GstAudioBaseSink using a default implementation of a
       </field>
       <field name="write">
         <callback name="write">
+          <source-position filename="gst-libs/gst/audio/gstaudiosink.h"
+                           line="102"/>
           <return-value transfer-ownership="none">
             <type name="gint" c:type="gint"/>
           </return-value>
@@ -8562,6 +12730,8 @@ together with #GstAudioBaseSink using a default implementation of a
       </field>
       <field name="delay">
         <callback name="delay">
+          <source-position filename="gst-libs/gst/audio/gstaudiosink.h"
+                           line="104"/>
           <return-value transfer-ownership="none">
             <type name="guint" c:type="guint"/>
           </return-value>
@@ -8574,6 +12744,8 @@ together with #GstAudioBaseSink using a default implementation of a
       </field>
       <field name="reset">
         <callback name="reset">
+          <source-position filename="gst-libs/gst/audio/gstaudiosink.h"
+                           line="106"/>
           <return-value transfer-ownership="none">
             <type name="none" c:type="void"/>
           </return-value>
@@ -8584,10 +12756,72 @@ together with #GstAudioBaseSink using a default implementation of a
           </parameters>
         </callback>
       </field>
-      <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
-          <type name="gpointer" c:type="gpointer"/>
-        </array>
+      <field name="pause">
+        <callback name="pause">
+          <source-position filename="gst-libs/gst/audio/gstaudiosink.h"
+                           line="108"/>
+          <return-value transfer-ownership="none">
+            <type name="none" c:type="void"/>
+          </return-value>
+          <parameters>
+            <parameter name="sink" transfer-ownership="none">
+              <type name="AudioSink" c:type="GstAudioSink*"/>
+            </parameter>
+          </parameters>
+        </callback>
+      </field>
+      <field name="resume">
+        <callback name="resume">
+          <source-position filename="gst-libs/gst/audio/gstaudiosink.h"
+                           line="110"/>
+          <return-value transfer-ownership="none">
+            <type name="none" c:type="void"/>
+          </return-value>
+          <parameters>
+            <parameter name="sink" transfer-ownership="none">
+              <type name="AudioSink" c:type="GstAudioSink*"/>
+            </parameter>
+          </parameters>
+        </callback>
+      </field>
+      <field name="stop">
+        <callback name="stop">
+          <source-position filename="gst-libs/gst/audio/gstaudiosink.h"
+                           line="112"/>
+          <return-value transfer-ownership="none">
+            <type name="none" c:type="void"/>
+          </return-value>
+          <parameters>
+            <parameter name="sink" transfer-ownership="none">
+              <type name="AudioSink" c:type="GstAudioSink*"/>
+            </parameter>
+          </parameters>
+        </callback>
+      </field>
+      <field name="extension">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiosink.h"
+             line="86">class extension structure. Since: 1.18</doc>
+        <type name="AudioSinkClassExtension"
+              c:type="GstAudioSinkClassExtension*"/>
+      </field>
+    </record>
+    <record name="AudioSinkClassExtension" c:type="GstAudioSinkClassExtension">
+      <source-position filename="gst-libs/gst/audio/gstaudiosink.h"
+                       line="127"/>
+      <field name="clear_all">
+        <callback name="clear_all">
+          <source-position filename="gst-libs/gst/audio/gstaudiosink.h"
+                           line="124"/>
+          <return-value transfer-ownership="none">
+            <type name="none" c:type="void"/>
+          </return-value>
+          <parameters>
+            <parameter name="sink" transfer-ownership="none">
+              <type name="AudioSink" c:type="GstAudioSink*"/>
+            </parameter>
+          </parameters>
+        </callback>
       </field>
     </record>
     <class name="AudioSrc"
@@ -8597,7 +12831,9 @@ together with #GstAudioBaseSink using a default implementation of a
            glib:type-name="GstAudioSrc"
            glib:get-type="gst_audio_src_get_type"
            glib:type-struct="AudioSrcClass">
-      <doc xml:space="preserve">This is the most simple base class for audio sources that only requires
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/gstaudiosrc.c"
+           line="23">This is the most simple base class for audio sources that only requires
 subclasses to implement a set of simple functions:
 
 * `open()` :Open the device.
@@ -8611,7 +12847,10 @@ subclasses to implement a set of simple functions:
 All scheduling of samples and timestamps is done in this base class
 together with #GstAudioBaseSrc using a default implementation of a
 #GstAudioRingBuffer that uses threads.</doc>
+      <source-position filename="gst-libs/gst/audio/gstaudiosrc.h" line="97"/>
       <virtual-method name="close">
+        <source-position filename="gst-libs/gst/audio/gstaudiosrc.h"
+                         line="86"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -8622,6 +12861,8 @@ together with #GstAudioBaseSrc using a default implementation of a
         </parameters>
       </virtual-method>
       <virtual-method name="delay">
+        <source-position filename="gst-libs/gst/audio/gstaudiosrc.h"
+                         line="91"/>
         <return-value transfer-ownership="none">
           <type name="guint" c:type="guint"/>
         </return-value>
@@ -8632,6 +12873,8 @@ together with #GstAudioBaseSrc using a default implementation of a
         </parameters>
       </virtual-method>
       <virtual-method name="open">
+        <source-position filename="gst-libs/gst/audio/gstaudiosrc.h"
+                         line="80"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -8642,6 +12885,8 @@ together with #GstAudioBaseSrc using a default implementation of a
         </parameters>
       </virtual-method>
       <virtual-method name="prepare">
+        <source-position filename="gst-libs/gst/audio/gstaudiosrc.h"
+                         line="82"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -8655,6 +12900,8 @@ together with #GstAudioBaseSrc using a default implementation of a
         </parameters>
       </virtual-method>
       <virtual-method name="read">
+        <source-position filename="gst-libs/gst/audio/gstaudiosrc.h"
+                         line="88"/>
         <return-value transfer-ownership="none">
           <type name="guint" c:type="guint"/>
         </return-value>
@@ -8677,6 +12924,8 @@ together with #GstAudioBaseSrc using a default implementation of a
         </parameters>
       </virtual-method>
       <virtual-method name="reset">
+        <source-position filename="gst-libs/gst/audio/gstaudiosrc.h"
+                         line="93"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
@@ -8687,6 +12936,8 @@ together with #GstAudioBaseSrc using a default implementation of a
         </parameters>
       </virtual-method>
       <virtual-method name="unprepare">
+        <source-position filename="gst-libs/gst/audio/gstaudiosrc.h"
+                         line="84"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -8703,7 +12954,7 @@ together with #GstAudioBaseSrc using a default implementation of a
         <type name="GLib.Thread" c:type="GThread*"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -8711,14 +12962,21 @@ together with #GstAudioBaseSrc using a default implementation of a
     <record name="AudioSrcClass"
             c:type="GstAudioSrcClass"
             glib:is-gtype-struct-for="AudioSrc">
-      <doc xml:space="preserve">#GstAudioSrc class. Override the vmethod to implement
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/gstaudiosrc.h"
+           line="60">#GstAudioSrc class. Override the vmethod to implement
 functionality.</doc>
+      <source-position filename="gst-libs/gst/audio/gstaudiosrc.h" line="97"/>
       <field name="parent_class">
-        <doc xml:space="preserve">the parent class.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiosrc.h"
+             line="62">the parent class.</doc>
         <type name="AudioBaseSrcClass" c:type="GstAudioBaseSrcClass"/>
       </field>
       <field name="open">
         <callback name="open">
+          <source-position filename="gst-libs/gst/audio/gstaudiosrc.h"
+                           line="80"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -8731,6 +12989,8 @@ functionality.</doc>
       </field>
       <field name="prepare">
         <callback name="prepare">
+          <source-position filename="gst-libs/gst/audio/gstaudiosrc.h"
+                           line="82"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -8747,6 +13007,8 @@ functionality.</doc>
       </field>
       <field name="unprepare">
         <callback name="unprepare">
+          <source-position filename="gst-libs/gst/audio/gstaudiosrc.h"
+                           line="84"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -8759,6 +13021,8 @@ functionality.</doc>
       </field>
       <field name="close">
         <callback name="close">
+          <source-position filename="gst-libs/gst/audio/gstaudiosrc.h"
+                           line="86"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -8771,6 +13035,8 @@ functionality.</doc>
       </field>
       <field name="read">
         <callback name="read">
+          <source-position filename="gst-libs/gst/audio/gstaudiosrc.h"
+                           line="88"/>
           <return-value transfer-ownership="none">
             <type name="guint" c:type="guint"/>
           </return-value>
@@ -8795,6 +13061,8 @@ functionality.</doc>
       </field>
       <field name="delay">
         <callback name="delay">
+          <source-position filename="gst-libs/gst/audio/gstaudiosrc.h"
+                           line="91"/>
           <return-value transfer-ownership="none">
             <type name="guint" c:type="guint"/>
           </return-value>
@@ -8807,6 +13075,8 @@ functionality.</doc>
       </field>
       <field name="reset">
         <callback name="reset">
+          <source-position filename="gst-libs/gst/audio/gstaudiosrc.h"
+                           line="93"/>
           <return-value transfer-ownership="none">
             <type name="none" c:type="void"/>
           </return-value>
@@ -8818,7 +13088,7 @@ functionality.</doc>
         </callback>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -8829,16 +13099,22 @@ functionality.</doc>
             glib:type-name="GstAudioStreamAlign"
             glib:get-type="gst_audio_stream_align_get_type"
             c:symbol-prefix="audio_stream_align">
-      <doc xml:space="preserve">#GstAudioStreamAlign provides a helper object that helps tracking audio
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/gstaudiostreamalign.c"
+           line="28">#GstAudioStreamAlign provides a helper object that helps tracking audio
 stream alignment and discontinuities, and detects discontinuities if
 possible.
 
 See gst_audio_stream_align_new() for a description of its parameters and
 gst_audio_stream_align_process() for the details of the processing.</doc>
+      <source-position filename="gst-libs/gst/audio/gstaudiostreamalign.h"
+                       line="39"/>
       <constructor name="new"
                    c:identifier="gst_audio_stream_align_new"
                    version="1.14">
-        <doc xml:space="preserve">Allocate a new #GstAudioStreamAlign with the given configuration. All
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiostreamalign.c"
+             line="60">Allocate a new #GstAudioStreamAlign with the given configuration. All
 processing happens according to sample rate @rate, until
 gst_audio_stream_align_set_rate() is called with a new @rate.
 A negative rate can be used for reverse playback.
@@ -8849,21 +13125,31 @@ timestamp difference is considered a discontinuity. Once detected,
 again until the output buffer is marked as a discontinuity. These can later
 be re-configured with gst_audio_stream_align_set_alignment_threshold() and
 gst_audio_stream_align_set_discont_wait().</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudiostreamalign.h"
+                         line="45"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new #GstAudioStreamAlign. free with gst_audio_stream_align_free().</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudiostreamalign.c"
+               line="78">a new #GstAudioStreamAlign. free with gst_audio_stream_align_free().</doc>
           <type name="AudioStreamAlign" c:type="GstAudioStreamAlign*"/>
         </return-value>
         <parameters>
           <parameter name="rate" transfer-ownership="none">
-            <doc xml:space="preserve">a sample rate</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiostreamalign.c"
+                 line="62">a sample rate</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="alignment_threshold" transfer-ownership="none">
-            <doc xml:space="preserve">a alignment threshold in nanoseconds</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiostreamalign.c"
+                 line="63">a alignment threshold in nanoseconds</doc>
             <type name="Gst.ClockTime" c:type="GstClockTime"/>
           </parameter>
           <parameter name="discont_wait" transfer-ownership="none">
-            <doc xml:space="preserve">discont wait in nanoseconds</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiostreamalign.c"
+                 line="64">discont wait in nanoseconds</doc>
             <type name="Gst.ClockTime" c:type="GstClockTime"/>
           </parameter>
         </parameters>
@@ -8871,14 +13157,22 @@ gst_audio_stream_align_set_discont_wait().</doc>
       <method name="copy"
               c:identifier="gst_audio_stream_align_copy"
               version="1.14">
-        <doc xml:space="preserve">Copy a GstAudioStreamAlign structure.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiostreamalign.c"
+             line="102">Copy a GstAudioStreamAlign structure.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudiostreamalign.h"
+                         line="49"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new #GstAudioStreamAlign. free with gst_audio_stream_align_free.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudiostreamalign.c"
+               line="108">a new #GstAudioStreamAlign. free with gst_audio_stream_align_free.</doc>
           <type name="AudioStreamAlign" c:type="GstAudioStreamAlign*"/>
         </return-value>
         <parameters>
           <instance-parameter name="align" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioStreamAlign</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiostreamalign.c"
+                 line="104">a #GstAudioStreamAlign</doc>
             <type name="AudioStreamAlign" c:type="const GstAudioStreamAlign*"/>
           </instance-parameter>
         </parameters>
@@ -8886,14 +13180,20 @@ gst_audio_stream_align_set_discont_wait().</doc>
       <method name="free"
               c:identifier="gst_audio_stream_align_free"
               version="1.14">
-        <doc xml:space="preserve">Free a GstAudioStreamAlign structure previously allocated with gst_audio_stream_align_new()
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiostreamalign.c"
+             line="125">Free a GstAudioStreamAlign structure previously allocated with gst_audio_stream_align_new()
 or gst_audio_stream_align_copy().</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudiostreamalign.h"
+                         line="51"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="align" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioStreamAlign</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiostreamalign.c"
+                 line="127">a #GstAudioStreamAlign</doc>
             <type name="AudioStreamAlign" c:type="GstAudioStreamAlign*"/>
           </instance-parameter>
         </parameters>
@@ -8901,14 +13201,22 @@ or gst_audio_stream_align_copy().</doc>
       <method name="get_alignment_threshold"
               c:identifier="gst_audio_stream_align_get_alignment_threshold"
               version="1.14">
-        <doc xml:space="preserve">Gets the currently configured alignment threshold.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The currently configured alignment threshold</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiostreamalign.c"
+             line="200">Gets the currently configured alignment threshold.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudiostreamalign.h"
+                         line="63"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudiostreamalign.c"
+               line="206">The currently configured alignment threshold</doc>
           <type name="Gst.ClockTime" c:type="GstClockTime"/>
         </return-value>
         <parameters>
           <instance-parameter name="align" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioStreamAlign</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiostreamalign.c"
+                 line="202">a #GstAudioStreamAlign</doc>
             <type name="AudioStreamAlign" c:type="GstAudioStreamAlign*"/>
           </instance-parameter>
         </parameters>
@@ -8916,14 +13224,22 @@ or gst_audio_stream_align_copy().</doc>
       <method name="get_discont_wait"
               c:identifier="gst_audio_stream_align_get_discont_wait"
               version="1.14">
-        <doc xml:space="preserve">Gets the currently configured discont wait.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The currently configured discont wait</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiostreamalign.c"
+             line="236">Gets the currently configured discont wait.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudiostreamalign.h"
+                         line="69"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudiostreamalign.c"
+               line="242">The currently configured discont wait</doc>
           <type name="Gst.ClockTime" c:type="GstClockTime"/>
         </return-value>
         <parameters>
           <instance-parameter name="align" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioStreamAlign</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiostreamalign.c"
+                 line="238">a #GstAudioStreamAlign</doc>
             <type name="AudioStreamAlign" c:type="GstAudioStreamAlign*"/>
           </instance-parameter>
         </parameters>
@@ -8931,14 +13247,22 @@ or gst_audio_stream_align_copy().</doc>
       <method name="get_rate"
               c:identifier="gst_audio_stream_align_get_rate"
               version="1.14">
-        <doc xml:space="preserve">Gets the currently configured sample rate.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The currently configured sample rate</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiostreamalign.c"
+             line="164">Gets the currently configured sample rate.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudiostreamalign.h"
+                         line="57"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudiostreamalign.c"
+               line="170">The currently configured sample rate</doc>
           <type name="gint" c:type="gint"/>
         </return-value>
         <parameters>
           <instance-parameter name="align" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioStreamAlign</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiostreamalign.c"
+                 line="166">a #GstAudioStreamAlign</doc>
             <type name="AudioStreamAlign" c:type="GstAudioStreamAlign*"/>
           </instance-parameter>
         </parameters>
@@ -8946,15 +13270,23 @@ or gst_audio_stream_align_copy().</doc>
       <method name="get_samples_since_discont"
               c:identifier="gst_audio_stream_align_get_samples_since_discont"
               version="1.14">
-        <doc xml:space="preserve">Returns the number of samples that were processed since the last
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiostreamalign.c"
+             line="290">Returns the number of samples that were processed since the last
 discontinuity was detected.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudiostreamalign.h"
+                         line="79"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The number of samples processed since the last discontinuity.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudiostreamalign.c"
+               line="297">The number of samples processed since the last discontinuity.</doc>
           <type name="guint64" c:type="guint64"/>
         </return-value>
         <parameters>
           <instance-parameter name="align" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioStreamAlign</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiostreamalign.c"
+                 line="292">a #GstAudioStreamAlign</doc>
             <type name="AudioStreamAlign" c:type="GstAudioStreamAlign*"/>
           </instance-parameter>
         </parameters>
@@ -8962,15 +13294,23 @@ discontinuity was detected.</doc>
       <method name="get_timestamp_at_discont"
               c:identifier="gst_audio_stream_align_get_timestamp_at_discont"
               version="1.14">
-        <doc xml:space="preserve">Timestamp that was passed when a discontinuity was detected, i.e. the first
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiostreamalign.c"
+             line="271">Timestamp that was passed when a discontinuity was detected, i.e. the first
 timestamp after the discontinuity.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudiostreamalign.h"
+                         line="76"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The last timestamp at when a discontinuity was detected</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudiostreamalign.c"
+               line="278">The last timestamp at when a discontinuity was detected</doc>
           <type name="Gst.ClockTime" c:type="GstClockTime"/>
         </return-value>
         <parameters>
           <instance-parameter name="align" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioStreamAlign</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiostreamalign.c"
+                 line="273">a #GstAudioStreamAlign</doc>
             <type name="AudioStreamAlign" c:type="GstAudioStreamAlign*"/>
           </instance-parameter>
         </parameters>
@@ -8978,13 +13318,19 @@ timestamp after the discontinuity.</doc>
       <method name="mark_discont"
               c:identifier="gst_audio_stream_align_mark_discont"
               version="1.14">
-        <doc xml:space="preserve">Marks the next buffer as discontinuous and resets timestamp tracking.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiostreamalign.c"
+             line="254">Marks the next buffer as discontinuous and resets timestamp tracking.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudiostreamalign.h"
+                         line="73"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="align" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioStreamAlign</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiostreamalign.c"
+                 line="256">a #GstAudioStreamAlign</doc>
             <type name="AudioStreamAlign" c:type="GstAudioStreamAlign*"/>
           </instance-parameter>
         </parameters>
@@ -8992,7 +13338,9 @@ timestamp after the discontinuity.</doc>
       <method name="process"
               c:identifier="gst_audio_stream_align_process"
               version="1.14">
-        <doc xml:space="preserve">Processes data with @timestamp and @n_samples, and returns the output
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiostreamalign.c"
+             line="309">Processes data with @timestamp and @n_samples, and returns the output
 timestamp, duration and sample position together with a boolean to signal
 whether a discontinuity was detected or not. All non-discontinuous data
 will have perfect timestamps and durations.
@@ -9008,46 +13356,64 @@ discontinuous with the first sample of the current one. However for this
 function they are only considered discontinuous in reverse playback if the
 first sample of the previous buffer is discontinuous with the last sample
 of the current one.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudiostreamalign.h"
+                         line="82"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if a discontinuity was detected, %FALSE otherwise.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudiostreamalign.c"
+               line="336">%TRUE if a discontinuity was detected, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="align" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioStreamAlign</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiostreamalign.c"
+                 line="311">a #GstAudioStreamAlign</doc>
             <type name="AudioStreamAlign" c:type="GstAudioStreamAlign*"/>
           </instance-parameter>
           <parameter name="discont" transfer-ownership="none">
-            <doc xml:space="preserve">if this data is considered to be discontinuous</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiostreamalign.c"
+                 line="312">if this data is considered to be discontinuous</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
           <parameter name="timestamp" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstClockTime of the start of the data</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiostreamalign.c"
+                 line="313">a #GstClockTime of the start of the data</doc>
             <type name="Gst.ClockTime" c:type="GstClockTime"/>
           </parameter>
           <parameter name="n_samples" transfer-ownership="none">
-            <doc xml:space="preserve">number of samples to process</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiostreamalign.c"
+                 line="314">number of samples to process</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="out_timestamp"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">output timestamp of the data</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiostreamalign.c"
+                 line="315">output timestamp of the data</doc>
             <type name="Gst.ClockTime" c:type="GstClockTime*"/>
           </parameter>
           <parameter name="out_duration"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">output duration of the data</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiostreamalign.c"
+                 line="316">output duration of the data</doc>
             <type name="Gst.ClockTime" c:type="GstClockTime*"/>
           </parameter>
           <parameter name="out_sample_position"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">output sample position of the start of the data</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiostreamalign.c"
+                 line="317">output sample position of the start of the data</doc>
             <type name="guint64" c:type="guint64*"/>
           </parameter>
         </parameters>
@@ -9055,17 +13421,25 @@ of the current one.</doc>
       <method name="set_alignment_threshold"
               c:identifier="gst_audio_stream_align_set_alignment_threshold"
               version="1.14">
-        <doc xml:space="preserve">Sets @alignment_treshold as new alignment threshold for the following processing.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiostreamalign.c"
+             line="182">Sets @alignment_treshold as new alignment threshold for the following processing.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudiostreamalign.h"
+                         line="60"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="align" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioStreamAlign</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiostreamalign.c"
+                 line="184">a #GstAudioStreamAlign</doc>
             <type name="AudioStreamAlign" c:type="GstAudioStreamAlign*"/>
           </instance-parameter>
           <parameter name="alignment_threshold" transfer-ownership="none">
-            <doc xml:space="preserve">a new alignment threshold</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiostreamalign.c"
+                 line="185">a new alignment threshold</doc>
             <type name="Gst.ClockTime" c:type="GstClockTime"/>
           </parameter>
         </parameters>
@@ -9073,17 +13447,25 @@ of the current one.</doc>
       <method name="set_discont_wait"
               c:identifier="gst_audio_stream_align_set_discont_wait"
               version="1.14">
-        <doc xml:space="preserve">Sets @alignment_treshold as new discont wait for the following processing.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiostreamalign.c"
+             line="218">Sets @alignment_treshold as new discont wait for the following processing.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudiostreamalign.h"
+                         line="66"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="align" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioStreamAlign</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiostreamalign.c"
+                 line="220">a #GstAudioStreamAlign</doc>
             <type name="AudioStreamAlign" c:type="GstAudioStreamAlign*"/>
           </instance-parameter>
           <parameter name="discont_wait" transfer-ownership="none">
-            <doc xml:space="preserve">a new discont wait</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiostreamalign.c"
+                 line="221">a new discont wait</doc>
             <type name="Gst.ClockTime" c:type="GstClockTime"/>
           </parameter>
         </parameters>
@@ -9091,51 +13473,375 @@ of the current one.</doc>
       <method name="set_rate"
               c:identifier="gst_audio_stream_align_set_rate"
               version="1.14">
-        <doc xml:space="preserve">Sets @rate as new sample rate for the following processing. If the sample
-rate differs this implicitely marks the next data as discontinuous.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiostreamalign.c"
+             line="141">Sets @rate as new sample rate for the following processing. If the sample
+rate differs this implicitly marks the next data as discontinuous.</doc>
+        <source-position filename="gst-libs/gst/audio/gstaudiostreamalign.h"
+                         line="54"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="align" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAudioStreamAlign</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiostreamalign.c"
+                 line="143">a #GstAudioStreamAlign</doc>
             <type name="AudioStreamAlign" c:type="GstAudioStreamAlign*"/>
           </instance-parameter>
           <parameter name="rate" transfer-ownership="none">
-            <doc xml:space="preserve">a new sample rate</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/gstaudiostreamalign.c"
+                 line="144">a new sample rate</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
         </parameters>
       </method>
     </record>
+    <function-macro name="CLOCK_TIME_TO_FRAMES"
+                    c:identifier="GST_CLOCK_TIME_TO_FRAMES"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/audio.h"
+           line="52">Calculate frames from @clocktime and sample @rate.</doc>
+      <source-position filename="gst-libs/gst/audio/audio.h" line="59"/>
+      <parameters>
+        <parameter name="clocktime">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio.h"
+               line="54">clock time</doc>
+        </parameter>
+        <parameter name="rate">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio.h"
+               line="55">sampling rate</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="FRAMES_TO_CLOCK_TIME"
+                    c:identifier="GST_FRAMES_TO_CLOCK_TIME"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/audio.h"
+           line="42">Calculate clocktime from sample @frames and @rate.</doc>
+      <source-position filename="gst-libs/gst/audio/audio.h" line="49"/>
+      <parameters>
+        <parameter name="frames">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio.h"
+               line="44">sample frames</doc>
+        </parameter>
+        <parameter name="rate">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio.h"
+               line="45">sampling rate</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_AUDIO_AGGREGATOR"
+                    c:identifier="GST_IS_AUDIO_AGGREGATOR"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudioaggregator.h"
+                       line="166"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_AUDIO_AGGREGATOR_CLASS"
+                    c:identifier="GST_IS_AUDIO_AGGREGATOR_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudioaggregator.h"
+                       line="167"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_AUDIO_AGGREGATOR_CONVERT_PAD"
+                    c:identifier="GST_IS_AUDIO_AGGREGATOR_CONVERT_PAD"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudioaggregator.h"
+                       line="112"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_AUDIO_AGGREGATOR_CONVERT_PAD_CLASS"
+                    c:identifier="GST_IS_AUDIO_AGGREGATOR_CONVERT_PAD_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudioaggregator.h"
+                       line="113"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_AUDIO_AGGREGATOR_PAD"
+                    c:identifier="GST_IS_AUDIO_AGGREGATOR_PAD"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudioaggregator.h"
+                       line="49"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_AUDIO_AGGREGATOR_PAD_CLASS"
+                    c:identifier="GST_IS_AUDIO_AGGREGATOR_PAD_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudioaggregator.h"
+                       line="50"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_AUDIO_BASE_SINK"
+                    c:identifier="GST_IS_AUDIO_BASE_SINK"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudiobasesink.h"
+                       line="65"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_AUDIO_BASE_SINK_CLASS"
+                    c:identifier="GST_IS_AUDIO_BASE_SINK_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudiobasesink.h"
+                       line="66"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_AUDIO_BASE_SRC"
+                    c:identifier="GST_IS_AUDIO_BASE_SRC"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudiobasesrc.h"
+                       line="43"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_AUDIO_BASE_SRC_CLASS"
+                    c:identifier="GST_IS_AUDIO_BASE_SRC_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudiobasesrc.h"
+                       line="44"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_AUDIO_CD_SRC"
+                    c:identifier="GST_IS_AUDIO_CD_SRC"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudiocdsrc.h"
+                       line="35"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_AUDIO_CD_SRC_CLASS"
+                    c:identifier="GST_IS_AUDIO_CD_SRC_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudiocdsrc.h"
+                       line="36"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_AUDIO_CLOCK"
+                    c:identifier="GST_IS_AUDIO_CLOCK"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudioclock.h"
+                       line="40"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_AUDIO_CLOCK_CLASS"
+                    c:identifier="GST_IS_AUDIO_CLOCK_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudioclock.h"
+                       line="42"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_AUDIO_DECODER"
+                    c:identifier="GST_IS_AUDIO_DECODER"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                       line="43"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_AUDIO_DECODER_CLASS"
+                    c:identifier="GST_IS_AUDIO_DECODER_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudiodecoder.h"
+                       line="45"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_AUDIO_ENCODER"
+                    c:identifier="GST_IS_AUDIO_ENCODER"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudioencoder.h"
+                       line="37"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_AUDIO_ENCODER_CLASS"
+                    c:identifier="GST_IS_AUDIO_ENCODER_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudioencoder.h"
+                       line="38"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_AUDIO_FILTER"
+                    c:identifier="GST_IS_AUDIO_FILTER"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudiofilter.h"
+                       line="46"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_AUDIO_FILTER_CLASS"
+                    c:identifier="GST_IS_AUDIO_FILTER_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudiofilter.h"
+                       line="48"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_AUDIO_RING_BUFFER"
+                    c:identifier="GST_IS_AUDIO_RING_BUFFER"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+                       line="37"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_AUDIO_RING_BUFFER_CLASS"
+                    c:identifier="GST_IS_AUDIO_RING_BUFFER_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudioringbuffer.h"
+                       line="38"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_AUDIO_SINK"
+                    c:identifier="GST_IS_AUDIO_SINK"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudiosink.h" line="39"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_AUDIO_SINK_CLASS"
+                    c:identifier="GST_IS_AUDIO_SINK_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudiosink.h" line="40"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_AUDIO_SRC"
+                    c:identifier="GST_IS_AUDIO_SRC"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudiosrc.h" line="39"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_AUDIO_SRC_CLASS"
+                    c:identifier="GST_IS_AUDIO_SRC_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudiosrc.h" line="40"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
     <constant name="META_TAG_AUDIO_CHANNELS_STR"
               value="channels"
               c:type="GST_META_TAG_AUDIO_CHANNELS_STR"
               version="1.2">
-      <doc xml:space="preserve">This metadata stays relevant as long as channels are unchanged.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/audio.h"
+           line="72">This metadata stays relevant as long as channels are unchanged.</doc>
+      <source-position filename="gst-libs/gst/audio/audio.h" line="79"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="META_TAG_AUDIO_RATE_STR"
               value="rate"
               c:type="GST_META_TAG_AUDIO_RATE_STR"
               version="1.8">
-      <doc xml:space="preserve">This metadata stays relevant as long as sample rate is unchanged.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/audio.h"
+           line="81">This metadata stays relevant as long as sample rate is unchanged.</doc>
+      <source-position filename="gst-libs/gst/audio/audio.h" line="88"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="META_TAG_AUDIO_STR"
               value="audio"
               c:type="GST_META_TAG_AUDIO_STR"
               version="1.2">
-      <doc xml:space="preserve">This metadata is relevant for audio streams.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/audio.h"
+           line="64">This metadata is relevant for audio streams.</doc>
+      <source-position filename="gst-libs/gst/audio/audio.h" line="71"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
+    <function-macro name="STREAM_VOLUME_GET_INTERFACE"
+                    c:identifier="GST_STREAM_VOLUME_GET_INTERFACE"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/streamvolume.h" line="33"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
     <interface name="StreamVolume"
                c:symbol-prefix="stream_volume"
                c:type="GstStreamVolume"
                glib:type-name="GstStreamVolume"
                glib:get-type="gst_stream_volume_get_type"
                glib:type-struct="StreamVolumeInterface">
-      <doc xml:space="preserve">This interface is implemented by elements that provide a stream volume. Examples for
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/streamvolume.c"
+           line="20">This interface is implemented by elements that provide a stream volume. Examples for
 such elements are #volume and #playbin.
 
 Applications can use this interface to get or set the current stream volume. For this
@@ -9151,85 +13857,124 @@ gst_stream_volume_set_mute() and gst_stream_volume_get_mute().
 Elements that provide some kind of stream volume should implement the "volume" and
 "mute" #GObject properties and handle setting and getting of them properly.
 The volume property is defined to be a linear volume factor.</doc>
+      <source-position filename="gst-libs/gst/audio/streamvolume.h" line="37"/>
       <function name="convert_volume"
                 c:identifier="gst_stream_volume_convert_volume">
+        <source-position filename="gst-libs/gst/audio/streamvolume.h"
+                         line="74"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the converted volume</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/streamvolume.c"
+               line="170">the converted volume</doc>
           <type name="gdouble" c:type="gdouble"/>
         </return-value>
         <parameters>
           <parameter name="from" transfer-ownership="none">
-            <doc xml:space="preserve">#GstStreamVolumeFormat to convert from</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/streamvolume.c"
+                 line="166">#GstStreamVolumeFormat to convert from</doc>
             <type name="StreamVolumeFormat" c:type="GstStreamVolumeFormat"/>
           </parameter>
           <parameter name="to" transfer-ownership="none">
-            <doc xml:space="preserve">#GstStreamVolumeFormat to convert to</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/streamvolume.c"
+                 line="167">#GstStreamVolumeFormat to convert to</doc>
             <type name="StreamVolumeFormat" c:type="GstStreamVolumeFormat"/>
           </parameter>
           <parameter name="val" transfer-ownership="none">
-            <doc xml:space="preserve">Volume in @from format that should be converted</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/streamvolume.c"
+                 line="168">Volume in @from format that should be converted</doc>
             <type name="gdouble" c:type="gdouble"/>
           </parameter>
         </parameters>
       </function>
       <method name="get_mute" c:identifier="gst_stream_volume_get_mute">
+        <source-position filename="gst-libs/gst/audio/streamvolume.h"
+                         line="71"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">Returns %TRUE if the stream is muted</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/streamvolume.c"
+               line="138">Returns %TRUE if the stream is muted</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="volume" transfer-ownership="none">
-            <doc xml:space="preserve">#GstStreamVolume that should be used</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/streamvolume.c"
+                 line="136">#GstStreamVolume that should be used</doc>
             <type name="StreamVolume" c:type="GstStreamVolume*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_volume" c:identifier="gst_stream_volume_get_volume">
+        <source-position filename="gst-libs/gst/audio/streamvolume.h"
+                         line="63"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The current stream volume as linear factor</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/streamvolume.c"
+               line="97">The current stream volume as linear factor</doc>
           <type name="gdouble" c:type="gdouble"/>
         </return-value>
         <parameters>
           <instance-parameter name="volume" transfer-ownership="none">
-            <doc xml:space="preserve">#GstStreamVolume that should be used</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/streamvolume.c"
+                 line="94">#GstStreamVolume that should be used</doc>
             <type name="StreamVolume" c:type="GstStreamVolume*"/>
           </instance-parameter>
           <parameter name="format" transfer-ownership="none">
-            <doc xml:space="preserve">#GstStreamVolumeFormat which should be returned</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/streamvolume.c"
+                 line="95">#GstStreamVolumeFormat which should be returned</doc>
             <type name="StreamVolumeFormat" c:type="GstStreamVolumeFormat"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_mute" c:identifier="gst_stream_volume_set_mute">
+        <source-position filename="gst-libs/gst/audio/streamvolume.h"
+                         line="67"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="volume" transfer-ownership="none">
-            <doc xml:space="preserve">#GstStreamVolume that should be used</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/streamvolume.c"
+                 line="153">#GstStreamVolume that should be used</doc>
             <type name="StreamVolume" c:type="GstStreamVolume*"/>
           </instance-parameter>
           <parameter name="mute" transfer-ownership="none">
-            <doc xml:space="preserve">Mute state that should be set</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/streamvolume.c"
+                 line="154">Mute state that should be set</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_volume" c:identifier="gst_stream_volume_set_volume">
+        <source-position filename="gst-libs/gst/audio/streamvolume.h"
+                         line="58"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="volume" transfer-ownership="none">
-            <doc xml:space="preserve">#GstStreamVolume that should be used</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/streamvolume.c"
+                 line="117">#GstStreamVolume that should be used</doc>
             <type name="StreamVolume" c:type="GstStreamVolume*"/>
           </instance-parameter>
           <parameter name="format" transfer-ownership="none">
-            <doc xml:space="preserve">#GstStreamVolumeFormat of @val</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/streamvolume.c"
+                 line="118">#GstStreamVolumeFormat of @val</doc>
             <type name="StreamVolumeFormat" c:type="GstStreamVolumeFormat"/>
           </parameter>
           <parameter name="val" transfer-ownership="none">
-            <doc xml:space="preserve">Linear volume factor that should be set</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/audio/streamvolume.c"
+                 line="119">Linear volume factor that should be set</doc>
             <type name="gdouble" c:type="gdouble"/>
           </parameter>
         </parameters>
@@ -9242,28 +13987,38 @@ The volume property is defined to be a linear volume factor.</doc>
       </property>
     </interface>
     <enumeration name="StreamVolumeFormat" c:type="GstStreamVolumeFormat">
-      <doc xml:space="preserve">Different representations of a stream volume. gst_stream_volume_convert_volume()
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/streamvolume.h"
+           line="39">Different representations of a stream volume. gst_stream_volume_convert_volume()
 allows to convert between the different representations.
 
 Formulas to convert from a linear to a cubic or dB volume are
 cbrt(val) and 20 * log10 (val).</doc>
+      <source-position filename="gst-libs/gst/audio/streamvolume.h" line="55"/>
       <member name="linear"
               value="0"
               c:identifier="GST_STREAM_VOLUME_FORMAT_LINEAR">
-        <doc xml:space="preserve">Linear scale factor, 1.0 = 100%</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/streamvolume.h"
+             line="41">Linear scale factor, 1.0 = 100%</doc>
       </member>
       <member name="cubic"
               value="1"
               c:identifier="GST_STREAM_VOLUME_FORMAT_CUBIC">
-        <doc xml:space="preserve">Cubic volume scale</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/streamvolume.h"
+             line="42">Cubic volume scale</doc>
       </member>
       <member name="db" value="2" c:identifier="GST_STREAM_VOLUME_FORMAT_DB">
-        <doc xml:space="preserve">Logarithmic volume scale (dB, amplitude not power)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/streamvolume.h"
+             line="43">Logarithmic volume scale (dB, amplitude not power)</doc>
       </member>
     </enumeration>
     <record name="StreamVolumeInterface"
             c:type="GstStreamVolumeInterface"
             glib:is-gtype-struct-for="StreamVolume">
+      <source-position filename="gst-libs/gst/audio/streamvolume.h" line="37"/>
       <field name="iface">
         <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
       </field>
@@ -9271,12 +14026,17 @@ cbrt(val) and 20 * log10 (val).</doc>
     <function name="audio_buffer_clip"
               c:identifier="gst_audio_buffer_clip"
               moved-to="AudioBuffer.clip">
-      <doc xml:space="preserve">Clip the buffer to the given %GstSegment.
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/audio.c"
+           line="58">Clip the buffer to the given %GstSegment.
 
 After calling this function the caller does not own a reference to
 @buffer anymore.</doc>
+      <source-position filename="gst-libs/gst/audio/audio.h" line="96"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">%NULL if the buffer is completely outside the configured segment,
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio.c"
+             line="72">%NULL if the buffer is completely outside the configured segment,
 otherwise the clipped buffer is returned.
 
 If the buffer has no timestamp, it is assumed to be inside the segment and
@@ -9285,20 +14045,28 @@ is not clipped</doc>
       </return-value>
       <parameters>
         <parameter name="buffer" transfer-ownership="full">
-          <doc xml:space="preserve">The buffer to clip.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio.c"
+               line="60">The buffer to clip.</doc>
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </parameter>
         <parameter name="segment" transfer-ownership="none">
-          <doc xml:space="preserve">Segment in %GST_FORMAT_TIME or %GST_FORMAT_DEFAULT to which
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio.c"
+               line="61">Segment in %GST_FORMAT_TIME or %GST_FORMAT_DEFAULT to which
           the buffer should be clipped.</doc>
           <type name="Gst.Segment" c:type="const GstSegment*"/>
         </parameter>
         <parameter name="rate" transfer-ownership="none">
-          <doc xml:space="preserve">sample rate.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio.c"
+               line="63">sample rate.</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
         <parameter name="bpf" transfer-ownership="none">
-          <doc xml:space="preserve">size of one audio frame in bytes. This is the size of one sample *
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio.c"
+               line="64">size of one audio frame in bytes. This is the size of one sample *
 number of channels.</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
@@ -9307,29 +14075,43 @@ number of channels.</doc>
     <function name="audio_buffer_reorder_channels"
               c:identifier="gst_audio_buffer_reorder_channels"
               moved-to="AudioBuffer.reorder_channels">
-      <doc xml:space="preserve">Reorders @buffer from the channel positions @from to the channel
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/audio-channels.c"
+           line="278">Reorders @buffer from the channel positions @from to the channel
 positions @to. @from and @to must contain the same number of
 positions and the same positions, only in a different order.
 @buffer must be writable.</doc>
+      <source-position filename="gst-libs/gst/audio/audio-channels.h"
+                       line="135"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE if the reordering was possible.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-channels.c"
+             line="291">%TRUE if the reordering was possible.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="buffer" transfer-ownership="none">
-          <doc xml:space="preserve">The buffer to reorder.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-channels.c"
+               line="280">The buffer to reorder.</doc>
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </parameter>
         <parameter name="format" transfer-ownership="none">
-          <doc xml:space="preserve">The %GstAudioFormat of the buffer.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-channels.c"
+               line="281">The %GstAudioFormat of the buffer.</doc>
           <type name="AudioFormat" c:type="GstAudioFormat"/>
         </parameter>
         <parameter name="channels" transfer-ownership="none">
-          <doc xml:space="preserve">The number of channels.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-channels.c"
+               line="282">The number of channels.</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
         <parameter name="from" transfer-ownership="none">
-          <doc xml:space="preserve">The channel positions in the buffer.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-channels.c"
+               line="283">The channel positions in the buffer.</doc>
           <array length="2"
                  zero-terminated="0"
                  c:type="const GstAudioChannelPosition*">
@@ -9338,7 +14120,9 @@ positions and the same positions, only in a different order.
           </array>
         </parameter>
         <parameter name="to" transfer-ownership="none">
-          <doc xml:space="preserve">The channel positions to convert to.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-channels.c"
+               line="284">The channel positions to convert to.</doc>
           <array length="2"
                  zero-terminated="0"
                  c:type="const GstAudioChannelPosition*">
@@ -9352,33 +14136,46 @@ positions and the same positions, only in a different order.
               c:identifier="gst_audio_buffer_truncate"
               moved-to="AudioBuffer.truncate"
               version="1.16">
-      <doc xml:space="preserve">Truncate the buffer to finally have @samples number of samples, removing
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/audio.c"
+           line="247">Truncate the buffer to finally have @samples number of samples, removing
 the necessary amount of samples from the end and @trim number of samples
 from the beginning.
 
 After calling this function the caller does not own a reference to
 @buffer anymore.</doc>
+      <source-position filename="gst-libs/gst/audio/audio.h" line="101"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">the truncated buffer or %NULL if the arguments
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio.c"
+             line="264">the truncated buffer or %NULL if the arguments
   were invalid</doc>
         <type name="Gst.Buffer" c:type="GstBuffer*"/>
       </return-value>
       <parameters>
         <parameter name="buffer" transfer-ownership="full">
-          <doc xml:space="preserve">The buffer to truncate.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio.c"
+               line="249">The buffer to truncate.</doc>
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </parameter>
         <parameter name="bpf" transfer-ownership="none">
-          <doc xml:space="preserve">size of one audio frame in bytes. This is the size of one sample *
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio.c"
+               line="250">size of one audio frame in bytes. This is the size of one sample *
 number of channels.</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
         <parameter name="trim" transfer-ownership="none">
-          <doc xml:space="preserve">the number of samples to remove from the beginning of the buffer</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio.c"
+               line="252">the number of samples to remove from the beginning of the buffer</doc>
           <type name="gsize" c:type="gsize"/>
         </parameter>
         <parameter name="samples" transfer-ownership="none">
-          <doc xml:space="preserve">the final number of samples that should exist in this buffer or -1
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio.c"
+               line="253">the final number of samples that should exist in this buffer or -1
 to use all the remaining samples if you are only removing samples from the
 beginning.</doc>
           <type name="gsize" c:type="gsize"/>
@@ -9388,18 +14185,26 @@ beginning.</doc>
     <function name="audio_channel_get_fallback_mask"
               c:identifier="gst_audio_channel_get_fallback_mask"
               version="1.8">
-      <doc xml:space="preserve">Get the fallback channel-mask for the given number of channels.
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/audio-channels.c"
+           line="568">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.</doc>
+      <source-position filename="gst-libs/gst/audio/audio-channels.h"
+                       line="172"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">a fallback channel-mask for @channels or 0 when there is no
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-channels.c"
+             line="577">a fallback channel-mask for @channels or 0 when there is no
 mask and mono.</doc>
         <type name="guint64" c:type="guint64"/>
       </return-value>
       <parameters>
         <parameter name="channels" transfer-ownership="none">
-          <doc xml:space="preserve">the number of channels</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-channels.c"
+               line="570">the number of channels</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
       </parameters>
@@ -9408,15 +14213,23 @@ mask and mono.</doc>
               c:identifier="gst_audio_channel_mixer_new"
               moved-to="AudioChannelMixer.new"
               introspectable="0">
-      <doc xml:space="preserve">Create a new channel mixer object for the given parameters.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/audio-channel-mixer.c"
+           line="973">Create a new channel mixer object for the given parameters.</doc>
+      <source-position filename="gst-libs/gst/audio/audio-channel-mixer.h"
+                       line="50"/>
       <return-value>
-        <doc xml:space="preserve">a new #GstAudioChannelMixer object, or %NULL if @format isn't supported.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-channel-mixer.c"
+             line="983">a new #GstAudioChannelMixer object, or %NULL if @format isn't supported.
   Free with gst_audio_channel_mixer_free() after usage.</doc>
         <type name="AudioChannelMixer" c:type="GstAudioChannelMixer*"/>
       </return-value>
       <parameters>
         <parameter name="flags" transfer-ownership="none">
-          <doc xml:space="preserve">#GstAudioChannelMixerFlags</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-channel-mixer.c"
+               line="975">#GstAudioChannelMixerFlags</doc>
           <type name="AudioChannelMixerFlags"
                 c:type="GstAudioChannelMixerFlags"/>
         </parameter>
@@ -9424,19 +14237,27 @@ mask and mono.</doc>
           <type name="AudioFormat" c:type="GstAudioFormat"/>
         </parameter>
         <parameter name="in_channels" transfer-ownership="none">
-          <doc xml:space="preserve">number of input channels</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-channel-mixer.c"
+               line="976">number of input channels</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
         <parameter name="in_position" transfer-ownership="none">
-          <doc xml:space="preserve">positions of input channels</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-channel-mixer.c"
+               line="977">positions of input channels</doc>
           <type name="AudioChannelPosition" c:type="GstAudioChannelPosition*"/>
         </parameter>
         <parameter name="out_channels" transfer-ownership="none">
-          <doc xml:space="preserve">number of output channels</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-channel-mixer.c"
+               line="978">number of output channels</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
         <parameter name="out_position" transfer-ownership="none">
-          <doc xml:space="preserve">positions of output channels</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-channel-mixer.c"
+               line="979">positions of output channels</doc>
           <type name="AudioChannelPosition" c:type="GstAudioChannelPosition*"/>
         </parameter>
       </parameters>
@@ -9446,16 +14267,24 @@ mask and mono.</doc>
               moved-to="AudioChannelMixer.new_with_matrix"
               version="1.14"
               introspectable="0">
-      <doc xml:space="preserve">Create a new channel mixer object for the given parameters.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/audio-channel-mixer.c"
+           line="809">Create a new channel mixer object for the given parameters.</doc>
+      <source-position filename="gst-libs/gst/audio/audio-channel-mixer.h"
+                       line="58"/>
       <return-value>
-        <doc xml:space="preserve">a new #GstAudioChannelMixer object, or %NULL if @format isn't supported,
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-channel-mixer.c"
+             line="820">a new #GstAudioChannelMixer object, or %NULL if @format isn't supported,
   @matrix is invalid, or @matrix is %NULL and @in_channels != @out_channels.
   Free with gst_audio_channel_mixer_free() after usage.</doc>
         <type name="AudioChannelMixer" c:type="GstAudioChannelMixer*"/>
       </return-value>
       <parameters>
         <parameter name="flags" transfer-ownership="none">
-          <doc xml:space="preserve">#GstAudioChannelMixerFlags</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-channel-mixer.c"
+               line="811">#GstAudioChannelMixerFlags</doc>
           <type name="AudioChannelMixerFlags"
                 c:type="GstAudioChannelMixerFlags"/>
         </parameter>
@@ -9463,18 +14292,24 @@ mask and mono.</doc>
           <type name="AudioFormat" c:type="GstAudioFormat"/>
         </parameter>
         <parameter name="in_channels" transfer-ownership="none">
-          <doc xml:space="preserve">number of input channels</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-channel-mixer.c"
+               line="812">number of input channels</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
         <parameter name="out_channels" transfer-ownership="none">
-          <doc xml:space="preserve">number of output channels</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-channel-mixer.c"
+               line="813">number of output channels</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
         <parameter name="matrix"
                    transfer-ownership="full"
                    nullable="1"
                    allow-none="1">
-          <doc xml:space="preserve">channel conversion matrix, m[@in_channels][@out_channels].
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-channel-mixer.c"
+               line="814">channel conversion matrix, m[@in_channels][@out_channels].
   If identity matrix, passthrough applies. If %NULL, a (potentially truncated)
   identity matrix is generated.</doc>
           <type name="gfloat" c:type="gfloat**"/>
@@ -9483,27 +14318,39 @@ mask and mono.</doc>
     </function>
     <function name="audio_channel_positions_from_mask"
               c:identifier="gst_audio_channel_positions_from_mask">
-      <doc xml:space="preserve">Convert the @channels present in @channel_mask to a @position array
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/audio-channels.c"
+           line="367">Convert the @channels present in @channel_mask to a @position array
 (which should have at least @channels entries ensured by caller).
 If @channel_mask is set to 0, it is considered as 'not present' for purpose
 of conversion.
 A partially valid @channel_mask with less bits set than the number
 of channels is considered valid.</doc>
+      <source-position filename="gst-libs/gst/audio/audio-channels.h"
+                       line="162"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE if channel and channel mask are valid and could be converted</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-channels.c"
+             line="381">%TRUE if channel and channel mask are valid and could be converted</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="channels" transfer-ownership="none">
-          <doc xml:space="preserve">The number of channels</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-channels.c"
+               line="369">The number of channels</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
         <parameter name="channel_mask" transfer-ownership="none">
-          <doc xml:space="preserve">The input channel_mask</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-channels.c"
+               line="370">The input channel_mask</doc>
           <type name="guint64" c:type="guint64"/>
         </parameter>
         <parameter name="position" transfer-ownership="none">
-          <doc xml:space="preserve">The
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-channels.c"
+               line="371">The
   %GstAudioChannelPosition&lt;!-- --&gt;s</doc>
           <array length="0"
                  zero-terminated="0"
@@ -9516,17 +14363,25 @@ of channels is considered valid.</doc>
     </function>
     <function name="audio_channel_positions_to_mask"
               c:identifier="gst_audio_channel_positions_to_mask">
-      <doc xml:space="preserve">Convert the @position array of @channels channels to a bitmask.
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/audio-channels.c"
+           line="345">Convert the @position array of @channels channels to a bitmask.
 
 If @force_order is %TRUE it additionally checks if the channels are
 in the order required by GStreamer.</doc>
+      <source-position filename="gst-libs/gst/audio/audio-channels.h"
+                       line="157"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE if the channel positions are valid and could be converted.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-channels.c"
+             line="357">%TRUE if the channel positions are valid and could be converted.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="position" transfer-ownership="none">
-          <doc xml:space="preserve">The %GstAudioChannelPositions</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-channels.c"
+               line="347">The %GstAudioChannelPositions</doc>
           <array length="1"
                  zero-terminated="0"
                  c:type="const GstAudioChannelPosition*">
@@ -9535,36 +14390,49 @@ in the order required by GStreamer.</doc>
           </array>
         </parameter>
         <parameter name="channels" transfer-ownership="none">
-          <doc xml:space="preserve">The number of channels.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-channels.c"
+               line="348">The number of channels.</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
         <parameter name="force_order" transfer-ownership="none">
-          <doc xml:space="preserve">Only consider the GStreamer channel order.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-channels.c"
+               line="349">Only consider the GStreamer channel order.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </parameter>
         <parameter name="channel_mask"
                    direction="out"
                    caller-allocates="0"
                    transfer-ownership="full">
-          <doc xml:space="preserve">the output channel mask</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-channels.c"
+               line="350">the output channel mask</doc>
           <type name="guint64" c:type="guint64*"/>
         </parameter>
       </parameters>
     </function>
     <function name="audio_channel_positions_to_string"
-              c:identifier="gst_audio_channel_positions_to_string">
-      <doc xml:space="preserve">Converts @position to a human-readable string representation for
+              c:identifier="gst_audio_channel_positions_to_string"
+              version="1.10">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/audio-channels.c"
+           line="666">Converts @position to a human-readable string representation for
 debugging purposes.</doc>
+      <source-position filename="gst-libs/gst/audio/audio-channels.h"
+                       line="175"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">a newly allocated string representing
-@position
-
-Since 1.10</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-channels.c"
+             line="675">a newly allocated string representing
+@position</doc>
         <type name="utf8" c:type="gchar*"/>
       </return-value>
       <parameters>
         <parameter name="position" transfer-ownership="none">
-          <doc xml:space="preserve">The %GstAudioChannelPositions
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-channels.c"
+               line="668">The %GstAudioChannelPositions
   to convert.</doc>
           <array length="1"
                  zero-terminated="0"
@@ -9574,23 +14442,33 @@ Since 1.10</doc>
           </array>
         </parameter>
         <parameter name="channels" transfer-ownership="none">
-          <doc xml:space="preserve">The number of channels.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-channels.c"
+               line="670">The number of channels.</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
       </parameters>
     </function>
     <function name="audio_channel_positions_to_valid_order"
               c:identifier="gst_audio_channel_positions_to_valid_order">
-      <doc xml:space="preserve">Reorders the channel positions in @position from any order to
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/audio-channels.c"
+           line="491">Reorders the channel positions in @position from any order to
 the GStreamer channel order.</doc>
+      <source-position filename="gst-libs/gst/audio/audio-channels.h"
+                       line="149"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE if the channel positions are valid and reordering
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-channels.c"
+             line="500">%TRUE if the channel positions are valid and reordering
 was successful.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="position" transfer-ownership="none">
-          <doc xml:space="preserve">The channel positions to
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-channels.c"
+               line="493">The channel positions to
   reorder to.</doc>
           <array length="1"
                  zero-terminated="0"
@@ -9600,23 +14478,33 @@ was successful.</doc>
           </array>
         </parameter>
         <parameter name="channels" transfer-ownership="none">
-          <doc xml:space="preserve">The number of channels.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-channels.c"
+               line="495">The number of channels.</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
       </parameters>
     </function>
     <function name="audio_check_valid_channel_positions"
               c:identifier="gst_audio_check_valid_channel_positions">
-      <doc xml:space="preserve">Checks if @position contains valid channel positions for
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/audio-channels.c"
+           line="325">Checks if @position contains valid channel positions for
 @channels channels. If @force_order is %TRUE it additionally
 checks if the channels are in the order required by GStreamer.</doc>
+      <source-position filename="gst-libs/gst/audio/audio-channels.h"
+                       line="153"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE if the channel positions are valid.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-channels.c"
+             line="336">%TRUE if the channel positions are valid.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="position" transfer-ownership="none">
-          <doc xml:space="preserve">The %GstAudioChannelPositions
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-channels.c"
+               line="327">The %GstAudioChannelPositions
   to check.</doc>
           <array length="1"
                  zero-terminated="0"
@@ -9626,17 +14514,23 @@ checks if the channels are in the order required by GStreamer.</doc>
           </array>
         </parameter>
         <parameter name="channels" transfer-ownership="none">
-          <doc xml:space="preserve">The number of channels.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-channels.c"
+               line="329">The number of channels.</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
         <parameter name="force_order" transfer-ownership="none">
-          <doc xml:space="preserve">Only consider the GStreamer channel order.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-channels.c"
+               line="330">Only consider the GStreamer channel order.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </parameter>
       </parameters>
     </function>
     <function name="audio_clipping_meta_api_get_type"
               c:identifier="gst_audio_clipping_meta_api_get_type">
+      <source-position filename="gst-libs/gst/audio/gstaudiometa.h"
+                       line="115"/>
       <return-value transfer-ownership="none">
         <type name="GType" c:type="GType"/>
       </return-value>
@@ -9644,12 +14538,15 @@ checks if the channels are in the order required by GStreamer.</doc>
     <function name="audio_clipping_meta_get_info"
               c:identifier="gst_audio_clipping_meta_get_info"
               moved-to="AudioClippingMeta.get_info">
+      <source-position filename="gst-libs/gst/audio/gstaudiometa.h"
+                       line="118"/>
       <return-value transfer-ownership="none">
         <type name="Gst.MetaInfo" c:type="const GstMetaInfo*"/>
       </return-value>
     </function>
     <function name="audio_downmix_meta_api_get_type"
               c:identifier="gst_audio_downmix_meta_api_get_type">
+      <source-position filename="gst-libs/gst/audio/gstaudiometa.h" line="60"/>
       <return-value transfer-ownership="none">
         <type name="GType" c:type="GType"/>
       </return-value>
@@ -9657,6 +14554,7 @@ checks if the channels are in the order required by GStreamer.</doc>
     <function name="audio_downmix_meta_get_info"
               c:identifier="gst_audio_downmix_meta_get_info"
               moved-to="AudioDownmixMeta.get_info">
+      <source-position filename="gst-libs/gst/audio/gstaudiometa.h" line="63"/>
       <return-value transfer-ownership="none">
         <type name="Gst.MetaInfo" c:type="const GstMetaInfo*"/>
       </return-value>
@@ -9664,27 +14562,41 @@ checks if the channels are in the order required by GStreamer.</doc>
     <function name="audio_format_build_integer"
               c:identifier="gst_audio_format_build_integer"
               moved-to="AudioFormat.build_integer">
-      <doc xml:space="preserve">Construct a #GstAudioFormat with given parameters.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/audio-format.c"
+           line="358">Construct a #GstAudioFormat with given parameters.</doc>
+      <source-position filename="gst-libs/gst/audio/audio-format.h"
+                       line="275"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">a #GstAudioFormat or GST_AUDIO_FORMAT_UNKNOWN when no audio format
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-format.c"
+             line="367">a #GstAudioFormat or GST_AUDIO_FORMAT_UNKNOWN when no audio format
 exists with the given parameters.</doc>
         <type name="AudioFormat" c:type="GstAudioFormat"/>
       </return-value>
       <parameters>
         <parameter name="sign" transfer-ownership="none">
-          <doc xml:space="preserve">signed or unsigned format</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-format.c"
+               line="360">signed or unsigned format</doc>
           <type name="gboolean" c:type="gboolean"/>
         </parameter>
         <parameter name="endianness" transfer-ownership="none">
-          <doc xml:space="preserve">G_LITTLE_ENDIAN or G_BIG_ENDIAN</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-format.c"
+               line="361">G_LITTLE_ENDIAN or G_BIG_ENDIAN</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
         <parameter name="width" transfer-ownership="none">
-          <doc xml:space="preserve">amount of bits used per sample</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-format.c"
+               line="362">amount of bits used per sample</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
         <parameter name="depth" transfer-ownership="none">
-          <doc xml:space="preserve">amount of used bits in @width</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-format.c"
+               line="363">amount of used bits in @width</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
       </parameters>
@@ -9692,24 +14604,34 @@ exists with the given parameters.</doc>
     <function name="audio_format_fill_silence"
               c:identifier="gst_audio_format_fill_silence"
               moved-to="AudioFormat.fill_silence">
-      <doc xml:space="preserve">Fill @length bytes in @dest with silence samples for @info.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/audio-format.c"
+           line="454">Fill @length bytes in @dest with silence samples for @info.</doc>
+      <source-position filename="gst-libs/gst/audio/audio-format.h"
+                       line="289"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="info" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstAudioFormatInfo</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-format.c"
+               line="456">a #GstAudioFormatInfo</doc>
           <type name="AudioFormatInfo" c:type="const GstAudioFormatInfo*"/>
         </parameter>
         <parameter name="dest" transfer-ownership="none">
-          <doc xml:space="preserve">a destination
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-format.c"
+               line="457">a destination
   to fill</doc>
           <array length="2" zero-terminated="0" c:type="gpointer">
             <type name="guint8"/>
           </array>
         </parameter>
         <parameter name="length" transfer-ownership="none">
-          <doc xml:space="preserve">the length to fill</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-format.c"
+               line="459">the length to fill</doc>
           <type name="gsize" c:type="gsize"/>
         </parameter>
       </parameters>
@@ -9717,15 +14639,23 @@ exists with the given parameters.</doc>
     <function name="audio_format_from_string"
               c:identifier="gst_audio_format_from_string"
               moved-to="AudioFormat.from_string">
-      <doc xml:space="preserve">Convert the @format string to its #GstAudioFormat.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/audio-format.c"
+           line="404">Convert the @format string to its #GstAudioFormat.</doc>
+      <source-position filename="gst-libs/gst/audio/audio-format.h"
+                       line="279"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">the #GstAudioFormat for @format or GST_AUDIO_FORMAT_UNKNOWN when the
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-format.c"
+             line="410">the #GstAudioFormat for @format or GST_AUDIO_FORMAT_UNKNOWN when the
 string is not a known format.</doc>
         <type name="AudioFormat" c:type="GstAudioFormat"/>
       </return-value>
       <parameters>
         <parameter name="format" transfer-ownership="none">
-          <doc xml:space="preserve">a format string</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-format.c"
+               line="406">a format string</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
       </parameters>
@@ -9733,20 +14663,30 @@ string is not a known format.</doc>
     <function name="audio_format_get_info"
               c:identifier="gst_audio_format_get_info"
               moved-to="AudioFormat.get_info">
-      <doc xml:space="preserve">Get the #GstAudioFormatInfo for @format</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/audio-format.c"
+           line="438">Get the #GstAudioFormatInfo for @format</doc>
+      <source-position filename="gst-libs/gst/audio/audio-format.h"
+                       line="286"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">The #GstAudioFormatInfo for @format.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-format.c"
+             line="444">The #GstAudioFormatInfo for @format.</doc>
         <type name="AudioFormatInfo" c:type="const GstAudioFormatInfo*"/>
       </return-value>
       <parameters>
         <parameter name="format" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstAudioFormat</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-format.c"
+               line="440">a #GstAudioFormat</doc>
           <type name="AudioFormat" c:type="GstAudioFormat"/>
         </parameter>
       </parameters>
     </function>
     <function name="audio_format_info_get_type"
               c:identifier="gst_audio_format_info_get_type">
+      <source-position filename="gst-libs/gst/audio/audio-format.h"
+                       line="257"/>
       <return-value transfer-ownership="none">
         <type name="GType" c:type="GType"/>
       </return-value>
@@ -9754,6 +14694,8 @@ string is not a known format.</doc>
     <function name="audio_format_to_string"
               c:identifier="gst_audio_format_to_string"
               moved-to="AudioFormat.to_string">
+      <source-position filename="gst-libs/gst/audio/audio-format.h"
+                       line="282"/>
       <return-value transfer-ownership="none">
         <type name="utf8" c:type="const gchar*"/>
       </return-value>
@@ -9763,9 +14705,39 @@ string is not a known format.</doc>
         </parameter>
       </parameters>
     </function>
+    <function name="audio_formats_raw"
+              c:identifier="gst_audio_formats_raw"
+              version="1.18">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/audio-format.c"
+           line="558">Return all the raw audio formats supported by GStreamer.</doc>
+      <source-position filename="gst-libs/gst/audio/audio-format.h"
+                       line="357"/>
+      <return-value transfer-ownership="none">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-format.c"
+             line="564">an array of #GstAudioFormat</doc>
+        <array length="0" zero-terminated="0" c:type="const GstAudioFormat*">
+          <type name="AudioFormat" c:type="GstAudioFormat"/>
+        </array>
+      </return-value>
+      <parameters>
+        <parameter name="len"
+                   direction="out"
+                   caller-allocates="0"
+                   transfer-ownership="full">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-format.c"
+               line="560">the number of elements in the returned array</doc>
+          <type name="guint" c:type="guint*"/>
+        </parameter>
+      </parameters>
+    </function>
     <function name="audio_get_channel_reorder_map"
               c:identifier="gst_audio_get_channel_reorder_map">
-      <doc xml:space="preserve">Returns a reorder map for @from to @to that can be used in
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/audio-channels.c"
+           line="429">Returns a reorder map for @from to @to that can be used in
 custom channel reordering code, e.g. to convert from or to the
 GStreamer channel order. @from and @to must contain the same
 number of positions and the same positions, only in a
@@ -9773,18 +14745,26 @@ different order.
 
 The resulting @reorder_map can be used for reordering by assigning
 channel i of the input to channel reorder_map[i] of the output.</doc>
+      <source-position filename="gst-libs/gst/audio/audio-channels.h"
+                       line="166"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE if the channel positions are valid and reordering
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-channels.c"
+             line="445">%TRUE if the channel positions are valid and reordering
 is possible.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="channels" transfer-ownership="none">
-          <doc xml:space="preserve">The number of channels.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-channels.c"
+               line="431">The number of channels.</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
         <parameter name="from" transfer-ownership="none">
-          <doc xml:space="preserve">The channel positions to reorder from.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-channels.c"
+               line="432">The channel positions to reorder from.</doc>
           <array length="0"
                  zero-terminated="0"
                  c:type="const GstAudioChannelPosition*">
@@ -9793,7 +14773,9 @@ is possible.</doc>
           </array>
         </parameter>
         <parameter name="to" transfer-ownership="none">
-          <doc xml:space="preserve">The channel positions to reorder to.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-channels.c"
+               line="433">The channel positions to reorder to.</doc>
           <array length="0"
                  zero-terminated="0"
                  c:type="const GstAudioChannelPosition*">
@@ -9802,7 +14784,9 @@ is possible.</doc>
           </array>
         </parameter>
         <parameter name="reorder_map" transfer-ownership="none">
-          <doc xml:space="preserve">Pointer to the reorder map.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-channels.c"
+               line="434">Pointer to the reorder map.</doc>
           <array length="0" zero-terminated="0" c:type="gint*">
             <type name="gint" c:type="gint"/>
           </array>
@@ -9811,16 +14795,24 @@ is possible.</doc>
     </function>
     <function name="audio_iec61937_frame_size"
               c:identifier="gst_audio_iec61937_frame_size">
-      <doc xml:space="preserve">Calculated the size of the buffer expected by gst_audio_iec61937_payload() for
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/gstaudioiec61937.c"
+           line="65">Calculated the size of the buffer expected by gst_audio_iec61937_payload() for
 payloading type from @spec.</doc>
+      <source-position filename="gst-libs/gst/audio/gstaudioiec61937.h"
+                       line="28"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">the size or 0 if the given @type is not supported or cannot be
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioiec61937.c"
+             line="72">the size or 0 if the given @type is not supported or cannot be
 payloaded.</doc>
         <type name="guint" c:type="guint"/>
       </return-value>
       <parameters>
         <parameter name="spec" transfer-ownership="none">
-          <doc xml:space="preserve">the ringbufer spec</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudioiec61937.c"
+               line="67">the ringbufer spec</doc>
           <type name="AudioRingBufferSpec"
                 c:type="const GstAudioRingBufferSpec*"/>
         </parameter>
@@ -9828,49 +14820,111 @@ payloaded.</doc>
     </function>
     <function name="audio_iec61937_payload"
               c:identifier="gst_audio_iec61937_payload">
-      <doc xml:space="preserve">Payloads @src in the form specified by IEC 61937 for the type from @spec and
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/gstaudioiec61937.c"
+           line="142">Payloads @src in the form specified by IEC 61937 for the type from @spec and
 stores the result in @dst. @src must contain exactly one frame of data and
 the frame is not checked for errors.</doc>
+      <source-position filename="gst-libs/gst/audio/gstaudioiec61937.h"
+                       line="31"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">transfer-full: %TRUE if the payloading was successful, %FALSE
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudioiec61937.c"
+             line="156">transfer-full: %TRUE if the payloading was successful, %FALSE
 otherwise.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="src" transfer-ownership="none">
-          <doc xml:space="preserve">a buffer containing the data to payload</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudioiec61937.c"
+               line="144">a buffer containing the data to payload</doc>
           <array length="1" zero-terminated="0" c:type="const guint8*">
             <type name="guint8" c:type="guint8"/>
           </array>
         </parameter>
         <parameter name="src_n" transfer-ownership="none">
-          <doc xml:space="preserve">size of @src in bytes</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudioiec61937.c"
+               line="145">size of @src in bytes</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
         <parameter name="dst" transfer-ownership="none">
-          <doc xml:space="preserve">the destination buffer to store the
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudioiec61937.c"
+               line="146">the destination buffer to store the
       payloaded contents in. Should not overlap with @src</doc>
           <array length="3" zero-terminated="0" c:type="guint8*">
             <type name="guint8" c:type="guint8"/>
           </array>
         </parameter>
         <parameter name="dst_n" transfer-ownership="none">
-          <doc xml:space="preserve">size of @dst in bytes</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudioiec61937.c"
+               line="148">size of @dst in bytes</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
         <parameter name="spec" transfer-ownership="none">
-          <doc xml:space="preserve">the ringbufer spec for @src</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudioiec61937.c"
+               line="149">the ringbufer spec for @src</doc>
           <type name="AudioRingBufferSpec"
                 c:type="const GstAudioRingBufferSpec*"/>
         </parameter>
         <parameter name="endianness" transfer-ownership="none">
-          <doc xml:space="preserve">the expected byte order of the payloaded data</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudioiec61937.c"
+               line="150">the expected byte order of the payloaded data</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
       </parameters>
     </function>
+    <function name="audio_make_raw_caps"
+              c:identifier="gst_audio_make_raw_caps"
+              version="1.18">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/audio-format.c"
+           line="582">Return a generic raw audio caps for formats defined in @formats.
+If @formats is %NULL returns a caps for all the supported raw audio formats,
+see gst_audio_formats_raw().</doc>
+      <source-position filename="gst-libs/gst/audio/audio-format.h"
+                       line="404"/>
+      <return-value transfer-ownership="full">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-format.c"
+             line="592">an audio @GstCaps</doc>
+        <type name="Gst.Caps" c:type="GstCaps*"/>
+      </return-value>
+      <parameters>
+        <parameter name="formats"
+                   transfer-ownership="none"
+                   nullable="1"
+                   allow-none="1">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-format.c"
+               line="584">an array of raw #GstAudioFormat, or %NULL</doc>
+          <array length="1" zero-terminated="0" c:type="const GstAudioFormat*">
+            <type name="AudioFormat" c:type="GstAudioFormat"/>
+          </array>
+        </parameter>
+        <parameter name="len" transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-format.c"
+               line="585">the size of @formats</doc>
+          <type name="guint" c:type="guint"/>
+        </parameter>
+        <parameter name="layout" transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-format.c"
+               line="586">the layout of audio samples</doc>
+          <type name="AudioLayout" c:type="GstAudioLayout"/>
+        </parameter>
+      </parameters>
+    </function>
     <function name="audio_meta_api_get_type"
               c:identifier="gst_audio_meta_api_get_type">
+      <source-position filename="gst-libs/gst/audio/gstaudiometa.h"
+                       line="188"/>
       <return-value transfer-ownership="none">
         <type name="GType" c:type="GType"/>
       </return-value>
@@ -9878,6 +14932,8 @@ otherwise.</doc>
     <function name="audio_meta_get_info"
               c:identifier="gst_audio_meta_get_info"
               moved-to="AudioMeta.get_info">
+      <source-position filename="gst-libs/gst/audio/gstaudiometa.h"
+                       line="191"/>
       <return-value transfer-ownership="none">
         <type name="Gst.MetaInfo" c:type="const GstMetaInfo*"/>
       </return-value>
@@ -9886,78 +14942,112 @@ otherwise.</doc>
               c:identifier="gst_audio_quantize_new"
               moved-to="AudioQuantize.new"
               introspectable="0">
-      <doc xml:space="preserve">Create a new quantizer object with the given parameters.
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/audio-quantize.c"
+           line="413">Create a new quantizer object with the given parameters.
 
 Output samples will be quantized to a multiple of @quantizer. Better
 performance is achieved when @quantizer is a power of 2.
 
 Dithering and noise-shaping can be performed during quantization with
 the @dither and @ns parameters.</doc>
+      <source-position filename="gst-libs/gst/audio/audio-quantize.h"
+                       line="85"/>
       <return-value>
-        <doc xml:space="preserve">a new #GstAudioQuantize. Free with gst_audio_quantize_free().</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-quantize.c"
+             line="430">a new #GstAudioQuantize. Free with gst_audio_quantize_free().</doc>
         <type name="AudioQuantize" c:type="GstAudioQuantize*"/>
       </return-value>
       <parameters>
         <parameter name="dither" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstAudioDitherMethod</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-quantize.c"
+               line="415">a #GstAudioDitherMethod</doc>
           <type name="AudioDitherMethod" c:type="GstAudioDitherMethod"/>
         </parameter>
         <parameter name="ns" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstAudioNoiseShapingMethod</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-quantize.c"
+               line="416">a #GstAudioNoiseShapingMethod</doc>
           <type name="AudioNoiseShapingMethod"
                 c:type="GstAudioNoiseShapingMethod"/>
         </parameter>
         <parameter name="flags" transfer-ownership="none">
-          <doc xml:space="preserve">#GstAudioQuantizeFlags</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-quantize.c"
+               line="417">#GstAudioQuantizeFlags</doc>
           <type name="AudioQuantizeFlags" c:type="GstAudioQuantizeFlags"/>
         </parameter>
         <parameter name="format" transfer-ownership="none">
-          <doc xml:space="preserve">the #GstAudioFormat of the samples</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-quantize.c"
+               line="418">the #GstAudioFormat of the samples</doc>
           <type name="AudioFormat" c:type="GstAudioFormat"/>
         </parameter>
         <parameter name="channels" transfer-ownership="none">
-          <doc xml:space="preserve">the amount of channels in the samples</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-quantize.c"
+               line="419">the amount of channels in the samples</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
         <parameter name="quantizer" transfer-ownership="none">
-          <doc xml:space="preserve">the quantizer to use</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-quantize.c"
+               line="420">the quantizer to use</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
       </parameters>
     </function>
     <function name="audio_reorder_channels"
               c:identifier="gst_audio_reorder_channels">
-      <doc xml:space="preserve">Reorders @data from the channel positions @from to the channel
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/audio-channels.c"
+           line="185">Reorders @data from the channel positions @from to the channel
 positions @to. @from and @to must contain the same number of
 positions and the same positions, only in a different order.
 
 Note: this function assumes the audio data is in interleaved layout</doc>
+      <source-position filename="gst-libs/gst/audio/audio-channels.h"
+                       line="142"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE if the reordering was possible.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-channels.c"
+             line="201">%TRUE if the reordering was possible.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="data" transfer-ownership="none">
-          <doc xml:space="preserve">The pointer to
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-channels.c"
+               line="187">The pointer to
   the memory.</doc>
           <array length="1" zero-terminated="0" c:type="gpointer">
             <type name="guint8"/>
           </array>
         </parameter>
         <parameter name="size" transfer-ownership="none">
-          <doc xml:space="preserve">The size of the memory.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-channels.c"
+               line="189">The size of the memory.</doc>
           <type name="gsize" c:type="gsize"/>
         </parameter>
         <parameter name="format" transfer-ownership="none">
-          <doc xml:space="preserve">The %GstAudioFormat of the buffer.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-channels.c"
+               line="190">The %GstAudioFormat of the buffer.</doc>
           <type name="AudioFormat" c:type="GstAudioFormat"/>
         </parameter>
         <parameter name="channels" transfer-ownership="none">
-          <doc xml:space="preserve">The number of channels.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-channels.c"
+               line="191">The number of channels.</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
         <parameter name="from" transfer-ownership="none">
-          <doc xml:space="preserve">The channel positions in the buffer.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-channels.c"
+               line="192">The channel positions in the buffer.</doc>
           <array length="3"
                  zero-terminated="0"
                  c:type="const GstAudioChannelPosition*">
@@ -9966,7 +15056,9 @@ Note: this function assumes the audio data is in interleaved layout</doc>
           </array>
         </parameter>
         <parameter name="to" transfer-ownership="none">
-          <doc xml:space="preserve">The channel positions to convert to.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-channels.c"
+               line="193">The channel positions to convert to.</doc>
           <array length="3"
                  zero-terminated="0"
                  c:type="const GstAudioChannelPosition*">
@@ -9979,39 +15071,59 @@ Note: this function assumes the audio data is in interleaved layout</doc>
     <function name="audio_resampler_new"
               c:identifier="gst_audio_resampler_new"
               moved-to="AudioResampler.new">
-      <doc xml:space="preserve">Make a new resampler.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/audio-resampler.c"
+           line="1333">Make a new resampler.</doc>
+      <source-position filename="gst-libs/gst/audio/audio-resampler.h"
+                       line="211"/>
       <return-value transfer-ownership="full" skip="1">
-        <doc xml:space="preserve">The new #GstAudioResampler, or
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/audio-resampler.c"
+             line="1345">The new #GstAudioResampler, or
 %NULL on failure.</doc>
         <type name="AudioResampler" c:type="GstAudioResampler*"/>
       </return-value>
       <parameters>
         <parameter name="method" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstAudioResamplerMethod</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-resampler.c"
+               line="1335">a #GstAudioResamplerMethod</doc>
           <type name="AudioResamplerMethod" c:type="GstAudioResamplerMethod"/>
         </parameter>
         <parameter name="flags" transfer-ownership="none">
-          <doc xml:space="preserve">#GstAudioResamplerFlags</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-resampler.c"
+               line="1336">#GstAudioResamplerFlags</doc>
           <type name="AudioResamplerFlags" c:type="GstAudioResamplerFlags"/>
         </parameter>
         <parameter name="format" transfer-ownership="none">
-          <doc xml:space="preserve">the #GstAudioFormat</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-resampler.c"
+               line="1337">the #GstAudioFormat</doc>
           <type name="AudioFormat" c:type="GstAudioFormat"/>
         </parameter>
         <parameter name="channels" transfer-ownership="none">
-          <doc xml:space="preserve">the number of channels</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-resampler.c"
+               line="1338">the number of channels</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
         <parameter name="in_rate" transfer-ownership="none">
-          <doc xml:space="preserve">input rate</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-resampler.c"
+               line="1339">input rate</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
         <parameter name="out_rate" transfer-ownership="none">
-          <doc xml:space="preserve">output rate</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-resampler.c"
+               line="1340">output rate</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
         <parameter name="options" transfer-ownership="none">
-          <doc xml:space="preserve">extra options</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-resampler.c"
+               line="1341">extra options</doc>
           <type name="Gst.Structure" c:type="GstStructure*"/>
         </parameter>
       </parameters>
@@ -10019,30 +15131,44 @@ Note: this function assumes the audio data is in interleaved layout</doc>
     <function name="audio_resampler_options_set_quality"
               c:identifier="gst_audio_resampler_options_set_quality"
               moved-to="AudioResampler.options_set_quality">
-      <doc xml:space="preserve">Set the parameters for resampling from @in_rate to @out_rate using @method
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/audio-resampler.c"
+           line="1269">Set the parameters for resampling from @in_rate to @out_rate using @method
 for @quality in @options.</doc>
+      <source-position filename="gst-libs/gst/audio/audio-resampler.h"
+                       line="205"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="method" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstAudioResamplerMethod</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-resampler.c"
+               line="1271">a #GstAudioResamplerMethod</doc>
           <type name="AudioResamplerMethod" c:type="GstAudioResamplerMethod"/>
         </parameter>
         <parameter name="quality" transfer-ownership="none">
-          <doc xml:space="preserve">the quality</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-resampler.c"
+               line="1272">the quality</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
         <parameter name="in_rate" transfer-ownership="none">
-          <doc xml:space="preserve">the input rate</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-resampler.c"
+               line="1273">the input rate</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
         <parameter name="out_rate" transfer-ownership="none">
-          <doc xml:space="preserve">the output rate</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-resampler.c"
+               line="1274">the output rate</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
         <parameter name="options" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstStructure</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/audio-resampler.c"
+               line="1275">a #GstStructure</doc>
           <type name="Gst.Structure" c:type="GstStructure*"/>
         </parameter>
       </parameters>
@@ -10050,49 +15176,72 @@ for @quality in @options.</doc>
     <function name="buffer_add_audio_clipping_meta"
               c:identifier="gst_buffer_add_audio_clipping_meta"
               version="1.8">
-      <doc xml:space="preserve">Attaches #GstAudioClippingMeta metadata to @buffer with the given parameters.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/gstaudiometa.c"
+           line="248">Attaches #GstAudioClippingMeta metadata to @buffer with the given parameters.</doc>
+      <source-position filename="gst-libs/gst/audio/gstaudiometa.h"
+                       line="123"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">the #GstAudioClippingMeta on @buffer.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiometa.c"
+             line="257">the #GstAudioClippingMeta on @buffer.</doc>
         <type name="AudioClippingMeta" c:type="GstAudioClippingMeta*"/>
       </return-value>
       <parameters>
         <parameter name="buffer" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstBuffer</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudiometa.c"
+               line="250">a #GstBuffer</doc>
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </parameter>
         <parameter name="format" transfer-ownership="none">
-          <doc xml:space="preserve">GstFormat of @start and @stop, GST_FORMAT_DEFAULT is samples</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudiometa.c"
+               line="251">GstFormat of @start and @stop, GST_FORMAT_DEFAULT is samples</doc>
           <type name="Gst.Format" c:type="GstFormat"/>
         </parameter>
         <parameter name="start" transfer-ownership="none">
-          <doc xml:space="preserve">Amount of audio to clip from start of buffer</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudiometa.c"
+               line="252">Amount of audio to clip from start of buffer</doc>
           <type name="guint64" c:type="guint64"/>
         </parameter>
         <parameter name="end" transfer-ownership="none">
-          <doc xml:space="preserve">Amount of  to clip from end of buffer</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudiometa.c"
+               line="253">Amount of  to clip from end of buffer</doc>
           <type name="guint64" c:type="guint64"/>
         </parameter>
       </parameters>
     </function>
     <function name="buffer_add_audio_downmix_meta"
               c:identifier="gst_buffer_add_audio_downmix_meta">
-      <doc xml:space="preserve">Attaches #GstAudioDownmixMeta metadata to @buffer with the given parameters.
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/gstaudiometa.c"
+           line="116">Attaches #GstAudioDownmixMeta metadata to @buffer with the given parameters.
 
 @matrix is an two-dimensional array of @to_channels times @from_channels
 coefficients, i.e. the i-th output channels is constructed by multiplicating
 the input channels with the coefficients in @matrix[i] and taking the sum
 of the results.</doc>
+      <source-position filename="gst-libs/gst/audio/gstaudiometa.h" line="72"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">the #GstAudioDownmixMeta on @buffer.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiometa.c"
+             line="134">the #GstAudioDownmixMeta on @buffer.</doc>
         <type name="AudioDownmixMeta" c:type="GstAudioDownmixMeta*"/>
       </return-value>
       <parameters>
         <parameter name="buffer" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstBuffer</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudiometa.c"
+               line="118">a #GstBuffer</doc>
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </parameter>
         <parameter name="from_position" transfer-ownership="none">
-          <doc xml:space="preserve">the channel positions
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudiometa.c"
+               line="119">the channel positions
   of the source</doc>
           <array length="2"
                  zero-terminated="0"
@@ -10102,11 +15251,15 @@ of the results.</doc>
           </array>
         </parameter>
         <parameter name="from_channels" transfer-ownership="none">
-          <doc xml:space="preserve">The number of channels of the source</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudiometa.c"
+               line="121">The number of channels of the source</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
         <parameter name="to_position" transfer-ownership="none">
-          <doc xml:space="preserve">the channel positions of
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudiometa.c"
+               line="122">the channel positions of
   the destination</doc>
           <array length="4"
                  zero-terminated="0"
@@ -10116,11 +15269,15 @@ of the results.</doc>
           </array>
         </parameter>
         <parameter name="to_channels" transfer-ownership="none">
-          <doc xml:space="preserve">The number of channels of the destination</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudiometa.c"
+               line="124">The number of channels of the destination</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
         <parameter name="matrix" transfer-ownership="none">
-          <doc xml:space="preserve">The matrix coefficients.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudiometa.c"
+               line="125">The matrix coefficients.</doc>
           <type name="gfloat" c:type="const gfloat**"/>
         </parameter>
       </parameters>
@@ -10128,7 +15285,9 @@ of the results.</doc>
     <function name="buffer_add_audio_meta"
               c:identifier="gst_buffer_add_audio_meta"
               version="1.16">
-      <doc xml:space="preserve">Allocates and attaches a #GstAudioMeta on @buffer, which must be writable
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/gstaudiometa.c"
+           line="354">Allocates and attaches a #GstAudioMeta on @buffer, which must be writable
 for that purpose. The fields of the #GstAudioMeta are directly populated
 from the arguments of this function.
 
@@ -10146,49 +15305,89 @@ specified cause this restriction to be violated.
 It is, obviously, also not allowed to specify parameters that would cause
 out-of-bounds memory access on @buffer. This is also checked, which means
 that you must add enough memory on the @buffer before adding this meta.</doc>
+      <source-position filename="gst-libs/gst/audio/gstaudiometa.h"
+                       line="197"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">the #GstAudioMeta that was attached on the @buffer</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiometa.c"
+             line="382">the #GstAudioMeta that was attached on the @buffer</doc>
         <type name="AudioMeta" c:type="GstAudioMeta*"/>
       </return-value>
       <parameters>
         <parameter name="buffer" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstBuffer</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudiometa.c"
+               line="356">a #GstBuffer</doc>
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </parameter>
         <parameter name="info" transfer-ownership="none">
-          <doc xml:space="preserve">the audio properties of the buffer</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudiometa.c"
+               line="357">the audio properties of the buffer</doc>
           <type name="AudioInfo" c:type="const GstAudioInfo*"/>
         </parameter>
         <parameter name="samples" transfer-ownership="none">
-          <doc xml:space="preserve">the number of valid samples in the buffer</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudiometa.c"
+               line="358">the number of valid samples in the buffer</doc>
           <type name="gsize" c:type="gsize"/>
         </parameter>
         <parameter name="offsets"
                    transfer-ownership="none"
                    nullable="1"
                    allow-none="1">
-          <doc xml:space="preserve">the offsets (in bytes) where each channel plane starts
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudiometa.c"
+               line="359">the offsets (in bytes) where each channel plane starts
   in the buffer or %NULL to calculate it (see below); must be %NULL also
   when @info-&gt;layout is %GST_AUDIO_LAYOUT_INTERLEAVED</doc>
           <type name="gsize" c:type="gsize*"/>
         </parameter>
       </parameters>
     </function>
+    <function-macro name="buffer_get_audio_clipping_meta"
+                    c:identifier="gst_buffer_get_audio_clipping_meta"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudiometa.h"
+                       line="120"/>
+      <parameters>
+        <parameter name="b">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="buffer_get_audio_downmix_meta"
+                    c:identifier="gst_buffer_get_audio_downmix_meta"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudiometa.h" line="65"/>
+      <parameters>
+        <parameter name="b">
+        </parameter>
+      </parameters>
+    </function-macro>
     <function name="buffer_get_audio_downmix_meta_for_channels"
               c:identifier="gst_buffer_get_audio_downmix_meta_for_channels">
-      <doc xml:space="preserve">Find the #GstAudioDownmixMeta on @buffer for the given destination
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/audio/gstaudiometa.c"
+           line="84">Find the #GstAudioDownmixMeta on @buffer for the given destination
 channel positions.</doc>
+      <source-position filename="gst-libs/gst/audio/gstaudiometa.h" line="67"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">the #GstAudioDownmixMeta on @buffer.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/gstaudiometa.c"
+             line="94">the #GstAudioDownmixMeta on @buffer.</doc>
         <type name="AudioDownmixMeta" c:type="GstAudioDownmixMeta*"/>
       </return-value>
       <parameters>
         <parameter name="buffer" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstBuffer</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudiometa.c"
+               line="86">a #GstBuffer</doc>
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </parameter>
         <parameter name="to_position" transfer-ownership="none">
-          <doc xml:space="preserve">the channel positions of
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudiometa.c"
+               line="87">the channel positions of
   the destination</doc>
           <array length="2"
                  zero-terminated="0"
@@ -10198,29 +15397,50 @@ channel positions.</doc>
           </array>
         </parameter>
         <parameter name="to_channels" transfer-ownership="none">
-          <doc xml:space="preserve">The number of channels of the destination</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/gstaudiometa.c"
+               line="89">The number of channels of the destination</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
       </parameters>
     </function>
+    <function-macro name="buffer_get_audio_meta"
+                    c:identifier="gst_buffer_get_audio_meta"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/audio/gstaudiometa.h"
+                       line="193"/>
+      <parameters>
+        <parameter name="b">
+        </parameter>
+      </parameters>
+    </function-macro>
     <function name="stream_volume_convert_volume"
               c:identifier="gst_stream_volume_convert_volume"
               moved-to="StreamVolume.convert_volume">
+      <source-position filename="gst-libs/gst/audio/streamvolume.h" line="74"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">the converted volume</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/audio/streamvolume.c"
+             line="170">the converted volume</doc>
         <type name="gdouble" c:type="gdouble"/>
       </return-value>
       <parameters>
         <parameter name="from" transfer-ownership="none">
-          <doc xml:space="preserve">#GstStreamVolumeFormat to convert from</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/streamvolume.c"
+               line="166">#GstStreamVolumeFormat to convert from</doc>
           <type name="StreamVolumeFormat" c:type="GstStreamVolumeFormat"/>
         </parameter>
         <parameter name="to" transfer-ownership="none">
-          <doc xml:space="preserve">#GstStreamVolumeFormat to convert to</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/streamvolume.c"
+               line="167">#GstStreamVolumeFormat to convert to</doc>
           <type name="StreamVolumeFormat" c:type="GstStreamVolumeFormat"/>
         </parameter>
         <parameter name="val" transfer-ownership="none">
-          <doc xml:space="preserve">Volume in @from format that should be converted</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/audio/streamvolume.c"
+               line="168">Volume in @from format that should be converted</doc>
           <type name="gdouble" c:type="gdouble"/>
         </parameter>
       </parameters>
index e1856a5..0e5b778 100644 (file)
@@ -17,6 +17,121 @@ and/or use gtk-doc annotations.  -->
              shared-library="libgstbase-1.0.so.0"
              c:identifier-prefixes="Gst"
              c:symbol-prefixes="gst">
+    <function-macro name="ADAPTER"
+                    c:identifier="GST_ADAPTER"
+                    introspectable="0">
+      <source-position filename="libs/gst/base/gstadapter.h" line="31"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="ADAPTER_CLASS"
+                    c:identifier="GST_ADAPTER_CLASS"
+                    introspectable="0">
+      <source-position filename="libs/gst/base/gstadapter.h" line="33"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="ADAPTER_GET_CLASS"
+                    c:identifier="GST_ADAPTER_GET_CLASS"
+                    introspectable="0">
+      <source-position filename="libs/gst/base/gstadapter.h" line="35"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AGGREGATOR"
+                    c:identifier="GST_AGGREGATOR"
+                    introspectable="0">
+      <source-position filename="libs/gst/base/gstaggregator.h" line="129"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AGGREGATOR_CAST"
+                    c:identifier="GST_AGGREGATOR_CAST"
+                    introspectable="0">
+      <source-position filename="libs/gst/base/gstaggregator.h" line="130"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AGGREGATOR_CLASS"
+                    c:identifier="GST_AGGREGATOR_CLASS"
+                    introspectable="0">
+      <source-position filename="libs/gst/base/gstaggregator.h" line="131"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AGGREGATOR_GET_CLASS"
+                    c:identifier="GST_AGGREGATOR_GET_CLASS"
+                    introspectable="0">
+      <source-position filename="libs/gst/base/gstaggregator.h" line="132"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AGGREGATOR_PAD"
+                    c:identifier="GST_AGGREGATOR_PAD"
+                    introspectable="0">
+      <source-position filename="libs/gst/base/gstaggregator.h" line="42"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AGGREGATOR_PAD_CAST"
+                    c:identifier="GST_AGGREGATOR_PAD_CAST"
+                    introspectable="0">
+      <source-position filename="libs/gst/base/gstaggregator.h" line="43"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AGGREGATOR_PAD_CLASS"
+                    c:identifier="GST_AGGREGATOR_PAD_CLASS"
+                    introspectable="0">
+      <source-position filename="libs/gst/base/gstaggregator.h" line="44"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AGGREGATOR_PAD_GET_CLASS"
+                    c:identifier="GST_AGGREGATOR_PAD_GET_CLASS"
+                    introspectable="0">
+      <source-position filename="libs/gst/base/gstaggregator.h" line="45"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AGGREGATOR_SRC_PAD"
+                    c:identifier="GST_AGGREGATOR_SRC_PAD"
+                    version="1.6"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="libs/gst/base/gstaggregator.h"
+           line="341">Convenience macro to access the source pad of #GstAggregator</doc>
+      <source-position filename="libs/gst/base/gstaggregator.h" line="349"/>
+      <parameters>
+        <parameter name="agg">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstaggregator.h"
+               line="343">a #GstAggregator</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
     <class name="Adapter"
            c:symbol-prefix="adapter"
            c:type="GstAdapter"
@@ -24,7 +139,9 @@ and/or use gtk-doc annotations.  -->
            glib:type-name="GstAdapter"
            glib:get-type="gst_adapter_get_type"
            glib:type-struct="AdapterClass">
-      <doc xml:space="preserve">This class is for elements that receive buffers in an undesired size.
+      <doc xml:space="preserve"
+           filename="libs/gst/base/gstadapter.c"
+           line="21">This class is for elements that receive buffers in an undesired size.
 While for example raw video contains one image per buffer, the same is not
 true for a lot of other formats, especially those that come directly from
 a file. So if you have undefined buffer sizes and require a specific size,
@@ -107,8 +224,8 @@ gst_adapter_offset_at_discont(). The number of bytes that were consumed
 since then can be queried with gst_adapter_distance_from_discont().
 
 A last thing to note is that while #GstAdapter is pretty optimized,
-merging buffers still might be an operation that requires a malloc() and
-memcpy() operation, and these operations are not the fastest. Because of
+merging buffers still might be an operation that requires a `malloc()` and
+`memcpy()` operation, and these operations are not the fastest. Because of
 this, some functions like gst_adapter_available_fast() are provided to help
 speed up such cases should you want to. To avoid repeated memory allocations,
 gst_adapter_copy() can be used to copy data into a (statically allocated)
@@ -123,52 +240,77 @@ Note that gst_adapter_push() takes ownership of the buffer passed. Use
 gst_buffer_ref() before pushing it into the adapter if you still want to
 access the buffer later. The adapter will never modify the data in the
 buffer pushed in it.</doc>
+      <source-position filename="libs/gst/base/gstadapter.h" line="49"/>
       <constructor name="new" c:identifier="gst_adapter_new">
-        <doc xml:space="preserve">Creates a new #GstAdapter. Free with g_object_unref().</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstadapter.c"
+             line="237">Creates a new #GstAdapter. Free with g_object_unref().</doc>
+        <source-position filename="libs/gst/base/gstadapter.h" line="55"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new #GstAdapter</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstadapter.c"
+               line="242">a new #GstAdapter</doc>
           <type name="Adapter" c:type="GstAdapter*"/>
         </return-value>
       </constructor>
       <method name="available" c:identifier="gst_adapter_available">
-        <doc xml:space="preserve">Gets the maximum amount of bytes available, that is it returns the maximum
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstadapter.c"
+             line="1308">Gets the maximum amount of bytes available, that is it returns the maximum
 value that can be supplied to gst_adapter_map() without that function
 returning %NULL.</doc>
+        <source-position filename="libs/gst/base/gstadapter.h" line="106"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">number of bytes available in @adapter</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstadapter.c"
+               line="1316">number of bytes available in @adapter</doc>
           <type name="gsize" c:type="gsize"/>
         </return-value>
         <parameters>
           <instance-parameter name="adapter" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAdapter</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstadapter.c"
+                 line="1310">a #GstAdapter</doc>
             <type name="Adapter" c:type="GstAdapter*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="available_fast" c:identifier="gst_adapter_available_fast">
-        <doc xml:space="preserve">Gets the maximum number of bytes that are immediately available without
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstadapter.c"
+             line="1326">Gets the maximum number of bytes that are immediately available without
 requiring any expensive operations (like copying the data into a
 temporary buffer).</doc>
+        <source-position filename="libs/gst/base/gstadapter.h" line="109"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">number of bytes that are available in @adapter without expensive
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstadapter.c"
+               line="1334">number of bytes that are available in @adapter without expensive
 operations</doc>
           <type name="gsize" c:type="gsize"/>
         </return-value>
         <parameters>
           <instance-parameter name="adapter" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAdapter</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstadapter.c"
+                 line="1328">a #GstAdapter</doc>
             <type name="Adapter" c:type="GstAdapter*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="clear" c:identifier="gst_adapter_clear">
-        <doc xml:space="preserve">Removes all buffers from @adapter.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstadapter.c"
+             line="250">Removes all buffers from @adapter.</doc>
+        <source-position filename="libs/gst/base/gstadapter.h" line="58"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="adapter" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAdapter</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstadapter.c"
+                 line="252">a #GstAdapter</doc>
             <type name="Adapter" c:type="GstAdapter*"/>
           </instance-parameter>
         </parameters>
@@ -177,39 +319,50 @@ operations</doc>
               c:identifier="gst_adapter_copy"
               shadowed-by="copy_bytes"
               introspectable="0">
-        <doc xml:space="preserve">Copies @size bytes of data starting at @offset out of the buffers
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstadapter.c"
+             line="578">Copies @size bytes of data starting at @offset out of the buffers
 contained in #GstAdapter into an array @dest provided by the caller.
 
 The array @dest should be large enough to contain @size bytes.
 The user should check that the adapter has (@offset + @size) bytes
 available before calling this function.</doc>
+        <source-position filename="libs/gst/base/gstadapter.h" line="70"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="adapter" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAdapter</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstadapter.c"
+                 line="580">a #GstAdapter</doc>
             <type name="Adapter" c:type="GstAdapter*"/>
           </instance-parameter>
           <parameter name="dest"
                      direction="out"
                      caller-allocates="1"
                      transfer-ownership="none">
-            <doc xml:space="preserve">
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstadapter.c"
+                 line="581">
     the memory to copy into</doc>
             <array length="2" zero-terminated="0" c:type="gpointer">
               <type name="guint8"/>
             </array>
           </parameter>
           <parameter name="offset" transfer-ownership="none">
-            <doc xml:space="preserve">the bytes offset in the adapter to start from</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstadapter.c"
+                 line="583">the bytes offset in the adapter to start from</doc>
             <type name="gsize" c:type="gsize"/>
           </parameter>
           <parameter name="size"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">the number of bytes to copy</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstadapter.c"
+                 line="584">the number of bytes to copy</doc>
             <type name="gsize" c:type="gsize"/>
           </parameter>
         </parameters>
@@ -218,31 +371,43 @@ available before calling this function.</doc>
               c:identifier="gst_adapter_copy_bytes"
               shadows="copy"
               version="1.4">
-        <doc xml:space="preserve">Similar to gst_adapter_copy, but more suitable for language bindings. @size
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstadapter.c"
+             line="603">Similar to gst_adapter_copy, but more suitable for language bindings. @size
 bytes of data starting at @offset will be copied out of the buffers contained
 in @adapter and into a new #GBytes structure which is returned. Depending on
 the value of the @size argument an empty #GBytes structure may be returned.</doc>
+        <source-position filename="libs/gst/base/gstadapter.h" line="73"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">A new #GBytes structure containing the copied data.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstadapter.c"
+               line="614">A new #GBytes structure containing the copied data.</doc>
           <type name="GLib.Bytes" c:type="GBytes*"/>
         </return-value>
         <parameters>
           <instance-parameter name="adapter" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAdapter</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstadapter.c"
+                 line="605">a #GstAdapter</doc>
             <type name="Adapter" c:type="GstAdapter*"/>
           </instance-parameter>
           <parameter name="offset" transfer-ownership="none">
-            <doc xml:space="preserve">the bytes offset in the adapter to start from</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstadapter.c"
+                 line="606">the bytes offset in the adapter to start from</doc>
             <type name="gsize" c:type="gsize"/>
           </parameter>
           <parameter name="size" transfer-ownership="none">
-            <doc xml:space="preserve">the number of bytes to copy</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstadapter.c"
+                 line="607">the number of bytes to copy</doc>
             <type name="gsize" c:type="gsize"/>
           </parameter>
         </parameters>
       </method>
       <method name="distance_from_discont"
               c:identifier="gst_adapter_distance_from_discont">
+        <source-position filename="libs/gst/base/gstadapter.h" line="136"/>
         <return-value transfer-ownership="none">
           <type name="guint64" c:type="guint64"/>
         </return-value>
@@ -255,34 +420,48 @@ the value of the @size argument an empty #GBytes structure may be returned.</doc
       <method name="dts_at_discont"
               c:identifier="gst_adapter_dts_at_discont"
               version="1.10">
-        <doc xml:space="preserve">Get the DTS that was on the last buffer with the GST_BUFFER_FLAG_DISCONT
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstadapter.c"
+             line="1426">Get the DTS that was on the last buffer with the GST_BUFFER_FLAG_DISCONT
 flag, or GST_CLOCK_TIME_NONE.</doc>
+        <source-position filename="libs/gst/base/gstadapter.h" line="130"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The DTS at the last discont or GST_CLOCK_TIME_NONE.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstadapter.c"
+               line="1435">The DTS at the last discont or GST_CLOCK_TIME_NONE.</doc>
           <type name="Gst.ClockTime" c:type="GstClockTime"/>
         </return-value>
         <parameters>
           <instance-parameter name="adapter" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAdapter</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstadapter.c"
+                 line="1428">a #GstAdapter</doc>
             <type name="Adapter" c:type="GstAdapter*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="flush" c:identifier="gst_adapter_flush">
-        <doc xml:space="preserve">Flushes the first @flush bytes in the @adapter. The caller must ensure that
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstadapter.c"
+             line="687">Flushes the first @flush bytes in the @adapter. The caller must ensure that
 at least this many bytes are available.
 
 See also: gst_adapter_map(), gst_adapter_unmap()</doc>
+        <source-position filename="libs/gst/base/gstadapter.h" line="76"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="adapter" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAdapter</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstadapter.c"
+                 line="689">a #GstAdapter</doc>
             <type name="Adapter" c:type="GstAdapter*"/>
           </instance-parameter>
           <parameter name="flush" transfer-ownership="none">
-            <doc xml:space="preserve">the number of bytes to flush</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstadapter.c"
+                 line="690">the number of bytes to flush</doc>
             <type name="gsize" c:type="gsize"/>
           </parameter>
         </parameters>
@@ -290,7 +469,9 @@ See also: gst_adapter_map(), gst_adapter_unmap()</doc>
       <method name="get_buffer"
               c:identifier="gst_adapter_get_buffer"
               version="1.6">
-        <doc xml:space="preserve">Returns a #GstBuffer containing the first @nbytes of the @adapter, but
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstadapter.c"
+             line="942">Returns a #GstBuffer containing the first @nbytes of the @adapter, but
 does not flush them from the adapter. See gst_adapter_take_buffer()
 for details.
 
@@ -298,19 +479,26 @@ Caller owns a reference to the returned buffer. gst_buffer_unref() after
 usage.
 
 Free-function: gst_buffer_unref</doc>
+        <source-position filename="libs/gst/base/gstadapter.h" line="94"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">a #GstBuffer containing the first
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstadapter.c"
+               line="956">a #GstBuffer containing the first
     @nbytes of the adapter, or %NULL if @nbytes bytes are not available.
     gst_buffer_unref() when no longer needed.</doc>
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </return-value>
         <parameters>
           <instance-parameter name="adapter" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAdapter</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstadapter.c"
+                 line="944">a #GstAdapter</doc>
             <type name="Adapter" c:type="GstAdapter*"/>
           </instance-parameter>
           <parameter name="nbytes" transfer-ownership="none">
-            <doc xml:space="preserve">the number of bytes to get</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstadapter.c"
+                 line="945">the number of bytes to get</doc>
             <type name="gsize" c:type="gsize"/>
           </parameter>
         </parameters>
@@ -318,7 +506,9 @@ Free-function: gst_buffer_unref</doc>
       <method name="get_buffer_fast"
               c:identifier="gst_adapter_get_buffer_fast"
               version="1.6">
-        <doc xml:space="preserve">Returns a #GstBuffer containing the first @nbytes of the @adapter, but
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstadapter.c"
+             line="789">Returns a #GstBuffer containing the first @nbytes of the @adapter, but
 does not flush them from the adapter. See gst_adapter_take_buffer_fast()
 for details.
 
@@ -326,19 +516,26 @@ Caller owns a reference to the returned buffer. gst_buffer_unref() after
 usage.
 
 Free-function: gst_buffer_unref</doc>
+        <source-position filename="libs/gst/base/gstadapter.h" line="100"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">a #GstBuffer containing the first
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstadapter.c"
+               line="803">a #GstBuffer containing the first
     @nbytes of the adapter, or %NULL if @nbytes bytes are not available.
     gst_buffer_unref() when no longer needed.</doc>
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </return-value>
         <parameters>
           <instance-parameter name="adapter" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAdapter</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstadapter.c"
+                 line="791">a #GstAdapter</doc>
             <type name="Adapter" c:type="GstAdapter*"/>
           </instance-parameter>
           <parameter name="nbytes" transfer-ownership="none">
-            <doc xml:space="preserve">the number of bytes to get</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstadapter.c"
+                 line="792">the number of bytes to get</doc>
             <type name="gsize" c:type="gsize"/>
           </parameter>
         </parameters>
@@ -346,25 +543,34 @@ Free-function: gst_buffer_unref</doc>
       <method name="get_buffer_list"
               c:identifier="gst_adapter_get_buffer_list"
               version="1.6">
-        <doc xml:space="preserve">Returns a #GstBufferList of buffers containing the first @nbytes bytes of
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstadapter.c"
+             line="1239">Returns a #GstBufferList of buffers containing the first @nbytes bytes of
 the @adapter but does not flush them from the adapter. See
 gst_adapter_take_buffer_list() for details.
 
 Caller owns the returned list. Call gst_buffer_list_unref() to free
 the list after usage.</doc>
+        <source-position filename="libs/gst/base/gstadapter.h" line="103"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">a #GstBufferList of buffers containing
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstadapter.c"
+               line="1251">a #GstBufferList of buffers containing
     the first @nbytes of the adapter, or %NULL if @nbytes bytes are not
     available</doc>
           <type name="Gst.BufferList" c:type="GstBufferList*"/>
         </return-value>
         <parameters>
           <instance-parameter name="adapter" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAdapter</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstadapter.c"
+                 line="1241">a #GstAdapter</doc>
             <type name="Adapter" c:type="GstAdapter*"/>
           </instance-parameter>
           <parameter name="nbytes" transfer-ownership="none">
-            <doc xml:space="preserve">the number of bytes to get</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstadapter.c"
+                 line="1242">the number of bytes to get</doc>
             <type name="gsize" c:type="gsize"/>
           </parameter>
         </parameters>
@@ -372,14 +578,19 @@ the list after usage.</doc>
       <method name="get_list"
               c:identifier="gst_adapter_get_list"
               version="1.6">
-        <doc xml:space="preserve">Returns a #GList of buffers containing the first @nbytes bytes of the
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstadapter.c"
+             line="1127">Returns a #GList of buffers containing the first @nbytes bytes of the
 @adapter, but does not flush them from the adapter. See
 gst_adapter_take_list() for details.
 
 Caller owns returned list and contained buffers. gst_buffer_unref() each
 buffer in the list before freeing the list after usage.</doc>
+        <source-position filename="libs/gst/base/gstadapter.h" line="97"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">a #GList of
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstadapter.c"
+               line="1139">a #GList of
     buffers containing the first @nbytes of the adapter, or %NULL if @nbytes
     bytes are not available</doc>
           <type name="GLib.List" c:type="GList*">
@@ -388,17 +599,23 @@ buffer in the list before freeing the list after usage.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="adapter" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAdapter</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstadapter.c"
+                 line="1129">a #GstAdapter</doc>
             <type name="Adapter" c:type="GstAdapter*"/>
           </instance-parameter>
           <parameter name="nbytes" transfer-ownership="none">
-            <doc xml:space="preserve">the number of bytes to get</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstadapter.c"
+                 line="1130">the number of bytes to get</doc>
             <type name="gsize" c:type="gsize"/>
           </parameter>
         </parameters>
       </method>
       <method name="map" c:identifier="gst_adapter_map">
-        <doc xml:space="preserve">Gets the first @size bytes stored in the @adapter. The returned pointer is
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstadapter.c"
+             line="461">Gets the first @size bytes stored in the @adapter. The returned pointer is
 valid until the next function is called on the adapter.
 
 Note that setting the returned pointer as the data of a #GstBuffer is
@@ -411,8 +628,11 @@ as #GstBuffer memory or the potentially more performant
 gst_adapter_take_buffer().
 
 Returns %NULL if @size bytes are not available.</doc>
+        <source-position filename="libs/gst/base/gstadapter.h" line="64"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstadapter.c"
+               line="480">
     a pointer to the first @size bytes of data, or %NULL</doc>
           <array length="0" zero-terminated="0" c:type="gconstpointer">
             <type name="guint8"/>
@@ -420,21 +640,27 @@ Returns %NULL if @size bytes are not available.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="adapter" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAdapter</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstadapter.c"
+                 line="463">a #GstAdapter</doc>
             <type name="Adapter" c:type="GstAdapter*"/>
           </instance-parameter>
           <parameter name="size"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">the number of bytes to map/peek</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstadapter.c"
+                 line="464">the number of bytes to map/peek</doc>
             <type name="gsize" c:type="gsize"/>
           </parameter>
         </parameters>
       </method>
       <method name="masked_scan_uint32"
               c:identifier="gst_adapter_masked_scan_uint32">
-        <doc xml:space="preserve">Scan for pattern @pattern with applied mask @mask in the adapter data,
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstadapter.c"
+             line="1742">Scan for pattern @pattern with applied mask @mask in the adapter data,
 starting from offset @offset.
 
 The bytes in @pattern and @mask are interpreted left-to-right, regardless
@@ -446,8 +672,11 @@ enough data (offset+size bytes) in the adapter.
 
 This function calls gst_adapter_masked_scan_uint32_peek() passing %NULL
 for value.</doc>
+        <source-position filename="libs/gst/base/gstadapter.h" line="139"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">offset of the first match, or -1 if no match was found.
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstadapter.c"
+               line="1764">offset of the first match, or -1 if no match was found.
 
 Example:
 |[
@@ -472,31 +701,43 @@ gst_adapter_masked_scan_uint32 (adapter, 0xffff0000, 0x02030000, 0, 4);
         </return-value>
         <parameters>
           <instance-parameter name="adapter" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAdapter</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstadapter.c"
+                 line="1744">a #GstAdapter</doc>
             <type name="Adapter" c:type="GstAdapter*"/>
           </instance-parameter>
           <parameter name="mask" transfer-ownership="none">
-            <doc xml:space="preserve">mask to apply to data before matching against @pattern</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstadapter.c"
+                 line="1745">mask to apply to data before matching against @pattern</doc>
             <type name="guint32" c:type="guint32"/>
           </parameter>
           <parameter name="pattern" transfer-ownership="none">
-            <doc xml:space="preserve">pattern to match (after mask is applied)</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstadapter.c"
+                 line="1746">pattern to match (after mask is applied)</doc>
             <type name="guint32" c:type="guint32"/>
           </parameter>
           <parameter name="offset" transfer-ownership="none">
-            <doc xml:space="preserve">offset into the adapter data from which to start scanning, returns
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstadapter.c"
+                 line="1747">offset into the adapter data from which to start scanning, returns
          the last scanned position.</doc>
             <type name="gsize" c:type="gsize"/>
           </parameter>
           <parameter name="size" transfer-ownership="none">
-            <doc xml:space="preserve">number of bytes to scan from offset</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstadapter.c"
+                 line="1749">number of bytes to scan from offset</doc>
             <type name="gsize" c:type="gsize"/>
           </parameter>
         </parameters>
       </method>
       <method name="masked_scan_uint32_peek"
               c:identifier="gst_adapter_masked_scan_uint32_peek">
-        <doc xml:space="preserve">Scan for pattern @pattern with applied mask @mask in the adapter data,
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstadapter.c"
+             line="1628">Scan for pattern @pattern with applied mask @mask in the adapter data,
 starting from offset @offset.  If a match is found, the value that matched
 is returned through @value, otherwise @value is left untouched.
 
@@ -506,30 +747,43 @@ adapter for it to match, even if the first or last bytes are masked out.
 
 It is an error to call this function without making sure that there is
 enough data (offset+size bytes) in the adapter.</doc>
+        <source-position filename="libs/gst/base/gstadapter.h" line="142"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">offset of the first match, or -1 if no match was found.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstadapter.c"
+               line="1649">offset of the first match, or -1 if no match was found.</doc>
           <type name="gssize" c:type="gssize"/>
         </return-value>
         <parameters>
           <instance-parameter name="adapter" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAdapter</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstadapter.c"
+                 line="1630">a #GstAdapter</doc>
             <type name="Adapter" c:type="GstAdapter*"/>
           </instance-parameter>
           <parameter name="mask" transfer-ownership="none">
-            <doc xml:space="preserve">mask to apply to data before matching against @pattern</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstadapter.c"
+                 line="1631">mask to apply to data before matching against @pattern</doc>
             <type name="guint32" c:type="guint32"/>
           </parameter>
           <parameter name="pattern" transfer-ownership="none">
-            <doc xml:space="preserve">pattern to match (after mask is applied)</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstadapter.c"
+                 line="1632">pattern to match (after mask is applied)</doc>
             <type name="guint32" c:type="guint32"/>
           </parameter>
           <parameter name="offset" transfer-ownership="none">
-            <doc xml:space="preserve">offset into the adapter data from which to start scanning, returns
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstadapter.c"
+                 line="1633">offset into the adapter data from which to start scanning, returns
          the last scanned position.</doc>
             <type name="gsize" c:type="gsize"/>
           </parameter>
           <parameter name="size" transfer-ownership="none">
-            <doc xml:space="preserve">number of bytes to scan from offset</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstadapter.c"
+                 line="1635">number of bytes to scan from offset</doc>
             <type name="gsize" c:type="gsize"/>
           </parameter>
           <parameter name="value"
@@ -538,7 +792,9 @@ enough data (offset+size bytes) in the adapter.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">pointer to uint32 to return matching data</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstadapter.c"
+                 line="1636">pointer to uint32 to return matching data</doc>
             <type name="guint32" c:type="guint32*"/>
           </parameter>
         </parameters>
@@ -546,21 +802,30 @@ enough data (offset+size bytes) in the adapter.</doc>
       <method name="offset_at_discont"
               c:identifier="gst_adapter_offset_at_discont"
               version="1.10">
-        <doc xml:space="preserve">Get the offset that was on the last buffer with the GST_BUFFER_FLAG_DISCONT
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstadapter.c"
+             line="1388">Get the offset that was on the last buffer with the GST_BUFFER_FLAG_DISCONT
 flag, or GST_BUFFER_OFFSET_NONE.</doc>
+        <source-position filename="libs/gst/base/gstadapter.h" line="133"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The offset at the last discont or GST_BUFFER_OFFSET_NONE.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstadapter.c"
+               line="1397">The offset at the last discont or GST_BUFFER_OFFSET_NONE.</doc>
           <type name="guint64" c:type="guint64"/>
         </return-value>
         <parameters>
           <instance-parameter name="adapter" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAdapter</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstadapter.c"
+                 line="1390">a #GstAdapter</doc>
             <type name="Adapter" c:type="GstAdapter*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="prev_dts" c:identifier="gst_adapter_prev_dts">
-        <doc xml:space="preserve">Get the dts that was before the current byte in the adapter. When
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstadapter.c"
+             line="1501">Get the dts that was before the current byte in the adapter. When
 @distance is given, the amount of bytes between the dts and the current
 position is returned.
 
@@ -568,13 +833,18 @@ The dts is reset to GST_CLOCK_TIME_NONE and the distance is set to 0 when
 the adapter is first created or when it is cleared. This also means that before
 the first byte with a dts is removed from the adapter, the dts
 and distance returned are GST_CLOCK_TIME_NONE and 0 respectively.</doc>
+        <source-position filename="libs/gst/base/gstadapter.h" line="115"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The previously seen dts.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstadapter.c"
+               line="1515">The previously seen dts.</doc>
           <type name="Gst.ClockTime" c:type="GstClockTime"/>
         </return-value>
         <parameters>
           <instance-parameter name="adapter" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAdapter</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstadapter.c"
+                 line="1503">a #GstAdapter</doc>
             <type name="Adapter" c:type="GstAdapter*"/>
           </instance-parameter>
           <parameter name="distance"
@@ -583,7 +853,9 @@ and distance returned are GST_CLOCK_TIME_NONE and 0 respectively.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">pointer to location for distance, or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstadapter.c"
+                 line="1504">pointer to location for distance, or %NULL</doc>
             <type name="guint64" c:type="guint64*"/>
           </parameter>
         </parameters>
@@ -591,7 +863,9 @@ and distance returned are GST_CLOCK_TIME_NONE and 0 respectively.</doc>
       <method name="prev_dts_at_offset"
               c:identifier="gst_adapter_prev_dts_at_offset"
               version="1.2">
-        <doc xml:space="preserve">Get the dts that was before the byte at offset @offset in the adapter. When
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstadapter.c"
+             line="1578">Get the dts that was before the byte at offset @offset in the adapter. When
 @distance is given, the amount of bytes between the dts and the current
 position is returned.
 
@@ -599,17 +873,24 @@ The dts is reset to GST_CLOCK_TIME_NONE and the distance is set to 0 when
 the adapter is first created or when it is cleared. This also means that before
 the first byte with a dts is removed from the adapter, the dts
 and distance returned are GST_CLOCK_TIME_NONE and 0 respectively.</doc>
+        <source-position filename="libs/gst/base/gstadapter.h" line="121"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The previously seen dts at given offset.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstadapter.c"
+               line="1594">The previously seen dts at given offset.</doc>
           <type name="Gst.ClockTime" c:type="GstClockTime"/>
         </return-value>
         <parameters>
           <instance-parameter name="adapter" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAdapter</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstadapter.c"
+                 line="1580">a #GstAdapter</doc>
             <type name="Adapter" c:type="GstAdapter*"/>
           </instance-parameter>
           <parameter name="offset" transfer-ownership="none">
-            <doc xml:space="preserve">the offset in the adapter at which to get timestamp</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstadapter.c"
+                 line="1581">the offset in the adapter at which to get timestamp</doc>
             <type name="gsize" c:type="gsize"/>
           </parameter>
           <parameter name="distance"
@@ -618,7 +899,9 @@ and distance returned are GST_CLOCK_TIME_NONE and 0 respectively.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">pointer to location for distance, or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstadapter.c"
+                 line="1582">pointer to location for distance, or %NULL</doc>
             <type name="guint64" c:type="guint64*"/>
           </parameter>
         </parameters>
@@ -626,7 +909,9 @@ and distance returned are GST_CLOCK_TIME_NONE and 0 respectively.</doc>
       <method name="prev_offset"
               c:identifier="gst_adapter_prev_offset"
               version="1.10">
-        <doc xml:space="preserve">Get the offset that was before the current byte in the adapter. When
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstadapter.c"
+             line="1445">Get the offset that was before the current byte in the adapter. When
 @distance is given, the amount of bytes between the offset and the current
 position is returned.
 
@@ -634,13 +919,18 @@ The offset is reset to GST_BUFFER_OFFSET_NONE and the distance is set to 0
 when the adapter is first created or when it is cleared. This also means that
 before the first byte with an offset is removed from the adapter, the offset
 and distance returned are GST_BUFFER_OFFSET_NONE and 0 respectively.</doc>
+        <source-position filename="libs/gst/base/gstadapter.h" line="124"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The previous seen offset.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstadapter.c"
+               line="1461">The previous seen offset.</doc>
           <type name="guint64" c:type="guint64"/>
         </return-value>
         <parameters>
           <instance-parameter name="adapter" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAdapter</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstadapter.c"
+                 line="1447">a #GstAdapter</doc>
             <type name="Adapter" c:type="GstAdapter*"/>
           </instance-parameter>
           <parameter name="distance"
@@ -649,13 +939,17 @@ and distance returned are GST_BUFFER_OFFSET_NONE and 0 respectively.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">pointer to a location for distance, or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstadapter.c"
+                 line="1448">pointer to a location for distance, or %NULL</doc>
             <type name="guint64" c:type="guint64*"/>
           </parameter>
         </parameters>
       </method>
       <method name="prev_pts" c:identifier="gst_adapter_prev_pts">
-        <doc xml:space="preserve">Get the pts that was before the current byte in the adapter. When
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstadapter.c"
+             line="1474">Get the pts that was before the current byte in the adapter. When
 @distance is given, the amount of bytes between the pts and the current
 position is returned.
 
@@ -663,13 +957,18 @@ The pts is reset to GST_CLOCK_TIME_NONE and the distance is set to 0 when
 the adapter is first created or when it is cleared. This also means that before
 the first byte with a pts is removed from the adapter, the pts
 and distance returned are GST_CLOCK_TIME_NONE and 0 respectively.</doc>
+        <source-position filename="libs/gst/base/gstadapter.h" line="112"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The previously seen pts.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstadapter.c"
+               line="1488">The previously seen pts.</doc>
           <type name="Gst.ClockTime" c:type="GstClockTime"/>
         </return-value>
         <parameters>
           <instance-parameter name="adapter" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAdapter</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstadapter.c"
+                 line="1476">a #GstAdapter</doc>
             <type name="Adapter" c:type="GstAdapter*"/>
           </instance-parameter>
           <parameter name="distance"
@@ -678,7 +977,9 @@ and distance returned are GST_CLOCK_TIME_NONE and 0 respectively.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">pointer to location for distance, or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstadapter.c"
+                 line="1477">pointer to location for distance, or %NULL</doc>
             <type name="guint64" c:type="guint64*"/>
           </parameter>
         </parameters>
@@ -686,7 +987,9 @@ and distance returned are GST_CLOCK_TIME_NONE and 0 respectively.</doc>
       <method name="prev_pts_at_offset"
               c:identifier="gst_adapter_prev_pts_at_offset"
               version="1.2">
-        <doc xml:space="preserve">Get the pts that was before the byte at offset @offset in the adapter. When
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstadapter.c"
+             line="1528">Get the pts that was before the byte at offset @offset in the adapter. When
 @distance is given, the amount of bytes between the pts and the current
 position is returned.
 
@@ -694,17 +997,24 @@ The pts is reset to GST_CLOCK_TIME_NONE and the distance is set to 0 when
 the adapter is first created or when it is cleared. This also means that before
 the first byte with a pts is removed from the adapter, the pts
 and distance returned are GST_CLOCK_TIME_NONE and 0 respectively.</doc>
+        <source-position filename="libs/gst/base/gstadapter.h" line="118"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The previously seen pts at given offset.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstadapter.c"
+               line="1544">The previously seen pts at given offset.</doc>
           <type name="Gst.ClockTime" c:type="GstClockTime"/>
         </return-value>
         <parameters>
           <instance-parameter name="adapter" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAdapter</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstadapter.c"
+                 line="1530">a #GstAdapter</doc>
             <type name="Adapter" c:type="GstAdapter*"/>
           </instance-parameter>
           <parameter name="offset" transfer-ownership="none">
-            <doc xml:space="preserve">the offset in the adapter at which to get timestamp</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstadapter.c"
+                 line="1531">the offset in the adapter at which to get timestamp</doc>
             <type name="gsize" c:type="gsize"/>
           </parameter>
           <parameter name="distance"
@@ -713,7 +1023,9 @@ and distance returned are GST_CLOCK_TIME_NONE and 0 respectively.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">pointer to location for distance, or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstadapter.c"
+                 line="1532">pointer to location for distance, or %NULL</doc>
             <type name="guint64" c:type="guint64*"/>
           </parameter>
         </parameters>
@@ -721,45 +1033,64 @@ and distance returned are GST_CLOCK_TIME_NONE and 0 respectively.</doc>
       <method name="pts_at_discont"
               c:identifier="gst_adapter_pts_at_discont"
               version="1.10">
-        <doc xml:space="preserve">Get the PTS that was on the last buffer with the GST_BUFFER_FLAG_DISCONT
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstadapter.c"
+             line="1407">Get the PTS that was on the last buffer with the GST_BUFFER_FLAG_DISCONT
 flag, or GST_CLOCK_TIME_NONE.</doc>
+        <source-position filename="libs/gst/base/gstadapter.h" line="127"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The PTS at the last discont or GST_CLOCK_TIME_NONE.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstadapter.c"
+               line="1416">The PTS at the last discont or GST_CLOCK_TIME_NONE.</doc>
           <type name="Gst.ClockTime" c:type="GstClockTime"/>
         </return-value>
         <parameters>
           <instance-parameter name="adapter" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAdapter</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstadapter.c"
+                 line="1409">a #GstAdapter</doc>
             <type name="Adapter" c:type="GstAdapter*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="push" c:identifier="gst_adapter_push">
-        <doc xml:space="preserve">Adds the data from @buf to the data stored inside @adapter and takes
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstadapter.c"
+             line="369">Adds the data from @buf to the data stored inside @adapter and takes
 ownership of the buffer.</doc>
+        <source-position filename="libs/gst/base/gstadapter.h" line="61"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="adapter" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAdapter</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstadapter.c"
+                 line="371">a #GstAdapter</doc>
             <type name="Adapter" c:type="GstAdapter*"/>
           </instance-parameter>
           <parameter name="buf" transfer-ownership="full">
-            <doc xml:space="preserve">a #GstBuffer to add to queue in the adapter</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstadapter.c"
+                 line="372">a #GstBuffer to add to queue in the adapter</doc>
             <type name="Gst.Buffer" c:type="GstBuffer*"/>
           </parameter>
         </parameters>
       </method>
       <method name="take" c:identifier="gst_adapter_take">
-        <doc xml:space="preserve">Returns a freshly allocated buffer containing the first @nbytes bytes of the
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstadapter.c"
+             line="753">Returns a freshly allocated buffer containing the first @nbytes bytes of the
 @adapter. The returned bytes will be flushed from the adapter.
 
 Caller owns returned value. g_free after usage.
 
 Free-function: g_free</doc>
+        <source-position filename="libs/gst/base/gstadapter.h" line="79"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstadapter.c"
+               line="765">
     oven-fresh hot data, or %NULL if @nbytes bytes are not available</doc>
           <array length="0" zero-terminated="0" c:type="gpointer">
             <type name="guint8"/>
@@ -767,20 +1098,26 @@ Free-function: g_free</doc>
         </return-value>
         <parameters>
           <instance-parameter name="adapter" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAdapter</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstadapter.c"
+                 line="755">a #GstAdapter</doc>
             <type name="Adapter" c:type="GstAdapter*"/>
           </instance-parameter>
           <parameter name="nbytes"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">the number of bytes to take</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstadapter.c"
+                 line="756">the number of bytes to take</doc>
             <type name="gsize" c:type="gsize"/>
           </parameter>
         </parameters>
       </method>
       <method name="take_buffer" c:identifier="gst_adapter_take_buffer">
-        <doc xml:space="preserve">Returns a #GstBuffer containing the first @nbytes bytes of the
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstadapter.c"
+             line="1039">Returns a #GstBuffer containing the first @nbytes bytes of the
 @adapter. The returned bytes will be flushed from the adapter.
 This function is potentially more performant than
 gst_adapter_take() since it can reuse the memory in pushed buffers
@@ -799,19 +1136,26 @@ Caller owns a reference to the returned buffer. gst_buffer_unref() after
 usage.
 
 Free-function: gst_buffer_unref</doc>
+        <source-position filename="libs/gst/base/gstadapter.h" line="82"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">a #GstBuffer containing the first
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstadapter.c"
+               line="1064">a #GstBuffer containing the first
     @nbytes of the adapter, or %NULL if @nbytes bytes are not available.
     gst_buffer_unref() when no longer needed.</doc>
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </return-value>
         <parameters>
           <instance-parameter name="adapter" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAdapter</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstadapter.c"
+                 line="1041">a #GstAdapter</doc>
             <type name="Adapter" c:type="GstAdapter*"/>
           </instance-parameter>
           <parameter name="nbytes" transfer-ownership="none">
-            <doc xml:space="preserve">the number of bytes to take</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstadapter.c"
+                 line="1042">the number of bytes to take</doc>
             <type name="gsize" c:type="gsize"/>
           </parameter>
         </parameters>
@@ -819,7 +1163,9 @@ Free-function: gst_buffer_unref</doc>
       <method name="take_buffer_fast"
               c:identifier="gst_adapter_take_buffer_fast"
               version="1.2">
-        <doc xml:space="preserve">Returns a #GstBuffer containing the first @nbytes of the @adapter.
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstadapter.c"
+             line="865">Returns a #GstBuffer containing the first @nbytes of the @adapter.
 The returned bytes will be flushed from the adapter.  This function
 is potentially more performant than gst_adapter_take_buffer() since
 it can reuse the memory in pushed buffers by subbuffering or
@@ -842,19 +1188,26 @@ Caller owns a reference to the returned buffer. gst_buffer_unref() after
 usage.
 
 Free-function: gst_buffer_unref</doc>
+        <source-position filename="libs/gst/base/gstadapter.h" line="88"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">a #GstBuffer containing the first
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstadapter.c"
+               line="894">a #GstBuffer containing the first
     @nbytes of the adapter, or %NULL if @nbytes bytes are not available.
     gst_buffer_unref() when no longer needed.</doc>
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </return-value>
         <parameters>
           <instance-parameter name="adapter" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAdapter</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstadapter.c"
+                 line="867">a #GstAdapter</doc>
             <type name="Adapter" c:type="GstAdapter*"/>
           </instance-parameter>
           <parameter name="nbytes" transfer-ownership="none">
-            <doc xml:space="preserve">the number of bytes to take</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstadapter.c"
+                 line="868">the number of bytes to take</doc>
             <type name="gsize" c:type="gsize"/>
           </parameter>
         </parameters>
@@ -862,40 +1215,54 @@ Free-function: gst_buffer_unref</doc>
       <method name="take_buffer_list"
               c:identifier="gst_adapter_take_buffer_list"
               version="1.6">
-        <doc xml:space="preserve">Returns a #GstBufferList of buffers containing the first @nbytes bytes of
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstadapter.c"
+             line="1185">Returns a #GstBufferList of buffers containing the first @nbytes bytes of
 the @adapter. The returned bytes will be flushed from the adapter.
 When the caller can deal with individual buffers, this function is more
 performant because no memory should be copied.
 
 Caller owns the returned list. Call gst_buffer_list_unref() to free
 the list after usage.</doc>
+        <source-position filename="libs/gst/base/gstadapter.h" line="91"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">a #GstBufferList of buffers containing
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstadapter.c"
+               line="1198">a #GstBufferList of buffers containing
     the first @nbytes of the adapter, or %NULL if @nbytes bytes are not
     available</doc>
           <type name="Gst.BufferList" c:type="GstBufferList*"/>
         </return-value>
         <parameters>
           <instance-parameter name="adapter" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAdapter</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstadapter.c"
+                 line="1187">a #GstAdapter</doc>
             <type name="Adapter" c:type="GstAdapter*"/>
           </instance-parameter>
           <parameter name="nbytes" transfer-ownership="none">
-            <doc xml:space="preserve">the number of bytes to take</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstadapter.c"
+                 line="1188">the number of bytes to take</doc>
             <type name="gsize" c:type="gsize"/>
           </parameter>
         </parameters>
       </method>
       <method name="take_list" c:identifier="gst_adapter_take_list">
-        <doc xml:space="preserve">Returns a #GList of buffers containing the first @nbytes bytes of the
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstadapter.c"
+             line="1083">Returns a #GList of buffers containing the first @nbytes bytes of the
 @adapter. The returned bytes will be flushed from the adapter.
 When the caller can deal with individual buffers, this function is more
 performant because no memory should be copied.
 
 Caller owns returned list and contained buffers. gst_buffer_unref() each
 buffer in the list before freeing the list after usage.</doc>
+        <source-position filename="libs/gst/base/gstadapter.h" line="85"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">a #GList of
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstadapter.c"
+               line="1096">a #GList of
     buffers containing the first @nbytes of the adapter, or %NULL if @nbytes
     bytes are not available</doc>
           <type name="GLib.List" c:type="GList*">
@@ -904,23 +1271,32 @@ buffer in the list before freeing the list after usage.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="adapter" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAdapter</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstadapter.c"
+                 line="1085">a #GstAdapter</doc>
             <type name="Adapter" c:type="GstAdapter*"/>
           </instance-parameter>
           <parameter name="nbytes" transfer-ownership="none">
-            <doc xml:space="preserve">the number of bytes to take</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstadapter.c"
+                 line="1086">the number of bytes to take</doc>
             <type name="gsize" c:type="gsize"/>
           </parameter>
         </parameters>
       </method>
       <method name="unmap" c:identifier="gst_adapter_unmap">
-        <doc xml:space="preserve">Releases the memory obtained with the last gst_adapter_map().</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstadapter.c"
+             line="559">Releases the memory obtained with the last gst_adapter_map().</doc>
+        <source-position filename="libs/gst/base/gstadapter.h" line="67"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="adapter" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAdapter</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstadapter.c"
+                 line="561">a #GstAdapter</doc>
             <type name="Adapter" c:type="GstAdapter*"/>
           </instance-parameter>
         </parameters>
@@ -930,16 +1306,20 @@ buffer in the list before freeing the list after usage.</doc>
             c:type="GstAdapterClass"
             disguised="1"
             glib:is-gtype-struct-for="Adapter">
+      <source-position filename="libs/gst/base/gstadapter.h" line="49"/>
     </record>
     <class name="Aggregator"
            c:symbol-prefix="aggregator"
            c:type="GstAggregator"
+           version="1.14"
            parent="Gst.Element"
            abstract="1"
            glib:type-name="GstAggregator"
            glib:get-type="gst_aggregator_get_type"
            glib:type-struct="AggregatorClass">
-      <doc xml:space="preserve">Manages a set of pads with the purpose of aggregating their buffers.
+      <doc xml:space="preserve"
+           filename="libs/gst/base/gstaggregator.c"
+           line="22">Manages a set of pads with the purpose of aggregating their buffers.
 Control is given to the subclass when all pads have data.
 
  * Base class for mixers and muxers. Subclasses should at least implement
@@ -979,7 +1359,9 @@ Control is given to the subclass when all pads have data.
    See gst_element_class_add_static_pad_template_with_gtype().
 
 This class used to live in gst-plugins-bad and was moved to core.</doc>
+      <source-position filename="libs/gst/base/gstaggregator.h" line="335"/>
       <virtual-method name="aggregate">
+        <source-position filename="libs/gst/base/gstaggregator.h" line="291"/>
         <return-value transfer-ownership="none">
           <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
@@ -993,6 +1375,7 @@ This class used to live in gst-plugins-bad and was moved to core.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="clip">
+        <source-position filename="libs/gst/base/gstaggregator.h" line="264"/>
         <return-value transfer-ownership="full">
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </return-value>
@@ -1009,6 +1392,7 @@ This class used to live in gst-plugins-bad and was moved to core.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="create_new_pad" introspectable="0">
+        <source-position filename="libs/gst/base/gstaggregator.h" line="300"/>
         <return-value>
           <type name="AggregatorPad" c:type="GstAggregatorPad*"/>
         </return-value>
@@ -1028,6 +1412,7 @@ This class used to live in gst-plugins-bad and was moved to core.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="decide_allocation">
+        <source-position filename="libs/gst/base/gstaggregator.h" line="316"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -1041,24 +1426,32 @@ This class used to live in gst-plugins-bad and was moved to core.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="finish_buffer" invoker="finish_buffer">
-        <doc xml:space="preserve">This method will push the provided output buffer downstream. If needed,
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstaggregator.c"
+             line="620">This method will push the provided output buffer downstream. If needed,
 mandatory events such as stream-start, caps, and segment events will be
 sent before pushing the buffer.</doc>
+        <source-position filename="libs/gst/base/gstaggregator.h" line="268"/>
         <return-value transfer-ownership="none">
           <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
         <parameters>
           <instance-parameter name="aggregator" transfer-ownership="none">
-            <doc xml:space="preserve">The #GstAggregator</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstaggregator.c"
+                 line="622">The #GstAggregator</doc>
             <type name="Aggregator" c:type="GstAggregator*"/>
           </instance-parameter>
           <parameter name="buffer" transfer-ownership="full">
-            <doc xml:space="preserve">the #GstBuffer to push.</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstaggregator.c"
+                 line="623">the #GstBuffer to push.</doc>
             <type name="Gst.Buffer" c:type="GstBuffer*"/>
           </parameter>
         </parameters>
       </virtual-method>
       <virtual-method name="fixate_src_caps">
+        <source-position filename="libs/gst/base/gstaggregator.h" line="312"/>
         <return-value transfer-ownership="full">
           <type name="Gst.Caps" c:type="GstCaps*"/>
         </return-value>
@@ -1072,6 +1465,7 @@ sent before pushing the buffer.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="flush">
+        <source-position filename="libs/gst/base/gstaggregator.h" line="262"/>
         <return-value transfer-ownership="none">
           <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
@@ -1082,6 +1476,7 @@ sent before pushing the buffer.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="get_next_time">
+        <source-position filename="libs/gst/base/gstaggregator.h" line="298"/>
         <return-value transfer-ownership="none">
           <type name="Gst.ClockTime" c:type="GstClockTime"/>
         </return-value>
@@ -1091,7 +1486,30 @@ sent before pushing the buffer.</doc>
           </instance-parameter>
         </parameters>
       </virtual-method>
+      <virtual-method name="negotiate" invoker="negotiate" version="1.18">
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstaggregator.c"
+             line="1165">Negotiates src pad caps with downstream elements.
+Unmarks GST_PAD_FLAG_NEED_RECONFIGURE in any case. But marks it again
+if #GstAggregatorClass.negotiate() fails.</doc>
+        <source-position filename="libs/gst/base/gstaggregator.h" line="323"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstaggregator.c"
+               line="1173">%TRUE if the negotiation succeeded, else %FALSE.</doc>
+          <type name="gboolean" c:type="gboolean"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="self" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstaggregator.c"
+                 line="1167">a #GstAggregator</doc>
+            <type name="Aggregator" c:type="GstAggregator*"/>
+          </instance-parameter>
+        </parameters>
+      </virtual-method>
       <virtual-method name="negotiated_src_caps">
+        <source-position filename="libs/gst/base/gstaggregator.h" line="314"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -1105,6 +1523,7 @@ sent before pushing the buffer.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="propose_allocation">
+        <source-position filename="libs/gst/base/gstaggregator.h" line="318"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -1124,6 +1543,7 @@ sent before pushing the buffer.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="sink_event">
+        <source-position filename="libs/gst/base/gstaggregator.h" line="272"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -1139,7 +1559,42 @@ sent before pushing the buffer.</doc>
           </parameter>
         </parameters>
       </virtual-method>
+      <virtual-method name="sink_event_pre_queue">
+        <source-position filename="libs/gst/base/gstaggregator.h" line="325"/>
+        <return-value transfer-ownership="none">
+          <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="aggregator" transfer-ownership="none">
+            <type name="Aggregator" c:type="GstAggregator*"/>
+          </instance-parameter>
+          <parameter name="aggregator_pad" transfer-ownership="none">
+            <type name="AggregatorPad" c:type="GstAggregatorPad*"/>
+          </parameter>
+          <parameter name="event" transfer-ownership="none">
+            <type name="Gst.Event" c:type="GstEvent*"/>
+          </parameter>
+        </parameters>
+      </virtual-method>
       <virtual-method name="sink_query">
+        <source-position filename="libs/gst/base/gstaggregator.h" line="276"/>
+        <return-value transfer-ownership="none">
+          <type name="gboolean" c:type="gboolean"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="aggregator" transfer-ownership="none">
+            <type name="Aggregator" c:type="GstAggregator*"/>
+          </instance-parameter>
+          <parameter name="aggregator_pad" transfer-ownership="none">
+            <type name="AggregatorPad" c:type="GstAggregatorPad*"/>
+          </parameter>
+          <parameter name="query" transfer-ownership="none">
+            <type name="Gst.Query" c:type="GstQuery*"/>
+          </parameter>
+        </parameters>
+      </virtual-method>
+      <virtual-method name="sink_query_pre_queue">
+        <source-position filename="libs/gst/base/gstaggregator.h" line="329"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -1156,6 +1611,7 @@ sent before pushing the buffer.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="src_activate">
+        <source-position filename="libs/gst/base/gstaggregator.h" line="287"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -1172,6 +1628,7 @@ sent before pushing the buffer.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="src_event">
+        <source-position filename="libs/gst/base/gstaggregator.h" line="281"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -1185,6 +1642,7 @@ sent before pushing the buffer.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="src_query">
+        <source-position filename="libs/gst/base/gstaggregator.h" line="284"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -1198,6 +1656,7 @@ sent before pushing the buffer.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="start">
+        <source-position filename="libs/gst/base/gstaggregator.h" line="296"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -1208,6 +1667,7 @@ sent before pushing the buffer.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="stop">
+        <source-position filename="libs/gst/base/gstaggregator.h" line="294"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -1218,6 +1678,7 @@ sent before pushing the buffer.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="update_src_caps">
+        <source-position filename="libs/gst/base/gstaggregator.h" line="309"/>
         <return-value transfer-ownership="none">
           <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
@@ -1239,34 +1700,46 @@ sent before pushing the buffer.</doc>
         </parameters>
       </virtual-method>
       <method name="finish_buffer" c:identifier="gst_aggregator_finish_buffer">
-        <doc xml:space="preserve">This method will push the provided output buffer downstream. If needed,
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstaggregator.c"
+             line="620">This method will push the provided output buffer downstream. If needed,
 mandatory events such as stream-start, caps, and segment events will be
 sent before pushing the buffer.</doc>
+        <source-position filename="libs/gst/base/gstaggregator.h" line="356"/>
         <return-value transfer-ownership="none">
           <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
         <parameters>
           <instance-parameter name="aggregator" transfer-ownership="none">
-            <doc xml:space="preserve">The #GstAggregator</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstaggregator.c"
+                 line="622">The #GstAggregator</doc>
             <type name="Aggregator" c:type="GstAggregator*"/>
           </instance-parameter>
           <parameter name="buffer" transfer-ownership="full">
-            <doc xml:space="preserve">the #GstBuffer to push.</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstaggregator.c"
+                 line="623">the #GstBuffer to push.</doc>
             <type name="Gst.Buffer" c:type="GstBuffer*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_allocator" c:identifier="gst_aggregator_get_allocator">
-        <doc xml:space="preserve">Lets #GstAggregator sub-classes get the memory @allocator
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstaggregator.c"
+             line="3398">Lets #GstAggregator sub-classes get the memory @allocator
 acquired by the base class and its @params.
 
 Unref the @allocator after use it.</doc>
+        <source-position filename="libs/gst/base/gstaggregator.h" line="381"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="self" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAggregator</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstaggregator.c"
+                 line="3400">a #GstAggregator</doc>
             <type name="Aggregator" c:type="GstAggregator*"/>
           </instance-parameter>
           <parameter name="allocator"
@@ -1275,7 +1748,9 @@ Unref the @allocator after use it.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">the #GstAllocator
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstaggregator.c"
+                 line="3401">the #GstAllocator
 used</doc>
             <type name="Gst.Allocator" c:type="GstAllocator**"/>
           </parameter>
@@ -1285,7 +1760,9 @@ used</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">the
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstaggregator.c"
+                 line="3403">the
 #GstAllocationParams of @allocator</doc>
             <type name="Gst.AllocationParams" c:type="GstAllocationParams*"/>
           </parameter>
@@ -1293,69 +1770,121 @@ used</doc>
       </method>
       <method name="get_buffer_pool"
               c:identifier="gst_aggregator_get_buffer_pool">
+        <source-position filename="libs/gst/base/gstaggregator.h" line="378"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the instance of the #GstBufferPool used
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstaggregator.c"
+               line="3379">the instance of the #GstBufferPool used
 by @trans; free it after use it</doc>
           <type name="Gst.BufferPool" c:type="GstBufferPool*"/>
         </return-value>
         <parameters>
           <instance-parameter name="self" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAggregator</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstaggregator.c"
+                 line="3377">a #GstAggregator</doc>
             <type name="Aggregator" c:type="GstAggregator*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_latency" c:identifier="gst_aggregator_get_latency">
-        <doc xml:space="preserve">Retrieves the latency values reported by @self in response to the latency
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstaggregator.c"
+             line="1994">Retrieves the latency values reported by @self in response to the latency
 query, or %GST_CLOCK_TIME_NONE if there is not live source connected and the element
 will not wait for the clock.
 
 Typically only called by subclasses.</doc>
+        <source-position filename="libs/gst/base/gstaggregator.h" line="375"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The latency or %GST_CLOCK_TIME_NONE if the element does not sync</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstaggregator.c"
+               line="2004">The latency or %GST_CLOCK_TIME_NONE if the element does not sync</doc>
           <type name="Gst.ClockTime" c:type="GstClockTime"/>
         </return-value>
         <parameters>
           <instance-parameter name="self" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAggregator</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstaggregator.c"
+                 line="1996">a #GstAggregator</doc>
+            <type name="Aggregator" c:type="GstAggregator*"/>
+          </instance-parameter>
+        </parameters>
+      </method>
+      <method name="negotiate"
+              c:identifier="gst_aggregator_negotiate"
+              version="1.18">
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstaggregator.c"
+             line="1165">Negotiates src pad caps with downstream elements.
+Unmarks GST_PAD_FLAG_NEED_RECONFIGURE in any case. But marks it again
+if #GstAggregatorClass.negotiate() fails.</doc>
+        <source-position filename="libs/gst/base/gstaggregator.h" line="364"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstaggregator.c"
+               line="1173">%TRUE if the negotiation succeeded, else %FALSE.</doc>
+          <type name="gboolean" c:type="gboolean"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="self" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstaggregator.c"
+                 line="1167">a #GstAggregator</doc>
             <type name="Aggregator" c:type="GstAggregator*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="set_latency" c:identifier="gst_aggregator_set_latency">
-        <doc xml:space="preserve">Lets #GstAggregator sub-classes tell the baseclass what their internal
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstaggregator.c"
+             line="3335">Lets #GstAggregator sub-classes tell the baseclass what their internal
 latency is. Will also post a LATENCY message on the bus so the pipeline
 can reconfigure its global latency.</doc>
+        <source-position filename="libs/gst/base/gstaggregator.h" line="367"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="self" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstAggregator</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstaggregator.c"
+                 line="3337">a #GstAggregator</doc>
             <type name="Aggregator" c:type="GstAggregator*"/>
           </instance-parameter>
           <parameter name="min_latency" transfer-ownership="none">
-            <doc xml:space="preserve">minimum latency</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstaggregator.c"
+                 line="3338">minimum latency</doc>
             <type name="Gst.ClockTime" c:type="GstClockTime"/>
           </parameter>
           <parameter name="max_latency" transfer-ownership="none">
-            <doc xml:space="preserve">maximum latency</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstaggregator.c"
+                 line="3339">maximum latency</doc>
             <type name="Gst.ClockTime" c:type="GstClockTime"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_src_caps" c:identifier="gst_aggregator_set_src_caps">
-        <doc xml:space="preserve">Sets the caps to be used on the src pad.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstaggregator.c"
+             line="585">Sets the caps to be used on the src pad.</doc>
+        <source-position filename="libs/gst/base/gstaggregator.h" line="360"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="self" transfer-ownership="none">
-            <doc xml:space="preserve">The #GstAggregator</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstaggregator.c"
+                 line="587">The #GstAggregator</doc>
             <type name="Aggregator" c:type="GstAggregator*"/>
           </instance-parameter>
           <parameter name="caps" transfer-ownership="none">
-            <doc xml:space="preserve">The #GstCaps to set on the src pad.</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstaggregator.c"
+                 line="588">The #GstCaps to set on the src pad.</doc>
             <type name="Gst.Caps" c:type="GstCaps*"/>
           </parameter>
         </parameters>
@@ -1363,21 +1892,49 @@ can reconfigure its global latency.</doc>
       <method name="simple_get_next_time"
               c:identifier="gst_aggregator_simple_get_next_time"
               version="1.16">
-        <doc xml:space="preserve">This is a simple #GstAggregator::get_next_time implementation that
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstaggregator.c"
+             line="3425">This is a simple #GstAggregatorClass.get_next_time() implementation that
 just looks at the #GstSegment on the srcpad of the aggregator and bases
 the next time on the running time there.
 
 This is the desired behaviour in most cases where you have a live source
 and you have a dead line based aggregator subclass.</doc>
+        <source-position filename="libs/gst/base/gstaggregator.h" line="386"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The running time based on the position</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstaggregator.c"
+               line="3436">The running time based on the position</doc>
           <type name="Gst.ClockTime" c:type="GstClockTime"/>
         </return-value>
         <parameters>
           <instance-parameter name="self" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstAggregator</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstaggregator.c"
+                 line="3427">A #GstAggregator</doc>
+            <type name="Aggregator" c:type="GstAggregator*"/>
+          </instance-parameter>
+        </parameters>
+      </method>
+      <method name="update_segment"
+              c:identifier="gst_aggregator_update_segment"
+              version="1.18">
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstaggregator.c"
+             line="3462">Subclasses should use this to update the segment on their
+source pad, instead of directly pushing new segment events
+downstream.</doc>
+        <source-position filename="libs/gst/base/gstaggregator.h" line="389"/>
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="self" transfer-ownership="none">
             <type name="Aggregator" c:type="GstAggregator*"/>
           </instance-parameter>
+          <parameter name="segment" transfer-ownership="none">
+            <type name="Gst.Segment" c:type="const GstSegment*"/>
+          </parameter>
         </parameters>
       </method>
       <property name="latency" writable="1" transfer-ownership="none">
@@ -1387,7 +1944,9 @@ and you have a dead line based aggregator subclass.</doc>
                 version="1.16"
                 writable="1"
                 transfer-ownership="none">
-        <doc xml:space="preserve">Force minimum upstream latency (in nanoseconds). When sources with a
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstaggregator.c"
+             line="2596">Force minimum upstream latency (in nanoseconds). When sources with a
 higher latency are expected to be plugged in dynamically after the
 aggregator has started playing, this allows overriding the minimum
 latency reported by the initial source(s). This is only taken into
@@ -1398,31 +1957,35 @@ account when larger than the actually reported minimum latency.</doc>
         <type name="guint64" c:type="guint64"/>
       </property>
       <property name="start-time-selection"
-                introspectable="0"
                 writable="1"
                 transfer-ownership="none">
-        <type/>
+        <type name="AggregatorStartTimeSelection"/>
       </property>
       <field name="parent">
         <type name="Gst.Element" c:type="GstElement"/>
       </field>
       <field name="srcpad">
-        <doc xml:space="preserve">the aggregator's source pad</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstaggregator.h"
+             line="140">the aggregator's source pad</doc>
         <type name="Gst.Pad" c:type="GstPad*"/>
       </field>
       <field name="priv" readable="0" private="1">
         <type name="AggregatorPrivate" c:type="GstAggregatorPrivate*"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="20">
+        <array zero-terminated="0" fixed-size="20">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
     </class>
     <record name="AggregatorClass"
             c:type="GstAggregatorClass"
-            glib:is-gtype-struct-for="Aggregator">
-      <doc xml:space="preserve">The aggregator base class will handle in a thread-safe way all manners of
+            glib:is-gtype-struct-for="Aggregator"
+            version="1.14">
+      <doc xml:space="preserve"
+           filename="libs/gst/base/gstaggregator.h"
+           line="159">The aggregator base class will handle in a thread-safe way all manners of
 concurrent flushes, seeks, pad additions and removals, leaving to the
 subclass the responsibility of clipping buffers, and aggregating buffers in
 the way the implementor sees fit.
@@ -1431,11 +1994,14 @@ It will also take care of event ordering (stream-start, segment, eos).
 
 Basically, a simple implementation will override @aggregate, and call
 _finish_buffer from inside that function.</doc>
+      <source-position filename="libs/gst/base/gstaggregator.h" line="335"/>
       <field name="parent_class">
         <type name="Gst.ElementClass" c:type="GstElementClass"/>
       </field>
       <field name="flush">
         <callback name="flush">
+          <source-position filename="libs/gst/base/gstaggregator.h"
+                           line="262"/>
           <return-value transfer-ownership="none">
             <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
           </return-value>
@@ -1448,6 +2014,8 @@ _finish_buffer from inside that function.</doc>
       </field>
       <field name="clip">
         <callback name="clip">
+          <source-position filename="libs/gst/base/gstaggregator.h"
+                           line="264"/>
           <return-value transfer-ownership="full">
             <type name="Gst.Buffer" c:type="GstBuffer*"/>
           </return-value>
@@ -1466,16 +2034,22 @@ _finish_buffer from inside that function.</doc>
       </field>
       <field name="finish_buffer">
         <callback name="finish_buffer">
+          <source-position filename="libs/gst/base/gstaggregator.h"
+                           line="268"/>
           <return-value transfer-ownership="none">
             <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
           </return-value>
           <parameters>
             <parameter name="aggregator" transfer-ownership="none">
-              <doc xml:space="preserve">The #GstAggregator</doc>
+              <doc xml:space="preserve"
+                   filename="libs/gst/base/gstaggregator.c"
+                   line="622">The #GstAggregator</doc>
               <type name="Aggregator" c:type="GstAggregator*"/>
             </parameter>
             <parameter name="buffer" transfer-ownership="full">
-              <doc xml:space="preserve">the #GstBuffer to push.</doc>
+              <doc xml:space="preserve"
+                   filename="libs/gst/base/gstaggregator.c"
+                   line="623">the #GstBuffer to push.</doc>
               <type name="Gst.Buffer" c:type="GstBuffer*"/>
             </parameter>
           </parameters>
@@ -1483,6 +2057,8 @@ _finish_buffer from inside that function.</doc>
       </field>
       <field name="sink_event">
         <callback name="sink_event">
+          <source-position filename="libs/gst/base/gstaggregator.h"
+                           line="272"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -1501,6 +2077,8 @@ _finish_buffer from inside that function.</doc>
       </field>
       <field name="sink_query">
         <callback name="sink_query">
+          <source-position filename="libs/gst/base/gstaggregator.h"
+                           line="276"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -1519,6 +2097,8 @@ _finish_buffer from inside that function.</doc>
       </field>
       <field name="src_event">
         <callback name="src_event">
+          <source-position filename="libs/gst/base/gstaggregator.h"
+                           line="281"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -1534,6 +2114,8 @@ _finish_buffer from inside that function.</doc>
       </field>
       <field name="src_query">
         <callback name="src_query">
+          <source-position filename="libs/gst/base/gstaggregator.h"
+                           line="284"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -1549,6 +2131,8 @@ _finish_buffer from inside that function.</doc>
       </field>
       <field name="src_activate">
         <callback name="src_activate">
+          <source-position filename="libs/gst/base/gstaggregator.h"
+                           line="287"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -1567,6 +2151,8 @@ _finish_buffer from inside that function.</doc>
       </field>
       <field name="aggregate">
         <callback name="aggregate">
+          <source-position filename="libs/gst/base/gstaggregator.h"
+                           line="291"/>
           <return-value transfer-ownership="none">
             <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
           </return-value>
@@ -1582,6 +2168,8 @@ _finish_buffer from inside that function.</doc>
       </field>
       <field name="stop">
         <callback name="stop">
+          <source-position filename="libs/gst/base/gstaggregator.h"
+                           line="294"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -1594,6 +2182,8 @@ _finish_buffer from inside that function.</doc>
       </field>
       <field name="start">
         <callback name="start">
+          <source-position filename="libs/gst/base/gstaggregator.h"
+                           line="296"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -1606,6 +2196,8 @@ _finish_buffer from inside that function.</doc>
       </field>
       <field name="get_next_time">
         <callback name="get_next_time">
+          <source-position filename="libs/gst/base/gstaggregator.h"
+                           line="298"/>
           <return-value transfer-ownership="none">
             <type name="Gst.ClockTime" c:type="GstClockTime"/>
           </return-value>
@@ -1618,6 +2210,8 @@ _finish_buffer from inside that function.</doc>
       </field>
       <field name="create_new_pad" introspectable="0">
         <callback name="create_new_pad" introspectable="0">
+          <source-position filename="libs/gst/base/gstaggregator.h"
+                           line="300"/>
           <return-value>
             <type name="AggregatorPad" c:type="GstAggregatorPad*"/>
           </return-value>
@@ -1639,6 +2233,8 @@ _finish_buffer from inside that function.</doc>
       </field>
       <field name="update_src_caps">
         <callback name="update_src_caps">
+          <source-position filename="libs/gst/base/gstaggregator.h"
+                           line="309"/>
           <return-value transfer-ownership="none">
             <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
           </return-value>
@@ -1662,6 +2258,8 @@ _finish_buffer from inside that function.</doc>
       </field>
       <field name="fixate_src_caps">
         <callback name="fixate_src_caps">
+          <source-position filename="libs/gst/base/gstaggregator.h"
+                           line="312"/>
           <return-value transfer-ownership="full">
             <type name="Gst.Caps" c:type="GstCaps*"/>
           </return-value>
@@ -1677,6 +2275,8 @@ _finish_buffer from inside that function.</doc>
       </field>
       <field name="negotiated_src_caps">
         <callback name="negotiated_src_caps">
+          <source-position filename="libs/gst/base/gstaggregator.h"
+                           line="314"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -1692,6 +2292,8 @@ _finish_buffer from inside that function.</doc>
       </field>
       <field name="decide_allocation">
         <callback name="decide_allocation">
+          <source-position filename="libs/gst/base/gstaggregator.h"
+                           line="316"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -1707,6 +2309,8 @@ _finish_buffer from inside that function.</doc>
       </field>
       <field name="propose_allocation">
         <callback name="propose_allocation">
+          <source-position filename="libs/gst/base/gstaggregator.h"
+                           line="318"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -1726,8 +2330,68 @@ _finish_buffer from inside that function.</doc>
           </parameters>
         </callback>
       </field>
+      <field name="negotiate">
+        <callback name="negotiate">
+          <source-position filename="libs/gst/base/gstaggregator.h"
+                           line="323"/>
+          <return-value transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstaggregator.c"
+                 line="1173">%TRUE if the negotiation succeeded, else %FALSE.</doc>
+            <type name="gboolean" c:type="gboolean"/>
+          </return-value>
+          <parameters>
+            <parameter name="self" transfer-ownership="none">
+              <doc xml:space="preserve"
+                   filename="libs/gst/base/gstaggregator.c"
+                   line="1167">a #GstAggregator</doc>
+              <type name="Aggregator" c:type="GstAggregator*"/>
+            </parameter>
+          </parameters>
+        </callback>
+      </field>
+      <field name="sink_event_pre_queue">
+        <callback name="sink_event_pre_queue">
+          <source-position filename="libs/gst/base/gstaggregator.h"
+                           line="325"/>
+          <return-value transfer-ownership="none">
+            <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
+          </return-value>
+          <parameters>
+            <parameter name="aggregator" transfer-ownership="none">
+              <type name="Aggregator" c:type="GstAggregator*"/>
+            </parameter>
+            <parameter name="aggregator_pad" transfer-ownership="none">
+              <type name="AggregatorPad" c:type="GstAggregatorPad*"/>
+            </parameter>
+            <parameter name="event" transfer-ownership="none">
+              <type name="Gst.Event" c:type="GstEvent*"/>
+            </parameter>
+          </parameters>
+        </callback>
+      </field>
+      <field name="sink_query_pre_queue">
+        <callback name="sink_query_pre_queue">
+          <source-position filename="libs/gst/base/gstaggregator.h"
+                           line="329"/>
+          <return-value transfer-ownership="none">
+            <type name="gboolean" c:type="gboolean"/>
+          </return-value>
+          <parameters>
+            <parameter name="aggregator" transfer-ownership="none">
+              <type name="Aggregator" c:type="GstAggregator*"/>
+            </parameter>
+            <parameter name="aggregator_pad" transfer-ownership="none">
+              <type name="AggregatorPad" c:type="GstAggregatorPad*"/>
+            </parameter>
+            <parameter name="query" transfer-ownership="none">
+              <type name="Gst.Query" c:type="GstQuery*"/>
+            </parameter>
+          </parameters>
+        </callback>
+      </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="20">
+        <array zero-terminated="0" fixed-size="17">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -1735,14 +2399,19 @@ _finish_buffer from inside that function.</doc>
     <class name="AggregatorPad"
            c:symbol-prefix="aggregator_pad"
            c:type="GstAggregatorPad"
+           version="1.14"
            parent="Gst.Pad"
            glib:type-name="GstAggregatorPad"
            glib:get-type="gst_aggregator_pad_get_type"
            glib:type-struct="AggregatorPadClass">
-      <doc xml:space="preserve">Pads managed by a #GstAggregor subclass.
+      <doc xml:space="preserve"
+           filename="libs/gst/base/gstaggregator.c"
+           line="73">Pads managed by a #GstAggregator subclass.
 
 This class used to live in gst-plugins-bad and was moved to core.</doc>
+      <source-position filename="libs/gst/base/gstaggregator.h" line="100"/>
       <virtual-method name="flush">
+        <source-position filename="libs/gst/base/gstaggregator.h" line="95"/>
         <return-value transfer-ownership="none">
           <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
@@ -1756,6 +2425,7 @@ This class used to live in gst-plugins-bad and was moved to core.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="skip_buffer">
+        <source-position filename="libs/gst/base/gstaggregator.h" line="96"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -1772,14 +2442,21 @@ This class used to live in gst-plugins-bad and was moved to core.</doc>
         </parameters>
       </virtual-method>
       <method name="drop_buffer" c:identifier="gst_aggregator_pad_drop_buffer">
-        <doc xml:space="preserve">Drop the buffer currently queued in @pad.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">TRUE if there was a buffer queued in @pad, or FALSE if not.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstaggregator.c"
+             line="3201">Drop the buffer currently queued in @pad.</doc>
+        <source-position filename="libs/gst/base/gstaggregator.h" line="116"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstaggregator.c"
+               line="3207">TRUE if there was a buffer queued in @pad, or FALSE if not.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">the pad where to drop any pending buffer</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstaggregator.c"
+                 line="3203">the pad where to drop any pending buffer</doc>
             <type name="AggregatorPad" c:type="GstAggregatorPad*"/>
           </instance-parameter>
         </parameters>
@@ -1787,56 +2464,80 @@ This class used to live in gst-plugins-bad and was moved to core.</doc>
       <method name="has_buffer"
               c:identifier="gst_aggregator_pad_has_buffer"
               version="1.14.1">
-        <doc xml:space="preserve">This checks if a pad has a buffer available that will be returned by
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstaggregator.c"
+             line="3255">This checks if a pad has a buffer available that will be returned by
 a call to gst_aggregator_pad_peek_buffer() or
 gst_aggregator_pad_pop_buffer().</doc>
+        <source-position filename="libs/gst/base/gstaggregator.h" line="119"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the pad has a buffer available as the next thing.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstaggregator.c"
+               line="3263">%TRUE if the pad has a buffer available as the next thing.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">the pad to check the buffer on</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstaggregator.c"
+                 line="3257">the pad to check the buffer on</doc>
             <type name="AggregatorPad" c:type="GstAggregatorPad*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="is_eos" c:identifier="gst_aggregator_pad_is_eos">
+        <source-position filename="libs/gst/base/gstaggregator.h" line="122"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the pad is EOS, otherwise %FALSE.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstaggregator.c"
+               line="3284">%TRUE if the pad is EOS, otherwise %FALSE.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">an aggregator pad</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstaggregator.c"
+                 line="3282">an aggregator pad</doc>
             <type name="AggregatorPad" c:type="GstAggregatorPad*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="peek_buffer" c:identifier="gst_aggregator_pad_peek_buffer">
+        <source-position filename="libs/gst/base/gstaggregator.h" line="113"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">A reference to the buffer in @pad or
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstaggregator.c"
+               line="3227">A reference to the buffer in @pad or
 NULL if no buffer was queued. You should unref the buffer after
 usage.</doc>
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">the pad to get buffer from</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstaggregator.c"
+                 line="3225">the pad to get buffer from</doc>
             <type name="AggregatorPad" c:type="GstAggregatorPad*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="pop_buffer" c:identifier="gst_aggregator_pad_pop_buffer">
-        <doc xml:space="preserve">Steal the ref to the buffer currently queued in @pad.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstaggregator.c"
+             line="3165">Steal the ref to the buffer currently queued in @pad.</doc>
+        <source-position filename="libs/gst/base/gstaggregator.h" line="110"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">The buffer in @pad or NULL if no buffer was
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstaggregator.c"
+               line="3171">The buffer in @pad or NULL if no buffer was
   queued. You should unref the buffer after usage.</doc>
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">the pad to get buffer from</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstaggregator.c"
+                 line="3167">the pad to get buffer from</doc>
             <type name="AggregatorPad" c:type="GstAggregatorPad*"/>
           </instance-parameter>
         </parameters>
@@ -1845,21 +2546,25 @@ usage.</doc>
                 version="1.16"
                 writable="1"
                 transfer-ownership="none">
-        <doc xml:space="preserve">Enables the emission of signals such as #GstAggregatorPad::buffer-consumed</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstaggregator.c"
+             line="3078">Enables the emission of signals such as #GstAggregatorPad::buffer-consumed</doc>
         <type name="gboolean" c:type="gboolean"/>
       </property>
       <field name="parent">
         <type name="Gst.Pad" c:type="GstPad"/>
       </field>
       <field name="segment">
-        <doc xml:space="preserve">last segment received.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstaggregator.h"
+             line="59">last segment received.</doc>
         <type name="Gst.Segment" c:type="GstSegment"/>
       </field>
       <field name="priv" readable="0" private="1">
         <type name="AggregatorPadPrivate" c:type="GstAggregatorPadPrivate*"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -1876,12 +2581,15 @@ usage.</doc>
     </class>
     <record name="AggregatorPadClass"
             c:type="GstAggregatorPadClass"
-            glib:is-gtype-struct-for="AggregatorPad">
+            glib:is-gtype-struct-for="AggregatorPad"
+            version="1.14">
+      <source-position filename="libs/gst/base/gstaggregator.h" line="100"/>
       <field name="parent_class">
         <type name="Gst.PadClass" c:type="GstPadClass"/>
       </field>
       <field name="flush">
         <callback name="flush">
+          <source-position filename="libs/gst/base/gstaggregator.h" line="95"/>
           <return-value transfer-ownership="none">
             <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
           </return-value>
@@ -1897,6 +2605,7 @@ usage.</doc>
       </field>
       <field name="skip_buffer">
         <callback name="skip_buffer">
+          <source-position filename="libs/gst/base/gstaggregator.h" line="96"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -1914,7 +2623,7 @@ usage.</doc>
         </callback>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="20">
+        <array zero-terminated="0" fixed-size="20">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -1922,33 +2631,541 @@ usage.</doc>
     <record name="AggregatorPadPrivate"
             c:type="GstAggregatorPadPrivate"
             disguised="1">
+      <source-position filename="libs/gst/base/gstaggregator.h" line="55"/>
     </record>
     <record name="AggregatorPrivate"
             c:type="GstAggregatorPrivate"
             disguised="1">
+      <source-position filename="libs/gst/base/gstaggregator.h" line="34"/>
     </record>
+    <enumeration name="AggregatorStartTimeSelection"
+                 version="1.14"
+                 glib:type-name="GstAggregatorStartTimeSelection"
+                 glib:get-type="gst_aggregator_start_time_selection_get_type"
+                 c:type="GstAggregatorStartTimeSelection">
+      <member name="zero"
+              value="0"
+              c:identifier="GST_AGGREGATOR_START_TIME_SELECTION_ZERO"
+              glib:nick="zero">
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstaggregator.h"
+             line="394">Start at running time 0.</doc>
+      </member>
+      <member name="first"
+              value="1"
+              c:identifier="GST_AGGREGATOR_START_TIME_SELECTION_FIRST"
+              glib:nick="first">
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstaggregator.h"
+             line="395">Start at the running time of
+the first buffer that is received.</doc>
+      </member>
+      <member name="set"
+              value="2"
+              c:identifier="GST_AGGREGATOR_START_TIME_SELECTION_SET"
+              glib:nick="set">
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstaggregator.h"
+             line="397">Start at the running time
+selected by the `start-time` property.</doc>
+      </member>
+    </enumeration>
+    <function-macro name="BASE_PARSE"
+                    c:identifier="GST_BASE_PARSE"
+                    introspectable="0">
+      <source-position filename="libs/gst/base/gstbaseparse.h" line="31"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="BASE_PARSE_CAST"
+                    c:identifier="GST_BASE_PARSE_CAST"
+                    introspectable="0">
+      <source-position filename="libs/gst/base/gstbaseparse.h" line="36"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="BASE_PARSE_CLASS"
+                    c:identifier="GST_BASE_PARSE_CLASS"
+                    introspectable="0">
+      <source-position filename="libs/gst/base/gstbaseparse.h" line="32"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="BASE_PARSE_DRAINING"
+                    c:identifier="GST_BASE_PARSE_DRAINING"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="libs/gst/base/gstbaseparse.h"
+           line="76">Obtains current drain status (ie. whether EOS has been received and
+the parser is now processing the frames at the end of the stream)</doc>
+      <source-position filename="libs/gst/base/gstbaseparse.h" line="83"/>
+      <parameters>
+        <parameter name="parse">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbaseparse.h"
+               line="78">base parse instance</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
     <constant name="BASE_PARSE_FLAG_DRAINING"
               value="2"
               c:type="GST_BASE_PARSE_FLAG_DRAINING">
+      <source-position filename="libs/gst/base/gstbaseparse.h" line="66"/>
       <type name="gint" c:type="gint"/>
     </constant>
     <constant name="BASE_PARSE_FLAG_LOST_SYNC"
               value="1"
               c:type="GST_BASE_PARSE_FLAG_LOST_SYNC">
+      <source-position filename="libs/gst/base/gstbaseparse.h" line="65"/>
       <type name="gint" c:type="gint"/>
     </constant>
+    <function-macro name="BASE_PARSE_GET_CLASS"
+                    c:identifier="GST_BASE_PARSE_GET_CLASS"
+                    introspectable="0">
+      <source-position filename="libs/gst/base/gstbaseparse.h" line="33"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="BASE_PARSE_LOST_SYNC"
+                    c:identifier="GST_BASE_PARSE_LOST_SYNC"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="libs/gst/base/gstbaseparse.h"
+           line="68">Obtains current sync status.</doc>
+      <source-position filename="libs/gst/base/gstbaseparse.h" line="74"/>
+      <parameters>
+        <parameter name="parse">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbaseparse.h"
+               line="70">base parse instance</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="BASE_PARSE_SINK_PAD"
+                    c:identifier="GST_BASE_PARSE_SINK_PAD"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="libs/gst/base/gstbaseparse.h"
+           line="46">Gives the pointer to the sink #GstPad object of the element.</doc>
+      <source-position filename="libs/gst/base/gstbaseparse.h" line="52"/>
+      <parameters>
+        <parameter name="obj">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbaseparse.h"
+               line="48">base parse instance</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="BASE_PARSE_SRC_PAD"
+                    c:identifier="GST_BASE_PARSE_SRC_PAD"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="libs/gst/base/gstbaseparse.h"
+           line="38">Gives the pointer to the source #GstPad object of the element.</doc>
+      <source-position filename="libs/gst/base/gstbaseparse.h" line="44"/>
+      <parameters>
+        <parameter name="obj">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbaseparse.h"
+               line="40">base parse instance</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="BASE_SINK"
+                    c:identifier="GST_BASE_SINK"
+                    introspectable="0">
+      <source-position filename="libs/gst/base/gstbasesink.h" line="33"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="BASE_SINK_CAST"
+                    c:identifier="GST_BASE_SINK_CAST"
+                    introspectable="0">
+      <source-position filename="libs/gst/base/gstbasesink.h" line="38"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="BASE_SINK_CLASS"
+                    c:identifier="GST_BASE_SINK_CLASS"
+                    introspectable="0">
+      <source-position filename="libs/gst/base/gstbasesink.h" line="34"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="BASE_SINK_GET_CLASS"
+                    c:identifier="GST_BASE_SINK_GET_CLASS"
+                    introspectable="0">
+      <source-position filename="libs/gst/base/gstbasesink.h" line="35"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="BASE_SINK_GET_PREROLL_COND"
+                    c:identifier="GST_BASE_SINK_GET_PREROLL_COND"
+                    introspectable="0">
+      <source-position filename="libs/gst/base/gstbasesink.h" line="53"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="BASE_SINK_GET_PREROLL_LOCK"
+                    c:identifier="GST_BASE_SINK_GET_PREROLL_LOCK"
+                    introspectable="0">
+      <source-position filename="libs/gst/base/gstbasesink.h" line="48"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="BASE_SINK_PAD"
+                    c:identifier="GST_BASE_SINK_PAD"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="libs/gst/base/gstbasesink.h"
+           line="40">Gives the pointer to the #GstPad object of the element.</doc>
+      <source-position filename="libs/gst/base/gstbasesink.h" line="46"/>
+      <parameters>
+        <parameter name="obj">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbasesink.h"
+               line="42">base sink instance</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="BASE_SINK_PREROLL_BROADCAST"
+                    c:identifier="GST_BASE_SINK_PREROLL_BROADCAST"
+                    introspectable="0">
+      <source-position filename="libs/gst/base/gstbasesink.h" line="59"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="BASE_SINK_PREROLL_LOCK"
+                    c:identifier="GST_BASE_SINK_PREROLL_LOCK"
+                    introspectable="0">
+      <source-position filename="libs/gst/base/gstbasesink.h" line="49"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="BASE_SINK_PREROLL_SIGNAL"
+                    c:identifier="GST_BASE_SINK_PREROLL_SIGNAL"
+                    introspectable="0">
+      <source-position filename="libs/gst/base/gstbasesink.h" line="58"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="BASE_SINK_PREROLL_TRYLOCK"
+                    c:identifier="GST_BASE_SINK_PREROLL_TRYLOCK"
+                    introspectable="0">
+      <source-position filename="libs/gst/base/gstbasesink.h" line="50"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="BASE_SINK_PREROLL_UNLOCK"
+                    c:identifier="GST_BASE_SINK_PREROLL_UNLOCK"
+                    introspectable="0">
+      <source-position filename="libs/gst/base/gstbasesink.h" line="51"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="BASE_SINK_PREROLL_WAIT"
+                    c:identifier="GST_BASE_SINK_PREROLL_WAIT"
+                    introspectable="0">
+      <source-position filename="libs/gst/base/gstbasesink.h" line="54"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="BASE_SINK_PREROLL_WAIT_UNTIL"
+                    c:identifier="GST_BASE_SINK_PREROLL_WAIT_UNTIL"
+                    introspectable="0">
+      <source-position filename="libs/gst/base/gstbasesink.h" line="56"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+        <parameter name="end_time">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="BASE_SRC"
+                    c:identifier="GST_BASE_SRC"
+                    introspectable="0">
+      <source-position filename="libs/gst/base/gstbasesrc.h" line="33"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="BASE_SRC_CAST"
+                    c:identifier="GST_BASE_SRC_CAST"
+                    introspectable="0">
+      <source-position filename="libs/gst/base/gstbasesrc.h" line="38"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="BASE_SRC_CLASS"
+                    c:identifier="GST_BASE_SRC_CLASS"
+                    introspectable="0">
+      <source-position filename="libs/gst/base/gstbasesrc.h" line="34"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="BASE_SRC_GET_CLASS"
+                    c:identifier="GST_BASE_SRC_GET_CLASS"
+                    introspectable="0">
+      <source-position filename="libs/gst/base/gstbasesrc.h" line="35"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="BASE_SRC_IS_STARTED"
+                    c:identifier="GST_BASE_SRC_IS_STARTED"
+                    introspectable="0">
+      <source-position filename="libs/gst/base/gstbasesrc.h" line="56"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="BASE_SRC_IS_STARTING"
+                    c:identifier="GST_BASE_SRC_IS_STARTING"
+                    introspectable="0">
+      <source-position filename="libs/gst/base/gstbasesrc.h" line="55"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="BASE_SRC_PAD"
+                    c:identifier="GST_BASE_SRC_PAD"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="libs/gst/base/gstbasesrc.h"
+           line="62">Gives the pointer to the #GstPad object of the element.</doc>
+      <source-position filename="libs/gst/base/gstbasesrc.h" line="68"/>
+      <parameters>
+        <parameter name="obj">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbasesrc.h"
+               line="64">base source instance</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="BASE_TRANSFORM"
+                    c:identifier="GST_BASE_TRANSFORM"
+                    introspectable="0">
+      <source-position filename="libs/gst/base/gstbasetransform.h" line="30"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="BASE_TRANSFORM_CAST"
+                    c:identifier="GST_BASE_TRANSFORM_CAST"
+                    introspectable="0">
+      <source-position filename="libs/gst/base/gstbasetransform.h" line="35"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="BASE_TRANSFORM_CLASS"
+                    c:identifier="GST_BASE_TRANSFORM_CLASS"
+                    introspectable="0">
+      <source-position filename="libs/gst/base/gstbasetransform.h" line="31"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="BASE_TRANSFORM_GET_CLASS"
+                    c:identifier="GST_BASE_TRANSFORM_GET_CLASS"
+                    introspectable="0">
+      <source-position filename="libs/gst/base/gstbasetransform.h" line="32"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
     <constant name="BASE_TRANSFORM_SINK_NAME"
               value="sink"
               c:type="GST_BASE_TRANSFORM_SINK_NAME">
-      <doc xml:space="preserve">The name of the templates for the sink pad.</doc>
+      <doc xml:space="preserve"
+           filename="libs/gst/base/gstbasetransform.h"
+           line="37">The name of the templates for the sink pad.</doc>
+      <source-position filename="libs/gst/base/gstbasetransform.h" line="42"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
+    <function-macro name="BASE_TRANSFORM_SINK_PAD"
+                    c:identifier="GST_BASE_TRANSFORM_SINK_PAD"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="libs/gst/base/gstbasetransform.h"
+           line="58">Gives the pointer to the sink #GstPad object of the element.</doc>
+      <source-position filename="libs/gst/base/gstbasetransform.h" line="64"/>
+      <parameters>
+        <parameter name="obj">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbasetransform.h"
+               line="60">base transform instance</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
     <constant name="BASE_TRANSFORM_SRC_NAME"
               value="src"
               c:type="GST_BASE_TRANSFORM_SRC_NAME">
-      <doc xml:space="preserve">The name of the templates for the source pad.</doc>
+      <doc xml:space="preserve"
+           filename="libs/gst/base/gstbasetransform.h"
+           line="43">The name of the templates for the source pad.</doc>
+      <source-position filename="libs/gst/base/gstbasetransform.h" line="48"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
+    <function-macro name="BASE_TRANSFORM_SRC_PAD"
+                    c:identifier="GST_BASE_TRANSFORM_SRC_PAD"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="libs/gst/base/gstbasetransform.h"
+           line="50">Gives the pointer to the source #GstPad object of the element.</doc>
+      <source-position filename="libs/gst/base/gstbasetransform.h" line="56"/>
+      <parameters>
+        <parameter name="obj">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbasetransform.h"
+               line="52">base transform instance</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="BIT_READER"
+                    c:identifier="GST_BIT_READER"
+                    introspectable="0">
+      <source-position filename="libs/gst/base/gstbitreader.h" line="31"/>
+      <parameters>
+        <parameter name="reader">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="BIT_READER_INIT"
+                    c:identifier="GST_BIT_READER_INIT"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="libs/gst/base/gstbitreader.h"
+           line="105">A #GstBitReader must be initialized with this macro, before it can be
+used. This macro can used be to initialize a variable, but it cannot
+be assigned to a variable. In that case you have to use
+gst_bit_reader_init().</doc>
+      <source-position filename="libs/gst/base/gstbitreader.h" line="115"/>
+      <parameters>
+        <parameter name="data">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbitreader.h"
+               line="107">Data from which the #GstBitReader should read</doc>
+        </parameter>
+        <parameter name="size">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbitreader.h"
+               line="108">Size of @data in bytes</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="BIT_WRITER"
+                    c:identifier="GST_BIT_WRITER"
+                    introspectable="0">
+      <source-position filename="libs/gst/base/gstbitwriter.h" line="35"/>
+      <parameters>
+        <parameter name="writer">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="BIT_WRITER_BIT_SIZE"
+                    c:identifier="GST_BIT_WRITER_BIT_SIZE"
+                    introspectable="0">
+      <source-position filename="libs/gst/base/gstbitwriter.h" line="34"/>
+      <parameters>
+        <parameter name="writer">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="BIT_WRITER_DATA"
+                    c:identifier="GST_BIT_WRITER_DATA"
+                    introspectable="0">
+      <source-position filename="libs/gst/base/gstbitwriter.h" line="33"/>
+      <parameters>
+        <parameter name="writer">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="BYTE_READER"
+                    c:identifier="GST_BYTE_READER"
+                    introspectable="0">
+      <source-position filename="libs/gst/base/gstbytereader.h" line="30"/>
+      <parameters>
+        <parameter name="reader">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="BYTE_READER_INIT"
+                    c:identifier="GST_BYTE_READER_INIT"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="libs/gst/base/gstbytereader.h"
+           line="274">A #GstByteReader must be initialized with this macro, before it can be
+used. This macro can used be to initialize a variable, but it cannot
+be assigned to a variable. In that case you have to use
+gst_byte_reader_init().</doc>
+      <source-position filename="libs/gst/base/gstbytereader.h" line="284"/>
+      <parameters>
+        <parameter name="data">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytereader.h"
+               line="276">Data from which the #GstByteReader should read</doc>
+        </parameter>
+        <parameter name="size">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytereader.h"
+               line="277">Size of @data in bytes</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="BYTE_WRITER"
+                    c:identifier="GST_BYTE_WRITER"
+                    introspectable="0">
+      <source-position filename="libs/gst/base/gstbytewriter.h" line="31"/>
+      <parameters>
+        <parameter name="writer">
+        </parameter>
+      </parameters>
+    </function-macro>
     <class name="BaseParse"
            c:symbol-prefix="base_parse"
            c:type="GstBaseParse"
@@ -1957,7 +3174,9 @@ usage.</doc>
            glib:type-name="GstBaseParse"
            glib:get-type="gst_base_parse_get_type"
            glib:type-struct="BaseParseClass">
-      <doc xml:space="preserve">This base class is for parser elements that process data and splits it
+      <doc xml:space="preserve"
+           filename="libs/gst/base/gstbaseparse.c"
+           line="24">This base class is for parser elements that process data and splits it
 into separate audio/video/whatever frames.
 
 It provides for:
@@ -2041,7 +3260,7 @@ a parser and share a lot of rather complex code.
 
  * During the parsing process #GstBaseParseClass will handle both srcpad
    and sinkpad events. They will be passed to subclass if
-   #GstBaseParseClass.event() or #GstBaseParseClass.src_event()
+   #GstBaseParseClass.sink_event() or #GstBaseParseClass.src_event()
    implementations have been provided.
 
 ## Shutdown phase
@@ -2092,7 +3311,9 @@ Things that subclass need to take care of:
   overridden) will then use these rates to perform obvious conversions.
   These rates are also used to update (estimated) duration at regular
   frame intervals.</doc>
+      <source-position filename="libs/gst/base/gstbaseparse.h" line="278"/>
       <virtual-method name="convert">
+        <source-position filename="libs/gst/base/gstbaseparse.h" line="252"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -2115,6 +3336,7 @@ Things that subclass need to take care of:
         </parameters>
       </virtual-method>
       <virtual-method name="detect">
+        <source-position filename="libs/gst/base/gstbaseparse.h" line="267"/>
         <return-value transfer-ownership="none">
           <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
@@ -2128,6 +3350,7 @@ Things that subclass need to take care of:
         </parameters>
       </virtual-method>
       <virtual-method name="get_sink_caps">
+        <source-position filename="libs/gst/base/gstbaseparse.h" line="264"/>
         <return-value transfer-ownership="full">
           <type name="Gst.Caps" c:type="GstCaps*"/>
         </return-value>
@@ -2141,6 +3364,7 @@ Things that subclass need to take care of:
         </parameters>
       </virtual-method>
       <virtual-method name="handle_frame">
+        <source-position filename="libs/gst/base/gstbaseparse.h" line="245"/>
         <return-value transfer-ownership="none">
           <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
@@ -2157,6 +3381,7 @@ Things that subclass need to take care of:
         </parameters>
       </virtual-method>
       <virtual-method name="pre_push_frame">
+        <source-position filename="libs/gst/base/gstbaseparse.h" line="249"/>
         <return-value transfer-ownership="none">
           <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
@@ -2170,6 +3395,7 @@ Things that subclass need to take care of:
         </parameters>
       </virtual-method>
       <virtual-method name="set_sink_caps">
+        <source-position filename="libs/gst/base/gstbaseparse.h" line="242"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -2183,6 +3409,7 @@ Things that subclass need to take care of:
         </parameters>
       </virtual-method>
       <virtual-method name="sink_event">
+        <source-position filename="libs/gst/base/gstbaseparse.h" line="258"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -2196,6 +3423,7 @@ Things that subclass need to take care of:
         </parameters>
       </virtual-method>
       <virtual-method name="sink_query">
+        <source-position filename="libs/gst/base/gstbaseparse.h" line="270"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -2209,6 +3437,7 @@ Things that subclass need to take care of:
         </parameters>
       </virtual-method>
       <virtual-method name="src_event">
+        <source-position filename="libs/gst/base/gstbaseparse.h" line="261"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -2222,6 +3451,7 @@ Things that subclass need to take care of:
         </parameters>
       </virtual-method>
       <virtual-method name="src_query">
+        <source-position filename="libs/gst/base/gstbaseparse.h" line="273"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -2235,6 +3465,7 @@ Things that subclass need to take care of:
         </parameters>
       </virtual-method>
       <virtual-method name="start">
+        <source-position filename="libs/gst/base/gstbaseparse.h" line="238"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -2245,6 +3476,7 @@ Things that subclass need to take care of:
         </parameters>
       </virtual-method>
       <virtual-method name="stop">
+        <source-position filename="libs/gst/base/gstbaseparse.h" line="240"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -2256,86 +3488,123 @@ Things that subclass need to take care of:
       </virtual-method>
       <method name="add_index_entry"
               c:identifier="gst_base_parse_add_index_entry">
-        <doc xml:space="preserve">Adds an entry to the index associating @offset to @ts.  It is recommended
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbaseparse.c"
+             line="1971">Adds an entry to the index associating @offset to @ts.  It is recommended
 to only add keyframe entries.  @force allows to bypass checks, such as
 whether the stream is (upstream) seekable, another entry is already "close"
 to the new entry, etc.</doc>
+        <source-position filename="libs/gst/base/gstbaseparse.h" line="351"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">#gboolean indicating whether entry was added</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbaseparse.c"
+               line="1984">#gboolean indicating whether entry was added</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="parse" transfer-ownership="none">
-            <doc xml:space="preserve">#GstBaseParse.</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbaseparse.c"
+                 line="1973">#GstBaseParse.</doc>
             <type name="BaseParse" c:type="GstBaseParse*"/>
           </instance-parameter>
           <parameter name="offset" transfer-ownership="none">
-            <doc xml:space="preserve">offset of entry</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbaseparse.c"
+                 line="1974">offset of entry</doc>
             <type name="guint64" c:type="guint64"/>
           </parameter>
           <parameter name="ts" transfer-ownership="none">
-            <doc xml:space="preserve">timestamp associated with offset</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbaseparse.c"
+                 line="1975">timestamp associated with offset</doc>
             <type name="Gst.ClockTime" c:type="GstClockTime"/>
           </parameter>
           <parameter name="key" transfer-ownership="none">
-            <doc xml:space="preserve">whether entry refers to keyframe</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbaseparse.c"
+                 line="1976">whether entry refers to keyframe</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
           <parameter name="force" transfer-ownership="none">
-            <doc xml:space="preserve">add entry disregarding sanity checks</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbaseparse.c"
+                 line="1977">add entry disregarding sanity checks</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </method>
       <method name="convert_default"
               c:identifier="gst_base_parse_convert_default">
-        <doc xml:space="preserve">Default implementation of #GstBaseParseClass.convert().</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if conversion was successful.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbaseparse.c"
+             line="1733">Default implementation of #GstBaseParseClass.convert().</doc>
+        <source-position filename="libs/gst/base/gstbaseparse.h" line="345"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbaseparse.c"
+               line="1743">%TRUE if conversion was successful.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="parse" transfer-ownership="none">
-            <doc xml:space="preserve">#GstBaseParse.</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbaseparse.c"
+                 line="1735">#GstBaseParse.</doc>
             <type name="BaseParse" c:type="GstBaseParse*"/>
           </instance-parameter>
           <parameter name="src_format" transfer-ownership="none">
-            <doc xml:space="preserve">#GstFormat describing the source format.</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbaseparse.c"
+                 line="1736">#GstFormat describing the source format.</doc>
             <type name="Gst.Format" c:type="GstFormat"/>
           </parameter>
           <parameter name="src_value" transfer-ownership="none">
-            <doc xml:space="preserve">Source value to be converted.</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbaseparse.c"
+                 line="1737">Source value to be converted.</doc>
             <type name="gint64" c:type="gint64"/>
           </parameter>
           <parameter name="dest_format" transfer-ownership="none">
-            <doc xml:space="preserve">#GstFormat defining the converted format.</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbaseparse.c"
+                 line="1738">#GstFormat defining the converted format.</doc>
             <type name="Gst.Format" c:type="GstFormat"/>
           </parameter>
           <parameter name="dest_value"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">Pointer where the conversion result will be put.</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbaseparse.c"
+                 line="1739">Pointer where the conversion result will be put.</doc>
             <type name="gint64" c:type="gint64*"/>
           </parameter>
         </parameters>
       </method>
       <method name="drain" c:identifier="gst_base_parse_drain" version="1.12">
-        <doc xml:space="preserve">Drains the adapter until it is empty. It decreases the min_frame_size to
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbaseparse.c"
+             line="2789">Drains the adapter until it is empty. It decreases the min_frame_size to
 match the current adapter size and calls chain method until the adapter
 is emptied or chain returns with error.</doc>
+        <source-position filename="libs/gst/base/gstbaseparse.h" line="320"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="parse" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBaseParse</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbaseparse.c"
+                 line="2791">a #GstBaseParse</doc>
             <type name="BaseParse" c:type="GstBaseParse*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="finish_frame" c:identifier="gst_base_parse_finish_frame">
-        <doc xml:space="preserve">Collects parsed data and pushes this downstream.
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbaseparse.c"
+             line="2693">Collects parsed data and pushes this downstream.
 Source pad caps must be set when this is called.
 
 If @frame's out_buffer is set, that will be used as subsequent frame data.
@@ -2346,21 +3615,30 @@ ignored for any but the above purpose/information).
 
 Note that the latter buffer is invalidated by this call, whereas the
 caller retains ownership of @frame.</doc>
+        <source-position filename="libs/gst/base/gstbaseparse.h" line="302"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstFlowReturn that should be escalated to caller (of caller)</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbaseparse.c"
+               line="2711">a #GstFlowReturn that should be escalated to caller (of caller)</doc>
           <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
         <parameters>
           <instance-parameter name="parse" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBaseParse</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbaseparse.c"
+                 line="2695">a #GstBaseParse</doc>
             <type name="BaseParse" c:type="GstBaseParse*"/>
           </instance-parameter>
           <parameter name="frame" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBaseParseFrame</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbaseparse.c"
+                 line="2696">a #GstBaseParseFrame</doc>
             <type name="BaseParseFrame" c:type="GstBaseParseFrame*"/>
           </parameter>
           <parameter name="size" transfer-ownership="none">
-            <doc xml:space="preserve">consumed input data represented by frame</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbaseparse.c"
+                 line="2697">consumed input data represented by frame</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
         </parameters>
@@ -2368,213 +3646,292 @@ caller retains ownership of @frame.</doc>
       <method name="merge_tags"
               c:identifier="gst_base_parse_merge_tags"
               version="1.6">
-        <doc xml:space="preserve">Sets the parser subclass's tags and how they should be merged with any
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbaseparse.c"
+             line="5019">Sets the parser subclass's tags and how they should be merged with any
 upstream stream tags. This will override any tags previously-set
 with gst_base_parse_merge_tags().
 
 Note that this is provided for convenience, and the subclass is
 not required to use this and can still do tag handling on its own.</doc>
+        <source-position filename="libs/gst/base/gstbaseparse.h" line="360"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="parse" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBaseParse</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbaseparse.c"
+                 line="5021">a #GstBaseParse</doc>
             <type name="BaseParse" c:type="GstBaseParse*"/>
           </instance-parameter>
           <parameter name="tags"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">a #GstTagList to merge, or NULL to unset
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbaseparse.c"
+                 line="5022">a #GstTagList to merge, or NULL to unset
     previously-set tags</doc>
             <type name="Gst.TagList" c:type="GstTagList*"/>
           </parameter>
           <parameter name="mode" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstTagMergeMode to use, usually #GST_TAG_MERGE_REPLACE</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbaseparse.c"
+                 line="5024">the #GstTagMergeMode to use, usually #GST_TAG_MERGE_REPLACE</doc>
             <type name="Gst.TagMergeMode" c:type="GstTagMergeMode"/>
           </parameter>
         </parameters>
       </method>
       <method name="push_frame" c:identifier="gst_base_parse_push_frame">
-        <doc xml:space="preserve">Pushes the frame's buffer downstream, sends any pending events and
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbaseparse.c"
+             line="2442">Pushes the frame's buffer downstream, sends any pending events and
 does some timestamp and segment handling. Takes ownership of
 frame's buffer, though caller retains ownership of @frame.
 
 This must be called with sinkpad STREAM_LOCK held.</doc>
+        <source-position filename="libs/gst/base/gstbaseparse.h" line="299"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">#GstFlowReturn</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbaseparse.c"
+               line="2453">#GstFlowReturn</doc>
           <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
         <parameters>
           <instance-parameter name="parse" transfer-ownership="none">
-            <doc xml:space="preserve">#GstBaseParse.</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbaseparse.c"
+                 line="2444">#GstBaseParse.</doc>
             <type name="BaseParse" c:type="GstBaseParse*"/>
           </instance-parameter>
           <parameter name="frame" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBaseParseFrame</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbaseparse.c"
+                 line="2445">a #GstBaseParseFrame</doc>
             <type name="BaseParseFrame" c:type="GstBaseParseFrame*"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_average_bitrate"
               c:identifier="gst_base_parse_set_average_bitrate">
-        <doc xml:space="preserve">Optionally sets the average bitrate detected in media (if non-zero),
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbaseparse.c"
+             line="3910">Optionally sets the average bitrate detected in media (if non-zero),
 e.g. based on metadata, as it will be posted to the application.
 
 By default, announced average bitrate is estimated. The average bitrate
 is used to estimate the total duration of the stream and to estimate
 a seek position, if there's no index and the format is syncable
 (see gst_base_parse_set_syncable()).</doc>
+        <source-position filename="libs/gst/base/gstbaseparse.h" line="311"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="parse" transfer-ownership="none">
-            <doc xml:space="preserve">#GstBaseParse.</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbaseparse.c"
+                 line="3912">#GstBaseParse.</doc>
             <type name="BaseParse" c:type="GstBaseParse*"/>
           </instance-parameter>
           <parameter name="bitrate" transfer-ownership="none">
-            <doc xml:space="preserve">average bitrate in bits/second</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbaseparse.c"
+                 line="3913">average bitrate in bits/second</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_duration" c:identifier="gst_base_parse_set_duration">
-        <doc xml:space="preserve">Sets the duration of the currently playing media. Subclass can use this
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbaseparse.c"
+             line="3859">Sets the duration of the currently playing media. Subclass can use this
 when it is able to determine duration and/or notices a change in the media
 duration.  Alternatively, if @interval is non-zero (default), then stream
 duration is determined based on estimated bitrate, and updated every @interval
 frames.</doc>
+        <source-position filename="libs/gst/base/gstbaseparse.h" line="306"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="parse" transfer-ownership="none">
-            <doc xml:space="preserve">#GstBaseParse.</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbaseparse.c"
+                 line="3861">#GstBaseParse.</doc>
             <type name="BaseParse" c:type="GstBaseParse*"/>
           </instance-parameter>
           <parameter name="fmt" transfer-ownership="none">
-            <doc xml:space="preserve">#GstFormat.</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbaseparse.c"
+                 line="3862">#GstFormat.</doc>
             <type name="Gst.Format" c:type="GstFormat"/>
           </parameter>
           <parameter name="duration" transfer-ownership="none">
-            <doc xml:space="preserve">duration value.</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbaseparse.c"
+                 line="3863">duration value.</doc>
             <type name="gint64" c:type="gint64"/>
           </parameter>
           <parameter name="interval" transfer-ownership="none">
-            <doc xml:space="preserve">how often to update the duration estimate based on bitrate, or 0.</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbaseparse.c"
+                 line="3864">how often to update the duration estimate based on bitrate, or 0.</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_frame_rate"
               c:identifier="gst_base_parse_set_frame_rate">
-        <doc xml:space="preserve">If frames per second is configured, parser can take care of buffer duration
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbaseparse.c"
+             line="3948">If frames per second is configured, parser can take care of buffer duration
 and timestamping.  When performing segment clipping, or seeking to a specific
 location, a corresponding decoder might need an initial @lead_in and a
 following @lead_out number of frames to ensure the desired segment is
 entirely filled upon decoding.</doc>
+        <source-position filename="libs/gst/base/gstbaseparse.h" line="335"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="parse" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstBaseParse to set</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbaseparse.c"
+                 line="3950">the #GstBaseParse to set</doc>
             <type name="BaseParse" c:type="GstBaseParse*"/>
           </instance-parameter>
           <parameter name="fps_num" transfer-ownership="none">
-            <doc xml:space="preserve">frames per second (numerator).</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbaseparse.c"
+                 line="3951">frames per second (numerator).</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="fps_den" transfer-ownership="none">
-            <doc xml:space="preserve">frames per second (denominator).</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbaseparse.c"
+                 line="3952">frames per second (denominator).</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="lead_in" transfer-ownership="none">
-            <doc xml:space="preserve">frames needed before a segment for subsequent decode</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbaseparse.c"
+                 line="3953">frames needed before a segment for subsequent decode</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="lead_out" transfer-ownership="none">
-            <doc xml:space="preserve">frames needed after a segment</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbaseparse.c"
+                 line="3954">frames needed after a segment</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_has_timing_info"
               c:identifier="gst_base_parse_set_has_timing_info">
-        <doc xml:space="preserve">Set if frames carry timing information which the subclass can (generally)
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbaseparse.c"
+             line="4005">Set if frames carry timing information which the subclass can (generally)
 parse and provide.  In particular, intrinsic (rather than estimated) time
 can be obtained following a seek.</doc>
+        <source-position filename="libs/gst/base/gstbaseparse.h" line="317"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="parse" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBaseParse</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbaseparse.c"
+                 line="4007">a #GstBaseParse</doc>
             <type name="BaseParse" c:type="GstBaseParse*"/>
           </instance-parameter>
           <parameter name="has_timing" transfer-ownership="none">
-            <doc xml:space="preserve">whether frames carry timing information</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbaseparse.c"
+                 line="4008">whether frames carry timing information</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_infer_ts" c:identifier="gst_base_parse_set_infer_ts">
-        <doc xml:space="preserve">By default, the base class might try to infer PTS from DTS and vice
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbaseparse.c"
+             line="4076">By default, the base class might try to infer PTS from DTS and vice
 versa.  While this is generally correct for audio data, it may not
 be otherwise. Sub-classes implementing such formats should disable
 timestamp inferring.</doc>
+        <source-position filename="libs/gst/base/gstbaseparse.h" line="332"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="parse" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBaseParse</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbaseparse.c"
+                 line="4078">a #GstBaseParse</doc>
             <type name="BaseParse" c:type="GstBaseParse*"/>
           </instance-parameter>
           <parameter name="infer_ts" transfer-ownership="none">
-            <doc xml:space="preserve">%TRUE if parser should infer DTS/PTS from each other</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbaseparse.c"
+                 line="4079">%TRUE if parser should infer DTS/PTS from each other</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_latency" c:identifier="gst_base_parse_set_latency">
-        <doc xml:space="preserve">Sets the minimum and maximum (which may likely be equal) latency introduced
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbaseparse.c"
+             line="4093">Sets the minimum and maximum (which may likely be equal) latency introduced
 by the parsing process.  If there is such a latency, which depends on the
 particular parsing of the format, it typically corresponds to 1 frame duration.</doc>
+        <source-position filename="libs/gst/base/gstbaseparse.h" line="341"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="parse" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBaseParse</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbaseparse.c"
+                 line="4095">a #GstBaseParse</doc>
             <type name="BaseParse" c:type="GstBaseParse*"/>
           </instance-parameter>
           <parameter name="min_latency" transfer-ownership="none">
-            <doc xml:space="preserve">minimum parse latency</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbaseparse.c"
+                 line="4096">minimum parse latency</doc>
             <type name="Gst.ClockTime" c:type="GstClockTime"/>
           </parameter>
           <parameter name="max_latency" transfer-ownership="none">
-            <doc xml:space="preserve">maximum parse latency</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbaseparse.c"
+                 line="4097">maximum parse latency</doc>
             <type name="Gst.ClockTime" c:type="GstClockTime"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_min_frame_size"
               c:identifier="gst_base_parse_set_min_frame_size">
-        <doc xml:space="preserve">Subclass can use this function to tell the base class that it needs to
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbaseparse.c"
+             line="3930">Subclass can use this function to tell the base class that it needs to
 be given buffers of at least @min_size bytes.</doc>
+        <source-position filename="libs/gst/base/gstbaseparse.h" line="314"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="parse" transfer-ownership="none">
-            <doc xml:space="preserve">#GstBaseParse.</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbaseparse.c"
+                 line="3932">#GstBaseParse.</doc>
             <type name="BaseParse" c:type="GstBaseParse*"/>
           </instance-parameter>
           <parameter name="min_size" transfer-ownership="none">
-            <doc xml:space="preserve">Minimum size in bytes of the data that this base class should
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbaseparse.c"
+                 line="3933">Minimum size in bytes of the data that this base class should
       give to subclass.</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
@@ -2582,61 +3939,82 @@ be given buffers of at least @min_size bytes.</doc>
       </method>
       <method name="set_passthrough"
               c:identifier="gst_base_parse_set_passthrough">
-        <doc xml:space="preserve">Set if the nature of the format or configuration does not allow (much)
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbaseparse.c"
+             line="4037">Set if the nature of the format or configuration does not allow (much)
 parsing, and the parser should operate in passthrough mode (which only
 applies when operating in push mode). That is, incoming buffers are
 pushed through unmodified, i.e. no #GstBaseParseClass.handle_frame()
 will be invoked, but #GstBaseParseClass.pre_push_frame() will still be
 invoked, so subclass can perform as much or as little is appropriate for
 passthrough semantics in #GstBaseParseClass.pre_push_frame().</doc>
+        <source-position filename="libs/gst/base/gstbaseparse.h" line="326"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="parse" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBaseParse</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbaseparse.c"
+                 line="4039">a #GstBaseParse</doc>
             <type name="BaseParse" c:type="GstBaseParse*"/>
           </instance-parameter>
           <parameter name="passthrough" transfer-ownership="none">
-            <doc xml:space="preserve">%TRUE if parser should run in passthrough mode</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbaseparse.c"
+                 line="4040">%TRUE if parser should run in passthrough mode</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_pts_interpolation"
               c:identifier="gst_base_parse_set_pts_interpolation">
-        <doc xml:space="preserve">By default, the base class will guess PTS timestamps using a simple
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbaseparse.c"
+             line="4057">By default, the base class will guess PTS timestamps using a simple
 interpolation (previous timestamp + duration), which is incorrect for
 data streams with reordering, where PTS can go backward. Sub-classes
 implementing such formats should disable PTS interpolation.</doc>
+        <source-position filename="libs/gst/base/gstbaseparse.h" line="329"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="parse" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBaseParse</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbaseparse.c"
+                 line="4059">a #GstBaseParse</doc>
             <type name="BaseParse" c:type="GstBaseParse*"/>
           </instance-parameter>
           <parameter name="pts_interpolate" transfer-ownership="none">
-            <doc xml:space="preserve">%TRUE if parser should interpolate PTS timestamps</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbaseparse.c"
+                 line="4060">%TRUE if parser should interpolate PTS timestamps</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_syncable" c:identifier="gst_base_parse_set_syncable">
-        <doc xml:space="preserve">Set if frame starts can be identified. This is set by default and
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbaseparse.c"
+             line="4021">Set if frame starts can be identified. This is set by default and
 determines whether seeking based on bitrate averages
 is possible for a format/stream.</doc>
+        <source-position filename="libs/gst/base/gstbaseparse.h" line="323"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="parse" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBaseParse</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbaseparse.c"
+                 line="4023">a #GstBaseParse</doc>
             <type name="BaseParse" c:type="GstBaseParse*"/>
           </instance-parameter>
           <parameter name="syncable" transfer-ownership="none">
-            <doc xml:space="preserve">set if frame starts can be identified</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbaseparse.c"
+                 line="4024">set if frame starts can be identified</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
@@ -2644,7 +4022,9 @@ is possible for a format/stream.</doc>
       <method name="set_ts_at_offset"
               c:identifier="gst_base_parse_set_ts_at_offset"
               version="1.2">
-        <doc xml:space="preserve">This function should only be called from a @handle_frame implementation.
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbaseparse.c"
+             line="4979">This function should only be called from a @handle_frame implementation.
 
 #GstBaseParse creates initial timestamps for frames by using the last
 timestamp seen in the stream before the frame starts.  In certain
@@ -2652,16 +4032,21 @@ cases, the correct timestamps will occur in the stream after the
 start of the frame, but before the start of the actual picture data.
 This function can be used to set the timestamps based on the offset
 into the frame data that the picture starts.</doc>
+        <source-position filename="libs/gst/base/gstbaseparse.h" line="357"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="parse" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBaseParse</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbaseparse.c"
+                 line="4981">a #GstBaseParse</doc>
             <type name="BaseParse" c:type="GstBaseParse*"/>
           </instance-parameter>
           <parameter name="offset" transfer-ownership="none">
-            <doc xml:space="preserve">offset into current buffer</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbaseparse.c"
+                 line="4982">offset into current buffer</doc>
             <type name="gsize" c:type="gsize"/>
           </parameter>
         </parameters>
@@ -2669,7 +4054,9 @@ into the frame data that the picture starts.</doc>
       <property name="disable-passthrough"
                 writable="1"
                 transfer-ownership="none">
-        <doc xml:space="preserve">If set to %TRUE, baseparse will unconditionally force parsing of the
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbaseparse.c"
+             line="552">If set to %TRUE, baseparse will unconditionally force parsing of the
 incoming data. This can be required in the rare cases where the incoming
 side-data (caps, pts, dts, ...) is not trusted by the user and wants to
 force validation and parsing of the incoming data.
@@ -2678,7 +4065,9 @@ the implementation (standard behaviour).</doc>
         <type name="gboolean" c:type="gboolean"/>
       </property>
       <field name="element">
-        <doc xml:space="preserve">the parent element.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbaseparse.h"
+             line="156">the parent element.</doc>
         <type name="Gst.Element" c:type="GstElement"/>
       </field>
       <field name="sinkpad">
@@ -2694,7 +4083,7 @@ the implementation (standard behaviour).</doc>
         <type name="Gst.Segment" c:type="GstSegment"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="20">
+        <array zero-terminated="0" fixed-size="20">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -2705,14 +4094,20 @@ the implementation (standard behaviour).</doc>
     <record name="BaseParseClass"
             c:type="GstBaseParseClass"
             glib:is-gtype-struct-for="BaseParse">
-      <doc xml:space="preserve">Subclasses can override any of the available virtual methods or not, as
+      <doc xml:space="preserve"
+           filename="libs/gst/base/gstbaseparse.h"
+           line="179">Subclasses can override any of the available virtual methods or not, as
 needed. At minimum @handle_frame needs to be overridden.</doc>
+      <source-position filename="libs/gst/base/gstbaseparse.h" line="278"/>
       <field name="parent_class">
-        <doc xml:space="preserve">the parent class</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbaseparse.h"
+             line="181">the parent class</doc>
         <type name="Gst.ElementClass" c:type="GstElementClass"/>
       </field>
       <field name="start">
         <callback name="start">
+          <source-position filename="libs/gst/base/gstbaseparse.h" line="238"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -2725,6 +4120,7 @@ needed. At minimum @handle_frame needs to be overridden.</doc>
       </field>
       <field name="stop">
         <callback name="stop">
+          <source-position filename="libs/gst/base/gstbaseparse.h" line="240"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -2737,6 +4133,7 @@ needed. At minimum @handle_frame needs to be overridden.</doc>
       </field>
       <field name="set_sink_caps">
         <callback name="set_sink_caps">
+          <source-position filename="libs/gst/base/gstbaseparse.h" line="242"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -2752,6 +4149,7 @@ needed. At minimum @handle_frame needs to be overridden.</doc>
       </field>
       <field name="handle_frame">
         <callback name="handle_frame">
+          <source-position filename="libs/gst/base/gstbaseparse.h" line="245"/>
           <return-value transfer-ownership="none">
             <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
           </return-value>
@@ -2770,6 +4168,7 @@ needed. At minimum @handle_frame needs to be overridden.</doc>
       </field>
       <field name="pre_push_frame">
         <callback name="pre_push_frame">
+          <source-position filename="libs/gst/base/gstbaseparse.h" line="249"/>
           <return-value transfer-ownership="none">
             <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
           </return-value>
@@ -2785,6 +4184,7 @@ needed. At minimum @handle_frame needs to be overridden.</doc>
       </field>
       <field name="convert">
         <callback name="convert">
+          <source-position filename="libs/gst/base/gstbaseparse.h" line="252"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -2809,6 +4209,7 @@ needed. At minimum @handle_frame needs to be overridden.</doc>
       </field>
       <field name="sink_event">
         <callback name="sink_event">
+          <source-position filename="libs/gst/base/gstbaseparse.h" line="258"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -2824,6 +4225,7 @@ needed. At minimum @handle_frame needs to be overridden.</doc>
       </field>
       <field name="src_event">
         <callback name="src_event">
+          <source-position filename="libs/gst/base/gstbaseparse.h" line="261"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -2839,6 +4241,7 @@ needed. At minimum @handle_frame needs to be overridden.</doc>
       </field>
       <field name="get_sink_caps">
         <callback name="get_sink_caps">
+          <source-position filename="libs/gst/base/gstbaseparse.h" line="264"/>
           <return-value transfer-ownership="full">
             <type name="Gst.Caps" c:type="GstCaps*"/>
           </return-value>
@@ -2854,6 +4257,7 @@ needed. At minimum @handle_frame needs to be overridden.</doc>
       </field>
       <field name="detect">
         <callback name="detect">
+          <source-position filename="libs/gst/base/gstbaseparse.h" line="267"/>
           <return-value transfer-ownership="none">
             <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
           </return-value>
@@ -2869,6 +4273,7 @@ needed. At minimum @handle_frame needs to be overridden.</doc>
       </field>
       <field name="sink_query">
         <callback name="sink_query">
+          <source-position filename="libs/gst/base/gstbaseparse.h" line="270"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -2884,6 +4289,7 @@ needed. At minimum @handle_frame needs to be overridden.</doc>
       </field>
       <field name="src_query">
         <callback name="src_query">
+          <source-position filename="libs/gst/base/gstbaseparse.h" line="273"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -2898,7 +4304,7 @@ needed. At minimum @handle_frame needs to be overridden.</doc>
         </callback>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="18">
+        <array zero-terminated="0" fixed-size="18">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -2908,34 +4314,47 @@ needed. At minimum @handle_frame needs to be overridden.</doc>
             glib:type-name="GstBaseParseFrame"
             glib:get-type="gst_base_parse_frame_get_type"
             c:symbol-prefix="base_parse_frame">
-      <doc xml:space="preserve">Frame (context) data passed to each frame parsing virtual methods.  In
+      <doc xml:space="preserve"
+           filename="libs/gst/base/gstbaseparse.h"
+           line="115">Frame (context) data passed to each frame parsing virtual methods.  In
 addition to providing the data to be checked for a valid frame or an already
 identified frame, it conveys additional metadata or control information
 from and to the subclass w.r.t. the particular frame in question (rather
 than global parameters).  Some of these may apply to each parsing stage, others
 only to some a particular one.  These parameters are effectively zeroed at start
 of each frame's processing, i.e. parsing virtual method invocation sequence.</doc>
+      <source-position filename="libs/gst/base/gstbaseparse.h" line="148"/>
       <field name="buffer" writable="1">
-        <doc xml:space="preserve">input data to be parsed for frames.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbaseparse.h"
+             line="117">input data to be parsed for frames.</doc>
         <type name="Gst.Buffer" c:type="GstBuffer*"/>
       </field>
       <field name="out_buffer" writable="1">
-        <doc xml:space="preserve">output data.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbaseparse.h"
+             line="118">output data.</doc>
         <type name="Gst.Buffer" c:type="GstBuffer*"/>
       </field>
       <field name="flags" writable="1">
-        <doc xml:space="preserve">a combination of input and output #GstBaseParseFrameFlags that
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbaseparse.h"
+             line="125">a combination of input and output #GstBaseParseFrameFlags that
  convey additional context to subclass or allow subclass to tune
  subsequent #GstBaseParse actions.</doc>
         <type name="guint" c:type="guint"/>
       </field>
       <field name="offset" writable="1">
-        <doc xml:space="preserve">media specific offset of input frame
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbaseparse.h"
+             line="119">media specific offset of input frame
   Note that a converter may have a different one on the frame's buffer.</doc>
         <type name="guint64" c:type="guint64"/>
       </field>
       <field name="overhead" writable="1">
-        <doc xml:space="preserve">subclass can set this to indicates the metadata overhead
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbaseparse.h"
+             line="121">subclass can set this to indicates the metadata overhead
   for the given frame, which is then used to enable more accurate bitrate
   computations. If this is -1, it is assumed that this frame should be
   skipped in bitrate calculation.</doc>
@@ -2945,12 +4364,12 @@ of each frame's processing, i.e. parsing virtual method invocation sequence.</do
         <type name="gint" c:type="gint"/>
       </field>
       <field name="_gst_reserved_i" readable="0" private="1">
-        <array zero-terminated="0" c:type="guint" fixed-size="2">
+        <array zero-terminated="0" fixed-size="2">
           <type name="guint" c:type="guint"/>
         </array>
       </field>
       <field name="_gst_reserved_p" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="2">
+        <array zero-terminated="0" fixed-size="2">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -2958,25 +4377,36 @@ of each frame's processing, i.e. parsing virtual method invocation sequence.</do
         <type name="guint" c:type="guint"/>
       </field>
       <constructor name="new" c:identifier="gst_base_parse_frame_new">
-        <doc xml:space="preserve">Allocates a new #GstBaseParseFrame. This function is mainly for bindings,
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbaseparse.c"
+             line="748">Allocates a new #GstBaseParseFrame. This function is mainly for bindings,
 elements written in C should usually allocate the frame on the stack and
 then use gst_base_parse_frame_init() to initialise it.</doc>
+        <source-position filename="libs/gst/base/gstbaseparse.h" line="287"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a newly-allocated #GstBaseParseFrame. Free with
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbaseparse.c"
+               line="760">a newly-allocated #GstBaseParseFrame. Free with
     gst_base_parse_frame_free() when no longer needed.</doc>
           <type name="BaseParseFrame" c:type="GstBaseParseFrame*"/>
         </return-value>
         <parameters>
           <parameter name="buffer" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBuffer</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbaseparse.c"
+                 line="750">a #GstBuffer</doc>
             <type name="Gst.Buffer" c:type="GstBuffer*"/>
           </parameter>
           <parameter name="flags" transfer-ownership="none">
-            <doc xml:space="preserve">the flags</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbaseparse.c"
+                 line="751">the flags</doc>
             <type name="BaseParseFrameFlags" c:type="GstBaseParseFrameFlags"/>
           </parameter>
           <parameter name="overhead" transfer-ownership="none">
-            <doc xml:space="preserve">number of bytes in this frame which should be counted as
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbaseparse.c"
+                 line="752">number of bytes in this frame which should be counted as
     metadata overhead, ie. not used to calculate the average bitrate.
     Set to -1 to mark the entire frame as metadata. If in doubt, set to 0.</doc>
             <type name="gint" c:type="gint"/>
@@ -2984,65 +4414,91 @@ then use gst_base_parse_frame_init() to initialise it.</doc>
         </parameters>
       </constructor>
       <method name="copy" c:identifier="gst_base_parse_frame_copy">
-        <doc xml:space="preserve">Copies a #GstBaseParseFrame.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbaseparse.c"
+             line="680">Copies a #GstBaseParseFrame.</doc>
+        <source-position filename="libs/gst/base/gstbaseparse.h" line="294"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">A copy of @frame</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbaseparse.c"
+               line="686">A copy of @frame</doc>
           <type name="BaseParseFrame" c:type="GstBaseParseFrame*"/>
         </return-value>
         <parameters>
           <instance-parameter name="frame" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBaseParseFrame</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbaseparse.c"
+                 line="682">a #GstBaseParseFrame</doc>
             <type name="BaseParseFrame" c:type="GstBaseParseFrame*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="free" c:identifier="gst_base_parse_frame_free">
-        <doc xml:space="preserve">Frees the provided @frame.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbaseparse.c"
+             line="703">Frees the provided @frame.</doc>
+        <source-position filename="libs/gst/base/gstbaseparse.h" line="296"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="frame" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstBaseParseFrame</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbaseparse.c"
+                 line="705">A #GstBaseParseFrame</doc>
             <type name="BaseParseFrame" c:type="GstBaseParseFrame*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="init" c:identifier="gst_base_parse_frame_init">
-        <doc xml:space="preserve">Sets a #GstBaseParseFrame to initial state.  Currently this means
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbaseparse.c"
+             line="730">Sets a #GstBaseParseFrame to initial state.  Currently this means
 all public fields are zero-ed and a private flag is set to make
 sure gst_base_parse_frame_free() only frees the contents but not
 the actual frame. Use this function to initialise a #GstBaseParseFrame
 allocated on the stack.</doc>
+        <source-position filename="libs/gst/base/gstbaseparse.h" line="291"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="frame" transfer-ownership="none">
-            <doc xml:space="preserve">#GstBaseParseFrame.</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbaseparse.c"
+                 line="732">#GstBaseParseFrame.</doc>
             <type name="BaseParseFrame" c:type="GstBaseParseFrame*"/>
           </instance-parameter>
         </parameters>
       </method>
     </record>
     <bitfield name="BaseParseFrameFlags" c:type="GstBaseParseFrameFlags">
-      <doc xml:space="preserve">Flags to be used in a #GstBaseParseFrame.</doc>
+      <doc xml:space="preserve"
+           filename="libs/gst/base/gstbaseparse.h"
+           line="85">Flags to be used in a #GstBaseParseFrame.</doc>
+      <source-position filename="libs/gst/base/gstbaseparse.h" line="113"/>
       <member name="none"
               value="0"
               c:identifier="GST_BASE_PARSE_FRAME_FLAG_NONE">
-        <doc xml:space="preserve">no flag</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbaseparse.h"
+             line="87">no flag</doc>
       </member>
       <member name="new_frame"
               value="1"
               c:identifier="GST_BASE_PARSE_FRAME_FLAG_NEW_FRAME">
-        <doc xml:space="preserve">set by baseclass if current frame
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbaseparse.h"
+             line="88">set by baseclass if current frame
   is passed for processing to the subclass for the first time
   (and not set on subsequent calls with same data).</doc>
       </member>
       <member name="no_frame"
               value="2"
               c:identifier="GST_BASE_PARSE_FRAME_FLAG_NO_FRAME">
-        <doc xml:space="preserve">set to indicate this buffer should not be
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbaseparse.h"
+             line="91">set to indicate this buffer should not be
   counted as frame, e.g. if this frame is dependent on a previous one.
   As it is not counted as a frame, bitrate increases but frame to time
   conversions are maintained.</doc>
@@ -3050,25 +4506,32 @@ allocated on the stack.</doc>
       <member name="clip"
               value="4"
               c:identifier="GST_BASE_PARSE_FRAME_FLAG_CLIP">
-        <doc xml:space="preserve">@pre_push_frame can set this to indicate
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbaseparse.h"
+             line="95">@pre_push_frame can set this to indicate
    that regular segment clipping can still be performed (as opposed to
    any custom one having been done).</doc>
       </member>
       <member name="drop"
               value="8"
               c:identifier="GST_BASE_PARSE_FRAME_FLAG_DROP">
-        <doc xml:space="preserve">indicates to @finish_frame that the
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbaseparse.h"
+             line="98">indicates to @finish_frame that the
    the frame should be dropped (and might be handled internally by subclass)</doc>
       </member>
       <member name="queue"
               value="16"
               c:identifier="GST_BASE_PARSE_FRAME_FLAG_QUEUE">
-        <doc xml:space="preserve">indicates to @finish_frame that the
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbaseparse.h"
+             line="100">indicates to @finish_frame that the
    the frame should be queued for now and processed fully later
    when the first non-queued frame is finished</doc>
       </member>
     </bitfield>
     <record name="BaseParsePrivate" c:type="GstBaseParsePrivate" disguised="1">
+      <source-position filename="libs/gst/base/gstbaseparse.h" line="152"/>
     </record>
     <class name="BaseSink"
            c:symbol-prefix="base_sink"
@@ -3078,7 +4541,9 @@ allocated on the stack.</doc>
            glib:type-name="GstBaseSink"
            glib:get-type="gst_base_sink_get_type"
            glib:type-struct="BaseSinkClass">
-      <doc xml:space="preserve">#GstBaseSink is the base class for sink elements in GStreamer, such as
+      <doc xml:space="preserve"
+           filename="libs/gst/base/gstbasesink.c"
+           line="22">#GstBaseSink is the base class for sink elements in GStreamer, such as
 xvimagesink or filesink. It is a layer on top of #GstElement that provides a
 simplified interface to plugin writers. #GstBaseSink handles many details
 for you, for example: preroll, clock synchronization, state changes,
@@ -3191,7 +4656,9 @@ rate, for example.
 The #GstBaseSink:async property can be used to instruct the sink to never
 perform an ASYNC state change. This feature is mostly usable when dealing
 with non-synchronized streams or sparse streams.</doc>
+      <source-position filename="libs/gst/base/gstbasesink.h" line="208"/>
       <virtual-method name="activate_pull">
+        <source-position filename="libs/gst/base/gstbasesink.h" line="167"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -3205,6 +4672,7 @@ with non-synchronized streams or sparse streams.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="event">
+        <source-position filename="libs/gst/base/gstbasesink.h" line="192"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -3218,6 +4686,7 @@ with non-synchronized streams or sparse streams.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="fixate">
+        <source-position filename="libs/gst/base/gstbasesink.h" line="165"/>
         <return-value transfer-ownership="full">
           <type name="Gst.Caps" c:type="GstCaps*"/>
         </return-value>
@@ -3231,6 +4700,7 @@ with non-synchronized streams or sparse streams.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="get_caps">
+        <source-position filename="libs/gst/base/gstbasesink.h" line="160"/>
         <return-value transfer-ownership="full">
           <type name="Gst.Caps" c:type="GstCaps*"/>
         </return-value>
@@ -3244,6 +4714,7 @@ with non-synchronized streams or sparse streams.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="get_times">
+        <source-position filename="libs/gst/base/gstbasesink.h" line="170"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
@@ -3263,6 +4734,7 @@ with non-synchronized streams or sparse streams.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="prepare">
+        <source-position filename="libs/gst/base/gstbasesink.h" line="197"/>
         <return-value transfer-ownership="none">
           <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
@@ -3276,6 +4748,7 @@ with non-synchronized streams or sparse streams.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="prepare_list">
+        <source-position filename="libs/gst/base/gstbasesink.h" line="198"/>
         <return-value transfer-ownership="none">
           <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
@@ -3289,6 +4762,7 @@ with non-synchronized streams or sparse streams.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="preroll">
+        <source-position filename="libs/gst/base/gstbasesink.h" line="201"/>
         <return-value transfer-ownership="none">
           <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
@@ -3302,6 +4776,7 @@ with non-synchronized streams or sparse streams.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="propose_allocation">
+        <source-position filename="libs/gst/base/gstbasesink.h" line="174"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -3315,6 +4790,7 @@ with non-synchronized streams or sparse streams.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="query">
+        <source-position filename="libs/gst/base/gstbasesink.h" line="189"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -3328,6 +4804,7 @@ with non-synchronized streams or sparse streams.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="render">
+        <source-position filename="libs/gst/base/gstbasesink.h" line="202"/>
         <return-value transfer-ownership="none">
           <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
@@ -3341,6 +4818,7 @@ with non-synchronized streams or sparse streams.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="render_list">
+        <source-position filename="libs/gst/base/gstbasesink.h" line="204"/>
         <return-value transfer-ownership="none">
           <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
@@ -3354,6 +4832,7 @@ with non-synchronized streams or sparse streams.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="set_caps">
+        <source-position filename="libs/gst/base/gstbasesink.h" line="162"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -3367,6 +4846,7 @@ with non-synchronized streams or sparse streams.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="start">
+        <source-position filename="libs/gst/base/gstbasesink.h" line="177"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -3377,6 +4857,7 @@ with non-synchronized streams or sparse streams.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="stop">
+        <source-position filename="libs/gst/base/gstbasesink.h" line="178"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -3387,6 +4868,7 @@ with non-synchronized streams or sparse streams.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="unlock">
+        <source-position filename="libs/gst/base/gstbasesink.h" line="182"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -3397,6 +4879,7 @@ with non-synchronized streams or sparse streams.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="unlock_stop">
+        <source-position filename="libs/gst/base/gstbasesink.h" line="186"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -3407,6 +4890,7 @@ with non-synchronized streams or sparse streams.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="wait_event">
+        <source-position filename="libs/gst/base/gstbasesink.h" line="194"/>
         <return-value transfer-ownership="none">
           <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
@@ -3420,38 +4904,54 @@ with non-synchronized streams or sparse streams.</doc>
         </parameters>
       </virtual-method>
       <method name="do_preroll" c:identifier="gst_base_sink_do_preroll">
-        <doc xml:space="preserve">If the @sink spawns its own thread for pulling buffers from upstream it
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasesink.c"
+             line="2450">If the @sink spawns its own thread for pulling buffers from upstream it
 should call this method after it has pulled a buffer. If the element needed
 to preroll, this function will perform the preroll and will then block
 until the element state is changed.
 
 This function should be called with the PREROLL_LOCK held.</doc>
+        <source-position filename="libs/gst/base/gstbasesink.h" line="214"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%GST_FLOW_OK if the preroll completed and processing can
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbasesink.c"
+               line="2462">%GST_FLOW_OK if the preroll completed and processing can
 continue. Any other return value should be returned from the render vmethod.</doc>
           <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
         <parameters>
           <instance-parameter name="sink" transfer-ownership="none">
-            <doc xml:space="preserve">the sink</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesink.c"
+                 line="2452">the sink</doc>
             <type name="BaseSink" c:type="GstBaseSink*"/>
           </instance-parameter>
           <parameter name="obj" transfer-ownership="none">
-            <doc xml:space="preserve">the mini object that caused the preroll</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesink.c"
+                 line="2453">the mini object that caused the preroll</doc>
             <type name="Gst.MiniObject" c:type="GstMiniObject*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_blocksize" c:identifier="gst_base_sink_get_blocksize">
-        <doc xml:space="preserve">Get the number of bytes that the sink will pull when it is operating in pull
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasesink.c"
+             line="1388">Get the number of bytes that the sink will pull when it is operating in pull
 mode.</doc>
+        <source-position filename="libs/gst/base/gstbasesink.h" line="300"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the number of bytes @sink will pull in pull mode.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbasesink.c"
+               line="1395">the number of bytes @sink will pull in pull mode.</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="sink" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBaseSink</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesink.c"
+                 line="1390">a #GstBaseSink</doc>
             <type name="BaseSink" c:type="GstBaseSink*"/>
           </instance-parameter>
         </parameters>
@@ -3459,50 +4959,71 @@ mode.</doc>
       <method name="get_drop_out_of_segment"
               c:identifier="gst_base_sink_get_drop_out_of_segment"
               version="1.12">
-        <doc xml:space="preserve">Checks if @sink is currently configured to drop buffers which are outside
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasesink.c"
+             line="810">Checks if @sink is currently configured to drop buffers which are outside
 the current segment</doc>
+        <source-position filename="libs/gst/base/gstbasesink.h" line="233"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the sink is configured to drop buffers outside the
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbasesink.c"
+               line="817">%TRUE if the sink is configured to drop buffers outside the
 current segment.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="sink" transfer-ownership="none">
-            <doc xml:space="preserve">the sink</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesink.c"
+                 line="812">the sink</doc>
             <type name="BaseSink" c:type="GstBaseSink*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_last_sample"
               c:identifier="gst_base_sink_get_last_sample">
-        <doc xml:space="preserve">Get the last sample that arrived in the sink and was used for preroll or for
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasesink.c"
+             line="1003">Get the last sample that arrived in the sink and was used for preroll or for
 rendering. This property can be used to generate thumbnails.
 
 The #GstCaps on the sample can be used to determine the type of the buffer.
 
 Free-function: gst_sample_unref</doc>
+        <source-position filename="libs/gst/base/gstbasesink.h" line="270"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">a #GstSample. gst_sample_unref() after
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbasesink.c"
+               line="1014">a #GstSample. gst_sample_unref() after
     usage.  This function returns %NULL when no buffer has arrived in the
     sink yet or when the sink is not in PAUSED or PLAYING.</doc>
           <type name="Gst.Sample" c:type="GstSample*"/>
         </return-value>
         <parameters>
           <instance-parameter name="sink" transfer-ownership="none">
-            <doc xml:space="preserve">the sink</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesink.c"
+                 line="1005">the sink</doc>
             <type name="BaseSink" c:type="GstBaseSink*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_latency" c:identifier="gst_base_sink_get_latency">
-        <doc xml:space="preserve">Get the currently configured latency.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The configured latency.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasesink.c"
+             line="1162">Get the currently configured latency.</doc>
+        <source-position filename="libs/gst/base/gstbasesink.h" line="284"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbasesink.c"
+               line="1168">The configured latency.</doc>
           <type name="Gst.ClockTime" c:type="GstClockTime"/>
         </return-value>
         <parameters>
           <instance-parameter name="sink" transfer-ownership="none">
-            <doc xml:space="preserve">the sink</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesink.c"
+                 line="1164">the sink</doc>
             <type name="BaseSink" c:type="GstBaseSink*"/>
           </instance-parameter>
         </parameters>
@@ -3510,31 +5031,45 @@ Free-function: gst_sample_unref</doc>
       <method name="get_max_bitrate"
               c:identifier="gst_base_sink_get_max_bitrate"
               version="1.2">
-        <doc xml:space="preserve">Get the maximum amount of bits per second that the sink will render.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the maximum number of bits per second @sink will render.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasesink.c"
+             line="1475">Get the maximum amount of bits per second that the sink will render.</doc>
+        <source-position filename="libs/gst/base/gstbasesink.h" line="316"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbasesink.c"
+               line="1481">the maximum number of bits per second @sink will render.</doc>
           <type name="guint64" c:type="guint64"/>
         </return-value>
         <parameters>
           <instance-parameter name="sink" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBaseSink</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesink.c"
+                 line="1477">a #GstBaseSink</doc>
             <type name="BaseSink" c:type="GstBaseSink*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_max_lateness"
               c:identifier="gst_base_sink_get_max_lateness">
-        <doc xml:space="preserve">Gets the max lateness value. See gst_base_sink_set_max_lateness() for
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasesink.c"
+             line="856">Gets the max lateness value. See gst_base_sink_set_max_lateness() for
 more details.</doc>
+        <source-position filename="libs/gst/base/gstbasesink.h" line="241"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The maximum time in nanoseconds that a buffer can be late
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbasesink.c"
+               line="863">The maximum time in nanoseconds that a buffer can be late
 before it is dropped and not rendered. A value of -1 means an
 unlimited time.</doc>
           <type name="gint64" c:type="gint64"/>
         </return-value>
         <parameters>
           <instance-parameter name="sink" transfer-ownership="none">
-            <doc xml:space="preserve">the sink</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesink.c"
+                 line="858">the sink</doc>
             <type name="BaseSink" c:type="GstBaseSink*"/>
           </instance-parameter>
         </parameters>
@@ -3542,125 +5077,210 @@ unlimited time.</doc>
       <method name="get_processing_deadline"
               c:identifier="gst_base_sink_get_processing_deadline"
               version="1.16">
-        <doc xml:space="preserve">Get the processing deadline of @sink. see
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasesink.c"
+             line="1534">Get the processing deadline of @sink. see
 gst_base_sink_set_processing_deadline() for more information about
 the processing deadline.</doc>
+        <source-position filename="libs/gst/base/gstbasesink.h" line="323"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the processing deadline</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbasesink.c"
+               line="1542">the processing deadline</doc>
           <type name="Gst.ClockTime" c:type="GstClockTime"/>
         </return-value>
         <parameters>
           <instance-parameter name="sink" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBaseSink</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesink.c"
+                 line="1536">a #GstBaseSink</doc>
             <type name="BaseSink" c:type="GstBaseSink*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_render_delay"
               c:identifier="gst_base_sink_get_render_delay">
-        <doc xml:space="preserve">Get the render delay of @sink. see gst_base_sink_set_render_delay() for more
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasesink.c"
+             line="1345">Get the render delay of @sink. see gst_base_sink_set_render_delay() for more
 information about the render delay.</doc>
+        <source-position filename="libs/gst/base/gstbasesink.h" line="292"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the render delay of @sink.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbasesink.c"
+               line="1352">the render delay of @sink.</doc>
           <type name="Gst.ClockTime" c:type="GstClockTime"/>
         </return-value>
         <parameters>
           <instance-parameter name="sink" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBaseSink</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesink.c"
+                 line="1347">a #GstBaseSink</doc>
+            <type name="BaseSink" c:type="GstBaseSink*"/>
+          </instance-parameter>
+        </parameters>
+      </method>
+      <method name="get_stats"
+              c:identifier="gst_base_sink_get_stats"
+              version="1.18">
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasesink.c"
+             line="5877">Return various #GstBaseSink statistics. This function returns a #GstStructure
+with name `application/x-gst-base-sink-stats` with the following fields:
+
+- "average-rate" G_TYPE_DOUBLE   average frame rate
+- "dropped" G_TYPE_UINT64   Number of dropped frames
+- "rendered" G_TYPE_UINT64   Number of rendered frames</doc>
+        <source-position filename="libs/gst/base/gstbasesink.h" line="333"/>
+        <return-value transfer-ownership="full">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbasesink.c"
+               line="5888">pointer to #GstStructure</doc>
+          <type name="Gst.Structure" c:type="GstStructure*"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="sink" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesink.c"
+                 line="5879">#GstBaseSink</doc>
             <type name="BaseSink" c:type="GstBaseSink*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_sync" c:identifier="gst_base_sink_get_sync">
-        <doc xml:space="preserve">Checks if @sink is currently configured to synchronize against the
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasesink.c"
+             line="766">Checks if @sink is currently configured to synchronize against the
 clock.</doc>
+        <source-position filename="libs/gst/base/gstbasesink.h" line="225"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the sink is configured to synchronize against the clock.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbasesink.c"
+               line="773">%TRUE if the sink is configured to synchronize against the clock.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="sink" transfer-ownership="none">
-            <doc xml:space="preserve">the sink</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesink.c"
+                 line="768">the sink</doc>
             <type name="BaseSink" c:type="GstBaseSink*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_throttle_time"
               c:identifier="gst_base_sink_get_throttle_time">
-        <doc xml:space="preserve">Get the time that will be inserted between frames to control the
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasesink.c"
+             line="1432">Get the time that will be inserted between frames to control the
 maximum buffers per second.</doc>
+        <source-position filename="libs/gst/base/gstbasesink.h" line="308"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the number of nanoseconds @sink will put between frames.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbasesink.c"
+               line="1439">the number of nanoseconds @sink will put between frames.</doc>
           <type name="guint64" c:type="guint64"/>
         </return-value>
         <parameters>
           <instance-parameter name="sink" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBaseSink</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesink.c"
+                 line="1434">a #GstBaseSink</doc>
             <type name="BaseSink" c:type="GstBaseSink*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_ts_offset" c:identifier="gst_base_sink_get_ts_offset">
-        <doc xml:space="preserve">Get the synchronisation offset of @sink.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The synchronisation offset.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasesink.c"
+             line="981">Get the synchronisation offset of @sink.</doc>
+        <source-position filename="libs/gst/base/gstbasesink.h" line="265"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbasesink.c"
+               line="987">The synchronisation offset.</doc>
           <type name="Gst.ClockTimeDiff" c:type="GstClockTimeDiff"/>
         </return-value>
         <parameters>
           <instance-parameter name="sink" transfer-ownership="none">
-            <doc xml:space="preserve">the sink</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesink.c"
+                 line="983">the sink</doc>
             <type name="BaseSink" c:type="GstBaseSink*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="is_async_enabled"
               c:identifier="gst_base_sink_is_async_enabled">
-        <doc xml:space="preserve">Checks if @sink is currently configured to perform asynchronous state
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasesink.c"
+             line="938">Checks if @sink is currently configured to perform asynchronous state
 changes to PAUSED.</doc>
+        <source-position filename="libs/gst/base/gstbasesink.h" line="257"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the sink is configured to perform asynchronous state
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbasesink.c"
+               line="945">%TRUE if the sink is configured to perform asynchronous state
 changes.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="sink" transfer-ownership="none">
-            <doc xml:space="preserve">the sink</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesink.c"
+                 line="940">the sink</doc>
             <type name="BaseSink" c:type="GstBaseSink*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="is_last_sample_enabled"
               c:identifier="gst_base_sink_is_last_sample_enabled">
-        <doc xml:space="preserve">Checks if @sink is currently configured to store the last received sample in
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasesink.c"
+             line="1145">Checks if @sink is currently configured to store the last received sample in
 the last-sample property.</doc>
+        <source-position filename="libs/gst/base/gstbasesink.h" line="276"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the sink is configured to store the last received sample.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbasesink.c"
+               line="1152">%TRUE if the sink is configured to store the last received sample.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="sink" transfer-ownership="none">
-            <doc xml:space="preserve">the sink</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesink.c"
+                 line="1147">the sink</doc>
             <type name="BaseSink" c:type="GstBaseSink*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="is_qos_enabled"
               c:identifier="gst_base_sink_is_qos_enabled">
-        <doc xml:space="preserve">Checks if @sink is currently configured to send Quality-of-Service events
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasesink.c"
+             line="896">Checks if @sink is currently configured to send Quality-of-Service events
 upstream.</doc>
+        <source-position filename="libs/gst/base/gstbasesink.h" line="249"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the sink is configured to perform Quality-of-Service.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbasesink.c"
+               line="903">%TRUE if the sink is configured to perform Quality-of-Service.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="sink" transfer-ownership="none">
-            <doc xml:space="preserve">the sink</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesink.c"
+                 line="898">the sink</doc>
             <type name="BaseSink" c:type="GstBaseSink*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="query_latency" c:identifier="gst_base_sink_query_latency">
-        <doc xml:space="preserve">Query the sink for the latency parameters. The latency will be queried from
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasesink.c"
+             line="1182">Query the sink for the latency parameters. The latency will be queried from
 the upstream elements. @live will be %TRUE if @sink is configured to
 synchronize against the clock. @upstream_live will be %TRUE if an upstream
 element is live.
@@ -3670,13 +5290,18 @@ for the latency introduced by the upstream elements by setting the
 @min_latency to a strictly positive value.
 
 This function is mostly used by subclasses.</doc>
+        <source-position filename="libs/gst/base/gstbasesink.h" line="281"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the query succeeded.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbasesink.c"
+               line="1201">%TRUE if the query succeeded.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="sink" transfer-ownership="none">
-            <doc xml:space="preserve">the sink</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesink.c"
+                 line="1184">the sink</doc>
             <type name="BaseSink" c:type="GstBaseSink*"/>
           </instance-parameter>
           <parameter name="live"
@@ -3685,7 +5310,9 @@ This function is mostly used by subclasses.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">if the sink is live</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesink.c"
+                 line="1185">if the sink is live</doc>
             <type name="gboolean" c:type="gboolean*"/>
           </parameter>
           <parameter name="upstream_live"
@@ -3694,7 +5321,9 @@ This function is mostly used by subclasses.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">if an upstream element is live</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesink.c"
+                 line="1186">if an upstream element is live</doc>
             <type name="gboolean" c:type="gboolean*"/>
           </parameter>
           <parameter name="min_latency"
@@ -3703,7 +5332,9 @@ This function is mostly used by subclasses.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">the min latency of the upstream elements</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesink.c"
+                 line="1187">the min latency of the upstream elements</doc>
             <type name="Gst.ClockTime" c:type="GstClockTime*"/>
           </parameter>
           <parameter name="max_latency"
@@ -3712,44 +5343,60 @@ This function is mostly used by subclasses.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">the max latency of the upstream elements</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesink.c"
+                 line="1188">the max latency of the upstream elements</doc>
             <type name="Gst.ClockTime" c:type="GstClockTime*"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_async_enabled"
               c:identifier="gst_base_sink_set_async_enabled">
-        <doc xml:space="preserve">Configures @sink to perform all state changes asynchronously. When async is
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasesink.c"
+             line="917">Configures @sink to perform all state changes asynchronously. When async is
 disabled, the sink will immediately go to PAUSED instead of waiting for a
 preroll buffer. This feature is useful if the sink does not synchronize
 against the clock or when it is dealing with sparse streams.</doc>
+        <source-position filename="libs/gst/base/gstbasesink.h" line="254"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="sink" transfer-ownership="none">
-            <doc xml:space="preserve">the sink</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesink.c"
+                 line="919">the sink</doc>
             <type name="BaseSink" c:type="GstBaseSink*"/>
           </instance-parameter>
           <parameter name="enabled" transfer-ownership="none">
-            <doc xml:space="preserve">the new async value.</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesink.c"
+                 line="920">the new async value.</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_blocksize" c:identifier="gst_base_sink_set_blocksize">
-        <doc xml:space="preserve">Set the number of bytes that the sink will pull when it is operating in pull
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasesink.c"
+             line="1368">Set the number of bytes that the sink will pull when it is operating in pull
 mode.</doc>
+        <source-position filename="libs/gst/base/gstbasesink.h" line="297"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="sink" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBaseSink</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesink.c"
+                 line="1370">a #GstBaseSink</doc>
             <type name="BaseSink" c:type="GstBaseSink*"/>
           </instance-parameter>
           <parameter name="blocksize" transfer-ownership="none">
-            <doc xml:space="preserve">the blocksize in bytes</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesink.c"
+                 line="1371">the blocksize in bytes</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
@@ -3757,35 +5404,49 @@ mode.</doc>
       <method name="set_drop_out_of_segment"
               c:identifier="gst_base_sink_set_drop_out_of_segment"
               version="1.12">
-        <doc xml:space="preserve">Configure @sink to drop buffers which are outside the current segment</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasesink.c"
+             line="789">Configure @sink to drop buffers which are outside the current segment</doc>
+        <source-position filename="libs/gst/base/gstbasesink.h" line="230"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="sink" transfer-ownership="none">
-            <doc xml:space="preserve">the sink</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesink.c"
+                 line="791">the sink</doc>
             <type name="BaseSink" c:type="GstBaseSink*"/>
           </instance-parameter>
           <parameter name="drop_out_of_segment" transfer-ownership="none">
-            <doc xml:space="preserve">drop buffers outside the segment</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesink.c"
+                 line="792">drop buffers outside the segment</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_last_sample_enabled"
               c:identifier="gst_base_sink_set_last_sample_enabled">
-        <doc xml:space="preserve">Configures @sink to store the last received sample in the last-sample
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasesink.c"
+             line="1122">Configures @sink to store the last received sample in the last-sample
 property.</doc>
+        <source-position filename="libs/gst/base/gstbasesink.h" line="273"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="sink" transfer-ownership="none">
-            <doc xml:space="preserve">the sink</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesink.c"
+                 line="1124">the sink</doc>
             <type name="BaseSink" c:type="GstBaseSink*"/>
           </instance-parameter>
           <parameter name="enabled" transfer-ownership="none">
-            <doc xml:space="preserve">the new enable-last-sample value.</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesink.c"
+                 line="1125">the new enable-last-sample value.</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
@@ -3793,37 +5454,51 @@ property.</doc>
       <method name="set_max_bitrate"
               c:identifier="gst_base_sink_set_max_bitrate"
               version="1.2">
-        <doc xml:space="preserve">Set the maximum amount of bits per second that the sink will render.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasesink.c"
+             line="1455">Set the maximum amount of bits per second that the sink will render.</doc>
+        <source-position filename="libs/gst/base/gstbasesink.h" line="313"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="sink" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBaseSink</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesink.c"
+                 line="1457">a #GstBaseSink</doc>
             <type name="BaseSink" c:type="GstBaseSink*"/>
           </instance-parameter>
           <parameter name="max_bitrate" transfer-ownership="none">
-            <doc xml:space="preserve">the max_bitrate in bits per second</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesink.c"
+                 line="1458">the max_bitrate in bits per second</doc>
             <type name="guint64" c:type="guint64"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_max_lateness"
               c:identifier="gst_base_sink_set_max_lateness">
-        <doc xml:space="preserve">Sets the new max lateness value to @max_lateness. This value is
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasesink.c"
+             line="836">Sets the new max lateness value to @max_lateness. This value is
 used to decide if a buffer should be dropped or not based on the
 buffer timestamp and the current clock time. A value of -1 means
 an unlimited time.</doc>
+        <source-position filename="libs/gst/base/gstbasesink.h" line="238"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="sink" transfer-ownership="none">
-            <doc xml:space="preserve">the sink</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesink.c"
+                 line="838">the sink</doc>
             <type name="BaseSink" c:type="GstBaseSink*"/>
           </instance-parameter>
           <parameter name="max_lateness" transfer-ownership="none">
-            <doc xml:space="preserve">the new max lateness value.</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesink.c"
+                 line="839">the new max lateness value.</doc>
             <type name="gint64" c:type="gint64"/>
           </parameter>
         </parameters>
@@ -3831,45 +5506,61 @@ an unlimited time.</doc>
       <method name="set_processing_deadline"
               c:identifier="gst_base_sink_set_processing_deadline"
               version="1.16">
-        <doc xml:space="preserve">Maximum amount of time (in nanoseconds) that the pipeline can take
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasesink.c"
+             line="1499">Maximum amount of time (in nanoseconds) that the pipeline can take
 for processing the buffer. This is added to the latency of live
 pipelines.
 
 This function is usually called by subclasses.</doc>
+        <source-position filename="libs/gst/base/gstbasesink.h" line="320"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="sink" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBaseSink</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesink.c"
+                 line="1501">a #GstBaseSink</doc>
             <type name="BaseSink" c:type="GstBaseSink*"/>
           </instance-parameter>
           <parameter name="processing_deadline" transfer-ownership="none">
-            <doc xml:space="preserve">the new processing deadline in nanoseconds.</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesink.c"
+                 line="1502">the new processing deadline in nanoseconds.</doc>
             <type name="Gst.ClockTime" c:type="GstClockTime"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_qos_enabled"
               c:identifier="gst_base_sink_set_qos_enabled">
-        <doc xml:space="preserve">Configures @sink to send Quality-of-Service events upstream.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasesink.c"
+             line="881">Configures @sink to send Quality-of-Service events upstream.</doc>
+        <source-position filename="libs/gst/base/gstbasesink.h" line="246"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="sink" transfer-ownership="none">
-            <doc xml:space="preserve">the sink</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesink.c"
+                 line="883">the sink</doc>
             <type name="BaseSink" c:type="GstBaseSink*"/>
           </instance-parameter>
           <parameter name="enabled" transfer-ownership="none">
-            <doc xml:space="preserve">the new qos value.</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesink.c"
+                 line="884">the new qos value.</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_render_delay"
               c:identifier="gst_base_sink_set_render_delay">
-        <doc xml:space="preserve">Set the render delay in @sink to @delay. The render delay is the time
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasesink.c"
+             line="1309">Set the render delay in @sink to @delay. The render delay is the time
 between actual rendering of a buffer and its synchronisation time. Some
 devices might delay media rendering which can be compensated for with this
 function.
@@ -3878,80 +5569,108 @@ After calling this function, this sink will report additional latency and
 other sinks will adjust their latency to delay the rendering of their media.
 
 This function is usually called by subclasses.</doc>
+        <source-position filename="libs/gst/base/gstbasesink.h" line="289"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="sink" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBaseSink</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesink.c"
+                 line="1311">a #GstBaseSink</doc>
             <type name="BaseSink" c:type="GstBaseSink*"/>
           </instance-parameter>
           <parameter name="delay" transfer-ownership="none">
-            <doc xml:space="preserve">the new delay</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesink.c"
+                 line="1312">the new delay</doc>
             <type name="Gst.ClockTime" c:type="GstClockTime"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_sync" c:identifier="gst_base_sink_set_sync">
-        <doc xml:space="preserve">Configures @sink to synchronize on the clock or not. When
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasesink.c"
+             line="745">Configures @sink to synchronize on the clock or not. When
 @sync is %FALSE, incoming samples will be played as fast as
 possible. If @sync is %TRUE, the timestamps of the incoming
 buffers will be used to schedule the exact render time of its
 contents.</doc>
+        <source-position filename="libs/gst/base/gstbasesink.h" line="222"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="sink" transfer-ownership="none">
-            <doc xml:space="preserve">the sink</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesink.c"
+                 line="747">the sink</doc>
             <type name="BaseSink" c:type="GstBaseSink*"/>
           </instance-parameter>
           <parameter name="sync" transfer-ownership="none">
-            <doc xml:space="preserve">the new sync value.</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesink.c"
+                 line="748">the new sync value.</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_throttle_time"
               c:identifier="gst_base_sink_set_throttle_time">
-        <doc xml:space="preserve">Set the time that will be inserted between rendered buffers. This
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasesink.c"
+             line="1412">Set the time that will be inserted between rendered buffers. This
 can be used to control the maximum buffers per second that the sink
 will render.</doc>
+        <source-position filename="libs/gst/base/gstbasesink.h" line="305"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="sink" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBaseSink</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesink.c"
+                 line="1414">a #GstBaseSink</doc>
             <type name="BaseSink" c:type="GstBaseSink*"/>
           </instance-parameter>
           <parameter name="throttle" transfer-ownership="none">
-            <doc xml:space="preserve">the throttle time in nanoseconds</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesink.c"
+                 line="1415">the throttle time in nanoseconds</doc>
             <type name="guint64" c:type="guint64"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_ts_offset" c:identifier="gst_base_sink_set_ts_offset">
-        <doc xml:space="preserve">Adjust the synchronisation of @sink with @offset. A negative value will
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasesink.c"
+             line="960">Adjust the synchronisation of @sink with @offset. A negative value will
 render buffers earlier than their timestamp. A positive value will delay
 rendering. This function can be used to fix playback of badly timestamped
 buffers.</doc>
+        <source-position filename="libs/gst/base/gstbasesink.h" line="262"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="sink" transfer-ownership="none">
-            <doc xml:space="preserve">the sink</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesink.c"
+                 line="962">the sink</doc>
             <type name="BaseSink" c:type="GstBaseSink*"/>
           </instance-parameter>
           <parameter name="offset" transfer-ownership="none">
-            <doc xml:space="preserve">the new offset</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesink.c"
+                 line="963">the new offset</doc>
             <type name="Gst.ClockTimeDiff" c:type="GstClockTimeDiff"/>
           </parameter>
         </parameters>
       </method>
       <method name="wait" c:identifier="gst_base_sink_wait">
-        <doc xml:space="preserve">This function will wait for preroll to complete and will then block until @time
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasesink.c"
+             line="2552">This function will wait for preroll to complete and will then block until @time
 is reached. It is usually called by subclasses that use their own internal
 synchronisation but want to let some synchronization (like EOS) be handled
 by the base class.
@@ -3962,17 +5681,24 @@ receiving an EOS event in the ::event vmethod or when handling buffers in
 
 The @time argument should be the running_time of when the timeout should happen
 and will be adjusted with any latency and offset configured in the sink.</doc>
+        <source-position filename="libs/gst/base/gstbasesink.h" line="329"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">#GstFlowReturn</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbasesink.c"
+               line="2570">#GstFlowReturn</doc>
           <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
         <parameters>
           <instance-parameter name="sink" transfer-ownership="none">
-            <doc xml:space="preserve">the sink</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesink.c"
+                 line="2554">the sink</doc>
             <type name="BaseSink" c:type="GstBaseSink*"/>
           </instance-parameter>
           <parameter name="time" transfer-ownership="none">
-            <doc xml:space="preserve">the running_time to be reached</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesink.c"
+                 line="2555">the running_time to be reached</doc>
             <type name="Gst.ClockTime" c:type="GstClockTime"/>
           </parameter>
           <parameter name="jitter"
@@ -3981,13 +5707,17 @@ and will be adjusted with any latency and offset configured in the sink.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">the jitter to be filled with time diff, or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesink.c"
+                 line="2556">the jitter to be filled with time diff, or %NULL</doc>
             <type name="Gst.ClockTimeDiff" c:type="GstClockTimeDiff*"/>
           </parameter>
         </parameters>
       </method>
       <method name="wait_clock" c:identifier="gst_base_sink_wait_clock">
-        <doc xml:space="preserve">This function will block until @time is reached. It is usually called by
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasesink.c"
+             line="2294">This function will block until @time is reached. It is usually called by
 subclasses that use their own internal synchronisation.
 
 If @time is not valid, no synchronisation is done and %GST_CLOCK_BADTIME is
@@ -4002,17 +5732,24 @@ the #GstBaseSinkClass.render() vmethod.
 The @time argument should be the running_time of when this method should
 return and is not adjusted with any latency or offset configured in the
 sink.</doc>
+        <source-position filename="libs/gst/base/gstbasesink.h" line="326"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">#GstClockReturn</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbasesink.c"
+               line="2316">#GstClockReturn</doc>
           <type name="Gst.ClockReturn" c:type="GstClockReturn"/>
         </return-value>
         <parameters>
           <instance-parameter name="sink" transfer-ownership="none">
-            <doc xml:space="preserve">the sink</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesink.c"
+                 line="2296">the sink</doc>
             <type name="BaseSink" c:type="GstBaseSink*"/>
           </instance-parameter>
           <parameter name="time" transfer-ownership="none">
-            <doc xml:space="preserve">the running_time to be reached</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesink.c"
+                 line="2297">the running_time to be reached</doc>
             <type name="Gst.ClockTime" c:type="GstClockTime"/>
           </parameter>
           <parameter name="jitter"
@@ -4021,13 +5758,17 @@ sink.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">the jitter to be filled with time diff, or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesink.c"
+                 line="2298">the jitter to be filled with time diff, or %NULL</doc>
             <type name="Gst.ClockTimeDiff" c:type="GstClockTimeDiff*"/>
           </parameter>
         </parameters>
       </method>
       <method name="wait_preroll" c:identifier="gst_base_sink_wait_preroll">
-        <doc xml:space="preserve">If the #GstBaseSinkClass.render() method performs its own synchronisation
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasesink.c"
+             line="2394">If the #GstBaseSinkClass.render() method performs its own synchronisation
 against the clock it must unblock when going from PLAYING to the PAUSED state
 and call this method before continuing to render the remaining data.
 
@@ -4045,40 +5786,53 @@ returns %GST_FLOW_FLUSHING).
 
 This function should only be called with the PREROLL_LOCK held, like in the
 render function.</doc>
+        <source-position filename="libs/gst/base/gstbasesink.h" line="217"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%GST_FLOW_OK if the preroll completed and processing can
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbasesink.c"
+               line="2417">%GST_FLOW_OK if the preroll completed and processing can
 continue. Any other return value should be returned from the render vmethod.</doc>
           <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
         <parameters>
           <instance-parameter name="sink" transfer-ownership="none">
-            <doc xml:space="preserve">the sink</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesink.c"
+                 line="2396">the sink</doc>
             <type name="BaseSink" c:type="GstBaseSink*"/>
           </instance-parameter>
         </parameters>
       </method>
       <property name="async" writable="1" transfer-ownership="none">
-        <doc xml:space="preserve">If set to %TRUE, the basesink will perform asynchronous state changes.
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasesink.c"
+             line="467">If set to %TRUE, the basesink will perform asynchronous state changes.
 When set to %FALSE, the sink will not signal the parent when it prerolls.
 Use this option when dealing with sparse streams or when synchronisation is
 not required.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </property>
       <property name="blocksize" writable="1" transfer-ownership="none">
-        <doc xml:space="preserve">The amount of bytes to pull when operating in pull mode.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasesink.c"
+             line="515">The amount of bytes to pull when operating in pull mode.</doc>
         <type name="guint" c:type="guint"/>
       </property>
       <property name="enable-last-sample"
                 writable="1"
                 transfer-ownership="none">
-        <doc xml:space="preserve">Enable the last-sample property. If %FALSE, basesink doesn't keep a
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasesink.c"
+             line="491">Enable the last-sample property. If %FALSE, basesink doesn't keep a
 reference to the last buffer arrived and the last-sample property is always
 set to %NULL. This can be useful if you need buffers to be released as soon
 as possible, eg. if you're using a buffer pool.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </property>
       <property name="last-sample" transfer-ownership="none">
-        <doc xml:space="preserve">The last buffer that arrived in the sink and was used for preroll or for
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasesink.c"
+             line="504">The last buffer that arrived in the sink and was used for preroll or for
 rendering. This property can be used to generate thumbnails. This property
 can be %NULL when the sink has not yet received a buffer.</doc>
         <type name="Gst.Sample"/>
@@ -4087,7 +5841,9 @@ can be %NULL when the sink has not yet received a buffer.</doc>
                 version="1.2"
                 writable="1"
                 transfer-ownership="none">
-        <doc xml:space="preserve">Control the maximum amount of bits that will be rendered per second.
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasesink.c"
+             line="548">Control the maximum amount of bits that will be rendered per second.
 Setting this property to a value bigger than 0 will make the sink delay
 rendering of the buffers when it would exceed to max-bitrate.</doc>
         <type name="guint64" c:type="guint64"/>
@@ -4099,7 +5855,9 @@ rendering of the buffers when it would exceed to max-bitrate.</doc>
                 version="1.16"
                 writable="1"
                 transfer-ownership="none">
-        <doc xml:space="preserve">Maximum amount of time (in nanoseconds) that the pipeline can take
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasesink.c"
+             line="562">Maximum amount of time (in nanoseconds) that the pipeline can take
 for processing the buffer. This is added to the latency of live
 pipelines.</doc>
         <type name="guint64" c:type="guint64"/>
@@ -4108,22 +5866,39 @@ pipelines.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </property>
       <property name="render-delay" writable="1" transfer-ownership="none">
-        <doc xml:space="preserve">The additional delay between synchronisation and actual rendering of the
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasesink.c"
+             line="525">The additional delay between synchronisation and actual rendering of the
 media. This property will add additional latency to the device in order to
 make other sinks compensate for the delay.</doc>
         <type name="guint64" c:type="guint64"/>
       </property>
+      <property name="stats" version="1.18" transfer-ownership="none">
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasesink.c"
+             line="578">Various #GstBaseSink statistics. This property returns a #GstStructure
+with name `application/x-gst-base-sink-stats` with the following fields:
+
+- "average-rate"  G_TYPE_DOUBLE   average frame rate
+- "dropped" G_TYPE_UINT64   Number of dropped frames
+- "rendered" G_TYPE_UINT64   Number of rendered frames</doc>
+        <type name="Gst.Structure"/>
+      </property>
       <property name="sync" writable="1" transfer-ownership="none">
         <type name="gboolean" c:type="gboolean"/>
       </property>
       <property name="throttle-time" writable="1" transfer-ownership="none">
-        <doc xml:space="preserve">The time to insert between buffers. This property can be used to control
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasesink.c"
+             line="536">The time to insert between buffers. This property can be used to control
 the maximum amount of buffers per second to render. Setting this property
 to a value bigger than 0 will make the sink create THROTTLE QoS events.</doc>
         <type name="guint64" c:type="guint64"/>
       </property>
       <property name="ts-offset" writable="1" transfer-ownership="none">
-        <doc xml:space="preserve">Controls the final synchronisation, a negative value will render the buffer
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasesink.c"
+             line="479">Controls the final synchronisation, a negative value will render the buffer
 earlier while a positive value delays playback. This property can be
 used to fix synchronisation in bad files.</doc>
         <type name="gint64" c:type="gint64"/>
@@ -4189,7 +5964,7 @@ used to fix synchronisation in bad files.</doc>
         <type name="BaseSinkPrivate" c:type="GstBaseSinkPrivate*"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="20">
+        <array zero-terminated="0" fixed-size="20">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -4197,15 +5972,21 @@ used to fix synchronisation in bad files.</doc>
     <record name="BaseSinkClass"
             c:type="GstBaseSinkClass"
             glib:is-gtype-struct-for="BaseSink">
-      <doc xml:space="preserve">Subclasses can override any of the available virtual methods or not, as
+      <doc xml:space="preserve"
+           filename="libs/gst/base/gstbasesink.h"
+           line="108">Subclasses can override any of the available virtual methods or not, as
 needed. At the minimum, the @render method should be overridden to
 output/present buffers.</doc>
+      <source-position filename="libs/gst/base/gstbasesink.h" line="208"/>
       <field name="parent_class">
-        <doc xml:space="preserve">Element parent class</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasesink.h"
+             line="110">Element parent class</doc>
         <type name="Gst.ElementClass" c:type="GstElementClass"/>
       </field>
       <field name="get_caps">
         <callback name="get_caps">
+          <source-position filename="libs/gst/base/gstbasesink.h" line="160"/>
           <return-value transfer-ownership="full">
             <type name="Gst.Caps" c:type="GstCaps*"/>
           </return-value>
@@ -4221,6 +6002,7 @@ output/present buffers.</doc>
       </field>
       <field name="set_caps">
         <callback name="set_caps">
+          <source-position filename="libs/gst/base/gstbasesink.h" line="162"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -4236,6 +6018,7 @@ output/present buffers.</doc>
       </field>
       <field name="fixate">
         <callback name="fixate">
+          <source-position filename="libs/gst/base/gstbasesink.h" line="165"/>
           <return-value transfer-ownership="full">
             <type name="Gst.Caps" c:type="GstCaps*"/>
           </return-value>
@@ -4251,6 +6034,7 @@ output/present buffers.</doc>
       </field>
       <field name="activate_pull">
         <callback name="activate_pull">
+          <source-position filename="libs/gst/base/gstbasesink.h" line="167"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -4266,6 +6050,7 @@ output/present buffers.</doc>
       </field>
       <field name="get_times">
         <callback name="get_times">
+          <source-position filename="libs/gst/base/gstbasesink.h" line="170"/>
           <return-value transfer-ownership="none">
             <type name="none" c:type="void"/>
           </return-value>
@@ -4287,6 +6072,7 @@ output/present buffers.</doc>
       </field>
       <field name="propose_allocation">
         <callback name="propose_allocation">
+          <source-position filename="libs/gst/base/gstbasesink.h" line="174"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -4302,6 +6088,7 @@ output/present buffers.</doc>
       </field>
       <field name="start">
         <callback name="start">
+          <source-position filename="libs/gst/base/gstbasesink.h" line="177"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -4314,6 +6101,7 @@ output/present buffers.</doc>
       </field>
       <field name="stop">
         <callback name="stop">
+          <source-position filename="libs/gst/base/gstbasesink.h" line="178"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -4326,6 +6114,7 @@ output/present buffers.</doc>
       </field>
       <field name="unlock">
         <callback name="unlock">
+          <source-position filename="libs/gst/base/gstbasesink.h" line="182"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -4338,6 +6127,7 @@ output/present buffers.</doc>
       </field>
       <field name="unlock_stop">
         <callback name="unlock_stop">
+          <source-position filename="libs/gst/base/gstbasesink.h" line="186"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -4350,6 +6140,7 @@ output/present buffers.</doc>
       </field>
       <field name="query">
         <callback name="query">
+          <source-position filename="libs/gst/base/gstbasesink.h" line="189"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -4365,6 +6156,7 @@ output/present buffers.</doc>
       </field>
       <field name="event">
         <callback name="event">
+          <source-position filename="libs/gst/base/gstbasesink.h" line="192"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -4380,6 +6172,7 @@ output/present buffers.</doc>
       </field>
       <field name="wait_event">
         <callback name="wait_event">
+          <source-position filename="libs/gst/base/gstbasesink.h" line="194"/>
           <return-value transfer-ownership="none">
             <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
           </return-value>
@@ -4395,6 +6188,7 @@ output/present buffers.</doc>
       </field>
       <field name="prepare">
         <callback name="prepare">
+          <source-position filename="libs/gst/base/gstbasesink.h" line="197"/>
           <return-value transfer-ownership="none">
             <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
           </return-value>
@@ -4410,6 +6204,7 @@ output/present buffers.</doc>
       </field>
       <field name="prepare_list">
         <callback name="prepare_list">
+          <source-position filename="libs/gst/base/gstbasesink.h" line="198"/>
           <return-value transfer-ownership="none">
             <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
           </return-value>
@@ -4425,6 +6220,7 @@ output/present buffers.</doc>
       </field>
       <field name="preroll">
         <callback name="preroll">
+          <source-position filename="libs/gst/base/gstbasesink.h" line="201"/>
           <return-value transfer-ownership="none">
             <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
           </return-value>
@@ -4440,6 +6236,7 @@ output/present buffers.</doc>
       </field>
       <field name="render">
         <callback name="render">
+          <source-position filename="libs/gst/base/gstbasesink.h" line="202"/>
           <return-value transfer-ownership="none">
             <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
           </return-value>
@@ -4455,6 +6252,7 @@ output/present buffers.</doc>
       </field>
       <field name="render_list">
         <callback name="render_list">
+          <source-position filename="libs/gst/base/gstbasesink.h" line="204"/>
           <return-value transfer-ownership="none">
             <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
           </return-value>
@@ -4469,12 +6267,13 @@ output/present buffers.</doc>
         </callback>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="20">
+        <array zero-terminated="0" fixed-size="20">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
     </record>
     <record name="BaseSinkPrivate" c:type="GstBaseSinkPrivate" disguised="1">
+      <source-position filename="libs/gst/base/gstbasesink.h" line="63"/>
     </record>
     <class name="BaseSrc"
            c:symbol-prefix="base_src"
@@ -4484,7 +6283,9 @@ output/present buffers.</doc>
            glib:type-name="GstBaseSrc"
            glib:get-type="gst_base_src_get_type"
            glib:type-struct="BaseSrcClass">
-      <doc xml:space="preserve">This is a generic base class for source elements. The following
+      <doc xml:space="preserve"
+           filename="libs/gst/base/gstbasesrc.c"
+           line="23">This is a generic base class for source elements. The following
 types of sources are supported:
 
   * random access sources like files
@@ -4596,7 +6397,9 @@ with the gst_element_send_event() function on the element or its parent bin.
 After the EOS has been sent to the element, the application should wait for
 an EOS message to be posted on the pipeline's bus. Once this EOS message is
 received, it may safely shut down the entire pipeline.</doc>
+      <source-position filename="libs/gst/base/gstbasesrc.h" line="254"/>
       <virtual-method name="alloc">
+        <source-position filename="libs/gst/base/gstbasesrc.h" line="246"/>
         <return-value transfer-ownership="none">
           <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
@@ -4616,8 +6419,11 @@ received, it may safely shut down the entire pipeline.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="create">
-        <doc xml:space="preserve">Ask the subclass to create a buffer with @offset and @size, the default
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasesrc.h"
+             line="235">Ask the subclass to create a buffer with @offset and @size, the default
 implementation will call alloc and fill.</doc>
+        <source-position filename="libs/gst/base/gstbasesrc.h" line="242"/>
         <return-value transfer-ownership="none">
           <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
@@ -4640,6 +6446,7 @@ implementation will call alloc and fill.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="decide_allocation">
+        <source-position filename="libs/gst/base/gstbasesrc.h" line="192"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -4653,6 +6460,7 @@ implementation will call alloc and fill.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="do_seek">
+        <source-position filename="libs/gst/base/gstbasesrc.h" line="221"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -4666,6 +6474,7 @@ implementation will call alloc and fill.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="event">
+        <source-position filename="libs/gst/base/gstbasesrc.h" line="233"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -4679,6 +6488,7 @@ implementation will call alloc and fill.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="fill">
+        <source-position filename="libs/gst/base/gstbasesrc.h" line="249"/>
         <return-value transfer-ownership="none">
           <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
@@ -4698,6 +6508,7 @@ implementation will call alloc and fill.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="fixate">
+        <source-position filename="libs/gst/base/gstbasesrc.h" line="187"/>
         <return-value transfer-ownership="full">
           <type name="Gst.Caps" c:type="GstCaps*"/>
         </return-value>
@@ -4711,6 +6522,10 @@ implementation will call alloc and fill.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="get_caps">
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasesrc.h"
+             line="177">Called to get the caps to report.</doc>
+        <source-position filename="libs/gst/base/gstbasesrc.h" line="183"/>
         <return-value transfer-ownership="full">
           <type name="Gst.Caps" c:type="GstCaps*"/>
         </return-value>
@@ -4718,12 +6533,16 @@ implementation will call alloc and fill.</doc>
           <instance-parameter name="src" transfer-ownership="none">
             <type name="BaseSrc" c:type="GstBaseSrc*"/>
           </instance-parameter>
-          <parameter name="filter" transfer-ownership="none">
+          <parameter name="filter"
+                     transfer-ownership="none"
+                     nullable="1"
+                     allow-none="1">
             <type name="Gst.Caps" c:type="GstCaps*"/>
           </parameter>
         </parameters>
       </virtual-method>
       <virtual-method name="get_size">
+        <source-position filename="libs/gst/base/gstbasesrc.h" line="211"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -4737,8 +6556,11 @@ implementation will call alloc and fill.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="get_times">
-        <doc xml:space="preserve">Given @buffer, return @start and @end time when it should be pushed
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasesrc.h"
+             line="198">Given @buffer, return @start and @end time when it should be pushed
 out. The base class will sync on the clock using these times.</doc>
+        <source-position filename="libs/gst/base/gstbasesrc.h" line="206"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
@@ -4764,6 +6586,7 @@ out. The base class will sync on the clock using these times.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="is_seekable">
+        <source-position filename="libs/gst/base/gstbasesrc.h" line="214"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -4773,17 +6596,34 @@ out. The base class will sync on the clock using these times.</doc>
           </instance-parameter>
         </parameters>
       </virtual-method>
-      <virtual-method name="negotiate">
-        <return-value transfer-ownership="none">
+      <virtual-method name="negotiate" invoker="negotiate" version="1.18">
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasesrc.c"
+             line="3402">Negotiates src pad caps with downstream elements.
+Unmarks GST_PAD_FLAG_NEED_RECONFIGURE in any case. But marks it again
+if #GstBaseSrcClass.negotiate() fails.
+
+Do not call this in the #GstBaseSrcClass.fill() vmethod. Call this in
+#GstBaseSrcClass.create() or in #GstBaseSrcClass.alloc(), _before_ any
+buffer is allocated.</doc>
+        <source-position filename="libs/gst/base/gstbasesrc.h" line="185"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbasesrc.c"
+               line="3414">%TRUE if the negotiation succeeded, else %FALSE.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="src" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesrc.c"
+                 line="3404">base source instance</doc>
             <type name="BaseSrc" c:type="GstBaseSrc*"/>
           </instance-parameter>
         </parameters>
       </virtual-method>
       <virtual-method name="prepare_seek_segment">
+        <source-position filename="libs/gst/base/gstbasesrc.h" line="218"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -4800,6 +6640,7 @@ out. The base class will sync on the clock using these times.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="query">
+        <source-position filename="libs/gst/base/gstbasesrc.h" line="230"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -4813,23 +6654,33 @@ out. The base class will sync on the clock using these times.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="set_caps" invoker="set_caps">
-        <doc xml:space="preserve">Set new caps on the basesrc source pad.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the caps could be set</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasesrc.c"
+             line="924">Set new caps on the basesrc source pad.</doc>
+        <source-position filename="libs/gst/base/gstbasesrc.h" line="189"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbasesrc.c"
+               line="931">%TRUE if the caps could be set</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="src" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBaseSrc</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesrc.c"
+                 line="926">a #GstBaseSrc</doc>
             <type name="BaseSrc" c:type="GstBaseSrc*"/>
           </instance-parameter>
           <parameter name="caps" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstCaps</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesrc.c"
+                 line="927">a #GstCaps</doc>
             <type name="Gst.Caps" c:type="GstCaps*"/>
           </parameter>
         </parameters>
       </virtual-method>
       <virtual-method name="start">
+        <source-position filename="libs/gst/base/gstbasesrc.h" line="195"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -4840,6 +6691,7 @@ out. The base class will sync on the clock using these times.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="stop">
+        <source-position filename="libs/gst/base/gstbasesrc.h" line="196"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -4850,6 +6702,7 @@ out. The base class will sync on the clock using these times.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="unlock">
+        <source-position filename="libs/gst/base/gstbasesrc.h" line="225"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -4860,6 +6713,7 @@ out. The base class will sync on the clock using these times.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="unlock_stop">
+        <source-position filename="libs/gst/base/gstbasesrc.h" line="227"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -4870,16 +6724,21 @@ out. The base class will sync on the clock using these times.</doc>
         </parameters>
       </virtual-method>
       <method name="get_allocator" c:identifier="gst_base_src_get_allocator">
-        <doc xml:space="preserve">Lets #GstBaseSrc sub-classes to know the memory @allocator
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasesrc.c"
+             line="4018">Lets #GstBaseSrc sub-classes to know the memory @allocator
 used by the base class and its @params.
 
 Unref the @allocator after usage.</doc>
+        <source-position filename="libs/gst/base/gstbasesrc.h" line="318"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="src" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBaseSrc</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesrc.c"
+                 line="4020">a #GstBaseSrc</doc>
             <type name="BaseSrc" c:type="GstBaseSrc*"/>
           </instance-parameter>
           <parameter name="allocator"
@@ -4888,7 +6747,9 @@ Unref the @allocator after usage.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">the #GstAllocator
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesrc.c"
+                 line="4021">the #GstAllocator
 used</doc>
             <type name="Gst.Allocator" c:type="GstAllocator**"/>
           </parameter>
@@ -4898,124 +6759,207 @@ used</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">the
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesrc.c"
+                 line="4023">the
 #GstAllocationParams of @allocator</doc>
             <type name="Gst.AllocationParams" c:type="GstAllocationParams*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_blocksize" c:identifier="gst_base_src_get_blocksize">
-        <doc xml:space="preserve">Get the number of bytes that @src will push out with each buffer.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the number of bytes pushed with each buffer.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasesrc.c"
+             line="785">Get the number of bytes that @src will push out with each buffer.</doc>
+        <source-position filename="libs/gst/base/gstbasesrc.h" line="300"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbasesrc.c"
+               line="791">the number of bytes pushed with each buffer.</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="src" transfer-ownership="none">
-            <doc xml:space="preserve">the source</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesrc.c"
+                 line="787">the source</doc>
             <type name="BaseSrc" c:type="GstBaseSrc*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_buffer_pool"
               c:identifier="gst_base_src_get_buffer_pool">
+        <source-position filename="libs/gst/base/gstbasesrc.h" line="315"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the instance of the #GstBufferPool used
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbasesrc.c"
+               line="4000">the instance of the #GstBufferPool used
 by the src; unref it after usage.</doc>
           <type name="Gst.BufferPool" c:type="GstBufferPool*"/>
         </return-value>
         <parameters>
           <instance-parameter name="src" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBaseSrc</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesrc.c"
+                 line="3998">a #GstBaseSrc</doc>
             <type name="BaseSrc" c:type="GstBaseSrc*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_do_timestamp"
               c:identifier="gst_base_src_get_do_timestamp">
-        <doc xml:space="preserve">Query if @src timestamps outgoing buffers based on the current running_time.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the base class will automatically timestamp outgoing buffers.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasesrc.c"
+             line="829">Query if @src timestamps outgoing buffers based on the current running_time.</doc>
+        <source-position filename="libs/gst/base/gstbasesrc.h" line="306"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbasesrc.c"
+               line="835">%TRUE if the base class will automatically timestamp outgoing buffers.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="src" transfer-ownership="none">
-            <doc xml:space="preserve">the source</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesrc.c"
+                 line="831">the source</doc>
             <type name="BaseSrc" c:type="GstBaseSrc*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="is_async" c:identifier="gst_base_src_is_async">
-        <doc xml:space="preserve">Get the current async behaviour of @src. See also gst_base_src_set_async().</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if @src is operating in async mode.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasesrc.c"
+             line="695">Get the current async behaviour of @src. See also gst_base_src_set_async().</doc>
+        <source-position filename="libs/gst/base/gstbasesrc.h" line="281"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbasesrc.c"
+               line="701">%TRUE if @src is operating in async mode.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="src" transfer-ownership="none">
-            <doc xml:space="preserve">base source instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesrc.c"
+                 line="697">base source instance</doc>
             <type name="BaseSrc" c:type="GstBaseSrc*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="is_live" c:identifier="gst_base_src_is_live">
-        <doc xml:space="preserve">Check if an element is in live mode.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasesrc.c"
+             line="586">Check if an element is in live mode.</doc>
+        <source-position filename="libs/gst/base/gstbasesrc.h" line="266"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbasesrc.c"
+               line="592">%TRUE if element is in live mode.</doc>
+          <type name="gboolean" c:type="gboolean"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="src" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesrc.c"
+                 line="588">base source instance</doc>
+            <type name="BaseSrc" c:type="GstBaseSrc*"/>
+          </instance-parameter>
+        </parameters>
+      </method>
+      <method name="negotiate"
+              c:identifier="gst_base_src_negotiate"
+              version="1.18">
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasesrc.c"
+             line="3402">Negotiates src pad caps with downstream elements.
+Unmarks GST_PAD_FLAG_NEED_RECONFIGURE in any case. But marks it again
+if #GstBaseSrcClass.negotiate() fails.
+
+Do not call this in the #GstBaseSrcClass.fill() vmethod. Call this in
+#GstBaseSrcClass.create() or in #GstBaseSrcClass.alloc(), _before_ any
+buffer is allocated.</doc>
+        <source-position filename="libs/gst/base/gstbasesrc.h" line="284"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if element is in live mode.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbasesrc.c"
+               line="3414">%TRUE if the negotiation succeeded, else %FALSE.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="src" transfer-ownership="none">
-            <doc xml:space="preserve">base source instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesrc.c"
+                 line="3404">base source instance</doc>
             <type name="BaseSrc" c:type="GstBaseSrc*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="new_seamless_segment"
               c:identifier="gst_base_src_new_seamless_segment">
-        <doc xml:space="preserve">Prepare a new seamless segment for emission downstream. This function must
-only be called by derived sub-classes, and only from the create() function,
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasesrc.c"
+             line="851">Prepare a new seamless segment for emission downstream. This function must
+only be called by derived sub-classes, and only from the #GstBaseSrcClass::create function,
 as the stream-lock needs to be held.
 
 The format for the new segment will be the current format of the source, as
 configured with gst_base_src_set_format()</doc>
+        <source-position filename="libs/gst/base/gstbasesrc.h" line="309"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if preparation of the seamless segment succeeded.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbasesrc.c"
+               line="865">%TRUE if preparation of the seamless segment succeeded.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="src" transfer-ownership="none">
-            <doc xml:space="preserve">The source</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesrc.c"
+                 line="853">The source</doc>
             <type name="BaseSrc" c:type="GstBaseSrc*"/>
           </instance-parameter>
           <parameter name="start" transfer-ownership="none">
-            <doc xml:space="preserve">The new start value for the segment</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesrc.c"
+                 line="854">The new start value for the segment</doc>
             <type name="gint64" c:type="gint64"/>
           </parameter>
           <parameter name="stop" transfer-ownership="none">
-            <doc xml:space="preserve">Stop value for the new segment</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesrc.c"
+                 line="855">Stop value for the new segment</doc>
             <type name="gint64" c:type="gint64"/>
           </parameter>
           <parameter name="time" transfer-ownership="none">
-            <doc xml:space="preserve">The new time value for the start of the new segment</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesrc.c"
+                 line="856">The new time value for the start of the new segment</doc>
             <type name="gint64" c:type="gint64"/>
           </parameter>
         </parameters>
       </method>
       <method name="query_latency" c:identifier="gst_base_src_query_latency">
-        <doc xml:space="preserve">Query the source for the latency parameters. @live will be %TRUE when @src is
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasesrc.c"
+             line="718">Query the source for the latency parameters. @live will be %TRUE when @src is
 configured as a live source. @min_latency and @max_latency will be set
 to the difference between the running time and the timestamp of the first
 buffer.
 
 This function is mostly used by subclasses.</doc>
+        <source-position filename="libs/gst/base/gstbasesrc.h" line="293"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the query succeeded.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbasesrc.c"
+               line="732">%TRUE if the query succeeded.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="src" transfer-ownership="none">
-            <doc xml:space="preserve">the source</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesrc.c"
+                 line="720">the source</doc>
             <type name="BaseSrc" c:type="GstBaseSrc*"/>
           </instance-parameter>
           <parameter name="live"
@@ -5024,7 +6968,9 @@ This function is mostly used by subclasses.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">if the source is live</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesrc.c"
+                 line="721">if the source is live</doc>
             <type name="gboolean" c:type="gboolean*"/>
           </parameter>
           <parameter name="min_latency"
@@ -5033,7 +6979,9 @@ This function is mostly used by subclasses.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">the min latency of the source</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesrc.c"
+                 line="722">the min latency of the source</doc>
             <type name="Gst.ClockTime" c:type="GstClockTime*"/>
           </parameter>
           <parameter name="max_latency"
@@ -5042,26 +6990,35 @@ This function is mostly used by subclasses.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">the max latency of the source</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesrc.c"
+                 line="723">the max latency of the source</doc>
             <type name="Gst.ClockTime" c:type="GstClockTime*"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_async" c:identifier="gst_base_src_set_async">
-        <doc xml:space="preserve">Configure async behaviour in @src, no state change will block. The open,
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasesrc.c"
+             line="675">Configure async behaviour in @src, no state change will block. The open,
 close, start, stop, play and pause virtual methods will be executed in a
 different thread and are thus allowed to perform blocking operations. Any
 blocking operation should be unblocked with the unlock vmethod.</doc>
+        <source-position filename="libs/gst/base/gstbasesrc.h" line="278"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="src" transfer-ownership="none">
-            <doc xml:space="preserve">base source instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesrc.c"
+                 line="677">base source instance</doc>
             <type name="BaseSrc" c:type="GstBaseSrc*"/>
           </instance-parameter>
           <parameter name="async" transfer-ownership="none">
-            <doc xml:space="preserve">new async mode</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesrc.c"
+                 line="678">new async mode</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
@@ -5069,7 +7026,9 @@ blocking operation should be unblocked with the unlock vmethod.</doc>
       <method name="set_automatic_eos"
               c:identifier="gst_base_src_set_automatic_eos"
               version="1.4">
-        <doc xml:space="preserve">If @automatic_eos is %TRUE, @src will automatically go EOS if a buffer
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasesrc.c"
+             line="649">If @automatic_eos is %TRUE, @src will automatically go EOS if a buffer
 after the total size is returned. By default this is %TRUE but sources
 that can't return an authoritative size and only know that they're EOS
 when trying to read more should set this to %FALSE.
@@ -5077,118 +7036,162 @@ when trying to read more should set this to %FALSE.
 When @src operates in %GST_FORMAT_TIME, #GstBaseSrc will send an EOS
 when a buffer outside of the currently configured segment is pushed if
 @automatic_eos is %TRUE. Since 1.16, if @automatic_eos is %FALSE an
-EOS will be pushed only when the #GstBaseSrc.create implementation
+EOS will be pushed only when the #GstBaseSrcClass.create() implementation
 returns %GST_FLOW_EOS.</doc>
+        <source-position filename="libs/gst/base/gstbasesrc.h" line="275"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="src" transfer-ownership="none">
-            <doc xml:space="preserve">base source instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesrc.c"
+                 line="651">base source instance</doc>
             <type name="BaseSrc" c:type="GstBaseSrc*"/>
           </instance-parameter>
           <parameter name="automatic_eos" transfer-ownership="none">
-            <doc xml:space="preserve">automatic eos</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesrc.c"
+                 line="652">automatic eos</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_blocksize" c:identifier="gst_base_src_set_blocksize">
-        <doc xml:space="preserve">Set the number of bytes that @src will push out with each buffer. When
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasesrc.c"
+             line="767">Set the number of bytes that @src will push out with each buffer. When
 @blocksize is set to -1, a default length will be used.</doc>
+        <source-position filename="libs/gst/base/gstbasesrc.h" line="297"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="src" transfer-ownership="none">
-            <doc xml:space="preserve">the source</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesrc.c"
+                 line="769">the source</doc>
             <type name="BaseSrc" c:type="GstBaseSrc*"/>
           </instance-parameter>
           <parameter name="blocksize" transfer-ownership="none">
-            <doc xml:space="preserve">the new blocksize in bytes</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesrc.c"
+                 line="770">the new blocksize in bytes</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_caps" c:identifier="gst_base_src_set_caps">
-        <doc xml:space="preserve">Set new caps on the basesrc source pad.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the caps could be set</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasesrc.c"
+             line="924">Set new caps on the basesrc source pad.</doc>
+        <source-position filename="libs/gst/base/gstbasesrc.h" line="312"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbasesrc.c"
+               line="931">%TRUE if the caps could be set</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="src" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBaseSrc</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesrc.c"
+                 line="926">a #GstBaseSrc</doc>
             <type name="BaseSrc" c:type="GstBaseSrc*"/>
           </instance-parameter>
           <parameter name="caps" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstCaps</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesrc.c"
+                 line="927">a #GstCaps</doc>
             <type name="Gst.Caps" c:type="GstCaps*"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_do_timestamp"
               c:identifier="gst_base_src_set_do_timestamp">
-        <doc xml:space="preserve">Configure @src to automatically timestamp outgoing buffers based on the
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasesrc.c"
+             line="808">Configure @src to automatically timestamp outgoing buffers based on the
 current running_time of the pipeline. This property is mostly useful for live
 sources.</doc>
+        <source-position filename="libs/gst/base/gstbasesrc.h" line="303"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="src" transfer-ownership="none">
-            <doc xml:space="preserve">the source</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesrc.c"
+                 line="810">the source</doc>
             <type name="BaseSrc" c:type="GstBaseSrc*"/>
           </instance-parameter>
           <parameter name="timestamp" transfer-ownership="none">
-            <doc xml:space="preserve">enable or disable timestamping</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesrc.c"
+                 line="811">enable or disable timestamping</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_dynamic_size"
               c:identifier="gst_base_src_set_dynamic_size">
-        <doc xml:space="preserve">If not @dynamic, size is only updated when needed, such as when trying to
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasesrc.c"
+             line="632">If not @dynamic, size is only updated when needed, such as when trying to
 read past current tracked size.  Otherwise, size is checked for upon each
 read.</doc>
+        <source-position filename="libs/gst/base/gstbasesrc.h" line="272"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="src" transfer-ownership="none">
-            <doc xml:space="preserve">base source instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesrc.c"
+                 line="634">base source instance</doc>
             <type name="BaseSrc" c:type="GstBaseSrc*"/>
           </instance-parameter>
           <parameter name="dynamic" transfer-ownership="none">
-            <doc xml:space="preserve">new dynamic size mode</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesrc.c"
+                 line="635">new dynamic size mode</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_format" c:identifier="gst_base_src_set_format">
-        <doc xml:space="preserve">Sets the default format of the source. This will be the format used
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasesrc.c"
+             line="608">Sets the default format of the source. This will be the format used
 for sending SEGMENT events and for performing seeks.
 
 If a format of GST_FORMAT_BYTES is set, the element will be able to
 operate in pull mode if the #GstBaseSrcClass.is_seekable() returns %TRUE.
 
 This function must only be called in states &lt; %GST_STATE_PAUSED.</doc>
+        <source-position filename="libs/gst/base/gstbasesrc.h" line="269"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="src" transfer-ownership="none">
-            <doc xml:space="preserve">base source instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesrc.c"
+                 line="610">base source instance</doc>
             <type name="BaseSrc" c:type="GstBaseSrc*"/>
           </instance-parameter>
           <parameter name="format" transfer-ownership="none">
-            <doc xml:space="preserve">the format to use</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesrc.c"
+                 line="611">the format to use</doc>
             <type name="Gst.Format" c:type="GstFormat"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_live" c:identifier="gst_base_src_set_live">
-        <doc xml:space="preserve">If the element listens to a live source, @live should
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasesrc.c"
+             line="562">If the element listens to a live source, @live should
 be set to %TRUE.
 
 A live source will not produce data in the PAUSED state and
@@ -5196,48 +7199,67 @@ will therefore not be able to participate in the PREROLL phase
 of a pipeline. To signal this fact to the application and the
 pipeline, the state change return value of the live source will
 be GST_STATE_CHANGE_NO_PREROLL.</doc>
+        <source-position filename="libs/gst/base/gstbasesrc.h" line="263"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="src" transfer-ownership="none">
-            <doc xml:space="preserve">base source instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesrc.c"
+                 line="564">base source instance</doc>
             <type name="BaseSrc" c:type="GstBaseSrc*"/>
           </instance-parameter>
           <parameter name="live" transfer-ownership="none">
-            <doc xml:space="preserve">new live-mode</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesrc.c"
+                 line="565">new live-mode</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </method>
       <method name="start_complete" c:identifier="gst_base_src_start_complete">
-        <doc xml:space="preserve">Complete an asynchronous start operation. When the subclass overrides the
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasesrc.c"
+             line="3506">Complete an asynchronous start operation. When the subclass overrides the
 start method, it should call gst_base_src_start_complete() when the start
 operation completes either from the same thread or from an asynchronous
 helper thread.</doc>
+        <source-position filename="libs/gst/base/gstbasesrc.h" line="287"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="basesrc" transfer-ownership="none">
-            <doc xml:space="preserve">base source instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesrc.c"
+                 line="3508">base source instance</doc>
             <type name="BaseSrc" c:type="GstBaseSrc*"/>
           </instance-parameter>
           <parameter name="ret" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstFlowReturn</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesrc.c"
+                 line="3509">a #GstFlowReturn</doc>
             <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
           </parameter>
         </parameters>
       </method>
       <method name="start_wait" c:identifier="gst_base_src_start_wait">
-        <doc xml:space="preserve">Wait until the start operation completes.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstFlowReturn.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasesrc.c"
+             line="3646">Wait until the start operation completes.</doc>
+        <source-position filename="libs/gst/base/gstbasesrc.h" line="290"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbasesrc.c"
+               line="3652">a #GstFlowReturn.</doc>
           <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
         <parameters>
           <instance-parameter name="basesrc" transfer-ownership="none">
-            <doc xml:space="preserve">base source instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesrc.c"
+                 line="3648">base source instance</doc>
             <type name="BaseSrc" c:type="GstBaseSrc*"/>
           </instance-parameter>
         </parameters>
@@ -5245,7 +7267,9 @@ helper thread.</doc>
       <method name="submit_buffer_list"
               c:identifier="gst_base_src_submit_buffer_list"
               version="1.14">
-        <doc xml:space="preserve">Subclasses can call this from their create virtual method implementation
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasesrc.c"
+             line="4047">Subclasses can call this from their create virtual method implementation
 to submit a buffer list to be pushed out later. This is useful in
 cases where the create function wants to produce multiple buffers to be
 pushed out in one go in form of a #GstBufferList, which can reduce overhead
@@ -5261,22 +7285,29 @@ function the behaviour is undefined.
 Subclasses must only call this function once per create function call and
 subclasses must only call this function when the source operates in push
 mode.</doc>
+        <source-position filename="libs/gst/base/gstbasesrc.h" line="323"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="src" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBaseSrc</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesrc.c"
+                 line="4049">a #GstBaseSrc</doc>
             <type name="BaseSrc" c:type="GstBaseSrc*"/>
           </instance-parameter>
           <parameter name="buffer_list" transfer-ownership="full">
-            <doc xml:space="preserve">a #GstBufferList</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesrc.c"
+                 line="4050">a #GstBufferList</doc>
             <type name="Gst.BufferList" c:type="GstBufferList*"/>
           </parameter>
         </parameters>
       </method>
       <method name="wait_playing" c:identifier="gst_base_src_wait_playing">
-        <doc xml:space="preserve">If the #GstBaseSrcClass.create() method performs its own synchronisation
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasesrc.c"
+             line="532">If the #GstBaseSrcClass.create() method performs its own synchronisation
 against the clock it must unblock when going from PLAYING to the PAUSED state
 and call this method before continuing to produce the remaining data.
 
@@ -5284,14 +7315,19 @@ This function will block until a state change to PLAYING happens (in which
 case this function returns %GST_FLOW_OK) or the processing must be stopped due
 to a state change to READY or a FLUSH event (in which case this function
 returns %GST_FLOW_FLUSHING).</doc>
+        <source-position filename="libs/gst/base/gstbasesrc.h" line="260"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%GST_FLOW_OK if @src is PLAYING and processing can
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbasesrc.c"
+               line="545">%GST_FLOW_OK if @src is PLAYING and processing can
 continue. Any other return value should be returned from the create vmethod.</doc>
           <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
         <parameters>
           <instance-parameter name="src" transfer-ownership="none">
-            <doc xml:space="preserve">the src</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesrc.c"
+                 line="534">the src</doc>
             <type name="BaseSrc" c:type="GstBaseSrc*"/>
           </instance-parameter>
         </parameters>
@@ -5363,7 +7399,7 @@ continue. Any other return value should be returned from the create vmethod.</do
         <type name="BaseSrcPrivate" c:type="GstBaseSrcPrivate*"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="20">
+        <array zero-terminated="0" fixed-size="20">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -5371,15 +7407,21 @@ continue. Any other return value should be returned from the create vmethod.</do
     <record name="BaseSrcClass"
             c:type="GstBaseSrcClass"
             glib:is-gtype-struct-for="BaseSrc">
-      <doc xml:space="preserve">Subclasses can override any of the available virtual methods or not, as
+      <doc xml:space="preserve"
+           filename="libs/gst/base/gstbasesrc.h"
+           line="117">Subclasses can override any of the available virtual methods or not, as
 needed. At the minimum, the @create method should be overridden to produce
 buffers.</doc>
+      <source-position filename="libs/gst/base/gstbasesrc.h" line="254"/>
       <field name="parent_class">
-        <doc xml:space="preserve">Element parent class</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasesrc.h"
+             line="119">Element parent class</doc>
         <type name="Gst.ElementClass" c:type="GstElementClass"/>
       </field>
       <field name="get_caps">
         <callback name="get_caps">
+          <source-position filename="libs/gst/base/gstbasesrc.h" line="183"/>
           <return-value transfer-ownership="full">
             <type name="Gst.Caps" c:type="GstCaps*"/>
           </return-value>
@@ -5387,7 +7429,10 @@ buffers.</doc>
             <parameter name="src" transfer-ownership="none">
               <type name="BaseSrc" c:type="GstBaseSrc*"/>
             </parameter>
-            <parameter name="filter" transfer-ownership="none">
+            <parameter name="filter"
+                       transfer-ownership="none"
+                       nullable="1"
+                       allow-none="1">
               <type name="Gst.Caps" c:type="GstCaps*"/>
             </parameter>
           </parameters>
@@ -5395,11 +7440,18 @@ buffers.</doc>
       </field>
       <field name="negotiate">
         <callback name="negotiate">
+          <source-position filename="libs/gst/base/gstbasesrc.h" line="185"/>
           <return-value transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesrc.c"
+                 line="3414">%TRUE if the negotiation succeeded, else %FALSE.</doc>
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
           <parameters>
             <parameter name="src" transfer-ownership="none">
+              <doc xml:space="preserve"
+                   filename="libs/gst/base/gstbasesrc.c"
+                   line="3404">base source instance</doc>
               <type name="BaseSrc" c:type="GstBaseSrc*"/>
             </parameter>
           </parameters>
@@ -5407,6 +7459,7 @@ buffers.</doc>
       </field>
       <field name="fixate">
         <callback name="fixate">
+          <source-position filename="libs/gst/base/gstbasesrc.h" line="187"/>
           <return-value transfer-ownership="full">
             <type name="Gst.Caps" c:type="GstCaps*"/>
           </return-value>
@@ -5422,17 +7475,24 @@ buffers.</doc>
       </field>
       <field name="set_caps">
         <callback name="set_caps">
+          <source-position filename="libs/gst/base/gstbasesrc.h" line="189"/>
           <return-value transfer-ownership="none">
-            <doc xml:space="preserve">%TRUE if the caps could be set</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasesrc.c"
+                 line="931">%TRUE if the caps could be set</doc>
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
           <parameters>
             <parameter name="src" transfer-ownership="none">
-              <doc xml:space="preserve">a #GstBaseSrc</doc>
+              <doc xml:space="preserve"
+                   filename="libs/gst/base/gstbasesrc.c"
+                   line="926">a #GstBaseSrc</doc>
               <type name="BaseSrc" c:type="GstBaseSrc*"/>
             </parameter>
             <parameter name="caps" transfer-ownership="none">
-              <doc xml:space="preserve">a #GstCaps</doc>
+              <doc xml:space="preserve"
+                   filename="libs/gst/base/gstbasesrc.c"
+                   line="927">a #GstCaps</doc>
               <type name="Gst.Caps" c:type="GstCaps*"/>
             </parameter>
           </parameters>
@@ -5440,6 +7500,7 @@ buffers.</doc>
       </field>
       <field name="decide_allocation">
         <callback name="decide_allocation">
+          <source-position filename="libs/gst/base/gstbasesrc.h" line="192"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -5455,6 +7516,7 @@ buffers.</doc>
       </field>
       <field name="start">
         <callback name="start">
+          <source-position filename="libs/gst/base/gstbasesrc.h" line="195"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -5467,6 +7529,7 @@ buffers.</doc>
       </field>
       <field name="stop">
         <callback name="stop">
+          <source-position filename="libs/gst/base/gstbasesrc.h" line="196"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -5479,6 +7542,7 @@ buffers.</doc>
       </field>
       <field name="get_times">
         <callback name="get_times">
+          <source-position filename="libs/gst/base/gstbasesrc.h" line="206"/>
           <return-value transfer-ownership="none">
             <type name="none" c:type="void"/>
           </return-value>
@@ -5506,6 +7570,7 @@ buffers.</doc>
       </field>
       <field name="get_size">
         <callback name="get_size">
+          <source-position filename="libs/gst/base/gstbasesrc.h" line="211"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -5521,6 +7586,7 @@ buffers.</doc>
       </field>
       <field name="is_seekable">
         <callback name="is_seekable">
+          <source-position filename="libs/gst/base/gstbasesrc.h" line="214"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -5533,6 +7599,7 @@ buffers.</doc>
       </field>
       <field name="prepare_seek_segment">
         <callback name="prepare_seek_segment">
+          <source-position filename="libs/gst/base/gstbasesrc.h" line="218"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -5551,6 +7618,7 @@ buffers.</doc>
       </field>
       <field name="do_seek">
         <callback name="do_seek">
+          <source-position filename="libs/gst/base/gstbasesrc.h" line="221"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -5566,6 +7634,7 @@ buffers.</doc>
       </field>
       <field name="unlock">
         <callback name="unlock">
+          <source-position filename="libs/gst/base/gstbasesrc.h" line="225"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -5578,6 +7647,7 @@ buffers.</doc>
       </field>
       <field name="unlock_stop">
         <callback name="unlock_stop">
+          <source-position filename="libs/gst/base/gstbasesrc.h" line="227"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -5590,6 +7660,7 @@ buffers.</doc>
       </field>
       <field name="query">
         <callback name="query">
+          <source-position filename="libs/gst/base/gstbasesrc.h" line="230"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -5605,6 +7676,7 @@ buffers.</doc>
       </field>
       <field name="event">
         <callback name="event">
+          <source-position filename="libs/gst/base/gstbasesrc.h" line="233"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -5620,6 +7692,7 @@ buffers.</doc>
       </field>
       <field name="create">
         <callback name="create">
+          <source-position filename="libs/gst/base/gstbasesrc.h" line="242"/>
           <return-value transfer-ownership="none">
             <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
           </return-value>
@@ -5644,6 +7717,7 @@ buffers.</doc>
       </field>
       <field name="alloc">
         <callback name="alloc">
+          <source-position filename="libs/gst/base/gstbasesrc.h" line="246"/>
           <return-value transfer-ownership="none">
             <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
           </return-value>
@@ -5665,6 +7739,7 @@ buffers.</doc>
       </field>
       <field name="fill">
         <callback name="fill">
+          <source-position filename="libs/gst/base/gstbasesrc.h" line="249"/>
           <return-value transfer-ownership="none">
             <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
           </return-value>
@@ -5685,30 +7760,40 @@ buffers.</doc>
         </callback>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="20">
+        <array zero-terminated="0" fixed-size="20">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
     </record>
     <bitfield name="BaseSrcFlags" c:type="GstBaseSrcFlags">
-      <doc xml:space="preserve">The #GstElement flags that a basesrc element may have.</doc>
+      <doc xml:space="preserve"
+           filename="libs/gst/base/gstbasesrc.h"
+           line="40">The #GstElement flags that a basesrc element may have.</doc>
+      <source-position filename="libs/gst/base/gstbasesrc.h" line="53"/>
       <member name="starting"
               value="16384"
               c:identifier="GST_BASE_SRC_FLAG_STARTING">
-        <doc xml:space="preserve">has source is starting</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasesrc.h"
+             line="42">has source is starting</doc>
       </member>
       <member name="started"
               value="32768"
               c:identifier="GST_BASE_SRC_FLAG_STARTED">
-        <doc xml:space="preserve">has source been started</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasesrc.h"
+             line="43">has source been started</doc>
       </member>
       <member name="last"
               value="1048576"
               c:identifier="GST_BASE_SRC_FLAG_LAST">
-        <doc xml:space="preserve">offset to define more flags</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasesrc.h"
+             line="44">offset to define more flags</doc>
       </member>
     </bitfield>
     <record name="BaseSrcPrivate" c:type="GstBaseSrcPrivate" disguised="1">
+      <source-position filename="libs/gst/base/gstbasesrc.h" line="60"/>
     </record>
     <class name="BaseTransform"
            c:symbol-prefix="base_transform"
@@ -5718,7 +7803,9 @@ buffers.</doc>
            glib:type-name="GstBaseTransform"
            glib:get-type="gst_base_transform_get_type"
            glib:type-struct="BaseTransformClass">
-      <doc xml:space="preserve">This base class is for filter elements that process data. Elements
+      <doc xml:space="preserve"
+           filename="libs/gst/base/gstbasetransform.c"
+           line="24">This base class is for filter elements that process data. Elements
 that are suitable for implementation using #GstBaseTransform are ones
 where the size and caps of the output is known entirely from the input
 caps and buffer sizes. These include elements that directly transform
@@ -5822,7 +7909,10 @@ It provides for:
 
   * Implied %TRUE if no transform function is implemented.
   * Implied %FALSE if ONLY transform function is implemented.</doc>
+      <source-position filename="libs/gst/base/gstbasetransform.h" line="302"/>
       <virtual-method name="accept_caps">
+        <source-position filename="libs/gst/base/gstbasetransform.h"
+                         line="232"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -5839,6 +7929,8 @@ It provides for:
         </parameters>
       </virtual-method>
       <virtual-method name="before_transform">
+        <source-position filename="libs/gst/base/gstbasetransform.h"
+                         line="285"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
@@ -5852,6 +7944,8 @@ It provides for:
         </parameters>
       </virtual-method>
       <virtual-method name="copy_metadata">
+        <source-position filename="libs/gst/base/gstbasetransform.h"
+                         line="280"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -5868,6 +7962,8 @@ It provides for:
         </parameters>
       </virtual-method>
       <virtual-method name="decide_allocation">
+        <source-position filename="libs/gst/base/gstbasetransform.h"
+                         line="240"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -5881,6 +7977,8 @@ It provides for:
         </parameters>
       </virtual-method>
       <virtual-method name="filter_meta">
+        <source-position filename="libs/gst/base/gstbasetransform.h"
+                         line="241"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -5900,6 +7998,8 @@ It provides for:
         </parameters>
       </virtual-method>
       <virtual-method name="fixate_caps">
+        <source-position filename="libs/gst/base/gstbasetransform.h"
+                         line="229"/>
         <return-value transfer-ownership="full">
           <type name="Gst.Caps" c:type="GstCaps*"/>
         </return-value>
@@ -5919,6 +8019,8 @@ It provides for:
         </parameters>
       </virtual-method>
       <virtual-method name="generate_output">
+        <source-position filename="libs/gst/base/gstbasetransform.h"
+                         line="298"/>
         <return-value transfer-ownership="none">
           <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
@@ -5935,6 +8037,8 @@ It provides for:
         </parameters>
       </virtual-method>
       <virtual-method name="get_unit_size">
+        <source-position filename="libs/gst/base/gstbasetransform.h"
+                         line="261"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -5954,6 +8058,8 @@ It provides for:
         </parameters>
       </virtual-method>
       <virtual-method name="prepare_output_buffer">
+        <source-position filename="libs/gst/base/gstbasetransform.h"
+                         line="276"/>
         <return-value transfer-ownership="none">
           <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
@@ -5973,6 +8079,8 @@ It provides for:
         </parameters>
       </virtual-method>
       <virtual-method name="propose_allocation">
+        <source-position filename="libs/gst/base/gstbasetransform.h"
+                         line="245"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -5989,6 +8097,8 @@ It provides for:
         </parameters>
       </virtual-method>
       <virtual-method name="query">
+        <source-position filename="libs/gst/base/gstbasetransform.h"
+                         line="236"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -6005,6 +8115,8 @@ It provides for:
         </parameters>
       </virtual-method>
       <virtual-method name="set_caps">
+        <source-position filename="libs/gst/base/gstbasetransform.h"
+                         line="234"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -6021,6 +8133,8 @@ It provides for:
         </parameters>
       </virtual-method>
       <virtual-method name="sink_event">
+        <source-position filename="libs/gst/base/gstbasetransform.h"
+                         line="269"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -6034,6 +8148,8 @@ It provides for:
         </parameters>
       </virtual-method>
       <virtual-method name="src_event">
+        <source-position filename="libs/gst/base/gstbasetransform.h"
+                         line="270"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -6047,6 +8163,8 @@ It provides for:
         </parameters>
       </virtual-method>
       <virtual-method name="start">
+        <source-position filename="libs/gst/base/gstbasetransform.h"
+                         line="265"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -6057,6 +8175,8 @@ It provides for:
         </parameters>
       </virtual-method>
       <virtual-method name="stop">
+        <source-position filename="libs/gst/base/gstbasetransform.h"
+                         line="266"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -6067,6 +8187,8 @@ It provides for:
         </parameters>
       </virtual-method>
       <virtual-method name="submit_input_buffer">
+        <source-position filename="libs/gst/base/gstbasetransform.h"
+                         line="292"/>
         <return-value transfer-ownership="none">
           <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
@@ -6083,6 +8205,8 @@ It provides for:
         </parameters>
       </virtual-method>
       <virtual-method name="transform">
+        <source-position filename="libs/gst/base/gstbasetransform.h"
+                         line="288"/>
         <return-value transfer-ownership="none">
           <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
@@ -6099,6 +8223,8 @@ It provides for:
         </parameters>
       </virtual-method>
       <virtual-method name="transform_caps">
+        <source-position filename="libs/gst/base/gstbasetransform.h"
+                         line="226"/>
         <return-value transfer-ownership="full">
           <type name="Gst.Caps" c:type="GstCaps*"/>
         </return-value>
@@ -6118,6 +8244,8 @@ It provides for:
         </parameters>
       </virtual-method>
       <virtual-method name="transform_ip">
+        <source-position filename="libs/gst/base/gstbasetransform.h"
+                         line="290"/>
         <return-value transfer-ownership="none">
           <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
@@ -6131,6 +8259,8 @@ It provides for:
         </parameters>
       </virtual-method>
       <virtual-method name="transform_meta">
+        <source-position filename="libs/gst/base/gstbasetransform.h"
+                         line="282"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -6150,6 +8280,8 @@ It provides for:
         </parameters>
       </virtual-method>
       <virtual-method name="transform_size">
+        <source-position filename="libs/gst/base/gstbasetransform.h"
+                         line="252"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -6179,16 +8311,22 @@ It provides for:
       </virtual-method>
       <method name="get_allocator"
               c:identifier="gst_base_transform_get_allocator">
-        <doc xml:space="preserve">Lets #GstBaseTransform sub-classes to know the memory @allocator
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasetransform.c"
+             line="2859">Lets #GstBaseTransform sub-classes know the memory @allocator
 used by the base class and its @params.
 
-Unref the @allocator after use it.</doc>
+Unref the @allocator after use.</doc>
+        <source-position filename="libs/gst/base/gstbasetransform.h"
+                         line="340"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="trans" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBaseTransform</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasetransform.c"
+                 line="2861">a #GstBaseTransform</doc>
             <type name="BaseTransform" c:type="GstBaseTransform*"/>
           </instance-parameter>
           <parameter name="allocator"
@@ -6197,7 +8335,9 @@ Unref the @allocator after use it.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">the #GstAllocator
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasetransform.c"
+                 line="2862">the #GstAllocator
 used</doc>
             <type name="Gst.Allocator" c:type="GstAllocator**"/>
           </parameter>
@@ -6207,7 +8347,9 @@ used</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">the
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasetransform.c"
+                 line="2864">the
 #GstAllocationParams of @allocator</doc>
             <type name="Gst.AllocationParams" c:type="GstAllocationParams*"/>
           </parameter>
@@ -6215,98 +8357,178 @@ used</doc>
       </method>
       <method name="get_buffer_pool"
               c:identifier="gst_base_transform_get_buffer_pool">
+        <source-position filename="libs/gst/base/gstbasetransform.h"
+                         line="337"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the instance of the #GstBufferPool used
-by @trans; free it after use it</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbasetransform.c"
+               line="2845">the instance of the #GstBufferPool used
+by @trans; free it after use</doc>
           <type name="Gst.BufferPool" c:type="GstBufferPool*"/>
         </return-value>
         <parameters>
           <instance-parameter name="trans" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBaseTransform</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasetransform.c"
+                 line="2843">a #GstBaseTransform</doc>
             <type name="BaseTransform" c:type="GstBaseTransform*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="is_in_place" c:identifier="gst_base_transform_is_in_place">
-        <doc xml:space="preserve">See if @trans is configured as a in_place transform.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasetransform.c"
+             line="2651">See if @trans is configured as a in_place transform.</doc>
+        <source-position filename="libs/gst/base/gstbasetransform.h"
+                         line="317"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE is the transform is configured in in_place mode.
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbasetransform.c"
+               line="2657">%TRUE if the transform is configured in in_place mode.
 
 MT safe.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="trans" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstBaseTransform to query</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasetransform.c"
+                 line="2653">the #GstBaseTransform to query</doc>
             <type name="BaseTransform" c:type="GstBaseTransform*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="is_passthrough"
               c:identifier="gst_base_transform_is_passthrough">
-        <doc xml:space="preserve">See if @trans is configured as a passthrough transform.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasetransform.c"
+             line="2587">See if @trans is configured as a passthrough transform.</doc>
+        <source-position filename="libs/gst/base/gstbasetransform.h"
+                         line="311"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE is the transform is configured in passthrough mode.
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbasetransform.c"
+               line="2593">%TRUE if the transform is configured in passthrough mode.
 
 MT safe.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="trans" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstBaseTransform to query</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasetransform.c"
+                 line="2589">the #GstBaseTransform to query</doc>
             <type name="BaseTransform" c:type="GstBaseTransform*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="is_qos_enabled"
               c:identifier="gst_base_transform_is_qos_enabled">
-        <doc xml:space="preserve">Queries if the transform will handle QoS.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasetransform.c"
+             line="2726">Queries if the transform will handle QoS.</doc>
+        <source-position filename="libs/gst/base/gstbasetransform.h"
+                         line="328"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if QoS is enabled.
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbasetransform.c"
+               line="2732">%TRUE if QoS is enabled.
 
 MT safe.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="trans" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBaseTransform</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasetransform.c"
+                 line="2728">a #GstBaseTransform</doc>
+            <type name="BaseTransform" c:type="GstBaseTransform*"/>
+          </instance-parameter>
+        </parameters>
+      </method>
+      <method name="reconfigure"
+              c:identifier="gst_base_transform_reconfigure"
+              version="1.18">
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasetransform.c"
+             line="1442">Negotiates src pad caps with downstream elements if the source pad is
+marked as needing reconfiguring. Unmarks GST_PAD_FLAG_NEED_RECONFIGURE in
+any case. But marks it again if negotiation fails.
+
+Do not call this in the #GstBaseTransformClass.transform() or
+#GstBaseTransformClass.transform_ip() vmethod. Call this in
+#GstBaseTransformClass.submit_input_buffer(),
+#GstBaseTransformClass.prepare_output_buffer() or in
+#GstBaseTransformClass.generate_output() _before_ any output buffer is
+allocated.
+
+It will be default be called when handling an ALLOCATION query or at the
+very beginning of the default #GstBaseTransformClass.submit_input_buffer()
+implementation.</doc>
+        <source-position filename="libs/gst/base/gstbasetransform.h"
+                         line="354"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbasetransform.c"
+               line="1461">%TRUE if the negotiation succeeded, else %FALSE.</doc>
+          <type name="gboolean" c:type="gboolean"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="trans" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasetransform.c"
+                 line="1444">the #GstBaseTransform to set</doc>
             <type name="BaseTransform" c:type="GstBaseTransform*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="reconfigure_sink"
               c:identifier="gst_base_transform_reconfigure_sink">
-        <doc xml:space="preserve">Instructs @trans to request renegotiation upstream. This function is
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasetransform.c"
+             line="2806">Instructs @trans to request renegotiation upstream. This function is
 typically called after properties on the transform were set that
 influence the input format.</doc>
+        <source-position filename="libs/gst/base/gstbasetransform.h"
+                         line="344"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="trans" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBaseTransform</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasetransform.c"
+                 line="2808">a #GstBaseTransform</doc>
             <type name="BaseTransform" c:type="GstBaseTransform*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="reconfigure_src"
               c:identifier="gst_base_transform_reconfigure_src">
-        <doc xml:space="preserve">Instructs @trans to renegotiate a new downstream transform on the next
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasetransform.c"
+             line="2825">Instructs @trans to renegotiate a new downstream transform on the next
 buffer. This function is typically called after properties on the transform
 were set that influence the output format.</doc>
+        <source-position filename="libs/gst/base/gstbasetransform.h"
+                         line="347"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="trans" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBaseTransform</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasetransform.c"
+                 line="2827">a #GstBaseTransform</doc>
             <type name="BaseTransform" c:type="GstBaseTransform*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="set_gap_aware"
               c:identifier="gst_base_transform_set_gap_aware">
-        <doc xml:space="preserve">If @gap_aware is %FALSE (the default), output buffers will have the
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasetransform.c"
+             line="2750">If @gap_aware is %FALSE (the default), output buffers will have the
 %GST_BUFFER_FLAG_GAP flag unset.
 
 If set to %TRUE, the element must handle output buffers with this flag set
@@ -6314,39 +8536,53 @@ correctly, i.e. it can assume that the buffer contains neutral data but must
 unset the flag if the output is no neutral data.
 
 MT safe.</doc>
+        <source-position filename="libs/gst/base/gstbasetransform.h"
+                         line="331"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="trans" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBaseTransform</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasetransform.c"
+                 line="2752">a #GstBaseTransform</doc>
             <type name="BaseTransform" c:type="GstBaseTransform*"/>
           </instance-parameter>
           <parameter name="gap_aware" transfer-ownership="none">
-            <doc xml:space="preserve">New state</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasetransform.c"
+                 line="2753">New state</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_in_place"
               c:identifier="gst_base_transform_set_in_place">
-        <doc xml:space="preserve">Determines whether a non-writable buffer will be copied before passing
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasetransform.c"
+             line="2611">Determines whether a non-writable buffer will be copied before passing
 to the transform_ip function.
 
   * Always %TRUE if no transform function is implemented.
   * Always %FALSE if ONLY transform function is implemented.
 
 MT safe.</doc>
+        <source-position filename="libs/gst/base/gstbasetransform.h"
+                         line="314"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="trans" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstBaseTransform to modify</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasetransform.c"
+                 line="2613">the #GstBaseTransform to modify</doc>
             <type name="BaseTransform" c:type="GstBaseTransform*"/>
           </instance-parameter>
           <parameter name="in_place" transfer-ownership="none">
-            <doc xml:space="preserve">Boolean value indicating that we would like to operate
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasetransform.c"
+                 line="2614">Boolean value indicating that we would like to operate
 on in_place buffers.</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
@@ -6354,23 +8590,31 @@ on in_place buffers.</doc>
       </method>
       <method name="set_passthrough"
               c:identifier="gst_base_transform_set_passthrough">
-        <doc xml:space="preserve">Set passthrough mode for this filter by default. This is mostly
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasetransform.c"
+             line="2551">Set passthrough mode for this filter by default. This is mostly
 useful for filters that do not care about negotiation.
 
 Always %TRUE for filters which don't implement either a transform
-or transform_ip method.
+or transform_ip or generate_output method.
 
 MT safe.</doc>
+        <source-position filename="libs/gst/base/gstbasetransform.h"
+                         line="308"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="trans" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstBaseTransform to set</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasetransform.c"
+                 line="2553">the #GstBaseTransform to set</doc>
             <type name="BaseTransform" c:type="GstBaseTransform*"/>
           </instance-parameter>
           <parameter name="passthrough" transfer-ownership="none">
-            <doc xml:space="preserve">boolean indicating passthrough mode.</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasetransform.c"
+                 line="2554">boolean indicating passthrough mode.</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
@@ -6378,7 +8622,9 @@ MT safe.</doc>
       <method name="set_prefer_passthrough"
               c:identifier="gst_base_transform_set_prefer_passthrough"
               version="1.0.1">
-        <doc xml:space="preserve">If @prefer_passthrough is %TRUE (the default), @trans will check and
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasetransform.c"
+             line="2775">If @prefer_passthrough is %TRUE (the default), @trans will check and
 prefer passthrough caps from the list of caps returned by the
 transform_caps vmethod.
 
@@ -6389,63 +8635,89 @@ passthrough transforms but prefer to do something else, like a
 capsfilter.
 
 MT safe.</doc>
+        <source-position filename="libs/gst/base/gstbasetransform.h"
+                         line="334"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="trans" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBaseTransform</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasetransform.c"
+                 line="2777">a #GstBaseTransform</doc>
             <type name="BaseTransform" c:type="GstBaseTransform*"/>
           </instance-parameter>
           <parameter name="prefer_passthrough" transfer-ownership="none">
-            <doc xml:space="preserve">New state</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasetransform.c"
+                 line="2778">New state</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_qos_enabled"
               c:identifier="gst_base_transform_set_qos_enabled">
-        <doc xml:space="preserve">Enable or disable QoS handling in the transform.
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasetransform.c"
+             line="2705">Enable or disable QoS handling in the transform.
 
 MT safe.</doc>
+        <source-position filename="libs/gst/base/gstbasetransform.h"
+                         line="325"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="trans" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBaseTransform</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasetransform.c"
+                 line="2707">a #GstBaseTransform</doc>
             <type name="BaseTransform" c:type="GstBaseTransform*"/>
           </instance-parameter>
           <parameter name="enabled" transfer-ownership="none">
-            <doc xml:space="preserve">new state</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasetransform.c"
+                 line="2708">new state</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </method>
       <method name="update_qos" c:identifier="gst_base_transform_update_qos">
-        <doc xml:space="preserve">Set the QoS parameters in the transform. This function is called internally
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasetransform.c"
+             line="2675">Set the QoS parameters in the transform. This function is called internally
 when a QOS event is received but subclasses can provide custom information
 when needed.
 
 MT safe.</doc>
+        <source-position filename="libs/gst/base/gstbasetransform.h"
+                         line="320"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="trans" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBaseTransform</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasetransform.c"
+                 line="2677">a #GstBaseTransform</doc>
             <type name="BaseTransform" c:type="GstBaseTransform*"/>
           </instance-parameter>
           <parameter name="proportion" transfer-ownership="none">
-            <doc xml:space="preserve">the proportion</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasetransform.c"
+                 line="2678">the proportion</doc>
             <type name="gdouble" c:type="gdouble"/>
           </parameter>
           <parameter name="diff" transfer-ownership="none">
-            <doc xml:space="preserve">the diff against the clock</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasetransform.c"
+                 line="2679">the diff against the clock</doc>
             <type name="Gst.ClockTimeDiff" c:type="GstClockTimeDiff"/>
           </parameter>
           <parameter name="timestamp" transfer-ownership="none">
-            <doc xml:space="preserve">the timestamp of the buffer generating the QoS expressed in
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasetransform.c"
+                 line="2680">the timestamp of the buffer generating the QoS expressed in
 running_time.</doc>
             <type name="Gst.ClockTime" c:type="GstClockTime"/>
           </parameter>
@@ -6454,22 +8726,32 @@ running_time.</doc>
       <method name="update_src_caps"
               c:identifier="gst_base_transform_update_src_caps"
               version="1.6">
-        <doc xml:space="preserve">Updates the srcpad caps and send the caps downstream. This function
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasetransform.c"
+             line="2886">Updates the srcpad caps and sends the caps downstream. This function
 can be used by subclasses when they have already negotiated their caps
 but found a change in them (or computed new information). This way,
 they can notify downstream about that change without losing any
 buffer.</doc>
+        <source-position filename="libs/gst/base/gstbasetransform.h"
+                         line="350"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the caps could be send downstream %FALSE otherwise</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbasetransform.c"
+               line="2898">%TRUE if the caps could be sent downstream %FALSE otherwise</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="trans" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBaseTransform</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasetransform.c"
+                 line="2888">a #GstBaseTransform</doc>
             <type name="BaseTransform" c:type="GstBaseTransform*"/>
           </instance-parameter>
           <parameter name="updated_caps" transfer-ownership="none">
-            <doc xml:space="preserve">An updated version of the srcpad caps to be pushed
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbasetransform.c"
+                 line="2889">An updated version of the srcpad caps to be pushed
 downstream</doc>
             <type name="Gst.Caps" c:type="GstCaps*"/>
           </parameter>
@@ -6500,7 +8782,7 @@ downstream</doc>
         <type name="BaseTransformPrivate" c:type="GstBaseTransformPrivate*"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="19">
+        <array zero-terminated="0" fixed-size="19">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -6508,22 +8790,31 @@ downstream</doc>
     <record name="BaseTransformClass"
             c:type="GstBaseTransformClass"
             glib:is-gtype-struct-for="BaseTransform">
-      <doc xml:space="preserve">Subclasses can override any of the available virtual methods or not, as
+      <doc xml:space="preserve"
+           filename="libs/gst/base/gstbasetransform.h"
+           line="104">Subclasses can override any of the available virtual methods or not, as
 needed. At minimum either @transform or @transform_ip need to be overridden.
 If the element can overwrite the input data with the results (data is of the
 same type and quantity) it should provide @transform_ip.</doc>
+      <source-position filename="libs/gst/base/gstbasetransform.h" line="302"/>
       <field name="parent_class">
-        <doc xml:space="preserve">Element parent class</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasetransform.h"
+             line="106">Element parent class</doc>
         <type name="Gst.ElementClass" c:type="GstElementClass"/>
       </field>
       <field name="passthrough_on_same_caps">
-        <doc xml:space="preserve">If set to %TRUE, passthrough mode will be
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasetransform.h"
+             line="107">If set to %TRUE, passthrough mode will be
                            automatically enabled if the caps are the same.
                            Set to %FALSE by default.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </field>
       <field name="transform_ip_on_passthrough">
-        <doc xml:space="preserve">If set to %TRUE, @transform_ip will be called in
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbasetransform.h"
+             line="110">If set to %TRUE, @transform_ip will be called in
                           passthrough mode. The passed buffer might not be
                           writable. When %FALSE, neither @transform nor
                           @transform_ip will be called in passthrough mode.
@@ -6532,6 +8823,8 @@ same type and quantity) it should provide @transform_ip.</doc>
       </field>
       <field name="transform_caps">
         <callback name="transform_caps">
+          <source-position filename="libs/gst/base/gstbasetransform.h"
+                           line="226"/>
           <return-value transfer-ownership="full">
             <type name="Gst.Caps" c:type="GstCaps*"/>
           </return-value>
@@ -6553,6 +8846,8 @@ same type and quantity) it should provide @transform_ip.</doc>
       </field>
       <field name="fixate_caps">
         <callback name="fixate_caps">
+          <source-position filename="libs/gst/base/gstbasetransform.h"
+                           line="229"/>
           <return-value transfer-ownership="full">
             <type name="Gst.Caps" c:type="GstCaps*"/>
           </return-value>
@@ -6574,6 +8869,8 @@ same type and quantity) it should provide @transform_ip.</doc>
       </field>
       <field name="accept_caps">
         <callback name="accept_caps">
+          <source-position filename="libs/gst/base/gstbasetransform.h"
+                           line="232"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -6592,6 +8889,8 @@ same type and quantity) it should provide @transform_ip.</doc>
       </field>
       <field name="set_caps">
         <callback name="set_caps">
+          <source-position filename="libs/gst/base/gstbasetransform.h"
+                           line="234"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -6610,6 +8909,8 @@ same type and quantity) it should provide @transform_ip.</doc>
       </field>
       <field name="query">
         <callback name="query">
+          <source-position filename="libs/gst/base/gstbasetransform.h"
+                           line="236"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -6628,6 +8929,8 @@ same type and quantity) it should provide @transform_ip.</doc>
       </field>
       <field name="decide_allocation">
         <callback name="decide_allocation">
+          <source-position filename="libs/gst/base/gstbasetransform.h"
+                           line="240"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -6643,6 +8946,8 @@ same type and quantity) it should provide @transform_ip.</doc>
       </field>
       <field name="filter_meta">
         <callback name="filter_meta">
+          <source-position filename="libs/gst/base/gstbasetransform.h"
+                           line="241"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -6664,6 +8969,8 @@ same type and quantity) it should provide @transform_ip.</doc>
       </field>
       <field name="propose_allocation">
         <callback name="propose_allocation">
+          <source-position filename="libs/gst/base/gstbasetransform.h"
+                           line="245"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -6682,6 +8989,8 @@ same type and quantity) it should provide @transform_ip.</doc>
       </field>
       <field name="transform_size">
         <callback name="transform_size">
+          <source-position filename="libs/gst/base/gstbasetransform.h"
+                           line="252"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -6712,6 +9021,8 @@ same type and quantity) it should provide @transform_ip.</doc>
       </field>
       <field name="get_unit_size">
         <callback name="get_unit_size">
+          <source-position filename="libs/gst/base/gstbasetransform.h"
+                           line="261"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -6733,6 +9044,8 @@ same type and quantity) it should provide @transform_ip.</doc>
       </field>
       <field name="start">
         <callback name="start">
+          <source-position filename="libs/gst/base/gstbasetransform.h"
+                           line="265"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -6745,6 +9058,8 @@ same type and quantity) it should provide @transform_ip.</doc>
       </field>
       <field name="stop">
         <callback name="stop">
+          <source-position filename="libs/gst/base/gstbasetransform.h"
+                           line="266"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -6757,6 +9072,8 @@ same type and quantity) it should provide @transform_ip.</doc>
       </field>
       <field name="sink_event">
         <callback name="sink_event">
+          <source-position filename="libs/gst/base/gstbasetransform.h"
+                           line="269"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -6772,6 +9089,8 @@ same type and quantity) it should provide @transform_ip.</doc>
       </field>
       <field name="src_event">
         <callback name="src_event">
+          <source-position filename="libs/gst/base/gstbasetransform.h"
+                           line="270"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -6787,6 +9106,8 @@ same type and quantity) it should provide @transform_ip.</doc>
       </field>
       <field name="prepare_output_buffer">
         <callback name="prepare_output_buffer">
+          <source-position filename="libs/gst/base/gstbasetransform.h"
+                           line="276"/>
           <return-value transfer-ownership="none">
             <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
           </return-value>
@@ -6808,6 +9129,8 @@ same type and quantity) it should provide @transform_ip.</doc>
       </field>
       <field name="copy_metadata">
         <callback name="copy_metadata">
+          <source-position filename="libs/gst/base/gstbasetransform.h"
+                           line="280"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -6826,6 +9149,8 @@ same type and quantity) it should provide @transform_ip.</doc>
       </field>
       <field name="transform_meta">
         <callback name="transform_meta">
+          <source-position filename="libs/gst/base/gstbasetransform.h"
+                           line="282"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -6847,6 +9172,8 @@ same type and quantity) it should provide @transform_ip.</doc>
       </field>
       <field name="before_transform">
         <callback name="before_transform">
+          <source-position filename="libs/gst/base/gstbasetransform.h"
+                           line="285"/>
           <return-value transfer-ownership="none">
             <type name="none" c:type="void"/>
           </return-value>
@@ -6862,6 +9189,8 @@ same type and quantity) it should provide @transform_ip.</doc>
       </field>
       <field name="transform">
         <callback name="transform">
+          <source-position filename="libs/gst/base/gstbasetransform.h"
+                           line="288"/>
           <return-value transfer-ownership="none">
             <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
           </return-value>
@@ -6880,6 +9209,8 @@ same type and quantity) it should provide @transform_ip.</doc>
       </field>
       <field name="transform_ip">
         <callback name="transform_ip">
+          <source-position filename="libs/gst/base/gstbasetransform.h"
+                           line="290"/>
           <return-value transfer-ownership="none">
             <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
           </return-value>
@@ -6895,6 +9226,8 @@ same type and quantity) it should provide @transform_ip.</doc>
       </field>
       <field name="submit_input_buffer">
         <callback name="submit_input_buffer">
+          <source-position filename="libs/gst/base/gstbasetransform.h"
+                           line="292"/>
           <return-value transfer-ownership="none">
             <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
           </return-value>
@@ -6913,6 +9246,8 @@ same type and quantity) it should provide @transform_ip.</doc>
       </field>
       <field name="generate_output">
         <callback name="generate_output">
+          <source-position filename="libs/gst/base/gstbasetransform.h"
+                           line="298"/>
           <return-value transfer-ownership="none">
             <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
           </return-value>
@@ -6930,7 +9265,7 @@ same type and quantity) it should provide @transform_ip.</doc>
         </callback>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="18">
+        <array zero-terminated="0" fixed-size="18">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -6938,354 +9273,514 @@ same type and quantity) it should provide @transform_ip.</doc>
     <record name="BaseTransformPrivate"
             c:type="GstBaseTransformPrivate"
             disguised="1">
+      <source-position filename="libs/gst/base/gstbasetransform.h" line="76"/>
     </record>
     <record name="BitReader" c:type="GstBitReader">
-      <doc xml:space="preserve">#GstBitReader provides a bit reader that can read any number of bits
+      <doc xml:space="preserve"
+           filename="libs/gst/base/gstbitreader.c"
+           line="30">#GstBitReader provides a bit reader that can read any number of bits
 from a memory buffer. It provides functions for reading any number of bits
 into 8, 16, 32 and 64 bit variables.</doc>
+      <source-position filename="libs/gst/base/gstbitreader.h" line="52"/>
       <field name="data" writable="1">
-        <doc xml:space="preserve">Data from which the bit reader will
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbitreader.h"
+             line="35">Data from which the bit reader will
   read</doc>
         <array length="1" zero-terminated="0" c:type="const guint8*">
           <type name="guint8" c:type="guint8"/>
         </array>
       </field>
       <field name="size" writable="1">
-        <doc xml:space="preserve">Size of @data in bytes</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbitreader.h"
+             line="37">Size of @data in bytes</doc>
         <type name="guint" c:type="guint"/>
       </field>
       <field name="byte" writable="1">
-        <doc xml:space="preserve">Current byte position</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbitreader.h"
+             line="38">Current byte position</doc>
         <type name="guint" c:type="guint"/>
       </field>
       <field name="bit" writable="1">
-        <doc xml:space="preserve">Bit position in the current byte</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbitreader.h"
+             line="39">Bit position in the current byte</doc>
         <type name="guint" c:type="guint"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
       <method name="free" c:identifier="gst_bit_reader_free">
-        <doc xml:space="preserve">Frees a #GstBitReader instance, which was previously allocated by
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbitreader.c"
+             line="74">Frees a #GstBitReader instance, which was previously allocated by
 gst_bit_reader_new().</doc>
+        <source-position filename="libs/gst/base/gstbitreader.h" line="58"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="reader" transfer-ownership="full">
-            <doc xml:space="preserve">a #GstBitReader instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbitreader.c"
+                 line="76">a #GstBitReader instance</doc>
             <type name="BitReader" c:type="GstBitReader*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_bits_uint16"
               c:identifier="gst_bit_reader_get_bits_uint16">
-        <doc xml:space="preserve">Read @nbits bits into @val and update the current position.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if successful, %FALSE otherwise.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbitreader.c"
+             line="214">Read @nbits bits into @val and update the current position.</doc>
+        <source-position filename="libs/gst/base/gstbitreader.h" line="85"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbitreader.c"
+               line="222">%TRUE if successful, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="reader" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBitReader instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbitreader.c"
+                 line="216">a #GstBitReader instance</doc>
             <type name="BitReader" c:type="GstBitReader*"/>
           </instance-parameter>
           <parameter name="val"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">Pointer to a #guint16 to store the result</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbitreader.c"
+                 line="217">Pointer to a #guint16 to store the result</doc>
             <type name="guint16" c:type="guint16*"/>
           </parameter>
           <parameter name="nbits" transfer-ownership="none">
-            <doc xml:space="preserve">number of bits to read</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbitreader.c"
+                 line="218">number of bits to read</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_bits_uint32"
               c:identifier="gst_bit_reader_get_bits_uint32">
-        <doc xml:space="preserve">Read @nbits bits into @val and update the current position.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if successful, %FALSE otherwise.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbitreader.c"
+             line="225">Read @nbits bits into @val and update the current position.</doc>
+        <source-position filename="libs/gst/base/gstbitreader.h" line="88"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbitreader.c"
+               line="233">%TRUE if successful, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="reader" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBitReader instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbitreader.c"
+                 line="227">a #GstBitReader instance</doc>
             <type name="BitReader" c:type="GstBitReader*"/>
           </instance-parameter>
           <parameter name="val"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">Pointer to a #guint32 to store the result</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbitreader.c"
+                 line="228">Pointer to a #guint32 to store the result</doc>
             <type name="guint32" c:type="guint32*"/>
           </parameter>
           <parameter name="nbits" transfer-ownership="none">
-            <doc xml:space="preserve">number of bits to read</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbitreader.c"
+                 line="229">number of bits to read</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_bits_uint64"
               c:identifier="gst_bit_reader_get_bits_uint64">
-        <doc xml:space="preserve">Read @nbits bits into @val and update the current position.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if successful, %FALSE otherwise.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbitreader.c"
+             line="236">Read @nbits bits into @val and update the current position.</doc>
+        <source-position filename="libs/gst/base/gstbitreader.h" line="91"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbitreader.c"
+               line="244">%TRUE if successful, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="reader" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBitReader instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbitreader.c"
+                 line="238">a #GstBitReader instance</doc>
             <type name="BitReader" c:type="GstBitReader*"/>
           </instance-parameter>
           <parameter name="val"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">Pointer to a #guint64 to store the result</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbitreader.c"
+                 line="239">Pointer to a #guint64 to store the result</doc>
             <type name="guint64" c:type="guint64*"/>
           </parameter>
           <parameter name="nbits" transfer-ownership="none">
-            <doc xml:space="preserve">number of bits to read</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbitreader.c"
+                 line="240">number of bits to read</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_bits_uint8"
               c:identifier="gst_bit_reader_get_bits_uint8">
-        <doc xml:space="preserve">Read @nbits bits into @val and update the current position.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if successful, %FALSE otherwise.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbitreader.c"
+             line="203">Read @nbits bits into @val and update the current position.</doc>
+        <source-position filename="libs/gst/base/gstbitreader.h" line="82"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbitreader.c"
+               line="211">%TRUE if successful, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="reader" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBitReader instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbitreader.c"
+                 line="205">a #GstBitReader instance</doc>
             <type name="BitReader" c:type="GstBitReader*"/>
           </instance-parameter>
           <parameter name="val"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">Pointer to a #guint8 to store the result</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbitreader.c"
+                 line="206">Pointer to a #guint8 to store the result</doc>
             <type name="guint8" c:type="guint8*"/>
           </parameter>
           <parameter name="nbits" transfer-ownership="none">
-            <doc xml:space="preserve">number of bits to read</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbitreader.c"
+                 line="207">number of bits to read</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_pos" c:identifier="gst_bit_reader_get_pos">
-        <doc xml:space="preserve">Returns the current position of a #GstBitReader instance in bits.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The current position of @reader in bits.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbitreader.c"
+             line="132">Returns the current position of a #GstBitReader instance in bits.</doc>
+        <source-position filename="libs/gst/base/gstbitreader.h" line="67"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbitreader.c"
+               line="138">The current position of @reader in bits.</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="reader" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBitReader instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbitreader.c"
+                 line="134">a #GstBitReader instance</doc>
             <type name="BitReader" c:type="const GstBitReader*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_remaining" c:identifier="gst_bit_reader_get_remaining">
-        <doc xml:space="preserve">Returns the remaining number of bits of a #GstBitReader instance.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The remaining number of bits of @reader instance.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbitreader.c"
+             line="146">Returns the remaining number of bits of a #GstBitReader instance.</doc>
+        <source-position filename="libs/gst/base/gstbitreader.h" line="70"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbitreader.c"
+               line="152">The remaining number of bits of @reader instance.</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="reader" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBitReader instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbitreader.c"
+                 line="148">a #GstBitReader instance</doc>
             <type name="BitReader" c:type="const GstBitReader*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_size" c:identifier="gst_bit_reader_get_size">
-        <doc xml:space="preserve">Returns the total number of bits of a #GstBitReader instance.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The total number of bits of @reader instance.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbitreader.c"
+             line="160">Returns the total number of bits of a #GstBitReader instance.</doc>
+        <source-position filename="libs/gst/base/gstbitreader.h" line="73"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbitreader.c"
+               line="166">The total number of bits of @reader instance.</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="reader" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBitReader instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbitreader.c"
+                 line="162">a #GstBitReader instance</doc>
             <type name="BitReader" c:type="const GstBitReader*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="init" c:identifier="gst_bit_reader_init">
-        <doc xml:space="preserve">Initializes a #GstBitReader instance to read from @data. This function
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbitreader.c"
+             line="89">Initializes a #GstBitReader instance to read from @data. This function
 can be called on already initialized instances.</doc>
+        <source-position filename="libs/gst/base/gstbitreader.h" line="61"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="reader" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBitReader instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbitreader.c"
+                 line="91">a #GstBitReader instance</doc>
             <type name="BitReader" c:type="GstBitReader*"/>
           </instance-parameter>
           <parameter name="data" transfer-ownership="none">
-            <doc xml:space="preserve">data from which the bit reader should read</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbitreader.c"
+                 line="92">data from which the bit reader should read</doc>
             <array length="1" zero-terminated="0" c:type="const guint8*">
               <type name="guint8" c:type="guint8"/>
             </array>
           </parameter>
           <parameter name="size" transfer-ownership="none">
-            <doc xml:space="preserve">Size of @data in bytes</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbitreader.c"
+                 line="93">Size of @data in bytes</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="peek_bits_uint16"
               c:identifier="gst_bit_reader_peek_bits_uint16">
-        <doc xml:space="preserve">Read @nbits bits into @val but keep the current position.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if successful, %FALSE otherwise.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbitreader.c"
+             line="258">Read @nbits bits into @val but keep the current position.</doc>
+        <source-position filename="libs/gst/base/gstbitreader.h" line="97"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbitreader.c"
+               line="266">%TRUE if successful, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="reader" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBitReader instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbitreader.c"
+                 line="260">a #GstBitReader instance</doc>
             <type name="BitReader" c:type="const GstBitReader*"/>
           </instance-parameter>
           <parameter name="val"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">Pointer to a #guint16 to store the result</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbitreader.c"
+                 line="261">Pointer to a #guint16 to store the result</doc>
             <type name="guint16" c:type="guint16*"/>
           </parameter>
           <parameter name="nbits" transfer-ownership="none">
-            <doc xml:space="preserve">number of bits to read</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbitreader.c"
+                 line="262">number of bits to read</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="peek_bits_uint32"
               c:identifier="gst_bit_reader_peek_bits_uint32">
-        <doc xml:space="preserve">Read @nbits bits into @val but keep the current position.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if successful, %FALSE otherwise.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbitreader.c"
+             line="269">Read @nbits bits into @val but keep the current position.</doc>
+        <source-position filename="libs/gst/base/gstbitreader.h" line="100"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbitreader.c"
+               line="277">%TRUE if successful, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="reader" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBitReader instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbitreader.c"
+                 line="271">a #GstBitReader instance</doc>
             <type name="BitReader" c:type="const GstBitReader*"/>
           </instance-parameter>
           <parameter name="val"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">Pointer to a #guint32 to store the result</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbitreader.c"
+                 line="272">Pointer to a #guint32 to store the result</doc>
             <type name="guint32" c:type="guint32*"/>
           </parameter>
           <parameter name="nbits" transfer-ownership="none">
-            <doc xml:space="preserve">number of bits to read</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbitreader.c"
+                 line="273">number of bits to read</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="peek_bits_uint64"
               c:identifier="gst_bit_reader_peek_bits_uint64">
-        <doc xml:space="preserve">Read @nbits bits into @val but keep the current position.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if successful, %FALSE otherwise.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbitreader.c"
+             line="280">Read @nbits bits into @val but keep the current position.</doc>
+        <source-position filename="libs/gst/base/gstbitreader.h" line="103"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbitreader.c"
+               line="288">%TRUE if successful, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="reader" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBitReader instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbitreader.c"
+                 line="282">a #GstBitReader instance</doc>
             <type name="BitReader" c:type="const GstBitReader*"/>
           </instance-parameter>
           <parameter name="val"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">Pointer to a #guint64 to store the result</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbitreader.c"
+                 line="283">Pointer to a #guint64 to store the result</doc>
             <type name="guint64" c:type="guint64*"/>
           </parameter>
           <parameter name="nbits" transfer-ownership="none">
-            <doc xml:space="preserve">number of bits to read</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbitreader.c"
+                 line="284">number of bits to read</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="peek_bits_uint8"
               c:identifier="gst_bit_reader_peek_bits_uint8">
-        <doc xml:space="preserve">Read @nbits bits into @val but keep the current position.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if successful, %FALSE otherwise.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbitreader.c"
+             line="247">Read @nbits bits into @val but keep the current position.</doc>
+        <source-position filename="libs/gst/base/gstbitreader.h" line="94"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbitreader.c"
+               line="255">%TRUE if successful, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="reader" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBitReader instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbitreader.c"
+                 line="249">a #GstBitReader instance</doc>
             <type name="BitReader" c:type="const GstBitReader*"/>
           </instance-parameter>
           <parameter name="val"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">Pointer to a #guint8 to store the result</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbitreader.c"
+                 line="250">Pointer to a #guint8 to store the result</doc>
             <type name="guint8" c:type="guint8*"/>
           </parameter>
           <parameter name="nbits" transfer-ownership="none">
-            <doc xml:space="preserve">number of bits to read</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbitreader.c"
+                 line="251">number of bits to read</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_pos" c:identifier="gst_bit_reader_set_pos">
-        <doc xml:space="preserve">Sets the new position of a #GstBitReader instance to @pos in bits.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the position could be set successfully, %FALSE
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbitreader.c"
+             line="108">Sets the new position of a #GstBitReader instance to @pos in bits.</doc>
+        <source-position filename="libs/gst/base/gstbitreader.h" line="64"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbitreader.c"
+               line="115">%TRUE if the position could be set successfully, %FALSE
 otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="reader" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBitReader instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbitreader.c"
+                 line="110">a #GstBitReader instance</doc>
             <type name="BitReader" c:type="GstBitReader*"/>
           </instance-parameter>
           <parameter name="pos" transfer-ownership="none">
-            <doc xml:space="preserve">The new position in bits</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbitreader.c"
+                 line="111">The new position in bits</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="skip" c:identifier="gst_bit_reader_skip">
-        <doc xml:space="preserve">Skips @nbits bits of the #GstBitReader instance.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if @nbits bits could be skipped, %FALSE otherwise.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbitreader.c"
+             line="174">Skips @nbits bits of the #GstBitReader instance.</doc>
+        <source-position filename="libs/gst/base/gstbitreader.h" line="76"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbitreader.c"
+               line="181">%TRUE if @nbits bits could be skipped, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="reader" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBitReader instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbitreader.c"
+                 line="176">a #GstBitReader instance</doc>
             <type name="BitReader" c:type="GstBitReader*"/>
           </instance-parameter>
           <parameter name="nbits" transfer-ownership="none">
-            <doc xml:space="preserve">the number of bits to skip</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbitreader.c"
+                 line="177">the number of bits to skip</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="skip_to_byte" c:identifier="gst_bit_reader_skip_to_byte">
-        <doc xml:space="preserve">Skips until the next byte.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if successful, %FALSE otherwise.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbitreader.c"
+             line="189">Skips until the next byte.</doc>
+        <source-position filename="libs/gst/base/gstbitreader.h" line="79"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbitreader.c"
+               line="195">%TRUE if successful, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="reader" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBitReader instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbitreader.c"
+                 line="191">a #GstBitReader instance</doc>
             <type name="BitReader" c:type="GstBitReader*"/>
           </instance-parameter>
         </parameters>
@@ -7293,38 +9788,54 @@ otherwise.</doc>
       <function name="new"
                 c:identifier="gst_bit_reader_new"
                 introspectable="0">
-        <doc xml:space="preserve">Create a new #GstBitReader instance, which will read from @data.
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbitreader.c"
+             line="51">Create a new #GstBitReader instance, which will read from @data.
 
 Free-function: gst_bit_reader_free</doc>
+        <source-position filename="libs/gst/base/gstbitreader.h" line="55"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new #GstBitReader instance</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbitreader.c"
+               line="61">a new #GstBitReader instance</doc>
           <type name="BitReader" c:type="GstBitReader*"/>
         </return-value>
         <parameters>
           <parameter name="data" transfer-ownership="none">
-            <doc xml:space="preserve">Data from which the #GstBitReader
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbitreader.c"
+                 line="53">Data from which the #GstBitReader
   should read</doc>
             <array length="1" zero-terminated="0" c:type="const guint8*">
               <type name="guint8" c:type="guint8"/>
             </array>
           </parameter>
           <parameter name="size" transfer-ownership="none">
-            <doc xml:space="preserve">Size of @data in bytes</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbitreader.c"
+                 line="55">Size of @data in bytes</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </function>
     </record>
-    <record name="BitWriter" c:type="GstBitWriter">
-      <doc xml:space="preserve">#GstBitWriter provides a bit writer that can write any number of
+    <record name="BitWriter" c:type="GstBitWriter" version="1.16">
+      <doc xml:space="preserve"
+           filename="libs/gst/base/gstbitwriter.c"
+           line="30">#GstBitWriter provides a bit writer that can write any number of
 bits into a memory buffer. It provides functions for writing any
 number of bits into 8, 16, 32 and 64 bit variables.</doc>
+      <source-position filename="libs/gst/base/gstbitwriter.h" line="58"/>
       <field name="data" writable="1">
-        <doc xml:space="preserve">Allocated @data for bit writer to write</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbitwriter.h"
+             line="41">Allocated @data for bit writer to write</doc>
         <type name="guint8" c:type="guint8*"/>
       </field>
       <field name="bit_size" writable="1">
-        <doc xml:space="preserve">Size of written @data in bits</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbitwriter.h"
+             line="42">Size of written @data in bits</doc>
         <type name="guint" c:type="guint"/>
       </field>
       <field name="bit_capacity" readable="0" private="1">
@@ -7337,66 +9848,92 @@ number of bits into 8, 16, 32 and 64 bit variables.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
       <method name="align_bytes" c:identifier="gst_bit_writer_align_bytes">
-        <doc xml:space="preserve">Write trailing bit to align last byte of @data. @trailing_bit can
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbitwriter.c"
+             line="430">Write trailing bit to align last byte of @data. @trailing_bit can
 only be 1 or 0.</doc>
+        <source-position filename="libs/gst/base/gstbitwriter.h" line="132"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if successful, %FALSE otherwise.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbitwriter.c"
+               line="438">%TRUE if successful, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="bitwriter" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBitWriter instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbitwriter.c"
+                 line="432">a #GstBitWriter instance</doc>
             <type name="BitWriter" c:type="GstBitWriter*"/>
           </instance-parameter>
           <parameter name="trailing_bit" transfer-ownership="none">
-            <doc xml:space="preserve">trailing bits of last byte, 0 or 1</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbitwriter.c"
+                 line="433">trailing bits of last byte, 0 or 1</doc>
             <type name="guint8" c:type="guint8"/>
           </parameter>
         </parameters>
       </method>
       <method name="free" c:identifier="gst_bit_writer_free">
-        <doc xml:space="preserve">Frees @bitwriter and the allocated data inside.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbitwriter.c"
+             line="246">Frees @bitwriter and the allocated data inside.</doc>
+        <source-position filename="libs/gst/base/gstbitwriter.h" line="71"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="bitwriter" transfer-ownership="full">
-            <doc xml:space="preserve">#GstBitWriter instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbitwriter.c"
+                 line="248">#GstBitWriter instance</doc>
             <type name="BitWriter" c:type="GstBitWriter*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="free_and_get_buffer"
               c:identifier="gst_bit_writer_free_and_get_buffer">
-        <doc xml:space="preserve">Frees @bitwriter without destroying the internal data, which is
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbitwriter.c"
+             line="286">Frees @bitwriter without destroying the internal data, which is
 returned as #GstBuffer.
 
 Free-function: gst_buffer_unref</doc>
+        <source-position filename="libs/gst/base/gstbitwriter.h" line="77"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new allocated #GstBuffer wrapping the
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbitwriter.c"
+               line="295">a new allocated #GstBuffer wrapping the
     data inside. gst_buffer_unref() after usage.</doc>
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </return-value>
         <parameters>
           <instance-parameter name="bitwriter" transfer-ownership="full">
-            <doc xml:space="preserve">#GstBitWriter instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbitwriter.c"
+                 line="288">#GstBitWriter instance</doc>
             <type name="BitWriter" c:type="GstBitWriter*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="free_and_get_data"
               c:identifier="gst_bit_writer_free_and_get_data">
-        <doc xml:space="preserve">Frees @bitwriter without destroying the internal data, which is
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbitwriter.c"
+             line="261">Frees @bitwriter without destroying the internal data, which is
 returned.
 
 Free-function: g_free</doc>
+        <source-position filename="libs/gst/base/gstbitwriter.h" line="74"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the current data. g_free() after
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbitwriter.c"
+               line="270">the current data. g_free() after
     usage.</doc>
           <array zero-terminated="0" c:type="guint8*">
             <type name="guint8" c:type="guint8"/>
@@ -7404,25 +9941,35 @@ Free-function: g_free</doc>
         </return-value>
         <parameters>
           <instance-parameter name="bitwriter" transfer-ownership="full">
-            <doc xml:space="preserve">#GstBitWriter instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbitwriter.c"
+                 line="263">#GstBitWriter instance</doc>
             <type name="BitWriter" c:type="GstBitWriter*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_data" c:identifier="gst_bit_writer_get_data">
-        <doc xml:space="preserve">Get written data pointer</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">data pointer</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbitwriter.c"
+             line="325">Get written data pointer</doc>
+        <source-position filename="libs/gst/base/gstbitwriter.h" line="103"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbitwriter.c"
+               line="331">data pointer</doc>
           <type name="guint8" c:type="guint8*"/>
         </return-value>
         <parameters>
           <instance-parameter name="bitwriter" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBitWriter instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbitwriter.c"
+                 line="327">a #GstBitWriter instance</doc>
             <type name="BitWriter" c:type="const GstBitWriter*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_remaining" c:identifier="gst_bit_writer_get_remaining">
+        <source-position filename="libs/gst/base/gstbitwriter.h" line="109"/>
         <return-value transfer-ownership="none">
           <type name="guint" c:type="guint"/>
         </return-value>
@@ -7433,14 +9980,21 @@ Free-function: g_free</doc>
         </parameters>
       </method>
       <method name="get_size" c:identifier="gst_bit_writer_get_size">
-        <doc xml:space="preserve">Get size of written @data</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">size of bits written in @data</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbitwriter.c"
+             line="311">Get size of written @data</doc>
+        <source-position filename="libs/gst/base/gstbitwriter.h" line="100"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbitwriter.c"
+               line="317">size of bits written in @data</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="bitwriter" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBitWriter instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbitwriter.c"
+                 line="313">a #GstBitWriter instance</doc>
             <type name="BitWriter" c:type="const GstBitWriter*"/>
           </instance-parameter>
         </parameters>
@@ -7448,13 +10002,18 @@ Free-function: g_free</doc>
       <method name="init"
               c:identifier="gst_bit_writer_init"
               introspectable="0">
-        <doc xml:space="preserve">Initializes @bitwriter to an empty instance.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbitwriter.c"
+             line="103">Initializes @bitwriter to an empty instance.</doc>
+        <source-position filename="libs/gst/base/gstbitwriter.h" line="80"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="bitwriter" transfer-ownership="none">
-            <doc xml:space="preserve">#GstBitWriter instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbitwriter.c"
+                 line="105">#GstBitWriter instance</doc>
             <type name="BitWriter" c:type="GstBitWriter*"/>
           </instance-parameter>
         </parameters>
@@ -7462,29 +10021,40 @@ Free-function: g_free</doc>
       <method name="init_with_data"
               c:identifier="gst_bit_writer_init_with_data"
               introspectable="0">
-        <doc xml:space="preserve">Initializes @bitwriter with the given memory area @data. IF
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbitwriter.c"
+             line="141">Initializes @bitwriter with the given memory area @data. IF
 @initialized is %TRUE it is possible to read @size bits from the
 #GstBitWriter from the beginning.</doc>
+        <source-position filename="libs/gst/base/gstbitwriter.h" line="87"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="bitwriter" transfer-ownership="none">
-            <doc xml:space="preserve">#GstBitWriter instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbitwriter.c"
+                 line="143">#GstBitWriter instance</doc>
             <type name="BitWriter" c:type="GstBitWriter*"/>
           </instance-parameter>
           <parameter name="data" transfer-ownership="none">
-            <doc xml:space="preserve">Memory area for writing</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbitwriter.c"
+                 line="144">Memory area for writing</doc>
             <array length="1" zero-terminated="0" c:type="guint8*">
               <type name="guint8" c:type="guint8"/>
             </array>
           </parameter>
           <parameter name="size" transfer-ownership="none">
-            <doc xml:space="preserve">Size of @data in bytes</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbitwriter.c"
+                 line="145">Size of @data in bytes</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="initialized" transfer-ownership="none">
-            <doc xml:space="preserve">If %TRUE the complete data can be read from the beginning</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbitwriter.c"
+                 line="146">If %TRUE the complete data can be read from the beginning</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
@@ -7492,171 +10062,252 @@ Free-function: g_free</doc>
       <method name="init_with_size"
               c:identifier="gst_bit_writer_init_with_size"
               introspectable="0">
-        <doc xml:space="preserve">Initializes a #GstBitWriter instance and allocates the given data
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbitwriter.c"
+             line="119">Initializes a #GstBitWriter instance and allocates the given data
 @size.</doc>
+        <source-position filename="libs/gst/base/gstbitwriter.h" line="83"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="bitwriter" transfer-ownership="none">
-            <doc xml:space="preserve">#GstBitWriter instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbitwriter.c"
+                 line="121">#GstBitWriter instance</doc>
             <type name="BitWriter" c:type="GstBitWriter*"/>
           </instance-parameter>
           <parameter name="size" transfer-ownership="none">
-            <doc xml:space="preserve">the size on bytes to allocate for data</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbitwriter.c"
+                 line="122">the size on bytes to allocate for data</doc>
             <type name="guint32" c:type="guint32"/>
           </parameter>
           <parameter name="fixed" transfer-ownership="none">
-            <doc xml:space="preserve">If %TRUE the data can't be reallocated</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbitwriter.c"
+                 line="123">If %TRUE the data can't be reallocated</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </method>
       <method name="put_bits_uint16"
               c:identifier="gst_bit_writer_put_bits_uint16">
-        <doc xml:space="preserve">Write @nbits bits of @value to #GstBitWriter.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if successful, %FALSE otherwise.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbitwriter.c"
+             line="365">Write @nbits bits of @value to #GstBitWriter.</doc>
+        <source-position filename="libs/gst/base/gstbitwriter.h" line="116"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbitwriter.c"
+               line="373">%TRUE if successful, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="bitwriter" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBitWriter instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbitwriter.c"
+                 line="367">a #GstBitWriter instance</doc>
             <type name="BitWriter" c:type="GstBitWriter*"/>
           </instance-parameter>
           <parameter name="value" transfer-ownership="none">
-            <doc xml:space="preserve">value of #guint16 to write</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbitwriter.c"
+                 line="368">value of #guint16 to write</doc>
             <type name="guint16" c:type="guint16"/>
           </parameter>
           <parameter name="nbits" transfer-ownership="none">
-            <doc xml:space="preserve">number of bits to write</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbitwriter.c"
+                 line="369">number of bits to write</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="put_bits_uint32"
               c:identifier="gst_bit_writer_put_bits_uint32">
-        <doc xml:space="preserve">Write @nbits bits of @value to #GstBitWriter.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if successful, %FALSE otherwise.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbitwriter.c"
+             line="376">Write @nbits bits of @value to #GstBitWriter.</doc>
+        <source-position filename="libs/gst/base/gstbitwriter.h" line="120"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbitwriter.c"
+               line="384">%TRUE if successful, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="bitwriter" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBitWriter instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbitwriter.c"
+                 line="378">a #GstBitWriter instance</doc>
             <type name="BitWriter" c:type="GstBitWriter*"/>
           </instance-parameter>
           <parameter name="value" transfer-ownership="none">
-            <doc xml:space="preserve">value of #guint32 to write</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbitwriter.c"
+                 line="379">value of #guint32 to write</doc>
             <type name="guint32" c:type="guint32"/>
           </parameter>
           <parameter name="nbits" transfer-ownership="none">
-            <doc xml:space="preserve">number of bits to write</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbitwriter.c"
+                 line="380">number of bits to write</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="put_bits_uint64"
               c:identifier="gst_bit_writer_put_bits_uint64">
-        <doc xml:space="preserve">Write @nbits bits of @value to #GstBitWriter.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if successful, %FALSE otherwise.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbitwriter.c"
+             line="387">Write @nbits bits of @value to #GstBitWriter.</doc>
+        <source-position filename="libs/gst/base/gstbitwriter.h" line="124"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbitwriter.c"
+               line="395">%TRUE if successful, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="bitwriter" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBitWriter instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbitwriter.c"
+                 line="389">a #GstBitWriter instance</doc>
             <type name="BitWriter" c:type="GstBitWriter*"/>
           </instance-parameter>
           <parameter name="value" transfer-ownership="none">
-            <doc xml:space="preserve">value of #guint64 to write</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbitwriter.c"
+                 line="390">value of #guint64 to write</doc>
             <type name="guint64" c:type="guint64"/>
           </parameter>
           <parameter name="nbits" transfer-ownership="none">
-            <doc xml:space="preserve">number of bits to write</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbitwriter.c"
+                 line="391">number of bits to write</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="put_bits_uint8"
               c:identifier="gst_bit_writer_put_bits_uint8">
-        <doc xml:space="preserve">Write @nbits bits of @value to #GstBitWriter.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if successful, %FALSE otherwise.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbitwriter.c"
+             line="354">Write @nbits bits of @value to #GstBitWriter.</doc>
+        <source-position filename="libs/gst/base/gstbitwriter.h" line="112"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbitwriter.c"
+               line="362">%TRUE if successful, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="bitwriter" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBitWriter instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbitwriter.c"
+                 line="356">a #GstBitWriter instance</doc>
             <type name="BitWriter" c:type="GstBitWriter*"/>
           </instance-parameter>
           <parameter name="value" transfer-ownership="none">
-            <doc xml:space="preserve">value of #guint8 to write</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbitwriter.c"
+                 line="357">value of #guint8 to write</doc>
             <type name="guint8" c:type="guint8"/>
           </parameter>
           <parameter name="nbits" transfer-ownership="none">
-            <doc xml:space="preserve">number of bits to write</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbitwriter.c"
+                 line="358">number of bits to write</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="put_bytes" c:identifier="gst_bit_writer_put_bytes">
-        <doc xml:space="preserve">Write @nbytes bytes of @data to #GstBitWriter.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if successful, %FALSE otherwise.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbitwriter.c"
+             line="413">Write @nbytes bytes of @data to #GstBitWriter.</doc>
+        <source-position filename="libs/gst/base/gstbitwriter.h" line="128"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbitwriter.c"
+               line="421">%TRUE if successful, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="bitwriter" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBitWriter instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbitwriter.c"
+                 line="415">a #GstBitWriter instance</doc>
             <type name="BitWriter" c:type="GstBitWriter*"/>
           </instance-parameter>
           <parameter name="data" transfer-ownership="none">
-            <doc xml:space="preserve">pointer of data to write</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbitwriter.c"
+                 line="416">pointer of data to write</doc>
             <type name="guint8" c:type="const guint8*"/>
           </parameter>
           <parameter name="nbytes" transfer-ownership="none">
-            <doc xml:space="preserve">number of bytes to write</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbitwriter.c"
+                 line="417">number of bytes to write</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="reset" c:identifier="gst_bit_writer_reset">
-        <doc xml:space="preserve">Resets @bitwriter and frees the data if it's owned by @bitwriter.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbitwriter.c"
+             line="167">Resets @bitwriter and frees the data if it's owned by @bitwriter.</doc>
+        <source-position filename="libs/gst/base/gstbitwriter.h" line="91"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="bitwriter" transfer-ownership="none">
-            <doc xml:space="preserve">#GstBitWriter instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbitwriter.c"
+                 line="169">#GstBitWriter instance</doc>
             <type name="BitWriter" c:type="GstBitWriter*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="reset_and_get_buffer"
               c:identifier="gst_bit_writer_reset_and_get_buffer">
-        <doc xml:space="preserve">Resets @bitwriter and returns the current data as #GstBuffer.
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbitwriter.c"
+             line="209">Resets @bitwriter and returns the current data as #GstBuffer.
 
 Free-function: gst_buffer_unref</doc>
+        <source-position filename="libs/gst/base/gstbitwriter.h" line="97"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new allocated #GstBuffer wrapping the
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbitwriter.c"
+               line="217">a new allocated #GstBuffer wrapping the
     current data. gst_buffer_unref() after usage.</doc>
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </return-value>
         <parameters>
           <instance-parameter name="bitwriter" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBitWriter instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbitwriter.c"
+                 line="211">a #GstBitWriter instance</doc>
             <type name="BitWriter" c:type="GstBitWriter*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="reset_and_get_data"
               c:identifier="gst_bit_writer_reset_and_get_data">
-        <doc xml:space="preserve">Resets @bitwriter and returns the current data.
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbitwriter.c"
+             line="183">Resets @bitwriter and returns the current data.
 
 Free-function: g_free</doc>
+        <source-position filename="libs/gst/base/gstbitwriter.h" line="94"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the current data. g_free() after
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbitwriter.c"
+               line="191">the current data. g_free() after
     usage.</doc>
           <array zero-terminated="0" c:type="guint8*">
             <type name="guint8" c:type="guint8"/>
@@ -7664,12 +10315,15 @@ Free-function: g_free</doc>
         </return-value>
         <parameters>
           <instance-parameter name="bitwriter" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBitWriter instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbitwriter.c"
+                 line="185">a #GstBitWriter instance</doc>
             <type name="BitWriter" c:type="GstBitWriter*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="set_pos" c:identifier="gst_bit_writer_set_pos">
+        <source-position filename="libs/gst/base/gstbitwriter.h" line="106"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -7685,37 +10339,53 @@ Free-function: g_free</doc>
       <function name="new"
                 c:identifier="gst_bit_writer_new"
                 introspectable="0">
-        <doc xml:space="preserve">Creates a new, empty #GstBitWriter instance.
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbitwriter.c"
+             line="40">Creates a new, empty #GstBitWriter instance.
 
 Free-function: gst_bit_writer_free</doc>
+        <source-position filename="libs/gst/base/gstbitwriter.h" line="61"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new, empty #GstByteWriter instance</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbitwriter.c"
+               line="47">a new, empty #GstByteWriter instance</doc>
           <type name="BitWriter" c:type="GstBitWriter*"/>
         </return-value>
       </function>
       <function name="new_with_data"
                 c:identifier="gst_bit_writer_new_with_data"
                 introspectable="0">
-        <doc xml:space="preserve">Creates a new #GstBitWriter instance with the given memory area. If
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbitwriter.c"
+             line="79">Creates a new #GstBitWriter instance with the given memory area. If
 @initialized is %TRUE it is possible to read @size bits from the
-#GstBitWriter from the beginnig.
+#GstBitWriter from the beginning.
 
 Free-function: gst_bit_writer_free</doc>
+        <source-position filename="libs/gst/base/gstbitwriter.h" line="67"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new #GstBitWriter instance</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbitwriter.c"
+               line="91">a new #GstBitWriter instance</doc>
           <type name="BitWriter" c:type="GstBitWriter*"/>
         </return-value>
         <parameters>
           <parameter name="data" transfer-ownership="none">
-            <doc xml:space="preserve">Memory area for writing</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbitwriter.c"
+                 line="81">Memory area for writing</doc>
             <type name="guint8" c:type="guint8*"/>
           </parameter>
           <parameter name="size" transfer-ownership="none">
-            <doc xml:space="preserve">Size of @data in bytes</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbitwriter.c"
+                 line="82">Size of @data in bytes</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="initialized" transfer-ownership="none">
-            <doc xml:space="preserve">if %TRUE the complete data can be read from the beginning</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbitwriter.c"
+                 line="83">if %TRUE the complete data can be read from the beginning</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
@@ -7723,79 +10393,108 @@ Free-function: gst_bit_writer_free</doc>
       <function name="new_with_size"
                 c:identifier="gst_bit_writer_new_with_size"
                 introspectable="0">
-        <doc xml:space="preserve">Creates a #GstBitWriter instance with the given initial data size.
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbitwriter.c"
+             line="59">Creates a #GstBitWriter instance with the given initial data size.
 
 Free-function: gst_bit_writer_free</doc>
+        <source-position filename="libs/gst/base/gstbitwriter.h" line="64"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new #GstBitWriter instance</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbitwriter.c"
+               line="68">a new #GstBitWriter instance</doc>
           <type name="BitWriter" c:type="GstBitWriter*"/>
         </return-value>
         <parameters>
           <parameter name="size" transfer-ownership="none">
-            <doc xml:space="preserve">Initial size of data in bytes</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbitwriter.c"
+                 line="61">Initial size of data in bytes</doc>
             <type name="guint32" c:type="guint32"/>
           </parameter>
           <parameter name="fixed" transfer-ownership="none">
-            <doc xml:space="preserve">If %TRUE the data can't be reallocated</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbitwriter.c"
+                 line="62">If %TRUE the data can't be reallocated</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </function>
     </record>
     <record name="ByteReader" c:type="GstByteReader">
-      <doc xml:space="preserve">#GstByteReader provides a byte reader that can read different integer and
+      <doc xml:space="preserve"
+           filename="libs/gst/base/gstbytereader.c"
+           line="31">#GstByteReader provides a byte reader that can read different integer and
 floating point types from a memory buffer. It provides functions for reading
 signed/unsigned, little/big endian integers of 8, 16, 24, 32 and 64 bits
 and functions for reading little/big endian floating points numbers of
 32 and 64 bits. It also provides functions to read NUL-terminated strings
 in various character encodings.</doc>
+      <source-position filename="libs/gst/base/gstbytereader.h" line="49"/>
       <field name="data" writable="1">
-        <doc xml:space="preserve">Data from which the bit reader will
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytereader.h"
+             line="34">Data from which the bit reader will
   read</doc>
         <array length="1" zero-terminated="0" c:type="const guint8*">
           <type name="guint8" c:type="guint8"/>
         </array>
       </field>
       <field name="size" writable="1">
-        <doc xml:space="preserve">Size of @data in bytes</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytereader.h"
+             line="36">Size of @data in bytes</doc>
         <type name="guint" c:type="guint"/>
       </field>
       <field name="byte" writable="1">
-        <doc xml:space="preserve">Current byte position</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytereader.h"
+             line="37">Current byte position</doc>
         <type name="guint" c:type="guint"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
       <method name="dup_data" c:identifier="gst_byte_reader_dup_data">
-        <doc xml:space="preserve">Free-function: g_free
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytereader.c"
+             line="843">Free-function: g_free
 
 Returns a newly-allocated copy of the current data
 position if at least @size bytes are left and
 updates the current position. Free with g_free() when no longer needed.</doc>
+        <source-position filename="libs/gst/base/gstbytereader.h" line="216"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if successful, %FALSE otherwise.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytereader.c"
+               line="856">%TRUE if successful, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="reader" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstByteReader instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="845">a #GstByteReader instance</doc>
             <type name="ByteReader" c:type="GstByteReader*"/>
           </instance-parameter>
           <parameter name="size"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">Size in bytes</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="846">Size in bytes</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="val"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">address of a
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="847">address of a
     #guint8 pointer variable in which to store the result</doc>
             <array length="0" zero-terminated="0" c:type="guint8**">
               <type name="guint8" c:type="guint8*"/>
@@ -7805,7 +10504,9 @@ updates the current position. Free with g_free() when no longer needed.</doc>
       </method>
       <method name="dup_string_utf16"
               c:identifier="gst_byte_reader_dup_string_utf16">
-        <doc xml:space="preserve">Free-function: g_free
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytereader.c"
+             line="1250">Free-function: g_free
 
 Returns a newly-allocated copy of the current data position if there is
 a NUL-terminated UTF-16 string in the data (this could be an empty string
@@ -7819,21 +10520,28 @@ This function will fail if no NUL-terminator was found in in the data.
 
 Note: there is no peek or get variant of this function to ensure correct
 byte alignment of the UTF-16 string.</doc>
+        <source-position filename="libs/gst/base/gstbytereader.h" line="231"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if a string could be read, %FALSE otherwise. The
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytereader.c"
+               line="1271">%TRUE if a string could be read, %FALSE otherwise. The
     string put into @str must be freed with g_free() when no longer needed.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="reader" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstByteReader instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="1252">a #GstByteReader instance</doc>
             <type name="ByteReader" c:type="GstByteReader*"/>
           </instance-parameter>
           <parameter name="str"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">address of a
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="1253">address of a
     #guint16 pointer variable in which to store the result</doc>
             <array c:type="guint16**">
               <type name="guint16" c:type="guint16*"/>
@@ -7843,7 +10551,9 @@ byte alignment of the UTF-16 string.</doc>
       </method>
       <method name="dup_string_utf32"
               c:identifier="gst_byte_reader_dup_string_utf32">
-        <doc xml:space="preserve">Free-function: g_free
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytereader.c"
+             line="1276">Free-function: g_free
 
 Returns a newly-allocated copy of the current data position if there is
 a NUL-terminated UTF-32 string in the data (this could be an empty string
@@ -7857,21 +10567,28 @@ This function will fail if no NUL-terminator was found in in the data.
 
 Note: there is no peek or get variant of this function to ensure correct
 byte alignment of the UTF-32 string.</doc>
+        <source-position filename="libs/gst/base/gstbytereader.h" line="234"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if a string could be read, %FALSE otherwise. The
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytereader.c"
+               line="1297">%TRUE if a string could be read, %FALSE otherwise. The
     string put into @str must be freed with g_free() when no longer needed.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="reader" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstByteReader instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="1278">a #GstByteReader instance</doc>
             <type name="ByteReader" c:type="GstByteReader*"/>
           </instance-parameter>
           <parameter name="str"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">address of a
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="1279">address of a
     #guint32 pointer variable in which to store the result</doc>
             <array c:type="guint32**">
               <type name="guint32" c:type="guint32*"/>
@@ -7881,7 +10598,9 @@ byte alignment of the UTF-32 string.</doc>
       </method>
       <method name="dup_string_utf8"
               c:identifier="gst_byte_reader_dup_string_utf8">
-        <doc xml:space="preserve">Free-function: g_free
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytereader.c"
+             line="1230">Free-function: g_free
 
 FIXME:Reads (copies) a NUL-terminated string in the #GstByteReader instance,
 advancing the current position to the byte after the string. This will work
@@ -7889,21 +10608,28 @@ for any NUL-terminated string with a character width of 8 bits, so ASCII,
 UTF-8, ISO-8859-N etc. No input checking for valid UTF-8 is done.
 
 This function will fail if no NUL-terminator was found in in the data.</doc>
+        <source-position filename="libs/gst/base/gstbytereader.h" line="228"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if a string could be read into @str, %FALSE otherwise. The
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytereader.c"
+               line="1245">%TRUE if a string could be read into @str, %FALSE otherwise. The
     string put into @str must be freed with g_free() when no longer needed.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="reader" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstByteReader instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="1232">a #GstByteReader instance</doc>
             <type name="ByteReader" c:type="GstByteReader*"/>
           </instance-parameter>
           <parameter name="str"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">address of a
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="1233">address of a
     #gchar pointer variable in which to store the result</doc>
             <array c:type="gchar**">
               <type name="utf8" c:type="gchar*"/>
@@ -7912,43 +10638,59 @@ This function will fail if no NUL-terminator was found in in the data.</doc>
         </parameters>
       </method>
       <method name="free" c:identifier="gst_byte_reader_free">
-        <doc xml:space="preserve">Frees a #GstByteReader instance, which was previously allocated by
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytereader.c"
+             line="109">Frees a #GstByteReader instance, which was previously allocated by
 gst_byte_reader_new().</doc>
+        <source-position filename="libs/gst/base/gstbytereader.h" line="55"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="reader" transfer-ownership="full">
-            <doc xml:space="preserve">a #GstByteReader instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="111">a #GstByteReader instance</doc>
             <type name="ByteReader" c:type="GstByteReader*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_data" c:identifier="gst_byte_reader_get_data">
-        <doc xml:space="preserve">Returns a constant pointer to the current data
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytereader.c"
+             line="803">Returns a constant pointer to the current data
 position if at least @size bytes are left and
 updates the current position.</doc>
+        <source-position filename="libs/gst/base/gstbytereader.h" line="219"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if successful, %FALSE otherwise.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytereader.c"
+               line="814">%TRUE if successful, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="reader" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstByteReader instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="805">a #GstByteReader instance</doc>
             <type name="ByteReader" c:type="GstByteReader*"/>
           </instance-parameter>
           <parameter name="size"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">Size in bytes</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="806">Size in bytes</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="val"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="none">
-            <doc xml:space="preserve">address of a
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="807">address of a
     #guint8 pointer variable in which to store the result</doc>
             <array length="0" zero-terminated="0" c:type="const guint8**">
               <type name="guint8" c:type="guint8*"/>
@@ -7958,323 +10700,463 @@ updates the current position.</doc>
       </method>
       <method name="get_float32_be"
               c:identifier="gst_byte_reader_get_float32_be">
-        <doc xml:space="preserve">Read a 32 bit big endian floating point value into @val
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytereader.c"
+             line="730">Read a 32 bit big endian floating point value into @val
 and update the current position.</doc>
+        <source-position filename="libs/gst/base/gstbytereader.h" line="195"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if successful, %FALSE otherwise.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytereader.c"
+               line="738">%TRUE if successful, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="reader" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstByteReader instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="732">a #GstByteReader instance</doc>
             <type name="ByteReader" c:type="GstByteReader*"/>
           </instance-parameter>
           <parameter name="val"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">Pointer to a #gfloat to store the result</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="733">Pointer to a #gfloat to store the result</doc>
             <type name="gfloat" c:type="gfloat*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_float32_le"
               c:identifier="gst_byte_reader_get_float32_le">
-        <doc xml:space="preserve">Read a 32 bit little endian floating point value into @val
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytereader.c"
+             line="708">Read a 32 bit little endian floating point value into @val
 and update the current position.</doc>
+        <source-position filename="libs/gst/base/gstbytereader.h" line="192"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if successful, %FALSE otherwise.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytereader.c"
+               line="716">%TRUE if successful, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="reader" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstByteReader instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="710">a #GstByteReader instance</doc>
             <type name="ByteReader" c:type="GstByteReader*"/>
           </instance-parameter>
           <parameter name="val"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">Pointer to a #gfloat to store the result</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="711">Pointer to a #gfloat to store the result</doc>
             <type name="gfloat" c:type="gfloat*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_float64_be"
               c:identifier="gst_byte_reader_get_float64_be">
-        <doc xml:space="preserve">Read a 64 bit big endian floating point value into @val
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytereader.c"
+             line="774">Read a 64 bit big endian floating point value into @val
 and update the current position.</doc>
+        <source-position filename="libs/gst/base/gstbytereader.h" line="201"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if successful, %FALSE otherwise.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytereader.c"
+               line="782">%TRUE if successful, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="reader" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstByteReader instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="776">a #GstByteReader instance</doc>
             <type name="ByteReader" c:type="GstByteReader*"/>
           </instance-parameter>
           <parameter name="val"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">Pointer to a #gdouble to store the result</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="777">Pointer to a #gdouble to store the result</doc>
             <type name="gdouble" c:type="gdouble*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_float64_le"
               c:identifier="gst_byte_reader_get_float64_le">
-        <doc xml:space="preserve">Read a 64 bit little endian floating point value into @val
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytereader.c"
+             line="752">Read a 64 bit little endian floating point value into @val
 and update the current position.</doc>
+        <source-position filename="libs/gst/base/gstbytereader.h" line="198"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if successful, %FALSE otherwise.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytereader.c"
+               line="760">%TRUE if successful, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="reader" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstByteReader instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="754">a #GstByteReader instance</doc>
             <type name="ByteReader" c:type="GstByteReader*"/>
           </instance-parameter>
           <parameter name="val"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">Pointer to a #gdouble to store the result</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="755">Pointer to a #gdouble to store the result</doc>
             <type name="gdouble" c:type="gdouble*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_int16_be" c:identifier="gst_byte_reader_get_int16_be">
-        <doc xml:space="preserve">Read a signed 16 bit big endian integer into @val
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytereader.c"
+             line="372">Read a signed 16 bit big endian integer into @val
 and update the current position.</doc>
+        <source-position filename="libs/gst/base/gstbytereader.h" line="99"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if successful, %FALSE otherwise.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytereader.c"
+               line="380">%TRUE if successful, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="reader" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstByteReader instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="374">a #GstByteReader instance</doc>
             <type name="ByteReader" c:type="GstByteReader*"/>
           </instance-parameter>
           <parameter name="val"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">Pointer to a #gint16 to store the result</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="375">Pointer to a #gint16 to store the result</doc>
             <type name="gint16" c:type="gint16*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_int16_le" c:identifier="gst_byte_reader_get_int16_le">
-        <doc xml:space="preserve">Read a signed 16 bit little endian integer into @val
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytereader.c"
+             line="328">Read a signed 16 bit little endian integer into @val
 and update the current position.</doc>
+        <source-position filename="libs/gst/base/gstbytereader.h" line="93"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if successful, %FALSE otherwise.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytereader.c"
+               line="336">%TRUE if successful, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="reader" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstByteReader instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="330">a #GstByteReader instance</doc>
             <type name="ByteReader" c:type="GstByteReader*"/>
           </instance-parameter>
           <parameter name="val"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">Pointer to a #gint16 to store the result</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="331">Pointer to a #gint16 to store the result</doc>
             <type name="gint16" c:type="gint16*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_int24_be" c:identifier="gst_byte_reader_get_int24_be">
-        <doc xml:space="preserve">Read a signed 24 bit big endian integer into @val
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytereader.c"
+             line="460">Read a signed 24 bit big endian integer into @val
 and update the current position.</doc>
+        <source-position filename="libs/gst/base/gstbytereader.h" line="111"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if successful, %FALSE otherwise.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytereader.c"
+               line="468">%TRUE if successful, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="reader" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstByteReader instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="462">a #GstByteReader instance</doc>
             <type name="ByteReader" c:type="GstByteReader*"/>
           </instance-parameter>
           <parameter name="val"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">Pointer to a #gint32 to store the result</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="463">Pointer to a #gint32 to store the result</doc>
             <type name="gint32" c:type="gint32*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_int24_le" c:identifier="gst_byte_reader_get_int24_le">
-        <doc xml:space="preserve">Read a signed 24 bit little endian integer into @val
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytereader.c"
+             line="416">Read a signed 24 bit little endian integer into @val
 and update the current position.</doc>
+        <source-position filename="libs/gst/base/gstbytereader.h" line="105"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if successful, %FALSE otherwise.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytereader.c"
+               line="424">%TRUE if successful, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="reader" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstByteReader instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="418">a #GstByteReader instance</doc>
             <type name="ByteReader" c:type="GstByteReader*"/>
           </instance-parameter>
           <parameter name="val"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">Pointer to a #gint32 to store the result</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="419">Pointer to a #gint32 to store the result</doc>
             <type name="gint32" c:type="gint32*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_int32_be" c:identifier="gst_byte_reader_get_int32_be">
-        <doc xml:space="preserve">Read a signed 32 bit big endian integer into @val
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytereader.c"
+             line="549">Read a signed 32 bit big endian integer into @val
 and update the current position.</doc>
+        <source-position filename="libs/gst/base/gstbytereader.h" line="123"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if successful, %FALSE otherwise.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytereader.c"
+               line="557">%TRUE if successful, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="reader" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstByteReader instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="551">a #GstByteReader instance</doc>
             <type name="ByteReader" c:type="GstByteReader*"/>
           </instance-parameter>
           <parameter name="val"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">Pointer to a #gint32 to store the result</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="552">Pointer to a #gint32 to store the result</doc>
             <type name="gint32" c:type="gint32*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_int32_le" c:identifier="gst_byte_reader_get_int32_le">
-        <doc xml:space="preserve">Read a signed 32 bit little endian integer into @val
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytereader.c"
+             line="505">Read a signed 32 bit little endian integer into @val
 and update the current position.</doc>
+        <source-position filename="libs/gst/base/gstbytereader.h" line="117"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if successful, %FALSE otherwise.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytereader.c"
+               line="513">%TRUE if successful, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="reader" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstByteReader instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="507">a #GstByteReader instance</doc>
             <type name="ByteReader" c:type="GstByteReader*"/>
           </instance-parameter>
           <parameter name="val"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">Pointer to a #gint32 to store the result</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="508">Pointer to a #gint32 to store the result</doc>
             <type name="gint32" c:type="gint32*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_int64_be" c:identifier="gst_byte_reader_get_int64_be">
-        <doc xml:space="preserve">Read a signed 64 bit big endian integer into @val
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytereader.c"
+             line="637">Read a signed 64 bit big endian integer into @val
 and update the current position.</doc>
+        <source-position filename="libs/gst/base/gstbytereader.h" line="135"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if successful, %FALSE otherwise.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytereader.c"
+               line="645">%TRUE if successful, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="reader" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstByteReader instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="639">a #GstByteReader instance</doc>
             <type name="ByteReader" c:type="GstByteReader*"/>
           </instance-parameter>
           <parameter name="val"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">Pointer to a #gint64 to store the result</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="640">Pointer to a #gint64 to store the result</doc>
             <type name="gint64" c:type="gint64*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_int64_le" c:identifier="gst_byte_reader_get_int64_le">
-        <doc xml:space="preserve">Read a signed 64 bit little endian integer into @val
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytereader.c"
+             line="593">Read a signed 64 bit little endian integer into @val
 and update the current position.</doc>
+        <source-position filename="libs/gst/base/gstbytereader.h" line="129"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if successful, %FALSE otherwise.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytereader.c"
+               line="601">%TRUE if successful, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="reader" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstByteReader instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="595">a #GstByteReader instance</doc>
             <type name="ByteReader" c:type="GstByteReader*"/>
           </instance-parameter>
           <parameter name="val"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">Pointer to a #gint64 to store the result</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="596">Pointer to a #gint64 to store the result</doc>
             <type name="gint64" c:type="gint64*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_int8" c:identifier="gst_byte_reader_get_int8">
-        <doc xml:space="preserve">Read a signed 8 bit integer into @val and update the current position.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if successful, %FALSE otherwise.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytereader.c"
+             line="287">Read a signed 8 bit integer into @val and update the current position.</doc>
+        <source-position filename="libs/gst/base/gstbytereader.h" line="87"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytereader.c"
+               line="294">%TRUE if successful, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="reader" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstByteReader instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="289">a #GstByteReader instance</doc>
             <type name="ByteReader" c:type="GstByteReader*"/>
           </instance-parameter>
           <parameter name="val"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">Pointer to a #gint8 to store the result</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="290">Pointer to a #gint8 to store the result</doc>
             <type name="gint8" c:type="gint8*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_pos" c:identifier="gst_byte_reader_get_pos">
-        <doc xml:space="preserve">Returns the current position of a #GstByteReader instance in bytes.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The current position of @reader in bytes.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytereader.c"
+             line="217">Returns the current position of a #GstByteReader instance in bytes.</doc>
+        <source-position filename="libs/gst/base/gstbytereader.h" line="72"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytereader.c"
+               line="223">The current position of @reader in bytes.</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="reader" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstByteReader instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="219">a #GstByteReader instance</doc>
             <type name="ByteReader" c:type="const GstByteReader*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_remaining"
               c:identifier="gst_byte_reader_get_remaining">
-        <doc xml:space="preserve">Returns the remaining number of bytes of a #GstByteReader instance.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The remaining number of bytes of @reader instance.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytereader.c"
+             line="231">Returns the remaining number of bytes of a #GstByteReader instance.</doc>
+        <source-position filename="libs/gst/base/gstbytereader.h" line="75"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytereader.c"
+               line="237">The remaining number of bytes of @reader instance.</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="reader" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstByteReader instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="233">a #GstByteReader instance</doc>
             <type name="ByteReader" c:type="const GstByteReader*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_size" c:identifier="gst_byte_reader_get_size">
-        <doc xml:space="preserve">Returns the total number of bytes of a #GstByteReader instance.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The total number of bytes of @reader instance.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytereader.c"
+             line="245">Returns the total number of bytes of a #GstByteReader instance.</doc>
+        <source-position filename="libs/gst/base/gstbytereader.h" line="78"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytereader.c"
+               line="251">The total number of bytes of @reader instance.</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="reader" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstByteReader instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="247">a #GstByteReader instance</doc>
             <type name="ByteReader" c:type="const GstByteReader*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_string_utf8"
               c:identifier="gst_byte_reader_get_string_utf8">
-        <doc xml:space="preserve">Returns a constant pointer to the current data position if there is
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytereader.c"
+             line="1174">Returns a constant pointer to the current data position if there is
 a NUL-terminated string in the data (this could be just a NUL terminator),
 advancing the current position to the byte after the string. This will work
 for any NUL-terminated string with a character width of 8 bits, so ASCII,
@@ -8283,20 +11165,27 @@ UTF-8, ISO-8859-N etc.
 No input checking for valid UTF-8 is done.
 
 This function will fail if no NUL-terminator was found in in the data.</doc>
+        <source-position filename="libs/gst/base/gstbytereader.h" line="255"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if a string could be found, %FALSE otherwise.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytereader.c"
+               line="1190">%TRUE if a string could be found, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="reader" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstByteReader instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="1176">a #GstByteReader instance</doc>
             <type name="ByteReader" c:type="GstByteReader*"/>
           </instance-parameter>
           <parameter name="str"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="none">
-            <doc xml:space="preserve">address of a
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="1177">address of a
     #gchar pointer variable in which to store the result</doc>
             <array c:type="const gchar**">
               <type name="utf8" c:type="gchar*"/>
@@ -8308,255 +11197,358 @@ This function will fail if no NUL-terminator was found in in the data.</doc>
               c:identifier="gst_byte_reader_get_sub_reader"
               version="1.6"
               introspectable="0">
-        <doc xml:space="preserve">Initializes a #GstByteReader sub-reader instance to contain @size bytes of
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytereader.c"
+             line="169">Initializes a #GstByteReader sub-reader instance to contain @size bytes of
 data from the current position of @reader. This is useful to read chunked
 formats and make sure that one doesn't read beyond the size of the sub-chunk.
 
 Unlike gst_byte_reader_peek_sub_reader(), this function also modifies the
 position of @reader and moves it forward by @size bytes.</doc>
+        <source-position filename="libs/gst/base/gstbytereader.h" line="65"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">FALSE on error or if @reader does not contain @size more bytes from
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytereader.c"
+               line="182">FALSE on error or if @reader does not contain @size more bytes from
     the current position, and otherwise TRUE</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="reader" transfer-ownership="none">
-            <doc xml:space="preserve">an existing and initialized #GstByteReader instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="171">an existing and initialized #GstByteReader instance</doc>
             <type name="ByteReader" c:type="GstByteReader*"/>
           </instance-parameter>
           <parameter name="sub_reader" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstByteReader instance to initialize as sub-reader</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="172">a #GstByteReader instance to initialize as sub-reader</doc>
             <type name="ByteReader" c:type="GstByteReader*"/>
           </parameter>
           <parameter name="size" transfer-ownership="none">
-            <doc xml:space="preserve">size of @sub_reader in bytes</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="173">size of @sub_reader in bytes</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_uint16_be"
               c:identifier="gst_byte_reader_get_uint16_be">
-        <doc xml:space="preserve">Read an unsigned 16 bit big endian integer into @val
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytereader.c"
+             line="361">Read an unsigned 16 bit big endian integer into @val
 and update the current position.</doc>
+        <source-position filename="libs/gst/base/gstbytereader.h" line="96"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if successful, %FALSE otherwise.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytereader.c"
+               line="369">%TRUE if successful, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="reader" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstByteReader instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="363">a #GstByteReader instance</doc>
             <type name="ByteReader" c:type="GstByteReader*"/>
           </instance-parameter>
           <parameter name="val"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">Pointer to a #guint16 to store the result</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="364">Pointer to a #guint16 to store the result</doc>
             <type name="guint16" c:type="guint16*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_uint16_le"
               c:identifier="gst_byte_reader_get_uint16_le">
-        <doc xml:space="preserve">Read an unsigned 16 bit little endian integer into @val
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytereader.c"
+             line="317">Read an unsigned 16 bit little endian integer into @val
 and update the current position.</doc>
+        <source-position filename="libs/gst/base/gstbytereader.h" line="90"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if successful, %FALSE otherwise.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytereader.c"
+               line="325">%TRUE if successful, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="reader" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstByteReader instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="319">a #GstByteReader instance</doc>
             <type name="ByteReader" c:type="GstByteReader*"/>
           </instance-parameter>
           <parameter name="val"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">Pointer to a #guint16 to store the result</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="320">Pointer to a #guint16 to store the result</doc>
             <type name="guint16" c:type="guint16*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_uint24_be"
               c:identifier="gst_byte_reader_get_uint24_be">
-        <doc xml:space="preserve">Read an unsigned 24 bit big endian integer into @val
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytereader.c"
+             line="449">Read an unsigned 24 bit big endian integer into @val
 and update the current position.</doc>
+        <source-position filename="libs/gst/base/gstbytereader.h" line="108"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if successful, %FALSE otherwise.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytereader.c"
+               line="457">%TRUE if successful, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="reader" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstByteReader instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="451">a #GstByteReader instance</doc>
             <type name="ByteReader" c:type="GstByteReader*"/>
           </instance-parameter>
           <parameter name="val"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">Pointer to a #guint32 to store the result</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="452">Pointer to a #guint32 to store the result</doc>
             <type name="guint32" c:type="guint32*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_uint24_le"
               c:identifier="gst_byte_reader_get_uint24_le">
-        <doc xml:space="preserve">Read an unsigned 24 bit little endian integer into @val
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytereader.c"
+             line="405">Read an unsigned 24 bit little endian integer into @val
 and update the current position.</doc>
+        <source-position filename="libs/gst/base/gstbytereader.h" line="102"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if successful, %FALSE otherwise.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytereader.c"
+               line="413">%TRUE if successful, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="reader" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstByteReader instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="407">a #GstByteReader instance</doc>
             <type name="ByteReader" c:type="GstByteReader*"/>
           </instance-parameter>
           <parameter name="val"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">Pointer to a #guint32 to store the result</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="408">Pointer to a #guint32 to store the result</doc>
             <type name="guint32" c:type="guint32*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_uint32_be"
               c:identifier="gst_byte_reader_get_uint32_be">
-        <doc xml:space="preserve">Read an unsigned 32 bit big endian integer into @val
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytereader.c"
+             line="538">Read an unsigned 32 bit big endian integer into @val
 and update the current position.</doc>
+        <source-position filename="libs/gst/base/gstbytereader.h" line="120"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if successful, %FALSE otherwise.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytereader.c"
+               line="546">%TRUE if successful, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="reader" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstByteReader instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="540">a #GstByteReader instance</doc>
             <type name="ByteReader" c:type="GstByteReader*"/>
           </instance-parameter>
           <parameter name="val"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">Pointer to a #guint32 to store the result</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="541">Pointer to a #guint32 to store the result</doc>
             <type name="guint32" c:type="guint32*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_uint32_le"
               c:identifier="gst_byte_reader_get_uint32_le">
-        <doc xml:space="preserve">Read an unsigned 32 bit little endian integer into @val
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytereader.c"
+             line="494">Read an unsigned 32 bit little endian integer into @val
 and update the current position.</doc>
+        <source-position filename="libs/gst/base/gstbytereader.h" line="114"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if successful, %FALSE otherwise.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytereader.c"
+               line="502">%TRUE if successful, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="reader" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstByteReader instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="496">a #GstByteReader instance</doc>
             <type name="ByteReader" c:type="GstByteReader*"/>
           </instance-parameter>
           <parameter name="val"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">Pointer to a #guint32 to store the result</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="497">Pointer to a #guint32 to store the result</doc>
             <type name="guint32" c:type="guint32*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_uint64_be"
               c:identifier="gst_byte_reader_get_uint64_be">
-        <doc xml:space="preserve">Read an unsigned 64 bit big endian integer into @val
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytereader.c"
+             line="626">Read an unsigned 64 bit big endian integer into @val
 and update the current position.</doc>
+        <source-position filename="libs/gst/base/gstbytereader.h" line="132"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if successful, %FALSE otherwise.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytereader.c"
+               line="634">%TRUE if successful, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="reader" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstByteReader instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="628">a #GstByteReader instance</doc>
             <type name="ByteReader" c:type="GstByteReader*"/>
           </instance-parameter>
           <parameter name="val"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">Pointer to a #guint64 to store the result</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="629">Pointer to a #guint64 to store the result</doc>
             <type name="guint64" c:type="guint64*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_uint64_le"
               c:identifier="gst_byte_reader_get_uint64_le">
-        <doc xml:space="preserve">Read an unsigned 64 bit little endian integer into @val
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytereader.c"
+             line="582">Read an unsigned 64 bit little endian integer into @val
 and update the current position.</doc>
+        <source-position filename="libs/gst/base/gstbytereader.h" line="126"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if successful, %FALSE otherwise.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytereader.c"
+               line="590">%TRUE if successful, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="reader" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstByteReader instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="584">a #GstByteReader instance</doc>
             <type name="ByteReader" c:type="GstByteReader*"/>
           </instance-parameter>
           <parameter name="val"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">Pointer to a #guint64 to store the result</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="585">Pointer to a #guint64 to store the result</doc>
             <type name="guint64" c:type="guint64*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_uint8" c:identifier="gst_byte_reader_get_uint8">
-        <doc xml:space="preserve">Read an unsigned 8 bit integer into @val and update the current position.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if successful, %FALSE otherwise.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytereader.c"
+             line="277">Read an unsigned 8 bit integer into @val and update the current position.</doc>
+        <source-position filename="libs/gst/base/gstbytereader.h" line="84"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytereader.c"
+               line="284">%TRUE if successful, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="reader" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstByteReader instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="279">a #GstByteReader instance</doc>
             <type name="ByteReader" c:type="GstByteReader*"/>
           </instance-parameter>
           <parameter name="val"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">Pointer to a #guint8 to store the result</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="280">Pointer to a #guint8 to store the result</doc>
             <type name="guint8" c:type="guint8*"/>
           </parameter>
         </parameters>
       </method>
       <method name="init" c:identifier="gst_byte_reader_init">
-        <doc xml:space="preserve">Initializes a #GstByteReader instance to read from @data. This function
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytereader.c"
+             line="124">Initializes a #GstByteReader instance to read from @data. This function
 can be called on already initialized instances.</doc>
+        <source-position filename="libs/gst/base/gstbytereader.h" line="58"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="reader" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstByteReader instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="126">a #GstByteReader instance</doc>
             <type name="ByteReader" c:type="GstByteReader*"/>
           </instance-parameter>
           <parameter name="data" transfer-ownership="none">
-            <doc xml:space="preserve">data from which
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="127">data from which
     the #GstByteReader should read</doc>
             <array length="1" zero-terminated="0" c:type="const guint8*">
               <type name="guint8" c:type="guint8"/>
             </array>
           </parameter>
           <parameter name="size" transfer-ownership="none">
-            <doc xml:space="preserve">Size of @data in bytes</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="129">Size of @data in bytes</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="masked_scan_uint32"
               c:identifier="gst_byte_reader_masked_scan_uint32">
-        <doc xml:space="preserve">Scan for pattern @pattern with applied mask @mask in the byte reader data,
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytereader.c"
+             line="941">Scan for pattern @pattern with applied mask @mask in the byte reader data,
 starting from offset @offset relative to the current position.
 
 The bytes in @pattern and @mask are interpreted left-to-right, regardless
@@ -8566,8 +11558,11 @@ out.
 
 It is an error to call this function without making sure that there is
 enough data (offset+size bytes) in the byte reader.</doc>
+        <source-position filename="libs/gst/base/gstbytereader.h" line="261"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">offset of the first match, or -1 if no match was found.
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytereader.c"
+               line="961">offset of the first match, or -1 if no match was found.
 
 Example:
 |[
@@ -8592,24 +11587,34 @@ gst_byte_reader_masked_scan_uint32 (reader, 0xffff0000, 0x02030000, 0, 4);
         </return-value>
         <parameters>
           <instance-parameter name="reader" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstByteReader</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="943">a #GstByteReader</doc>
             <type name="ByteReader" c:type="const GstByteReader*"/>
           </instance-parameter>
           <parameter name="mask" transfer-ownership="none">
-            <doc xml:space="preserve">mask to apply to data before matching against @pattern</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="944">mask to apply to data before matching against @pattern</doc>
             <type name="guint32" c:type="guint32"/>
           </parameter>
           <parameter name="pattern" transfer-ownership="none">
-            <doc xml:space="preserve">pattern to match (after mask is applied)</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="945">pattern to match (after mask is applied)</doc>
             <type name="guint32" c:type="guint32"/>
           </parameter>
           <parameter name="offset" transfer-ownership="none">
-            <doc xml:space="preserve">offset from which to start scanning, relative to the current
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="946">offset from which to start scanning, relative to the current
     position</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="size" transfer-ownership="none">
-            <doc xml:space="preserve">number of bytes to scan from offset</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="948">number of bytes to scan from offset</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
@@ -8617,7 +11622,9 @@ gst_byte_reader_masked_scan_uint32 (reader, 0xffff0000, 0x02030000, 0, 4);
       <method name="masked_scan_uint32_peek"
               c:identifier="gst_byte_reader_masked_scan_uint32_peek"
               version="1.6">
-        <doc xml:space="preserve">Scan for pattern @pattern with applied mask @mask in the byte reader data,
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytereader.c"
+             line="990">Scan for pattern @pattern with applied mask @mask in the byte reader data,
 starting from offset @offset relative to the current position.
 
 The bytes in @pattern and @mask are interpreted left-to-right, regardless
@@ -8627,66 +11634,92 @@ out.
 
 It is an error to call this function without making sure that there is
 enough data (offset+size bytes) in the byte reader.</doc>
+        <source-position filename="libs/gst/base/gstbytereader.h" line="267"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">offset of the first match, or -1 if no match was found.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytereader.c"
+               line="1011">offset of the first match, or -1 if no match was found.</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="reader" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstByteReader</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="992">a #GstByteReader</doc>
             <type name="ByteReader" c:type="const GstByteReader*"/>
           </instance-parameter>
           <parameter name="mask" transfer-ownership="none">
-            <doc xml:space="preserve">mask to apply to data before matching against @pattern</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="993">mask to apply to data before matching against @pattern</doc>
             <type name="guint32" c:type="guint32"/>
           </parameter>
           <parameter name="pattern" transfer-ownership="none">
-            <doc xml:space="preserve">pattern to match (after mask is applied)</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="994">pattern to match (after mask is applied)</doc>
             <type name="guint32" c:type="guint32"/>
           </parameter>
           <parameter name="offset" transfer-ownership="none">
-            <doc xml:space="preserve">offset from which to start scanning, relative to the current
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="995">offset from which to start scanning, relative to the current
     position</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="size" transfer-ownership="none">
-            <doc xml:space="preserve">number of bytes to scan from offset</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="997">number of bytes to scan from offset</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="value"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">pointer to uint32 to return matching data</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="998">pointer to uint32 to return matching data</doc>
             <type name="guint32" c:type="guint32*"/>
           </parameter>
         </parameters>
       </method>
       <method name="peek_data" c:identifier="gst_byte_reader_peek_data">
-        <doc xml:space="preserve">Returns a constant pointer to the current data
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytereader.c"
+             line="823">Returns a constant pointer to the current data
 position if at least @size bytes are left and
 keeps the current position.</doc>
+        <source-position filename="libs/gst/base/gstbytereader.h" line="222"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if successful, %FALSE otherwise.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytereader.c"
+               line="834">%TRUE if successful, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="reader" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstByteReader instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="825">a #GstByteReader instance</doc>
             <type name="ByteReader" c:type="const GstByteReader*"/>
           </instance-parameter>
           <parameter name="size"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">Size in bytes</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="826">Size in bytes</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="val"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="none">
-            <doc xml:space="preserve">address of a
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="827">address of a
     #guint8 pointer variable in which to store the result</doc>
             <array length="0" zero-terminated="0" c:type="const guint8**">
               <type name="guint8" c:type="guint8*"/>
@@ -8696,291 +11729,410 @@ keeps the current position.</doc>
       </method>
       <method name="peek_float32_be"
               c:identifier="gst_byte_reader_peek_float32_be">
-        <doc xml:space="preserve">Read a 32 bit big endian floating point value into @val
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytereader.c"
+             line="741">Read a 32 bit big endian floating point value into @val
 but keep the current position.</doc>
+        <source-position filename="libs/gst/base/gstbytereader.h" line="207"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if successful, %FALSE otherwise.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytereader.c"
+               line="749">%TRUE if successful, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="reader" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstByteReader instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="743">a #GstByteReader instance</doc>
             <type name="ByteReader" c:type="const GstByteReader*"/>
           </instance-parameter>
           <parameter name="val"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">Pointer to a #gfloat to store the result</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="744">Pointer to a #gfloat to store the result</doc>
             <type name="gfloat" c:type="gfloat*"/>
           </parameter>
         </parameters>
       </method>
       <method name="peek_float32_le"
               c:identifier="gst_byte_reader_peek_float32_le">
-        <doc xml:space="preserve">Read a 32 bit little endian floating point value into @val
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytereader.c"
+             line="719">Read a 32 bit little endian floating point value into @val
 but keep the current position.</doc>
+        <source-position filename="libs/gst/base/gstbytereader.h" line="204"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if successful, %FALSE otherwise.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytereader.c"
+               line="727">%TRUE if successful, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="reader" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstByteReader instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="721">a #GstByteReader instance</doc>
             <type name="ByteReader" c:type="const GstByteReader*"/>
           </instance-parameter>
           <parameter name="val"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">Pointer to a #gfloat to store the result</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="722">Pointer to a #gfloat to store the result</doc>
             <type name="gfloat" c:type="gfloat*"/>
           </parameter>
         </parameters>
       </method>
       <method name="peek_float64_be"
               c:identifier="gst_byte_reader_peek_float64_be">
-        <doc xml:space="preserve">Read a 64 bit big endian floating point value into @val
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytereader.c"
+             line="785">Read a 64 bit big endian floating point value into @val
 but keep the current position.</doc>
+        <source-position filename="libs/gst/base/gstbytereader.h" line="213"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if successful, %FALSE otherwise.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytereader.c"
+               line="793">%TRUE if successful, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="reader" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstByteReader instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="787">a #GstByteReader instance</doc>
             <type name="ByteReader" c:type="const GstByteReader*"/>
           </instance-parameter>
           <parameter name="val"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">Pointer to a #gdouble to store the result</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="788">Pointer to a #gdouble to store the result</doc>
             <type name="gdouble" c:type="gdouble*"/>
           </parameter>
         </parameters>
       </method>
       <method name="peek_float64_le"
               c:identifier="gst_byte_reader_peek_float64_le">
-        <doc xml:space="preserve">Read a 64 bit little endian floating point value into @val
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytereader.c"
+             line="763">Read a 64 bit little endian floating point value into @val
 but keep the current position.</doc>
+        <source-position filename="libs/gst/base/gstbytereader.h" line="210"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if successful, %FALSE otherwise.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytereader.c"
+               line="771">%TRUE if successful, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="reader" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstByteReader instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="765">a #GstByteReader instance</doc>
             <type name="ByteReader" c:type="const GstByteReader*"/>
           </instance-parameter>
           <parameter name="val"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">Pointer to a #gdouble to store the result</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="766">Pointer to a #gdouble to store the result</doc>
             <type name="gdouble" c:type="gdouble*"/>
           </parameter>
         </parameters>
       </method>
       <method name="peek_int16_be"
               c:identifier="gst_byte_reader_peek_int16_be">
-        <doc xml:space="preserve">Read a signed 16 bit big endian integer into @val
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytereader.c"
+             line="394">Read a signed 16 bit big endian integer into @val
 but keep the current position.</doc>
+        <source-position filename="libs/gst/base/gstbytereader.h" line="153"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if successful, %FALSE otherwise.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytereader.c"
+               line="402">%TRUE if successful, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="reader" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstByteReader instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="396">a #GstByteReader instance</doc>
             <type name="ByteReader" c:type="const GstByteReader*"/>
           </instance-parameter>
           <parameter name="val"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">Pointer to a #gint16 to store the result</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="397">Pointer to a #gint16 to store the result</doc>
             <type name="gint16" c:type="gint16*"/>
           </parameter>
         </parameters>
       </method>
       <method name="peek_int16_le"
               c:identifier="gst_byte_reader_peek_int16_le">
-        <doc xml:space="preserve">Read a signed 16 bit little endian integer into @val
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytereader.c"
+             line="350">Read a signed 16 bit little endian integer into @val
 but keep the current position.</doc>
+        <source-position filename="libs/gst/base/gstbytereader.h" line="147"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if successful, %FALSE otherwise.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytereader.c"
+               line="358">%TRUE if successful, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="reader" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstByteReader instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="352">a #GstByteReader instance</doc>
             <type name="ByteReader" c:type="const GstByteReader*"/>
           </instance-parameter>
           <parameter name="val"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">Pointer to a #gint16 to store the result</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="353">Pointer to a #gint16 to store the result</doc>
             <type name="gint16" c:type="gint16*"/>
           </parameter>
         </parameters>
       </method>
       <method name="peek_int24_be"
               c:identifier="gst_byte_reader_peek_int24_be">
-        <doc xml:space="preserve">Read a signed 24 bit big endian integer into @val
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytereader.c"
+             line="482">Read a signed 24 bit big endian integer into @val
 but keep the current position.</doc>
+        <source-position filename="libs/gst/base/gstbytereader.h" line="165"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if successful, %FALSE otherwise.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytereader.c"
+               line="490">%TRUE if successful, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="reader" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstByteReader instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="484">a #GstByteReader instance</doc>
             <type name="ByteReader" c:type="const GstByteReader*"/>
           </instance-parameter>
           <parameter name="val"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">Pointer to a #gint32 to store the result</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="485">Pointer to a #gint32 to store the result</doc>
             <type name="gint32" c:type="gint32*"/>
           </parameter>
         </parameters>
       </method>
       <method name="peek_int24_le"
               c:identifier="gst_byte_reader_peek_int24_le">
-        <doc xml:space="preserve">Read a signed 24 bit little endian integer into @val
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytereader.c"
+             line="438">Read a signed 24 bit little endian integer into @val
 but keep the current position.</doc>
+        <source-position filename="libs/gst/base/gstbytereader.h" line="159"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if successful, %FALSE otherwise.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytereader.c"
+               line="446">%TRUE if successful, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="reader" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstByteReader instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="440">a #GstByteReader instance</doc>
             <type name="ByteReader" c:type="const GstByteReader*"/>
           </instance-parameter>
           <parameter name="val"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">Pointer to a #gint32 to store the result</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="441">Pointer to a #gint32 to store the result</doc>
             <type name="gint32" c:type="gint32*"/>
           </parameter>
         </parameters>
       </method>
       <method name="peek_int32_be"
               c:identifier="gst_byte_reader_peek_int32_be">
-        <doc xml:space="preserve">Read a signed 32 bit big endian integer into @val
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytereader.c"
+             line="571">Read a signed 32 bit big endian integer into @val
 but keep the current position.</doc>
+        <source-position filename="libs/gst/base/gstbytereader.h" line="177"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if successful, %FALSE otherwise.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytereader.c"
+               line="579">%TRUE if successful, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="reader" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstByteReader instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="573">a #GstByteReader instance</doc>
             <type name="ByteReader" c:type="const GstByteReader*"/>
           </instance-parameter>
           <parameter name="val"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">Pointer to a #gint32 to store the result</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="574">Pointer to a #gint32 to store the result</doc>
             <type name="gint32" c:type="gint32*"/>
           </parameter>
         </parameters>
       </method>
       <method name="peek_int32_le"
               c:identifier="gst_byte_reader_peek_int32_le">
-        <doc xml:space="preserve">Read a signed 32 bit little endian integer into @val
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytereader.c"
+             line="527">Read a signed 32 bit little endian integer into @val
 but keep the current position.</doc>
+        <source-position filename="libs/gst/base/gstbytereader.h" line="171"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if successful, %FALSE otherwise.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytereader.c"
+               line="535">%TRUE if successful, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="reader" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstByteReader instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="529">a #GstByteReader instance</doc>
             <type name="ByteReader" c:type="const GstByteReader*"/>
           </instance-parameter>
           <parameter name="val"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">Pointer to a #gint32 to store the result</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="530">Pointer to a #gint32 to store the result</doc>
             <type name="gint32" c:type="gint32*"/>
           </parameter>
         </parameters>
       </method>
       <method name="peek_int64_be"
               c:identifier="gst_byte_reader_peek_int64_be">
-        <doc xml:space="preserve">Read a signed 64 bit big endian integer into @val
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytereader.c"
+             line="659">Read a signed 64 bit big endian integer into @val
 but keep the current position.</doc>
+        <source-position filename="libs/gst/base/gstbytereader.h" line="189"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if successful, %FALSE otherwise.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytereader.c"
+               line="667">%TRUE if successful, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="reader" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstByteReader instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="661">a #GstByteReader instance</doc>
             <type name="ByteReader" c:type="const GstByteReader*"/>
           </instance-parameter>
           <parameter name="val"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">Pointer to a #gint64 to store the result</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="662">Pointer to a #gint64 to store the result</doc>
             <type name="gint64" c:type="gint64*"/>
           </parameter>
         </parameters>
       </method>
       <method name="peek_int64_le"
               c:identifier="gst_byte_reader_peek_int64_le">
-        <doc xml:space="preserve">Read a signed 64 bit little endian integer into @val
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytereader.c"
+             line="615">Read a signed 64 bit little endian integer into @val
 but keep the current position.</doc>
+        <source-position filename="libs/gst/base/gstbytereader.h" line="183"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if successful, %FALSE otherwise.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytereader.c"
+               line="623">%TRUE if successful, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="reader" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstByteReader instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="617">a #GstByteReader instance</doc>
             <type name="ByteReader" c:type="const GstByteReader*"/>
           </instance-parameter>
           <parameter name="val"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">Pointer to a #gint64 to store the result</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="618">Pointer to a #gint64 to store the result</doc>
             <type name="gint64" c:type="gint64*"/>
           </parameter>
         </parameters>
       </method>
       <method name="peek_int8" c:identifier="gst_byte_reader_peek_int8">
-        <doc xml:space="preserve">Read a signed 8 bit integer into @val but keep the current position.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if successful, %FALSE otherwise.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytereader.c"
+             line="307">Read a signed 8 bit integer into @val but keep the current position.</doc>
+        <source-position filename="libs/gst/base/gstbytereader.h" line="141"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytereader.c"
+               line="314">%TRUE if successful, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="reader" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstByteReader instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="309">a #GstByteReader instance</doc>
             <type name="ByteReader" c:type="const GstByteReader*"/>
           </instance-parameter>
           <parameter name="val"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">Pointer to a #gint8 to store the result</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="310">Pointer to a #gint8 to store the result</doc>
             <type name="gint8" c:type="gint8*"/>
           </parameter>
         </parameters>
       </method>
       <method name="peek_string_utf8"
               c:identifier="gst_byte_reader_peek_string_utf8">
-        <doc xml:space="preserve">Returns a constant pointer to the current data position if there is
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytereader.c"
+             line="1141">Returns a constant pointer to the current data position if there is
 a NUL-terminated string in the data (this could be just a NUL terminator).
 The current position will be maintained. This will work for any
 NUL-terminated string with a character width of 8 bits, so ASCII,
@@ -8989,20 +12141,27 @@ UTF-8, ISO-8859-N etc.
 No input checking for valid UTF-8 is done.
 
 This function will fail if no NUL-terminator was found in in the data.</doc>
+        <source-position filename="libs/gst/base/gstbytereader.h" line="258"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if a string could be skipped, %FALSE otherwise.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytereader.c"
+               line="1157">%TRUE if a string could be skipped, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="reader" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstByteReader instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="1143">a #GstByteReader instance</doc>
             <type name="ByteReader" c:type="const GstByteReader*"/>
           </instance-parameter>
           <parameter name="str"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="none">
-            <doc xml:space="preserve">address of a
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="1144">address of a
     #gchar pointer variable in which to store the result</doc>
             <array c:type="const gchar**">
               <type name="utf8" c:type="gchar*"/>
@@ -9014,316 +12173,447 @@ This function will fail if no NUL-terminator was found in in the data.</doc>
               c:identifier="gst_byte_reader_peek_sub_reader"
               version="1.6"
               introspectable="0">
-        <doc xml:space="preserve">Initializes a #GstByteReader sub-reader instance to contain @size bytes of
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytereader.c"
+             line="144">Initializes a #GstByteReader sub-reader instance to contain @size bytes of
 data from the current position of @reader. This is useful to read chunked
 formats and make sure that one doesn't read beyond the size of the sub-chunk.
 
 Unlike gst_byte_reader_get_sub_reader(), this function does not modify the
 current position of @reader.</doc>
+        <source-position filename="libs/gst/base/gstbytereader.h" line="61"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">FALSE on error or if @reader does not contain @size more bytes from
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytereader.c"
+               line="157">FALSE on error or if @reader does not contain @size more bytes from
     the current position, and otherwise TRUE</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="reader" transfer-ownership="none">
-            <doc xml:space="preserve">an existing and initialized #GstByteReader instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="146">an existing and initialized #GstByteReader instance</doc>
             <type name="ByteReader" c:type="GstByteReader*"/>
           </instance-parameter>
           <parameter name="sub_reader" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstByteReader instance to initialize as sub-reader</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="147">a #GstByteReader instance to initialize as sub-reader</doc>
             <type name="ByteReader" c:type="GstByteReader*"/>
           </parameter>
           <parameter name="size" transfer-ownership="none">
-            <doc xml:space="preserve">size of @sub_reader in bytes</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="148">size of @sub_reader in bytes</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="peek_uint16_be"
               c:identifier="gst_byte_reader_peek_uint16_be">
-        <doc xml:space="preserve">Read an unsigned 16 bit big endian integer into @val
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytereader.c"
+             line="383">Read an unsigned 16 bit big endian integer into @val
 but keep the current position.</doc>
+        <source-position filename="libs/gst/base/gstbytereader.h" line="150"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if successful, %FALSE otherwise.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytereader.c"
+               line="391">%TRUE if successful, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="reader" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstByteReader instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="385">a #GstByteReader instance</doc>
             <type name="ByteReader" c:type="const GstByteReader*"/>
           </instance-parameter>
           <parameter name="val"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">Pointer to a #guint16 to store the result</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="386">Pointer to a #guint16 to store the result</doc>
             <type name="guint16" c:type="guint16*"/>
           </parameter>
         </parameters>
       </method>
       <method name="peek_uint16_le"
               c:identifier="gst_byte_reader_peek_uint16_le">
-        <doc xml:space="preserve">Read an unsigned 16 bit little endian integer into @val
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytereader.c"
+             line="339">Read an unsigned 16 bit little endian integer into @val
 but keep the current position.</doc>
+        <source-position filename="libs/gst/base/gstbytereader.h" line="144"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if successful, %FALSE otherwise.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytereader.c"
+               line="347">%TRUE if successful, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="reader" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstByteReader instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="341">a #GstByteReader instance</doc>
             <type name="ByteReader" c:type="const GstByteReader*"/>
           </instance-parameter>
           <parameter name="val"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">Pointer to a #guint16 to store the result</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="342">Pointer to a #guint16 to store the result</doc>
             <type name="guint16" c:type="guint16*"/>
           </parameter>
         </parameters>
       </method>
       <method name="peek_uint24_be"
               c:identifier="gst_byte_reader_peek_uint24_be">
-        <doc xml:space="preserve">Read an unsigned 24 bit big endian integer into @val
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytereader.c"
+             line="471">Read an unsigned 24 bit big endian integer into @val
 but keep the current position.</doc>
+        <source-position filename="libs/gst/base/gstbytereader.h" line="162"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if successful, %FALSE otherwise.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytereader.c"
+               line="479">%TRUE if successful, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="reader" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstByteReader instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="473">a #GstByteReader instance</doc>
             <type name="ByteReader" c:type="const GstByteReader*"/>
           </instance-parameter>
           <parameter name="val"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">Pointer to a #guint32 to store the result</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="474">Pointer to a #guint32 to store the result</doc>
             <type name="guint32" c:type="guint32*"/>
           </parameter>
         </parameters>
       </method>
       <method name="peek_uint24_le"
               c:identifier="gst_byte_reader_peek_uint24_le">
-        <doc xml:space="preserve">Read an unsigned 24 bit little endian integer into @val
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytereader.c"
+             line="427">Read an unsigned 24 bit little endian integer into @val
 but keep the current position.</doc>
+        <source-position filename="libs/gst/base/gstbytereader.h" line="156"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if successful, %FALSE otherwise.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytereader.c"
+               line="435">%TRUE if successful, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="reader" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstByteReader instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="429">a #GstByteReader instance</doc>
             <type name="ByteReader" c:type="const GstByteReader*"/>
           </instance-parameter>
           <parameter name="val"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">Pointer to a #guint32 to store the result</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="430">Pointer to a #guint32 to store the result</doc>
             <type name="guint32" c:type="guint32*"/>
           </parameter>
         </parameters>
       </method>
       <method name="peek_uint32_be"
               c:identifier="gst_byte_reader_peek_uint32_be">
-        <doc xml:space="preserve">Read an unsigned 32 bit big endian integer into @val
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytereader.c"
+             line="560">Read an unsigned 32 bit big endian integer into @val
 but keep the current position.</doc>
+        <source-position filename="libs/gst/base/gstbytereader.h" line="174"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if successful, %FALSE otherwise.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytereader.c"
+               line="568">%TRUE if successful, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="reader" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstByteReader instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="562">a #GstByteReader instance</doc>
             <type name="ByteReader" c:type="const GstByteReader*"/>
           </instance-parameter>
           <parameter name="val"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">Pointer to a #guint32 to store the result</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="563">Pointer to a #guint32 to store the result</doc>
             <type name="guint32" c:type="guint32*"/>
           </parameter>
         </parameters>
       </method>
       <method name="peek_uint32_le"
               c:identifier="gst_byte_reader_peek_uint32_le">
-        <doc xml:space="preserve">Read an unsigned 32 bit little endian integer into @val
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytereader.c"
+             line="516">Read an unsigned 32 bit little endian integer into @val
 but keep the current position.</doc>
+        <source-position filename="libs/gst/base/gstbytereader.h" line="168"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if successful, %FALSE otherwise.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytereader.c"
+               line="524">%TRUE if successful, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="reader" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstByteReader instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="518">a #GstByteReader instance</doc>
             <type name="ByteReader" c:type="const GstByteReader*"/>
           </instance-parameter>
           <parameter name="val"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">Pointer to a #guint32 to store the result</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="519">Pointer to a #guint32 to store the result</doc>
             <type name="guint32" c:type="guint32*"/>
           </parameter>
         </parameters>
       </method>
       <method name="peek_uint64_be"
               c:identifier="gst_byte_reader_peek_uint64_be">
-        <doc xml:space="preserve">Read an unsigned 64 bit big endian integer into @val
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytereader.c"
+             line="648">Read an unsigned 64 bit big endian integer into @val
 but keep the current position.</doc>
+        <source-position filename="libs/gst/base/gstbytereader.h" line="186"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if successful, %FALSE otherwise.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytereader.c"
+               line="656">%TRUE if successful, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="reader" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstByteReader instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="650">a #GstByteReader instance</doc>
             <type name="ByteReader" c:type="const GstByteReader*"/>
           </instance-parameter>
           <parameter name="val"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">Pointer to a #guint64 to store the result</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="651">Pointer to a #guint64 to store the result</doc>
             <type name="guint64" c:type="guint64*"/>
           </parameter>
         </parameters>
       </method>
       <method name="peek_uint64_le"
               c:identifier="gst_byte_reader_peek_uint64_le">
-        <doc xml:space="preserve">Read an unsigned 64 bit little endian integer into @val
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytereader.c"
+             line="604">Read an unsigned 64 bit little endian integer into @val
 but keep the current position.</doc>
+        <source-position filename="libs/gst/base/gstbytereader.h" line="180"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if successful, %FALSE otherwise.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytereader.c"
+               line="612">%TRUE if successful, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="reader" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstByteReader instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="606">a #GstByteReader instance</doc>
             <type name="ByteReader" c:type="const GstByteReader*"/>
           </instance-parameter>
           <parameter name="val"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">Pointer to a #guint64 to store the result</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="607">Pointer to a #guint64 to store the result</doc>
             <type name="guint64" c:type="guint64*"/>
           </parameter>
         </parameters>
       </method>
       <method name="peek_uint8" c:identifier="gst_byte_reader_peek_uint8">
-        <doc xml:space="preserve">Read an unsigned 8 bit integer into @val but keep the current position.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if successful, %FALSE otherwise.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytereader.c"
+             line="297">Read an unsigned 8 bit integer into @val but keep the current position.</doc>
+        <source-position filename="libs/gst/base/gstbytereader.h" line="138"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytereader.c"
+               line="304">%TRUE if successful, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="reader" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstByteReader instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="299">a #GstByteReader instance</doc>
             <type name="ByteReader" c:type="const GstByteReader*"/>
           </instance-parameter>
           <parameter name="val"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">Pointer to a #guint8 to store the result</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="300">Pointer to a #guint8 to store the result</doc>
             <type name="guint8" c:type="guint8*"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_pos" c:identifier="gst_byte_reader_set_pos">
-        <doc xml:space="preserve">Sets the new position of a #GstByteReader instance to @pos in bytes.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the position could be set successfully, %FALSE
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytereader.c"
+             line="194">Sets the new position of a #GstByteReader instance to @pos in bytes.</doc>
+        <source-position filename="libs/gst/base/gstbytereader.h" line="69"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytereader.c"
+               line="201">%TRUE if the position could be set successfully, %FALSE
 otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="reader" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstByteReader instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="196">a #GstByteReader instance</doc>
             <type name="ByteReader" c:type="GstByteReader*"/>
           </instance-parameter>
           <parameter name="pos" transfer-ownership="none">
-            <doc xml:space="preserve">The new position in bytes</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="197">The new position in bytes</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="skip" c:identifier="gst_byte_reader_skip">
-        <doc xml:space="preserve">Skips @nbytes bytes of the #GstByteReader instance.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if @nbytes bytes could be skipped, %FALSE otherwise.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytereader.c"
+             line="262">Skips @nbytes bytes of the #GstByteReader instance.</doc>
+        <source-position filename="libs/gst/base/gstbytereader.h" line="81"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytereader.c"
+               line="269">%TRUE if @nbytes bytes could be skipped, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="reader" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstByteReader instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="264">a #GstByteReader instance</doc>
             <type name="ByteReader" c:type="GstByteReader*"/>
           </instance-parameter>
           <parameter name="nbytes" transfer-ownership="none">
-            <doc xml:space="preserve">the number of bytes to skip</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="265">the number of bytes to skip</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="skip_string_utf16"
               c:identifier="gst_byte_reader_skip_string_utf16">
-        <doc xml:space="preserve">Skips a NUL-terminated UTF-16 string in the #GstByteReader instance,
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytereader.c"
+             line="1095">Skips a NUL-terminated UTF-16 string in the #GstByteReader instance,
 advancing the current position to the byte after the string.
 
 No input checking for valid UTF-16 is done.
 
 This function will fail if no NUL-terminator was found in in the data.</doc>
+        <source-position filename="libs/gst/base/gstbytereader.h" line="243"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if a string could be skipped, %FALSE otherwise.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytereader.c"
+               line="1106">%TRUE if a string could be skipped, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="reader" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstByteReader instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="1097">a #GstByteReader instance</doc>
             <type name="ByteReader" c:type="GstByteReader*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="skip_string_utf32"
               c:identifier="gst_byte_reader_skip_string_utf32">
-        <doc xml:space="preserve">Skips a NUL-terminated UTF-32 string in the #GstByteReader instance,
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytereader.c"
+             line="1110">Skips a NUL-terminated UTF-32 string in the #GstByteReader instance,
 advancing the current position to the byte after the string.
 
 No input checking for valid UTF-32 is done.
 
 This function will fail if no NUL-terminator was found in in the data.</doc>
+        <source-position filename="libs/gst/base/gstbytereader.h" line="246"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if a string could be skipped, %FALSE otherwise.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytereader.c"
+               line="1121">%TRUE if a string could be skipped, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="reader" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstByteReader instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="1112">a #GstByteReader instance</doc>
             <type name="ByteReader" c:type="GstByteReader*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="skip_string_utf8"
               c:identifier="gst_byte_reader_skip_string_utf8">
-        <doc xml:space="preserve">Skips a NUL-terminated string in the #GstByteReader instance, advancing
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytereader.c"
+             line="1080">Skips a NUL-terminated string in the #GstByteReader instance, advancing
 the current position to the byte after the string. This will work for
 any NUL-terminated string with a character width of 8 bits, so ASCII,
 UTF-8, ISO-8859-N etc. No input checking for valid UTF-8 is done.
 
 This function will fail if no NUL-terminator was found in in the data.</doc>
+        <source-position filename="libs/gst/base/gstbytereader.h" line="240"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if a string could be skipped, %FALSE otherwise.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytereader.c"
+               line="1091">%TRUE if a string could be skipped, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="reader" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstByteReader instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="1082">a #GstByteReader instance</doc>
             <type name="ByteReader" c:type="GstByteReader*"/>
           </instance-parameter>
         </parameters>
@@ -9331,507 +12621,748 @@ This function will fail if no NUL-terminator was found in in the data.</doc>
       <function name="new"
                 c:identifier="gst_byte_reader_new"
                 introspectable="0">
-        <doc xml:space="preserve">Create a new #GstByteReader instance, which will read from @data.
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytereader.c"
+             line="86">Create a new #GstByteReader instance, which will read from @data.
 
 Free-function: gst_byte_reader_free</doc>
+        <source-position filename="libs/gst/base/gstbytereader.h" line="52"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new #GstByteReader instance</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytereader.c"
+               line="96">a new #GstByteReader instance</doc>
           <type name="ByteReader" c:type="GstByteReader*"/>
         </return-value>
         <parameters>
           <parameter name="data" transfer-ownership="none">
-            <doc xml:space="preserve">data from which the
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="88">data from which the
     #GstByteReader should read</doc>
             <array length="1" zero-terminated="0" c:type="const guint8*">
               <type name="guint8" c:type="guint8"/>
             </array>
           </parameter>
           <parameter name="size" transfer-ownership="none">
-            <doc xml:space="preserve">Size of @data in bytes</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytereader.c"
+                 line="90">Size of @data in bytes</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </function>
     </record>
     <record name="ByteWriter" c:type="GstByteWriter">
-      <doc xml:space="preserve">#GstByteWriter provides a byte writer and reader that can write/read different
+      <doc xml:space="preserve"
+           filename="libs/gst/base/gstbytewriter.c"
+           line="28">#GstByteWriter provides a byte writer and reader that can write/read different
 integer and floating point types to/from a memory buffer. It provides functions
 for writing/reading signed/unsigned, little/big endian integers of 8, 16, 24,
 32 and 64 bits and functions for reading little/big endian floating points numbers of
 32 and 64 bits. It also provides functions to write/read NUL-terminated strings
 in various character encodings.</doc>
+      <source-position filename="libs/gst/base/gstbytewriter.h" line="52"/>
       <field name="parent" writable="1">
-        <doc xml:space="preserve">#GstByteReader parent</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytewriter.h"
+             line="35">#GstByteReader parent</doc>
         <type name="ByteReader" c:type="GstByteReader"/>
       </field>
       <field name="alloc_size" writable="1">
-        <doc xml:space="preserve">Allocation size of the data</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytewriter.h"
+             line="36">Allocation size of the data</doc>
         <type name="guint" c:type="guint"/>
       </field>
       <field name="fixed" writable="1">
-        <doc xml:space="preserve">If %TRUE no reallocations are allowed</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytewriter.h"
+             line="37">If %TRUE no reallocations are allowed</doc>
         <type name="gboolean" c:type="gboolean"/>
       </field>
       <field name="owned" writable="1">
-        <doc xml:space="preserve">If %FALSE no reallocations are allowed and copies of data are returned</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytewriter.h"
+             line="38">If %FALSE no reallocations are allowed and copies of data are returned</doc>
         <type name="gboolean" c:type="gboolean"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
       <method name="ensure_free_space"
               c:identifier="gst_byte_writer_ensure_free_space">
-        <doc xml:space="preserve">Checks if enough free space from the current write cursor is
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytewriter.c"
+             line="362">Checks if enough free space from the current write cursor is
 available and reallocates if necessary.</doc>
+        <source-position filename="libs/gst/base/gstbytewriter.h" line="134"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if at least @size bytes are still available</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytewriter.c"
+               line="370">%TRUE if at least @size bytes are still available</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="writer" transfer-ownership="none">
-            <doc xml:space="preserve">#GstByteWriter instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytewriter.c"
+                 line="364">#GstByteWriter instance</doc>
             <type name="ByteWriter" c:type="GstByteWriter*"/>
           </instance-parameter>
           <parameter name="size" transfer-ownership="none">
-            <doc xml:space="preserve">Number of bytes that should be available</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytewriter.c"
+                 line="365">Number of bytes that should be available</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="fill" c:identifier="gst_byte_writer_fill">
-        <doc xml:space="preserve">Writes @size bytes containing @value to @writer.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the value could be written</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytewriter.c"
+             line="686">Writes @size bytes containing @value to @writer.</doc>
+        <source-position filename="libs/gst/base/gstbytewriter.h" line="206"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytewriter.c"
+               line="694">%TRUE if the value could be written</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="writer" transfer-ownership="none">
-            <doc xml:space="preserve">#GstByteWriter instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytewriter.c"
+                 line="688">#GstByteWriter instance</doc>
             <type name="ByteWriter" c:type="GstByteWriter*"/>
           </instance-parameter>
           <parameter name="value" transfer-ownership="none">
-            <doc xml:space="preserve">Value to be written</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytewriter.c"
+                 line="689">Value to be written</doc>
             <type name="guint8" c:type="guint8"/>
           </parameter>
           <parameter name="size" transfer-ownership="none">
-            <doc xml:space="preserve">Number of bytes to be written</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytewriter.c"
+                 line="690">Number of bytes to be written</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="free" c:identifier="gst_byte_writer_free">
-        <doc xml:space="preserve">Frees @writer and all memory allocated by it.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytewriter.c"
+             line="278">Frees @writer and all memory allocated by it.</doc>
+        <source-position filename="libs/gst/base/gstbytewriter.h" line="73"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="writer" transfer-ownership="full">
-            <doc xml:space="preserve">#GstByteWriter instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytewriter.c"
+                 line="280">#GstByteWriter instance</doc>
             <type name="ByteWriter" c:type="GstByteWriter*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="free_and_get_buffer"
               c:identifier="gst_byte_writer_free_and_get_buffer">
-        <doc xml:space="preserve">Frees @writer and all memory allocated by it except
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytewriter.c"
+             line="317">Frees @writer and all memory allocated by it except
 the current data, which is returned as #GstBuffer.
 
 Free-function: gst_buffer_unref</doc>
+        <source-position filename="libs/gst/base/gstbytewriter.h" line="79"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the current data as buffer. gst_buffer_unref()
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytewriter.c"
+               line="326">the current data as buffer. gst_buffer_unref()
     after usage.</doc>
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </return-value>
         <parameters>
           <instance-parameter name="writer" transfer-ownership="full">
-            <doc xml:space="preserve">#GstByteWriter instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytewriter.c"
+                 line="319">#GstByteWriter instance</doc>
             <type name="ByteWriter" c:type="GstByteWriter*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="free_and_get_data"
               c:identifier="gst_byte_writer_free_and_get_data">
-        <doc xml:space="preserve">Frees @writer and all memory allocated by it except
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytewriter.c"
+             line="293">Frees @writer and all memory allocated by it except
 the current data, which is returned.
 
 Free-function: g_free</doc>
+        <source-position filename="libs/gst/base/gstbytewriter.h" line="76"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the current data. g_free() after usage.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytewriter.c"
+               line="302">the current data. g_free() after usage.</doc>
           <type name="guint8" c:type="guint8*"/>
         </return-value>
         <parameters>
           <instance-parameter name="writer" transfer-ownership="full">
-            <doc xml:space="preserve">#GstByteWriter instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytewriter.c"
+                 line="295">#GstByteWriter instance</doc>
             <type name="ByteWriter" c:type="GstByteWriter*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_remaining"
               c:identifier="gst_byte_writer_get_remaining">
-        <doc xml:space="preserve">Returns the remaining size of data that can still be written. If
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytewriter.c"
+             line="342">Returns the remaining size of data that can still be written. If
 -1 is returned the remaining size is only limited by system resources.</doc>
+        <source-position filename="libs/gst/base/gstbytewriter.h" line="131"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the remaining size of data that can still be written</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytewriter.c"
+               line="349">the remaining size of data that can still be written</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="writer" transfer-ownership="none">
-            <doc xml:space="preserve">#GstByteWriter instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytewriter.c"
+                 line="344">#GstByteWriter instance</doc>
             <type name="ByteWriter" c:type="const GstByteWriter*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="init" c:identifier="gst_byte_writer_init">
-        <doc xml:space="preserve">Initializes @writer to an empty instance</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytewriter.c"
+             line="138">Initializes @writer to an empty instance</doc>
+        <source-position filename="libs/gst/base/gstbytewriter.h" line="64"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="writer" transfer-ownership="none">
-            <doc xml:space="preserve">#GstByteWriter instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytewriter.c"
+                 line="140">#GstByteWriter instance</doc>
             <type name="ByteWriter" c:type="GstByteWriter*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="init_with_data"
               c:identifier="gst_byte_writer_init_with_data">
-        <doc xml:space="preserve">Initializes @writer with the given
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytewriter.c"
+             line="176">Initializes @writer with the given
 memory area. If @initialized is %TRUE it is possible to
 read @size bytes from the #GstByteWriter from the beginning.</doc>
+        <source-position filename="libs/gst/base/gstbytewriter.h" line="70"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="writer" transfer-ownership="none">
-            <doc xml:space="preserve">#GstByteWriter instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytewriter.c"
+                 line="178">#GstByteWriter instance</doc>
             <type name="ByteWriter" c:type="GstByteWriter*"/>
           </instance-parameter>
           <parameter name="data" transfer-ownership="none">
-            <doc xml:space="preserve">Memory area for writing</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytewriter.c"
+                 line="179">Memory area for writing</doc>
             <array length="1" zero-terminated="0" c:type="guint8*">
               <type name="guint8" c:type="guint8"/>
             </array>
           </parameter>
           <parameter name="size" transfer-ownership="none">
-            <doc xml:space="preserve">Size of @data in bytes</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytewriter.c"
+                 line="180">Size of @data in bytes</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="initialized" transfer-ownership="none">
-            <doc xml:space="preserve">If %TRUE the complete data can be read from the beginning</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytewriter.c"
+                 line="181">If %TRUE the complete data can be read from the beginning</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </method>
       <method name="init_with_size"
               c:identifier="gst_byte_writer_init_with_size">
-        <doc xml:space="preserve">Initializes @writer with the given initial data size.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytewriter.c"
+             line="154">Initializes @writer with the given initial data size.</doc>
+        <source-position filename="libs/gst/base/gstbytewriter.h" line="67"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="writer" transfer-ownership="none">
-            <doc xml:space="preserve">#GstByteWriter instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytewriter.c"
+                 line="156">#GstByteWriter instance</doc>
             <type name="ByteWriter" c:type="GstByteWriter*"/>
           </instance-parameter>
           <parameter name="size" transfer-ownership="none">
-            <doc xml:space="preserve">Initial size of data</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytewriter.c"
+                 line="157">Initial size of data</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="fixed" transfer-ownership="none">
-            <doc xml:space="preserve">If %TRUE the data can't be reallocated</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytewriter.c"
+                 line="158">If %TRUE the data can't be reallocated</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </method>
       <method name="put_buffer" c:identifier="gst_byte_writer_put_buffer">
-        <doc xml:space="preserve">Writes @size bytes of @data to @writer.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the data could be written</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytewriter.c"
+             line="697">Writes @size bytes of @data to @writer.</doc>
+        <source-position filename="libs/gst/base/gstbytewriter.h" line="216"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytewriter.c"
+               line="706">%TRUE if the data could be written</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="writer" transfer-ownership="none">
-            <doc xml:space="preserve">#GstByteWriter instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytewriter.c"
+                 line="699">#GstByteWriter instance</doc>
             <type name="ByteWriter" c:type="GstByteWriter*"/>
           </instance-parameter>
           <parameter name="buffer" transfer-ownership="none">
-            <doc xml:space="preserve">source #GstBuffer</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytewriter.c"
+                 line="700">source #GstBuffer</doc>
             <type name="Gst.Buffer" c:type="GstBuffer*"/>
           </parameter>
           <parameter name="offset" transfer-ownership="none">
-            <doc xml:space="preserve">offset to copy from</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytewriter.c"
+                 line="701">offset to copy from</doc>
             <type name="gsize" c:type="gsize"/>
           </parameter>
           <parameter name="size" transfer-ownership="none">
-            <doc xml:space="preserve">total size to copy. If -1, all data is copied</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytewriter.c"
+                 line="702">total size to copy. If -1, all data is copied</doc>
             <type name="gssize" c:type="gssize"/>
           </parameter>
         </parameters>
       </method>
       <method name="put_data" c:identifier="gst_byte_writer_put_data">
-        <doc xml:space="preserve">Writes @size bytes of @data to @writer.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the value could be written</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytewriter.c"
+             line="676">Writes @size bytes of @data to @writer.</doc>
+        <source-position filename="libs/gst/base/gstbytewriter.h" line="203"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytewriter.c"
+               line="684">%TRUE if the value could be written</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="writer" transfer-ownership="none">
-            <doc xml:space="preserve">#GstByteWriter instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytewriter.c"
+                 line="678">#GstByteWriter instance</doc>
             <type name="ByteWriter" c:type="GstByteWriter*"/>
           </instance-parameter>
           <parameter name="data" transfer-ownership="none">
-            <doc xml:space="preserve">Data to write</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytewriter.c"
+                 line="679">Data to write</doc>
             <array length="1" zero-terminated="0" c:type="const guint8*">
               <type name="guint8" c:type="guint8"/>
             </array>
           </parameter>
           <parameter name="size" transfer-ownership="none">
-            <doc xml:space="preserve">Size of @data in bytes</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytewriter.c"
+                 line="680">Size of @data in bytes</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="put_float32_be"
               c:identifier="gst_byte_writer_put_float32_be">
-        <doc xml:space="preserve">Writes a big endian 32 bit float to @writer.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the value could be written</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytewriter.c"
+             line="613">Writes a big endian 32 bit float to @writer.</doc>
+        <source-position filename="libs/gst/base/gstbytewriter.h" line="191"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytewriter.c"
+               line="620">%TRUE if the value could be written</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="writer" transfer-ownership="none">
-            <doc xml:space="preserve">#GstByteWriter instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytewriter.c"
+                 line="615">#GstByteWriter instance</doc>
             <type name="ByteWriter" c:type="GstByteWriter*"/>
           </instance-parameter>
           <parameter name="val" transfer-ownership="none">
-            <doc xml:space="preserve">Value to write</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytewriter.c"
+                 line="616">Value to write</doc>
             <type name="gfloat" c:type="gfloat"/>
           </parameter>
         </parameters>
       </method>
       <method name="put_float32_le"
               c:identifier="gst_byte_writer_put_float32_le">
-        <doc xml:space="preserve">Writes a little endian 32 bit float to @writer.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the value could be written</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytewriter.c"
+             line="631">Writes a little endian 32 bit float to @writer.</doc>
+        <source-position filename="libs/gst/base/gstbytewriter.h" line="194"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytewriter.c"
+               line="638">%TRUE if the value could be written</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="writer" transfer-ownership="none">
-            <doc xml:space="preserve">#GstByteWriter instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytewriter.c"
+                 line="633">#GstByteWriter instance</doc>
             <type name="ByteWriter" c:type="GstByteWriter*"/>
           </instance-parameter>
           <parameter name="val" transfer-ownership="none">
-            <doc xml:space="preserve">Value to write</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytewriter.c"
+                 line="634">Value to write</doc>
             <type name="gfloat" c:type="gfloat"/>
           </parameter>
         </parameters>
       </method>
       <method name="put_float64_be"
               c:identifier="gst_byte_writer_put_float64_be">
-        <doc xml:space="preserve">Writes a big endian 64 bit float to @writer.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the value could be written</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytewriter.c"
+             line="622">Writes a big endian 64 bit float to @writer.</doc>
+        <source-position filename="libs/gst/base/gstbytewriter.h" line="197"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytewriter.c"
+               line="629">%TRUE if the value could be written</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="writer" transfer-ownership="none">
-            <doc xml:space="preserve">#GstByteWriter instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytewriter.c"
+                 line="624">#GstByteWriter instance</doc>
             <type name="ByteWriter" c:type="GstByteWriter*"/>
           </instance-parameter>
           <parameter name="val" transfer-ownership="none">
-            <doc xml:space="preserve">Value to write</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytewriter.c"
+                 line="625">Value to write</doc>
             <type name="gdouble" c:type="gdouble"/>
           </parameter>
         </parameters>
       </method>
       <method name="put_float64_le"
               c:identifier="gst_byte_writer_put_float64_le">
-        <doc xml:space="preserve">Writes a little endian 64 bit float to @writer.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the value could be written</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytewriter.c"
+             line="640">Writes a little endian 64 bit float to @writer.</doc>
+        <source-position filename="libs/gst/base/gstbytewriter.h" line="200"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytewriter.c"
+               line="647">%TRUE if the value could be written</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="writer" transfer-ownership="none">
-            <doc xml:space="preserve">#GstByteWriter instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytewriter.c"
+                 line="642">#GstByteWriter instance</doc>
             <type name="ByteWriter" c:type="GstByteWriter*"/>
           </instance-parameter>
           <parameter name="val" transfer-ownership="none">
-            <doc xml:space="preserve">Value to write</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytewriter.c"
+                 line="643">Value to write</doc>
             <type name="gdouble" c:type="gdouble"/>
           </parameter>
         </parameters>
       </method>
       <method name="put_int16_be" c:identifier="gst_byte_writer_put_int16_be">
-        <doc xml:space="preserve">Writes a signed big endian 16 bit integer to @writer.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the value could be written</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytewriter.c"
+             line="541">Writes a signed big endian 16 bit integer to @writer.</doc>
+        <source-position filename="libs/gst/base/gstbytewriter.h" line="149"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytewriter.c"
+               line="548">%TRUE if the value could be written</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="writer" transfer-ownership="none">
-            <doc xml:space="preserve">#GstByteWriter instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytewriter.c"
+                 line="543">#GstByteWriter instance</doc>
             <type name="ByteWriter" c:type="GstByteWriter*"/>
           </instance-parameter>
           <parameter name="val" transfer-ownership="none">
-            <doc xml:space="preserve">Value to write</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytewriter.c"
+                 line="544">Value to write</doc>
             <type name="gint16" c:type="gint16"/>
           </parameter>
         </parameters>
       </method>
       <method name="put_int16_le" c:identifier="gst_byte_writer_put_int16_le">
-        <doc xml:space="preserve">Writes a signed little endian 16 bit integer to @writer.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the value could be written</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytewriter.c"
+             line="577">Writes a signed little endian 16 bit integer to @writer.</doc>
+        <source-position filename="libs/gst/base/gstbytewriter.h" line="152"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytewriter.c"
+               line="584">%TRUE if the value could be written</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="writer" transfer-ownership="none">
-            <doc xml:space="preserve">#GstByteWriter instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytewriter.c"
+                 line="579">#GstByteWriter instance</doc>
             <type name="ByteWriter" c:type="GstByteWriter*"/>
           </instance-parameter>
           <parameter name="val" transfer-ownership="none">
-            <doc xml:space="preserve">Value to write</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytewriter.c"
+                 line="580">Value to write</doc>
             <type name="gint16" c:type="gint16"/>
           </parameter>
         </parameters>
       </method>
       <method name="put_int24_be" c:identifier="gst_byte_writer_put_int24_be">
-        <doc xml:space="preserve">Writes a signed big endian 24 bit integer to @writer.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the value could be written</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytewriter.c"
+             line="550">Writes a signed big endian 24 bit integer to @writer.</doc>
+        <source-position filename="libs/gst/base/gstbytewriter.h" line="161"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytewriter.c"
+               line="557">%TRUE if the value could be written</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="writer" transfer-ownership="none">
-            <doc xml:space="preserve">#GstByteWriter instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytewriter.c"
+                 line="552">#GstByteWriter instance</doc>
             <type name="ByteWriter" c:type="GstByteWriter*"/>
           </instance-parameter>
           <parameter name="val" transfer-ownership="none">
-            <doc xml:space="preserve">Value to write</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytewriter.c"
+                 line="553">Value to write</doc>
             <type name="gint32" c:type="gint32"/>
           </parameter>
         </parameters>
       </method>
       <method name="put_int24_le" c:identifier="gst_byte_writer_put_int24_le">
-        <doc xml:space="preserve">Writes a signed little endian 24 bit integer to @writer.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the value could be written</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytewriter.c"
+             line="586">Writes a signed little endian 24 bit integer to @writer.</doc>
+        <source-position filename="libs/gst/base/gstbytewriter.h" line="164"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytewriter.c"
+               line="593">%TRUE if the value could be written</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="writer" transfer-ownership="none">
-            <doc xml:space="preserve">#GstByteWriter instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytewriter.c"
+                 line="588">#GstByteWriter instance</doc>
             <type name="ByteWriter" c:type="GstByteWriter*"/>
           </instance-parameter>
           <parameter name="val" transfer-ownership="none">
-            <doc xml:space="preserve">Value to write</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytewriter.c"
+                 line="589">Value to write</doc>
             <type name="gint32" c:type="gint32"/>
           </parameter>
         </parameters>
       </method>
       <method name="put_int32_be" c:identifier="gst_byte_writer_put_int32_be">
-        <doc xml:space="preserve">Writes a signed big endian 32 bit integer to @writer.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the value could be written</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytewriter.c"
+             line="559">Writes a signed big endian 32 bit integer to @writer.</doc>
+        <source-position filename="libs/gst/base/gstbytewriter.h" line="173"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytewriter.c"
+               line="566">%TRUE if the value could be written</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="writer" transfer-ownership="none">
-            <doc xml:space="preserve">#GstByteWriter instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytewriter.c"
+                 line="561">#GstByteWriter instance</doc>
             <type name="ByteWriter" c:type="GstByteWriter*"/>
           </instance-parameter>
           <parameter name="val" transfer-ownership="none">
-            <doc xml:space="preserve">Value to write</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytewriter.c"
+                 line="562">Value to write</doc>
             <type name="gint32" c:type="gint32"/>
           </parameter>
         </parameters>
       </method>
       <method name="put_int32_le" c:identifier="gst_byte_writer_put_int32_le">
-        <doc xml:space="preserve">Writes a signed little endian 32 bit integer to @writer.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the value could be written</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytewriter.c"
+             line="595">Writes a signed little endian 32 bit integer to @writer.</doc>
+        <source-position filename="libs/gst/base/gstbytewriter.h" line="176"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytewriter.c"
+               line="602">%TRUE if the value could be written</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="writer" transfer-ownership="none">
-            <doc xml:space="preserve">#GstByteWriter instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytewriter.c"
+                 line="597">#GstByteWriter instance</doc>
             <type name="ByteWriter" c:type="GstByteWriter*"/>
           </instance-parameter>
           <parameter name="val" transfer-ownership="none">
-            <doc xml:space="preserve">Value to write</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytewriter.c"
+                 line="598">Value to write</doc>
             <type name="gint32" c:type="gint32"/>
           </parameter>
         </parameters>
       </method>
       <method name="put_int64_be" c:identifier="gst_byte_writer_put_int64_be">
-        <doc xml:space="preserve">Writes a signed big endian 64 bit integer to @writer.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the value could be written</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytewriter.c"
+             line="568">Writes a signed big endian 64 bit integer to @writer.</doc>
+        <source-position filename="libs/gst/base/gstbytewriter.h" line="185"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytewriter.c"
+               line="575">%TRUE if the value could be written</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="writer" transfer-ownership="none">
-            <doc xml:space="preserve">#GstByteWriter instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytewriter.c"
+                 line="570">#GstByteWriter instance</doc>
             <type name="ByteWriter" c:type="GstByteWriter*"/>
           </instance-parameter>
           <parameter name="val" transfer-ownership="none">
-            <doc xml:space="preserve">Value to write</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytewriter.c"
+                 line="571">Value to write</doc>
             <type name="gint64" c:type="gint64"/>
           </parameter>
         </parameters>
       </method>
       <method name="put_int64_le" c:identifier="gst_byte_writer_put_int64_le">
-        <doc xml:space="preserve">Writes a signed little endian 64 bit integer to @writer.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the value could be written</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytewriter.c"
+             line="604">Writes a signed little endian 64 bit integer to @writer.</doc>
+        <source-position filename="libs/gst/base/gstbytewriter.h" line="188"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytewriter.c"
+               line="611">%TRUE if the value could be written</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="writer" transfer-ownership="none">
-            <doc xml:space="preserve">#GstByteWriter instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytewriter.c"
+                 line="606">#GstByteWriter instance</doc>
             <type name="ByteWriter" c:type="GstByteWriter*"/>
           </instance-parameter>
           <parameter name="val" transfer-ownership="none">
-            <doc xml:space="preserve">Value to write</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytewriter.c"
+                 line="607">Value to write</doc>
             <type name="gint64" c:type="gint64"/>
           </parameter>
         </parameters>
       </method>
       <method name="put_int8" c:identifier="gst_byte_writer_put_int8">
-        <doc xml:space="preserve">Writes a signed 8 bit integer to @writer.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the value could be written</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytewriter.c"
+             line="532">Writes a signed 8 bit integer to @writer.</doc>
+        <source-position filename="libs/gst/base/gstbytewriter.h" line="140"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytewriter.c"
+               line="539">%TRUE if the value could be written</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="writer" transfer-ownership="none">
-            <doc xml:space="preserve">#GstByteWriter instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytewriter.c"
+                 line="534">#GstByteWriter instance</doc>
             <type name="ByteWriter" c:type="GstByteWriter*"/>
           </instance-parameter>
           <parameter name="val" transfer-ownership="none">
-            <doc xml:space="preserve">Value to write</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytewriter.c"
+                 line="535">Value to write</doc>
             <type name="gint8" c:type="gint8"/>
           </parameter>
         </parameters>
       </method>
       <method name="put_string_utf16"
               c:identifier="gst_byte_writer_put_string_utf16">
-        <doc xml:space="preserve">Writes a NUL-terminated UTF16 string to @writer (including the terminator).</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the value could be written</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytewriter.c"
+             line="658">Writes a NUL-terminated UTF16 string to @writer (including the terminator).</doc>
+        <source-position filename="libs/gst/base/gstbytewriter.h" line="212"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytewriter.c"
+               line="665">%TRUE if the value could be written</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="writer" transfer-ownership="none">
-            <doc xml:space="preserve">#GstByteWriter instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytewriter.c"
+                 line="660">#GstByteWriter instance</doc>
             <type name="ByteWriter" c:type="GstByteWriter*"/>
           </instance-parameter>
           <parameter name="data" transfer-ownership="none">
-            <doc xml:space="preserve">UTF16 string to write</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytewriter.c"
+                 line="661">UTF16 string to write</doc>
             <array c:type="const guint16*">
               <type name="guint16" c:type="guint16"/>
             </array>
@@ -9840,18 +13371,27 @@ read @size bytes from the #GstByteWriter from the beginning.</doc>
       </method>
       <method name="put_string_utf32"
               c:identifier="gst_byte_writer_put_string_utf32">
-        <doc xml:space="preserve">Writes a NUL-terminated UTF32 string to @writer (including the terminator).</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the value could be written</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytewriter.c"
+             line="667">Writes a NUL-terminated UTF32 string to @writer (including the terminator).</doc>
+        <source-position filename="libs/gst/base/gstbytewriter.h" line="215"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytewriter.c"
+               line="674">%TRUE if the value could be written</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="writer" transfer-ownership="none">
-            <doc xml:space="preserve">#GstByteWriter instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytewriter.c"
+                 line="669">#GstByteWriter instance</doc>
             <type name="ByteWriter" c:type="GstByteWriter*"/>
           </instance-parameter>
           <parameter name="data" transfer-ownership="none">
-            <doc xml:space="preserve">UTF32 string to write</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytewriter.c"
+                 line="670">UTF32 string to write</doc>
             <array c:type="const guint32*">
               <type name="guint32" c:type="guint32"/>
             </array>
@@ -9860,220 +13400,327 @@ read @size bytes from the #GstByteWriter from the beginning.</doc>
       </method>
       <method name="put_string_utf8"
               c:identifier="gst_byte_writer_put_string_utf8">
-        <doc xml:space="preserve">Writes a NUL-terminated UTF8 string to @writer (including the terminator).</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the value could be written</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytewriter.c"
+             line="649">Writes a NUL-terminated UTF8 string to @writer (including the terminator).</doc>
+        <source-position filename="libs/gst/base/gstbytewriter.h" line="209"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytewriter.c"
+               line="656">%TRUE if the value could be written</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="writer" transfer-ownership="none">
-            <doc xml:space="preserve">#GstByteWriter instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytewriter.c"
+                 line="651">#GstByteWriter instance</doc>
             <type name="ByteWriter" c:type="GstByteWriter*"/>
           </instance-parameter>
           <parameter name="data" transfer-ownership="none">
-            <doc xml:space="preserve">UTF8 string to write</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytewriter.c"
+                 line="652">UTF8 string to write</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </method>
       <method name="put_uint16_be"
               c:identifier="gst_byte_writer_put_uint16_be">
-        <doc xml:space="preserve">Writes a unsigned big endian 16 bit integer to @writer.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the value could be written</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytewriter.c"
+             line="460">Writes a unsigned big endian 16 bit integer to @writer.</doc>
+        <source-position filename="libs/gst/base/gstbytewriter.h" line="143"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytewriter.c"
+               line="467">%TRUE if the value could be written</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="writer" transfer-ownership="none">
-            <doc xml:space="preserve">#GstByteWriter instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytewriter.c"
+                 line="462">#GstByteWriter instance</doc>
             <type name="ByteWriter" c:type="GstByteWriter*"/>
           </instance-parameter>
           <parameter name="val" transfer-ownership="none">
-            <doc xml:space="preserve">Value to write</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytewriter.c"
+                 line="463">Value to write</doc>
             <type name="guint16" c:type="guint16"/>
           </parameter>
         </parameters>
       </method>
       <method name="put_uint16_le"
               c:identifier="gst_byte_writer_put_uint16_le">
-        <doc xml:space="preserve">Writes a unsigned little endian 16 bit integer to @writer.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the value could be written</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytewriter.c"
+             line="496">Writes a unsigned little endian 16 bit integer to @writer.</doc>
+        <source-position filename="libs/gst/base/gstbytewriter.h" line="146"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytewriter.c"
+               line="503">%TRUE if the value could be written</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="writer" transfer-ownership="none">
-            <doc xml:space="preserve">#GstByteWriter instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytewriter.c"
+                 line="498">#GstByteWriter instance</doc>
             <type name="ByteWriter" c:type="GstByteWriter*"/>
           </instance-parameter>
           <parameter name="val" transfer-ownership="none">
-            <doc xml:space="preserve">Value to write</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytewriter.c"
+                 line="499">Value to write</doc>
             <type name="guint16" c:type="guint16"/>
           </parameter>
         </parameters>
       </method>
       <method name="put_uint24_be"
               c:identifier="gst_byte_writer_put_uint24_be">
-        <doc xml:space="preserve">Writes a unsigned big endian 24 bit integer to @writer.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the value could be written</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytewriter.c"
+             line="469">Writes a unsigned big endian 24 bit integer to @writer.</doc>
+        <source-position filename="libs/gst/base/gstbytewriter.h" line="155"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytewriter.c"
+               line="476">%TRUE if the value could be written</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="writer" transfer-ownership="none">
-            <doc xml:space="preserve">#GstByteWriter instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytewriter.c"
+                 line="471">#GstByteWriter instance</doc>
             <type name="ByteWriter" c:type="GstByteWriter*"/>
           </instance-parameter>
           <parameter name="val" transfer-ownership="none">
-            <doc xml:space="preserve">Value to write</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytewriter.c"
+                 line="472">Value to write</doc>
             <type name="guint32" c:type="guint32"/>
           </parameter>
         </parameters>
       </method>
       <method name="put_uint24_le"
               c:identifier="gst_byte_writer_put_uint24_le">
-        <doc xml:space="preserve">Writes a unsigned little endian 24 bit integer to @writer.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the value could be written</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytewriter.c"
+             line="505">Writes a unsigned little endian 24 bit integer to @writer.</doc>
+        <source-position filename="libs/gst/base/gstbytewriter.h" line="158"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytewriter.c"
+               line="512">%TRUE if the value could be written</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="writer" transfer-ownership="none">
-            <doc xml:space="preserve">#GstByteWriter instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytewriter.c"
+                 line="507">#GstByteWriter instance</doc>
             <type name="ByteWriter" c:type="GstByteWriter*"/>
           </instance-parameter>
           <parameter name="val" transfer-ownership="none">
-            <doc xml:space="preserve">Value to write</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytewriter.c"
+                 line="508">Value to write</doc>
             <type name="guint32" c:type="guint32"/>
           </parameter>
         </parameters>
       </method>
       <method name="put_uint32_be"
               c:identifier="gst_byte_writer_put_uint32_be">
-        <doc xml:space="preserve">Writes a unsigned big endian 32 bit integer to @writer.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the value could be written</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytewriter.c"
+             line="478">Writes a unsigned big endian 32 bit integer to @writer.</doc>
+        <source-position filename="libs/gst/base/gstbytewriter.h" line="167"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytewriter.c"
+               line="485">%TRUE if the value could be written</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="writer" transfer-ownership="none">
-            <doc xml:space="preserve">#GstByteWriter instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytewriter.c"
+                 line="480">#GstByteWriter instance</doc>
             <type name="ByteWriter" c:type="GstByteWriter*"/>
           </instance-parameter>
           <parameter name="val" transfer-ownership="none">
-            <doc xml:space="preserve">Value to write</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytewriter.c"
+                 line="481">Value to write</doc>
             <type name="guint32" c:type="guint32"/>
           </parameter>
         </parameters>
       </method>
       <method name="put_uint32_le"
               c:identifier="gst_byte_writer_put_uint32_le">
-        <doc xml:space="preserve">Writes a unsigned little endian 32 bit integer to @writer.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the value could be written</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytewriter.c"
+             line="514">Writes a unsigned little endian 32 bit integer to @writer.</doc>
+        <source-position filename="libs/gst/base/gstbytewriter.h" line="170"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytewriter.c"
+               line="521">%TRUE if the value could be written</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="writer" transfer-ownership="none">
-            <doc xml:space="preserve">#GstByteWriter instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytewriter.c"
+                 line="516">#GstByteWriter instance</doc>
             <type name="ByteWriter" c:type="GstByteWriter*"/>
           </instance-parameter>
           <parameter name="val" transfer-ownership="none">
-            <doc xml:space="preserve">Value to write</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytewriter.c"
+                 line="517">Value to write</doc>
             <type name="guint32" c:type="guint32"/>
           </parameter>
         </parameters>
       </method>
       <method name="put_uint64_be"
               c:identifier="gst_byte_writer_put_uint64_be">
-        <doc xml:space="preserve">Writes a unsigned big endian 64 bit integer to @writer.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the value could be written</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytewriter.c"
+             line="487">Writes a unsigned big endian 64 bit integer to @writer.</doc>
+        <source-position filename="libs/gst/base/gstbytewriter.h" line="179"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytewriter.c"
+               line="494">%TRUE if the value could be written</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="writer" transfer-ownership="none">
-            <doc xml:space="preserve">#GstByteWriter instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytewriter.c"
+                 line="489">#GstByteWriter instance</doc>
             <type name="ByteWriter" c:type="GstByteWriter*"/>
           </instance-parameter>
           <parameter name="val" transfer-ownership="none">
-            <doc xml:space="preserve">Value to write</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytewriter.c"
+                 line="490">Value to write</doc>
             <type name="guint64" c:type="guint64"/>
           </parameter>
         </parameters>
       </method>
       <method name="put_uint64_le"
               c:identifier="gst_byte_writer_put_uint64_le">
-        <doc xml:space="preserve">Writes a unsigned little endian 64 bit integer to @writer.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the value could be written</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytewriter.c"
+             line="523">Writes a unsigned little endian 64 bit integer to @writer.</doc>
+        <source-position filename="libs/gst/base/gstbytewriter.h" line="182"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytewriter.c"
+               line="530">%TRUE if the value could be written</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="writer" transfer-ownership="none">
-            <doc xml:space="preserve">#GstByteWriter instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytewriter.c"
+                 line="525">#GstByteWriter instance</doc>
             <type name="ByteWriter" c:type="GstByteWriter*"/>
           </instance-parameter>
           <parameter name="val" transfer-ownership="none">
-            <doc xml:space="preserve">Value to write</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytewriter.c"
+                 line="526">Value to write</doc>
             <type name="guint64" c:type="guint64"/>
           </parameter>
         </parameters>
       </method>
       <method name="put_uint8" c:identifier="gst_byte_writer_put_uint8">
-        <doc xml:space="preserve">Writes a unsigned 8 bit integer to @writer.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the value could be written</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytewriter.c"
+             line="451">Writes a unsigned 8 bit integer to @writer.</doc>
+        <source-position filename="libs/gst/base/gstbytewriter.h" line="137"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytewriter.c"
+               line="458">%TRUE if the value could be written</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="writer" transfer-ownership="none">
-            <doc xml:space="preserve">#GstByteWriter instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytewriter.c"
+                 line="453">#GstByteWriter instance</doc>
             <type name="ByteWriter" c:type="GstByteWriter*"/>
           </instance-parameter>
           <parameter name="val" transfer-ownership="none">
-            <doc xml:space="preserve">Value to write</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytewriter.c"
+                 line="454">Value to write</doc>
             <type name="guint8" c:type="guint8"/>
           </parameter>
         </parameters>
       </method>
       <method name="reset" c:identifier="gst_byte_writer_reset">
-        <doc xml:space="preserve">Resets @writer and frees the data if it's
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytewriter.c"
+             line="202">Resets @writer and frees the data if it's
 owned by @writer.</doc>
+        <source-position filename="libs/gst/base/gstbytewriter.h" line="82"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="writer" transfer-ownership="none">
-            <doc xml:space="preserve">#GstByteWriter instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytewriter.c"
+                 line="204">#GstByteWriter instance</doc>
             <type name="ByteWriter" c:type="GstByteWriter*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="reset_and_get_buffer"
               c:identifier="gst_byte_writer_reset_and_get_buffer">
-        <doc xml:space="preserve">Resets @writer and returns the current data as buffer.
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytewriter.c"
+             line="246">Resets @writer and returns the current data as buffer.
 
 Free-function: gst_buffer_unref</doc>
+        <source-position filename="libs/gst/base/gstbytewriter.h" line="88"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the current data as buffer. gst_buffer_unref()
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytewriter.c"
+               line="254">the current data as buffer. gst_buffer_unref()
     after usage.</doc>
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </return-value>
         <parameters>
           <instance-parameter name="writer" transfer-ownership="none">
-            <doc xml:space="preserve">#GstByteWriter instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytewriter.c"
+                 line="248">#GstByteWriter instance</doc>
             <type name="ByteWriter" c:type="GstByteWriter*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="reset_and_get_data"
               c:identifier="gst_byte_writer_reset_and_get_data">
-        <doc xml:space="preserve">Resets @writer and returns the current data.
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytewriter.c"
+             line="219">Resets @writer and returns the current data.
 
 Free-function: g_free</doc>
+        <source-position filename="libs/gst/base/gstbytewriter.h" line="85"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the current data. g_free() after
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytewriter.c"
+               line="227">the current data. g_free() after
 usage.</doc>
           <array zero-terminated="0" c:type="guint8*">
             <type name="guint8" c:type="guint8"/>
@@ -10081,7 +13728,9 @@ usage.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="writer" transfer-ownership="none">
-            <doc xml:space="preserve">#GstByteWriter instance</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytewriter.c"
+                 line="221">#GstByteWriter instance</doc>
             <type name="ByteWriter" c:type="GstByteWriter*"/>
           </instance-parameter>
         </parameters>
@@ -10089,37 +13738,53 @@ usage.</doc>
       <function name="new"
                 c:identifier="gst_byte_writer_new"
                 introspectable="0">
-        <doc xml:space="preserve">Creates a new, empty #GstByteWriter instance
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytewriter.c"
+             line="67">Creates a new, empty #GstByteWriter instance
 
 Free-function: gst_byte_writer_free</doc>
+        <source-position filename="libs/gst/base/gstbytewriter.h" line="55"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new, empty #GstByteWriter instance</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytewriter.c"
+               line="74">a new, empty #GstByteWriter instance</doc>
           <type name="ByteWriter" c:type="GstByteWriter*"/>
         </return-value>
       </function>
       <function name="new_with_data"
                 c:identifier="gst_byte_writer_new_with_data"
                 introspectable="0">
-        <doc xml:space="preserve">Creates a new #GstByteWriter instance with the given
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytewriter.c"
+             line="110">Creates a new #GstByteWriter instance with the given
 memory area. If @initialized is %TRUE it is possible to
 read @size bytes from the #GstByteWriter from the beginning.
 
 Free-function: gst_byte_writer_free</doc>
+        <source-position filename="libs/gst/base/gstbytewriter.h" line="61"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new #GstByteWriter instance</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytewriter.c"
+               line="122">a new #GstByteWriter instance</doc>
           <type name="ByteWriter" c:type="GstByteWriter*"/>
         </return-value>
         <parameters>
           <parameter name="data" transfer-ownership="none">
-            <doc xml:space="preserve">Memory area for writing</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytewriter.c"
+                 line="112">Memory area for writing</doc>
             <type name="guint8" c:type="guint8*"/>
           </parameter>
           <parameter name="size" transfer-ownership="none">
-            <doc xml:space="preserve">Size of @data in bytes</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytewriter.c"
+                 line="113">Size of @data in bytes</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="initialized" transfer-ownership="none">
-            <doc xml:space="preserve">If %TRUE the complete data can be read from the beginning</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytewriter.c"
+                 line="114">If %TRUE the complete data can be read from the beginning</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
@@ -10127,46 +13792,255 @@ Free-function: gst_byte_writer_free</doc>
       <function name="new_with_size"
                 c:identifier="gst_byte_writer_new_with_size"
                 introspectable="0">
-        <doc xml:space="preserve">Creates a new #GstByteWriter instance with the given
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytewriter.c"
+             line="85">Creates a new #GstByteWriter instance with the given
 initial data size.
 
 Free-function: gst_byte_writer_free</doc>
+        <source-position filename="libs/gst/base/gstbytewriter.h" line="58"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new #GstByteWriter instance</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytewriter.c"
+               line="95">a new #GstByteWriter instance</doc>
           <type name="ByteWriter" c:type="GstByteWriter*"/>
         </return-value>
         <parameters>
           <parameter name="size" transfer-ownership="none">
-            <doc xml:space="preserve">Initial size of data</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytewriter.c"
+                 line="87">Initial size of data</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="fixed" transfer-ownership="none">
-            <doc xml:space="preserve">If %TRUE the data can't be reallocated</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstbytewriter.c"
+                 line="88">If %TRUE the data can't be reallocated</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </function>
     </record>
+    <function-macro name="COLLECT_PADS"
+                    c:identifier="GST_COLLECT_PADS"
+                    introspectable="0">
+      <source-position filename="libs/gst/base/gstcollectpads.h" line="32"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="COLLECT_PADS_CLASS"
+                    c:identifier="GST_COLLECT_PADS_CLASS"
+                    introspectable="0">
+      <source-position filename="libs/gst/base/gstcollectpads.h" line="33"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="COLLECT_PADS_DTS"
+                    c:identifier="GST_COLLECT_PADS_DTS"
+                    version="1.6"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="libs/gst/base/gstcollectpads.h"
+           line="107">Returns the DTS that has been converted to running time when using
+gst_collect_pads_clip_running_time(). Unlike the value saved into
+the buffer, this value is of type gint64 and may be negative. This allow
+properly handling streams with frame reordering where the first DTS may
+be negative. If the initial DTS was not set, this value will be
+set to %G_MININT64.</doc>
+      <source-position filename="libs/gst/base/gstcollectpads.h" line="120"/>
+      <parameters>
+        <parameter name="data">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstcollectpads.h"
+               line="109">A #GstCollectData.</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="COLLECT_PADS_DTS_IS_VALID"
+                    c:identifier="GST_COLLECT_PADS_DTS_IS_VALID"
+                    version="1.6"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="libs/gst/base/gstcollectpads.h"
+           line="122">Check if running DTS value store is valid.</doc>
+      <source-position filename="libs/gst/base/gstcollectpads.h" line="130"/>
+      <parameters>
+        <parameter name="data">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstcollectpads.h"
+               line="124">A #GstCollectData.</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="COLLECT_PADS_GET_CLASS"
+                    c:identifier="GST_COLLECT_PADS_GET_CLASS"
+                    introspectable="0">
+      <source-position filename="libs/gst/base/gstcollectpads.h" line="34"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="COLLECT_PADS_GET_STREAM_LOCK"
+                    c:identifier="GST_COLLECT_PADS_GET_STREAM_LOCK"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="libs/gst/base/gstcollectpads.h"
+           line="291">Get the stream lock of @pads. The stream lock is used to coordinate and
+serialize execution among the various streams being collected, and in
+protecting the resources used to accomplish this.</doc>
+      <source-position filename="libs/gst/base/gstcollectpads.h" line="299"/>
+      <parameters>
+        <parameter name="pads">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstcollectpads.h"
+               line="293">a #GstCollectPads</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="COLLECT_PADS_STATE"
+                    c:identifier="GST_COLLECT_PADS_STATE"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="libs/gst/base/gstcollectpads.h"
+           line="74">A flags word containing #GstCollectPadsStateFlags flags set
+on this collected pad.</doc>
+      <source-position filename="libs/gst/base/gstcollectpads.h" line="81"/>
+      <parameters>
+        <parameter name="data">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstcollectpads.h"
+               line="76">a #GstCollectData.</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="COLLECT_PADS_STATE_IS_SET"
+                    c:identifier="GST_COLLECT_PADS_STATE_IS_SET"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="libs/gst/base/gstcollectpads.h"
+           line="82">Gives the status of a specific flag on a collected pad.</doc>
+      <source-position filename="libs/gst/base/gstcollectpads.h" line="89"/>
+      <parameters>
+        <parameter name="data">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstcollectpads.h"
+               line="84">a #GstCollectData.</doc>
+        </parameter>
+        <parameter name="flag">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstcollectpads.h"
+               line="85">the #GstCollectPadsStateFlags to check.</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="COLLECT_PADS_STATE_SET"
+                    c:identifier="GST_COLLECT_PADS_STATE_SET"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="libs/gst/base/gstcollectpads.h"
+           line="90">Sets a state flag on a collected pad.</doc>
+      <source-position filename="libs/gst/base/gstcollectpads.h" line="97"/>
+      <parameters>
+        <parameter name="data">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstcollectpads.h"
+               line="92">a #GstCollectData.</doc>
+        </parameter>
+        <parameter name="flag">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstcollectpads.h"
+               line="93">the #GstCollectPadsStateFlags to set.</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="COLLECT_PADS_STATE_UNSET"
+                    c:identifier="GST_COLLECT_PADS_STATE_UNSET"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="libs/gst/base/gstcollectpads.h"
+           line="98">Clears a state flag on a collected pad.</doc>
+      <source-position filename="libs/gst/base/gstcollectpads.h" line="105"/>
+      <parameters>
+        <parameter name="data">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstcollectpads.h"
+               line="100">a #GstCollectData.</doc>
+        </parameter>
+        <parameter name="flag">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstcollectpads.h"
+               line="101">the #GstCollectPadsStateFlags to clear.</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="COLLECT_PADS_STREAM_LOCK"
+                    c:identifier="GST_COLLECT_PADS_STREAM_LOCK"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="libs/gst/base/gstcollectpads.h"
+           line="300">Lock the stream lock of @pads.</doc>
+      <source-position filename="libs/gst/base/gstcollectpads.h" line="306"/>
+      <parameters>
+        <parameter name="pads">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstcollectpads.h"
+               line="302">a #GstCollectPads</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="COLLECT_PADS_STREAM_UNLOCK"
+                    c:identifier="GST_COLLECT_PADS_STREAM_UNLOCK"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="libs/gst/base/gstcollectpads.h"
+           line="307">Unlock the stream lock of @pads.</doc>
+      <source-position filename="libs/gst/base/gstcollectpads.h" line="313"/>
+      <parameters>
+        <parameter name="pads">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstcollectpads.h"
+               line="309">a #GstCollectPads</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
     <record name="CollectData" c:type="GstCollectData">
-      <doc xml:space="preserve">Structure used by the collect_pads.</doc>
+      <doc xml:space="preserve"
+           filename="libs/gst/base/gstcollectpads.h"
+           line="132">Structure used by the collect_pads.</doc>
+      <source-position filename="libs/gst/base/gstcollectpads.h" line="168"/>
       <field name="collect" writable="1">
-        <doc xml:space="preserve">owner #GstCollectPads</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstcollectpads.h"
+             line="134">owner #GstCollectPads</doc>
         <type name="CollectPads" c:type="GstCollectPads*"/>
       </field>
       <field name="pad" writable="1">
-        <doc xml:space="preserve">#GstPad managed by this data</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstcollectpads.h"
+             line="135">#GstPad managed by this data</doc>
         <type name="Gst.Pad" c:type="GstPad*"/>
       </field>
       <field name="buffer" writable="1">
-        <doc xml:space="preserve">currently queued buffer.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstcollectpads.h"
+             line="136">currently queued buffer.</doc>
         <type name="Gst.Buffer" c:type="GstBuffer*"/>
       </field>
       <field name="pos" writable="1">
-        <doc xml:space="preserve">position in the buffer</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstcollectpads.h"
+             line="137">position in the buffer</doc>
         <type name="guint" c:type="guint"/>
       </field>
       <field name="segment" writable="1">
-        <doc xml:space="preserve">last segment received.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstcollectpads.h"
+             line="138">last segment received.</doc>
         <type name="Gst.Segment" c:type="GstSegment"/>
       </field>
       <field name="state" readable="0" private="1">
@@ -10176,13 +14050,16 @@ Free-function: gst_byte_writer_free</doc>
         <type name="CollectDataPrivate" c:type="GstCollectDataPrivate*"/>
       </field>
       <union name="ABI" c:type="ABI">
+        <source-position filename="libs/gst/base/gstcollectpads.h" line="167"/>
         <record name="abi" c:type="abi">
+          <source-position filename="libs/gst/base/gstcollectpads.h"
+                           line="165"/>
           <field name="dts" writable="1">
             <type name="gint64" c:type="gint64"/>
           </field>
         </record>
         <field name="_gst_reserved" readable="0" private="1">
-          <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+          <array zero-terminated="0" fixed-size="4">
             <type name="gpointer" c:type="gpointer"/>
           </array>
         </field>
@@ -10190,15 +14067,20 @@ Free-function: gst_byte_writer_free</doc>
     </record>
     <callback name="CollectDataDestroyNotify"
               c:type="GstCollectDataDestroyNotify">
-      <doc xml:space="preserve">A function that will be called when the #GstCollectData will be freed.
+      <doc xml:space="preserve"
+           filename="libs/gst/base/gstcollectpads.h"
+           line="44">A function that will be called when the #GstCollectData will be freed.
 It is passed the pointer to the structure and should free any custom
 memory and resources allocated for it.</doc>
+      <source-position filename="libs/gst/base/gstcollectpads.h" line="52"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="data" transfer-ownership="none">
-          <doc xml:space="preserve">the #GstCollectData that will be freed</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstcollectpads.h"
+               line="46">the #GstCollectData that will be freed</doc>
           <type name="CollectData" c:type="GstCollectData*"/>
         </parameter>
       </parameters>
@@ -10206,6 +14088,7 @@ memory and resources allocated for it.</doc>
     <record name="CollectDataPrivate"
             c:type="GstCollectDataPrivate"
             disguised="1">
+      <source-position filename="libs/gst/base/gstcollectpads.h" line="39"/>
     </record>
     <class name="CollectPads"
            c:symbol-prefix="collect_pads"
@@ -10214,7 +14097,9 @@ memory and resources allocated for it.</doc>
            glib:type-name="GstCollectPads"
            glib:get-type="gst_collect_pads_get_type"
            glib:type-struct="CollectPadsClass">
-      <doc xml:space="preserve">Manages a set of pads that operate in collect mode. This means that control
+      <doc xml:space="preserve"
+           filename="libs/gst/base/gstcollectpads.c"
+           line="23">Manages a set of pads that operate in collect mode. This means that control
 is given to the manager of this object when all pads have data.
 
   * Collectpads are created with gst_collect_pads_new(). A callback should then
@@ -10250,17 +14135,25 @@ is given to the manager of this object when all pads have data.
     CollectPads element is not waiting for data to be collected on non-waiting pads.
     Thus these pads may but need not have data when the callback is called.
     All pads are in waiting mode by default.</doc>
+      <source-position filename="libs/gst/base/gstcollectpads.h" line="341"/>
       <constructor name="new" c:identifier="gst_collect_pads_new">
-        <doc xml:space="preserve">Create a new instance of #GstCollectPads.
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstcollectpads.c"
+             line="273">Create a new instance of #GstCollectPads.
 
 MT safe.</doc>
+        <source-position filename="libs/gst/base/gstcollectpads.h" line="349"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new #GstCollectPads, or %NULL in case of an error.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstcollectpads.c"
+               line="280">a new #GstCollectPads, or %NULL in case of an error.</doc>
           <type name="CollectPads" c:type="GstCollectPads*"/>
         </return-value>
       </constructor>
       <method name="add_pad" c:identifier="gst_collect_pads_add_pad">
-        <doc xml:space="preserve">Add a pad to the collection of collect pads. The pad has to be
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstcollectpads.c"
+             line="585">Add a pad to the collection of collect pads. The pad has to be
 a sinkpad. The refcount of the pad is incremented. Use
 gst_collect_pads_remove_pad() to remove the pad from the collection
 again.
@@ -10285,40 +14178,55 @@ The pad will be automatically activated in push mode when @pads is
 started.
 
 MT safe.</doc>
+        <source-position filename="libs/gst/base/gstcollectpads.h" line="385"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">a new #GstCollectData to identify the
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstcollectpads.c"
+               line="620">a new #GstCollectData to identify the
   new pad. Or %NULL if wrong parameters are supplied.</doc>
           <type name="CollectData" c:type="GstCollectData*"/>
         </return-value>
         <parameters>
           <instance-parameter name="pads" transfer-ownership="none">
-            <doc xml:space="preserve">the collectpads to use</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstcollectpads.c"
+                 line="587">the collectpads to use</doc>
             <type name="CollectPads" c:type="GstCollectPads*"/>
           </instance-parameter>
           <parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">the pad to add</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstcollectpads.c"
+                 line="588">the pad to add</doc>
             <type name="Gst.Pad" c:type="GstPad*"/>
           </parameter>
           <parameter name="size" transfer-ownership="none">
-            <doc xml:space="preserve">the size of the returned #GstCollectData structure</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstcollectpads.c"
+                 line="589">the size of the returned #GstCollectData structure</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="destroy_notify"
                      transfer-ownership="none"
                      scope="async">
-            <doc xml:space="preserve">function to be called before the returned
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstcollectpads.c"
+                 line="590">function to be called before the returned
   #GstCollectData structure is freed</doc>
             <type name="CollectDataDestroyNotify"
                   c:type="GstCollectDataDestroyNotify"/>
           </parameter>
           <parameter name="lock" transfer-ownership="none">
-            <doc xml:space="preserve">whether to lock this pad in usual waiting state</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstcollectpads.c"
+                 line="592">whether to lock this pad in usual waiting state</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </method>
       <method name="available" c:identifier="gst_collect_pads_available">
-        <doc xml:space="preserve">Query how much bytes can be read from each queued buffer. This means
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstcollectpads.c"
+             line="1012">Query how much bytes can be read from each queued buffer. This means
 that the result of this call is the maximum number of bytes that can
 be read from each of the pads.
 
@@ -10326,40 +14234,54 @@ This function should be called with @pads STREAM_LOCK held, such as
 in the callback.
 
 MT safe.</doc>
+        <source-position filename="libs/gst/base/gstcollectpads.h" line="413"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The maximum number of bytes queued on all pads. This function
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstcollectpads.c"
+               line="1025">The maximum number of bytes queued on all pads. This function
 returns 0 if a pad has no queued buffer.</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="pads" transfer-ownership="none">
-            <doc xml:space="preserve">the collectpads to query</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstcollectpads.c"
+                 line="1014">the collectpads to query</doc>
             <type name="CollectPads" c:type="GstCollectPads*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="clip_running_time"
               c:identifier="gst_collect_pads_clip_running_time">
-        <doc xml:space="preserve">Convenience clipping function that converts incoming buffer's timestamp
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstcollectpads.c"
+             line="472">Convenience clipping function that converts incoming buffer's timestamp
 to running time, or clips the buffer if outside configured segment.
 
 Since 1.6, this clipping function also sets the DTS parameter of the
 GstCollectData structure. This version of the running time DTS can be
 negative. G_MININT64 is used to indicate invalid value.</doc>
+        <source-position filename="libs/gst/base/gstcollectpads.h" line="434"/>
         <return-value transfer-ownership="none">
           <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
         <parameters>
           <instance-parameter name="pads" transfer-ownership="none">
-            <doc xml:space="preserve">the collectpads to use</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstcollectpads.c"
+                 line="474">the collectpads to use</doc>
             <type name="CollectPads" c:type="GstCollectPads*"/>
           </instance-parameter>
           <parameter name="cdata" transfer-ownership="none">
-            <doc xml:space="preserve">collect data of corresponding pad</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstcollectpads.c"
+                 line="475">collect data of corresponding pad</doc>
             <type name="CollectData" c:type="GstCollectData*"/>
           </parameter>
           <parameter name="buf" transfer-ownership="none">
-            <doc xml:space="preserve">buffer being clipped</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstcollectpads.c"
+                 line="476">buffer being clipped</doc>
             <type name="Gst.Buffer" c:type="GstBuffer*"/>
           </parameter>
           <parameter name="outbuf"
@@ -10368,215 +14290,297 @@ negative. G_MININT64 is used to indicate invalid value.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">output buffer with running time, or NULL if clipped</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstcollectpads.c"
+                 line="477">output buffer with running time, or NULL if clipped</doc>
             <type name="Gst.Buffer" c:type="GstBuffer**"/>
           </parameter>
           <parameter name="user_data"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">user data (unused)</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstcollectpads.c"
+                 line="478">user data (unused)</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
         </parameters>
       </method>
       <method name="event_default"
               c:identifier="gst_collect_pads_event_default">
-        <doc xml:space="preserve">Default #GstCollectPads event handling that elements should always
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstcollectpads.c"
+             line="1647">Default #GstCollectPads event handling that elements should always
 chain up to to ensure proper operation.  Element might however indicate
 event should not be forwarded downstream.</doc>
+        <source-position filename="libs/gst/base/gstcollectpads.h" line="442"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="pads" transfer-ownership="none">
-            <doc xml:space="preserve">the collectpads to use</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstcollectpads.c"
+                 line="1649">the collectpads to use</doc>
             <type name="CollectPads" c:type="GstCollectPads*"/>
           </instance-parameter>
           <parameter name="data" transfer-ownership="none">
-            <doc xml:space="preserve">collect data of corresponding pad</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstcollectpads.c"
+                 line="1650">collect data of corresponding pad</doc>
             <type name="CollectData" c:type="GstCollectData*"/>
           </parameter>
           <parameter name="event" transfer-ownership="none">
-            <doc xml:space="preserve">event being processed</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstcollectpads.c"
+                 line="1651">event being processed</doc>
             <type name="Gst.Event" c:type="GstEvent*"/>
           </parameter>
           <parameter name="discard" transfer-ownership="none">
-            <doc xml:space="preserve">process but do not send event downstream</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstcollectpads.c"
+                 line="1652">process but do not send event downstream</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </method>
       <method name="flush" c:identifier="gst_collect_pads_flush">
-        <doc xml:space="preserve">Flush @size bytes from the pad @data.
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstcollectpads.c"
+             line="1081">Flush @size bytes from the pad @data.
 
 This function should be called with @pads STREAM_LOCK held, such as
 in the callback.
 
 MT safe.</doc>
+        <source-position filename="libs/gst/base/gstcollectpads.h" line="416"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The number of bytes flushed This can be less than @size and
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstcollectpads.c"
+               line="1094">The number of bytes flushed This can be less than @size and
 is 0 if the pad was end-of-stream.</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="pads" transfer-ownership="none">
-            <doc xml:space="preserve">the collectpads to query</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstcollectpads.c"
+                 line="1083">the collectpads to query</doc>
             <type name="CollectPads" c:type="GstCollectPads*"/>
           </instance-parameter>
           <parameter name="data" transfer-ownership="none">
-            <doc xml:space="preserve">the data to use</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstcollectpads.c"
+                 line="1084">the data to use</doc>
             <type name="CollectData" c:type="GstCollectData*"/>
           </parameter>
           <parameter name="size" transfer-ownership="none">
-            <doc xml:space="preserve">the number of bytes to flush</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstcollectpads.c"
+                 line="1085">the number of bytes to flush</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="peek" c:identifier="gst_collect_pads_peek">
-        <doc xml:space="preserve">Peek at the buffer currently queued in @data. This function
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstcollectpads.c"
+             line="930">Peek at the buffer currently queued in @data. This function
 should be called with the @pads STREAM_LOCK held, such as in the callback
 handler.
 
 MT safe.</doc>
+        <source-position filename="libs/gst/base/gstcollectpads.h" line="405"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">The buffer in @data or %NULL if no
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstcollectpads.c"
+               line="941">The buffer in @data or %NULL if no
 buffer is queued. should unref the buffer after usage.</doc>
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </return-value>
         <parameters>
           <instance-parameter name="pads" transfer-ownership="none">
-            <doc xml:space="preserve">the collectpads to peek</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstcollectpads.c"
+                 line="932">the collectpads to peek</doc>
             <type name="CollectPads" c:type="GstCollectPads*"/>
           </instance-parameter>
           <parameter name="data" transfer-ownership="none">
-            <doc xml:space="preserve">the data to use</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstcollectpads.c"
+                 line="933">the data to use</doc>
             <type name="CollectData" c:type="GstCollectData*"/>
           </parameter>
         </parameters>
       </method>
       <method name="pop" c:identifier="gst_collect_pads_pop">
-        <doc xml:space="preserve">Pop the buffer currently queued in @data. This function
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstcollectpads.c"
+             line="962">Pop the buffer currently queued in @data. This function
 should be called with the @pads STREAM_LOCK held, such as in the callback
 handler.
 
 MT safe.</doc>
+        <source-position filename="libs/gst/base/gstcollectpads.h" line="408"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">The buffer in @data or %NULL if no
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstcollectpads.c"
+               line="973">The buffer in @data or %NULL if no
 buffer was queued. You should unref the buffer after usage.</doc>
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </return-value>
         <parameters>
           <instance-parameter name="pads" transfer-ownership="none">
-            <doc xml:space="preserve">the collectpads to pop</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstcollectpads.c"
+                 line="964">the collectpads to pop</doc>
             <type name="CollectPads" c:type="GstCollectPads*"/>
           </instance-parameter>
           <parameter name="data" transfer-ownership="none">
-            <doc xml:space="preserve">the data to use</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstcollectpads.c"
+                 line="965">the data to use</doc>
             <type name="CollectData" c:type="GstCollectData*"/>
           </parameter>
         </parameters>
       </method>
       <method name="query_default"
               c:identifier="gst_collect_pads_query_default">
-        <doc xml:space="preserve">Default #GstCollectPads query handling that elements should always
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstcollectpads.c"
+             line="2025">Default #GstCollectPads query handling that elements should always
 chain up to to ensure proper operation.  Element might however indicate
 query should not be forwarded downstream.</doc>
+        <source-position filename="libs/gst/base/gstcollectpads.h" line="448"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="pads" transfer-ownership="none">
-            <doc xml:space="preserve">the collectpads to use</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstcollectpads.c"
+                 line="2027">the collectpads to use</doc>
             <type name="CollectPads" c:type="GstCollectPads*"/>
           </instance-parameter>
           <parameter name="data" transfer-ownership="none">
-            <doc xml:space="preserve">collect data of corresponding pad</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstcollectpads.c"
+                 line="2028">collect data of corresponding pad</doc>
             <type name="CollectData" c:type="GstCollectData*"/>
           </parameter>
           <parameter name="query" transfer-ownership="none">
-            <doc xml:space="preserve">query being processed</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstcollectpads.c"
+                 line="2029">query being processed</doc>
             <type name="Gst.Query" c:type="GstQuery*"/>
           </parameter>
           <parameter name="discard" transfer-ownership="none">
-            <doc xml:space="preserve">process but do not send event downstream</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstcollectpads.c"
+                 line="2030">process but do not send event downstream</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </method>
       <method name="read_buffer" c:identifier="gst_collect_pads_read_buffer">
-        <doc xml:space="preserve">Get a subbuffer of @size bytes from the given pad @data.
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstcollectpads.c"
+             line="1127">Get a subbuffer of @size bytes from the given pad @data.
 
 This function should be called with @pads STREAM_LOCK held, such as in the
 callback.
 
 MT safe.</doc>
+        <source-position filename="libs/gst/base/gstcollectpads.h" line="419"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">A sub buffer. The size of the buffer can
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstcollectpads.c"
+               line="1140">A sub buffer. The size of the buffer can
 be less that requested. A return of %NULL signals that the pad is
 end-of-stream. Unref the buffer after use.</doc>
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </return-value>
         <parameters>
           <instance-parameter name="pads" transfer-ownership="none">
-            <doc xml:space="preserve">the collectpads to query</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstcollectpads.c"
+                 line="1129">the collectpads to query</doc>
             <type name="CollectPads" c:type="GstCollectPads*"/>
           </instance-parameter>
           <parameter name="data" transfer-ownership="none">
-            <doc xml:space="preserve">the data to use</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstcollectpads.c"
+                 line="1130">the data to use</doc>
             <type name="CollectData" c:type="GstCollectData*"/>
           </parameter>
           <parameter name="size" transfer-ownership="none">
-            <doc xml:space="preserve">the number of bytes to read</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstcollectpads.c"
+                 line="1131">the number of bytes to read</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="remove_pad" c:identifier="gst_collect_pads_remove_pad">
-        <doc xml:space="preserve">Remove a pad from the collection of collect pads. This function will also
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstcollectpads.c"
+             line="683">Remove a pad from the collection of collect pads. This function will also
 free the #GstCollectData and all the resources that were allocated with
 gst_collect_pads_add_pad().
 
 The pad will be deactivated automatically when @pads is stopped.
 
 MT safe.</doc>
+        <source-position filename="libs/gst/base/gstcollectpads.h" line="389"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the pad could be removed.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstcollectpads.c"
+               line="696">%TRUE if the pad could be removed.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="pads" transfer-ownership="none">
-            <doc xml:space="preserve">the collectpads to use</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstcollectpads.c"
+                 line="685">the collectpads to use</doc>
             <type name="CollectPads" c:type="GstCollectPads*"/>
           </instance-parameter>
           <parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">the pad to remove</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstcollectpads.c"
+                 line="686">the pad to remove</doc>
             <type name="Gst.Pad" c:type="GstPad*"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_buffer_function"
               c:identifier="gst_collect_pads_set_buffer_function">
-        <doc xml:space="preserve">Set the callback function and user data that will be called with
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstcollectpads.c"
+             line="304">Set the callback function and user data that will be called with
 the oldest buffer when all pads have been collected, or %NULL on EOS.
 If a buffer is passed, the callback owns a reference and must unref
 it.
 
 MT safe.</doc>
+        <source-position filename="libs/gst/base/gstcollectpads.h" line="358"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="pads" transfer-ownership="none">
-            <doc xml:space="preserve">the collectpads to use</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstcollectpads.c"
+                 line="306">the collectpads to use</doc>
             <type name="CollectPads" c:type="GstCollectPads*"/>
           </instance-parameter>
           <parameter name="func"
                      transfer-ownership="none"
                      scope="call"
                      closure="1">
-            <doc xml:space="preserve">the function to set</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstcollectpads.c"
+                 line="307">the function to set</doc>
             <type name="CollectPadsBufferFunction"
                   c:type="GstCollectPadsBufferFunction"/>
           </parameter>
@@ -10584,28 +14588,37 @@ MT safe.</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">user data passed to the function</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstcollectpads.c"
+                 line="308">user data passed to the function</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_clip_function"
               c:identifier="gst_collect_pads_set_clip_function">
-        <doc xml:space="preserve">Install a clipping function that is called right after a buffer is received
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstcollectpads.c"
+             line="542">Install a clipping function that is called right after a buffer is received
 on a pad managed by @pads. See #GstCollectPadsClipFunction for more info.</doc>
+        <source-position filename="libs/gst/base/gstcollectpads.h" line="374"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="pads" transfer-ownership="none">
-            <doc xml:space="preserve">the collectpads to use</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstcollectpads.c"
+                 line="544">the collectpads to use</doc>
             <type name="CollectPads" c:type="GstCollectPads*"/>
           </instance-parameter>
           <parameter name="clipfunc"
                      transfer-ownership="none"
                      scope="call"
                      closure="1">
-            <doc xml:space="preserve">clip function to install</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstcollectpads.c"
+                 line="545">clip function to install</doc>
             <type name="CollectPadsClipFunction"
                   c:type="GstCollectPadsClipFunction"/>
           </parameter>
@@ -10613,29 +14626,38 @@ on a pad managed by @pads. See #GstCollectPadsClipFunction for more info.</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">user data to pass to @clip_func</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstcollectpads.c"
+                 line="546">user data to pass to @clip_func</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_compare_function"
               c:identifier="gst_collect_pads_set_compare_function">
-        <doc xml:space="preserve">Set the timestamp comparison function.
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstcollectpads.c"
+             line="329">Set the timestamp comparison function.
 
 MT safe.</doc>
+        <source-position filename="libs/gst/base/gstcollectpads.h" line="370"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="pads" transfer-ownership="none">
-            <doc xml:space="preserve">the pads to use</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstcollectpads.c"
+                 line="331">the pads to use</doc>
             <type name="CollectPads" c:type="GstCollectPads*"/>
           </instance-parameter>
           <parameter name="func"
                      transfer-ownership="none"
                      scope="call"
                      closure="1">
-            <doc xml:space="preserve">the function to set</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstcollectpads.c"
+                 line="332">the function to set</doc>
             <type name="CollectPadsCompareFunction"
                   c:type="GstCollectPadsCompareFunction"/>
           </parameter>
@@ -10643,14 +14665,18 @@ MT safe.</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">user data passed to the function</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstcollectpads.c"
+                 line="333">user data passed to the function</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_event_function"
               c:identifier="gst_collect_pads_set_event_function">
-        <doc xml:space="preserve">Set the event callback function and user data that will be called when
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstcollectpads.c"
+             line="416">Set the event callback function and user data that will be called when
 collectpads has received an event originating from one of the collected
 pads.  If the event being processed is a serialized one, this callback is
 called with @pads STREAM_LOCK held, otherwise not.  As this lock should be
@@ -10658,19 +14684,24 @@ held when calling a number of CollectPads functions, it should be acquired
 if so (unusually) needed.
 
 MT safe.</doc>
+        <source-position filename="libs/gst/base/gstcollectpads.h" line="362"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="pads" transfer-ownership="none">
-            <doc xml:space="preserve">the collectpads to use</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstcollectpads.c"
+                 line="418">the collectpads to use</doc>
             <type name="CollectPads" c:type="GstCollectPads*"/>
           </instance-parameter>
           <parameter name="func"
                      transfer-ownership="none"
                      scope="call"
                      closure="1">
-            <doc xml:space="preserve">the function to set</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstcollectpads.c"
+                 line="419">the function to set</doc>
             <type name="CollectPadsEventFunction"
                   c:type="GstCollectPadsEventFunction"/>
           </parameter>
@@ -10678,7 +14709,9 @@ MT safe.</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">user data passed to the function</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstcollectpads.c"
+                 line="420">user data passed to the function</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
         </parameters>
@@ -10686,22 +14719,29 @@ MT safe.</doc>
       <method name="set_flush_function"
               c:identifier="gst_collect_pads_set_flush_function"
               version="1.4">
-        <doc xml:space="preserve">Install a flush function that is called when the internal
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstcollectpads.c"
+             line="562">Install a flush function that is called when the internal
 state of all pads should be flushed as part of flushing seek
 handling. See #GstCollectPadsFlushFunction for more info.</doc>
+        <source-position filename="libs/gst/base/gstcollectpads.h" line="378"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="pads" transfer-ownership="none">
-            <doc xml:space="preserve">the collectpads to use</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstcollectpads.c"
+                 line="564">the collectpads to use</doc>
             <type name="CollectPads" c:type="GstCollectPads*"/>
           </instance-parameter>
           <parameter name="func"
                      transfer-ownership="none"
                      scope="call"
                      closure="1">
-            <doc xml:space="preserve">flush function to install</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstcollectpads.c"
+                 line="565">flush function to install</doc>
             <type name="CollectPadsFlushFunction"
                   c:type="GstCollectPadsFlushFunction"/>
           </parameter>
@@ -10709,35 +14749,46 @@ handling. See #GstCollectPadsFlushFunction for more info.</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">user data to pass to @func</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstcollectpads.c"
+                 line="566">user data to pass to @func</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_flushing" c:identifier="gst_collect_pads_set_flushing">
-        <doc xml:space="preserve">Change the flushing state of all the pads in the collection. No pad
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstcollectpads.c"
+             line="804">Change the flushing state of all the pads in the collection. No pad
 is able to accept anymore data when @flushing is %TRUE. Calling this
 function with @flushing %FALSE makes @pads accept data again.
 Caller must ensure that downstream streaming (thread) is not blocked,
 e.g. by sending a FLUSH_START downstream.
 
 MT safe.</doc>
+        <source-position filename="libs/gst/base/gstcollectpads.h" line="400"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="pads" transfer-ownership="none">
-            <doc xml:space="preserve">the collectpads to use</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstcollectpads.c"
+                 line="806">the collectpads to use</doc>
             <type name="CollectPads" c:type="GstCollectPads*"/>
           </instance-parameter>
           <parameter name="flushing" transfer-ownership="none">
-            <doc xml:space="preserve">desired state of the pads</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstcollectpads.c"
+                 line="807">desired state of the pads</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_function" c:identifier="gst_collect_pads_set_function">
-        <doc xml:space="preserve">CollectPads provides a default collection algorithm that will determine
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstcollectpads.c"
+             line="356">CollectPads provides a default collection algorithm that will determine
 the oldest buffer available on all of its pads, and then delegate
 to a configured callback.
 However, if circumstances are more complicated and/or more control
@@ -10748,33 +14799,42 @@ gst_collect_pads_set_buffer_function() callback.
 If this callback is set, the former will be unset.
 
 MT safe.</doc>
+        <source-position filename="libs/gst/base/gstcollectpads.h" line="354"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="pads" transfer-ownership="none">
-            <doc xml:space="preserve">the collectpads to use</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstcollectpads.c"
+                 line="358">the collectpads to use</doc>
             <type name="CollectPads" c:type="GstCollectPads*"/>
           </instance-parameter>
           <parameter name="func"
                      transfer-ownership="none"
                      scope="call"
                      closure="1">
-            <doc xml:space="preserve">the function to set</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstcollectpads.c"
+                 line="359">the function to set</doc>
             <type name="CollectPadsFunction" c:type="GstCollectPadsFunction"/>
           </parameter>
           <parameter name="user_data"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">user data passed to the function</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstcollectpads.c"
+                 line="360">user data passed to the function</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_query_function"
               c:identifier="gst_collect_pads_set_query_function">
-        <doc xml:space="preserve">Set the query callback function and user data that will be called after
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstcollectpads.c"
+             line="444">Set the query callback function and user data that will be called after
 collectpads has received a query originating from one of the collected
 pads.  If the query being processed is a serialized one, this callback is
 called with @pads STREAM_LOCK held, otherwise not.  As this lock should be
@@ -10782,19 +14842,24 @@ held when calling a number of CollectPads functions, it should be acquired
 if so (unusually) needed.
 
 MT safe.</doc>
+        <source-position filename="libs/gst/base/gstcollectpads.h" line="366"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="pads" transfer-ownership="none">
-            <doc xml:space="preserve">the collectpads to use</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstcollectpads.c"
+                 line="446">the collectpads to use</doc>
             <type name="CollectPads" c:type="GstCollectPads*"/>
           </instance-parameter>
           <parameter name="func"
                      transfer-ownership="none"
                      scope="call"
                      closure="1">
-            <doc xml:space="preserve">the function to set</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstcollectpads.c"
+                 line="447">the function to set</doc>
             <type name="CollectPadsQueryFunction"
                   c:type="GstCollectPadsQueryFunction"/>
           </parameter>
@@ -10802,13 +14867,17 @@ MT safe.</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">user data passed to the function</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstcollectpads.c"
+                 line="448">user data passed to the function</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_waiting" c:identifier="gst_collect_pads_set_waiting">
-        <doc xml:space="preserve">Sets a pad to waiting or non-waiting mode, if at least this pad
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstcollectpads.c"
+             line="1196">Sets a pad to waiting or non-waiting mode, if at least this pad
 has not been created with locked waiting state,
 in which case nothing happens.
 
@@ -10816,20 +14885,27 @@ This function should be called with @pads STREAM_LOCK held, such as
 in the callback.
 
 MT safe.</doc>
+        <source-position filename="libs/gst/base/gstcollectpads.h" line="428"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="pads" transfer-ownership="none">
-            <doc xml:space="preserve">the collectpads</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstcollectpads.c"
+                 line="1198">the collectpads</doc>
             <type name="CollectPads" c:type="GstCollectPads*"/>
           </instance-parameter>
           <parameter name="data" transfer-ownership="none">
-            <doc xml:space="preserve">the data to use</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstcollectpads.c"
+                 line="1199">the data to use</doc>
             <type name="CollectData" c:type="GstCollectData*"/>
           </parameter>
           <parameter name="waiting" transfer-ownership="none">
-            <doc xml:space="preserve">boolean indicating whether this pad should operate
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstcollectpads.c"
+                 line="1200">boolean indicating whether this pad should operate
           in waiting or non-waiting mode</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
@@ -10838,81 +14914,111 @@ MT safe.</doc>
       <method name="src_event_default"
               c:identifier="gst_collect_pads_src_event_default"
               version="1.4">
-        <doc xml:space="preserve">Default #GstCollectPads event handling for the src pad of elements.
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstcollectpads.c"
+             line="1909">Default #GstCollectPads event handling for the src pad of elements.
 Elements can chain up to this to let flushing seek event handling
 be done by #GstCollectPads.</doc>
+        <source-position filename="libs/gst/base/gstcollectpads.h" line="445"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="pads" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstCollectPads to use</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstcollectpads.c"
+                 line="1911">the #GstCollectPads to use</doc>
             <type name="CollectPads" c:type="GstCollectPads*"/>
           </instance-parameter>
           <parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">src #GstPad that received the event</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstcollectpads.c"
+                 line="1912">src #GstPad that received the event</doc>
             <type name="Gst.Pad" c:type="GstPad*"/>
           </parameter>
           <parameter name="event" transfer-ownership="none">
-            <doc xml:space="preserve">event being processed</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstcollectpads.c"
+                 line="1913">event being processed</doc>
             <type name="Gst.Event" c:type="GstEvent*"/>
           </parameter>
         </parameters>
       </method>
       <method name="start" c:identifier="gst_collect_pads_start">
-        <doc xml:space="preserve">Starts the processing of data in the collect_pads.
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstcollectpads.c"
+             line="831">Starts the processing of data in the collect_pads.
 
 MT safe.</doc>
+        <source-position filename="libs/gst/base/gstcollectpads.h" line="394"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="pads" transfer-ownership="none">
-            <doc xml:space="preserve">the collectpads to use</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstcollectpads.c"
+                 line="833">the collectpads to use</doc>
             <type name="CollectPads" c:type="GstCollectPads*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="stop" c:identifier="gst_collect_pads_stop">
-        <doc xml:space="preserve">Stops the processing of data in the collect_pads. this function
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstcollectpads.c"
+             line="872">Stops the processing of data in the collect_pads. this function
 will also unblock any blocking operations.
 
 MT safe.</doc>
+        <source-position filename="libs/gst/base/gstcollectpads.h" line="397"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="pads" transfer-ownership="none">
-            <doc xml:space="preserve">the collectpads to use</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstcollectpads.c"
+                 line="874">the collectpads to use</doc>
             <type name="CollectPads" c:type="GstCollectPads*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="take_buffer" c:identifier="gst_collect_pads_take_buffer">
-        <doc xml:space="preserve">Get a subbuffer of @size bytes from the given pad @data. Flushes the amount
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstcollectpads.c"
+             line="1166">Get a subbuffer of @size bytes from the given pad @data. Flushes the amount
 of read bytes.
 
 This function should be called with @pads STREAM_LOCK held, such as in the
 callback.
 
 MT safe.</doc>
+        <source-position filename="libs/gst/base/gstcollectpads.h" line="422"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">A sub buffer. The size of the buffer can
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstcollectpads.c"
+               line="1180">A sub buffer. The size of the buffer can
 be less that requested. A return of %NULL signals that the pad is
 end-of-stream. Unref the buffer after use.</doc>
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </return-value>
         <parameters>
           <instance-parameter name="pads" transfer-ownership="none">
-            <doc xml:space="preserve">the collectpads to query</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstcollectpads.c"
+                 line="1168">the collectpads to query</doc>
             <type name="CollectPads" c:type="GstCollectPads*"/>
           </instance-parameter>
           <parameter name="data" transfer-ownership="none">
-            <doc xml:space="preserve">the data to use</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstcollectpads.c"
+                 line="1169">the data to use</doc>
             <type name="CollectData" c:type="GstCollectData*"/>
           </parameter>
           <parameter name="size" transfer-ownership="none">
-            <doc xml:space="preserve">the number of bytes to read</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstcollectpads.c"
+                 line="1170">the number of bytes to read</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
@@ -10921,7 +15027,9 @@ end-of-stream. Unref the buffer after use.</doc>
         <type name="Gst.Object" c:type="GstObject"/>
       </field>
       <field name="data">
-        <doc xml:space="preserve">#GList of #GstCollectData managed
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstcollectpads.h"
+             line="317">#GList of #GstCollectData managed
   by this #GstCollectPads.</doc>
         <type name="GLib.SList" c:type="GSList*">
           <type name="CollectData"/>
@@ -10934,31 +15042,42 @@ end-of-stream. Unref the buffer after use.</doc>
         <type name="CollectPadsPrivate" c:type="GstCollectPadsPrivate*"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
     </class>
     <callback name="CollectPadsBufferFunction"
               c:type="GstCollectPadsBufferFunction">
-      <doc xml:space="preserve">A function that will be called when a (considered oldest) buffer can be muxed.
+      <doc xml:space="preserve"
+           filename="libs/gst/base/gstcollectpads.h"
+           line="181">A function that will be called when a (considered oldest) buffer can be muxed.
 If all pads have reached EOS, this function is called with %NULL @buffer
 and %NULL @data.</doc>
+      <source-position filename="libs/gst/base/gstcollectpads.h" line="194"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%GST_FLOW_OK for success</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstcollectpads.h"
+             line="192">%GST_FLOW_OK for success</doc>
         <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
       </return-value>
       <parameters>
         <parameter name="pads" transfer-ownership="none">
-          <doc xml:space="preserve">the #GstCollectPads that triggered the callback</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstcollectpads.h"
+               line="183">the #GstCollectPads that triggered the callback</doc>
           <type name="CollectPads" c:type="GstCollectPads*"/>
         </parameter>
         <parameter name="data" transfer-ownership="none">
-          <doc xml:space="preserve">the #GstCollectData of pad that has received the buffer</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstcollectpads.h"
+               line="184">the #GstCollectData of pad that has received the buffer</doc>
           <type name="CollectData" c:type="GstCollectData*"/>
         </parameter>
         <parameter name="buffer" transfer-ownership="full">
-          <doc xml:space="preserve">the #GstBuffer</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstcollectpads.h"
+               line="185">the #GstBuffer</doc>
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </parameter>
         <parameter name="user_data"
@@ -10966,7 +15085,9 @@ and %NULL @data.</doc>
                    nullable="1"
                    allow-none="1"
                    closure="3">
-          <doc xml:space="preserve">user data passed to gst_collect_pads_set_buffer_function()</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstcollectpads.h"
+               line="186">user data passed to gst_collect_pads_set_buffer_function()</doc>
           <type name="gpointer" c:type="gpointer"/>
         </parameter>
       </parameters>
@@ -10974,18 +15095,21 @@ and %NULL @data.</doc>
     <record name="CollectPadsClass"
             c:type="GstCollectPadsClass"
             glib:is-gtype-struct-for="CollectPads">
+      <source-position filename="libs/gst/base/gstcollectpads.h" line="341"/>
       <field name="parent_class">
         <type name="Gst.ObjectClass" c:type="GstObjectClass"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
     </record>
     <callback name="CollectPadsClipFunction"
               c:type="GstCollectPadsClipFunction">
-      <doc xml:space="preserve">A function that will be called when @inbuffer is received on the pad managed
+      <doc xml:space="preserve"
+           filename="libs/gst/base/gstcollectpads.h"
+           line="251">A function that will be called when @inbuffer is received on the pad managed
 by @data in the collectpad object @pads.
 
 The function should use the segment of @data and the negotiated media type on
@@ -10993,28 +15117,39 @@ the pad to perform clipping of @inbuffer.
 
 This function takes ownership of @inbuffer and should output a buffer in
 @outbuffer or return %NULL in @outbuffer if the buffer should be dropped.</doc>
+      <source-position filename="libs/gst/base/gstcollectpads.h" line="270"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">a #GstFlowReturn that corresponds to the result of clipping.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstcollectpads.h"
+             line="268">a #GstFlowReturn that corresponds to the result of clipping.</doc>
         <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
       </return-value>
       <parameters>
         <parameter name="pads" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstCollectPads</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstcollectpads.h"
+               line="253">a #GstCollectPads</doc>
           <type name="CollectPads" c:type="GstCollectPads*"/>
         </parameter>
         <parameter name="data" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstCollectData</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstcollectpads.h"
+               line="254">a #GstCollectData</doc>
           <type name="CollectData" c:type="GstCollectData*"/>
         </parameter>
         <parameter name="inbuffer" transfer-ownership="full">
-          <doc xml:space="preserve">the input #GstBuffer</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstcollectpads.h"
+               line="255">the input #GstBuffer</doc>
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </parameter>
         <parameter name="outbuffer"
                    direction="out"
                    caller-allocates="0"
                    transfer-ownership="full">
-          <doc xml:space="preserve">the output #GstBuffer</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstcollectpads.h"
+               line="256">the output #GstBuffer</doc>
           <type name="Gst.Buffer" c:type="GstBuffer**"/>
         </parameter>
         <parameter name="user_data"
@@ -11022,39 +15157,56 @@ This function takes ownership of @inbuffer and should output a buffer in
                    nullable="1"
                    allow-none="1"
                    closure="4">
-          <doc xml:space="preserve">user data</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstcollectpads.h"
+               line="257">user data</doc>
           <type name="gpointer" c:type="gpointer"/>
         </parameter>
       </parameters>
     </callback>
     <callback name="CollectPadsCompareFunction"
               c:type="GstCollectPadsCompareFunction">
-      <doc xml:space="preserve">A function for comparing two timestamps of buffers or newsegments collected on one pad.</doc>
+      <doc xml:space="preserve"
+           filename="libs/gst/base/gstcollectpads.h"
+           line="197">A function for comparing two timestamps of buffers or newsegments collected on one pad.</doc>
+      <source-position filename="libs/gst/base/gstcollectpads.h" line="212"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">Integer less than zero when first timestamp is deemed older than the second one.
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstcollectpads.h"
+             line="208">Integer less than zero when first timestamp is deemed older than the second one.
          Zero if the timestamps are deemed equally old.
          Integer greater than zero when second timestamp is deemed older than the first one.</doc>
         <type name="gint" c:type="gint"/>
       </return-value>
       <parameters>
         <parameter name="pads" transfer-ownership="none">
-          <doc xml:space="preserve">the #GstCollectPads that is comparing the timestamps</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstcollectpads.h"
+               line="199">the #GstCollectPads that is comparing the timestamps</doc>
           <type name="CollectPads" c:type="GstCollectPads*"/>
         </parameter>
         <parameter name="data1" transfer-ownership="none">
-          <doc xml:space="preserve">the first #GstCollectData</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstcollectpads.h"
+               line="200">the first #GstCollectData</doc>
           <type name="CollectData" c:type="GstCollectData*"/>
         </parameter>
         <parameter name="timestamp1" transfer-ownership="none">
-          <doc xml:space="preserve">the first timestamp</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstcollectpads.h"
+               line="201">the first timestamp</doc>
           <type name="Gst.ClockTime" c:type="GstClockTime"/>
         </parameter>
         <parameter name="data2" transfer-ownership="none">
-          <doc xml:space="preserve">the second #GstCollectData</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstcollectpads.h"
+               line="202">the second #GstCollectData</doc>
           <type name="CollectData" c:type="GstCollectData*"/>
         </parameter>
         <parameter name="timestamp2" transfer-ownership="none">
-          <doc xml:space="preserve">the second timestamp</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstcollectpads.h"
+               line="203">the second timestamp</doc>
           <type name="Gst.ClockTime" c:type="GstClockTime"/>
         </parameter>
         <parameter name="user_data"
@@ -11062,32 +15214,45 @@ This function takes ownership of @inbuffer and should output a buffer in
                    nullable="1"
                    allow-none="1"
                    closure="5">
-          <doc xml:space="preserve">user data passed to gst_collect_pads_set_compare_function()</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstcollectpads.h"
+               line="204">user data passed to gst_collect_pads_set_compare_function()</doc>
           <type name="gpointer" c:type="gpointer"/>
         </parameter>
       </parameters>
     </callback>
     <callback name="CollectPadsEventFunction"
               c:type="GstCollectPadsEventFunction">
-      <doc xml:space="preserve">A function that will be called while processing an event. It takes
+      <doc xml:space="preserve"
+           filename="libs/gst/base/gstcollectpads.h"
+           line="217">A function that will be called while processing an event. It takes
 ownership of the event and is responsible for chaining up (to
 gst_collect_pads_event_default()) or dropping events (such typical cases
 being handled by the default handler).</doc>
+      <source-position filename="libs/gst/base/gstcollectpads.h" line="231"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE if the pad could handle the event</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstcollectpads.h"
+             line="229">%TRUE if the pad could handle the event</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="pads" transfer-ownership="none">
-          <doc xml:space="preserve">the #GstCollectPads that triggered the callback</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstcollectpads.h"
+               line="219">the #GstCollectPads that triggered the callback</doc>
           <type name="CollectPads" c:type="GstCollectPads*"/>
         </parameter>
         <parameter name="pad" transfer-ownership="none">
-          <doc xml:space="preserve">the #GstPad that received an event</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstcollectpads.h"
+               line="220">the #GstPad that received an event</doc>
           <type name="CollectData" c:type="GstCollectData*"/>
         </parameter>
         <parameter name="event" transfer-ownership="none">
-          <doc xml:space="preserve">the #GstEvent received</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstcollectpads.h"
+               line="221">the #GstEvent received</doc>
           <type name="Gst.Event" c:type="GstEvent*"/>
         </parameter>
         <parameter name="user_data"
@@ -11095,7 +15260,9 @@ being handled by the default handler).</doc>
                    nullable="1"
                    allow-none="1"
                    closure="3">
-          <doc xml:space="preserve">user data passed to gst_collect_pads_set_event_function()</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstcollectpads.h"
+               line="222">user data passed to gst_collect_pads_set_event_function()</doc>
           <type name="gpointer" c:type="gpointer"/>
         </parameter>
       </parameters>
@@ -11103,18 +15270,23 @@ being handled by the default handler).</doc>
     <callback name="CollectPadsFlushFunction"
               c:type="GstCollectPadsFlushFunction"
               version="1.4">
-      <doc xml:space="preserve">A function that will be called while processing a flushing seek event.
+      <doc xml:space="preserve"
+           filename="libs/gst/base/gstcollectpads.h"
+           line="275">A function that will be called while processing a flushing seek event.
 
 The function should flush any internal state of the element and the state of
 all the pads. It should clear only the state not directly managed by the
 @pads object. It is therefore not necessary to call
 gst_collect_pads_set_flushing nor gst_collect_pads_clear from this function.</doc>
+      <source-position filename="libs/gst/base/gstcollectpads.h" line="289"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="pads" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstCollectPads</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstcollectpads.h"
+               line="277">a #GstCollectPads</doc>
           <type name="CollectPads" c:type="GstCollectPads*"/>
         </parameter>
         <parameter name="user_data"
@@ -11122,20 +15294,29 @@ gst_collect_pads_set_flushing nor gst_collect_pads_clear from this function.</do
                    nullable="1"
                    allow-none="1"
                    closure="1">
-          <doc xml:space="preserve">user data</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstcollectpads.h"
+               line="278">user data</doc>
           <type name="gpointer" c:type="gpointer"/>
         </parameter>
       </parameters>
     </callback>
     <callback name="CollectPadsFunction" c:type="GstCollectPadsFunction">
-      <doc xml:space="preserve">A function that will be called when all pads have received data.</doc>
+      <doc xml:space="preserve"
+           filename="libs/gst/base/gstcollectpads.h"
+           line="170">A function that will be called when all pads have received data.</doc>
+      <source-position filename="libs/gst/base/gstcollectpads.h" line="179"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%GST_FLOW_OK for success</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstcollectpads.h"
+             line="177">%GST_FLOW_OK for success</doc>
         <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
       </return-value>
       <parameters>
         <parameter name="pads" transfer-ownership="none">
-          <doc xml:space="preserve">the #GstCollectPads that triggered the callback</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstcollectpads.h"
+               line="172">the #GstCollectPads that triggered the callback</doc>
           <type name="CollectPads" c:type="GstCollectPads*"/>
         </parameter>
         <parameter name="user_data"
@@ -11143,7 +15324,9 @@ gst_collect_pads_set_flushing nor gst_collect_pads_clear from this function.</do
                    nullable="1"
                    allow-none="1"
                    closure="1">
-          <doc xml:space="preserve">user data passed to gst_collect_pads_set_function()</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstcollectpads.h"
+               line="173">user data passed to gst_collect_pads_set_function()</doc>
           <type name="gpointer" c:type="gpointer"/>
         </parameter>
       </parameters>
@@ -11151,27 +15334,39 @@ gst_collect_pads_set_flushing nor gst_collect_pads_clear from this function.</do
     <record name="CollectPadsPrivate"
             c:type="GstCollectPadsPrivate"
             disguised="1">
+      <source-position filename="libs/gst/base/gstcollectpads.h" line="41"/>
     </record>
     <callback name="CollectPadsQueryFunction"
               c:type="GstCollectPadsQueryFunction">
-      <doc xml:space="preserve">A function that will be called while processing a query. It takes
+      <doc xml:space="preserve"
+           filename="libs/gst/base/gstcollectpads.h"
+           line="235">A function that will be called while processing a query. It takes
 ownership of the query and is responsible for chaining up (to
 events downstream (with gst_pad_event_default()).</doc>
+      <source-position filename="libs/gst/base/gstcollectpads.h" line="248"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE if the pad could handle the event</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstcollectpads.h"
+             line="246">%TRUE if the pad could handle the event</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="pads" transfer-ownership="none">
-          <doc xml:space="preserve">the #GstCollectPads that triggered the callback</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstcollectpads.h"
+               line="237">the #GstCollectPads that triggered the callback</doc>
           <type name="CollectPads" c:type="GstCollectPads*"/>
         </parameter>
         <parameter name="pad" transfer-ownership="none">
-          <doc xml:space="preserve">the #GstPad that received an event</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstcollectpads.h"
+               line="238">the #GstPad that received an event</doc>
           <type name="CollectData" c:type="GstCollectData*"/>
         </parameter>
         <parameter name="query" transfer-ownership="none">
-          <doc xml:space="preserve">the #GstEvent received</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstcollectpads.h"
+               line="239">the #GstEvent received</doc>
           <type name="Gst.Query" c:type="GstQuery*"/>
         </parameter>
         <parameter name="user_data"
@@ -11179,40 +15374,71 @@ events downstream (with gst_pad_event_default()).</doc>
                    nullable="1"
                    allow-none="1"
                    closure="3">
-          <doc xml:space="preserve">user data passed to gst_collect_pads_set_query_function()</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstcollectpads.h"
+               line="240">user data passed to gst_collect_pads_set_query_function()</doc>
           <type name="gpointer" c:type="gpointer"/>
         </parameter>
       </parameters>
     </callback>
     <bitfield name="CollectPadsStateFlags" c:type="GstCollectPadsStateFlags">
+      <source-position filename="libs/gst/base/gstcollectpads.h" line="72"/>
       <member name="eos" value="1" c:identifier="GST_COLLECT_PADS_STATE_EOS">
-        <doc xml:space="preserve">Set if collectdata's pad is EOS.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstcollectpads.h"
+             line="56">Set if collectdata's pad is EOS.</doc>
       </member>
       <member name="flushing"
               value="2"
               c:identifier="GST_COLLECT_PADS_STATE_FLUSHING">
-        <doc xml:space="preserve">Set if collectdata's pad is flushing.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstcollectpads.h"
+             line="57">Set if collectdata's pad is flushing.</doc>
       </member>
       <member name="new_segment"
               value="4"
               c:identifier="GST_COLLECT_PADS_STATE_NEW_SEGMENT">
-        <doc xml:space="preserve">Set if collectdata's pad received a
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstcollectpads.h"
+             line="58">Set if collectdata's pad received a
                                      new_segment event.</doc>
       </member>
       <member name="waiting"
               value="8"
               c:identifier="GST_COLLECT_PADS_STATE_WAITING">
-        <doc xml:space="preserve">Set if collectdata's pad must be waited
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstcollectpads.h"
+             line="60">Set if collectdata's pad must be waited
                                      for when collecting.</doc>
       </member>
       <member name="locked"
               value="16"
               c:identifier="GST_COLLECT_PADS_STATE_LOCKED">
-        <doc xml:space="preserve">Set collectdata's pad WAITING state must
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstcollectpads.h"
+             line="62">Set collectdata's pad WAITING state must
                                      not be changed.
 #GstCollectPadsStateFlags indicate private state of a collectdata('s pad).</doc>
       </member>
     </bitfield>
+    <function-macro name="DATA_QUEUE"
+                    c:identifier="GST_DATA_QUEUE"
+                    introspectable="0">
+      <source-position filename="libs/gst/base/gstdataqueue.h" line="31"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="DATA_QUEUE_CLASS"
+                    c:identifier="GST_DATA_QUEUE_CLASS"
+                    introspectable="0">
+      <source-position filename="libs/gst/base/gstdataqueue.h" line="33"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
     <class name="DataQueue"
            c:symbol-prefix="data_queue"
            c:type="GstDataQueue"
@@ -11220,37 +15446,51 @@ events downstream (with gst_pad_event_default()).</doc>
            glib:type-name="GstDataQueue"
            glib:get-type="gst_data_queue_get_type"
            glib:type-struct="DataQueueClass">
-      <doc xml:space="preserve">#GstDataQueue is an object that handles threadsafe queueing of objects. It
+      <doc xml:space="preserve"
+           filename="libs/gst/base/gstdataqueue.c"
+           line="22">#GstDataQueue is an object that handles threadsafe queueing of objects. It
 also provides size-related functionality. This object should be used for
 any #GstElement that wishes to provide some sort of queueing functionality.</doc>
+      <source-position filename="libs/gst/base/gstdataqueue.h" line="137"/>
       <constructor name="new"
                    c:identifier="gst_data_queue_new"
                    version="1.2"
                    introspectable="0">
-        <doc xml:space="preserve">Creates a new #GstDataQueue. If @fullcallback or @emptycallback are supplied, then
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstdataqueue.c"
+             line="212">Creates a new #GstDataQueue. If @fullcallback or @emptycallback are supplied, then
 the #GstDataQueue will call the respective callback to signal full or empty condition.
 If the callbacks are NULL the #GstDataQueue will instead emit 'full' and 'empty'
 signals.</doc>
+        <source-position filename="libs/gst/base/gstdataqueue.h" line="143"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new #GstDataQueue.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstdataqueue.c"
+               line="226">a new #GstDataQueue.</doc>
           <type name="DataQueue" c:type="GstDataQueue*"/>
         </return-value>
         <parameters>
           <parameter name="checkfull" transfer-ownership="none">
-            <doc xml:space="preserve">the callback used to tell if the element considers the queue full
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstdataqueue.c"
+                 line="214">the callback used to tell if the element considers the queue full
 or not.</doc>
             <type name="DataQueueCheckFullFunction"
                   c:type="GstDataQueueCheckFullFunction"/>
           </parameter>
           <parameter name="fullcallback" transfer-ownership="none">
-            <doc xml:space="preserve">the callback which will be called when the queue is considered full.</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstdataqueue.c"
+                 line="216">the callback which will be called when the queue is considered full.</doc>
             <type name="DataQueueFullCallback"
                   c:type="GstDataQueueFullCallback"/>
           </parameter>
           <parameter name="emptycallback"
                      transfer-ownership="none"
                      closure="3">
-            <doc xml:space="preserve">the callback which will be called when the queue is considered empty.</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstdataqueue.c"
+                 line="217">the callback which will be called when the queue is considered empty.</doc>
             <type name="DataQueueEmptyCallback"
                   c:type="GstDataQueueEmptyCallback"/>
           </parameter>
@@ -11258,13 +15498,16 @@ or not.</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">a #gpointer that will be passed to the @checkfull, @fullcallback,
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstdataqueue.c"
+                 line="218">a #gpointer that will be passed to the @checkfull, @fullcallback,
   and @emptycallback callbacks.</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
         </parameters>
       </constructor>
       <virtual-method name="empty">
+        <source-position filename="libs/gst/base/gstdataqueue.h" line="133"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
@@ -11275,6 +15518,7 @@ or not.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="full">
+        <source-position filename="libs/gst/base/gstdataqueue.h" line="134"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
@@ -11288,18 +15532,27 @@ or not.</doc>
               c:identifier="gst_data_queue_drop_head"
               version="1.2"
               introspectable="0">
-        <doc xml:space="preserve">Pop and unref the head-most #GstMiniObject with the given #GType.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if an element was removed.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstdataqueue.c"
+             line="687">Pop and unref the head-most #GstMiniObject with the given #GType.</doc>
+        <source-position filename="libs/gst/base/gstdataqueue.h" line="166"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstdataqueue.c"
+               line="694">%TRUE if an element was removed.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="queue" transfer-ownership="none">
-            <doc xml:space="preserve">The #GstDataQueue to drop an item from.</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstdataqueue.c"
+                 line="689">The #GstDataQueue to drop an item from.</doc>
             <type name="DataQueue" c:type="GstDataQueue*"/>
           </instance-parameter>
           <parameter name="type" transfer-ownership="none">
-            <doc xml:space="preserve">The #GType of the item to drop.</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstdataqueue.c"
+                 line="690">The #GType of the item to drop.</doc>
             <type name="GType" c:type="GType"/>
           </parameter>
         </parameters>
@@ -11308,15 +15561,20 @@ or not.</doc>
               c:identifier="gst_data_queue_flush"
               version="1.2"
               introspectable="0">
-        <doc xml:space="preserve">Flushes all the contents of the @queue. Any call to #gst_data_queue_push and
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstdataqueue.c"
+             line="316">Flushes all the contents of the @queue. Any call to #gst_data_queue_push and
 #gst_data_queue_pop will be released.
 MT safe.</doc>
+        <source-position filename="libs/gst/base/gstdataqueue.h" line="160"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="queue" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDataQueue.</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstdataqueue.c"
+                 line="318">a #GstDataQueue.</doc>
             <type name="DataQueue" c:type="GstDataQueue*"/>
           </instance-parameter>
         </parameters>
@@ -11325,20 +15583,27 @@ MT safe.</doc>
               c:identifier="gst_data_queue_get_level"
               version="1.2"
               introspectable="0">
-        <doc xml:space="preserve">Get the current level of the queue.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstdataqueue.c"
+             line="759">Get the current level of the queue.</doc>
+        <source-position filename="libs/gst/base/gstdataqueue.h" line="175"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="queue" transfer-ownership="none">
-            <doc xml:space="preserve">The #GstDataQueue</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstdataqueue.c"
+                 line="761">The #GstDataQueue</doc>
             <type name="DataQueue" c:type="GstDataQueue*"/>
           </instance-parameter>
           <parameter name="level"
                      direction="out"
                      caller-allocates="1"
                      transfer-ownership="none">
-            <doc xml:space="preserve">the location to store the result</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstdataqueue.c"
+                 line="762">the location to store the result</doc>
             <type name="DataQueueSize" c:type="GstDataQueueSize*"/>
           </parameter>
         </parameters>
@@ -11347,15 +15612,22 @@ MT safe.</doc>
               c:identifier="gst_data_queue_is_empty"
               version="1.2"
               introspectable="0">
-        <doc xml:space="preserve">Queries if there are any items in the @queue.
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstdataqueue.c"
+             line="335">Queries if there are any items in the @queue.
 MT safe.</doc>
+        <source-position filename="libs/gst/base/gstdataqueue.h" line="172"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if @queue is empty.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstdataqueue.c"
+               line="342">%TRUE if @queue is empty.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="queue" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDataQueue.</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstdataqueue.c"
+                 line="337">a #GstDataQueue.</doc>
             <type name="DataQueue" c:type="GstDataQueue*"/>
           </instance-parameter>
         </parameters>
@@ -11364,16 +15636,23 @@ MT safe.</doc>
               c:identifier="gst_data_queue_is_full"
               version="1.2"
               introspectable="0">
-        <doc xml:space="preserve">Queries if @queue is full. This check will be done using the
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstdataqueue.c"
+             line="358">Queries if @queue is full. This check will be done using the
 #GstDataQueueCheckFullFunction registered with @queue.
 MT safe.</doc>
+        <source-position filename="libs/gst/base/gstdataqueue.h" line="169"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if @queue is full.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstdataqueue.c"
+               line="366">%TRUE if @queue is full.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="queue" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDataQueue.</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstdataqueue.c"
+                 line="360">a #GstDataQueue.</doc>
             <type name="DataQueue" c:type="GstDataQueue*"/>
           </instance-parameter>
         </parameters>
@@ -11382,14 +15661,19 @@ MT safe.</doc>
               c:identifier="gst_data_queue_limits_changed"
               version="1.2"
               introspectable="0">
-        <doc xml:space="preserve">Inform the queue that the limits for the fullness check have changed and that
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstdataqueue.c"
+             line="735">Inform the queue that the limits for the fullness check have changed and that
 any blocking gst_data_queue_push() should be unblocked to recheck the limits.</doc>
+        <source-position filename="libs/gst/base/gstdataqueue.h" line="178"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="queue" transfer-ownership="none">
-            <doc xml:space="preserve">The #GstDataQueue</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstdataqueue.c"
+                 line="737">The #GstDataQueue</doc>
             <type name="DataQueue" c:type="GstDataQueue*"/>
           </instance-parameter>
         </parameters>
@@ -11398,24 +15682,33 @@ any blocking gst_data_queue_push() should be unblocked to recheck the limits.</d
               c:identifier="gst_data_queue_peek"
               version="1.2"
               introspectable="0">
-        <doc xml:space="preserve">Retrieves the first @item available on the @queue without removing it.
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstdataqueue.c"
+             line="632">Retrieves the first @item available on the @queue without removing it.
 If the queue is currently empty, the call will block until at least
 one item is available, OR the @queue is set to the flushing state.
 MT safe.</doc>
+        <source-position filename="libs/gst/base/gstdataqueue.h" line="157"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if an @item was successfully retrieved from the @queue.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstdataqueue.c"
+               line="642">%TRUE if an @item was successfully retrieved from the @queue.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="queue" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDataQueue.</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstdataqueue.c"
+                 line="634">a #GstDataQueue.</doc>
             <type name="DataQueue" c:type="GstDataQueue*"/>
           </instance-parameter>
           <parameter name="item"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">pointer to store the returned #GstDataQueueItem.</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstdataqueue.c"
+                 line="635">pointer to store the returned #GstDataQueueItem.</doc>
             <type name="DataQueueItem" c:type="GstDataQueueItem**"/>
           </parameter>
         </parameters>
@@ -11424,24 +15717,33 @@ MT safe.</doc>
               c:identifier="gst_data_queue_pop"
               version="1.2"
               introspectable="0">
-        <doc xml:space="preserve">Retrieves the first @item available on the @queue. If the queue is currently
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstdataqueue.c"
+             line="562">Retrieves the first @item available on the @queue. If the queue is currently
 empty, the call will block until at least one item is available, OR the
 @queue is set to the flushing state.
 MT safe.</doc>
+        <source-position filename="libs/gst/base/gstdataqueue.h" line="154"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if an @item was successfully retrieved from the @queue.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstdataqueue.c"
+               line="572">%TRUE if an @item was successfully retrieved from the @queue.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="queue" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDataQueue.</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstdataqueue.c"
+                 line="564">a #GstDataQueue.</doc>
             <type name="DataQueue" c:type="GstDataQueue*"/>
           </instance-parameter>
           <parameter name="item"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">pointer to store the returned #GstDataQueueItem.</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstdataqueue.c"
+                 line="565">pointer to store the returned #GstDataQueueItem.</doc>
             <type name="DataQueueItem" c:type="GstDataQueueItem**"/>
           </parameter>
         </parameters>
@@ -11450,7 +15752,9 @@ MT safe.</doc>
               c:identifier="gst_data_queue_push"
               version="1.2"
               introspectable="0">
-        <doc xml:space="preserve">Pushes a #GstDataQueueItem (or a structure that begins with the same fields)
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstdataqueue.c"
+             line="478">Pushes a #GstDataQueueItem (or a structure that begins with the same fields)
 on the @queue. If the @queue is full, the call will block until space is
 available, OR the @queue is set to flushing state.
 MT safe.
@@ -11459,17 +15763,24 @@ Note that this function has slightly different semantics than gst_pad_push()
 and gst_pad_push_event(): this function only takes ownership of @item and
 the #GstMiniObject contained in @item if the push was successful. If %FALSE
 is returned, the caller is responsible for freeing @item and its contents.</doc>
+        <source-position filename="libs/gst/base/gstdataqueue.h" line="148"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the @item was successfully pushed on the @queue.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstdataqueue.c"
+               line="493">%TRUE if the @item was successfully pushed on the @queue.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="queue" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDataQueue.</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstdataqueue.c"
+                 line="480">a #GstDataQueue.</doc>
             <type name="DataQueue" c:type="GstDataQueue*"/>
           </instance-parameter>
           <parameter name="item" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDataQueueItem.</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstdataqueue.c"
+                 line="481">a #GstDataQueueItem.</doc>
             <type name="DataQueueItem" c:type="GstDataQueueItem*"/>
           </parameter>
         </parameters>
@@ -11478,7 +15789,9 @@ is returned, the caller is responsible for freeing @item and its contents.</doc>
               c:identifier="gst_data_queue_push_force"
               version="1.2"
               introspectable="0">
-        <doc xml:space="preserve">Pushes a #GstDataQueueItem (or a structure that begins with the same fields)
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstdataqueue.c"
+             line="430">Pushes a #GstDataQueueItem (or a structure that begins with the same fields)
 on the @queue. It ignores if the @queue is full or not and forces the @item
 to be pushed anyway.
 MT safe.
@@ -11487,17 +15800,24 @@ Note that this function has slightly different semantics than gst_pad_push()
 and gst_pad_push_event(): this function only takes ownership of @item and
 the #GstMiniObject contained in @item if the push was successful. If %FALSE
 is returned, the caller is responsible for freeing @item and its contents.</doc>
+        <source-position filename="libs/gst/base/gstdataqueue.h" line="151"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the @item was successfully pushed on the @queue.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstdataqueue.c"
+               line="445">%TRUE if the @item was successfully pushed on the @queue.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="queue" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDataQueue.</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstdataqueue.c"
+                 line="432">a #GstDataQueue.</doc>
             <type name="DataQueue" c:type="GstDataQueue*"/>
           </instance-parameter>
           <parameter name="item" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDataQueueItem.</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstdataqueue.c"
+                 line="433">a #GstDataQueueItem.</doc>
             <type name="DataQueueItem" c:type="GstDataQueueItem*"/>
           </parameter>
         </parameters>
@@ -11506,23 +15826,30 @@ is returned, the caller is responsible for freeing @item and its contents.</doc>
               c:identifier="gst_data_queue_set_flushing"
               version="1.2"
               introspectable="0">
-        <doc xml:space="preserve">Sets the queue to flushing state if @flushing is %TRUE. If set to flushing
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstdataqueue.c"
+             line="382">Sets the queue to flushing state if @flushing is %TRUE. If set to flushing
 state, any incoming data on the @queue will be discarded. Any call currently
 blocking on #gst_data_queue_push or #gst_data_queue_pop will return straight
 away with a return value of %FALSE. While the @queue is in flushing state,
 all calls to those two functions will return %FALSE.
 
 MT Safe.</doc>
+        <source-position filename="libs/gst/base/gstdataqueue.h" line="163"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="queue" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDataQueue.</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstdataqueue.c"
+                 line="384">a #GstDataQueue.</doc>
             <type name="DataQueue" c:type="GstDataQueue*"/>
           </instance-parameter>
           <parameter name="flushing" transfer-ownership="none">
-            <doc xml:space="preserve">a #gboolean stating if the queue will be flushing or not.</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstdataqueue.c"
+                 line="385">a #gboolean stating if the queue will be flushing or not.</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
@@ -11537,19 +15864,23 @@ MT Safe.</doc>
         <type name="guint" c:type="guint"/>
       </property>
       <field name="object">
-        <doc xml:space="preserve">the parent structure</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstdataqueue.h"
+             line="112">the parent structure</doc>
         <type name="GObject.Object" c:type="GObject"/>
       </field>
       <field name="priv" readable="0" private="1">
         <type name="DataQueuePrivate" c:type="GstDataQueuePrivate*"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
       <glib:signal name="empty" when="first" introspectable="0">
-        <doc xml:space="preserve">Reports that the queue became empty (empty).
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstdataqueue.c"
+             line="147">Reports that the queue became empty (empty).
 A queue is empty if the total amount of visible items inside it (num-visible, time,
 size) is lower than the boundary values which can be set through the GObject
 properties.</doc>
@@ -11558,7 +15889,9 @@ properties.</doc>
         </return-value>
       </glib:signal>
       <glib:signal name="full" when="first" introspectable="0">
-        <doc xml:space="preserve">Reports that the queue became full (full).
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstdataqueue.c"
+             line="161">Reports that the queue became full (full).
 A queue is full if the total amount of data inside it (num-visible, time,
 size) is higher than the boundary values which can be set through the GObject
 properties.</doc>
@@ -11570,34 +15903,49 @@ properties.</doc>
     <callback name="DataQueueCheckFullFunction"
               c:type="GstDataQueueCheckFullFunction"
               introspectable="0">
-      <doc xml:space="preserve">The prototype of the function used to inform the queue that it should be
+      <doc xml:space="preserve"
+           filename="libs/gst/base/gstdataqueue.h"
+           line="91">The prototype of the function used to inform the queue that it should be
 considered as full.</doc>
+      <source-position filename="libs/gst/base/gstdataqueue.h" line="104"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE if the queue should be considered full.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstdataqueue.h"
+             line="102">%TRUE if the queue should be considered full.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="queue" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstDataQueue.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstdataqueue.h"
+               line="93">a #GstDataQueue.</doc>
           <type name="DataQueue" c:type="GstDataQueue*"/>
         </parameter>
         <parameter name="visible" transfer-ownership="none">
-          <doc xml:space="preserve">The number of visible items currently in the queue.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstdataqueue.h"
+               line="94">The number of visible items currently in the queue.</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
         <parameter name="bytes" transfer-ownership="none">
-          <doc xml:space="preserve">The amount of bytes currently in the queue.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstdataqueue.h"
+               line="95">The amount of bytes currently in the queue.</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
         <parameter name="time" transfer-ownership="none">
-          <doc xml:space="preserve">The accumulated duration of the items currently in the queue.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstdataqueue.h"
+               line="96">The accumulated duration of the items currently in the queue.</doc>
           <type name="guint64" c:type="guint64"/>
         </parameter>
         <parameter name="checkdata"
                    transfer-ownership="none"
                    nullable="1"
                    allow-none="1">
-          <doc xml:space="preserve">The #gpointer registered when the #GstDataQueue was created.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstdataqueue.h"
+               line="97">The #gpointer registered when the #GstDataQueue was created.</doc>
           <type name="gpointer" c:type="gpointer"/>
         </parameter>
       </parameters>
@@ -11605,11 +15953,13 @@ considered as full.</doc>
     <record name="DataQueueClass"
             c:type="GstDataQueueClass"
             glib:is-gtype-struct-for="DataQueue">
+      <source-position filename="libs/gst/base/gstdataqueue.h" line="137"/>
       <field name="parent_class">
         <type name="GObject.ObjectClass" c:type="GObjectClass"/>
       </field>
       <field name="empty">
         <callback name="empty">
+          <source-position filename="libs/gst/base/gstdataqueue.h" line="133"/>
           <return-value transfer-ownership="none">
             <type name="none" c:type="void"/>
           </return-value>
@@ -11622,6 +15972,7 @@ considered as full.</doc>
       </field>
       <field name="full">
         <callback name="full">
+          <source-position filename="libs/gst/base/gstdataqueue.h" line="134"/>
           <return-value transfer-ownership="none">
             <type name="none" c:type="void"/>
           </return-value>
@@ -11633,12 +15984,13 @@ considered as full.</doc>
         </callback>
       </field>
       <field name="_gst_reserved">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
     </record>
     <callback name="DataQueueEmptyCallback" c:type="GstDataQueueEmptyCallback">
+      <source-position filename="libs/gst/base/gstdataqueue.h" line="108"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
@@ -11655,6 +16007,7 @@ considered as full.</doc>
       </parameters>
     </callback>
     <callback name="DataQueueFullCallback" c:type="GstDataQueueFullCallback">
+      <source-position filename="libs/gst/base/gstdataqueue.h" line="107"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
@@ -11671,51 +16024,74 @@ considered as full.</doc>
       </parameters>
     </callback>
     <record name="DataQueueItem" c:type="GstDataQueueItem" introspectable="0">
-      <doc xml:space="preserve">Structure used by #GstDataQueue. You can supply a different structure, as
+      <doc xml:space="preserve"
+           filename="libs/gst/base/gstdataqueue.h"
+           line="47">Structure used by #GstDataQueue. You can supply a different structure, as
 long as the top of the structure is identical to this structure.</doc>
+      <source-position filename="libs/gst/base/gstdataqueue.h" line="74"/>
       <field name="object" writable="1">
-        <doc xml:space="preserve">the #GstMiniObject to queue.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstdataqueue.h"
+             line="49">the #GstMiniObject to queue.</doc>
         <type name="Gst.MiniObject" c:type="GstMiniObject*"/>
       </field>
       <field name="size" writable="1">
-        <doc xml:space="preserve">the size in bytes of the miniobject.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstdataqueue.h"
+             line="50">the size in bytes of the miniobject.</doc>
         <type name="guint" c:type="guint"/>
       </field>
       <field name="duration" writable="1">
-        <doc xml:space="preserve">the duration in #GstClockTime of the miniobject. Can not be
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstdataqueue.h"
+             line="51">the duration in #GstClockTime of the miniobject. Can not be
 %GST_CLOCK_TIME_NONE.</doc>
         <type name="guint64" c:type="guint64"/>
       </field>
       <field name="visible" writable="1">
-        <doc xml:space="preserve">%TRUE if @object should be considered as a visible object.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstdataqueue.h"
+             line="53">%TRUE if @object should be considered as a visible object.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </field>
       <field name="destroy" writable="1">
-        <doc xml:space="preserve">The #GDestroyNotify function to use to free the #GstDataQueueItem.
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstdataqueue.h"
+             line="54">The #GDestroyNotify function to use to free the #GstDataQueueItem.
 This function should also drop the reference to @object the owner of the
 #GstDataQueueItem is assumed to hold.</doc>
         <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
     </record>
     <record name="DataQueuePrivate" c:type="GstDataQueuePrivate" disguised="1">
+      <source-position filename="libs/gst/base/gstdataqueue.h" line="45"/>
     </record>
     <record name="DataQueueSize" c:type="GstDataQueueSize" introspectable="0">
-      <doc xml:space="preserve">Structure describing the size of a queue.</doc>
+      <doc xml:space="preserve"
+           filename="libs/gst/base/gstdataqueue.h"
+           line="76">Structure describing the size of a queue.</doc>
+      <source-position filename="libs/gst/base/gstdataqueue.h" line="89"/>
       <field name="visible" writable="1">
-        <doc xml:space="preserve">number of buffers</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstdataqueue.h"
+             line="78">number of buffers</doc>
         <type name="guint" c:type="guint"/>
       </field>
       <field name="bytes" writable="1">
-        <doc xml:space="preserve">number of bytes</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstdataqueue.h"
+             line="79">number of bytes</doc>
         <type name="guint" c:type="guint"/>
       </field>
       <field name="time" writable="1">
-        <doc xml:space="preserve">amount of time</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstdataqueue.h"
+             line="80">amount of time</doc>
         <type name="guint64" c:type="guint64"/>
       </field>
     </record>
@@ -11725,7 +16101,9 @@ This function should also drop the reference to @object the owner of the
             glib:type-name="GstFlowCombiner"
             glib:get-type="gst_flow_combiner_get_type"
             c:symbol-prefix="flow_combiner">
-      <doc xml:space="preserve">Utility struct to help handling #GstFlowReturn combination. Useful for
+      <doc xml:space="preserve"
+           filename="libs/gst/base/gstflowcombiner.c"
+           line="24">Utility struct to help handling #GstFlowReturn combination. Useful for
 #GstElement&lt;!-- --&gt;s that have multiple source pads and need to combine
 the different #GstFlowReturn for those pads.
 
@@ -11756,29 +16134,42 @@ These rules are:
 
 %GST_FLOW_ERROR or below, GST_FLOW_NOT_NEGOTIATED and GST_FLOW_FLUSHING are
 returned immediately from the gst_flow_combiner_update_flow() function.</doc>
+      <source-position filename="libs/gst/base/gstflowcombiner.h" line="43"/>
       <constructor name="new"
                    c:identifier="gst_flow_combiner_new"
                    version="1.4">
-        <doc xml:space="preserve">Creates a new #GstFlowCombiner, use gst_flow_combiner_free() to free it.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstflowcombiner.c"
+             line="87">Creates a new #GstFlowCombiner, use gst_flow_combiner_free() to free it.</doc>
+        <source-position filename="libs/gst/base/gstflowcombiner.h" line="46"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">A new #GstFlowCombiner</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstflowcombiner.c"
+               line="92">A new #GstFlowCombiner</doc>
           <type name="FlowCombiner" c:type="GstFlowCombiner*"/>
         </return-value>
       </constructor>
       <method name="add_pad"
               c:identifier="gst_flow_combiner_add_pad"
               version="1.4">
-        <doc xml:space="preserve">Adds a new #GstPad to the #GstFlowCombiner.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstflowcombiner.c"
+             line="320">Adds a new #GstPad to the #GstFlowCombiner.</doc>
+        <source-position filename="libs/gst/base/gstflowcombiner.h" line="64"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="combiner" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstFlowCombiner</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstflowcombiner.c"
+                 line="322">the #GstFlowCombiner</doc>
             <type name="FlowCombiner" c:type="GstFlowCombiner*"/>
           </instance-parameter>
           <parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstPad that is being added</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstflowcombiner.c"
+                 line="323">the #GstPad that is being added</doc>
             <type name="Gst.Pad" c:type="GstPad*"/>
           </parameter>
         </parameters>
@@ -11786,38 +16177,55 @@ returned immediately from the gst_flow_combiner_update_flow() function.</doc>
       <method name="clear"
               c:identifier="gst_flow_combiner_clear"
               version="1.6">
-        <doc xml:space="preserve">Removes all pads from a #GstFlowCombiner and resets it to its initial state.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstflowcombiner.c"
+             line="168">Removes all pads from a #GstFlowCombiner and resets it to its initial state.</doc>
+        <source-position filename="libs/gst/base/gstflowcombiner.h" line="70"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="combiner" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstFlowCombiner to clear</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstflowcombiner.c"
+                 line="170">the #GstFlowCombiner to clear</doc>
             <type name="FlowCombiner" c:type="GstFlowCombiner*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="free" c:identifier="gst_flow_combiner_free" version="1.4">
-        <doc xml:space="preserve">Frees a #GstFlowCombiner struct and all its internal data.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstflowcombiner.c"
+             line="110">Frees a #GstFlowCombiner struct and all its internal data.</doc>
+        <source-position filename="libs/gst/base/gstflowcombiner.h" line="55"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="combiner" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstFlowCombiner to free</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstflowcombiner.c"
+                 line="112">the #GstFlowCombiner to free</doc>
             <type name="FlowCombiner" c:type="GstFlowCombiner*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="ref" c:identifier="gst_flow_combiner_ref" version="1.12.1">
-        <doc xml:space="preserve">Increments the reference count on the #GstFlowCombiner.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstflowcombiner.c"
+             line="124">Increments the reference count on the #GstFlowCombiner.</doc>
+        <source-position filename="libs/gst/base/gstflowcombiner.h" line="49"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the #GstFlowCombiner.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstflowcombiner.c"
+               line="130">the #GstFlowCombiner.</doc>
           <type name="FlowCombiner" c:type="GstFlowCombiner*"/>
         </return-value>
         <parameters>
           <instance-parameter name="combiner" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstFlowCombiner to add a reference to.</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstflowcombiner.c"
+                 line="126">the #GstFlowCombiner to add a reference to.</doc>
             <type name="FlowCombiner" c:type="GstFlowCombiner*"/>
           </instance-parameter>
         </parameters>
@@ -11825,17 +16233,24 @@ returned immediately from the gst_flow_combiner_update_flow() function.</doc>
       <method name="remove_pad"
               c:identifier="gst_flow_combiner_remove_pad"
               version="1.4">
-        <doc xml:space="preserve">Removes a #GstPad from the #GstFlowCombiner.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstflowcombiner.c"
+             line="338">Removes a #GstPad from the #GstFlowCombiner.</doc>
+        <source-position filename="libs/gst/base/gstflowcombiner.h" line="67"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="combiner" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstFlowCombiner</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstflowcombiner.c"
+                 line="340">the #GstFlowCombiner</doc>
             <type name="FlowCombiner" c:type="GstFlowCombiner*"/>
           </instance-parameter>
           <parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstPad to remove</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstflowcombiner.c"
+                 line="341">the #GstPad to remove</doc>
             <type name="Gst.Pad" c:type="GstPad*"/>
           </parameter>
         </parameters>
@@ -11843,13 +16258,18 @@ returned immediately from the gst_flow_combiner_update_flow() function.</doc>
       <method name="reset"
               c:identifier="gst_flow_combiner_reset"
               version="1.6">
-        <doc xml:space="preserve">Reset flow combiner and all pads to their initial state without removing pads.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstflowcombiner.c"
+             line="190">Reset flow combiner and all pads to their initial state without removing pads.</doc>
+        <source-position filename="libs/gst/base/gstflowcombiner.h" line="73"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="combiner" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstFlowCombiner to clear</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstflowcombiner.c"
+                 line="192">the #GstFlowCombiner to clear</doc>
             <type name="FlowCombiner" c:type="GstFlowCombiner*"/>
           </instance-parameter>
         </parameters>
@@ -11857,13 +16277,18 @@ returned immediately from the gst_flow_combiner_update_flow() function.</doc>
       <method name="unref"
               c:identifier="gst_flow_combiner_unref"
               version="1.12.1">
-        <doc xml:space="preserve">Decrements the reference count on the #GstFlowCombiner.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstflowcombiner.c"
+             line="144">Decrements the reference count on the #GstFlowCombiner.</doc>
+        <source-position filename="libs/gst/base/gstflowcombiner.h" line="52"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="combiner" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstFlowCombiner to unreference.</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstflowcombiner.c"
+                 line="146">the #GstFlowCombiner to unreference.</doc>
             <type name="FlowCombiner" c:type="GstFlowCombiner*"/>
           </instance-parameter>
         </parameters>
@@ -11871,23 +16296,32 @@ returned immediately from the gst_flow_combiner_update_flow() function.</doc>
       <method name="update_flow"
               c:identifier="gst_flow_combiner_update_flow"
               version="1.4">
-        <doc xml:space="preserve">Computes the combined flow return for the pads in it.
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstflowcombiner.c"
+             line="253">Computes the combined flow return for the pads in it.
 
 The #GstFlowReturn parameter should be the last flow return update for a pad
 in this #GstFlowCombiner. It will use this value to be able to shortcut some
 combinations and avoid looking over all pads again. e.g. The last combined
 return is the same as the latest obtained #GstFlowReturn.</doc>
+        <source-position filename="libs/gst/base/gstflowcombiner.h" line="58"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The combined #GstFlowReturn</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstflowcombiner.c"
+               line="265">The combined #GstFlowReturn</doc>
           <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
         <parameters>
           <instance-parameter name="combiner" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstFlowCombiner</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstflowcombiner.c"
+                 line="255">the #GstFlowCombiner</doc>
             <type name="FlowCombiner" c:type="GstFlowCombiner*"/>
           </instance-parameter>
           <parameter name="fret" transfer-ownership="none">
-            <doc xml:space="preserve">the latest #GstFlowReturn received for a pad in this #GstFlowCombiner</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstflowcombiner.c"
+                 line="256">the latest #GstFlowReturn received for a pad in this #GstFlowCombiner</doc>
             <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
           </parameter>
         </parameters>
@@ -11895,33 +16329,251 @@ return is the same as the latest obtained #GstFlowReturn.</doc>
       <method name="update_pad_flow"
               c:identifier="gst_flow_combiner_update_pad_flow"
               version="1.6">
-        <doc xml:space="preserve">Sets the provided pad's last flow return to provided value and computes
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstflowcombiner.c"
+             line="292">Sets the provided pad's last flow return to provided value and computes
 the combined flow return for the pads in it.
 
 The #GstFlowReturn parameter should be the last flow return update for a pad
 in this #GstFlowCombiner. It will use this value to be able to shortcut some
 combinations and avoid looking over all pads again. e.g. The last combined
 return is the same as the latest obtained #GstFlowReturn.</doc>
+        <source-position filename="libs/gst/base/gstflowcombiner.h" line="61"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The combined #GstFlowReturn</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstflowcombiner.c"
+               line="306">The combined #GstFlowReturn</doc>
           <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
         <parameters>
           <instance-parameter name="combiner" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstFlowCombiner</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstflowcombiner.c"
+                 line="294">the #GstFlowCombiner</doc>
             <type name="FlowCombiner" c:type="GstFlowCombiner*"/>
           </instance-parameter>
           <parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstPad whose #GstFlowReturn to update</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstflowcombiner.c"
+                 line="295">the #GstPad whose #GstFlowReturn to update</doc>
             <type name="Gst.Pad" c:type="GstPad*"/>
           </parameter>
           <parameter name="fret" transfer-ownership="none">
-            <doc xml:space="preserve">the latest #GstFlowReturn received for a pad in this #GstFlowCombiner</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstflowcombiner.c"
+                 line="296">the latest #GstFlowReturn received for a pad in this #GstFlowCombiner</doc>
             <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
           </parameter>
         </parameters>
       </method>
     </record>
+    <function-macro name="IS_ADAPTER"
+                    c:identifier="GST_IS_ADAPTER"
+                    introspectable="0">
+      <source-position filename="libs/gst/base/gstadapter.h" line="37"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_ADAPTER_CLASS"
+                    c:identifier="GST_IS_ADAPTER_CLASS"
+                    introspectable="0">
+      <source-position filename="libs/gst/base/gstadapter.h" line="39"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_AGGREGATOR"
+                    c:identifier="GST_IS_AGGREGATOR"
+                    introspectable="0">
+      <source-position filename="libs/gst/base/gstaggregator.h" line="133"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_AGGREGATOR_CLASS"
+                    c:identifier="GST_IS_AGGREGATOR_CLASS"
+                    introspectable="0">
+      <source-position filename="libs/gst/base/gstaggregator.h" line="134"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_AGGREGATOR_PAD"
+                    c:identifier="GST_IS_AGGREGATOR_PAD"
+                    introspectable="0">
+      <source-position filename="libs/gst/base/gstaggregator.h" line="46"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_AGGREGATOR_PAD_CLASS"
+                    c:identifier="GST_IS_AGGREGATOR_PAD_CLASS"
+                    introspectable="0">
+      <source-position filename="libs/gst/base/gstaggregator.h" line="47"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_BASE_PARSE"
+                    c:identifier="GST_IS_BASE_PARSE"
+                    introspectable="0">
+      <source-position filename="libs/gst/base/gstbaseparse.h" line="34"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_BASE_PARSE_CLASS"
+                    c:identifier="GST_IS_BASE_PARSE_CLASS"
+                    introspectable="0">
+      <source-position filename="libs/gst/base/gstbaseparse.h" line="35"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_BASE_SINK"
+                    c:identifier="GST_IS_BASE_SINK"
+                    introspectable="0">
+      <source-position filename="libs/gst/base/gstbasesink.h" line="36"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_BASE_SINK_CLASS"
+                    c:identifier="GST_IS_BASE_SINK_CLASS"
+                    introspectable="0">
+      <source-position filename="libs/gst/base/gstbasesink.h" line="37"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_BASE_SRC"
+                    c:identifier="GST_IS_BASE_SRC"
+                    introspectable="0">
+      <source-position filename="libs/gst/base/gstbasesrc.h" line="36"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_BASE_SRC_CLASS"
+                    c:identifier="GST_IS_BASE_SRC_CLASS"
+                    introspectable="0">
+      <source-position filename="libs/gst/base/gstbasesrc.h" line="37"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_BASE_TRANSFORM"
+                    c:identifier="GST_IS_BASE_TRANSFORM"
+                    introspectable="0">
+      <source-position filename="libs/gst/base/gstbasetransform.h" line="33"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_BASE_TRANSFORM_CLASS"
+                    c:identifier="GST_IS_BASE_TRANSFORM_CLASS"
+                    introspectable="0">
+      <source-position filename="libs/gst/base/gstbasetransform.h" line="34"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_COLLECT_PADS"
+                    c:identifier="GST_IS_COLLECT_PADS"
+                    introspectable="0">
+      <source-position filename="libs/gst/base/gstcollectpads.h" line="35"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_COLLECT_PADS_CLASS"
+                    c:identifier="GST_IS_COLLECT_PADS_CLASS"
+                    introspectable="0">
+      <source-position filename="libs/gst/base/gstcollectpads.h" line="36"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_DATA_QUEUE"
+                    c:identifier="GST_IS_DATA_QUEUE"
+                    introspectable="0">
+      <source-position filename="libs/gst/base/gstdataqueue.h" line="35"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_DATA_QUEUE_CLASS"
+                    c:identifier="GST_IS_DATA_QUEUE_CLASS"
+                    introspectable="0">
+      <source-position filename="libs/gst/base/gstdataqueue.h" line="37"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_PUSH_SRC"
+                    c:identifier="GST_IS_PUSH_SRC"
+                    introspectable="0">
+      <source-position filename="libs/gst/base/gstpushsrc.h" line="36"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_PUSH_SRC_CLASS"
+                    c:identifier="GST_IS_PUSH_SRC_CLASS"
+                    introspectable="0">
+      <source-position filename="libs/gst/base/gstpushsrc.h" line="37"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PUSH_SRC"
+                    c:identifier="GST_PUSH_SRC"
+                    introspectable="0">
+      <source-position filename="libs/gst/base/gstpushsrc.h" line="33"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PUSH_SRC_CLASS"
+                    c:identifier="GST_PUSH_SRC_CLASS"
+                    introspectable="0">
+      <source-position filename="libs/gst/base/gstpushsrc.h" line="34"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PUSH_SRC_GET_CLASS"
+                    c:identifier="GST_PUSH_SRC_GET_CLASS"
+                    introspectable="0">
+      <source-position filename="libs/gst/base/gstpushsrc.h" line="35"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
     <class name="PushSrc"
            c:symbol-prefix="push_src"
            c:type="GstPushSrc"
@@ -11929,7 +16581,9 @@ return is the same as the latest obtained #GstFlowReturn.</doc>
            glib:type-name="GstPushSrc"
            glib:get-type="gst_push_src_get_type"
            glib:type-struct="PushSrcClass">
-      <doc xml:space="preserve">This class is mostly useful for elements that cannot do
+      <doc xml:space="preserve"
+           filename="libs/gst/base/gstpushsrc.c"
+           line="23">This class is mostly useful for elements that cannot do
 random access, or at least very slowly. The source usually
 prefers to push out a fixed size buffer.
 
@@ -11948,7 +16602,9 @@ addition to the ::create method.
 
 Seeking, flushing, scheduling and sync is all handled by this
 base class.</doc>
+      <source-position filename="libs/gst/base/gstpushsrc.h" line="83"/>
       <virtual-method name="alloc">
+        <source-position filename="libs/gst/base/gstpushsrc.h" line="77"/>
         <return-value transfer-ownership="none">
           <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
@@ -11962,6 +16618,7 @@ base class.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="create">
+        <source-position filename="libs/gst/base/gstpushsrc.h" line="75"/>
         <return-value transfer-ownership="none">
           <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
@@ -11975,6 +16632,7 @@ base class.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="fill">
+        <source-position filename="libs/gst/base/gstpushsrc.h" line="79"/>
         <return-value transfer-ownership="none">
           <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
@@ -11991,7 +16649,7 @@ base class.</doc>
         <type name="BaseSrc" c:type="GstBaseSrc"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -11999,15 +16657,21 @@ base class.</doc>
     <record name="PushSrcClass"
             c:type="GstPushSrcClass"
             glib:is-gtype-struct-for="PushSrc">
-      <doc xml:space="preserve">Subclasses can override any of the available virtual methods or not, as
+      <doc xml:space="preserve"
+           filename="libs/gst/base/gstpushsrc.h"
+           line="54">Subclasses can override any of the available virtual methods or not, as
 needed. At the minimum, the @fill method should be overridden to produce
 buffers.</doc>
+      <source-position filename="libs/gst/base/gstpushsrc.h" line="83"/>
       <field name="parent_class">
-        <doc xml:space="preserve">Element parent class</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstpushsrc.h"
+             line="56">Element parent class</doc>
         <type name="BaseSrcClass" c:type="GstBaseSrcClass"/>
       </field>
       <field name="create">
         <callback name="create">
+          <source-position filename="libs/gst/base/gstpushsrc.h" line="75"/>
           <return-value transfer-ownership="none">
             <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
           </return-value>
@@ -12023,6 +16687,7 @@ buffers.</doc>
       </field>
       <field name="alloc">
         <callback name="alloc">
+          <source-position filename="libs/gst/base/gstpushsrc.h" line="77"/>
           <return-value transfer-ownership="none">
             <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
           </return-value>
@@ -12038,6 +16703,7 @@ buffers.</doc>
       </field>
       <field name="fill">
         <callback name="fill">
+          <source-position filename="libs/gst/base/gstpushsrc.h" line="79"/>
           <return-value transfer-ownership="none">
             <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
           </return-value>
@@ -12052,7 +16718,7 @@ buffers.</doc>
         </callback>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -12061,20 +16727,28 @@ buffers.</doc>
             c:type="GstQueueArray"
             disguised="1"
             introspectable="0">
-      <doc xml:space="preserve">#GstQueueArray is an object that provides standard queue functionality
+      <doc xml:space="preserve"
+           filename="libs/gst/base/gstqueuearray.c"
+           line="23">#GstQueueArray is an object that provides standard queue functionality
 based on an array instead of linked lists. This reduces the overhead
 caused by memory management by a large factor.</doc>
+      <source-position filename="libs/gst/base/gstqueuearray.h" line="34"/>
       <method name="clear"
               c:identifier="gst_queue_array_clear"
               version="1.16"
               introspectable="0">
-        <doc xml:space="preserve">Clears queue @array and frees all memory associated to it.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstqueuearray.c"
+             line="163">Clears queue @array and frees all memory associated to it.</doc>
+        <source-position filename="libs/gst/base/gstqueuearray.h" line="47"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="array" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstQueueArray object</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstqueuearray.c"
+                 line="165">a #GstQueueArray object</doc>
             <type name="QueueArray" c:type="GstQueueArray*"/>
           </instance-parameter>
         </parameters>
@@ -12083,18 +16757,27 @@ caused by memory management by a large factor.</doc>
               c:identifier="gst_queue_array_drop_element"
               version="1.2"
               introspectable="0">
-        <doc xml:space="preserve">Drops the queue element at position @idx from queue @array.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstqueuearray.c"
+             line="687">Drops the queue element at position @idx from queue @array.</doc>
+        <source-position filename="libs/gst/base/gstqueuearray.h" line="71"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">the dropped element</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstqueuearray.c"
+               line="694">the dropped element</doc>
           <type name="gpointer" c:type="gpointer"/>
         </return-value>
         <parameters>
           <instance-parameter name="array" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstQueueArray object</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstqueuearray.c"
+                 line="689">a #GstQueueArray object</doc>
             <type name="QueueArray" c:type="GstQueueArray*"/>
           </instance-parameter>
           <parameter name="idx" transfer-ownership="none">
-            <doc xml:space="preserve">index to drop</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstqueuearray.c"
+                 line="690">index to drop</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
@@ -12103,27 +16786,38 @@ caused by memory management by a large factor.</doc>
               c:identifier="gst_queue_array_drop_struct"
               version="1.6"
               introspectable="0">
-        <doc xml:space="preserve">Drops the queue element at position @idx from queue @array and copies the
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstqueuearray.c"
+             line="569">Drops the queue element at position @idx from queue @array and copies the
 data of the element or structure that was removed into @p_struct if
 @p_struct is set (not NULL).</doc>
+        <source-position filename="libs/gst/base/gstqueuearray.h" line="98"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">TRUE on success, or FALSE on error</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstqueuearray.c"
+               line="579">TRUE on success, or FALSE on error</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="array" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstQueueArray object</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstqueuearray.c"
+                 line="571">a #GstQueueArray object</doc>
             <type name="QueueArray" c:type="GstQueueArray*"/>
           </instance-parameter>
           <parameter name="idx" transfer-ownership="none">
-            <doc xml:space="preserve">index to drop</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstqueuearray.c"
+                 line="572">index to drop</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="p_struct"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">address into which to store the data of the dropped structure, or NULL</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstqueuearray.c"
+                 line="573">address into which to store the data of the dropped structure, or NULL</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
         </parameters>
@@ -12132,16 +16826,23 @@ data of the element or structure that was removed into @p_struct if
               c:identifier="gst_queue_array_find"
               version="1.2"
               introspectable="0">
-        <doc xml:space="preserve">Finds an element in the queue @array, either by comparing every element
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstqueuearray.c"
+             line="709">Finds an element in the queue @array, either by comparing every element
 with @func or by looking up @data if no compare function @func is provided,
 and returning the index of the found element.</doc>
+        <source-position filename="libs/gst/base/gstqueuearray.h" line="74"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">Index of the found element or -1 if nothing was found.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstqueuearray.c"
+               line="719">Index of the found element or -1 if nothing was found.</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="array" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstQueueArray object</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstqueuearray.c"
+                 line="711">a #GstQueueArray object</doc>
             <type name="QueueArray" c:type="GstQueueArray*"/>
           </instance-parameter>
           <parameter name="func"
@@ -12149,14 +16850,18 @@ and returning the index of the found element.</doc>
                      nullable="1"
                      allow-none="1"
                      closure="1">
-            <doc xml:space="preserve">comparison function, or %NULL to find @data by value</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstqueuearray.c"
+                 line="712">comparison function, or %NULL to find @data by value</doc>
             <type name="GLib.CompareFunc" c:type="GCompareFunc"/>
           </parameter>
           <parameter name="data"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">data for comparison function</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstqueuearray.c"
+                 line="713">data for comparison function</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
         </parameters>
@@ -12165,13 +16870,18 @@ and returning the index of the found element.</doc>
               c:identifier="gst_queue_array_free"
               version="1.2"
               introspectable="0">
-        <doc xml:space="preserve">Frees queue @array and all memory associated to it.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstqueuearray.c"
+             line="105">Frees queue @array and all memory associated to it.</doc>
+        <source-position filename="libs/gst/base/gstqueuearray.h" line="40"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="array" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstQueueArray object</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstqueuearray.c"
+                 line="107">a #GstQueueArray object</doc>
             <type name="QueueArray" c:type="GstQueueArray*"/>
           </instance-parameter>
         </parameters>
@@ -12180,14 +16890,21 @@ and returning the index of the found element.</doc>
               c:identifier="gst_queue_array_get_length"
               version="1.2"
               introspectable="0">
-        <doc xml:space="preserve">Returns the length of the queue @array</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the length of the queue @array.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstqueuearray.c"
+             line="757">Returns the length of the queue @array</doc>
+        <source-position filename="libs/gst/base/gstqueuearray.h" line="78"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstqueuearray.c"
+               line="763">the length of the queue @array.</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="array" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstQueueArray object</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstqueuearray.c"
+                 line="759">a #GstQueueArray object</doc>
             <type name="QueueArray" c:type="GstQueueArray*"/>
           </instance-parameter>
         </parameters>
@@ -12196,14 +16913,21 @@ and returning the index of the found element.</doc>
               c:identifier="gst_queue_array_is_empty"
               version="1.2"
               introspectable="0">
-        <doc xml:space="preserve">Checks if the queue @array is empty.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the queue @array is empty</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstqueuearray.c"
+             line="551">Checks if the queue @array is empty.</doc>
+        <source-position filename="libs/gst/base/gstqueuearray.h" line="68"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstqueuearray.c"
+               line="557">%TRUE if the queue @array is empty</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="array" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstQueueArray object</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstqueuearray.c"
+                 line="553">a #GstQueueArray object</doc>
             <type name="QueueArray" c:type="GstQueueArray*"/>
           </instance-parameter>
         </parameters>
@@ -12212,15 +16936,22 @@ and returning the index of the found element.</doc>
               c:identifier="gst_queue_array_peek_head"
               version="1.2"
               introspectable="0">
-        <doc xml:space="preserve">Returns the head of the queue @array and does not
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstqueuearray.c"
+             line="270">Returns the head of the queue @array and does not
 remove it from the queue.</doc>
+        <source-position filename="libs/gst/base/gstqueuearray.h" line="53"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">The head of the queue</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstqueuearray.c"
+               line="277">The head of the queue</doc>
           <type name="gpointer" c:type="gpointer"/>
         </return-value>
         <parameters>
           <instance-parameter name="array" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstQueueArray object</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstqueuearray.c"
+                 line="272">a #GstQueueArray object</doc>
             <type name="QueueArray" c:type="GstQueueArray*"/>
           </instance-parameter>
         </parameters>
@@ -12229,16 +16960,23 @@ remove it from the queue.</doc>
               c:identifier="gst_queue_array_peek_head_struct"
               version="1.6"
               introspectable="0">
-        <doc xml:space="preserve">Returns the head of the queue @array without removing it from the queue.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstqueuearray.c"
+             line="247">Returns the head of the queue @array without removing it from the queue.</doc>
+        <source-position filename="libs/gst/base/gstqueuearray.h" line="92"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">pointer to element or struct, or NULL if @array was empty. The
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstqueuearray.c"
+               line="253">pointer to element or struct, or NULL if @array was empty. The
    data pointed to by the returned pointer stays valid only as long as
    the queue array is not modified further!</doc>
           <type name="gpointer" c:type="gpointer"/>
         </return-value>
         <parameters>
           <instance-parameter name="array" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstQueueArray object</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstqueuearray.c"
+                 line="249">a #GstQueueArray object</doc>
             <type name="QueueArray" c:type="GstQueueArray*"/>
           </instance-parameter>
         </parameters>
@@ -12247,9 +16985,14 @@ remove it from the queue.</doc>
               c:identifier="gst_queue_array_peek_nth"
               version="1.16"
               introspectable="0">
-        <doc xml:space="preserve">Returns the item at @idx in @array, but does not remove it from the queue.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstqueuearray.c"
+             line="292">Returns the item at @idx in @array, but does not remove it from the queue.</doc>
+        <source-position filename="libs/gst/base/gstqueuearray.h" line="56"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">The item, or %NULL if @idx was out of bounds</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstqueuearray.c"
+               line="297">The item, or %NULL if @idx was out of bounds</doc>
           <type name="gpointer" c:type="gpointer"/>
         </return-value>
         <parameters>
@@ -12265,9 +17008,14 @@ remove it from the queue.</doc>
               c:identifier="gst_queue_array_peek_nth_struct"
               version="1.16"
               introspectable="0">
-        <doc xml:space="preserve">Returns the item at @idx in @array, but does not remove it from the queue.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstqueuearray.c"
+             line="312">Returns the item at @idx in @array, but does not remove it from the queue.</doc>
+        <source-position filename="libs/gst/base/gstqueuearray.h" line="95"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">The item, or %NULL if @idx was out of bounds</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstqueuearray.c"
+               line="317">The item, or %NULL if @idx was out of bounds</doc>
           <type name="gpointer" c:type="gpointer"/>
         </return-value>
         <parameters>
@@ -12283,14 +17031,21 @@ remove it from the queue.</doc>
               c:identifier="gst_queue_array_peek_tail"
               version="1.14"
               introspectable="0">
-        <doc xml:space="preserve">Returns the tail of the queue @array, but does not remove it from the queue.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstqueuearray.c"
+             line="425">Returns the tail of the queue @array, but does not remove it from the queue.</doc>
+        <source-position filename="libs/gst/base/gstqueuearray.h" line="62"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">The tail of the queue</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstqueuearray.c"
+               line="431">The tail of the queue</doc>
           <type name="gpointer" c:type="gpointer"/>
         </return-value>
         <parameters>
           <instance-parameter name="array" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstQueueArray object</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstqueuearray.c"
+                 line="427">a #GstQueueArray object</doc>
             <type name="QueueArray" c:type="GstQueueArray*"/>
           </instance-parameter>
         </parameters>
@@ -12299,14 +17054,21 @@ remove it from the queue.</doc>
               c:identifier="gst_queue_array_peek_tail_struct"
               version="1.14"
               introspectable="0">
-        <doc xml:space="preserve">Returns the tail of the queue @array, but does not remove it from the queue.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstqueuearray.c"
+             line="453">Returns the tail of the queue @array, but does not remove it from the queue.</doc>
+        <source-position filename="libs/gst/base/gstqueuearray.h" line="105"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">The tail of the queue</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstqueuearray.c"
+               line="459">The tail of the queue</doc>
           <type name="gpointer" c:type="gpointer"/>
         </return-value>
         <parameters>
           <instance-parameter name="array" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstQueueArray object</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstqueuearray.c"
+                 line="455">a #GstQueueArray object</doc>
             <type name="QueueArray" c:type="GstQueueArray*"/>
           </instance-parameter>
         </parameters>
@@ -12315,15 +17077,22 @@ remove it from the queue.</doc>
               c:identifier="gst_queue_array_pop_head"
               version="1.2"
               introspectable="0">
-        <doc xml:space="preserve">Returns and head of the queue @array and removes
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstqueuearray.c"
+             line="219">Returns and head of the queue @array and removes
 it from the queue.</doc>
+        <source-position filename="libs/gst/base/gstqueuearray.h" line="50"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">The head of the queue</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstqueuearray.c"
+               line="226">The head of the queue</doc>
           <type name="gpointer" c:type="gpointer"/>
         </return-value>
         <parameters>
           <instance-parameter name="array" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstQueueArray object</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstqueuearray.c"
+                 line="221">a #GstQueueArray object</doc>
             <type name="QueueArray" c:type="GstQueueArray*"/>
           </instance-parameter>
         </parameters>
@@ -12332,16 +17101,23 @@ it from the queue.</doc>
               c:identifier="gst_queue_array_pop_head_struct"
               version="1.6"
               introspectable="0">
-        <doc xml:space="preserve">Returns the head of the queue @array and removes it from the queue.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstqueuearray.c"
+             line="189">Returns the head of the queue @array and removes it from the queue.</doc>
+        <source-position filename="libs/gst/base/gstqueuearray.h" line="89"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">pointer to element or struct, or NULL if @array was empty. The
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstqueuearray.c"
+               line="195">pointer to element or struct, or NULL if @array was empty. The
    data pointed to by the returned pointer stays valid only as long as
    the queue array is not modified further!</doc>
           <type name="gpointer" c:type="gpointer"/>
         </return-value>
         <parameters>
           <instance-parameter name="array" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstQueueArray object</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstqueuearray.c"
+                 line="191">a #GstQueueArray object</doc>
             <type name="QueueArray" c:type="GstQueueArray*"/>
           </instance-parameter>
         </parameters>
@@ -12350,15 +17126,22 @@ it from the queue.</doc>
               c:identifier="gst_queue_array_pop_tail"
               version="1.14"
               introspectable="0">
-        <doc xml:space="preserve">Returns the tail of the queue @array and removes
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstqueuearray.c"
+             line="481">Returns the tail of the queue @array and removes
 it from the queue.</doc>
+        <source-position filename="libs/gst/base/gstqueuearray.h" line="59"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">The tail of the queue</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstqueuearray.c"
+               line="488">The tail of the queue</doc>
           <type name="gpointer" c:type="gpointer"/>
         </return-value>
         <parameters>
           <instance-parameter name="array" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstQueueArray object</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstqueuearray.c"
+                 line="483">a #GstQueueArray object</doc>
             <type name="QueueArray" c:type="GstQueueArray*"/>
           </instance-parameter>
         </parameters>
@@ -12367,15 +17150,22 @@ it from the queue.</doc>
               c:identifier="gst_queue_array_pop_tail_struct"
               version="1.14"
               introspectable="0">
-        <doc xml:space="preserve">Returns the tail of the queue @array and removes
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstqueuearray.c"
+             line="516">Returns the tail of the queue @array and removes
 it from the queue.</doc>
+        <source-position filename="libs/gst/base/gstqueuearray.h" line="102"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">The tail of the queue</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstqueuearray.c"
+               line="523">The tail of the queue</doc>
           <type name="gpointer" c:type="gpointer"/>
         </return-value>
         <parameters>
           <instance-parameter name="array" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstQueueArray object</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstqueuearray.c"
+                 line="518">a #GstQueueArray object</doc>
             <type name="QueueArray" c:type="GstQueueArray*"/>
           </instance-parameter>
         </parameters>
@@ -12384,26 +17174,34 @@ it from the queue.</doc>
               c:identifier="gst_queue_array_push_tail"
               version="1.2"
               introspectable="0">
-        <doc xml:space="preserve">Pushes @data to the tail of the queue @array.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstqueuearray.c"
+             line="401">Pushes @data to the tail of the queue @array.</doc>
+        <source-position filename="libs/gst/base/gstqueuearray.h" line="65"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="array" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstQueueArray object</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstqueuearray.c"
+                 line="403">a #GstQueueArray object</doc>
             <type name="QueueArray" c:type="GstQueueArray*"/>
           </instance-parameter>
           <parameter name="data"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">object to push</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstqueuearray.c"
+                 line="404">object to push</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
         </parameters>
       </method>
       <method name="push_tail_struct"
               c:identifier="gst_queue_array_push_tail_struct">
+        <source-position filename="libs/gst/base/gstqueuearray.h" line="86"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
@@ -12423,7 +17221,9 @@ it from the queue.</doc>
               c:identifier="gst_queue_array_set_clear_func"
               version="1.16"
               introspectable="0">
-        <doc xml:space="preserve">Sets a function to clear an element of @array.
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstqueuearray.c"
+             line="122">Sets a function to clear an element of @array.
 
 The @clear_func will be called when an element in the array
 data segment is removed and when the array is freed and data
@@ -12433,16 +17233,21 @@ pointer to the element to clear, rather than the element itself.
 Note that in contrast with other uses of #GDestroyNotify
 functions, @clear_func is expected to clear the contents of
 the array element it is given, but not free the element itself.</doc>
+        <source-position filename="libs/gst/base/gstqueuearray.h" line="43"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="array" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstQueueArray object</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstqueuearray.c"
+                 line="124">a #GstQueueArray object</doc>
             <type name="QueueArray" c:type="GstQueueArray*"/>
           </instance-parameter>
           <parameter name="clear_func" transfer-ownership="none" scope="async">
-            <doc xml:space="preserve">a function to clear an element of @array</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstqueuearray.c"
+                 line="125">a function to clear an element of @array</doc>
             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
           </parameter>
         </parameters>
@@ -12451,15 +17256,22 @@ the array element it is given, but not free the element itself.</doc>
                 c:identifier="gst_queue_array_new"
                 version="1.2"
                 introspectable="0">
-        <doc xml:space="preserve">Allocates a new #GstQueueArray object with an initial
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstqueuearray.c"
+             line="84">Allocates a new #GstQueueArray object with an initial
 queue size of @initial_size.</doc>
+        <source-position filename="libs/gst/base/gstqueuearray.h" line="37"/>
         <return-value>
-          <doc xml:space="preserve">a new #GstQueueArray object</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstqueuearray.c"
+               line="91">a new #GstQueueArray object</doc>
           <type name="QueueArray" c:type="GstQueueArray*"/>
         </return-value>
         <parameters>
           <parameter name="initial_size" transfer-ownership="none">
-            <doc xml:space="preserve">Initial size of the new queue</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstqueuearray.c"
+                 line="86">Initial size of the new queue</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
@@ -12468,19 +17280,28 @@ queue size of @initial_size.</doc>
                 c:identifier="gst_queue_array_new_for_struct"
                 version="1.6"
                 introspectable="0">
-        <doc xml:space="preserve">Allocates a new #GstQueueArray object for elements (e.g. structures)
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstqueuearray.c"
+             line="53">Allocates a new #GstQueueArray object for elements (e.g. structures)
 of size @struct_size, with an initial queue size of @initial_size.</doc>
+        <source-position filename="libs/gst/base/gstqueuearray.h" line="83"/>
         <return-value>
-          <doc xml:space="preserve">a new #GstQueueArray object</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstqueuearray.c"
+               line="61">a new #GstQueueArray object</doc>
           <type name="QueueArray" c:type="GstQueueArray*"/>
         </return-value>
         <parameters>
           <parameter name="struct_size" transfer-ownership="none">
-            <doc xml:space="preserve">Size of each element (e.g. structure) in the array</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstqueuearray.c"
+                 line="55">Size of each element (e.g. structure) in the array</doc>
             <type name="gsize" c:type="gsize"/>
           </parameter>
           <parameter name="initial_size" transfer-ownership="none">
-            <doc xml:space="preserve">Initial size of the new queue</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/base/gstqueuearray.c"
+                 line="56">Initial size of the new queue</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
@@ -12488,42 +17309,57 @@ of size @struct_size, with an initial queue size of @initial_size.</doc>
     </record>
     <callback name="TypeFindHelperGetRangeFunction"
               c:type="GstTypeFindHelperGetRangeFunction">
-      <doc xml:space="preserve">This function will be called by gst_type_find_helper_get_range() when
+      <doc xml:space="preserve"
+           filename="libs/gst/base/gsttypefindhelper.h"
+           line="63">This function will be called by gst_type_find_helper_get_range() when
 typefinding functions request to peek at the data of a stream at certain
 offsets. If this function returns GST_FLOW_OK, the result buffer will be
 stored in @buffer. The  contents of @buffer is invalid for any other
 return value.
 
 This function is supposed to behave exactly like a #GstPadGetRangeFunction.</doc>
+      <source-position filename="libs/gst/base/gsttypefindhelper.h" line="81"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">GST_FLOW_OK for success</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gsttypefindhelper.h"
+             line="79">GST_FLOW_OK for success</doc>
         <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
       </return-value>
       <parameters>
         <parameter name="obj" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstObject that will handle the getrange request</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gsttypefindhelper.h"
+               line="65">a #GstObject that will handle the getrange request</doc>
           <type name="Gst.Object" c:type="GstObject*"/>
         </parameter>
         <parameter name="parent"
                    transfer-ownership="none"
                    nullable="1"
                    allow-none="1">
-          <doc xml:space="preserve">the parent of @obj or %NULL</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gsttypefindhelper.h"
+               line="66">the parent of @obj or %NULL</doc>
           <type name="Gst.Object" c:type="GstObject*"/>
         </parameter>
         <parameter name="offset" transfer-ownership="none">
-          <doc xml:space="preserve">the offset of the range</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gsttypefindhelper.h"
+               line="67">the offset of the range</doc>
           <type name="guint64" c:type="guint64"/>
         </parameter>
         <parameter name="length" transfer-ownership="none">
-          <doc xml:space="preserve">the length of the range</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gsttypefindhelper.h"
+               line="68">the length of the range</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
         <parameter name="buffer"
                    direction="out"
                    caller-allocates="0"
                    transfer-ownership="full">
-          <doc xml:space="preserve">a memory location to hold the result buffer</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gsttypefindhelper.h"
+               line="69">a memory location to hold the result buffer</doc>
           <type name="Gst.Buffer" c:type="GstBuffer**"/>
         </parameter>
       </parameters>
@@ -12532,23 +17368,32 @@ This function is supposed to behave exactly like a #GstPadGetRangeFunction.</doc
               c:identifier="gst_bit_reader_new"
               moved-to="BitReader.new"
               introspectable="0">
-      <doc xml:space="preserve">Create a new #GstBitReader instance, which will read from @data.
+      <doc xml:space="preserve"
+           filename="libs/gst/base/gstbitreader.c"
+           line="51">Create a new #GstBitReader instance, which will read from @data.
 
 Free-function: gst_bit_reader_free</doc>
+      <source-position filename="libs/gst/base/gstbitreader.h" line="55"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">a new #GstBitReader instance</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbitreader.c"
+             line="61">a new #GstBitReader instance</doc>
         <type name="BitReader" c:type="GstBitReader*"/>
       </return-value>
       <parameters>
         <parameter name="data" transfer-ownership="none">
-          <doc xml:space="preserve">Data from which the #GstBitReader
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbitreader.c"
+               line="53">Data from which the #GstBitReader
   should read</doc>
           <array length="1" zero-terminated="0" c:type="const guint8*">
             <type name="guint8" c:type="guint8"/>
           </array>
         </parameter>
         <parameter name="size" transfer-ownership="none">
-          <doc xml:space="preserve">Size of @data in bytes</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbitreader.c"
+               line="55">Size of @data in bytes</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
       </parameters>
@@ -12557,11 +17402,16 @@ Free-function: gst_bit_reader_free</doc>
               c:identifier="gst_bit_writer_new"
               moved-to="BitWriter.new"
               introspectable="0">
-      <doc xml:space="preserve">Creates a new, empty #GstBitWriter instance.
+      <doc xml:space="preserve"
+           filename="libs/gst/base/gstbitwriter.c"
+           line="40">Creates a new, empty #GstBitWriter instance.
 
 Free-function: gst_bit_writer_free</doc>
+      <source-position filename="libs/gst/base/gstbitwriter.h" line="61"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">a new, empty #GstByteWriter instance</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbitwriter.c"
+             line="47">a new, empty #GstByteWriter instance</doc>
         <type name="BitWriter" c:type="GstBitWriter*"/>
       </return-value>
     </function>
@@ -12569,26 +17419,37 @@ Free-function: gst_bit_writer_free</doc>
               c:identifier="gst_bit_writer_new_with_data"
               moved-to="BitWriter.new_with_data"
               introspectable="0">
-      <doc xml:space="preserve">Creates a new #GstBitWriter instance with the given memory area. If
+      <doc xml:space="preserve"
+           filename="libs/gst/base/gstbitwriter.c"
+           line="79">Creates a new #GstBitWriter instance with the given memory area. If
 @initialized is %TRUE it is possible to read @size bits from the
-#GstBitWriter from the beginnig.
+#GstBitWriter from the beginning.
 
 Free-function: gst_bit_writer_free</doc>
+      <source-position filename="libs/gst/base/gstbitwriter.h" line="67"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">a new #GstBitWriter instance</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbitwriter.c"
+             line="91">a new #GstBitWriter instance</doc>
         <type name="BitWriter" c:type="GstBitWriter*"/>
       </return-value>
       <parameters>
         <parameter name="data" transfer-ownership="none">
-          <doc xml:space="preserve">Memory area for writing</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbitwriter.c"
+               line="81">Memory area for writing</doc>
           <type name="guint8" c:type="guint8*"/>
         </parameter>
         <parameter name="size" transfer-ownership="none">
-          <doc xml:space="preserve">Size of @data in bytes</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbitwriter.c"
+               line="82">Size of @data in bytes</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
         <parameter name="initialized" transfer-ownership="none">
-          <doc xml:space="preserve">if %TRUE the complete data can be read from the beginning</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbitwriter.c"
+               line="83">if %TRUE the complete data can be read from the beginning</doc>
           <type name="gboolean" c:type="gboolean"/>
         </parameter>
       </parameters>
@@ -12597,58 +17458,150 @@ Free-function: gst_bit_writer_free</doc>
               c:identifier="gst_bit_writer_new_with_size"
               moved-to="BitWriter.new_with_size"
               introspectable="0">
-      <doc xml:space="preserve">Creates a #GstBitWriter instance with the given initial data size.
+      <doc xml:space="preserve"
+           filename="libs/gst/base/gstbitwriter.c"
+           line="59">Creates a #GstBitWriter instance with the given initial data size.
 
 Free-function: gst_bit_writer_free</doc>
+      <source-position filename="libs/gst/base/gstbitwriter.h" line="64"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">a new #GstBitWriter instance</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbitwriter.c"
+             line="68">a new #GstBitWriter instance</doc>
         <type name="BitWriter" c:type="GstBitWriter*"/>
       </return-value>
       <parameters>
         <parameter name="size" transfer-ownership="none">
-          <doc xml:space="preserve">Initial size of data in bytes</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbitwriter.c"
+               line="61">Initial size of data in bytes</doc>
           <type name="guint32" c:type="guint32"/>
         </parameter>
         <parameter name="fixed" transfer-ownership="none">
-          <doc xml:space="preserve">If %TRUE the data can't be reallocated</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbitwriter.c"
+               line="62">If %TRUE the data can't be reallocated</doc>
           <type name="gboolean" c:type="gboolean"/>
         </parameter>
       </parameters>
     </function>
+    <function-macro name="byte_reader_dup_string"
+                    c:identifier="gst_byte_reader_dup_string"
+                    introspectable="0">
+      <source-position filename="libs/gst/base/gstbytereader.h" line="224"/>
+      <parameters>
+        <parameter name="reader">
+        </parameter>
+        <parameter name="str">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="byte_reader_get_string"
+                    c:identifier="gst_byte_reader_get_string"
+                    introspectable="0">
+      <source-position filename="libs/gst/base/gstbytereader.h" line="248"/>
+      <parameters>
+        <parameter name="reader">
+        </parameter>
+        <parameter name="str">
+        </parameter>
+      </parameters>
+    </function-macro>
     <function name="byte_reader_new"
               c:identifier="gst_byte_reader_new"
               moved-to="ByteReader.new"
               introspectable="0">
-      <doc xml:space="preserve">Create a new #GstByteReader instance, which will read from @data.
+      <doc xml:space="preserve"
+           filename="libs/gst/base/gstbytereader.c"
+           line="86">Create a new #GstByteReader instance, which will read from @data.
 
 Free-function: gst_byte_reader_free</doc>
+      <source-position filename="libs/gst/base/gstbytereader.h" line="52"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">a new #GstByteReader instance</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytereader.c"
+             line="96">a new #GstByteReader instance</doc>
         <type name="ByteReader" c:type="GstByteReader*"/>
       </return-value>
       <parameters>
         <parameter name="data" transfer-ownership="none">
-          <doc xml:space="preserve">data from which the
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytereader.c"
+               line="88">data from which the
     #GstByteReader should read</doc>
           <array length="1" zero-terminated="0" c:type="const guint8*">
             <type name="guint8" c:type="guint8"/>
           </array>
         </parameter>
         <parameter name="size" transfer-ownership="none">
-          <doc xml:space="preserve">Size of @data in bytes</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytereader.c"
+               line="90">Size of @data in bytes</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
       </parameters>
     </function>
+    <function-macro name="byte_reader_peek_string"
+                    c:identifier="gst_byte_reader_peek_string"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="libs/gst/base/gstbytereader.c"
+           line="1125">Returns a constant pointer to the current data position if there is
+a NUL-terminated string in the data (this could be just a NUL terminator).
+The current position will be maintained. This will work for any
+NUL-terminated string with a character width of 8 bits, so ASCII,
+UTF-8, ISO-8859-N etc.
+
+This function will fail if no NUL-terminator was found in in the data.</doc>
+      <source-position filename="libs/gst/base/gstbytereader.h" line="251"/>
+      <parameters>
+        <parameter name="reader">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytereader.c"
+               line="1127">a #GstByteReader instance</doc>
+        </parameter>
+        <parameter name="str">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytereader.c"
+               line="1128">address of a
+    #gchar pointer variable in which to store the result</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="byte_reader_skip_string"
+                    c:identifier="gst_byte_reader_skip_string"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="libs/gst/base/gstbytereader.c"
+           line="1067">Skips a NUL-terminated string in the #GstByteReader instance, advancing
+the current position to the byte after the string. This will work for
+any NUL-terminated string with a character width of 8 bits, so ASCII,
+UTF-8, ISO-8859-N etc.
+
+This function will fail if no NUL-terminator was found in in the data.</doc>
+      <source-position filename="libs/gst/base/gstbytereader.h" line="236"/>
+      <parameters>
+        <parameter name="reader">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytereader.c"
+               line="1069">a #GstByteReader instance</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
     <function name="byte_writer_new"
               c:identifier="gst_byte_writer_new"
               moved-to="ByteWriter.new"
               introspectable="0">
-      <doc xml:space="preserve">Creates a new, empty #GstByteWriter instance
+      <doc xml:space="preserve"
+           filename="libs/gst/base/gstbytewriter.c"
+           line="67">Creates a new, empty #GstByteWriter instance
 
 Free-function: gst_byte_writer_free</doc>
+      <source-position filename="libs/gst/base/gstbytewriter.h" line="55"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">a new, empty #GstByteWriter instance</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytewriter.c"
+             line="74">a new, empty #GstByteWriter instance</doc>
         <type name="ByteWriter" c:type="GstByteWriter*"/>
       </return-value>
     </function>
@@ -12656,26 +17609,37 @@ Free-function: gst_byte_writer_free</doc>
               c:identifier="gst_byte_writer_new_with_data"
               moved-to="ByteWriter.new_with_data"
               introspectable="0">
-      <doc xml:space="preserve">Creates a new #GstByteWriter instance with the given
+      <doc xml:space="preserve"
+           filename="libs/gst/base/gstbytewriter.c"
+           line="110">Creates a new #GstByteWriter instance with the given
 memory area. If @initialized is %TRUE it is possible to
 read @size bytes from the #GstByteWriter from the beginning.
 
 Free-function: gst_byte_writer_free</doc>
+      <source-position filename="libs/gst/base/gstbytewriter.h" line="61"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">a new #GstByteWriter instance</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytewriter.c"
+             line="122">a new #GstByteWriter instance</doc>
         <type name="ByteWriter" c:type="GstByteWriter*"/>
       </return-value>
       <parameters>
         <parameter name="data" transfer-ownership="none">
-          <doc xml:space="preserve">Memory area for writing</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytewriter.c"
+               line="112">Memory area for writing</doc>
           <type name="guint8" c:type="guint8*"/>
         </parameter>
         <parameter name="size" transfer-ownership="none">
-          <doc xml:space="preserve">Size of @data in bytes</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytewriter.c"
+               line="113">Size of @data in bytes</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
         <parameter name="initialized" transfer-ownership="none">
-          <doc xml:space="preserve">If %TRUE the complete data can be read from the beginning</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytewriter.c"
+               line="114">If %TRUE the complete data can be read from the beginning</doc>
           <type name="gboolean" c:type="gboolean"/>
         </parameter>
       </parameters>
@@ -12684,39 +17648,77 @@ Free-function: gst_byte_writer_free</doc>
               c:identifier="gst_byte_writer_new_with_size"
               moved-to="ByteWriter.new_with_size"
               introspectable="0">
-      <doc xml:space="preserve">Creates a new #GstByteWriter instance with the given
+      <doc xml:space="preserve"
+           filename="libs/gst/base/gstbytewriter.c"
+           line="85">Creates a new #GstByteWriter instance with the given
 initial data size.
 
 Free-function: gst_byte_writer_free</doc>
+      <source-position filename="libs/gst/base/gstbytewriter.h" line="58"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">a new #GstByteWriter instance</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstbytewriter.c"
+             line="95">a new #GstByteWriter instance</doc>
         <type name="ByteWriter" c:type="GstByteWriter*"/>
       </return-value>
       <parameters>
         <parameter name="size" transfer-ownership="none">
-          <doc xml:space="preserve">Initial size of data</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytewriter.c"
+               line="87">Initial size of data</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
         <parameter name="fixed" transfer-ownership="none">
-          <doc xml:space="preserve">If %TRUE the data can't be reallocated</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytewriter.c"
+               line="88">If %TRUE the data can't be reallocated</doc>
           <type name="gboolean" c:type="gboolean"/>
         </parameter>
       </parameters>
     </function>
+    <function-macro name="byte_writer_put_string"
+                    c:identifier="gst_byte_writer_put_string"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="libs/gst/base/gstbytewriter.h"
+           line="218">Write a NUL-terminated string to @writer (including the terminator). The
+string is assumed to be in an 8-bit encoding (e.g. ASCII,UTF-8 or
+ISO-8859-1).</doc>
+      <source-position filename="libs/gst/base/gstbytewriter.h" line="229"/>
+      <parameters>
+        <parameter name="writer">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytewriter.h"
+               line="220">#GstByteWriter instance</doc>
+        </parameter>
+        <parameter name="data">
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstbytewriter.h"
+               line="221">Null terminated string</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
     <function name="queue_array_new"
               c:identifier="gst_queue_array_new"
               moved-to="QueueArray.new"
               version="1.2"
               introspectable="0">
-      <doc xml:space="preserve">Allocates a new #GstQueueArray object with an initial
+      <doc xml:space="preserve"
+           filename="libs/gst/base/gstqueuearray.c"
+           line="84">Allocates a new #GstQueueArray object with an initial
 queue size of @initial_size.</doc>
+      <source-position filename="libs/gst/base/gstqueuearray.h" line="37"/>
       <return-value>
-        <doc xml:space="preserve">a new #GstQueueArray object</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstqueuearray.c"
+             line="91">a new #GstQueueArray object</doc>
         <type name="QueueArray" c:type="GstQueueArray*"/>
       </return-value>
       <parameters>
         <parameter name="initial_size" transfer-ownership="none">
-          <doc xml:space="preserve">Initial size of the new queue</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstqueuearray.c"
+               line="86">Initial size of the new queue</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
       </parameters>
@@ -12726,46 +17728,66 @@ queue size of @initial_size.</doc>
               moved-to="QueueArray.new_for_struct"
               version="1.6"
               introspectable="0">
-      <doc xml:space="preserve">Allocates a new #GstQueueArray object for elements (e.g. structures)
+      <doc xml:space="preserve"
+           filename="libs/gst/base/gstqueuearray.c"
+           line="53">Allocates a new #GstQueueArray object for elements (e.g. structures)
 of size @struct_size, with an initial queue size of @initial_size.</doc>
+      <source-position filename="libs/gst/base/gstqueuearray.h" line="83"/>
       <return-value>
-        <doc xml:space="preserve">a new #GstQueueArray object</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gstqueuearray.c"
+             line="61">a new #GstQueueArray object</doc>
         <type name="QueueArray" c:type="GstQueueArray*"/>
       </return-value>
       <parameters>
         <parameter name="struct_size" transfer-ownership="none">
-          <doc xml:space="preserve">Size of each element (e.g. structure) in the array</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstqueuearray.c"
+               line="55">Size of each element (e.g. structure) in the array</doc>
           <type name="gsize" c:type="gsize"/>
         </parameter>
         <parameter name="initial_size" transfer-ownership="none">
-          <doc xml:space="preserve">Initial size of the new queue</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gstqueuearray.c"
+               line="56">Initial size of the new queue</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
       </parameters>
     </function>
     <function name="type_find_helper" c:identifier="gst_type_find_helper">
-      <doc xml:space="preserve">Tries to find what type of data is flowing from the given source #GstPad.
+      <doc xml:space="preserve"
+           filename="libs/gst/base/gsttypefindhelper.c"
+           line="463">Tries to find what type of data is flowing from the given source #GstPad.
 
 Free-function: gst_caps_unref</doc>
+      <source-position filename="libs/gst/base/gsttypefindhelper.h" line="33"/>
       <return-value transfer-ownership="full" nullable="1">
-        <doc xml:space="preserve">the #GstCaps corresponding to the data
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gsttypefindhelper.c"
+             line="472">the #GstCaps corresponding to the data
     stream.  Returns %NULL if no #GstCaps matches the data stream.</doc>
         <type name="Gst.Caps" c:type="GstCaps*"/>
       </return-value>
       <parameters>
         <parameter name="src" transfer-ownership="none">
-          <doc xml:space="preserve">A source #GstPad</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gsttypefindhelper.c"
+               line="465">A source #GstPad</doc>
           <type name="Gst.Pad" c:type="GstPad*"/>
         </parameter>
         <parameter name="size" transfer-ownership="none">
-          <doc xml:space="preserve">The length in bytes</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gsttypefindhelper.c"
+               line="466">The length in bytes</doc>
           <type name="guint64" c:type="guint64"/>
         </parameter>
       </parameters>
     </function>
     <function name="type_find_helper_for_buffer"
               c:identifier="gst_type_find_helper_for_buffer">
-      <doc xml:space="preserve">Tries to find what type of data is contained in the given #GstBuffer, the
+      <doc xml:space="preserve"
+           filename="libs/gst/base/gsttypefindhelper.c"
+           line="684">Tries to find what type of data is contained in the given #GstBuffer, the
 assumption being that the buffer represents the beginning of the stream or
 file.
 
@@ -12777,8 +17799,11 @@ and the caps with the highest probability will be returned, or %NULL if
 the content of the buffer could not be identified.
 
 Free-function: gst_caps_unref</doc>
+      <source-position filename="libs/gst/base/gsttypefindhelper.h" line="49"/>
       <return-value transfer-ownership="full" nullable="1">
-        <doc xml:space="preserve">the #GstCaps corresponding to the data,
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gsttypefindhelper.c"
+             line="704">the #GstCaps corresponding to the data,
     or %NULL if no type could be found. The caller should free the caps
     returned with gst_caps_unref().</doc>
         <type name="Gst.Caps" c:type="GstCaps*"/>
@@ -12788,11 +17813,15 @@ Free-function: gst_caps_unref</doc>
                    transfer-ownership="none"
                    nullable="1"
                    allow-none="1">
-          <doc xml:space="preserve">object doing the typefinding, or %NULL (used for logging)</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gsttypefindhelper.c"
+               line="686">object doing the typefinding, or %NULL (used for logging)</doc>
           <type name="Gst.Object" c:type="GstObject*"/>
         </parameter>
         <parameter name="buf" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstBuffer with data to typefind</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gsttypefindhelper.c"
+               line="687">a #GstBuffer with data to typefind</doc>
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </parameter>
         <parameter name="prob"
@@ -12801,7 +17830,9 @@ Free-function: gst_caps_unref</doc>
                    transfer-ownership="full"
                    optional="1"
                    allow-none="1">
-          <doc xml:space="preserve">location to store the probability of the found
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gsttypefindhelper.c"
+               line="688">location to store the probability of the found
     caps, or %NULL</doc>
           <type name="Gst.TypeFindProbability"
                 c:type="GstTypeFindProbability*"/>
@@ -12811,7 +17842,9 @@ Free-function: gst_caps_unref</doc>
     <function name="type_find_helper_for_buffer_with_extension"
               c:identifier="gst_type_find_helper_for_buffer_with_extension"
               version="1.16">
-      <doc xml:space="preserve">Tries to find what type of data is contained in the given #GstBuffer, the
+      <doc xml:space="preserve"
+           filename="libs/gst/base/gsttypefindhelper.c"
+           line="715">Tries to find what type of data is contained in the given #GstBuffer, the
 assumption being that the buffer represents the beginning of the stream or
 file.
 
@@ -12827,8 +17860,11 @@ functions for the given extension, which might speed up the typefinding
 in many cases.
 
 Free-function: gst_caps_unref</doc>
+      <source-position filename="libs/gst/base/gsttypefindhelper.h" line="54"/>
       <return-value transfer-ownership="full" nullable="1">
-        <doc xml:space="preserve">the #GstCaps corresponding to the data,
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gsttypefindhelper.c"
+             line="740">the #GstCaps corresponding to the data,
     or %NULL if no type could be found. The caller should free the caps
     returned with gst_caps_unref().</doc>
         <type name="Gst.Caps" c:type="GstCaps*"/>
@@ -12838,18 +17874,24 @@ Free-function: gst_caps_unref</doc>
                    transfer-ownership="none"
                    nullable="1"
                    allow-none="1">
-          <doc xml:space="preserve">object doing the typefinding, or %NULL (used for logging)</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gsttypefindhelper.c"
+               line="717">object doing the typefinding, or %NULL (used for logging)</doc>
           <type name="Gst.Object" c:type="GstObject*"/>
         </parameter>
         <parameter name="buf" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstBuffer with data to typefind</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gsttypefindhelper.c"
+               line="718">a #GstBuffer with data to typefind</doc>
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </parameter>
         <parameter name="extension"
                    transfer-ownership="none"
                    nullable="1"
                    allow-none="1">
-          <doc xml:space="preserve">extension of the media, or %NULL</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gsttypefindhelper.c"
+               line="719">extension of the media, or %NULL</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
         <parameter name="prob"
@@ -12858,7 +17900,9 @@ Free-function: gst_caps_unref</doc>
                    transfer-ownership="full"
                    optional="1"
                    allow-none="1">
-          <doc xml:space="preserve">location to store the probability of the found
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gsttypefindhelper.c"
+               line="720">location to store the probability of the found
     caps, or %NULL</doc>
           <type name="Gst.TypeFindProbability"
                 c:type="GstTypeFindProbability*"/>
@@ -12867,7 +17911,9 @@ Free-function: gst_caps_unref</doc>
     </function>
     <function name="type_find_helper_for_data"
               c:identifier="gst_type_find_helper_for_data">
-      <doc xml:space="preserve">Tries to find what type of data is contained in the given @data, the
+      <doc xml:space="preserve"
+           filename="libs/gst/base/gsttypefindhelper.c"
+           line="569">Tries to find what type of data is contained in the given @data, the
 assumption being that the data represents the beginning of the stream or
 file.
 
@@ -12879,8 +17925,11 @@ and the caps with the highest probability will be returned, or %NULL if
 the content of @data could not be identified.
 
 Free-function: gst_caps_unref</doc>
+      <source-position filename="libs/gst/base/gsttypefindhelper.h" line="36"/>
       <return-value transfer-ownership="full" nullable="1">
-        <doc xml:space="preserve">the #GstCaps corresponding to the data,
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gsttypefindhelper.c"
+             line="590">the #GstCaps corresponding to the data,
     or %NULL if no type could be found. The caller should free the caps
     returned with gst_caps_unref().</doc>
         <type name="Gst.Caps" c:type="GstCaps*"/>
@@ -12890,17 +17939,23 @@ Free-function: gst_caps_unref</doc>
                    transfer-ownership="none"
                    nullable="1"
                    allow-none="1">
-          <doc xml:space="preserve">object doing the typefinding, or %NULL (used for logging)</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gsttypefindhelper.c"
+               line="571">object doing the typefinding, or %NULL (used for logging)</doc>
           <type name="Gst.Object" c:type="GstObject*"/>
         </parameter>
         <parameter name="data" transfer-ownership="none">
-          <doc xml:space="preserve">* a pointer with data to typefind</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gsttypefindhelper.c"
+               line="572">* a pointer with data to typefind</doc>
           <array length="2" zero-terminated="0" c:type="const guint8*">
             <type name="guint8" c:type="guint8"/>
           </array>
         </parameter>
         <parameter name="size" transfer-ownership="none">
-          <doc xml:space="preserve">the size of @data</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gsttypefindhelper.c"
+               line="573">the size of @data</doc>
           <type name="gsize" c:type="gsize"/>
         </parameter>
         <parameter name="prob"
@@ -12909,7 +17964,9 @@ Free-function: gst_caps_unref</doc>
                    transfer-ownership="full"
                    optional="1"
                    allow-none="1">
-          <doc xml:space="preserve">location to store the probability of the found
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gsttypefindhelper.c"
+               line="574">location to store the probability of the found
     caps, or %NULL</doc>
           <type name="Gst.TypeFindProbability"
                 c:type="GstTypeFindProbability*"/>
@@ -12919,7 +17976,9 @@ Free-function: gst_caps_unref</doc>
     <function name="type_find_helper_for_data_with_extension"
               c:identifier="gst_type_find_helper_for_data_with_extension"
               version="1.16">
-      <doc xml:space="preserve">Tries to find what type of data is contained in the given @data, the
+      <doc xml:space="preserve"
+           filename="libs/gst/base/gsttypefindhelper.c"
+           line="602">Tries to find what type of data is contained in the given @data, the
 assumption being that the data represents the beginning of the stream or
 file.
 
@@ -12935,8 +17994,11 @@ functions for the given extension, which might speed up the typefinding
 in many cases.
 
 Free-function: gst_caps_unref</doc>
+      <source-position filename="libs/gst/base/gsttypefindhelper.h" line="42"/>
       <return-value transfer-ownership="full" nullable="1">
-        <doc xml:space="preserve">the #GstCaps corresponding to the data,
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gsttypefindhelper.c"
+             line="628">the #GstCaps corresponding to the data,
     or %NULL if no type could be found. The caller should free the caps
     returned with gst_caps_unref().</doc>
         <type name="Gst.Caps" c:type="GstCaps*"/>
@@ -12946,24 +18008,32 @@ Free-function: gst_caps_unref</doc>
                    transfer-ownership="none"
                    nullable="1"
                    allow-none="1">
-          <doc xml:space="preserve">object doing the typefinding, or %NULL (used for logging)</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gsttypefindhelper.c"
+               line="604">object doing the typefinding, or %NULL (used for logging)</doc>
           <type name="Gst.Object" c:type="GstObject*"/>
         </parameter>
         <parameter name="data" transfer-ownership="none">
-          <doc xml:space="preserve">* a pointer with data to typefind</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gsttypefindhelper.c"
+               line="605">* a pointer with data to typefind</doc>
           <array length="2" zero-terminated="0" c:type="const guint8*">
             <type name="guint8" c:type="guint8"/>
           </array>
         </parameter>
         <parameter name="size" transfer-ownership="none">
-          <doc xml:space="preserve">the size of @data</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gsttypefindhelper.c"
+               line="606">the size of @data</doc>
           <type name="gsize" c:type="gsize"/>
         </parameter>
         <parameter name="extension"
                    transfer-ownership="none"
                    nullable="1"
                    allow-none="1">
-          <doc xml:space="preserve">extension of the media, or %NULL</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gsttypefindhelper.c"
+               line="607">extension of the media, or %NULL</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
         <parameter name="prob"
@@ -12972,7 +18042,9 @@ Free-function: gst_caps_unref</doc>
                    transfer-ownership="full"
                    optional="1"
                    allow-none="1">
-          <doc xml:space="preserve">location to store the probability of the found
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gsttypefindhelper.c"
+               line="608">location to store the probability of the found
     caps, or %NULL</doc>
           <type name="Gst.TypeFindProbability"
                 c:type="GstTypeFindProbability*"/>
@@ -12981,15 +18053,20 @@ Free-function: gst_caps_unref</doc>
     </function>
     <function name="type_find_helper_for_extension"
               c:identifier="gst_type_find_helper_for_extension">
-      <doc xml:space="preserve">Tries to find the best #GstCaps associated with @extension.
+      <doc xml:space="preserve"
+           filename="libs/gst/base/gsttypefindhelper.c"
+           line="769">Tries to find the best #GstCaps associated with @extension.
 
 All available typefinders will be checked against the extension in order
 of rank. The caps of the first typefinder that can handle @extension will be
 returned.
 
 Free-function: gst_caps_unref</doc>
+      <source-position filename="libs/gst/base/gsttypefindhelper.h" line="60"/>
       <return-value transfer-ownership="full" nullable="1">
-        <doc xml:space="preserve">the #GstCaps corresponding to
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gsttypefindhelper.c"
+             line="782">the #GstCaps corresponding to
     @extension, or %NULL if no type could be found. The caller should free
     the caps returned with gst_caps_unref().</doc>
         <type name="Gst.Caps" c:type="GstCaps*"/>
@@ -12999,18 +18076,24 @@ Free-function: gst_caps_unref</doc>
                    transfer-ownership="none"
                    nullable="1"
                    allow-none="1">
-          <doc xml:space="preserve">object doing the typefinding, or %NULL (used for logging)</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gsttypefindhelper.c"
+               line="771">object doing the typefinding, or %NULL (used for logging)</doc>
           <type name="Gst.Object" c:type="GstObject*"/>
         </parameter>
         <parameter name="extension" transfer-ownership="none">
-          <doc xml:space="preserve">an extension</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gsttypefindhelper.c"
+               line="772">an extension</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
       </parameters>
     </function>
     <function name="type_find_helper_get_range"
               c:identifier="gst_type_find_helper_get_range">
-      <doc xml:space="preserve">Utility function to do pull-based typefinding. Unlike gst_type_find_helper()
+      <doc xml:space="preserve"
+           filename="libs/gst/base/gsttypefindhelper.c"
+           line="303">Utility function to do pull-based typefinding. Unlike gst_type_find_helper()
 however, this function will use the specified function @func to obtain the
 data needed by the typefind functions, rather than operating on a given
 source pad. This is useful mostly for elements like tag demuxers which
@@ -13024,38 +18107,51 @@ functions for the given extension, which might speed up the typefinding
 in many cases.
 
 Free-function: gst_caps_unref</doc>
+      <source-position filename="libs/gst/base/gsttypefindhelper.h" line="87"/>
       <return-value transfer-ownership="full" nullable="1">
-        <doc xml:space="preserve">the #GstCaps corresponding to the data
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gsttypefindhelper.c"
+             line="329">the #GstCaps corresponding to the data
     stream.  Returns %NULL if no #GstCaps matches the data stream.</doc>
         <type name="Gst.Caps" c:type="GstCaps*"/>
       </return-value>
       <parameters>
         <parameter name="obj" transfer-ownership="none">
-          <doc xml:space="preserve">A #GstObject that will be passed as first argument to @func</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gsttypefindhelper.c"
+               line="305">A #GstObject that will be passed as first argument to @func</doc>
           <type name="Gst.Object" c:type="GstObject*"/>
         </parameter>
         <parameter name="parent"
                    transfer-ownership="none"
                    nullable="1"
                    allow-none="1">
-          <doc xml:space="preserve">the parent of @obj or %NULL</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gsttypefindhelper.c"
+               line="306">the parent of @obj or %NULL</doc>
           <type name="Gst.Object" c:type="GstObject*"/>
         </parameter>
         <parameter name="func" transfer-ownership="none" scope="call">
-          <doc xml:space="preserve">A generic #GstTypeFindHelperGetRangeFunction that will
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gsttypefindhelper.c"
+               line="307">A generic #GstTypeFindHelperGetRangeFunction that will
        be used to access data at random offsets when doing the typefinding</doc>
           <type name="TypeFindHelperGetRangeFunction"
                 c:type="GstTypeFindHelperGetRangeFunction"/>
         </parameter>
         <parameter name="size" transfer-ownership="none">
-          <doc xml:space="preserve">The length in bytes</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gsttypefindhelper.c"
+               line="309">The length in bytes</doc>
           <type name="guint64" c:type="guint64"/>
         </parameter>
         <parameter name="extension"
                    transfer-ownership="none"
                    nullable="1"
                    allow-none="1">
-          <doc xml:space="preserve">extension of the media, or %NULL</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gsttypefindhelper.c"
+               line="310">extension of the media, or %NULL</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
         <parameter name="prob"
@@ -13064,7 +18160,9 @@ Free-function: gst_caps_unref</doc>
                    transfer-ownership="full"
                    optional="1"
                    allow-none="1">
-          <doc xml:space="preserve">location to store the probability of the found
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gsttypefindhelper.c"
+               line="311">location to store the probability of the found
     caps, or %NULL</doc>
           <type name="Gst.TypeFindProbability"
                 c:type="GstTypeFindProbability*"/>
@@ -13074,7 +18172,9 @@ Free-function: gst_caps_unref</doc>
     <function name="type_find_helper_get_range_full"
               c:identifier="gst_type_find_helper_get_range_full"
               version="1.14.3">
-      <doc xml:space="preserve">Utility function to do pull-based typefinding. Unlike gst_type_find_helper()
+      <doc xml:space="preserve"
+           filename="libs/gst/base/gsttypefindhelper.c"
+           line="345">Utility function to do pull-based typefinding. Unlike gst_type_find_helper()
 however, this function will use the specified function @func to obtain the
 data needed by the typefind functions, rather than operating on a given
 source pad. This is useful mostly for elements like tag demuxers which
@@ -13086,45 +18186,60 @@ tag size, for example).
 When @extension is not %NULL, this function will first try the typefind
 functions for the given extension, which might speed up the typefinding
 in many cases.</doc>
+      <source-position filename="libs/gst/base/gsttypefindhelper.h" line="95"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">the last %GstFlowReturn from pulling a buffer or %GST_FLOW_OK if
+        <doc xml:space="preserve"
+             filename="libs/gst/base/gsttypefindhelper.c"
+             line="370">the last %GstFlowReturn from pulling a buffer or %GST_FLOW_OK if
          typefinding was successful.</doc>
         <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
       </return-value>
       <parameters>
         <parameter name="obj" transfer-ownership="none">
-          <doc xml:space="preserve">A #GstObject that will be passed as first argument to @func</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gsttypefindhelper.c"
+               line="347">A #GstObject that will be passed as first argument to @func</doc>
           <type name="Gst.Object" c:type="GstObject*"/>
         </parameter>
         <parameter name="parent"
                    transfer-ownership="none"
                    nullable="1"
                    allow-none="1">
-          <doc xml:space="preserve">the parent of @obj or %NULL</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gsttypefindhelper.c"
+               line="348">the parent of @obj or %NULL</doc>
           <type name="Gst.Object" c:type="GstObject*"/>
         </parameter>
         <parameter name="func" transfer-ownership="none" scope="call">
-          <doc xml:space="preserve">A generic #GstTypeFindHelperGetRangeFunction that will
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gsttypefindhelper.c"
+               line="349">A generic #GstTypeFindHelperGetRangeFunction that will
        be used to access data at random offsets when doing the typefinding</doc>
           <type name="TypeFindHelperGetRangeFunction"
                 c:type="GstTypeFindHelperGetRangeFunction"/>
         </parameter>
         <parameter name="size" transfer-ownership="none">
-          <doc xml:space="preserve">The length in bytes</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gsttypefindhelper.c"
+               line="351">The length in bytes</doc>
           <type name="guint64" c:type="guint64"/>
         </parameter>
         <parameter name="extension"
                    transfer-ownership="none"
                    nullable="1"
                    allow-none="1">
-          <doc xml:space="preserve">extension of the media, or %NULL</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gsttypefindhelper.c"
+               line="352">extension of the media, or %NULL</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
         <parameter name="caps"
                    direction="out"
                    caller-allocates="0"
                    transfer-ownership="full">
-          <doc xml:space="preserve">returned caps</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gsttypefindhelper.c"
+               line="353">returned caps</doc>
           <type name="Gst.Caps" c:type="GstCaps**"/>
         </parameter>
         <parameter name="prob"
@@ -13133,7 +18248,9 @@ in many cases.</doc>
                    transfer-ownership="full"
                    optional="1"
                    allow-none="1">
-          <doc xml:space="preserve">location to store the probability of the found
+          <doc xml:space="preserve"
+               filename="libs/gst/base/gsttypefindhelper.c"
+               line="354">location to store the probability of the found
     caps, or %NULL</doc>
           <type name="Gst.TypeFindProbability"
                 c:type="GstTypeFindProbability*"/>
index 620bc1f..6e1c0c8 100644 (file)
@@ -24,39 +24,61 @@ and/or use gtk-doc annotations.  -->
            glib:type-name="GstARGBControlBinding"
            glib:get-type="gst_argb_control_binding_get_type"
            glib:type-struct="ARGBControlBindingClass">
-      <doc xml:space="preserve">A value mapping object that attaches multiple control sources to a guint
+      <doc xml:space="preserve"
+           filename="libs/gst/controller/gstargbcontrolbinding.c"
+           line="23">A value mapping object that attaches multiple control sources to a guint
 gobject properties representing a color. A control value of 0.0 will turn the
 color component off and a value of 1.0 will be the color level.</doc>
+      <source-position filename="libs/gst/controller/gstargbcontrolbinding.h"
+                       line="87"/>
       <constructor name="new" c:identifier="gst_argb_control_binding_new">
-        <doc xml:space="preserve">Create a new control-binding that attaches the given #GstControlSource to the
+        <doc xml:space="preserve"
+             filename="libs/gst/controller/gstargbcontrolbinding.c"
+             line="460">Create a new control-binding that attaches the given #GstControlSource to the
 #GObject property.</doc>
+        <source-position filename="libs/gst/controller/gstargbcontrolbinding.h"
+                         line="95"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the new #GstARGBControlBinding</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/controller/gstargbcontrolbinding.c"
+               line="472">the new #GstARGBControlBinding</doc>
           <type name="Gst.ControlBinding" c:type="GstControlBinding*"/>
         </return-value>
         <parameters>
           <parameter name="object" transfer-ownership="none">
-            <doc xml:space="preserve">the object of the property</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/controller/gstargbcontrolbinding.c"
+                 line="462">the object of the property</doc>
             <type name="Gst.Object" c:type="GstObject*"/>
           </parameter>
           <parameter name="property_name" transfer-ownership="none">
-            <doc xml:space="preserve">the property-name to attach the control source</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/controller/gstargbcontrolbinding.c"
+                 line="463">the property-name to attach the control source</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="cs_a" transfer-ownership="none">
-            <doc xml:space="preserve">the control source for the alpha channel</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/controller/gstargbcontrolbinding.c"
+                 line="464">the control source for the alpha channel</doc>
             <type name="Gst.ControlSource" c:type="GstControlSource*"/>
           </parameter>
           <parameter name="cs_r" transfer-ownership="none">
-            <doc xml:space="preserve">the control source for the red channel</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/controller/gstargbcontrolbinding.c"
+                 line="465">the control source for the red channel</doc>
             <type name="Gst.ControlSource" c:type="GstControlSource*"/>
           </parameter>
           <parameter name="cs_g" transfer-ownership="none">
-            <doc xml:space="preserve">the control source for the green channel</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/controller/gstargbcontrolbinding.c"
+                 line="466">the control source for the green channel</doc>
             <type name="Gst.ControlSource" c:type="GstControlSource*"/>
           </parameter>
           <parameter name="cs_b" transfer-ownership="none">
-            <doc xml:space="preserve">the control source for the blue channel</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/controller/gstargbcontrolbinding.c"
+                 line="467">the control source for the blue channel</doc>
             <type name="Gst.ControlSource" c:type="GstControlSource*"/>
           </parameter>
         </parameters>
@@ -107,7 +129,7 @@ color component off and a value of 1.0 will be the color level.</doc>
         <type name="guint32" c:type="guint32"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -115,35 +137,83 @@ color component off and a value of 1.0 will be the color level.</doc>
     <record name="ARGBControlBindingClass"
             c:type="GstARGBControlBindingClass"
             glib:is-gtype-struct-for="ARGBControlBinding">
-      <doc xml:space="preserve">The class structure of #GstARGBControlBinding.</doc>
+      <doc xml:space="preserve"
+           filename="libs/gst/controller/gstargbcontrolbinding.h"
+           line="73">The class structure of #GstARGBControlBinding.</doc>
+      <source-position filename="libs/gst/controller/gstargbcontrolbinding.h"
+                       line="87"/>
       <field name="parent_class">
-        <doc xml:space="preserve">Parent class</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/controller/gstargbcontrolbinding.h"
+             line="75">Parent class</doc>
         <type name="Gst.ControlBindingClass" c:type="GstControlBindingClass"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
     </record>
+    <function-macro name="ARGB_CONTROL_BINDING"
+                    c:identifier="GST_ARGB_CONTROL_BINDING"
+                    introspectable="0">
+      <source-position filename="libs/gst/controller/gstargbcontrolbinding.h"
+                       line="37"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="ARGB_CONTROL_BINDING_CLASS"
+                    c:identifier="GST_ARGB_CONTROL_BINDING_CLASS"
+                    introspectable="0">
+      <source-position filename="libs/gst/controller/gstargbcontrolbinding.h"
+                       line="39"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="ARGB_CONTROL_BINDING_GET_CLASS"
+                    c:identifier="GST_ARGB_CONTROL_BINDING_GET_CLASS"
+                    introspectable="0">
+      <source-position filename="libs/gst/controller/gstargbcontrolbinding.h"
+                       line="45"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
     <record name="ControlPoint"
             c:type="GstControlPoint"
             glib:type-name="GstControlPoint"
             glib:get-type="gst_control_point_get_type"
             c:symbol-prefix="control_point">
-      <doc xml:space="preserve">An internal structure for value+time and various temporary
+      <doc xml:space="preserve"
+           filename="libs/gst/controller/gsttimedvaluecontrolsource.h"
+           line="52">An internal structure for value+time and various temporary
 values used for interpolation. This "inherits" from
 GstTimedValue.</doc>
+      <source-position filename="libs/gst/controller/gsttimedvaluecontrolsource.h"
+                       line="81"/>
       <field name="timestamp" writable="1">
-        <doc xml:space="preserve">timestamp of the value change</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/controller/gsttimedvaluecontrolsource.h"
+             line="54">timestamp of the value change</doc>
         <type name="Gst.ClockTime" c:type="GstClockTime"/>
       </field>
       <field name="value" writable="1">
-        <doc xml:space="preserve">the new value</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/controller/gsttimedvaluecontrolsource.h"
+             line="55">the new value</doc>
         <type name="gdouble" c:type="gdouble"/>
       </field>
       <union name="cache" c:type="cache">
+        <source-position filename="libs/gst/controller/gsttimedvaluecontrolsource.h"
+                         line="80"/>
         <record name="cubic" c:type="cubic">
+          <source-position filename="libs/gst/controller/gsttimedvaluecontrolsource.h"
+                           line="75"/>
           <field name="h" writable="1">
             <type name="gdouble" c:type="gdouble"/>
           </field>
@@ -152,6 +222,8 @@ GstTimedValue.</doc>
           </field>
         </record>
         <record name="cubic_monotonic" c:type="cubic_monotonic">
+          <source-position filename="libs/gst/controller/gsttimedvaluecontrolsource.h"
+                           line="78"/>
           <field name="c1s" writable="1">
             <type name="gdouble" c:type="gdouble"/>
           </field>
@@ -163,34 +235,81 @@ GstTimedValue.</doc>
           </field>
         </record>
         <field name="_gst_reserved" writable="1">
-          <array zero-terminated="0" c:type="guint8" fixed-size="64">
+          <array zero-terminated="0" fixed-size="64">
             <type name="guint8" c:type="guint8"/>
           </array>
         </field>
       </union>
       <method name="copy" c:identifier="gst_control_point_copy">
+        <doc xml:space="preserve"
+             filename="libs/gst/controller/gsttimedvaluecontrolsource.c"
+             line="84">Copies a #GstControlPoint</doc>
+        <source-position filename="libs/gst/controller/gsttimedvaluecontrolsource.h"
+                         line="154"/>
         <return-value transfer-ownership="full">
+          <doc xml:space="preserve"
+               filename="libs/gst/controller/gsttimedvaluecontrolsource.c"
+               line="90">A copy of @cp</doc>
           <type name="ControlPoint" c:type="GstControlPoint*"/>
         </return-value>
         <parameters>
           <instance-parameter name="cp" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="libs/gst/controller/gsttimedvaluecontrolsource.c"
+                 line="86">The control point to copy</doc>
             <type name="ControlPoint" c:type="GstControlPoint*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="free" c:identifier="gst_control_point_free">
-        <doc xml:space="preserve">Frees all data allocated by a #GstControlPoint instance.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/controller/gsttimedvaluecontrolsource.c"
+             line="70">Frees all data allocated by a #GstControlPoint instance.</doc>
+        <source-position filename="libs/gst/controller/gsttimedvaluecontrolsource.h"
+                         line="151"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="cp" transfer-ownership="none">
-            <doc xml:space="preserve">the object to free</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/controller/gsttimedvaluecontrolsource.c"
+                 line="72">the object to free</doc>
             <type name="ControlPoint" c:type="GstControlPoint*"/>
           </instance-parameter>
         </parameters>
       </method>
     </record>
+    <function-macro name="DIRECT_CONTROL_BINDING"
+                    c:identifier="GST_DIRECT_CONTROL_BINDING"
+                    introspectable="0">
+      <source-position filename="libs/gst/controller/gstdirectcontrolbinding.h"
+                       line="36"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="DIRECT_CONTROL_BINDING_CLASS"
+                    c:identifier="GST_DIRECT_CONTROL_BINDING_CLASS"
+                    introspectable="0">
+      <source-position filename="libs/gst/controller/gstdirectcontrolbinding.h"
+                       line="38"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="DIRECT_CONTROL_BINDING_GET_CLASS"
+                    c:identifier="GST_DIRECT_CONTROL_BINDING_GET_CLASS"
+                    introspectable="0">
+      <source-position filename="libs/gst/controller/gstdirectcontrolbinding.h"
+                       line="44"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
     <class name="DirectControlBinding"
            c:symbol-prefix="direct_control_binding"
            c:type="GstDirectControlBinding"
@@ -198,31 +317,47 @@ GstTimedValue.</doc>
            glib:type-name="GstDirectControlBinding"
            glib:get-type="gst_direct_control_binding_get_type"
            glib:type-struct="DirectControlBindingClass">
-      <doc xml:space="preserve">A value mapping object that attaches control sources to gobject properties. It
+      <doc xml:space="preserve"
+           filename="libs/gst/controller/gstdirectcontrolbinding.c"
+           line="22">A value mapping object that attaches control sources to gobject properties. It
 will map the control values directly to the target property range. If a
 non-absolute direct control binding is used, the value range [0.0 ... 1.0]
 is mapped to full target property range, and all values outside the range
 will be clipped. An absolute control binding will not do any value
 transformations.</doc>
+      <source-position filename="libs/gst/controller/gstdirectcontrolbinding.h"
+                       line="111"/>
       <constructor name="new" c:identifier="gst_direct_control_binding_new">
-        <doc xml:space="preserve">Create a new control-binding that attaches the #GstControlSource to the
+        <doc xml:space="preserve"
+             filename="libs/gst/controller/gstdirectcontrolbinding.c"
+             line="511">Create a new control-binding that attaches the #GstControlSource to the
 #GObject property. It will map the control source range [0.0 ... 1.0] to
 the full target property range, and clip all values outside this range.</doc>
+        <source-position filename="libs/gst/controller/gstdirectcontrolbinding.h"
+                         line="119"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the new #GstDirectControlBinding</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/controller/gstdirectcontrolbinding.c"
+               line="521">the new #GstDirectControlBinding</doc>
           <type name="Gst.ControlBinding" c:type="GstControlBinding*"/>
         </return-value>
         <parameters>
           <parameter name="object" transfer-ownership="none">
-            <doc xml:space="preserve">the object of the property</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/controller/gstdirectcontrolbinding.c"
+                 line="513">the object of the property</doc>
             <type name="Gst.Object" c:type="GstObject*"/>
           </parameter>
           <parameter name="property_name" transfer-ownership="none">
-            <doc xml:space="preserve">the property-name to attach the control source</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/controller/gstdirectcontrolbinding.c"
+                 line="514">the property-name to attach the control source</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="cs" transfer-ownership="none">
-            <doc xml:space="preserve">the control source</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/controller/gstdirectcontrolbinding.c"
+                 line="515">the control source</doc>
             <type name="Gst.ControlSource" c:type="GstControlSource*"/>
           </parameter>
         </parameters>
@@ -230,24 +365,36 @@ the full target property range, and clip all values outside this range.</doc>
       <constructor name="new_absolute"
                    c:identifier="gst_direct_control_binding_new_absolute"
                    version="1.6">
-        <doc xml:space="preserve">Create a new control-binding that attaches the #GstControlSource to the
+        <doc xml:space="preserve"
+             filename="libs/gst/controller/gstdirectcontrolbinding.c"
+             line="531">Create a new control-binding that attaches the #GstControlSource to the
 #GObject property. It will directly map the control source values to the
 target property range without any transformations.</doc>
+        <source-position filename="libs/gst/controller/gstdirectcontrolbinding.h"
+                         line="122"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the new #GstDirectControlBinding</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/controller/gstdirectcontrolbinding.c"
+               line="541">the new #GstDirectControlBinding</doc>
           <type name="Gst.ControlBinding" c:type="GstControlBinding*"/>
         </return-value>
         <parameters>
           <parameter name="object" transfer-ownership="none">
-            <doc xml:space="preserve">the object of the property</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/controller/gstdirectcontrolbinding.c"
+                 line="533">the object of the property</doc>
             <type name="Gst.Object" c:type="GstObject*"/>
           </parameter>
           <parameter name="property_name" transfer-ownership="none">
-            <doc xml:space="preserve">the property-name to attach the control source</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/controller/gstdirectcontrolbinding.c"
+                 line="534">the property-name to attach the control source</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="cs" transfer-ownership="none">
-            <doc xml:space="preserve">the control source</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/controller/gstdirectcontrolbinding.c"
+                 line="535">the control source</doc>
             <type name="Gst.ControlSource" c:type="GstControlSource*"/>
           </parameter>
         </parameters>
@@ -288,12 +435,16 @@ target property range without any transformations.</doc>
               c:type="GstDirectControlBindingConvertGValue"/>
       </field>
       <union name="ABI" c:type="ABI">
+        <source-position filename="libs/gst/controller/gstdirectcontrolbinding.h"
+                         line="94"/>
         <field name="_gst_reserved" writable="1">
-          <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+          <array zero-terminated="0" fixed-size="4">
             <type name="gpointer" c:type="gpointer"/>
           </array>
         </field>
         <record name="abi" c:type="abi">
+          <source-position filename="libs/gst/controller/gstdirectcontrolbinding.h"
+                           line="93"/>
           <field name="want_absolute" writable="1">
             <type name="gboolean" c:type="gboolean"/>
           </field>
@@ -303,62 +454,258 @@ target property range without any transformations.</doc>
     <record name="DirectControlBindingClass"
             c:type="GstDirectControlBindingClass"
             glib:is-gtype-struct-for="DirectControlBinding">
-      <doc xml:space="preserve">The class structure of #GstDirectControlBinding.</doc>
+      <doc xml:space="preserve"
+           filename="libs/gst/controller/gstdirectcontrolbinding.h"
+           line="97">The class structure of #GstDirectControlBinding.</doc>
+      <source-position filename="libs/gst/controller/gstdirectcontrolbinding.h"
+                       line="111"/>
       <field name="parent_class">
-        <doc xml:space="preserve">Parent class</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/controller/gstdirectcontrolbinding.h"
+             line="99">Parent class</doc>
         <type name="Gst.ControlBindingClass" c:type="GstControlBindingClass"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
     </record>
     <callback name="DirectControlBindingConvertGValue"
               c:type="GstDirectControlBindingConvertGValue">
-      <doc xml:space="preserve">Function to map a control-value to the target GValue.</doc>
+      <doc xml:space="preserve"
+           filename="libs/gst/controller/gstdirectcontrolbinding.h"
+           line="61">Function to map a control-value to the target GValue.</doc>
+      <source-position filename="libs/gst/controller/gstdirectcontrolbinding.h"
+                       line="69"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="self" transfer-ownership="none">
-          <doc xml:space="preserve">the #GstDirectControlBinding instance</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/controller/gstdirectcontrolbinding.h"
+               line="63">the #GstDirectControlBinding instance</doc>
           <type name="DirectControlBinding" c:type="GstDirectControlBinding*"/>
         </parameter>
         <parameter name="src_value" transfer-ownership="none">
-          <doc xml:space="preserve">the value returned by the cotnrol source</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/controller/gstdirectcontrolbinding.h"
+               line="64">the value returned by the cotnrol source</doc>
           <type name="gdouble" c:type="gdouble"/>
         </parameter>
         <parameter name="dest_value" transfer-ownership="none">
-          <doc xml:space="preserve">the target GValue</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/controller/gstdirectcontrolbinding.h"
+               line="65">the target GValue</doc>
           <type name="GObject.Value" c:type="GValue*"/>
         </parameter>
       </parameters>
     </callback>
     <callback name="DirectControlBindingConvertValue"
               c:type="GstDirectControlBindingConvertValue">
-      <doc xml:space="preserve">Function to map a control-value to the target plain data type.</doc>
+      <doc xml:space="preserve"
+           filename="libs/gst/controller/gstdirectcontrolbinding.h"
+           line="51">Function to map a control-value to the target plain data type.</doc>
+      <source-position filename="libs/gst/controller/gstdirectcontrolbinding.h"
+                       line="59"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="self" transfer-ownership="none">
-          <doc xml:space="preserve">the #GstDirectControlBinding instance</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/controller/gstdirectcontrolbinding.h"
+               line="53">the #GstDirectControlBinding instance</doc>
           <type name="DirectControlBinding" c:type="GstDirectControlBinding*"/>
         </parameter>
         <parameter name="src_value" transfer-ownership="none">
-          <doc xml:space="preserve">the value returned by the cotnrol source</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/controller/gstdirectcontrolbinding.h"
+               line="54">the value returned by the cotnrol source</doc>
           <type name="gdouble" c:type="gdouble"/>
         </parameter>
         <parameter name="dest_value"
                    transfer-ownership="none"
                    nullable="1"
                    allow-none="1">
-          <doc xml:space="preserve">the target location</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/controller/gstdirectcontrolbinding.h"
+               line="55">the target location</doc>
           <type name="gpointer" c:type="gpointer"/>
         </parameter>
       </parameters>
     </callback>
+    <function-macro name="INTERPOLATION_CONTROL_SOURCE"
+                    c:identifier="GST_INTERPOLATION_CONTROL_SOURCE"
+                    introspectable="0">
+      <source-position filename="libs/gst/controller/gstinterpolationcontrolsource.h"
+                       line="36"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="INTERPOLATION_CONTROL_SOURCE_CLASS"
+                    c:identifier="GST_INTERPOLATION_CONTROL_SOURCE_CLASS"
+                    introspectable="0">
+      <source-position filename="libs/gst/controller/gstinterpolationcontrolsource.h"
+                       line="38"/>
+      <parameters>
+        <parameter name="vtable">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="INTERPOLATION_CONTROL_SOURCE_GET_CLASS"
+                    c:identifier="GST_INTERPOLATION_CONTROL_SOURCE_GET_CLASS"
+                    introspectable="0">
+      <source-position filename="libs/gst/controller/gstinterpolationcontrolsource.h"
+                       line="44"/>
+      <parameters>
+        <parameter name="inst">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_ARGB_CONTROL_BINDING"
+                    c:identifier="GST_IS_ARGB_CONTROL_BINDING"
+                    introspectable="0">
+      <source-position filename="libs/gst/controller/gstargbcontrolbinding.h"
+                       line="41"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_ARGB_CONTROL_BINDING_CLASS"
+                    c:identifier="GST_IS_ARGB_CONTROL_BINDING_CLASS"
+                    introspectable="0">
+      <source-position filename="libs/gst/controller/gstargbcontrolbinding.h"
+                       line="43"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_DIRECT_CONTROL_BINDING"
+                    c:identifier="GST_IS_DIRECT_CONTROL_BINDING"
+                    introspectable="0">
+      <source-position filename="libs/gst/controller/gstdirectcontrolbinding.h"
+                       line="40"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_DIRECT_CONTROL_BINDING_CLASS"
+                    c:identifier="GST_IS_DIRECT_CONTROL_BINDING_CLASS"
+                    introspectable="0">
+      <source-position filename="libs/gst/controller/gstdirectcontrolbinding.h"
+                       line="42"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_INTERPOLATION_CONTROL_SOURCE"
+                    c:identifier="GST_IS_INTERPOLATION_CONTROL_SOURCE"
+                    introspectable="0">
+      <source-position filename="libs/gst/controller/gstinterpolationcontrolsource.h"
+                       line="40"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_INTERPOLATION_CONTROL_SOURCE_CLASS"
+                    c:identifier="GST_IS_INTERPOLATION_CONTROL_SOURCE_CLASS"
+                    introspectable="0">
+      <source-position filename="libs/gst/controller/gstinterpolationcontrolsource.h"
+                       line="42"/>
+      <parameters>
+        <parameter name="vtable">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_LFO_CONTROL_SOURCE"
+                    c:identifier="GST_IS_LFO_CONTROL_SOURCE"
+                    introspectable="0">
+      <source-position filename="libs/gst/controller/gstlfocontrolsource.h"
+                       line="38"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_LFO_CONTROL_SOURCE_CLASS"
+                    c:identifier="GST_IS_LFO_CONTROL_SOURCE_CLASS"
+                    introspectable="0">
+      <source-position filename="libs/gst/controller/gstlfocontrolsource.h"
+                       line="40"/>
+      <parameters>
+        <parameter name="vtable">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_PROXY_CONTROL_BINDING"
+                    c:identifier="GST_IS_PROXY_CONTROL_BINDING"
+                    introspectable="0">
+      <source-position filename="libs/gst/controller/gstproxycontrolbinding.h"
+                       line="34"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_PROXY_CONTROL_BINDING_CLASS"
+                    c:identifier="GST_IS_PROXY_CONTROL_BINDING_CLASS"
+                    introspectable="0">
+      <source-position filename="libs/gst/controller/gstproxycontrolbinding.h"
+                       line="36"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_TIMED_VALUE_CONTROL_SOURCE"
+                    c:identifier="GST_IS_TIMED_VALUE_CONTROL_SOURCE"
+                    introspectable="0">
+      <source-position filename="libs/gst/controller/gsttimedvaluecontrolsource.h"
+                       line="39"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_TIMED_VALUE_CONTROL_SOURCE_CLASS"
+                    c:identifier="GST_IS_TIMED_VALUE_CONTROL_SOURCE_CLASS"
+                    introspectable="0">
+      <source-position filename="libs/gst/controller/gsttimedvaluecontrolsource.h"
+                       line="41"/>
+      <parameters>
+        <parameter name="vtable">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_TRIGGER_CONTROL_SOURCE"
+                    c:identifier="GST_IS_TRIGGER_CONTROL_SOURCE"
+                    introspectable="0">
+      <source-position filename="libs/gst/controller/gsttriggercontrolsource.h"
+                       line="41"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_TRIGGER_CONTROL_SOURCE_CLASS"
+                    c:identifier="GST_IS_TRIGGER_CONTROL_SOURCE_CLASS"
+                    introspectable="0">
+      <source-position filename="libs/gst/controller/gsttriggercontrolsource.h"
+                       line="43"/>
+      <parameters>
+        <parameter name="vtable">
+        </parameter>
+      </parameters>
+    </function-macro>
     <class name="InterpolationControlSource"
            c:symbol-prefix="interpolation_control_source"
            c:type="GstInterpolationControlSource"
@@ -366,7 +713,9 @@ target property range without any transformations.</doc>
            glib:type-name="GstInterpolationControlSource"
            glib:get-type="gst_interpolation_control_source_get_type"
            glib:type-struct="InterpolationControlSourceClass">
-      <doc xml:space="preserve">#GstInterpolationControlSource is a #GstControlSource, that interpolates values between user-given
+      <doc xml:space="preserve"
+           filename="libs/gst/controller/gstinterpolationcontrolsource.c"
+           line="24">#GstInterpolationControlSource is a #GstControlSource, that interpolates values between user-given
 control points. It supports several interpolation modes and property types.
 
 To use #GstInterpolationControlSource get a new instance by calling
@@ -374,11 +723,19 @@ gst_interpolation_control_source_new(), bind it to a #GParamSpec and set some
 control points by calling gst_timed_value_control_source_set().
 
 All functions are MT-safe.</doc>
+      <source-position filename="libs/gst/controller/gstinterpolationcontrolsource.h"
+                       line="90"/>
       <constructor name="new"
                    c:identifier="gst_interpolation_control_source_new">
-        <doc xml:space="preserve">This returns a new, unbound #GstInterpolationControlSource.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/controller/gstinterpolationcontrolsource.c"
+             line="641">This returns a new, unbound #GstInterpolationControlSource.</doc>
+        <source-position filename="libs/gst/controller/gstinterpolationcontrolsource.h"
+                         line="98"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new, unbound #GstInterpolationControlSource.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/controller/gstinterpolationcontrolsource.c"
+               line="646">a new, unbound #GstInterpolationControlSource.</doc>
           <type name="Gst.ControlSource" c:type="GstControlSource*"/>
         </return-value>
       </constructor>
@@ -394,7 +751,7 @@ All functions are MT-safe.</doc>
               c:type="GstInterpolationControlSourcePrivate*"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -402,12 +759,14 @@ All functions are MT-safe.</doc>
     <record name="InterpolationControlSourceClass"
             c:type="GstInterpolationControlSourceClass"
             glib:is-gtype-struct-for="InterpolationControlSource">
+      <source-position filename="libs/gst/controller/gstinterpolationcontrolsource.h"
+                       line="90"/>
       <field name="parent_class">
         <type name="TimedValueControlSourceClass"
               c:type="GstTimedValueControlSourceClass"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -415,38 +774,50 @@ All functions are MT-safe.</doc>
     <record name="InterpolationControlSourcePrivate"
             c:type="GstInterpolationControlSourcePrivate"
             disguised="1">
+      <source-position filename="libs/gst/controller/gstinterpolationcontrolsource.h"
+                       line="50"/>
     </record>
     <enumeration name="InterpolationMode"
                  glib:type-name="GstInterpolationMode"
                  glib:get-type="gst_interpolation_mode_get_type"
                  c:type="GstInterpolationMode">
-      <doc xml:space="preserve">The various interpolation modes available.</doc>
+      <doc xml:space="preserve"
+           filename="libs/gst/controller/gstinterpolationcontrolsource.h"
+           line="52">The various interpolation modes available.</doc>
       <member name="none"
               value="0"
               c:identifier="GST_INTERPOLATION_MODE_NONE"
               glib:nick="none">
-        <doc xml:space="preserve">steps-like interpolation, default</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/controller/gstinterpolationcontrolsource.h"
+             line="54">steps-like interpolation, default</doc>
       </member>
       <member name="linear"
               value="1"
               c:identifier="GST_INTERPOLATION_MODE_LINEAR"
               glib:nick="linear">
-        <doc xml:space="preserve">linear interpolation</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/controller/gstinterpolationcontrolsource.h"
+             line="55">linear interpolation</doc>
       </member>
       <member name="cubic"
               value="2"
               c:identifier="GST_INTERPOLATION_MODE_CUBIC"
               glib:nick="cubic">
-        <doc xml:space="preserve">cubic interpolation (natural), may overshoot
+        <doc xml:space="preserve"
+             filename="libs/gst/controller/gstinterpolationcontrolsource.h"
+             line="56">cubic interpolation (natural), may overshoot
   the min or max values set by the control point, but is more 'curvy'</doc>
       </member>
       <member name="cubic_monotonic"
               value="3"
               c:identifier="GST_INTERPOLATION_MODE_CUBIC_MONOTONIC"
               glib:nick="cubic-monotonic">
-        <doc xml:space="preserve">monotonic cubic interpolation, will not
+        <doc xml:space="preserve"
+             filename="libs/gst/controller/gstinterpolationcontrolsource.h"
+             line="58">monotonic cubic interpolation, will not
   produce any values outside of the min-max range set by the control points
-  (Since 1.8)</doc>
+  (Since: 1.8)</doc>
       </member>
     </enumeration>
     <class name="LFOControlSource"
@@ -456,7 +827,9 @@ All functions are MT-safe.</doc>
            glib:type-name="GstLFOControlSource"
            glib:get-type="gst_lfo_control_source_get_type"
            glib:type-struct="LFOControlSourceClass">
-      <doc xml:space="preserve">#GstLFOControlSource is a #GstControlSource, that provides several periodic
+      <doc xml:space="preserve"
+           filename="libs/gst/controller/gstlfocontrolsource.c"
+           line="24">#GstLFOControlSource is a #GstControlSource, that provides several periodic
 waveforms as control values.
 
 To use #GstLFOControlSource get a new instance by calling
@@ -464,29 +837,45 @@ gst_lfo_control_source_new(), bind it to a #GParamSpec and set the relevant
 properties.
 
 All functions are MT-safe.</doc>
+      <source-position filename="libs/gst/controller/gstlfocontrolsource.h"
+                       line="88"/>
       <constructor name="new" c:identifier="gst_lfo_control_source_new">
-        <doc xml:space="preserve">This returns a new, unbound #GstLFOControlSource.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/controller/gstlfocontrolsource.c"
+             line="394">This returns a new, unbound #GstLFOControlSource.</doc>
+        <source-position filename="libs/gst/controller/gstlfocontrolsource.h"
+                         line="96"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new, unbound #GstLFOControlSource.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/controller/gstlfocontrolsource.c"
+               line="399">a new, unbound #GstLFOControlSource.</doc>
           <type name="Gst.ControlSource" c:type="GstControlSource*"/>
         </return-value>
       </constructor>
       <property name="amplitude" writable="1" transfer-ownership="none">
-        <doc xml:space="preserve">Specifies the amplitude for the waveform of this #GstLFOControlSource.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/controller/gstlfocontrolsource.c"
+             line="575">Specifies the amplitude for the waveform of this #GstLFOControlSource.</doc>
         <type name="gdouble" c:type="gdouble"/>
       </property>
       <property name="frequency" writable="1" transfer-ownership="none">
-        <doc xml:space="preserve">Specifies the frequency that should be used for the waveform
+        <doc xml:space="preserve"
+             filename="libs/gst/controller/gstlfocontrolsource.c"
+             line="548">Specifies the frequency that should be used for the waveform
 of this #GstLFOControlSource. It should be large enough
 so that the period is longer than one nanosecond.</doc>
         <type name="gdouble" c:type="gdouble"/>
       </property>
       <property name="offset" writable="1" transfer-ownership="none">
-        <doc xml:space="preserve">Specifies the value offset for the waveform of this #GstLFOControlSource.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/controller/gstlfocontrolsource.c"
+             line="585">Specifies the value offset for the waveform of this #GstLFOControlSource.</doc>
         <type name="gdouble" c:type="gdouble"/>
       </property>
       <property name="timeshift" writable="1" transfer-ownership="none">
-        <doc xml:space="preserve">Specifies the timeshift to the right that should be used for the waveform
+        <doc xml:space="preserve"
+             filename="libs/gst/controller/gstlfocontrolsource.c"
+             line="560">Specifies the timeshift to the right that should be used for the waveform
 of this #GstLFOControlSource in nanoseconds.
 
 To get a n nanosecond shift to the left use
@@ -494,7 +883,9 @@ To get a n nanosecond shift to the left use
         <type name="guint64" c:type="guint64"/>
       </property>
       <property name="waveform" writable="1" transfer-ownership="none">
-        <doc xml:space="preserve">Specifies the waveform that should be used for this #GstLFOControlSource.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/controller/gstlfocontrolsource.c"
+             line="538">Specifies the waveform that should be used for this #GstLFOControlSource.</doc>
         <type name="LFOWaveform"/>
       </property>
       <field name="parent">
@@ -508,7 +899,7 @@ To get a n nanosecond shift to the left use
         <type name="GLib.Mutex" c:type="GMutex"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -516,11 +907,13 @@ To get a n nanosecond shift to the left use
     <record name="LFOControlSourceClass"
             c:type="GstLFOControlSourceClass"
             glib:is-gtype-struct-for="LFOControlSource">
+      <source-position filename="libs/gst/controller/gstlfocontrolsource.h"
+                       line="88"/>
       <field name="parent_class">
         <type name="Gst.ControlSourceClass" c:type="GstControlSourceClass"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -528,43 +921,117 @@ To get a n nanosecond shift to the left use
     <record name="LFOControlSourcePrivate"
             c:type="GstLFOControlSourcePrivate"
             disguised="1">
+      <source-position filename="libs/gst/controller/gstlfocontrolsource.h"
+                       line="48"/>
     </record>
     <enumeration name="LFOWaveform"
                  glib:type-name="GstLFOWaveform"
                  glib:get-type="gst_lfo_waveform_get_type"
                  c:type="GstLFOWaveform">
-      <doc xml:space="preserve">The various waveform modes available.</doc>
+      <doc xml:space="preserve"
+           filename="libs/gst/controller/gstlfocontrolsource.h"
+           line="50">The various waveform modes available.</doc>
       <member name="sine"
               value="0"
               c:identifier="GST_LFO_WAVEFORM_SINE"
               glib:nick="sine">
-        <doc xml:space="preserve">sine waveform</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/controller/gstlfocontrolsource.h"
+             line="52">sine waveform</doc>
       </member>
       <member name="square"
               value="1"
               c:identifier="GST_LFO_WAVEFORM_SQUARE"
               glib:nick="square">
-        <doc xml:space="preserve">square waveform</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/controller/gstlfocontrolsource.h"
+             line="53">square waveform</doc>
       </member>
       <member name="saw"
               value="2"
               c:identifier="GST_LFO_WAVEFORM_SAW"
               glib:nick="saw">
-        <doc xml:space="preserve">saw waveform</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/controller/gstlfocontrolsource.h"
+             line="54">saw waveform</doc>
       </member>
       <member name="reverse_saw"
               value="3"
               c:identifier="GST_LFO_WAVEFORM_REVERSE_SAW"
               glib:nick="reverse-saw">
-        <doc xml:space="preserve">reverse saw waveform</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/controller/gstlfocontrolsource.h"
+             line="55">reverse saw waveform</doc>
       </member>
       <member name="triangle"
               value="4"
               c:identifier="GST_LFO_WAVEFORM_TRIANGLE"
               glib:nick="triangle">
-        <doc xml:space="preserve">triangle waveform</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/controller/gstlfocontrolsource.h"
+             line="56">triangle waveform</doc>
       </member>
     </enumeration>
+    <function-macro name="LFO_CONTROL_SOURCE"
+                    c:identifier="GST_LFO_CONTROL_SOURCE"
+                    introspectable="0">
+      <source-position filename="libs/gst/controller/gstlfocontrolsource.h"
+                       line="34"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="LFO_CONTROL_SOURCE_CLASS"
+                    c:identifier="GST_LFO_CONTROL_SOURCE_CLASS"
+                    introspectable="0">
+      <source-position filename="libs/gst/controller/gstlfocontrolsource.h"
+                       line="36"/>
+      <parameters>
+        <parameter name="vtable">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="LFO_CONTROL_SOURCE_GET_CLASS"
+                    c:identifier="GST_LFO_CONTROL_SOURCE_GET_CLASS"
+                    introspectable="0">
+      <source-position filename="libs/gst/controller/gstlfocontrolsource.h"
+                       line="42"/>
+      <parameters>
+        <parameter name="inst">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PROXY_CONTROL_BINDING"
+                    c:identifier="GST_PROXY_CONTROL_BINDING"
+                    introspectable="0">
+      <source-position filename="libs/gst/controller/gstproxycontrolbinding.h"
+                       line="30"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PROXY_CONTROL_BINDING_CLASS"
+                    c:identifier="GST_PROXY_CONTROL_BINDING_CLASS"
+                    introspectable="0">
+      <source-position filename="libs/gst/controller/gstproxycontrolbinding.h"
+                       line="32"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PROXY_CONTROL_BINDING_GET_CLASS"
+                    c:identifier="GST_PROXY_CONTROL_BINDING_GET_CLASS"
+                    introspectable="0">
+      <source-position filename="libs/gst/controller/gstproxycontrolbinding.h"
+                       line="38"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
     <class name="ProxyControlBinding"
            c:symbol-prefix="proxy_control_binding"
            c:type="GstProxyControlBinding"
@@ -572,34 +1039,52 @@ To get a n nanosecond shift to the left use
            glib:type-name="GstProxyControlBinding"
            glib:get-type="gst_proxy_control_binding_get_type"
            glib:type-struct="ProxyControlBindingClass">
-      <doc xml:space="preserve">A #GstControlBinding that forwards requests to another #GstControlBinding</doc>
+      <doc xml:space="preserve"
+           filename="libs/gst/controller/gstproxycontrolbinding.c"
+           line="20">A #GstControlBinding that forwards requests to another #GstControlBinding</doc>
+      <source-position filename="libs/gst/controller/gstproxycontrolbinding.h"
+                       line="71"/>
       <constructor name="new"
                    c:identifier="gst_proxy_control_binding_new"
                    version="1.12">
-        <doc xml:space="preserve">#GstProxyControlBinding forwards all access to data or sync_values()
+        <doc xml:space="preserve"
+             filename="libs/gst/controller/gstproxycontrolbinding.c"
+             line="165">#GstProxyControlBinding forwards all access to data or `sync_values()`
 requests from @property_name on @object to the control binding at
 @ref_property_name on @ref_object.</doc>
+        <source-position filename="libs/gst/controller/gstproxycontrolbinding.h"
+                         line="77"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a new #GstControlBinding that proxies the control interface between
+          <doc xml:space="preserve"
+               filename="libs/gst/controller/gstproxycontrolbinding.c"
+               line="177">a new #GstControlBinding that proxies the control interface between
 properties on different #GstObject's</doc>
           <type name="Gst.ControlBinding" c:type="GstControlBinding*"/>
         </return-value>
         <parameters>
           <parameter name="object" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstObject</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/controller/gstproxycontrolbinding.c"
+                 line="167">a #GstObject</doc>
             <type name="Gst.Object" c:type="GstObject*"/>
           </parameter>
           <parameter name="property_name" transfer-ownership="none">
-            <doc xml:space="preserve">the property name in @object to control</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/controller/gstproxycontrolbinding.c"
+                 line="168">the property name in @object to control</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="ref_object" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstObject to forward all
+            <doc xml:space="preserve"
+                 filename="libs/gst/controller/gstproxycontrolbinding.c"
+                 line="169">a #GstObject to forward all
              #GstControlBinding requests to</doc>
             <type name="Gst.Object" c:type="GstObject*"/>
           </parameter>
           <parameter name="ref_property_name" transfer-ownership="none">
-            <doc xml:space="preserve">the property_name in @ref_object to control</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/controller/gstproxycontrolbinding.c"
+                 line="171">the property_name in @ref_object to control</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
@@ -614,7 +1099,7 @@ properties on different #GstObject's</doc>
         <type name="utf8" c:type="gchar*"/>
       </field>
       <field name="_padding" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -622,16 +1107,100 @@ properties on different #GstObject's</doc>
     <record name="ProxyControlBindingClass"
             c:type="GstProxyControlBindingClass"
             glib:is-gtype-struct-for="ProxyControlBinding">
-      <doc xml:space="preserve">Opaque #GstProxyControlBindingClass struct</doc>
+      <doc xml:space="preserve"
+           filename="libs/gst/controller/gstproxycontrolbinding.h"
+           line="60">Opaque #GstProxyControlBindingClass struct</doc>
+      <source-position filename="libs/gst/controller/gstproxycontrolbinding.h"
+                       line="71"/>
       <field name="parent_class" readable="0" private="1">
         <type name="Gst.ControlBindingClass" c:type="GstControlBindingClass"/>
       </field>
       <field name="_padding" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
     </record>
+    <function-macro name="TIMED_VALUE_CONTROL_SOURCE"
+                    c:identifier="GST_TIMED_VALUE_CONTROL_SOURCE"
+                    introspectable="0">
+      <source-position filename="libs/gst/controller/gsttimedvaluecontrolsource.h"
+                       line="35"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="TIMED_VALUE_CONTROL_SOURCE_CLASS"
+                    c:identifier="GST_TIMED_VALUE_CONTROL_SOURCE_CLASS"
+                    introspectable="0">
+      <source-position filename="libs/gst/controller/gsttimedvaluecontrolsource.h"
+                       line="37"/>
+      <parameters>
+        <parameter name="vtable">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="TIMED_VALUE_CONTROL_SOURCE_GET_CLASS"
+                    c:identifier="GST_TIMED_VALUE_CONTROL_SOURCE_GET_CLASS"
+                    introspectable="0">
+      <source-position filename="libs/gst/controller/gsttimedvaluecontrolsource.h"
+                       line="43"/>
+      <parameters>
+        <parameter name="inst">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="TIMED_VALUE_CONTROL_SOURCE_LOCK"
+                    c:identifier="GST_TIMED_VALUE_CONTROL_SOURCE_LOCK"
+                    introspectable="0">
+      <source-position filename="libs/gst/controller/gsttimedvaluecontrolsource.h"
+                       line="112"/>
+      <parameters>
+        <parameter name="o">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="TIMED_VALUE_CONTROL_SOURCE_UNLOCK"
+                    c:identifier="GST_TIMED_VALUE_CONTROL_SOURCE_UNLOCK"
+                    introspectable="0">
+      <source-position filename="libs/gst/controller/gsttimedvaluecontrolsource.h"
+                       line="114"/>
+      <parameters>
+        <parameter name="o">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="TRIGGER_CONTROL_SOURCE"
+                    c:identifier="GST_TRIGGER_CONTROL_SOURCE"
+                    introspectable="0">
+      <source-position filename="libs/gst/controller/gsttriggercontrolsource.h"
+                       line="37"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="TRIGGER_CONTROL_SOURCE_CLASS"
+                    c:identifier="GST_TRIGGER_CONTROL_SOURCE_CLASS"
+                    introspectable="0">
+      <source-position filename="libs/gst/controller/gsttriggercontrolsource.h"
+                       line="39"/>
+      <parameters>
+        <parameter name="vtable">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="TRIGGER_CONTROL_SOURCE_GET_CLASS"
+                    c:identifier="GST_TRIGGER_CONTROL_SOURCE_GET_CLASS"
+                    introspectable="0">
+      <source-position filename="libs/gst/controller/gsttriggercontrolsource.h"
+                       line="45"/>
+      <parameters>
+        <parameter name="inst">
+        </parameter>
+      </parameters>
+    </function-macro>
     <class name="TimedValueControlSource"
            c:symbol-prefix="timed_value_control_source"
            c:type="GstTimedValueControlSource"
@@ -640,41 +1209,61 @@ properties on different #GstObject's</doc>
            glib:type-name="GstTimedValueControlSource"
            glib:get-type="gst_timed_value_control_source_get_type"
            glib:type-struct="TimedValueControlSourceClass">
-      <doc xml:space="preserve">Base class for #GstControlSource that use time-stamped values.
+      <doc xml:space="preserve"
+           filename="libs/gst/controller/gsttimedvaluecontrolsource.c"
+           line="25">Base class for #GstControlSource that use time-stamped values.
 
 When overriding bind, chain up first to give this bind implementation a
 chance to setup things.
 
 All functions are MT-safe.</doc>
+      <source-position filename="libs/gst/controller/gsttimedvaluecontrolsource.h"
+                       line="111"/>
       <method name="find_control_point_iter"
               c:identifier="gst_timed_value_control_source_find_control_point_iter">
-        <doc xml:space="preserve">Find last value before given timestamp in control point list.
+        <doc xml:space="preserve"
+             filename="libs/gst/controller/gsttimedvaluecontrolsource.c"
+             line="224">Find last value before given timestamp in control point list.
 If all values in the control point list come after the given
 timestamp or no values exist, %NULL is returned.
 
 For use in control source implementations.</doc>
+        <source-position filename="libs/gst/controller/gsttimedvaluecontrolsource.h"
+                         line="124"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the found #GSequenceIter or %NULL</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/controller/gsttimedvaluecontrolsource.c"
+               line="235">the found #GSequenceIter or %NULL</doc>
           <type name="GLib.SequenceIter" c:type="GSequenceIter*"/>
         </return-value>
         <parameters>
           <instance-parameter name="self" transfer-ownership="none">
-            <doc xml:space="preserve">the control source to search in</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/controller/gsttimedvaluecontrolsource.c"
+                 line="226">the control source to search in</doc>
             <type name="TimedValueControlSource"
                   c:type="GstTimedValueControlSource*"/>
           </instance-parameter>
           <parameter name="timestamp" transfer-ownership="none">
-            <doc xml:space="preserve">the search key</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/controller/gsttimedvaluecontrolsource.c"
+                 line="227">the search key</doc>
             <type name="Gst.ClockTime" c:type="GstClockTime"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_all"
               c:identifier="gst_timed_value_control_source_get_all">
-        <doc xml:space="preserve">Returns a read-only copy of the list of #GstTimedValue for the given property.
+        <doc xml:space="preserve"
+             filename="libs/gst/controller/gsttimedvaluecontrolsource.c"
+             line="393">Returns a read-only copy of the list of #GstTimedValue for the given property.
 Free the list after done with it.</doc>
+        <source-position filename="libs/gst/controller/gsttimedvaluecontrolsource.h"
+                         line="142"/>
         <return-value transfer-ownership="container">
-          <doc xml:space="preserve">a copy
+          <doc xml:space="preserve"
+               filename="libs/gst/controller/gsttimedvaluecontrolsource.c"
+               line="400">a copy
 of the list, or %NULL if the property isn't handled by the controller</doc>
           <type name="GLib.List" c:type="GList*">
             <type name="Gst.TimedValue"/>
@@ -682,7 +1271,9 @@ of the list, or %NULL if the property isn't handled by the controller</doc>
         </return-value>
         <parameters>
           <instance-parameter name="self" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstTimedValueControlSource to get the list from</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/controller/gsttimedvaluecontrolsource.c"
+                 line="395">the #GstTimedValueControlSource to get the list from</doc>
             <type name="TimedValueControlSource"
                   c:type="GstTimedValueControlSource*"/>
           </instance-parameter>
@@ -690,56 +1281,86 @@ of the list, or %NULL if the property isn't handled by the controller</doc>
       </method>
       <method name="get_count"
               c:identifier="gst_timed_value_control_source_get_count">
-        <doc xml:space="preserve">Get the number of control points that are set.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/controller/gsttimedvaluecontrolsource.c"
+             line="418">Get the number of control points that are set.</doc>
+        <source-position filename="libs/gst/controller/gsttimedvaluecontrolsource.h"
+                         line="145"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the number of control points that are set.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/controller/gsttimedvaluecontrolsource.c"
+               line="424">the number of control points that are set.</doc>
           <type name="gint" c:type="gint"/>
         </return-value>
         <parameters>
           <instance-parameter name="self" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstTimedValueControlSource to get the number of values from</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/controller/gsttimedvaluecontrolsource.c"
+                 line="420">the #GstTimedValueControlSource to get the number of values from</doc>
             <type name="TimedValueControlSource"
                   c:type="GstTimedValueControlSource*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="set" c:identifier="gst_timed_value_control_source_set">
-        <doc xml:space="preserve">Set the value of given controller-handled property at a certain time.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/controller/gsttimedvaluecontrolsource.c"
+             line="260">Set the value of given controller-handled property at a certain time.</doc>
+        <source-position filename="libs/gst/controller/gsttimedvaluecontrolsource.h"
+                         line="128"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">FALSE if the values couldn't be set, TRUE otherwise.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/controller/gsttimedvaluecontrolsource.c"
+               line="268">FALSE if the values couldn't be set, TRUE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="self" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstTimedValueControlSource object</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/controller/gsttimedvaluecontrolsource.c"
+                 line="262">the #GstTimedValueControlSource object</doc>
             <type name="TimedValueControlSource"
                   c:type="GstTimedValueControlSource*"/>
           </instance-parameter>
           <parameter name="timestamp" transfer-ownership="none">
-            <doc xml:space="preserve">the time the control-change is scheduled for</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/controller/gsttimedvaluecontrolsource.c"
+                 line="263">the time the control-change is scheduled for</doc>
             <type name="Gst.ClockTime" c:type="GstClockTime"/>
           </parameter>
           <parameter name="value" transfer-ownership="none">
-            <doc xml:space="preserve">the control-value</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/controller/gsttimedvaluecontrolsource.c"
+                 line="264">the control-value</doc>
             <type name="gdouble" c:type="const gdouble"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_from_list"
               c:identifier="gst_timed_value_control_source_set_from_list">
-        <doc xml:space="preserve">Sets multiple timed values at once.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/controller/gsttimedvaluecontrolsource.c"
+             line="282">Sets multiple timed values at once.</doc>
+        <source-position filename="libs/gst/controller/gsttimedvaluecontrolsource.h"
+                         line="132"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">FALSE if the values couldn't be set, TRUE otherwise.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/controller/gsttimedvaluecontrolsource.c"
+               line="290">FALSE if the values couldn't be set, TRUE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="self" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstTimedValueControlSource object</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/controller/gsttimedvaluecontrolsource.c"
+                 line="284">the #GstTimedValueControlSource object</doc>
             <type name="TimedValueControlSource"
                   c:type="GstTimedValueControlSource*"/>
           </instance-parameter>
           <parameter name="timedvalues" transfer-ownership="none">
-            <doc xml:space="preserve">a list
+            <doc xml:space="preserve"
+                 filename="libs/gst/controller/gsttimedvaluecontrolsource.c"
+                 line="285">a list
 with #GstTimedValue items</doc>
             <type name="GLib.SList" c:type="const GSList*">
               <type name="Gst.TimedValue"/>
@@ -748,33 +1369,49 @@ with #GstTimedValue items</doc>
         </parameters>
       </method>
       <method name="unset" c:identifier="gst_timed_value_control_source_unset">
-        <doc xml:space="preserve">Used to remove the value of given controller-handled property at a certain
+        <doc xml:space="preserve"
+             filename="libs/gst/controller/gsttimedvaluecontrolsource.c"
+             line="316">Used to remove the value of given controller-handled property at a certain
 time.</doc>
+        <source-position filename="libs/gst/controller/gsttimedvaluecontrolsource.h"
+                         line="135"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">FALSE if the value couldn't be unset (i.e. not found, TRUE otherwise.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/controller/gsttimedvaluecontrolsource.c"
+               line="324">FALSE if the value couldn't be unset (i.e. not found, TRUE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="self" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstTimedValueControlSource object</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/controller/gsttimedvaluecontrolsource.c"
+                 line="318">the #GstTimedValueControlSource object</doc>
             <type name="TimedValueControlSource"
                   c:type="GstTimedValueControlSource*"/>
           </instance-parameter>
           <parameter name="timestamp" transfer-ownership="none">
-            <doc xml:space="preserve">the time the control-change should be removed from</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/controller/gsttimedvaluecontrolsource.c"
+                 line="319">the time the control-change should be removed from</doc>
             <type name="Gst.ClockTime" c:type="GstClockTime"/>
           </parameter>
         </parameters>
       </method>
       <method name="unset_all"
               c:identifier="gst_timed_value_control_source_unset_all">
-        <doc xml:space="preserve">Used to remove all time-stamped values of given controller-handled property</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/controller/gsttimedvaluecontrolsource.c"
+             line="363">Used to remove all time-stamped values of given controller-handled property</doc>
+        <source-position filename="libs/gst/controller/gsttimedvaluecontrolsource.h"
+                         line="139"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="self" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstTimedValueControlSource object</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/controller/gsttimedvaluecontrolsource.c"
+                 line="365">the #GstTimedValueControlSource object</doc>
             <type name="TimedValueControlSource"
                   c:type="GstTimedValueControlSource*"/>
           </instance-parameter>
@@ -800,42 +1437,54 @@ time.</doc>
               c:type="GstTimedValueControlSourcePrivate*"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
       <glib:signal name="value-added" when="first" version="1.6">
-        <doc xml:space="preserve">Emitted right after the new value has been added to @self</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/controller/gsttimedvaluecontrolsource.c"
+             line="486">Emitted right after the new value has been added to @self</doc>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <parameter name="timed_value" transfer-ownership="none">
-            <doc xml:space="preserve">The newly added #GstTimedValue</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/controller/gsttimedvaluecontrolsource.c"
+                 line="490">The newly added #GstTimedValue</doc>
             <type name="ControlPoint"/>
           </parameter>
         </parameters>
       </glib:signal>
       <glib:signal name="value-changed" when="first" version="1.6">
-        <doc xml:space="preserve">Emitted right after the new value has been set on @timed_signals</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/controller/gsttimedvaluecontrolsource.c"
+             line="472">Emitted right after the new value has been set on @timed_signals</doc>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <parameter name="timed_value" transfer-ownership="none">
-            <doc xml:space="preserve">The #GstTimedValue where the value changed</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/controller/gsttimedvaluecontrolsource.c"
+                 line="475">The #GstTimedValue where the value changed</doc>
             <type name="ControlPoint"/>
           </parameter>
         </parameters>
       </glib:signal>
       <glib:signal name="value-removed" when="first" version="1.6">
-        <doc xml:space="preserve">Emitted when @timed_value is removed from @self</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/controller/gsttimedvaluecontrolsource.c"
+             line="501">Emitted when @timed_value is removed from @self</doc>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <parameter name="timed_value" transfer-ownership="none">
-            <doc xml:space="preserve">The removed #GstTimedValue</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/controller/gsttimedvaluecontrolsource.c"
+                 line="505">The removed #GstTimedValue</doc>
             <type name="ControlPoint"/>
           </parameter>
         </parameters>
@@ -844,11 +1493,13 @@ time.</doc>
     <record name="TimedValueControlSourceClass"
             c:type="GstTimedValueControlSourceClass"
             glib:is-gtype-struct-for="TimedValueControlSource">
+      <source-position filename="libs/gst/controller/gsttimedvaluecontrolsource.h"
+                       line="111"/>
       <field name="parent_class">
         <type name="Gst.ControlSourceClass" c:type="GstControlSourceClass"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -856,6 +1507,8 @@ time.</doc>
     <record name="TimedValueControlSourcePrivate"
             c:type="GstTimedValueControlSourcePrivate"
             disguised="1">
+      <source-position filename="libs/gst/controller/gsttimedvaluecontrolsource.h"
+                       line="49"/>
     </record>
     <class name="TriggerControlSource"
            c:symbol-prefix="trigger_control_source"
@@ -864,7 +1517,9 @@ time.</doc>
            glib:type-name="GstTriggerControlSource"
            glib:get-type="gst_trigger_control_source_get_type"
            glib:type-struct="TriggerControlSourceClass">
-      <doc xml:space="preserve">#GstTriggerControlSource is a #GstControlSource, that returns values from user-given
+      <doc xml:space="preserve"
+           filename="libs/gst/controller/gsttriggercontrolsource.c"
+           line="25">#GstTriggerControlSource is a #GstControlSource, that returns values from user-given
 control points. It allows for a tolerance on the time-stamps.
 
 To use #GstTriggerControlSource get a new instance by calling
@@ -872,10 +1527,18 @@ gst_trigger_control_source_new(), bind it to a #GParamSpec and set some
 control points by calling gst_timed_value_control_source_set().
 
 All functions are MT-safe.</doc>
+      <source-position filename="libs/gst/controller/gsttriggercontrolsource.h"
+                       line="73"/>
       <constructor name="new" c:identifier="gst_trigger_control_source_new">
-        <doc xml:space="preserve">This returns a new, unbound #GstTriggerControlSource.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/controller/gsttriggercontrolsource.c"
+             line="185">This returns a new, unbound #GstTriggerControlSource.</doc>
+        <source-position filename="libs/gst/controller/gsttriggercontrolsource.h"
+                         line="81"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new, unbound #GstTriggerControlSource.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/controller/gsttriggercontrolsource.c"
+               line="190">a new, unbound #GstTriggerControlSource.</doc>
           <type name="Gst.ControlSource" c:type="GstControlSource*"/>
         </return-value>
       </constructor>
@@ -891,7 +1554,7 @@ All functions are MT-safe.</doc>
               c:type="GstTriggerControlSourcePrivate*"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -899,12 +1562,14 @@ All functions are MT-safe.</doc>
     <record name="TriggerControlSourceClass"
             c:type="GstTriggerControlSourceClass"
             glib:is-gtype-struct-for="TriggerControlSource">
+      <source-position filename="libs/gst/controller/gsttriggercontrolsource.h"
+                       line="73"/>
       <field name="parent_class">
         <type name="TimedValueControlSourceClass"
               c:type="GstTimedValueControlSourceClass"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -912,16 +1577,24 @@ All functions are MT-safe.</doc>
     <record name="TriggerControlSourcePrivate"
             c:type="GstTriggerControlSourcePrivate"
             disguised="1">
+      <source-position filename="libs/gst/controller/gsttriggercontrolsource.h"
+                       line="53"/>
     </record>
     <function name="timed_value_control_invalidate_cache"
               c:identifier="gst_timed_value_control_invalidate_cache">
-      <doc xml:space="preserve">Reset the controlled value cache.</doc>
+      <doc xml:space="preserve"
+           filename="libs/gst/controller/gsttimedvaluecontrolsource.c"
+           line="433">Reset the controlled value cache.</doc>
+      <source-position filename="libs/gst/controller/gsttimedvaluecontrolsource.h"
+                       line="148"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="self" transfer-ownership="none">
-          <doc xml:space="preserve">the #GstTimedValueControlSource</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/controller/gsttimedvaluecontrolsource.c"
+               line="435">the #GstTimedValueControlSource</doc>
           <type name="TimedValueControlSource"
                 c:type="GstTimedValueControlSource*"/>
         </parameter>
index 2356c34..56815b3 100644 (file)
@@ -18,25 +18,163 @@ and/or use gtk-doc annotations.  -->
              shared-library="libgstnet-1.0.so.0"
              c:identifier-prefixes="Gst"
              c:symbol-prefixes="gst">
+    <function-macro name="IS_NET_CLIENT_CLOCK"
+                    c:identifier="GST_IS_NET_CLIENT_CLOCK"
+                    introspectable="0">
+      <source-position filename="libs/gst/net/gstnetclientclock.h" line="41"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_NET_CLIENT_CLOCK_CLASS"
+                    c:identifier="GST_IS_NET_CLIENT_CLOCK_CLASS"
+                    introspectable="0">
+      <source-position filename="libs/gst/net/gstnetclientclock.h" line="43"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_NET_TIME_PROVIDER"
+                    c:identifier="GST_IS_NET_TIME_PROVIDER"
+                    introspectable="0">
+      <source-position filename="libs/gst/net/gstnettimeprovider.h" line="36"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_NET_TIME_PROVIDER_CLASS"
+                    c:identifier="GST_IS_NET_TIME_PROVIDER_CLASS"
+                    introspectable="0">
+      <source-position filename="libs/gst/net/gstnettimeprovider.h" line="38"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_NTP_CLOCK"
+                    c:identifier="GST_IS_NTP_CLOCK"
+                    introspectable="0">
+      <source-position filename="libs/gst/net/gstnetclientclock.h" line="83"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_NTP_CLOCK_CLASS"
+                    c:identifier="GST_IS_NTP_CLOCK_CLASS"
+                    introspectable="0">
+      <source-position filename="libs/gst/net/gstnetclientclock.h" line="85"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_PTP_CLOCK"
+                    c:identifier="GST_IS_PTP_CLOCK"
+                    introspectable="0">
+      <source-position filename="libs/gst/net/gstptpclock.h" line="35"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_PTP_CLOCK_CLASS"
+                    c:identifier="GST_IS_PTP_CLOCK_CLASS"
+                    introspectable="0">
+      <source-position filename="libs/gst/net/gstptpclock.h" line="37"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="NET_CLIENT_CLOCK"
+                    c:identifier="GST_NET_CLIENT_CLOCK"
+                    introspectable="0">
+      <source-position filename="libs/gst/net/gstnetclientclock.h" line="37"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="NET_CLIENT_CLOCK_CLASS"
+                    c:identifier="GST_NET_CLIENT_CLOCK_CLASS"
+                    introspectable="0">
+      <source-position filename="libs/gst/net/gstnetclientclock.h" line="39"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
     <constant name="NET_TIME_PACKET_SIZE"
               value="16"
               c:type="GST_NET_TIME_PACKET_SIZE">
-      <doc xml:space="preserve">The size of the packets sent between network clocks.</doc>
+      <doc xml:space="preserve"
+           filename="libs/gst/net/gstnettimepacket.h"
+           line="30">The size of the packets sent between network clocks.</doc>
+      <source-position filename="libs/gst/net/gstnettimepacket.h" line="35"/>
       <type name="gint" c:type="gint"/>
     </constant>
+    <function-macro name="NET_TIME_PROVIDER"
+                    c:identifier="GST_NET_TIME_PROVIDER"
+                    introspectable="0">
+      <source-position filename="libs/gst/net/gstnettimeprovider.h" line="32"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="NET_TIME_PROVIDER_CLASS"
+                    c:identifier="GST_NET_TIME_PROVIDER_CLASS"
+                    introspectable="0">
+      <source-position filename="libs/gst/net/gstnettimeprovider.h" line="34"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="NTP_CLOCK"
+                    c:identifier="GST_NTP_CLOCK"
+                    introspectable="0">
+      <source-position filename="libs/gst/net/gstnetclientclock.h" line="79"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="NTP_CLOCK_CLASS"
+                    c:identifier="GST_NTP_CLOCK_CLASS"
+                    introspectable="0">
+      <source-position filename="libs/gst/net/gstnetclientclock.h" line="81"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
     <record name="NetAddressMeta" c:type="GstNetAddressMeta">
-      <doc xml:space="preserve">#GstNetAddressMeta can be used to store a network address (a #GSocketAddress)
+      <doc xml:space="preserve"
+           filename="libs/gst/net/gstnetaddressmeta.c"
+           line="20">#GstNetAddressMeta can be used to store a network address (a #GSocketAddress)
 in a #GstBuffer so that it network elements can track the to and from address
 of the buffer.</doc>
+      <source-position filename="libs/gst/net/gstnetaddressmeta.h" line="42"/>
       <field name="meta" writable="1">
-        <doc xml:space="preserve">the parent type</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/net/gstnetaddressmeta.h"
+             line="33">the parent type</doc>
         <type name="Gst.Meta" c:type="GstMeta"/>
       </field>
       <field name="addr" writable="1">
-        <doc xml:space="preserve">a #GSocketAddress stored as metadata</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/net/gstnetaddressmeta.h"
+             line="34">a #GSocketAddress stored as metadata</doc>
         <type name="Gio.SocketAddress" c:type="GSocketAddress*"/>
       </field>
       <function name="get_info" c:identifier="gst_net_address_meta_get_info">
+        <source-position filename="libs/gst/net/gstnetaddressmeta.h"
+                         line="51"/>
         <return-value transfer-ownership="none">
           <type name="Gst.MetaInfo" c:type="const GstMetaInfo*"/>
         </return-value>
@@ -49,7 +187,9 @@ of the buffer.</doc>
            glib:type-name="GstNetClientClock"
            glib:get-type="gst_net_client_clock_get_type"
            glib:type-struct="NetClientClockClass">
-      <doc xml:space="preserve">#GstNetClientClock implements a custom #GstClock that synchronizes its time
+      <doc xml:space="preserve"
+           filename="libs/gst/net/gstnetclientclock.c"
+           line="26">#GstNetClientClock implements a custom #GstClock that synchronizes its time
 to a remote time provider such as #GstNetTimeProvider. #GstNtpClock
 implements a #GstClock that synchronizes its time to a remote NTPv4 server.
 
@@ -71,30 +211,45 @@ gst_pipeline_use_clock().
 If you set a #GstBus on the clock via the "bus" object property, it will
 send @GST_MESSAGE_ELEMENT messages with an attached #GstStructure containing
 statistics about clock accuracy and network traffic.</doc>
+      <source-position filename="libs/gst/net/gstnetclientclock.h" line="70"/>
       <constructor name="new" c:identifier="gst_net_client_clock_new">
-        <doc xml:space="preserve">Create a new #GstNetClientInternalClock that will report the time
+        <doc xml:space="preserve"
+             filename="libs/gst/net/gstnetclientclock.c"
+             line="1411">Create a new #GstNetClientClock that will report the time
 provided by the #GstNetTimeProvider on @remote_address and
 @remote_port.</doc>
+        <source-position filename="libs/gst/net/gstnetclientclock.h"
+                         line="76"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new #GstClock that receives a time from the remote
+          <doc xml:space="preserve"
+               filename="libs/gst/net/gstnetclientclock.c"
+               line="1422">a new #GstClock that receives a time from the remote
 clock.</doc>
           <type name="Gst.Clock" c:type="GstClock*"/>
         </return-value>
         <parameters>
           <parameter name="name" transfer-ownership="none">
-            <doc xml:space="preserve">a name for the clock</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/net/gstnetclientclock.c"
+                 line="1413">a name for the clock</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="remote_address" transfer-ownership="none">
-            <doc xml:space="preserve">the address or hostname of the remote clock provider</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/net/gstnetclientclock.c"
+                 line="1414">the address or hostname of the remote clock provider</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="remote_port" transfer-ownership="none">
-            <doc xml:space="preserve">the port of the remote clock provider</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/net/gstnetclientclock.c"
+                 line="1415">the port of the remote clock provider</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="base_time" transfer-ownership="none">
-            <doc xml:space="preserve">initial time of the clock</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/net/gstnetclientclock.c"
+                 line="1416">initial time of the clock</doc>
             <type name="Gst.ClockTime" c:type="GstClockTime"/>
           </parameter>
         </parameters>
@@ -141,7 +296,7 @@ clock.</doc>
         <type name="NetClientClockPrivate" c:type="GstNetClientClockPrivate*"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -149,11 +304,12 @@ clock.</doc>
     <record name="NetClientClockClass"
             c:type="GstNetClientClockClass"
             glib:is-gtype-struct-for="NetClientClock">
+      <source-position filename="libs/gst/net/gstnetclientclock.h" line="70"/>
       <field name="parent_class">
         <type name="Gst.SystemClockClass" c:type="GstSystemClockClass"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -161,23 +317,34 @@ clock.</doc>
     <record name="NetClientClockPrivate"
             c:type="GstNetClientClockPrivate"
             disguised="1">
+      <source-position filename="libs/gst/net/gstnetclientclock.h" line="49"/>
     </record>
     <record name="NetControlMessageMeta" c:type="GstNetControlMessageMeta">
-      <doc xml:space="preserve">#GstNetControlMessageMeta can be used to store control messages (ancillary
+      <doc xml:space="preserve"
+           filename="libs/gst/net/gstnetcontrolmessagemeta.c"
+           line="20">#GstNetControlMessageMeta can be used to store control messages (ancillary
 data) which was received with or is to be sent alongside the buffer data.
 When used with socket sinks and sources which understand this meta it allows
 sending and receiving ancillary data such as unix credentials (See
 #GUnixCredentialsMessage) and Unix file descriptions (See #GUnixFDMessage).</doc>
+      <source-position filename="libs/gst/net/gstnetcontrolmessagemeta.h"
+                       line="43"/>
       <field name="meta" writable="1">
-        <doc xml:space="preserve">the parent type</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/net/gstnetcontrolmessagemeta.h"
+             line="33">the parent type</doc>
         <type name="Gst.Meta" c:type="GstMeta"/>
       </field>
       <field name="message" writable="1">
-        <doc xml:space="preserve">a #GSocketControlMessage stored as metadata</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/net/gstnetcontrolmessagemeta.h"
+             line="34">a #GSocketControlMessage stored as metadata</doc>
         <type name="Gio.SocketControlMessage" c:type="GSocketControlMessage*"/>
       </field>
       <function name="get_info"
                 c:identifier="gst_net_control_message_meta_get_info">
+        <source-position filename="libs/gst/net/gstnetcontrolmessagemeta.h"
+                         line="57"/>
         <return-value transfer-ownership="none">
           <type name="Gst.MetaInfo" c:type="const GstMetaInfo*"/>
         </return-value>
@@ -188,18 +355,27 @@ sending and receiving ancillary data such as unix credentials (See
             glib:type-name="GstNetTimePacket"
             glib:get-type="gst_net_time_packet_get_type"
             c:symbol-prefix="net_time_packet">
-      <doc xml:space="preserve">Various functions for receiving, sending an serializing #GstNetTimePacket
+      <doc xml:space="preserve"
+           filename="libs/gst/net/gstnettimepacket.c"
+           line="21">Various functions for receiving, sending an serializing #GstNetTimePacket
 structures.</doc>
+      <source-position filename="libs/gst/net/gstnettimepacket.h" line="49"/>
       <field name="local_time" writable="1">
-        <doc xml:space="preserve">the local time when this packet was sent</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/net/gstnettimepacket.h"
+             line="41">the local time when this packet was sent</doc>
         <type name="Gst.ClockTime" c:type="GstClockTime"/>
       </field>
       <field name="remote_time" writable="1">
-        <doc xml:space="preserve">the remote time observation</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/net/gstnettimepacket.h"
+             line="42">the remote time observation</doc>
         <type name="Gst.ClockTime" c:type="GstClockTime"/>
       </field>
       <constructor name="new" c:identifier="gst_net_time_packet_new">
-        <doc xml:space="preserve">Creates a new #GstNetTimePacket from a buffer received over the network. The
+        <doc xml:space="preserve"
+             filename="libs/gst/net/gstnettimepacket.c"
+             line="48">Creates a new #GstNetTimePacket from a buffer received over the network. The
 caller is responsible for ensuring that @buffer is at least
 #GST_NET_TIME_PACKET_SIZE bytes long.
 
@@ -207,13 +383,18 @@ If @buffer is %NULL, the local and remote times will be set to
 #GST_CLOCK_TIME_NONE.
 
 MT safe. Caller owns return value (gst_net_time_packet_free to free).</doc>
+        <source-position filename="libs/gst/net/gstnettimepacket.h" line="55"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">The new #GstNetTimePacket.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/net/gstnettimepacket.c"
+               line="61">The new #GstNetTimePacket.</doc>
           <type name="NetTimePacket" c:type="GstNetTimePacket*"/>
         </return-value>
         <parameters>
           <parameter name="buffer" transfer-ownership="none">
-            <doc xml:space="preserve">a buffer from which to construct the packet, or NULL</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/net/gstnettimepacket.c"
+                 line="50">a buffer from which to construct the packet, or NULL</doc>
             <array zero-terminated="0" c:type="const guint8*">
               <type name="guint8" c:type="guint8"/>
             </array>
@@ -221,67 +402,97 @@ MT safe. Caller owns return value (gst_net_time_packet_free to free).</doc>
         </parameters>
       </constructor>
       <method name="copy" c:identifier="gst_net_time_packet_copy">
-        <doc xml:space="preserve">Make a copy of @packet.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/net/gstnettimepacket.c"
+             line="95">Make a copy of @packet.</doc>
+        <source-position filename="libs/gst/net/gstnettimepacket.h" line="58"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a copy of @packet, free with gst_net_time_packet_free().</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/net/gstnettimepacket.c"
+               line="101">a copy of @packet, free with gst_net_time_packet_free().</doc>
           <type name="NetTimePacket" c:type="GstNetTimePacket*"/>
         </return-value>
         <parameters>
           <instance-parameter name="packet" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstNetTimePacket</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/net/gstnettimepacket.c"
+                 line="97">the #GstNetTimePacket</doc>
             <type name="NetTimePacket" c:type="const GstNetTimePacket*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="free" c:identifier="gst_net_time_packet_free">
-        <doc xml:space="preserve">Free @packet.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/net/gstnettimepacket.c"
+             line="83">Free @packet.</doc>
+        <source-position filename="libs/gst/net/gstnettimepacket.h" line="61"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="packet" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstNetTimePacket</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/net/gstnettimepacket.c"
+                 line="85">the #GstNetTimePacket</doc>
             <type name="NetTimePacket" c:type="GstNetTimePacket*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="send" c:identifier="gst_net_time_packet_send" throws="1">
-        <doc xml:space="preserve">Sends a #GstNetTimePacket over a socket.
+        <doc xml:space="preserve"
+             filename="libs/gst/net/gstnettimepacket.c"
+             line="201">Sends a #GstNetTimePacket over a socket.
 
 MT safe.</doc>
+        <source-position filename="libs/gst/net/gstnettimepacket.h" line="71"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">TRUE if successful, FALSE in case an error occurred.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/net/gstnettimepacket.c"
+               line="212">TRUE if successful, FALSE in case an error occurred.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="packet" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstNetTimePacket to send</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/net/gstnettimepacket.c"
+                 line="203">the #GstNetTimePacket to send</doc>
             <type name="NetTimePacket" c:type="const GstNetTimePacket*"/>
           </instance-parameter>
           <parameter name="socket" transfer-ownership="none">
-            <doc xml:space="preserve">socket to send the time packet on</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/net/gstnettimepacket.c"
+                 line="204">socket to send the time packet on</doc>
             <type name="Gio.Socket" c:type="GSocket*"/>
           </parameter>
           <parameter name="dest_address" transfer-ownership="none">
-            <doc xml:space="preserve">address to send the time packet to</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/net/gstnettimepacket.c"
+                 line="205">address to send the time packet to</doc>
             <type name="Gio.SocketAddress" c:type="GSocketAddress*"/>
           </parameter>
         </parameters>
       </method>
       <method name="serialize" c:identifier="gst_net_time_packet_serialize">
-        <doc xml:space="preserve">Serialized a #GstNetTimePacket into a newly-allocated sequence of
+        <doc xml:space="preserve"
+             filename="libs/gst/net/gstnettimepacket.c"
+             line="115">Serialized a #GstNetTimePacket into a newly-allocated sequence of
 #GST_NET_TIME_PACKET_SIZE bytes, in network byte order. The value returned is
 suitable for passing to write(2) or sendto(2) for communication over the
 network.
 
 MT safe. Caller owns return value (g_free to free).</doc>
+        <source-position filename="libs/gst/net/gstnettimepacket.h" line="64"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">A newly allocated sequence of #GST_NET_TIME_PACKET_SIZE bytes.</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/net/gstnettimepacket.c"
+               line="126">A newly allocated sequence of #GST_NET_TIME_PACKET_SIZE bytes.</doc>
           <type name="guint8" c:type="guint8*"/>
         </return-value>
         <parameters>
           <instance-parameter name="packet" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstNetTimePacket</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/net/gstnettimepacket.c"
+                 line="117">the #GstNetTimePacket</doc>
             <type name="NetTimePacket" c:type="const GstNetTimePacket*"/>
           </instance-parameter>
         </parameters>
@@ -289,23 +500,32 @@ MT safe. Caller owns return value (g_free to free).</doc>
       <function name="receive"
                 c:identifier="gst_net_time_packet_receive"
                 throws="1">
-        <doc xml:space="preserve">Receives a #GstNetTimePacket over a socket. Handles interrupted system
+        <doc xml:space="preserve"
+             filename="libs/gst/net/gstnettimepacket.c"
+             line="143">Receives a #GstNetTimePacket over a socket. Handles interrupted system
 calls, but otherwise returns NULL on error.</doc>
+        <source-position filename="libs/gst/net/gstnettimepacket.h" line="67"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new #GstNetTimePacket, or NULL on error. Free
+          <doc xml:space="preserve"
+               filename="libs/gst/net/gstnettimepacket.c"
+               line="152">a new #GstNetTimePacket, or NULL on error. Free
    with gst_net_time_packet_free() when done.</doc>
           <type name="NetTimePacket" c:type="GstNetTimePacket*"/>
         </return-value>
         <parameters>
           <parameter name="socket" transfer-ownership="none">
-            <doc xml:space="preserve">socket to receive the time packet on</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/net/gstnettimepacket.c"
+                 line="145">socket to receive the time packet on</doc>
             <type name="Gio.Socket" c:type="GSocket*"/>
           </parameter>
           <parameter name="src_address"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">address of variable to return sender address</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/net/gstnettimepacket.c"
+                 line="146">address of variable to return sender address</doc>
             <type name="Gio.SocketAddress" c:type="GSocketAddress**"/>
           </parameter>
         </parameters>
@@ -318,7 +538,9 @@ calls, but otherwise returns NULL on error.</doc>
            glib:type-name="GstNetTimeProvider"
            glib:get-type="gst_net_time_provider_get_type"
            glib:type-struct="NetTimeProviderClass">
-      <doc xml:space="preserve">This object exposes the time of a #GstClock on the network.
+      <doc xml:space="preserve"
+           filename="libs/gst/net/gstnettimeprovider.c"
+           line="19">This object exposes the time of a #GstClock on the network.
 
 A #GstNetTimeProvider is created with gst_net_time_provider_new() which
 takes a #GstClock, an address and a port number as arguments.
@@ -327,28 +549,41 @@ After creating the object, a client clock such as #GstNetClientClock can
 query the exposed clock over the network for its values.
 
 The #GstNetTimeProvider typically wraps the clock used by a #GstPipeline.</doc>
+      <source-position filename="libs/gst/net/gstnettimeprovider.h" line="64"/>
       <implements name="Gio.Initable"/>
       <constructor name="new" c:identifier="gst_net_time_provider_new">
-        <doc xml:space="preserve">Allows network clients to get the current time of @clock.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/net/gstnettimeprovider.c"
+             line="450">Allows network clients to get the current time of @clock.</doc>
+        <source-position filename="libs/gst/net/gstnettimeprovider.h"
+                         line="70"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the new #GstNetTimeProvider, or NULL on error</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/net/gstnettimeprovider.c"
+               line="459">the new #GstNetTimeProvider, or NULL on error</doc>
           <type name="NetTimeProvider" c:type="GstNetTimeProvider*"/>
         </return-value>
         <parameters>
           <parameter name="clock" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstClock to export over the network</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/net/gstnettimeprovider.c"
+                 line="452">a #GstClock to export over the network</doc>
             <type name="Gst.Clock" c:type="GstClock*"/>
           </parameter>
           <parameter name="address"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">an address to bind on as a dotted quad
+            <doc xml:space="preserve"
+                 filename="libs/gst/net/gstnettimeprovider.c"
+                 line="453">an address to bind on as a dotted quad
           (xxx.xxx.xxx.xxx), IPv6 address, or NULL to bind to all addresses</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="port" transfer-ownership="none">
-            <doc xml:space="preserve">a port to bind on, or 0 to let the kernel choose</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/net/gstnettimeprovider.c"
+                 line="455">a port to bind on, or 0 to let the kernel choose</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
         </parameters>
@@ -385,7 +620,7 @@ The #GstNetTimeProvider typically wraps the clock used by a #GstPipeline.</doc>
               c:type="GstNetTimeProviderPrivate*"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -393,11 +628,12 @@ The #GstNetTimeProvider typically wraps the clock used by a #GstPipeline.</doc>
     <record name="NetTimeProviderClass"
             c:type="GstNetTimeProviderClass"
             glib:is-gtype-struct-for="NetTimeProvider">
+      <source-position filename="libs/gst/net/gstnettimeprovider.h" line="64"/>
       <field name="parent_class">
         <type name="Gst.ObjectClass" c:type="GstObjectClass"/>
       </field>
       <field name="_gst_reserved">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -405,6 +641,7 @@ The #GstNetTimeProvider typically wraps the clock used by a #GstPipeline.</doc>
     <record name="NetTimeProviderPrivate"
             c:type="GstNetTimeProviderPrivate"
             disguised="1">
+      <source-position filename="libs/gst/net/gstnettimeprovider.h" line="44"/>
     </record>
     <class name="NtpClock"
            c:symbol-prefix="ntp_clock"
@@ -413,29 +650,44 @@ The #GstNetTimeProvider typically wraps the clock used by a #GstPipeline.</doc>
            glib:type-name="GstNtpClock"
            glib:get-type="gst_ntp_clock_get_type"
            glib:type-struct="NtpClockClass">
+      <source-position filename="libs/gst/net/gstnetclientclock.h" line="91"/>
       <constructor name="new" c:identifier="gst_ntp_clock_new" version="1.6">
-        <doc xml:space="preserve">Create a new #GstNtpClock that will report the time provided by
+        <doc xml:space="preserve"
+             filename="libs/gst/net/gstnetclientclock.c"
+             line="1459">Create a new #GstNtpClock that will report the time provided by
 the NTPv4 server on @remote_address and @remote_port.</doc>
+        <source-position filename="libs/gst/net/gstnetclientclock.h"
+                         line="97"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new #GstClock that receives a time from the remote
+          <doc xml:space="preserve"
+               filename="libs/gst/net/gstnetclientclock.c"
+               line="1469">a new #GstClock that receives a time from the remote
 clock.</doc>
           <type name="Gst.Clock" c:type="GstClock*"/>
         </return-value>
         <parameters>
           <parameter name="name" transfer-ownership="none">
-            <doc xml:space="preserve">a name for the clock</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/net/gstnetclientclock.c"
+                 line="1461">a name for the clock</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="remote_address" transfer-ownership="none">
-            <doc xml:space="preserve">the address or hostname of the remote clock provider</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/net/gstnetclientclock.c"
+                 line="1462">the address or hostname of the remote clock provider</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="remote_port" transfer-ownership="none">
-            <doc xml:space="preserve">the port of the remote clock provider</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/net/gstnetclientclock.c"
+                 line="1463">the port of the remote clock provider</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="base_time" transfer-ownership="none">
-            <doc xml:space="preserve">initial time of the clock</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/net/gstnetclientclock.c"
+                 line="1464">initial time of the clock</doc>
             <type name="Gst.ClockTime" c:type="GstClockTime"/>
           </parameter>
         </parameters>
@@ -447,7 +699,7 @@ clock.</doc>
         <type name="NetClientClockPrivate" c:type="GstNetClientClockPrivate*"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -455,50 +707,79 @@ clock.</doc>
     <record name="NtpClockClass"
             c:type="GstNtpClockClass"
             glib:is-gtype-struct-for="NtpClock">
+      <source-position filename="libs/gst/net/gstnetclientclock.h" line="91"/>
       <field name="parent_class">
         <type name="Gst.SystemClockClass" c:type="GstSystemClockClass"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
     </record>
+    <function-macro name="PTP_CLOCK"
+                    c:identifier="GST_PTP_CLOCK"
+                    introspectable="0">
+      <source-position filename="libs/gst/net/gstptpclock.h" line="31"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="PTP_CLOCK_CLASS"
+                    c:identifier="GST_PTP_CLOCK_CLASS"
+                    introspectable="0">
+      <source-position filename="libs/gst/net/gstptpclock.h" line="33"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
     <constant name="PTP_CLOCK_ID_NONE"
               value="18446744073709551615"
               c:type="GST_PTP_CLOCK_ID_NONE">
-      <doc xml:space="preserve">PTP clock identification that can be passed to gst_ptp_init() to
+      <doc xml:space="preserve"
+           filename="libs/gst/net/gstptpclock.h"
+           line="72">PTP clock identification that can be passed to gst_ptp_init() to
 automatically select one based on the MAC address of interfaces</doc>
+      <source-position filename="libs/gst/net/gstptpclock.h" line="76"/>
       <type name="guint64" c:type="guint64"/>
     </constant>
     <constant name="PTP_STATISTICS_BEST_MASTER_CLOCK_SELECTED"
               value="GstPtpStatisticsBestMasterClockSelected"
               c:type="GST_PTP_STATISTICS_BEST_MASTER_CLOCK_SELECTED">
+      <source-position filename="libs/gst/net/gstptpclock.h" line="94"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="PTP_STATISTICS_NEW_DOMAIN_FOUND"
               value="GstPtpStatisticsNewDomainFound"
               c:type="GST_PTP_STATISTICS_NEW_DOMAIN_FOUND">
+      <source-position filename="libs/gst/net/gstptpclock.h" line="93"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="PTP_STATISTICS_PATH_DELAY_MEASURED"
               value="GstPtpStatisticsPathDelayMeasured"
               c:type="GST_PTP_STATISTICS_PATH_DELAY_MEASURED">
+      <source-position filename="libs/gst/net/gstptpclock.h" line="95"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="PTP_STATISTICS_TIME_UPDATED"
               value="GstPtpStatisticsTimeUpdated"
               c:type="GST_PTP_STATISTICS_TIME_UPDATED">
+      <source-position filename="libs/gst/net/gstptpclock.h" line="96"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <class name="PtpClock"
            c:symbol-prefix="ptp_clock"
            c:type="GstPtpClock"
+           version="1.6"
            parent="Gst.SystemClock"
            glib:type-name="GstPtpClock"
            glib:get-type="gst_ptp_clock_get_type"
            glib:type-struct="PtpClockClass">
-      <doc xml:space="preserve">GstPtpClock implements a PTP (IEEE1588:2008) ordinary clock in slave-only
+      <doc xml:space="preserve"
+           filename="libs/gst/net/gstptpclock.c"
+           line="20">GstPtpClock implements a PTP (IEEE1588:2008) ordinary clock in slave-only
 mode, that allows a GStreamer pipeline to synchronize to a PTP network
 clock in some specific domain.
 
@@ -519,8 +800,11 @@ To gather statistics about the PTP clock synchronization,
 gst_ptp_statistics_callback_add() can be used. This gives the application
 the possibility to collect all kinds of statistics from the clock
 synchronization.</doc>
+      <source-position filename="libs/gst/net/gstptpclock.h" line="70"/>
       <constructor name="new" c:identifier="gst_ptp_clock_new" version="1.6">
-        <doc xml:space="preserve">Creates a new PTP clock instance that exports the PTP time of the master
+        <doc xml:space="preserve"
+             filename="libs/gst/net/gstptpclock.c"
+             line="2536">Creates a new PTP clock instance that exports the PTP time of the master
 clock in @domain. This clock can be slaved to other clocks as needed.
 
 If gst_ptp_init() was not called before, this will call gst_ptp_init() with
@@ -531,17 +815,24 @@ times from the PTP master clock on the network. Once this happens the
 GstPtpClock::internal-clock property will become non-NULL. You can
 check this with gst_clock_wait_for_sync(), the GstClock::synced signal and
 gst_clock_is_synced().</doc>
+        <source-position filename="libs/gst/net/gstptpclock.h" line="153"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">A new #GstClock</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/net/gstptpclock.c"
+               line="2553">A new #GstClock</doc>
           <type name="Gst.Clock" c:type="GstClock*"/>
         </return-value>
         <parameters>
           <parameter name="name" transfer-ownership="none">
-            <doc xml:space="preserve">Name of the clock</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/net/gstptpclock.c"
+                 line="2538">Name of the clock</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="domain" transfer-ownership="none">
-            <doc xml:space="preserve">PTP domain</doc>
+            <doc xml:space="preserve"
+                 filename="libs/gst/net/gstptpclock.c"
+                 line="2539">PTP domain</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
@@ -568,7 +859,7 @@ gst_clock_is_synced().</doc>
         <type name="PtpClockPrivate" c:type="GstPtpClockPrivate*"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -576,21 +867,29 @@ gst_clock_is_synced().</doc>
     <record name="PtpClockClass"
             c:type="GstPtpClockClass"
             glib:is-gtype-struct-for="PtpClock">
-      <doc xml:space="preserve">Opaque #GstPtpClockClass structure.</doc>
+      <doc xml:space="preserve"
+           filename="libs/gst/net/gstptpclock.h"
+           line="59">Opaque #GstPtpClockClass structure.</doc>
+      <source-position filename="libs/gst/net/gstptpclock.h" line="70"/>
       <field name="parent_class">
-        <doc xml:space="preserve">parented to #GstSystemClockClass</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/net/gstptpclock.h"
+             line="61">parented to #GstSystemClockClass</doc>
         <type name="Gst.SystemClockClass" c:type="GstSystemClockClass"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
     </record>
     <record name="PtpClockPrivate" c:type="GstPtpClockPrivate" disguised="1">
+      <source-position filename="libs/gst/net/gstptpclock.h" line="43"/>
     </record>
     <callback name="PtpStatisticsCallback" c:type="GstPtpStatisticsCallback">
-      <doc xml:space="preserve">The statistics can be the following structures:
+      <doc xml:space="preserve"
+           filename="libs/gst/net/gstptpclock.h"
+           line="99">The statistics can be the following structures:
 
 GST_PTP_STATISTICS_NEW_DOMAIN_FOUND:
 "domain"                G_TYPE_UINT          The domain identifier of the domain
@@ -626,16 +925,21 @@ GST_PTP_STATISTICS_TIME_UPDATED:
 "rate"                  G_TYPE_DOUBLE        Internal/external rate
 
 If %FALSE is returned, the callback is removed and never called again.</doc>
+      <source-position filename="libs/gst/net/gstptpclock.h" line="143"/>
       <return-value transfer-ownership="none">
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="domain" transfer-ownership="none">
-          <doc xml:space="preserve">PTP domain identifier</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/net/gstptpclock.h"
+               line="101">PTP domain identifier</doc>
           <type name="guint8" c:type="guint8"/>
         </parameter>
         <parameter name="stats" transfer-ownership="none">
-          <doc xml:space="preserve">New statistics</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/net/gstptpclock.h"
+               line="102">New statistics</doc>
           <type name="Gst.Structure" c:type="const GstStructure*"/>
         </parameter>
         <parameter name="user_data"
@@ -643,43 +947,64 @@ If %FALSE is returned, the callback is removed and never called again.</doc>
                    nullable="1"
                    allow-none="1"
                    closure="2">
-          <doc xml:space="preserve">Data passed to gst_ptp_statistics_callback_add()</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/net/gstptpclock.h"
+               line="103">Data passed to gst_ptp_statistics_callback_add()</doc>
           <type name="gpointer" c:type="gpointer"/>
         </parameter>
       </parameters>
     </callback>
     <function name="buffer_add_net_address_meta"
               c:identifier="gst_buffer_add_net_address_meta">
-      <doc xml:space="preserve">Attaches @addr as metadata in a #GstNetAddressMeta to @buffer.</doc>
+      <doc xml:space="preserve"
+           filename="libs/gst/net/gstnetaddressmeta.c"
+           line="101">Attaches @addr as metadata in a #GstNetAddressMeta to @buffer.</doc>
+      <source-position filename="libs/gst/net/gstnetaddressmeta.h" line="55"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">a #GstNetAddressMeta connected to @buffer</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/net/gstnetaddressmeta.c"
+             line="108">a #GstNetAddressMeta connected to @buffer</doc>
         <type name="NetAddressMeta" c:type="GstNetAddressMeta*"/>
       </return-value>
       <parameters>
         <parameter name="buffer" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstBuffer</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/net/gstnetaddressmeta.c"
+               line="103">a #GstBuffer</doc>
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </parameter>
         <parameter name="addr" transfer-ownership="none">
-          <doc xml:space="preserve">a @GSocketAddress to connect to @buffer</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/net/gstnetaddressmeta.c"
+               line="104">a @GSocketAddress to connect to @buffer</doc>
           <type name="Gio.SocketAddress" c:type="GSocketAddress*"/>
         </parameter>
       </parameters>
     </function>
     <function name="buffer_add_net_control_message_meta"
               c:identifier="gst_buffer_add_net_control_message_meta">
-      <doc xml:space="preserve">Attaches @message as metadata in a #GstNetControlMessageMeta to @buffer.</doc>
+      <doc xml:space="preserve"
+           filename="libs/gst/net/gstnetcontrolmessagemeta.c"
+           line="107">Attaches @message as metadata in a #GstNetControlMessageMeta to @buffer.</doc>
+      <source-position filename="libs/gst/net/gstnetcontrolmessagemeta.h"
+                       line="63"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">a #GstNetControlMessageMeta connected to @buffer</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/net/gstnetcontrolmessagemeta.c"
+             line="114">a #GstNetControlMessageMeta connected to @buffer</doc>
         <type name="NetControlMessageMeta" c:type="GstNetControlMessageMeta*"/>
       </return-value>
       <parameters>
         <parameter name="buffer" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstBuffer</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/net/gstnetcontrolmessagemeta.c"
+               line="109">a #GstBuffer</doc>
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </parameter>
         <parameter name="message" transfer-ownership="none">
-          <doc xml:space="preserve">a @GSocketControlMessage to attach to @buffer</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/net/gstnetcontrolmessagemeta.c"
+               line="110">a @GSocketControlMessage to attach to @buffer</doc>
           <type name="Gio.SocketControlMessage"
                 c:type="GSocketControlMessage*"/>
         </parameter>
@@ -687,21 +1012,39 @@ If %FALSE is returned, the callback is removed and never called again.</doc>
     </function>
     <function name="buffer_get_net_address_meta"
               c:identifier="gst_buffer_get_net_address_meta">
-      <doc xml:space="preserve">Find the #GstNetAddressMeta on @buffer.</doc>
+      <doc xml:space="preserve"
+           filename="libs/gst/net/gstnetaddressmeta.c"
+           line="127">Find the #GstNetAddressMeta on @buffer.</doc>
+      <source-position filename="libs/gst/net/gstnetaddressmeta.h" line="58"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">the #GstNetAddressMeta or %NULL when there
+        <doc xml:space="preserve"
+             filename="libs/gst/net/gstnetaddressmeta.c"
+             line="133">the #GstNetAddressMeta or %NULL when there
 is no such metadata on @buffer.</doc>
         <type name="NetAddressMeta" c:type="GstNetAddressMeta*"/>
       </return-value>
       <parameters>
         <parameter name="buffer" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstBuffer</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/net/gstnetaddressmeta.c"
+               line="129">a #GstBuffer</doc>
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </parameter>
       </parameters>
     </function>
+    <function-macro name="buffer_get_net_control_message_meta"
+                    c:identifier="gst_buffer_get_net_control_message_meta"
+                    introspectable="0">
+      <source-position filename="libs/gst/net/gstnetcontrolmessagemeta.h"
+                       line="50"/>
+      <parameters>
+        <parameter name="b">
+        </parameter>
+      </parameters>
+    </function-macro>
     <function name="net_address_meta_api_get_type"
               c:identifier="gst_net_address_meta_api_get_type">
+      <source-position filename="libs/gst/net/gstnetaddressmeta.h" line="45"/>
       <return-value transfer-ownership="none">
         <type name="GType" c:type="GType"/>
       </return-value>
@@ -709,12 +1052,15 @@ is no such metadata on @buffer.</doc>
     <function name="net_address_meta_get_info"
               c:identifier="gst_net_address_meta_get_info"
               moved-to="NetAddressMeta.get_info">
+      <source-position filename="libs/gst/net/gstnetaddressmeta.h" line="51"/>
       <return-value transfer-ownership="none">
         <type name="Gst.MetaInfo" c:type="const GstMetaInfo*"/>
       </return-value>
     </function>
     <function name="net_control_message_meta_api_get_type"
               c:identifier="gst_net_control_message_meta_api_get_type">
+      <source-position filename="libs/gst/net/gstnetcontrolmessagemeta.h"
+                       line="46"/>
       <return-value transfer-ownership="none">
         <type name="GType" c:type="GType"/>
       </return-value>
@@ -722,6 +1068,8 @@ is no such metadata on @buffer.</doc>
     <function name="net_control_message_meta_get_info"
               c:identifier="gst_net_control_message_meta_get_info"
               moved-to="NetControlMessageMeta.get_info">
+      <source-position filename="libs/gst/net/gstnetcontrolmessagemeta.h"
+                       line="57"/>
       <return-value transfer-ownership="none">
         <type name="Gst.MetaInfo" c:type="const GstMetaInfo*"/>
       </return-value>
@@ -730,37 +1078,79 @@ is no such metadata on @buffer.</doc>
               c:identifier="gst_net_time_packet_receive"
               moved-to="NetTimePacket.receive"
               throws="1">
-      <doc xml:space="preserve">Receives a #GstNetTimePacket over a socket. Handles interrupted system
+      <doc xml:space="preserve"
+           filename="libs/gst/net/gstnettimepacket.c"
+           line="143">Receives a #GstNetTimePacket over a socket. Handles interrupted system
 calls, but otherwise returns NULL on error.</doc>
+      <source-position filename="libs/gst/net/gstnettimepacket.h" line="67"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">a new #GstNetTimePacket, or NULL on error. Free
+        <doc xml:space="preserve"
+             filename="libs/gst/net/gstnettimepacket.c"
+             line="152">a new #GstNetTimePacket, or NULL on error. Free
    with gst_net_time_packet_free() when done.</doc>
         <type name="NetTimePacket" c:type="GstNetTimePacket*"/>
       </return-value>
       <parameters>
         <parameter name="socket" transfer-ownership="none">
-          <doc xml:space="preserve">socket to receive the time packet on</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/net/gstnettimepacket.c"
+               line="145">socket to receive the time packet on</doc>
           <type name="Gio.Socket" c:type="GSocket*"/>
         </parameter>
         <parameter name="src_address"
                    direction="out"
                    caller-allocates="0"
                    transfer-ownership="full">
-          <doc xml:space="preserve">address of variable to return sender address</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/net/gstnettimepacket.c"
+               line="146">address of variable to return sender address</doc>
           <type name="Gio.SocketAddress" c:type="GSocketAddress**"/>
         </parameter>
       </parameters>
     </function>
+    <function name="net_utils_set_socket_tos"
+              c:identifier="gst_net_utils_set_socket_tos"
+              version="1.18">
+      <doc xml:space="preserve"
+           filename="libs/gst/net/gstnetutils.c"
+           line="48">Configures IP_TOS value of socket, i.e. sets QoS DSCP.</doc>
+      <source-position filename="libs/gst/net/gstnetutils.h" line="32"/>
+      <return-value transfer-ownership="none">
+        <doc xml:space="preserve"
+             filename="libs/gst/net/gstnetutils.c"
+             line="55">TRUE if successful, FALSE in case an error occurred.</doc>
+        <type name="gboolean" c:type="gboolean"/>
+      </return-value>
+      <parameters>
+        <parameter name="socket" transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="libs/gst/net/gstnetutils.c"
+               line="50">Socket to configure</doc>
+          <type name="Gio.Socket" c:type="GSocket*"/>
+        </parameter>
+        <parameter name="qos_dscp" transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="libs/gst/net/gstnetutils.c"
+               line="51">QoS DSCP value</doc>
+          <type name="gint" c:type="gint"/>
+        </parameter>
+      </parameters>
+    </function>
     <function name="ptp_deinit" c:identifier="gst_ptp_deinit" version="1.6">
-      <doc xml:space="preserve">Deinitialize the GStreamer PTP subsystem and stop the PTP clock. If there
+      <doc xml:space="preserve"
+           filename="libs/gst/net/gstptpclock.c"
+           line="2225">Deinitialize the GStreamer PTP subsystem and stop the PTP clock. If there
 are any remaining GstPtpClock instances, they won't be further synchronized
 to the PTP network clock.</doc>
+      <source-position filename="libs/gst/net/gstptpclock.h" line="92"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
     </function>
     <function name="ptp_init" c:identifier="gst_ptp_init" version="1.6">
-      <doc xml:space="preserve">Initialize the GStreamer PTP subsystem and create a PTP ordinary clock in
+      <doc xml:space="preserve"
+           filename="libs/gst/net/gstptpclock.c"
+           line="2025">Initialize the GStreamer PTP subsystem and create a PTP ordinary clock in
 slave-only mode for all domains on the given @interfaces with the
 given @clock_id.
 
@@ -769,20 +1159,27 @@ generated from the MAC address of the first network interface.
 
 This function is automatically called by gst_ptp_clock_new() with default
 parameters if it wasn't called before.</doc>
+      <source-position filename="libs/gst/net/gstptpclock.h" line="89"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE if the GStreamer PTP clock subsystem could be initialized.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/net/gstptpclock.c"
+             line="2040">%TRUE if the GStreamer PTP clock subsystem could be initialized.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="clock_id" transfer-ownership="none">
-          <doc xml:space="preserve">PTP clock id of this process' clock or %GST_PTP_CLOCK_ID_NONE</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/net/gstptpclock.c"
+               line="2027">PTP clock id of this process' clock or %GST_PTP_CLOCK_ID_NONE</doc>
           <type name="guint64" c:type="guint64"/>
         </parameter>
         <parameter name="interfaces"
                    transfer-ownership="none"
                    nullable="1"
                    allow-none="1">
-          <doc xml:space="preserve">network interfaces to run the clock on</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/net/gstptpclock.c"
+               line="2028">network interfaces to run the clock on</doc>
           <array c:type="gchar**">
             <type name="utf8" c:type="gchar*"/>
           </array>
@@ -792,19 +1189,29 @@ parameters if it wasn't called before.</doc>
     <function name="ptp_is_initialized"
               c:identifier="gst_ptp_is_initialized"
               version="1.6">
-      <doc xml:space="preserve">Check if the GStreamer PTP clock subsystem is initialized.</doc>
+      <doc xml:space="preserve"
+           filename="libs/gst/net/gstptpclock.c"
+           line="2010">Check if the GStreamer PTP clock subsystem is initialized.</doc>
+      <source-position filename="libs/gst/net/gstptpclock.h" line="86"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE if the GStreamer PTP clock subsystem is initialized.</doc>
+        <doc xml:space="preserve"
+             filename="libs/gst/net/gstptpclock.c"
+             line="2015">%TRUE if the GStreamer PTP clock subsystem is initialized.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
     </function>
     <function name="ptp_is_supported"
               c:identifier="gst_ptp_is_supported"
               version="1.6">
-      <doc xml:space="preserve">Check if PTP clocks are generally supported on this system, and if previous
+      <doc xml:space="preserve"
+           filename="libs/gst/net/gstptpclock.c"
+           line="1993">Check if PTP clocks are generally supported on this system, and if previous
 initializations did not fail.</doc>
+      <source-position filename="libs/gst/net/gstptpclock.h" line="83"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE if PTP clocks are generally supported on this system, and
+        <doc xml:space="preserve"
+             filename="libs/gst/net/gstptpclock.c"
+             line="1999">%TRUE if PTP clocks are generally supported on this system, and
 previous initializations did not fail.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
@@ -812,10 +1219,15 @@ previous initializations did not fail.</doc>
     <function name="ptp_statistics_callback_add"
               c:identifier="gst_ptp_statistics_callback_add"
               version="1.6">
-      <doc xml:space="preserve">Installs a new statistics callback for gathering PTP statistics. See
+      <doc xml:space="preserve"
+           filename="libs/gst/net/gstptpclock.c"
+           line="2604">Installs a new statistics callback for gathering PTP statistics. See
 GstPtpStatisticsCallback for a list of statistics that are provided.</doc>
+      <source-position filename="libs/gst/net/gstptpclock.h" line="147"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">Id for the callback that can be passed to
+        <doc xml:space="preserve"
+             filename="libs/gst/net/gstptpclock.c"
+             line="2613">Id for the callback that can be passed to
 gst_ptp_statistics_callback_remove()</doc>
         <type name="gulong" c:type="gulong"/>
       </return-value>
@@ -825,7 +1237,9 @@ gst_ptp_statistics_callback_remove()</doc>
                    scope="notified"
                    closure="1"
                    destroy="2">
-          <doc xml:space="preserve">GstPtpStatisticsCallback to call</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/net/gstptpclock.c"
+               line="2606">GstPtpStatisticsCallback to call</doc>
           <type name="PtpStatisticsCallback"
                 c:type="GstPtpStatisticsCallback"/>
         </parameter>
@@ -833,11 +1247,15 @@ gst_ptp_statistics_callback_remove()</doc>
                    transfer-ownership="none"
                    nullable="1"
                    allow-none="1">
-          <doc xml:space="preserve">Data to pass to the callback</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/net/gstptpclock.c"
+               line="2607">Data to pass to the callback</doc>
           <type name="gpointer" c:type="gpointer"/>
         </parameter>
         <parameter name="destroy_data" transfer-ownership="none" scope="async">
-          <doc xml:space="preserve">GDestroyNotify to destroy the data</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/net/gstptpclock.c"
+               line="2608">GDestroyNotify to destroy the data</doc>
           <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
         </parameter>
       </parameters>
@@ -845,14 +1263,19 @@ gst_ptp_statistics_callback_remove()</doc>
     <function name="ptp_statistics_callback_remove"
               c:identifier="gst_ptp_statistics_callback_remove"
               version="1.6">
-      <doc xml:space="preserve">Removes a PTP statistics callback that was previously added with
+      <doc xml:space="preserve"
+           filename="libs/gst/net/gstptpclock.c"
+           line="2643">Removes a PTP statistics callback that was previously added with
 gst_ptp_statistics_callback_add().</doc>
+      <source-position filename="libs/gst/net/gstptpclock.h" line="150"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="id" transfer-ownership="none">
-          <doc xml:space="preserve">Callback id to remove</doc>
+          <doc xml:space="preserve"
+               filename="libs/gst/net/gstptpclock.c"
+               line="2645">Callback id to remove</doc>
           <type name="gulong" c:type="gulong"/>
         </parameter>
       </parameters>
index e68342b..1db863d 100644 (file)
@@ -19,30 +19,74 @@ and/or use gtk-doc annotations.  -->
              c:symbol-prefixes="gst">
     <alias name="DiscovererAudioInfoClass"
            c:type="GstDiscovererAudioInfoClass">
+      <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                       line="120"/>
       <type name="GObject.ObjectClass" c:type="GObjectClass"/>
     </alias>
     <alias name="DiscovererContainerInfoClass"
            c:type="GstDiscovererContainerInfoClass">
+      <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                       line="99"/>
       <type name="GObject.ObjectClass" c:type="GObjectClass"/>
     </alias>
     <alias name="DiscovererInfoClass" c:type="GstDiscovererInfoClass">
+      <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                       line="274"/>
       <type name="GObject.ObjectClass" c:type="GObjectClass"/>
     </alias>
     <alias name="DiscovererStreamInfoClass"
            c:type="GstDiscovererStreamInfoClass">
+      <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                       line="36"/>
       <type name="GObject.ObjectClass" c:type="GObjectClass"/>
     </alias>
     <alias name="DiscovererSubtitleInfoClass"
            c:type="GstDiscovererSubtitleInfoClass">
+      <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                       line="209"/>
       <type name="GObject.ObjectClass" c:type="GObjectClass"/>
     </alias>
     <alias name="DiscovererVideoInfoClass"
            c:type="GstDiscovererVideoInfoClass">
+      <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                       line="158"/>
       <type name="GObject.ObjectClass" c:type="GObjectClass"/>
     </alias>
     <alias name="EncodingTargetClass" c:type="GstEncodingTargetClass">
+      <source-position filename="gst-libs/gst/pbutils/encoding-target.h"
+                       line="101"/>
       <type name="GObject.ObjectClass" c:type="GObjectClass"/>
     </alias>
+    <function-macro name="AUDIO_VISUALIZER"
+                    c:identifier="GST_AUDIO_VISUALIZER"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/pbutils/gstaudiovisualizer.h"
+                       line="36"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_VISUALIZER_CLASS"
+                    c:identifier="GST_AUDIO_VISUALIZER_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/pbutils/gstaudiovisualizer.h"
+                       line="37"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="AUDIO_VISUALIZER_GET_CLASS"
+                    c:identifier="GST_AUDIO_VISUALIZER_GET_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/pbutils/gstaudiovisualizer.h"
+                       line="38"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
     <class name="AudioVisualizer"
            c:symbol-prefix="audio_visualizer"
            c:type="GstAudioVisualizer"
@@ -51,14 +95,20 @@ and/or use gtk-doc annotations.  -->
            glib:type-name="GstAudioVisualizer"
            glib:get-type="gst_audio_visualizer_get_type"
            glib:type-struct="AudioVisualizerClass">
-      <doc xml:space="preserve">A baseclass for scopes (visualizers). It takes care of re-fitting the
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/gstaudiovisualizer.c"
+           line="22">A baseclass for scopes (visualizers). It takes care of re-fitting the
 audio-rate to video-rate and handles renegotiation (downstream video size
 changes).
 
 It also provides several background shading effects. These effects are
-applied to a previous picture before the render() implementation can draw a
+applied to a previous picture before the `render()` implementation can draw a
 new frame.</doc>
+      <source-position filename="gst-libs/gst/pbutils/gstaudiovisualizer.h"
+                       line="104"/>
       <virtual-method name="decide_allocation">
+        <source-position filename="gst-libs/gst/pbutils/gstaudiovisualizer.h"
+                         line="103"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -72,6 +122,8 @@ new frame.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="render">
+        <source-position filename="gst-libs/gst/pbutils/gstaudiovisualizer.h"
+                         line="101"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -88,6 +140,8 @@ new frame.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="setup">
+        <source-position filename="gst-libs/gst/pbutils/gstaudiovisualizer.h"
+                         line="98"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -123,11 +177,15 @@ new frame.</doc>
     <record name="AudioVisualizerClass"
             c:type="GstAudioVisualizerClass"
             glib:is-gtype-struct-for="AudioVisualizer">
+      <source-position filename="gst-libs/gst/pbutils/gstaudiovisualizer.h"
+                       line="104"/>
       <field name="parent_class" readable="0" private="1">
         <type name="Gst.ElementClass" c:type="GstElementClass"/>
       </field>
       <field name="setup">
         <callback name="setup">
+          <source-position filename="gst-libs/gst/pbutils/gstaudiovisualizer.h"
+                           line="98"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -140,6 +198,8 @@ new frame.</doc>
       </field>
       <field name="render">
         <callback name="render">
+          <source-position filename="gst-libs/gst/pbutils/gstaudiovisualizer.h"
+                           line="101"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -158,6 +218,8 @@ new frame.</doc>
       </field>
       <field name="decide_allocation">
         <callback name="decide_allocation">
+          <source-position filename="gst-libs/gst/pbutils/gstaudiovisualizer.h"
+                           line="103"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -175,75 +237,101 @@ new frame.</doc>
     <record name="AudioVisualizerPrivate"
             c:type="GstAudioVisualizerPrivate"
             disguised="1">
+      <source-position filename="gst-libs/gst/pbutils/gstaudiovisualizer.h"
+                       line="43"/>
     </record>
     <enumeration name="AudioVisualizerShader"
                  glib:type-name="GstAudioVisualizerShader"
                  glib:get-type="gst_audio_visualizer_shader_get_type"
                  c:type="GstAudioVisualizerShader">
-      <doc xml:space="preserve">Different types of supported background shading functions.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/gstaudiovisualizer.h"
+           line="47">Different types of supported background shading functions.</doc>
       <member name="none"
               value="0"
               c:identifier="GST_AUDIO_VISUALIZER_SHADER_NONE"
               glib:nick="none">
-        <doc xml:space="preserve">no shading</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/gstaudiovisualizer.h"
+             line="49">no shading</doc>
       </member>
       <member name="fade"
               value="1"
               c:identifier="GST_AUDIO_VISUALIZER_SHADER_FADE"
               glib:nick="fade">
-        <doc xml:space="preserve">plain fading</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/gstaudiovisualizer.h"
+             line="50">plain fading</doc>
       </member>
       <member name="fade_and_move_up"
               value="2"
               c:identifier="GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_UP"
               glib:nick="fade-and-move-up">
-        <doc xml:space="preserve">fade and move up</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/gstaudiovisualizer.h"
+             line="51">fade and move up</doc>
       </member>
       <member name="fade_and_move_down"
               value="3"
               c:identifier="GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_DOWN"
               glib:nick="fade-and-move-down">
-        <doc xml:space="preserve">fade and move down</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/gstaudiovisualizer.h"
+             line="52">fade and move down</doc>
       </member>
       <member name="fade_and_move_left"
               value="4"
               c:identifier="GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_LEFT"
               glib:nick="fade-and-move-left">
-        <doc xml:space="preserve">fade and move left</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/gstaudiovisualizer.h"
+             line="53">fade and move left</doc>
       </member>
       <member name="fade_and_move_right"
               value="5"
               c:identifier="GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_RIGHT"
               glib:nick="fade-and-move-right">
-        <doc xml:space="preserve">fade and move right</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/gstaudiovisualizer.h"
+             line="54">fade and move right</doc>
       </member>
       <member name="fade_and_move_horiz_out"
               value="6"
               c:identifier="GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_HORIZ_OUT"
               glib:nick="fade-and-move-horiz-out">
-        <doc xml:space="preserve">fade and move horizontally out</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/gstaudiovisualizer.h"
+             line="55">fade and move horizontally out</doc>
       </member>
       <member name="fade_and_move_horiz_in"
               value="7"
               c:identifier="GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_HORIZ_IN"
               glib:nick="fade-and-move-horiz-in">
-        <doc xml:space="preserve">fade and move horizontally in</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/gstaudiovisualizer.h"
+             line="56">fade and move horizontally in</doc>
       </member>
       <member name="fade_and_move_vert_out"
               value="8"
               c:identifier="GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_VERT_OUT"
               glib:nick="fade-and-move-vert-out">
-        <doc xml:space="preserve">fade and move vertically out</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/gstaudiovisualizer.h"
+             line="57">fade and move vertically out</doc>
       </member>
       <member name="fade_and_move_vert_in"
               value="9"
               c:identifier="GST_AUDIO_VISUALIZER_SHADER_FADE_AND_MOVE_VERT_IN"
               glib:nick="fade-and-move-vert-in">
-        <doc xml:space="preserve">fade and move vertically in</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/gstaudiovisualizer.h"
+             line="58">fade and move vertically in</doc>
       </member>
     </enumeration>
     <callback name="AudioVisualizerShaderFunc"
               c:type="GstAudioVisualizerShaderFunc">
+      <source-position filename="gst-libs/gst/pbutils/gstaudiovisualizer.h"
+                       line="45"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
@@ -259,6 +347,100 @@ new frame.</doc>
         </parameter>
       </parameters>
     </callback>
+    <function-macro name="CHECK_PLUGINS_BASE_VERSION"
+                    c:identifier="GST_CHECK_PLUGINS_BASE_VERSION"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/pbutils/gstpluginsbaseversion.h"
+                       line="63"/>
+      <parameters>
+        <parameter name="major">
+        </parameter>
+        <parameter name="minor">
+        </parameter>
+        <parameter name="micro">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="DISCOVERER"
+                    c:identifier="GST_DISCOVERER"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                       line="338"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="DISCOVERER_AUDIO_INFO"
+                    c:identifier="GST_DISCOVERER_AUDIO_INFO"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                       line="112"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="DISCOVERER_CLASS"
+                    c:identifier="GST_DISCOVERER_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                       line="340"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="DISCOVERER_CONTAINER_INFO"
+                    c:identifier="GST_DISCOVERER_CONTAINER_INFO"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                       line="92"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="DISCOVERER_INFO"
+                    c:identifier="GST_DISCOVERER_INFO"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                       line="264"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="DISCOVERER_STREAM_INFO"
+                    c:identifier="GST_DISCOVERER_STREAM_INFO"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                       line="30"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="DISCOVERER_SUBTITLE_INFO"
+                    c:identifier="GST_DISCOVERER_SUBTITLE_INFO"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                       line="199"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="DISCOVERER_VIDEO_INFO"
+                    c:identifier="GST_DISCOVERER_VIDEO_INFO"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                       line="149"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
     <class name="Discoverer"
            c:symbol-prefix="discoverer"
            c:type="GstDiscoverer"
@@ -266,7 +448,9 @@ new frame.</doc>
            glib:type-name="GstDiscoverer"
            glib:get-type="gst_discoverer_get_type"
            glib:type-struct="DiscovererClass">
-      <doc xml:space="preserve">The #GstDiscoverer is a utility object which allows to get as much
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/gstdiscoverer.c"
+           line="21">The #GstDiscoverer is a utility object which allows to get as much
 information as possible from one or many URIs.
 
 It provides two APIs, allowing usage in blocking or non-blocking mode.
@@ -282,10 +466,18 @@ By default this will use the GLib default main context unless you have
 set a custom context using g_main_context_push_thread_default().
 
 All the information is returned in a #GstDiscovererInfo structure.</doc>
+      <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                       line="385"/>
       <constructor name="new" c:identifier="gst_discoverer_new" throws="1">
-        <doc xml:space="preserve">Creates a new #GstDiscoverer with the provided timeout.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/gstdiscoverer.c"
+             line="2616">Creates a new #GstDiscoverer with the provided timeout.</doc>
+        <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                         line="391"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">The new #GstDiscoverer.
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/gstdiscoverer.c"
+               line="2624">The new #GstDiscoverer.
 If an error occurred when creating the discoverer, @err will be set
 accordingly and %NULL will be returned. If @err is set, the caller must
 free it when no longer needed using g_error_free().</doc>
@@ -293,13 +485,17 @@ free it when no longer needed using g_error_free().</doc>
         </return-value>
         <parameters>
           <parameter name="timeout" transfer-ownership="none">
-            <doc xml:space="preserve">timeout per file, in nanoseconds. Allowed are values between
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/gstdiscoverer.c"
+                 line="2618">timeout per file, in nanoseconds. Allowed are values between
     one second (#GST_SECOND) and one hour (3600 * #GST_SECOND)</doc>
             <type name="Gst.ClockTime" c:type="GstClockTime"/>
           </parameter>
         </parameters>
       </constructor>
       <virtual-method name="discovered">
+        <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                         line="378"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
@@ -316,6 +512,8 @@ free it when no longer needed using g_error_free().</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="finished">
+        <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                         line="376"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
@@ -326,6 +524,8 @@ free it when no longer needed using g_error_free().</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="source_setup">
+        <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                         line="381"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
@@ -339,6 +539,8 @@ free it when no longer needed using g_error_free().</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="starting">
+        <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                         line="377"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
@@ -351,73 +553,105 @@ free it when no longer needed using g_error_free().</doc>
       <method name="discover_uri"
               c:identifier="gst_discoverer_discover_uri"
               throws="1">
-        <doc xml:space="preserve">Synchronously discovers the given @uri.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/gstdiscoverer.c"
+             line="2554">Synchronously discovers the given @uri.
 
 A copy of @uri will be made internally, so the caller can safely g_free()
 afterwards.</doc>
+        <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                         line="409"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the result of the scanning. Can be %NULL if an
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/gstdiscoverer.c"
+               line="2565">the result of the scanning. Can be %NULL if an
 error occurred.</doc>
           <type name="DiscovererInfo" c:type="GstDiscovererInfo*"/>
         </return-value>
         <parameters>
           <instance-parameter name="discoverer" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstDiscoverer</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/gstdiscoverer.c"
+                 line="2556">A #GstDiscoverer</doc>
             <type name="Discoverer" c:type="GstDiscoverer*"/>
           </instance-parameter>
           <parameter name="uri" transfer-ownership="none">
-            <doc xml:space="preserve">The URI to run on.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/gstdiscoverer.c"
+                 line="2557">The URI to run on.</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </method>
       <method name="discover_uri_async"
               c:identifier="gst_discoverer_discover_uri_async">
-        <doc xml:space="preserve">Appends the given @uri to the list of URIs to discoverer. The actual
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/gstdiscoverer.c"
+             line="2515">Appends the given @uri to the list of URIs to discoverer. The actual
 discovery of the @uri will only take place if gst_discoverer_start() has
 been called.
 
 A copy of @uri will be made internally, so the caller can safely g_free()
 afterwards.</doc>
+        <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                         line="402"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the @uri was successfully appended to the list of pending
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/gstdiscoverer.c"
+               line="2527">%TRUE if the @uri was successfully appended to the list of pending
 uris, else %FALSE</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="discoverer" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstDiscoverer</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/gstdiscoverer.c"
+                 line="2517">A #GstDiscoverer</doc>
             <type name="Discoverer" c:type="GstDiscoverer*"/>
           </instance-parameter>
           <parameter name="uri" transfer-ownership="none">
-            <doc xml:space="preserve">the URI to add.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/gstdiscoverer.c"
+                 line="2518">the URI to add.</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </method>
       <method name="start" c:identifier="gst_discoverer_start">
-        <doc xml:space="preserve">Allow asynchronous discovering of URIs to take place.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/gstdiscoverer.c"
+             line="2414">Allow asynchronous discovering of URIs to take place.
 A #GMainLoop must be available for #GstDiscoverer to properly work in
 asynchronous mode.</doc>
+        <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                         line="396"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="discoverer" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstDiscoverer</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/gstdiscoverer.c"
+                 line="2416">A #GstDiscoverer</doc>
             <type name="Discoverer" c:type="GstDiscoverer*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="stop" c:identifier="gst_discoverer_stop">
-        <doc xml:space="preserve">Stop the discovery of any pending URIs and clears the list of
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/gstdiscoverer.c"
+             line="2457">Stop the discovery of any pending URIs and clears the list of
 pending URIS (if any).</doc>
+        <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                         line="399"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="discoverer" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstDiscoverer</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/gstdiscoverer.c"
+                 line="2459">A #GstDiscoverer</doc>
             <type name="Discoverer" c:type="GstDiscoverer*"/>
           </instance-parameter>
         </parameters>
@@ -426,7 +660,9 @@ pending URIS (if any).</doc>
                 writable="1"
                 construct="1"
                 transfer-ownership="none">
-        <doc xml:space="preserve">The duration (in nanoseconds) after which the discovery of an individual
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/gstdiscoverer.c"
+             line="232">The duration (in nanoseconds) after which the discovery of an individual
 URI will timeout.
 
 If the discovery of a URI times out, the %GST_DISCOVERER_TIMEOUT will be
@@ -446,12 +682,14 @@ set on the result flags.</doc>
         <type name="DiscovererPrivate" c:type="GstDiscovererPrivate*"/>
       </field>
       <field name="_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
       <glib:signal name="discovered" when="last">
-        <doc xml:space="preserve">Will be emitted in async mode when all information on a URI could be
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/gstdiscoverer.c"
+             line="287">Will be emitted in async mode when all information on a URI could be
 discovered, or an error occurred.
 
 When an error occurs, @info might still contain some partial information,
@@ -461,14 +699,18 @@ depending on the circumstances of the error.</doc>
         </return-value>
         <parameters>
           <parameter name="info" transfer-ownership="none">
-            <doc xml:space="preserve">the results #GstDiscovererInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/gstdiscoverer.c"
+                 line="290">the results #GstDiscovererInfo</doc>
             <type name="DiscovererInfo"/>
           </parameter>
           <parameter name="error"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">#GError, which will be non-NULL
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/gstdiscoverer.c"
+                 line="291">#GError, which will be non-NULL
                                         if an error occurred during
                                         discovery. You must not free
                                         this #GError, it will be freed by
@@ -478,13 +720,17 @@ depending on the circumstances of the error.</doc>
         </parameters>
       </glib:signal>
       <glib:signal name="finished" when="last">
-        <doc xml:space="preserve">Will be emitted in async mode when all pending URIs have been processed.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/gstdiscoverer.c"
+             line="265">Will be emitted in async mode when all pending URIs have been processed.</doc>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
       </glib:signal>
       <glib:signal name="source-setup" when="last">
-        <doc xml:space="preserve">This signal is emitted after the source element has been created for, so
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/gstdiscoverer.c"
+             line="309">This signal is emitted after the source element has been created for, so
 the URI being discovered, so it can be configured by setting additional
 properties (e.g. set a proxy server for an http source, or set the device
 and read speed for an audio cd source).
@@ -496,13 +742,17 @@ thread.</doc>
         </return-value>
         <parameters>
           <parameter name="source" transfer-ownership="none">
-            <doc xml:space="preserve">source element</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/gstdiscoverer.c"
+                 line="312">source element</doc>
             <type name="Gst.Element"/>
           </parameter>
         </parameters>
       </glib:signal>
       <glib:signal name="starting" when="last">
-        <doc xml:space="preserve">Will be emitted when the discover starts analyzing the pending URIs</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/gstdiscoverer.c"
+             line="276">Will be emitted when the discover starts analyzing the pending URIs</doc>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
@@ -514,16 +764,24 @@ thread.</doc>
            parent="DiscovererStreamInfo"
            glib:type-name="GstDiscovererAudioInfo"
            glib:get-type="gst_discoverer_audio_info_get_type">
-      <doc xml:space="preserve">#GstDiscovererStreamInfo specific to audio streams.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+           line="108">#GstDiscovererStreamInfo specific to audio streams.</doc>
       <method name="get_bitrate"
               c:identifier="gst_discoverer_audio_info_get_bitrate">
+        <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                         line="138"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the average or nominal bitrate of the stream in bits/second.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+               line="792">the average or nominal bitrate of the stream in bits/second.</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="info" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDiscovererAudioInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+                 line="790">a #GstDiscovererAudioInfo</doc>
             <type name="DiscovererAudioInfo"
                   c:type="const GstDiscovererAudioInfo*"/>
           </instance-parameter>
@@ -532,15 +790,21 @@ thread.</doc>
       <method name="get_channel_mask"
               c:identifier="gst_discoverer_audio_info_get_channel_mask"
               version="1.14">
+        <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                         line="129"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the channel-mask of the stream, refer to
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+               line="761">the channel-mask of the stream, refer to
 gst_audio_channel_positions_from_mask() for more
 information.</doc>
           <type name="guint64" c:type="guint64"/>
         </return-value>
         <parameters>
           <instance-parameter name="info" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDiscovererAudioInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+                 line="759">a #GstDiscovererAudioInfo</doc>
             <type name="DiscovererAudioInfo"
                   c:type="const GstDiscovererAudioInfo*"/>
           </instance-parameter>
@@ -548,13 +812,19 @@ information.</doc>
       </method>
       <method name="get_channels"
               c:identifier="gst_discoverer_audio_info_get_channels">
+        <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                         line="126"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the number of channels in the stream.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+               line="752">the number of channels in the stream.</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="info" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDiscovererAudioInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+                 line="750">a #GstDiscovererAudioInfo</doc>
             <type name="DiscovererAudioInfo"
                   c:type="const GstDiscovererAudioInfo*"/>
           </instance-parameter>
@@ -562,13 +832,19 @@ information.</doc>
       </method>
       <method name="get_depth"
               c:identifier="gst_discoverer_audio_info_get_depth">
+        <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                         line="135"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the number of bits used per sample in each channel.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+               line="783">the number of bits used per sample in each channel.</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="info" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDiscovererAudioInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+                 line="781">a #GstDiscovererAudioInfo</doc>
             <type name="DiscovererAudioInfo"
                   c:type="const GstDiscovererAudioInfo*"/>
           </instance-parameter>
@@ -576,13 +852,19 @@ information.</doc>
       </method>
       <method name="get_language"
               c:identifier="gst_discoverer_audio_info_get_language">
+        <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                         line="144"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the language of the stream, or NULL if unknown.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+               line="810">the language of the stream, or NULL if unknown.</doc>
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
         <parameters>
           <instance-parameter name="info" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDiscovererAudioInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+                 line="808">a #GstDiscovererAudioInfo</doc>
             <type name="DiscovererAudioInfo"
                   c:type="const GstDiscovererAudioInfo*"/>
           </instance-parameter>
@@ -590,13 +872,19 @@ information.</doc>
       </method>
       <method name="get_max_bitrate"
               c:identifier="gst_discoverer_audio_info_get_max_bitrate">
+        <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                         line="141"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the maximum bitrate of the stream in bits/second.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+               line="801">the maximum bitrate of the stream in bits/second.</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="info" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDiscovererAudioInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+                 line="799">a #GstDiscovererAudioInfo</doc>
             <type name="DiscovererAudioInfo"
                   c:type="const GstDiscovererAudioInfo*"/>
           </instance-parameter>
@@ -604,13 +892,19 @@ information.</doc>
       </method>
       <method name="get_sample_rate"
               c:identifier="gst_discoverer_audio_info_get_sample_rate">
+        <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                         line="132"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the sample rate of the stream in Hertz.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+               line="774">the sample rate of the stream in Hertz.</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="info" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDiscovererAudioInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+                 line="772">a #GstDiscovererAudioInfo</doc>
             <type name="DiscovererAudioInfo"
                   c:type="const GstDiscovererAudioInfo*"/>
           </instance-parameter>
@@ -620,11 +914,15 @@ information.</doc>
     <record name="DiscovererClass"
             c:type="GstDiscovererClass"
             glib:is-gtype-struct-for="Discoverer">
+      <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                       line="385"/>
       <field name="parentclass">
         <type name="GObject.ObjectClass" c:type="GObjectClass"/>
       </field>
       <field name="finished">
         <callback name="finished">
+          <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                           line="376"/>
           <return-value transfer-ownership="none">
             <type name="none" c:type="void"/>
           </return-value>
@@ -637,6 +935,8 @@ information.</doc>
       </field>
       <field name="starting">
         <callback name="starting">
+          <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                           line="377"/>
           <return-value transfer-ownership="none">
             <type name="none" c:type="void"/>
           </return-value>
@@ -649,6 +949,8 @@ information.</doc>
       </field>
       <field name="discovered">
         <callback name="discovered">
+          <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                           line="378"/>
           <return-value transfer-ownership="none">
             <type name="none" c:type="void"/>
           </return-value>
@@ -667,6 +969,8 @@ information.</doc>
       </field>
       <field name="source_setup">
         <callback name="source_setup">
+          <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                           line="381"/>
           <return-value transfer-ownership="none">
             <type name="none" c:type="void"/>
           </return-value>
@@ -681,7 +985,7 @@ information.</doc>
         </callback>
       </field>
       <field name="_reserved">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -692,11 +996,17 @@ information.</doc>
            parent="DiscovererStreamInfo"
            glib:type-name="GstDiscovererContainerInfo"
            glib:get-type="gst_discoverer_container_info_get_type">
-      <doc xml:space="preserve">#GstDiscovererStreamInfo specific to container streams.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+           line="87">#GstDiscovererStreamInfo specific to container streams.</doc>
       <method name="get_streams"
               c:identifier="gst_discoverer_container_info_get_streams">
+        <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                         line="105"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the list of
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+               line="721">the list of
 #GstDiscovererStreamInfo this container stream offers.
 Free with gst_discoverer_stream_info_list_free() after usage.</doc>
           <type name="GLib.List" c:type="GList*">
@@ -705,7 +1015,9 @@ Free with gst_discoverer_stream_info_list_free() after usage.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="info" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDiscovererStreamInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+                 line="719">a #GstDiscovererStreamInfo</doc>
             <type name="DiscovererContainerInfo"
                   c:type="GstDiscovererContainerInfo*"/>
           </instance-parameter>
@@ -718,40 +1030,62 @@ Free with gst_discoverer_stream_info_list_free() after usage.</doc>
            parent="GObject.Object"
            glib:type-name="GstDiscovererInfo"
            glib:get-type="gst_discoverer_info_get_type">
-      <doc xml:space="preserve">Structure containing the information of a URI analyzed by #GstDiscoverer.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+           line="261">Structure containing the information of a URI analyzed by #GstDiscoverer.</doc>
       <function name="from_variant"
                 c:identifier="gst_discoverer_info_from_variant"
                 version="1.6">
-        <doc xml:space="preserve">Parses a #GVariant as produced by gst_discoverer_info_to_variant()
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/gstdiscoverer.c"
+             line="2689">Parses a #GVariant as produced by gst_discoverer_info_to_variant()
 back to a #GstDiscovererInfo.</doc>
+        <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                         line="338"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">A newly-allocated #GstDiscovererInfo.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/gstdiscoverer.c"
+               line="2696">A newly-allocated #GstDiscovererInfo.</doc>
           <type name="DiscovererInfo" c:type="GstDiscovererInfo*"/>
         </return-value>
         <parameters>
           <parameter name="variant" transfer-ownership="none">
-            <doc xml:space="preserve">A #GVariant to deserialize into a #GstDiscovererInfo.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/gstdiscoverer.c"
+                 line="2691">A #GVariant to deserialize into a #GstDiscovererInfo.</doc>
             <type name="GLib.Variant" c:type="GVariant*"/>
           </parameter>
         </parameters>
       </function>
       <method name="copy" c:identifier="gst_discoverer_info_copy">
+        <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                         line="283"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">A copy of the #GstDiscovererInfo</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+               line="395">A copy of the #GstDiscovererInfo</doc>
           <type name="DiscovererInfo" c:type="GstDiscovererInfo*"/>
         </return-value>
         <parameters>
           <instance-parameter name="ptr" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDiscovererInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+                 line="393">a #GstDiscovererInfo</doc>
             <type name="DiscovererInfo" c:type="GstDiscovererInfo*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_audio_streams"
               c:identifier="gst_discoverer_info_get_audio_streams">
-        <doc xml:space="preserve">Finds all the #GstDiscovererAudioInfo contained in @info</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+             line="494">Finds all the #GstDiscovererAudioInfo contained in @info</doc>
+        <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                         line="322"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">A #GList of
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+               line="500">A #GList of
 matching #GstDiscovererStreamInfo. The caller should free it with
 gst_discoverer_stream_info_list_free().</doc>
           <type name="GLib.List" c:type="GList*">
@@ -760,16 +1094,24 @@ gst_discoverer_stream_info_list_free().</doc>
         </return-value>
         <parameters>
           <instance-parameter name="info" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDiscovererInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+                 line="496">a #GstDiscovererInfo</doc>
             <type name="DiscovererInfo" c:type="GstDiscovererInfo*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_container_streams"
               c:identifier="gst_discoverer_info_get_container_streams">
-        <doc xml:space="preserve">Finds all the #GstDiscovererContainerInfo contained in @info</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+             line="543">Finds all the #GstDiscovererContainerInfo contained in @info</doc>
+        <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                         line="331"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">A #GList of
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+               line="549">A #GList of
 matching #GstDiscovererStreamInfo. The caller should free it with
 gst_discoverer_stream_info_list_free().</doc>
           <type name="GLib.List" c:type="GList*">
@@ -778,20 +1120,28 @@ gst_discoverer_stream_info_list_free().</doc>
         </return-value>
         <parameters>
           <instance-parameter name="info" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDiscovererInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+                 line="545">a #GstDiscovererInfo</doc>
             <type name="DiscovererInfo" c:type="GstDiscovererInfo*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_duration"
               c:identifier="gst_discoverer_info_get_duration">
+        <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                         line="298"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the duration of the URI in #GstClockTime (nanoseconds).</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+               line="1021">the duration of the URI in #GstClockTime (nanoseconds).</doc>
           <type name="Gst.ClockTime" c:type="GstClockTime"/>
         </return-value>
         <parameters>
           <instance-parameter name="info" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDiscovererInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+                 line="1019">a #GstDiscovererInfo</doc>
             <type name="DiscovererInfo" c:type="const GstDiscovererInfo*"/>
           </instance-parameter>
         </parameters>
@@ -799,13 +1149,19 @@ gst_discoverer_stream_info_list_free().</doc>
       <method name="get_live"
               c:identifier="gst_discoverer_info_get_live"
               version="1.14">
+        <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                         line="304"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">whether the URI is live.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+               line="1039">whether the URI is live.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="info" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDiscovererInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+                 line="1037">a #GstDiscovererInfo</doc>
             <type name="DiscovererInfo" c:type="const GstDiscovererInfo*"/>
           </instance-parameter>
         </parameters>
@@ -815,15 +1171,21 @@ gst_discoverer_stream_info_list_free().</doc>
               deprecated="1">
         <doc-deprecated xml:space="preserve">This functions is deprecated since version 1.4, use
 #gst_discoverer_info_get_missing_elements_installer_details</doc-deprecated>
+        <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                         line="307"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">Miscellaneous information stored as a #GstStructure
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+               line="1054">Miscellaneous information stored as a #GstStructure
 (for example: information about missing plugins). If you wish to use the
 #GstStructure after the life-time of @info, you will need to copy it.</doc>
           <type name="Gst.Structure" c:type="const GstStructure*"/>
         </return-value>
         <parameters>
           <instance-parameter name="info" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDiscovererInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+                 line="1049">a #GstDiscovererInfo</doc>
             <type name="DiscovererInfo" c:type="const GstDiscovererInfo*"/>
           </instance-parameter>
         </parameters>
@@ -831,10 +1193,16 @@ gst_discoverer_stream_info_list_free().</doc>
       <method name="get_missing_elements_installer_details"
               c:identifier="gst_discoverer_info_get_missing_elements_installer_details"
               version="1.4">
-        <doc xml:space="preserve">Get the installer details for missing elements</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+             line="1115">Get the installer details for missing elements</doc>
+        <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                         line="315"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">An array of strings
-containing informations about how to install the various missing elements
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+               line="1122">An array of strings
+containing information about how to install the various missing elements
 for @info to be usable. If you wish to use the strings after the life-time
 of @info, you will need to copy them.</doc>
           <array c:type="const gchar**">
@@ -843,41 +1211,59 @@ of @info, you will need to copy them.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="info" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDiscovererStreamInfo to retrieve installer detail
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+                 line="1117">a #GstDiscovererStreamInfo to retrieve installer detail
 for the missing element</doc>
             <type name="DiscovererInfo" c:type="const GstDiscovererInfo*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_result" c:identifier="gst_discoverer_info_get_result">
+        <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                         line="289"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the result of the discovery as a #GstDiscovererResult.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+               line="969">the result of the discovery as a #GstDiscovererResult.</doc>
           <type name="DiscovererResult" c:type="GstDiscovererResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="info" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDiscovererInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+                 line="967">a #GstDiscovererInfo</doc>
             <type name="DiscovererInfo" c:type="const GstDiscovererInfo*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_seekable"
               c:identifier="gst_discoverer_info_get_seekable">
+        <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                         line="301"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the whether the URI is seekable.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+               line="1030">the whether the URI is seekable.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="info" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDiscovererInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+                 line="1028">a #GstDiscovererInfo</doc>
             <type name="DiscovererInfo" c:type="const GstDiscovererInfo*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_stream_info"
               c:identifier="gst_discoverer_info_get_stream_info">
+        <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                         line="292"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the structure (or topology) of the URI as a
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+               line="978">the structure (or topology) of the URI as a
 #GstDiscovererStreamInfo.
 This structure can be traversed to see the original hierarchy. Unref with
 gst_discoverer_stream_info_unref() after usage.</doc>
@@ -885,15 +1271,21 @@ gst_discoverer_stream_info_unref() after usage.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="info" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDiscovererInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+                 line="976">a #GstDiscovererInfo</doc>
             <type name="DiscovererInfo" c:type="GstDiscovererInfo*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_stream_list"
               c:identifier="gst_discoverer_info_get_stream_list">
+        <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                         line="295"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the list of
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+               line="998">the list of
 all streams contained in the #info. Free after usage
 with gst_discoverer_stream_info_list_free().</doc>
           <type name="GLib.List" c:type="GList*">
@@ -902,17 +1294,25 @@ with gst_discoverer_stream_info_list_free().</doc>
         </return-value>
         <parameters>
           <instance-parameter name="info" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDiscovererInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+                 line="996">a #GstDiscovererInfo</doc>
             <type name="DiscovererInfo" c:type="GstDiscovererInfo*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_streams"
               c:identifier="gst_discoverer_info_get_streams">
-        <doc xml:space="preserve">Finds the #GstDiscovererStreamInfo contained in @info that match the
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+             line="467">Finds the #GstDiscovererStreamInfo contained in @info that match the
 given @streamtype.</doc>
+        <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                         line="318"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">A #GList of
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+               line="475">A #GList of
 matching #GstDiscovererStreamInfo. The caller should free it with
 gst_discoverer_stream_info_list_free().</doc>
           <type name="GLib.List" c:type="GList*">
@@ -921,20 +1321,30 @@ gst_discoverer_stream_info_list_free().</doc>
         </return-value>
         <parameters>
           <instance-parameter name="info" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDiscovererInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+                 line="469">a #GstDiscovererInfo</doc>
             <type name="DiscovererInfo" c:type="GstDiscovererInfo*"/>
           </instance-parameter>
           <parameter name="streamtype" transfer-ownership="none">
-            <doc xml:space="preserve">a #GType derived from #GstDiscovererStreamInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+                 line="470">a #GType derived from #GstDiscovererStreamInfo</doc>
             <type name="GType" c:type="GType"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_subtitle_streams"
               c:identifier="gst_discoverer_info_get_subtitle_streams">
-        <doc xml:space="preserve">Finds all the #GstDiscovererSubtitleInfo contained in @info</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+             line="526">Finds all the #GstDiscovererSubtitleInfo contained in @info</doc>
+        <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                         line="328"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">A #GList of
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+               line="532">A #GList of
 matching #GstDiscovererStreamInfo. The caller should free it with
 gst_discoverer_stream_info_list_free().</doc>
           <type name="GLib.List" c:type="GList*">
@@ -943,55 +1353,81 @@ gst_discoverer_stream_info_list_free().</doc>
         </return-value>
         <parameters>
           <instance-parameter name="info" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDiscovererInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+                 line="528">a #GstDiscovererInfo</doc>
             <type name="DiscovererInfo" c:type="GstDiscovererInfo*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_tags" c:identifier="gst_discoverer_info_get_tags">
+        <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                         line="310"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">all tags contained in the URI. If you wish to use
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+               line="1066">all tags contained in the URI. If you wish to use
 the tags after the life-time of @info, you will need to copy them.</doc>
           <type name="Gst.TagList" c:type="const GstTagList*"/>
         </return-value>
         <parameters>
           <instance-parameter name="info" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDiscovererInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+                 line="1064">a #GstDiscovererInfo</doc>
             <type name="DiscovererInfo" c:type="const GstDiscovererInfo*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_toc" c:identifier="gst_discoverer_info_get_toc">
+        <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                         line="312"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">TOC contained in the URI. If you wish to use
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+               line="1076">TOC contained in the URI. If you wish to use
 the TOC after the life-time of @info, you will need to copy it.</doc>
           <type name="Gst.Toc" c:type="const GstToc*"/>
         </return-value>
         <parameters>
           <instance-parameter name="info" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDiscovererInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+                 line="1074">a #GstDiscovererInfo</doc>
             <type name="DiscovererInfo" c:type="const GstDiscovererInfo*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_uri" c:identifier="gst_discoverer_info_get_uri">
+        <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                         line="286"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the URI to which this information corresponds to.
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+               line="959">the URI to which this information corresponds to.
 Copy it if you wish to use it after the life-time of @info.</doc>
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
         <parameters>
           <instance-parameter name="info" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDiscovererInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+                 line="957">a #GstDiscovererInfo</doc>
             <type name="DiscovererInfo" c:type="const GstDiscovererInfo*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_video_streams"
               c:identifier="gst_discoverer_info_get_video_streams">
-        <doc xml:space="preserve">Finds all the #GstDiscovererVideoInfo contained in @info</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+             line="510">Finds all the #GstDiscovererVideoInfo contained in @info</doc>
+        <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                         line="325"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">A #GList of
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+               line="516">A #GList of
 matching #GstDiscovererStreamInfo. The caller should free it with
 gst_discoverer_stream_info_list_free().</doc>
           <type name="GLib.List" c:type="GList*">
@@ -1000,7 +1436,9 @@ gst_discoverer_stream_info_list_free().</doc>
         </return-value>
         <parameters>
           <instance-parameter name="info" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDiscovererInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+                 line="512">a #GstDiscovererInfo</doc>
             <type name="DiscovererInfo" c:type="GstDiscovererInfo*"/>
           </instance-parameter>
         </parameters>
@@ -1008,22 +1446,32 @@ gst_discoverer_stream_info_list_free().</doc>
       <method name="to_variant"
               c:identifier="gst_discoverer_info_to_variant"
               version="1.6">
-        <doc xml:space="preserve">Serializes @info to a #GVariant that can be parsed again
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/gstdiscoverer.c"
+             line="2645">Serializes @info to a #GVariant that can be parsed again
 through gst_discoverer_info_from_variant().
 
 Note that any #GstToc (s) that might have been discovered will not be serialized
 for now.</doc>
+        <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                         line="334"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">A newly-allocated #GVariant representing @info.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/gstdiscoverer.c"
+               line="2657">A newly-allocated #GVariant representing @info.</doc>
           <type name="GLib.Variant" c:type="GVariant*"/>
         </return-value>
         <parameters>
           <instance-parameter name="info" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstDiscovererInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/gstdiscoverer.c"
+                 line="2647">A #GstDiscovererInfo</doc>
             <type name="DiscovererInfo" c:type="GstDiscovererInfo*"/>
           </instance-parameter>
           <parameter name="flags" transfer-ownership="none">
-            <doc xml:space="preserve">A combination of #GstDiscovererSerializeFlags to specify
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/gstdiscoverer.c"
+                 line="2648">A combination of #GstDiscovererSerializeFlags to specify
 what needs to be serialized.</doc>
             <type name="DiscovererSerializeFlags"
                   c:type="GstDiscovererSerializeFlags"/>
@@ -1034,47 +1482,63 @@ what needs to be serialized.</doc>
     <record name="DiscovererPrivate"
             c:type="GstDiscovererPrivate"
             disguised="1">
+      <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                       line="356"/>
     </record>
     <enumeration name="DiscovererResult"
                  glib:type-name="GstDiscovererResult"
                  glib:get-type="gst_discoverer_result_get_type"
                  c:type="GstDiscovererResult">
-      <doc xml:space="preserve">Result values for the discovery process.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+           line="217">Result values for the discovery process.</doc>
       <member name="ok"
               value="0"
               c:identifier="GST_DISCOVERER_OK"
               glib:nick="ok">
-        <doc xml:space="preserve">The discovery was successful</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+             line="219">The discovery was successful</doc>
       </member>
       <member name="uri_invalid"
               value="1"
               c:identifier="GST_DISCOVERER_URI_INVALID"
               glib:nick="uri-invalid">
-        <doc xml:space="preserve">the URI is invalid</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+             line="220">the URI is invalid</doc>
       </member>
       <member name="error"
               value="2"
               c:identifier="GST_DISCOVERER_ERROR"
               glib:nick="error">
-        <doc xml:space="preserve">an error happened and the GError is set</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+             line="221">an error happened and the GError is set</doc>
       </member>
       <member name="timeout"
               value="3"
               c:identifier="GST_DISCOVERER_TIMEOUT"
               glib:nick="timeout">
-        <doc xml:space="preserve">the discovery timed-out</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+             line="222">the discovery timed-out</doc>
       </member>
       <member name="busy"
               value="4"
               c:identifier="GST_DISCOVERER_BUSY"
               glib:nick="busy">
-        <doc xml:space="preserve">the discoverer was already discovering a file</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+             line="223">the discoverer was already discovering a file</doc>
       </member>
       <member name="missing_plugins"
               value="5"
               c:identifier="GST_DISCOVERER_MISSING_PLUGINS"
               glib:nick="missing-plugins">
-        <doc xml:space="preserve">Some plugins are missing for full discovery</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+             line="224">Some plugins are missing for full discovery</doc>
       </member>
     </enumeration>
     <bitfield name="DiscovererSerializeFlags"
@@ -1082,38 +1546,50 @@ what needs to be serialized.</doc>
               glib:type-name="GstDiscovererSerializeFlags"
               glib:get-type="gst_discoverer_serialize_flags_get_type"
               c:type="GstDiscovererSerializeFlags">
-      <doc xml:space="preserve">You can use these flags to control what is serialized by
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+           line="237">You can use these flags to control what is serialized by
 gst_discoverer_info_to_variant()</doc>
       <member name="basic"
               value="0"
               c:identifier="GST_DISCOVERER_SERIALIZE_BASIC"
               glib:nick="basic">
-        <doc xml:space="preserve">Serialize only basic information, excluding
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+             line="239">Serialize only basic information, excluding
 caps, tags and miscellaneous information</doc>
       </member>
       <member name="caps"
               value="1"
               c:identifier="GST_DISCOVERER_SERIALIZE_CAPS"
               glib:nick="caps">
-        <doc xml:space="preserve">Serialize the caps for each stream</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+             line="241">Serialize the caps for each stream</doc>
       </member>
       <member name="tags"
               value="2"
               c:identifier="GST_DISCOVERER_SERIALIZE_TAGS"
               glib:nick="tags">
-        <doc xml:space="preserve">Serialize the tags for each stream</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+             line="242">Serialize the tags for each stream</doc>
       </member>
       <member name="misc"
               value="4"
               c:identifier="GST_DISCOVERER_SERIALIZE_MISC"
               glib:nick="misc">
-        <doc xml:space="preserve">Serialize miscellaneous information for each stream</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+             line="243">Serialize miscellaneous information for each stream</doc>
       </member>
       <member name="all"
               value="7"
               c:identifier="GST_DISCOVERER_SERIALIZE_ALL"
               glib:nick="all">
-        <doc xml:space="preserve">Serialize all the available info, including
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+             line="244">Serialize all the available info, including
 caps, tags and miscellaneous information</doc>
       </member>
     </bitfield>
@@ -1123,7 +1599,9 @@ caps, tags and miscellaneous information</doc>
            parent="GObject.Object"
            glib:type-name="GstDiscovererStreamInfo"
            glib:get-type="gst_discoverer_stream_info_get_type">
-      <doc xml:space="preserve">Base structure for information concerning a media stream. Depending on the
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+           line="41">Base structure for information concerning a media stream. Depending on the
 stream type, one can find more media-specific information in
 #GstDiscovererAudioInfo, #GstDiscovererVideoInfo, and
 #GstDiscovererContainerInfo.
@@ -1140,14 +1618,20 @@ corresponding to the AVI container, which in turn will have a
 for the audio and video streams respectively.</doc>
       <function name="list_free"
                 c:identifier="gst_discoverer_stream_info_list_free">
-        <doc xml:space="preserve">Decrements the reference count of all contained #GstDiscovererStreamInfo
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+             line="450">Decrements the reference count of all contained #GstDiscovererStreamInfo
 and fress the #GList.</doc>
+        <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                         line="341"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <parameter name="infos" transfer-ownership="none">
-            <doc xml:space="preserve">a #GList of #GstDiscovererStreamInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+                 line="452">a #GList of #GstDiscovererStreamInfo</doc>
             <type name="GLib.List" c:type="GList*">
               <type name="DiscovererStreamInfo"/>
             </type>
@@ -1156,14 +1640,20 @@ and fress the #GList.</doc>
       </function>
       <method name="get_caps"
               c:identifier="gst_discoverer_stream_info_get_caps">
+        <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                         line="70"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the #GstCaps of the stream. Unref with
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+               line="636">the #GstCaps of the stream. Unref with
 #gst_caps_unref after usage.</doc>
           <type name="Gst.Caps" c:type="GstCaps*"/>
         </return-value>
         <parameters>
           <instance-parameter name="info" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDiscovererStreamInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+                 line="634">a #GstDiscovererStreamInfo</doc>
             <type name="DiscovererStreamInfo"
                   c:type="GstDiscovererStreamInfo*"/>
           </instance-parameter>
@@ -1174,15 +1664,21 @@ and fress the #GList.</doc>
               deprecated="1">
         <doc-deprecated xml:space="preserve">This functions is deprecated since version 1.4, use
 #gst_discoverer_info_get_missing_elements_installer_details</doc-deprecated>
+        <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                         line="82"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">additional information regarding the stream (for
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+               line="702">additional information regarding the stream (for
 example codec version, profile, etc..). If you wish to use the #GstStructure
 after the life-time of @info you will need to copy it.</doc>
           <type name="Gst.Structure" c:type="const GstStructure*"/>
         </return-value>
         <parameters>
           <instance-parameter name="info" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDiscovererStreamInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+                 line="697">a #GstDiscovererStreamInfo</doc>
             <type name="DiscovererStreamInfo"
                   c:type="GstDiscovererStreamInfo*"/>
           </instance-parameter>
@@ -1190,15 +1686,21 @@ after the life-time of @info you will need to copy it.</doc>
       </method>
       <method name="get_next"
               c:identifier="gst_discoverer_stream_info_get_next">
+        <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                         line="67"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the next #GstDiscovererStreamInfo in a chain. %NULL
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+               line="617">the next #GstDiscovererStreamInfo in a chain. %NULL
 for final streams.
 Unref with #gst_discoverer_stream_info_unref after usage.</doc>
           <type name="DiscovererStreamInfo" c:type="GstDiscovererStreamInfo*"/>
         </return-value>
         <parameters>
           <instance-parameter name="info" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDiscovererStreamInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+                 line="615">a #GstDiscovererStreamInfo</doc>
             <type name="DiscovererStreamInfo"
                   c:type="GstDiscovererStreamInfo*"/>
           </instance-parameter>
@@ -1206,15 +1708,21 @@ Unref with #gst_discoverer_stream_info_unref after usage.</doc>
       </method>
       <method name="get_previous"
               c:identifier="gst_discoverer_stream_info_get_previous">
+        <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                         line="64"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the previous #GstDiscovererStreamInfo in a chain.
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+               line="599">the previous #GstDiscovererStreamInfo in a chain.
 %NULL for starting points. Unref with #gst_discoverer_stream_info_unref
 after usage.</doc>
           <type name="DiscovererStreamInfo" c:type="GstDiscovererStreamInfo*"/>
         </return-value>
         <parameters>
           <instance-parameter name="info" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDiscovererStreamInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+                 line="597">a #GstDiscovererStreamInfo</doc>
             <type name="DiscovererStreamInfo"
                   c:type="GstDiscovererStreamInfo*"/>
           </instance-parameter>
@@ -1222,14 +1730,20 @@ after usage.</doc>
       </method>
       <method name="get_stream_id"
               c:identifier="gst_discoverer_stream_info_get_stream_id">
+        <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                         line="79"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the stream ID of this stream. If you wish to
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+               line="683">the stream ID of this stream. If you wish to
 use the stream ID after the life-time of @info you will need to copy it.</doc>
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
         <parameters>
           <instance-parameter name="info" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDiscovererStreamInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+                 line="681">a #GstDiscovererStreamInfo</doc>
             <type name="DiscovererStreamInfo"
                   c:type="GstDiscovererStreamInfo*"/>
           </instance-parameter>
@@ -1237,14 +1751,20 @@ use the stream ID after the life-time of @info you will need to copy it.</doc>
       </method>
       <method name="get_stream_type_nick"
               c:identifier="gst_discoverer_stream_info_get_stream_type_nick">
+        <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                         line="85"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a human readable name for the stream type of the given @info (ex : "audio",
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+               line="564">a human readable name for the stream type of the given @info (ex : "audio",
 "container",...).</doc>
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
         <parameters>
           <instance-parameter name="info" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDiscovererStreamInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+                 line="562">a #GstDiscovererStreamInfo</doc>
             <type name="DiscovererStreamInfo"
                   c:type="GstDiscovererStreamInfo*"/>
           </instance-parameter>
@@ -1252,28 +1772,40 @@ use the stream ID after the life-time of @info you will need to copy it.</doc>
       </method>
       <method name="get_tags"
               c:identifier="gst_discoverer_stream_info_get_tags">
+        <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                         line="73"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the tags contained in this stream. If you wish to
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+               line="653">the tags contained in this stream. If you wish to
 use the tags after the life-time of @info you will need to copy them.</doc>
           <type name="Gst.TagList" c:type="const GstTagList*"/>
         </return-value>
         <parameters>
           <instance-parameter name="info" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDiscovererStreamInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+                 line="651">a #GstDiscovererStreamInfo</doc>
             <type name="DiscovererStreamInfo"
                   c:type="GstDiscovererStreamInfo*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_toc" c:identifier="gst_discoverer_stream_info_get_toc">
+        <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                         line="76"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the TOC contained in this stream. If you wish to
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+               line="668">the TOC contained in this stream. If you wish to
 use the TOC after the life-time of @info you will need to copy it.</doc>
           <type name="Gst.Toc" c:type="const GstToc*"/>
         </return-value>
         <parameters>
           <instance-parameter name="info" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDiscovererStreamInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+                 line="666">a #GstDiscovererStreamInfo</doc>
             <type name="DiscovererStreamInfo"
                   c:type="GstDiscovererStreamInfo*"/>
           </instance-parameter>
@@ -1286,17 +1818,25 @@ use the TOC after the life-time of @info you will need to copy it.</doc>
            parent="DiscovererStreamInfo"
            glib:type-name="GstDiscovererSubtitleInfo"
            glib:get-type="gst_discoverer_subtitle_info_get_type">
-      <doc xml:space="preserve">#GstDiscovererStreamInfo specific to subtitle streams (this includes text and
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+           line="196">#GstDiscovererStreamInfo specific to subtitle streams (this includes text and
 image based ones).</doc>
       <method name="get_language"
               c:identifier="gst_discoverer_subtitle_info_get_language">
+        <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                         line="215"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the language of the stream, or NULL if unknown.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+               line="943">the language of the stream, or NULL if unknown.</doc>
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
         <parameters>
           <instance-parameter name="info" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDiscovererSubtitleInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+                 line="941">a #GstDiscovererSubtitleInfo</doc>
             <type name="DiscovererSubtitleInfo"
                   c:type="const GstDiscovererSubtitleInfo*"/>
           </instance-parameter>
@@ -1309,16 +1849,24 @@ image based ones).</doc>
            parent="DiscovererStreamInfo"
            glib:type-name="GstDiscovererVideoInfo"
            glib:get-type="gst_discoverer_video_info_get_type">
-      <doc xml:space="preserve">#GstDiscovererStreamInfo specific to video streams (this includes images).</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+           line="146">#GstDiscovererStreamInfo specific to video streams (this includes images).</doc>
       <method name="get_bitrate"
               c:identifier="gst_discoverer_video_info_get_bitrate">
+        <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                         line="188"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the average or nominal bitrate of the video stream in bits/second.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+               line="903">the average or nominal bitrate of the video stream in bits/second.</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="info" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDiscovererVideoInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+                 line="901">a #GstDiscovererVideoInfo</doc>
             <type name="DiscovererVideoInfo"
                   c:type="const GstDiscovererVideoInfo*"/>
           </instance-parameter>
@@ -1326,13 +1874,19 @@ image based ones).</doc>
       </method>
       <method name="get_depth"
               c:identifier="gst_discoverer_video_info_get_depth">
+        <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                         line="170"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the depth in bits of the video stream.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+               line="844">the depth in bits of the video stream.</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="info" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDiscovererVideoInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+                 line="842">a #GstDiscovererVideoInfo</doc>
             <type name="DiscovererVideoInfo"
                   c:type="const GstDiscovererVideoInfo*"/>
           </instance-parameter>
@@ -1340,13 +1894,19 @@ image based ones).</doc>
       </method>
       <method name="get_framerate_denom"
               c:identifier="gst_discoverer_video_info_get_framerate_denom">
+        <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                         line="176"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the framerate of the video stream (denominator).</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+               line="862">the framerate of the video stream (denominator).</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="info" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDiscovererVideoInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+                 line="860">a #GstDiscovererVideoInfo</doc>
             <type name="DiscovererVideoInfo"
                   c:type="const GstDiscovererVideoInfo*"/>
           </instance-parameter>
@@ -1354,13 +1914,19 @@ image based ones).</doc>
       </method>
       <method name="get_framerate_num"
               c:identifier="gst_discoverer_video_info_get_framerate_num">
+        <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                         line="173"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the framerate of the video stream (numerator).</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+               line="853">the framerate of the video stream (numerator).</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="info" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDiscovererVideoInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+                 line="851">a #GstDiscovererVideoInfo</doc>
             <type name="DiscovererVideoInfo"
                   c:type="const GstDiscovererVideoInfo*"/>
           </instance-parameter>
@@ -1368,13 +1934,19 @@ image based ones).</doc>
       </method>
       <method name="get_height"
               c:identifier="gst_discoverer_video_info_get_height">
+        <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                         line="167"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the height of the video stream in pixels.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+               line="835">the height of the video stream in pixels.</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="info" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDiscovererVideoInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+                 line="833">a #GstDiscovererVideoInfo</doc>
             <type name="DiscovererVideoInfo"
                   c:type="const GstDiscovererVideoInfo*"/>
           </instance-parameter>
@@ -1382,13 +1954,19 @@ image based ones).</doc>
       </method>
       <method name="get_max_bitrate"
               c:identifier="gst_discoverer_video_info_get_max_bitrate">
+        <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                         line="191"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the maximum bitrate of the video stream in bits/second.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+               line="912">the maximum bitrate of the video stream in bits/second.</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="info" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDiscovererVideoInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+                 line="910">a #GstDiscovererVideoInfo</doc>
             <type name="DiscovererVideoInfo"
                   c:type="const GstDiscovererVideoInfo*"/>
           </instance-parameter>
@@ -1396,13 +1974,19 @@ image based ones).</doc>
       </method>
       <method name="get_par_denom"
               c:identifier="gst_discoverer_video_info_get_par_denom">
+        <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                         line="182"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the Pixel Aspect Ratio (PAR) of the video stream (denominator).</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+               line="880">the Pixel Aspect Ratio (PAR) of the video stream (denominator).</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="info" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDiscovererVideoInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+                 line="878">a #GstDiscovererVideoInfo</doc>
             <type name="DiscovererVideoInfo"
                   c:type="const GstDiscovererVideoInfo*"/>
           </instance-parameter>
@@ -1410,13 +1994,19 @@ image based ones).</doc>
       </method>
       <method name="get_par_num"
               c:identifier="gst_discoverer_video_info_get_par_num">
+        <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                         line="179"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the Pixel Aspect Ratio (PAR) of the video stream (numerator).</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+               line="871">the Pixel Aspect Ratio (PAR) of the video stream (numerator).</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="info" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDiscovererVideoInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+                 line="869">a #GstDiscovererVideoInfo</doc>
             <type name="DiscovererVideoInfo"
                   c:type="const GstDiscovererVideoInfo*"/>
           </instance-parameter>
@@ -1424,13 +2014,19 @@ image based ones).</doc>
       </method>
       <method name="get_width"
               c:identifier="gst_discoverer_video_info_get_width">
+        <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                         line="164"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the width of the video stream in pixels.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+               line="826">the width of the video stream in pixels.</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="info" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDiscovererVideoInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+                 line="824">a #GstDiscovererVideoInfo</doc>
             <type name="DiscovererVideoInfo"
                   c:type="const GstDiscovererVideoInfo*"/>
           </instance-parameter>
@@ -1438,14 +2034,20 @@ image based ones).</doc>
       </method>
       <method name="is_image"
               c:identifier="gst_discoverer_video_info_is_image">
+        <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                         line="194"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the video stream corresponds to an image (i.e. only contains
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+               line="921">%TRUE if the video stream corresponds to an image (i.e. only contains
 one frame).</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="info" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDiscovererVideoInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+                 line="919">a #GstDiscovererVideoInfo</doc>
             <type name="DiscovererVideoInfo"
                   c:type="const GstDiscovererVideoInfo*"/>
           </instance-parameter>
@@ -1453,62 +2055,138 @@ one frame).</doc>
       </method>
       <method name="is_interlaced"
               c:identifier="gst_discoverer_video_info_is_interlaced">
+        <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                         line="185"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the stream is interlaced, else %FALSE.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+               line="889">%TRUE if the stream is interlaced, else %FALSE.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="info" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstDiscovererVideoInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+                 line="887">a #GstDiscovererVideoInfo</doc>
             <type name="DiscovererVideoInfo"
                   c:type="const GstDiscovererVideoInfo*"/>
           </instance-parameter>
         </parameters>
       </method>
     </class>
+    <function-macro name="ENCODING_AUDIO_PROFILE"
+                    c:identifier="GST_ENCODING_AUDIO_PROFILE"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/pbutils/encoding-profile.h"
+                       line="93"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
     <constant name="ENCODING_CATEGORY_CAPTURE"
               value="capture"
               c:type="GST_ENCODING_CATEGORY_CAPTURE">
-      <doc xml:space="preserve">#GstEncodingTarget category for recording and capture.
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/encoding-target.h"
+           line="66">#GstEncodingTarget category for recording and capture.
 Targets within this category are optimized for low latency encoding.</doc>
+      <source-position filename="gst-libs/gst/pbutils/encoding-target.h"
+                       line="72"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="ENCODING_CATEGORY_DEVICE"
               value="device"
               c:type="GST_ENCODING_CATEGORY_DEVICE">
-      <doc xml:space="preserve">#GstEncodingTarget category for device-specific targets.
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/encoding-target.h"
+           line="35">#GstEncodingTarget category for device-specific targets.
 The name of the target will usually be the constructor and model of the device,
 and that target will contain #GstEncodingProfiles suitable for that device.</doc>
+      <source-position filename="gst-libs/gst/pbutils/encoding-target.h"
+                       line="42"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="ENCODING_CATEGORY_FILE_EXTENSION"
               value="file-extension"
               c:type="GST_ENCODING_CATEGORY_FILE_EXTENSION">
-      <doc xml:space="preserve">#GstEncodingTarget category for file extensions.
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/encoding-target.h"
+           line="74">#GstEncodingTarget category for file extensions.
 The name of the target will be the name of the file extensions possible
 for a particular target. Those targets are defining like 'default' formats
 usually used for a particular file extension.</doc>
+      <source-position filename="gst-libs/gst/pbutils/encoding-target.h"
+                       line="83"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="ENCODING_CATEGORY_ONLINE_SERVICE"
               value="online-service"
               c:type="GST_ENCODING_CATEGORY_ONLINE_SERVICE">
-      <doc xml:space="preserve">#GstEncodingTarget category for online-services.
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/encoding-target.h"
+           line="44">#GstEncodingTarget category for online-services.
 The name of the target will usually be the name of the online service
 and that target will contain #GstEncodingProfiles suitable for that online
 service.</doc>
+      <source-position filename="gst-libs/gst/pbutils/encoding-target.h"
+                       line="53"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="ENCODING_CATEGORY_STORAGE_EDITING"
               value="storage-editing"
               c:type="GST_ENCODING_CATEGORY_STORAGE_EDITING">
-      <doc xml:space="preserve">#GstEncodingTarget category for storage, archiving and editing targets.
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/encoding-target.h"
+           line="55">#GstEncodingTarget category for storage, archiving and editing targets.
 Those targets can be lossless and/or provide very fast random access content.
 The name of the target will usually be the container type or editing target,
 and that target will contain #GstEncodingProfiles suitable for editing or
 storage.</doc>
+      <source-position filename="gst-libs/gst/pbutils/encoding-target.h"
+                       line="64"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
+    <function-macro name="ENCODING_CONTAINER_PROFILE"
+                    c:identifier="GST_ENCODING_CONTAINER_PROFILE"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/pbutils/encoding-profile.h"
+                       line="57"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="ENCODING_PROFILE"
+                    c:identifier="GST_ENCODING_PROFILE"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/pbutils/encoding-profile.h"
+                       line="39"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="ENCODING_TARGET"
+                    c:identifier="GST_ENCODING_TARGET"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/pbutils/encoding-target.h"
+                       line="94"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="ENCODING_VIDEO_PROFILE"
+                    c:identifier="GST_ENCODING_VIDEO_PROFILE"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/pbutils/encoding-profile.h"
+                       line="75"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
     <class name="EncodingAudioProfile"
            c:symbol-prefix="encoding_audio_profile"
            c:type="GstEncodingAudioProfile"
@@ -1516,38 +2194,56 @@ storage.</doc>
            glib:type-name="GstEncodingAudioProfile"
            glib:get-type="gst_encoding_audio_profile_get_type"
            glib:type-struct="EncodingAudioProfileClass">
-      <doc xml:space="preserve">Variant of #GstEncodingProfile for audio streams.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/encoding-profile.h"
+           line="90">Variant of #GstEncodingProfile for audio streams.</doc>
+      <source-position filename="gst-libs/gst/pbutils/encoding-profile.h"
+                       line="102"/>
       <constructor name="new" c:identifier="gst_encoding_audio_profile_new">
-        <doc xml:space="preserve">Creates a new #GstEncodingAudioProfile
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/encoding-profile.c"
+             line="1182">Creates a new #GstEncodingAudioProfile
 
 All provided allocatable arguments will be internally copied, so can be
 safely freed/unreferenced after calling this method.</doc>
+        <source-position filename="gst-libs/gst/pbutils/encoding-profile.h"
+                         line="244"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the newly created #GstEncodingAudioProfile.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/encoding-profile.c"
+               line="1196">the newly created #GstEncodingAudioProfile.</doc>
           <type name="EncodingAudioProfile" c:type="GstEncodingAudioProfile*"/>
         </return-value>
         <parameters>
           <parameter name="format" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstCaps</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/encoding-profile.c"
+                 line="1184">the #GstCaps</doc>
             <type name="Gst.Caps" c:type="GstCaps*"/>
           </parameter>
           <parameter name="preset"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">the preset(s) to use on the encoder, can be %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/encoding-profile.c"
+                 line="1185">the preset(s) to use on the encoder, can be %NULL</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="restriction"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">the #GstCaps used to restrict the input to the encoder, can be
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/encoding-profile.c"
+                 line="1186">the #GstCaps used to restrict the input to the encoder, can be
 NULL. See gst_encoding_profile_get_restriction() for more details.</doc>
             <type name="Gst.Caps" c:type="GstCaps*"/>
           </parameter>
           <parameter name="presence" transfer-ownership="none">
-            <doc xml:space="preserve">the number of time this stream must be used. 0 means any number of
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/encoding-profile.c"
+                 line="1188">the number of time this stream must be used. 0 means any number of
  times (including never)</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
@@ -1558,6 +2254,8 @@ NULL. See gst_encoding_profile_get_restriction() for more details.</doc>
             c:type="GstEncodingAudioProfileClass"
             disguised="1"
             glib:is-gtype-struct-for="EncodingAudioProfile">
+      <source-position filename="gst-libs/gst/pbutils/encoding-profile.h"
+                       line="102"/>
     </record>
     <class name="EncodingContainerProfile"
            c:symbol-prefix="encoding_container_profile"
@@ -1566,12 +2264,22 @@ NULL. See gst_encoding_profile_get_restriction() for more details.</doc>
            glib:type-name="GstEncodingContainerProfile"
            glib:get-type="gst_encoding_container_profile_get_type"
            glib:type-struct="EncodingContainerProfileClass">
-      <doc xml:space="preserve">Encoding profiles for containers. Keeps track of a list of #GstEncodingProfile</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/encoding-profile.h"
+           line="52">Encoding profiles for containers. Keeps track of a list of #GstEncodingProfile</doc>
+      <source-position filename="gst-libs/gst/pbutils/encoding-profile.h"
+                       line="64"/>
       <constructor name="new"
                    c:identifier="gst_encoding_container_profile_new">
-        <doc xml:space="preserve">Creates a new #GstEncodingContainerProfile.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/encoding-profile.c"
+             line="1128">Creates a new #GstEncodingContainerProfile.</doc>
+        <source-position filename="gst-libs/gst/pbutils/encoding-profile.h"
+                         line="229"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">The newly created #GstEncodingContainerProfile.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/encoding-profile.c"
+               line="1138">The newly created #GstEncodingContainerProfile.</doc>
           <type name="EncodingContainerProfile"
                 c:type="GstEncodingContainerProfile*"/>
         </return-value>
@@ -1580,77 +2288,109 @@ NULL. See gst_encoding_profile_get_restriction() for more details.</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">The name of the container profile, can be %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/encoding-profile.c"
+                 line="1130">The name of the container profile, can be %NULL</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="description"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">The description of the container profile,
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/encoding-profile.c"
+                 line="1131">The description of the container profile,
     can be %NULL</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="format" transfer-ownership="none">
-            <doc xml:space="preserve">The format to use for this profile</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/encoding-profile.c"
+                 line="1133">The format to use for this profile</doc>
             <type name="Gst.Caps" c:type="GstCaps*"/>
           </parameter>
           <parameter name="preset"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">The preset to use for this profile.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/encoding-profile.c"
+                 line="1134">The preset to use for this profile.</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </constructor>
       <method name="add_profile"
               c:identifier="gst_encoding_container_profile_add_profile">
-        <doc xml:space="preserve">Add a #GstEncodingProfile to the list of profiles handled by @container.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/encoding-profile.c"
+             line="1069">Add a #GstEncodingProfile to the list of profiles handled by @container.
 
 No copy of @profile will be made, if you wish to use it elsewhere after this
 method you should increment its reference count.</doc>
+        <source-position filename="gst-libs/gst/pbutils/encoding-profile.h"
+                         line="217"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the @stream was properly added, else %FALSE.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/encoding-profile.c"
+               line="1079">%TRUE if the @stream was properly added, else %FALSE.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="container" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstEncodingContainerProfile to use</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/encoding-profile.c"
+                 line="1071">the #GstEncodingContainerProfile to use</doc>
             <type name="EncodingContainerProfile"
                   c:type="GstEncodingContainerProfile*"/>
           </instance-parameter>
           <parameter name="profile" transfer-ownership="full">
-            <doc xml:space="preserve">the #GstEncodingProfile to add.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/encoding-profile.c"
+                 line="1072">the #GstEncodingProfile to add.</doc>
             <type name="EncodingProfile" c:type="GstEncodingProfile*"/>
           </parameter>
         </parameters>
       </method>
       <method name="contains_profile"
               c:identifier="gst_encoding_container_profile_contains_profile">
-        <doc xml:space="preserve">Checks if @container contains a #GstEncodingProfile identical to
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/encoding-profile.c"
+             line="1047">Checks if @container contains a #GstEncodingProfile identical to
 @profile.</doc>
+        <source-position filename="gst-libs/gst/pbutils/encoding-profile.h"
+                         line="221"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if @container contains a #GstEncodingProfile identical
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/encoding-profile.c"
+               line="1055">%TRUE if @container contains a #GstEncodingProfile identical
 to @profile, else %FALSE.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="container" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstEncodingContainerProfile</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/encoding-profile.c"
+                 line="1049">a #GstEncodingContainerProfile</doc>
             <type name="EncodingContainerProfile"
                   c:type="GstEncodingContainerProfile*"/>
           </instance-parameter>
           <parameter name="profile" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstEncodingProfile</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/encoding-profile.c"
+                 line="1050">a #GstEncodingProfile</doc>
             <type name="EncodingProfile" c:type="GstEncodingProfile*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_profiles"
               c:identifier="gst_encoding_container_profile_get_profiles">
+        <source-position filename="gst-libs/gst/pbutils/encoding-profile.h"
+                         line="225"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/encoding-profile.c"
+               line="842">
 the list of contained #GstEncodingProfile.</doc>
           <type name="GLib.List" c:type="const GList*">
             <type name="EncodingProfile"/>
@@ -1658,7 +2398,9 @@ the list of contained #GstEncodingProfile.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="profile" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstEncodingContainerProfile</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/encoding-profile.c"
+                 line="840">a #GstEncodingContainerProfile</doc>
             <type name="EncodingContainerProfile"
                   c:type="GstEncodingContainerProfile*"/>
           </instance-parameter>
@@ -1669,6 +2411,8 @@ the list of contained #GstEncodingProfile.</doc>
             c:type="GstEncodingContainerProfileClass"
             disguised="1"
             glib:is-gtype-struct-for="EncodingContainerProfile">
+      <source-position filename="gst-libs/gst/pbutils/encoding-profile.h"
+                       line="64"/>
     </record>
     <class name="EncodingProfile"
            c:symbol-prefix="encoding_profile"
@@ -1677,24 +2421,38 @@ the list of contained #GstEncodingProfile.</doc>
            glib:type-name="GstEncodingProfile"
            glib:get-type="gst_encoding_profile_get_type"
            glib:type-struct="EncodingProfileClass">
-      <doc xml:space="preserve">The opaque base class object for all encoding profiles. This contains generic
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/encoding-profile.h"
+           line="31">The opaque base class object for all encoding profiles. This contains generic
 information like name, description, format and preset.</doc>
+      <source-position filename="gst-libs/gst/pbutils/encoding-profile.h"
+                       line="45"/>
       <function name="find" c:identifier="gst_encoding_profile_find">
-        <doc xml:space="preserve">Find the #GstEncodingProfile with the specified name and category.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/encoding-profile.c"
+             line="1444">Find the #GstEncodingProfile with the specified name and category.</doc>
+        <source-position filename="gst-libs/gst/pbutils/encoding-profile.h"
+                         line="204"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">The matching #GstEncodingProfile or %NULL.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/encoding-profile.c"
+               line="1453">The matching #GstEncodingProfile or %NULL.</doc>
           <type name="EncodingProfile" c:type="GstEncodingProfile*"/>
         </return-value>
         <parameters>
           <parameter name="targetname" transfer-ownership="none">
-            <doc xml:space="preserve">The name of the target</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/encoding-profile.c"
+                 line="1446">The name of the target</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="profilename"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">The name of the profile, if %NULL
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/encoding-profile.c"
+                 line="1447">The name of the profile, if %NULL
 provided, it will default to the encoding profile called `default`.</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
@@ -1702,166 +2460,244 @@ provided, it will default to the encoding profile called `default`.</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">The target category. Can be %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/encoding-profile.c"
+                 line="1449">The target category. Can be %NULL</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </function>
       <function name="from_discoverer"
                 c:identifier="gst_encoding_profile_from_discoverer">
-        <doc xml:space="preserve">Creates a #GstEncodingProfile matching the formats from the given
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/encoding-profile.c"
+             line="2026">Creates a #GstEncodingProfile matching the formats from the given
 #GstDiscovererInfo. Streams other than audio or video (eg,
 subtitles), are currently ignored.</doc>
+        <source-position filename="gst-libs/gst/pbutils/encoding-profile.h"
+                         line="264"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">The new #GstEncodingProfile or %NULL.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/encoding-profile.c"
+               line="2034">The new #GstEncodingProfile or %NULL.</doc>
           <type name="EncodingProfile" c:type="GstEncodingProfile*"/>
         </return-value>
         <parameters>
           <parameter name="info" transfer-ownership="none">
-            <doc xml:space="preserve">The #GstDiscovererInfo to read from</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/encoding-profile.c"
+                 line="2028">The #GstDiscovererInfo to read from</doc>
             <type name="DiscovererInfo" c:type="GstDiscovererInfo*"/>
           </parameter>
         </parameters>
       </function>
-      <method name="copy" c:identifier="gst_encoding_profile_copy">
-        <doc xml:space="preserve">Makes a deep copy of @self</doc>
+      <method name="copy"
+              c:identifier="gst_encoding_profile_copy"
+              version="1.12">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/encoding-profile.c"
+             line="2083">Makes a deep copy of @self</doc>
+        <source-position filename="gst-libs/gst/pbutils/encoding-profile.h"
+                         line="267"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">The copy of @self
-
-Since 1.12</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/encoding-profile.c"
+               line="2089">The copy of @self</doc>
           <type name="EncodingProfile" c:type="GstEncodingProfile*"/>
         </return-value>
         <parameters>
           <instance-parameter name="self" transfer-ownership="none">
-            <doc xml:space="preserve">The #GstEncodingProfile to copy</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/encoding-profile.c"
+                 line="2085">The #GstEncodingProfile to copy</doc>
             <type name="EncodingProfile" c:type="GstEncodingProfile*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_allow_dynamic_output"
               c:identifier="gst_encoding_profile_get_allow_dynamic_output">
-        <doc xml:space="preserve">Get whether the format that has been negotiated in at some point can be renegotiated
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/encoding-profile.c"
+             line="614">Get whether the format that has been negotiated in at some point can be renegotiated
 later during the encoding.</doc>
+        <source-position filename="gst-libs/gst/pbutils/encoding-profile.h"
+                         line="149"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="profile" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstEncodingProfile</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/encoding-profile.c"
+                 line="616">a #GstEncodingProfile</doc>
             <type name="EncodingProfile" c:type="GstEncodingProfile*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_description"
               c:identifier="gst_encoding_profile_get_description">
+        <source-position filename="gst-libs/gst/pbutils/encoding-profile.h"
+                         line="135"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the description of the profile, can be %NULL.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/encoding-profile.c"
+               line="457">the description of the profile, can be %NULL.</doc>
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
         <parameters>
           <instance-parameter name="profile" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstEncodingProfile</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/encoding-profile.c"
+                 line="455">a #GstEncodingProfile</doc>
             <type name="EncodingProfile" c:type="GstEncodingProfile*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_file_extension"
               c:identifier="gst_encoding_profile_get_file_extension">
+        <source-position filename="gst-libs/gst/pbutils/encoding-profile.h"
+                         line="201"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a suitable file extension for @profile, or NULL.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/encoding-profile.c"
+               line="1343">a suitable file extension for @profile, or NULL.</doc>
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
         <parameters>
           <instance-parameter name="profile" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstEncodingProfile</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/encoding-profile.c"
+                 line="1341">a #GstEncodingProfile</doc>
             <type name="EncodingProfile" c:type="GstEncodingProfile*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_format" c:identifier="gst_encoding_profile_get_format">
+        <source-position filename="gst-libs/gst/pbutils/encoding-profile.h"
+                         line="142"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the #GstCaps corresponding to the media format used
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/encoding-profile.c"
+               line="471">the #GstCaps corresponding to the media format used
 in the profile. Unref after usage.</doc>
           <type name="Gst.Caps" c:type="GstCaps*"/>
         </return-value>
         <parameters>
           <instance-parameter name="profile" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstEncodingProfile</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/encoding-profile.c"
+                 line="469">a #GstEncodingProfile</doc>
             <type name="EncodingProfile" c:type="GstEncodingProfile*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_input_caps"
               c:identifier="gst_encoding_profile_get_input_caps">
-        <doc xml:space="preserve">Computes the full output caps that this @profile will be able to consume.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/encoding-profile.c"
+             line="1227">Computes the full output caps that this @profile will be able to consume.</doc>
+        <source-position filename="gst-libs/gst/pbutils/encoding-profile.h"
+                         line="195"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">The full caps the given @profile can consume. Call
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/encoding-profile.c"
+               line="1233">The full caps the given @profile can consume. Call
 gst_caps_unref() when you are done with the caps.</doc>
           <type name="Gst.Caps" c:type="GstCaps*"/>
         </return-value>
         <parameters>
           <instance-parameter name="profile" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstEncodingProfile</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/encoding-profile.c"
+                 line="1229">a #GstEncodingProfile</doc>
             <type name="EncodingProfile" c:type="GstEncodingProfile*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_name" c:identifier="gst_encoding_profile_get_name">
+        <source-position filename="gst-libs/gst/pbutils/encoding-profile.h"
+                         line="128"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the name of the profile, can be %NULL.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/encoding-profile.c"
+               line="443">the name of the profile, can be %NULL.</doc>
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
         <parameters>
           <instance-parameter name="profile" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstEncodingProfile</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/encoding-profile.c"
+                 line="441">a #GstEncodingProfile</doc>
             <type name="EncodingProfile" c:type="GstEncodingProfile*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_presence"
               c:identifier="gst_encoding_profile_get_presence">
+        <source-position filename="gst-libs/gst/pbutils/encoding-profile.h"
+                         line="173"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The number of times the profile is used in its parent
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/encoding-profile.c"
+               line="515">The number of times the profile is used in its parent
 container profile. If 0, it is not a mandatory stream.</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="profile" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstEncodingProfile</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/encoding-profile.c"
+                 line="513">a #GstEncodingProfile</doc>
             <type name="EncodingProfile" c:type="GstEncodingProfile*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_preset" c:identifier="gst_encoding_profile_get_preset">
+        <source-position filename="gst-libs/gst/pbutils/encoding-profile.h"
+                         line="163"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the name of the #GstPreset to be used in the profile.
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/encoding-profile.c"
+               line="486">the name of the #GstPreset to be used in the profile.
 This is the name that has been set when saving the preset.</doc>
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
         <parameters>
           <instance-parameter name="profile" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstEncodingProfile</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/encoding-profile.c"
+                 line="484">a #GstEncodingProfile</doc>
             <type name="EncodingProfile" c:type="GstEncodingProfile*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_preset_name"
               c:identifier="gst_encoding_profile_get_preset_name">
+        <source-position filename="gst-libs/gst/pbutils/encoding-profile.h"
+                         line="166"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the name of the #GstPreset factory to be used in the profile.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/encoding-profile.c"
+               line="501">the name of the #GstPreset factory to be used in the profile.</doc>
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
         <parameters>
           <instance-parameter name="profile" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstEncodingProfile</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/encoding-profile.c"
+                 line="499">a #GstEncodingProfile</doc>
             <type name="EncodingProfile" c:type="GstEncodingProfile*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_restriction"
               c:identifier="gst_encoding_profile_get_restriction">
+        <source-position filename="gst-libs/gst/pbutils/encoding-profile.h"
+                         line="184"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">The restriction #GstCaps to apply before the encoder
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/encoding-profile.c"
+               line="546">The restriction #GstCaps to apply before the encoder
 that will be used in the profile. The fields present in restriction caps are
 properties of the raw stream (that is before encoding), such as height and
 width for video and depth and sampling rate for audio. Does not apply to
@@ -1871,25 +2707,57 @@ Can be %NULL. Unref after usage.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="profile" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstEncodingProfile</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/encoding-profile.c"
+                 line="544">a #GstEncodingProfile</doc>
+            <type name="EncodingProfile" c:type="GstEncodingProfile*"/>
+          </instance-parameter>
+        </parameters>
+      </method>
+      <method name="get_single_segment"
+              c:identifier="gst_encoding_profile_get_single_segment"
+              version="1.18">
+        <source-position filename="gst-libs/gst/pbutils/encoding-profile.h"
+                         line="156"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/encoding-profile.c"
+               line="651">#TRUE if the stream represented by @profile should use a single
+segment before the encoder, #FALSE otherwise. This means that buffers will be retimestamped
+and segments will be eat so as to appear as one segment.</doc>
+          <type name="gboolean" c:type="gboolean"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="profile" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/encoding-profile.c"
+                 line="649">a #GstEncodingProfile</doc>
             <type name="EncodingProfile" c:type="GstEncodingProfile*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_type_nick"
               c:identifier="gst_encoding_profile_get_type_nick">
+        <source-position filename="gst-libs/gst/pbutils/encoding-profile.h"
+                         line="198"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the human-readable name of the type of @profile.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/encoding-profile.c"
+               line="1287">the human-readable name of the type of @profile.</doc>
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
         <parameters>
           <instance-parameter name="profile" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstEncodingProfile</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/encoding-profile.c"
+                 line="1285">a #GstEncodingProfile</doc>
             <type name="EncodingProfile" c:type="GstEncodingProfile*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="is_enabled" c:identifier="gst_encoding_profile_is_enabled">
+        <source-position filename="gst-libs/gst/pbutils/encoding-profile.h"
+                         line="209"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -1900,36 +2768,54 @@ Can be %NULL. Unref after usage.</doc>
         </parameters>
       </method>
       <method name="is_equal" c:identifier="gst_encoding_profile_is_equal">
-        <doc xml:space="preserve">Checks whether the two #GstEncodingProfile are equal</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/encoding-profile.c"
+             line="1208">Checks whether the two #GstEncodingProfile are equal</doc>
+        <source-position filename="gst-libs/gst/pbutils/encoding-profile.h"
+                         line="191"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if @a and @b are equal, else %FALSE.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/encoding-profile.c"
+               line="1215">%TRUE if @a and @b are equal, else %FALSE.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="a" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstEncodingProfile</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/encoding-profile.c"
+                 line="1210">a #GstEncodingProfile</doc>
             <type name="EncodingProfile" c:type="GstEncodingProfile*"/>
           </instance-parameter>
           <parameter name="b" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstEncodingProfile</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/encoding-profile.c"
+                 line="1211">a #GstEncodingProfile</doc>
             <type name="EncodingProfile" c:type="GstEncodingProfile*"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_allow_dynamic_output"
               c:identifier="gst_encoding_profile_set_allow_dynamic_output">
-        <doc xml:space="preserve">Sets whether the format that has been negotiated in at some point can be renegotiated
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/encoding-profile.c"
+             line="629">Sets whether the format that has been negotiated in at some point can be renegotiated
 later during the encoding.</doc>
+        <source-position filename="gst-libs/gst/pbutils/encoding-profile.h"
+                         line="152"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="profile" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstEncodingProfile</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/encoding-profile.c"
+                 line="631">a #GstEncodingProfile</doc>
             <type name="EncodingProfile" c:type="GstEncodingProfile*"/>
           </instance-parameter>
           <parameter name="allow_dynamic_output" transfer-ownership="none">
-            <doc xml:space="preserve">Whether the format that has been negotiated first can be renegotiated
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/encoding-profile.c"
+                 line="632">Whether the format that has been negotiated first can be renegotiated
 during the encoding</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
@@ -1937,161 +2823,252 @@ during the encoding</doc>
       </method>
       <method name="set_description"
               c:identifier="gst_encoding_profile_set_description">
-        <doc xml:space="preserve">Set @description as the given description for the @profile. A copy of
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/encoding-profile.c"
+             line="579">Set @description as the given description for the @profile. A copy of
 @description will be made internally.</doc>
+        <source-position filename="gst-libs/gst/pbutils/encoding-profile.h"
+                         line="138"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="profile" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstEncodingProfile</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/encoding-profile.c"
+                 line="581">a #GstEncodingProfile</doc>
             <type name="EncodingProfile" c:type="GstEncodingProfile*"/>
           </instance-parameter>
           <parameter name="description"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">the description to set on the profile</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/encoding-profile.c"
+                 line="582">the description to set on the profile</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_enabled"
-              c:identifier="gst_encoding_profile_set_enabled">
-        <doc xml:space="preserve">Set whether the profile should be used or not.
-
-Since 1.6</doc>
+              c:identifier="gst_encoding_profile_set_enabled"
+              version="1.6">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/encoding-profile.c"
+             line="737">Set whether the profile should be used or not.</doc>
+        <source-position filename="gst-libs/gst/pbutils/encoding-profile.h"
+                         line="212"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="profile" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstEncodingProfile</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/encoding-profile.c"
+                 line="739">a #GstEncodingProfile</doc>
             <type name="EncodingProfile" c:type="GstEncodingProfile*"/>
           </instance-parameter>
           <parameter name="enabled" transfer-ownership="none">
-            <doc xml:space="preserve">%FALSE to disable #profile, %TRUE to enable it</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/encoding-profile.c"
+                 line="740">%FALSE to disable @profile, %TRUE to enable it</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_format" c:identifier="gst_encoding_profile_set_format">
-        <doc xml:space="preserve">Sets the media format used in the profile.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/encoding-profile.c"
+             line="597">Sets the media format used in the profile.</doc>
+        <source-position filename="gst-libs/gst/pbutils/encoding-profile.h"
+                         line="145"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="profile" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstEncodingProfile</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/encoding-profile.c"
+                 line="599">a #GstEncodingProfile</doc>
             <type name="EncodingProfile" c:type="GstEncodingProfile*"/>
           </instance-parameter>
           <parameter name="format" transfer-ownership="none">
-            <doc xml:space="preserve">the media format to use in the profile.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/encoding-profile.c"
+                 line="600">the media format to use in the profile.</doc>
             <type name="Gst.Caps" c:type="GstCaps*"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_name" c:identifier="gst_encoding_profile_set_name">
-        <doc xml:space="preserve">Set @name as the given name for the @profile. A copy of @name will be made
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/encoding-profile.c"
+             line="562">Set @name as the given name for the @profile. A copy of @name will be made
 internally.</doc>
+        <source-position filename="gst-libs/gst/pbutils/encoding-profile.h"
+                         line="131"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="profile" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstEncodingProfile</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/encoding-profile.c"
+                 line="564">a #GstEncodingProfile</doc>
             <type name="EncodingProfile" c:type="GstEncodingProfile*"/>
           </instance-parameter>
           <parameter name="name"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">the name to set on the profile</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/encoding-profile.c"
+                 line="565">the name to set on the profile</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_presence"
               c:identifier="gst_encoding_profile_set_presence">
-        <doc xml:space="preserve">Set the number of time the profile is used in its parent
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/encoding-profile.c"
+             line="721">Set the number of time the profile is used in its parent
 container profile. If 0, it is not a mandatory stream</doc>
+        <source-position filename="gst-libs/gst/pbutils/encoding-profile.h"
+                         line="176"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="profile" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstEncodingProfile</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/encoding-profile.c"
+                 line="723">a #GstEncodingProfile</doc>
             <type name="EncodingProfile" c:type="GstEncodingProfile*"/>
           </instance-parameter>
           <parameter name="presence" transfer-ownership="none">
-            <doc xml:space="preserve">the number of time the profile can be used</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/encoding-profile.c"
+                 line="724">the number of time the profile can be used</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_preset" c:identifier="gst_encoding_profile_set_preset">
-        <doc xml:space="preserve">Sets the name of the #GstElement that implements the #GstPreset interface
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/encoding-profile.c"
+             line="685">Sets the name of the #GstElement that implements the #GstPreset interface
 to use for the profile.
 This is the name that has been set when saving the preset.</doc>
+        <source-position filename="gst-libs/gst/pbutils/encoding-profile.h"
+                         line="169"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="profile" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstEncodingProfile</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/encoding-profile.c"
+                 line="687">a #GstEncodingProfile</doc>
             <type name="EncodingProfile" c:type="GstEncodingProfile*"/>
           </instance-parameter>
           <parameter name="preset"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">the element preset to use</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/encoding-profile.c"
+                 line="688">the element preset to use</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_preset_name"
               c:identifier="gst_encoding_profile_set_preset_name">
-        <doc xml:space="preserve">Sets the name of the #GstPreset's factory to be used in the profile.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/encoding-profile.c"
+             line="704">Sets the name of the #GstPreset's factory to be used in the profile.</doc>
+        <source-position filename="gst-libs/gst/pbutils/encoding-profile.h"
+                         line="180"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="profile" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstEncodingProfile</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/encoding-profile.c"
+                 line="706">a #GstEncodingProfile</doc>
             <type name="EncodingProfile" c:type="GstEncodingProfile*"/>
           </instance-parameter>
           <parameter name="preset_name"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">The name of the preset to use in this @profile.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/encoding-profile.c"
+                 line="707">The name of the preset to use in this @profile.</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_restriction"
               c:identifier="gst_encoding_profile_set_restriction">
-        <doc xml:space="preserve">Set the restriction #GstCaps to apply before the encoder
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/encoding-profile.c"
+             line="755">Set the restriction #GstCaps to apply before the encoder
 that will be used in the profile. See gst_encoding_profile_get_restriction()
 for more about restrictions. Does not apply to #GstEncodingContainerProfile.</doc>
+        <source-position filename="gst-libs/gst/pbutils/encoding-profile.h"
+                         line="187"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="profile" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstEncodingProfile</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/encoding-profile.c"
+                 line="757">a #GstEncodingProfile</doc>
             <type name="EncodingProfile" c:type="GstEncodingProfile*"/>
           </instance-parameter>
           <parameter name="restriction"
                      transfer-ownership="full"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">the restriction to apply</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/encoding-profile.c"
+                 line="758">the restriction to apply</doc>
             <type name="Gst.Caps" c:type="GstCaps*"/>
           </parameter>
         </parameters>
       </method>
+      <method name="set_single_segment"
+              c:identifier="gst_encoding_profile_set_single_segment"
+              version="1.18">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/encoding-profile.c"
+             line="665">If using a single segment, buffers will be retimestamped
+and segments will be eat so as to appear as one segment.</doc>
+        <source-position filename="gst-libs/gst/pbutils/encoding-profile.h"
+                         line="159"/>
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="profile" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/encoding-profile.c"
+                 line="667">a #GstEncodingProfile</doc>
+            <type name="EncodingProfile" c:type="GstEncodingProfile*"/>
+          </instance-parameter>
+          <parameter name="single_segment" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/encoding-profile.c"
+                 line="668">#TRUE if the stream represented by @profile should use a single
+segment before the encoder #FALSE otherwise.</doc>
+            <type name="gboolean" c:type="gboolean"/>
+          </parameter>
+        </parameters>
+      </method>
       <property name="restriction-caps" writable="1" transfer-ownership="none">
         <type name="Gst.Caps"/>
       </property>
@@ -2100,6 +3077,8 @@ for more about restrictions. Does not apply to #GstEncodingContainerProfile.</do
             c:type="GstEncodingProfileClass"
             disguised="1"
             glib:is-gtype-struct-for="EncodingProfile">
+      <source-position filename="gst-libs/gst/pbutils/encoding-profile.h"
+                       line="45"/>
     </record>
     <class name="EncodingTarget"
            c:symbol-prefix="encoding_target"
@@ -2107,43 +3086,59 @@ for more about restrictions. Does not apply to #GstEncodingContainerProfile.</do
            parent="GObject.Object"
            glib:type-name="GstEncodingTarget"
            glib:get-type="gst_encoding_target_get_type">
-      <doc xml:space="preserve">Collection of #GstEncodingProfile for a specific target or use-case.
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/encoding-target.h"
+           line="85">Collection of #GstEncodingProfile for a specific target or use-case.
 
 When being stored/loaded, targets come from a specific category, like
 #GST_ENCODING_CATEGORY_DEVICE.</doc>
       <constructor name="new" c:identifier="gst_encoding_target_new">
-        <doc xml:space="preserve">Creates a new #GstEncodingTarget.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/encoding-target.c"
+             line="253">Creates a new #GstEncodingTarget.
 
 The name and category can only consist of lowercase ASCII letters for the
 first character, followed by either lowercase ASCII letters, digits or
 hyphens ('-').
 
-The @category &lt;emphasis&gt;should&lt;/emphasis&gt; be one of the existing
+The @category *should* be one of the existing
 well-defined categories, like #GST_ENCODING_CATEGORY_DEVICE, but it
-&lt;emphasis&gt;can&lt;/emphasis&gt; be a application or user specific category if
+*can* be a application or user specific category if
 needed.</doc>
+        <source-position filename="gst-libs/gst/pbutils/encoding-target.h"
+                         line="125"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">The newly created #GstEncodingTarget or %NULL if
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/encoding-target.c"
+               line="274">The newly created #GstEncodingTarget or %NULL if
 there was an error.</doc>
           <type name="EncodingTarget" c:type="GstEncodingTarget*"/>
         </return-value>
         <parameters>
           <parameter name="name" transfer-ownership="none">
-            <doc xml:space="preserve">The name of the target.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/encoding-target.c"
+                 line="255">The name of the target.</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="category" transfer-ownership="none">
-            <doc xml:space="preserve">The name of the category to which this @target
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/encoding-target.c"
+                 line="256">The name of the category to which this @target
 belongs. For example: #GST_ENCODING_CATEGORY_DEVICE.</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="description" transfer-ownership="none">
-            <doc xml:space="preserve">A description of #GstEncodingTarget in the
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/encoding-target.c"
+                 line="258">A description of #GstEncodingTarget in the
 current locale.</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="profiles" transfer-ownership="none">
-            <doc xml:space="preserve">A #GList of
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/encoding-target.c"
+                 line="260">A #GList of
 #GstEncodingProfile.</doc>
             <type name="GLib.List" c:type="const GList*">
               <type name="EncodingProfile"/>
@@ -2152,18 +3147,26 @@ current locale.</doc>
         </parameters>
       </constructor>
       <function name="load" c:identifier="gst_encoding_target_load" throws="1">
-        <doc xml:space="preserve">Searches for the #GstEncodingTarget with the given name, loads it
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/encoding-target.c"
+             line="858">Searches for the #GstEncodingTarget with the given name, loads it
 and returns it.
 
 If the category name is specified only targets from that category will be
 searched for.</doc>
+        <source-position filename="gst-libs/gst/pbutils/encoding-target.h"
+                         line="160"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">The #GstEncodingTarget if available, else %NULL.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/encoding-target.c"
+               line="873">The #GstEncodingTarget if available, else %NULL.</doc>
           <type name="EncodingTarget" c:type="GstEncodingTarget*"/>
         </return-value>
         <parameters>
           <parameter name="name" transfer-ownership="none">
-            <doc xml:space="preserve">the name of the #GstEncodingTarget to load (automatically
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/encoding-target.c"
+                 line="860">the name of the #GstEncodingTarget to load (automatically
 converted to lower case internally as capital letters are not
 valid for target names).</doc>
             <type name="utf8" c:type="const gchar*"/>
@@ -2172,7 +3175,9 @@ valid for target names).</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">the name of the target category, like
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/encoding-target.c"
+                 line="863">the name of the target category, like
 #GST_ENCODING_CATEGORY_DEVICE. Can be %NULL</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
@@ -2181,102 +3186,150 @@ valid for target names).</doc>
       <function name="load_from_file"
                 c:identifier="gst_encoding_target_load_from_file"
                 throws="1">
-        <doc xml:space="preserve">Opens the provided file and returns the contained #GstEncodingTarget.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/encoding-target.c"
+             line="758">Opens the provided file and returns the contained #GstEncodingTarget.</doc>
+        <source-position filename="gst-libs/gst/pbutils/encoding-target.h"
+                         line="165"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">The #GstEncodingTarget contained in the file, else
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/encoding-target.c"
+               line="765">The #GstEncodingTarget contained in the file, else
 %NULL</doc>
           <type name="EncodingTarget" c:type="GstEncodingTarget*"/>
         </return-value>
         <parameters>
           <parameter name="filepath" transfer-ownership="none">
-            <doc xml:space="preserve">The file location to load the #GstEncodingTarget from</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/encoding-target.c"
+                 line="760">The file location to load the #GstEncodingTarget from</doc>
             <type name="filename" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </function>
       <method name="add_profile"
               c:identifier="gst_encoding_target_add_profile">
-        <doc xml:space="preserve">Adds the given @profile to the @target. Each added profile must have
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/encoding-target.c"
+             line="322">Adds the given @profile to the @target. Each added profile must have
 a unique name within the profile.
 
 The @target will steal a reference to the @profile. If you wish to use
 the profile after calling this method, you should increase its reference
 count.</doc>
+        <source-position filename="gst-libs/gst/pbutils/encoding-target.h"
+                         line="147"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the profile was added, else %FALSE.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/encoding-target.c"
+               line="334">%TRUE if the profile was added, else %FALSE.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="target" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstEncodingTarget to add a profile to</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/encoding-target.c"
+                 line="324">the #GstEncodingTarget to add a profile to</doc>
             <type name="EncodingTarget" c:type="GstEncodingTarget*"/>
           </instance-parameter>
           <parameter name="profile" transfer-ownership="full">
-            <doc xml:space="preserve">the #GstEncodingProfile to add</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/encoding-target.c"
+                 line="325">the #GstEncodingProfile to add</doc>
             <type name="EncodingProfile" c:type="GstEncodingProfile*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_category"
               c:identifier="gst_encoding_target_get_category">
+        <source-position filename="gst-libs/gst/pbutils/encoding-target.h"
+                         line="134"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The category of the @target. For example:
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/encoding-target.c"
+               line="153">The category of the @target. For example:
 #GST_ENCODING_CATEGORY_DEVICE.</doc>
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
         <parameters>
           <instance-parameter name="target" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstEncodingTarget</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/encoding-target.c"
+                 line="151">a #GstEncodingTarget</doc>
             <type name="EncodingTarget" c:type="GstEncodingTarget*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_description"
               c:identifier="gst_encoding_target_get_description">
+        <source-position filename="gst-libs/gst/pbutils/encoding-target.h"
+                         line="137"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The description of the @target.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/encoding-target.c"
+               line="166">The description of the @target.</doc>
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
         <parameters>
           <instance-parameter name="target" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstEncodingTarget</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/encoding-target.c"
+                 line="164">a #GstEncodingTarget</doc>
             <type name="EncodingTarget" c:type="GstEncodingTarget*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_name" c:identifier="gst_encoding_target_get_name">
+        <source-position filename="gst-libs/gst/pbutils/encoding-target.h"
+                         line="131"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The name of the @target.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/encoding-target.c"
+               line="141">The name of the @target.</doc>
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
         <parameters>
           <instance-parameter name="target" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstEncodingTarget</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/encoding-target.c"
+                 line="139">a #GstEncodingTarget</doc>
             <type name="EncodingTarget" c:type="GstEncodingTarget*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_profile"
               c:identifier="gst_encoding_target_get_profile">
+        <source-position filename="gst-libs/gst/pbutils/encoding-target.h"
+                         line="143"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">The matching #GstEncodingProfile, or %NULL.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/encoding-target.c"
+               line="192">The matching #GstEncodingProfile, or %NULL.</doc>
           <type name="EncodingProfile" c:type="GstEncodingProfile*"/>
         </return-value>
         <parameters>
           <instance-parameter name="target" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstEncodingTarget</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/encoding-target.c"
+                 line="189">a #GstEncodingTarget</doc>
             <type name="EncodingTarget" c:type="GstEncodingTarget*"/>
           </instance-parameter>
           <parameter name="name" transfer-ownership="none">
-            <doc xml:space="preserve">the name of the profile to retrieve</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/encoding-target.c"
+                 line="190">the name of the profile to retrieve</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_profiles"
               c:identifier="gst_encoding_target_get_profiles">
+        <source-position filename="gst-libs/gst/pbutils/encoding-target.h"
+                         line="140"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">A list of
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/encoding-target.c"
+               line="178">A list of
 #GstEncodingProfile(s) this @target handles.</doc>
           <type name="GLib.List" c:type="const GList*">
             <type name="EncodingProfile"/>
@@ -2284,20 +3337,30 @@ count.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="target" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstEncodingTarget</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/encoding-target.c"
+                 line="176">a #GstEncodingTarget</doc>
             <type name="EncodingTarget" c:type="GstEncodingTarget*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="save" c:identifier="gst_encoding_target_save" throws="1">
-        <doc xml:space="preserve">Saves the @target to a default user-local directory.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/encoding-target.c"
+             line="1042">Saves the @target to a default user-local directory.</doc>
+        <source-position filename="gst-libs/gst/pbutils/encoding-target.h"
+                         line="151"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the target was correctly saved, else %FALSE.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/encoding-target.c"
+               line="1049">%TRUE if the target was correctly saved, else %FALSE.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="target" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstEncodingTarget</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/encoding-target.c"
+                 line="1044">a #GstEncodingTarget</doc>
             <type name="EncodingTarget" c:type="GstEncodingTarget*"/>
           </instance-parameter>
         </parameters>
@@ -2305,18 +3368,28 @@ count.</doc>
       <method name="save_to_file"
               c:identifier="gst_encoding_target_save_to_file"
               throws="1">
-        <doc xml:space="preserve">Saves the @target to the provided file location.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/encoding-target.c"
+             line="974">Saves the @target to the provided file location.</doc>
+        <source-position filename="gst-libs/gst/pbutils/encoding-target.h"
+                         line="155"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the target was correctly saved, else %FALSE.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/encoding-target.c"
+               line="982">%TRUE if the target was correctly saved, else %FALSE.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="target" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstEncodingTarget</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/encoding-target.c"
+                 line="976">a #GstEncodingTarget</doc>
             <type name="EncodingTarget" c:type="GstEncodingTarget*"/>
           </instance-parameter>
           <parameter name="filepath" transfer-ownership="none">
-            <doc xml:space="preserve">the location to store the @target at.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/encoding-target.c"
+                 line="977">the location to store the @target at.</doc>
             <type name="filename" c:type="const gchar*"/>
           </parameter>
         </parameters>
@@ -2329,9 +3402,15 @@ count.</doc>
            glib:type-name="GstEncodingVideoProfile"
            glib:get-type="gst_encoding_video_profile_get_type"
            glib:type-struct="EncodingVideoProfileClass">
-      <doc xml:space="preserve">Variant of #GstEncodingProfile for video streams, allows specifying the @pass.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/encoding-profile.h"
+           line="71">Variant of #GstEncodingProfile for video streams, allows specifying the @pass.</doc>
+      <source-position filename="gst-libs/gst/pbutils/encoding-profile.h"
+                       line="83"/>
       <constructor name="new" c:identifier="gst_encoding_video_profile_new">
-        <doc xml:space="preserve">Creates a new #GstEncodingVideoProfile
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/encoding-profile.c"
+             line="1151">Creates a new #GstEncodingVideoProfile
 
 All provided allocatable arguments will be internally copied, so can be
 safely freed/unreferenced after calling this method.
@@ -2341,32 +3420,44 @@ please refer to the gst_encoding_video_profile_set_pass() documentation.
 
 If you wish to use/force a constant framerate please refer to the
 gst_encoding_video_profile_set_variableframerate() documentation.</doc>
+        <source-position filename="gst-libs/gst/pbutils/encoding-profile.h"
+                         line="238"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the newly created #GstEncodingVideoProfile.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/encoding-profile.c"
+               line="1171">the newly created #GstEncodingVideoProfile.</doc>
           <type name="EncodingVideoProfile" c:type="GstEncodingVideoProfile*"/>
         </return-value>
         <parameters>
           <parameter name="format" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstCaps</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/encoding-profile.c"
+                 line="1153">the #GstCaps</doc>
             <type name="Gst.Caps" c:type="GstCaps*"/>
           </parameter>
           <parameter name="preset"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">the preset(s) to use on the encoder, can be %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/encoding-profile.c"
+                 line="1154">the preset(s) to use on the encoder, can be %NULL</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="restriction"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">the #GstCaps used to restrict the input to the encoder, can be
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/encoding-profile.c"
+                 line="1155">the #GstCaps used to restrict the input to the encoder, can be
 NULL. See gst_encoding_profile_get_restriction() for more details.</doc>
             <type name="Gst.Caps" c:type="GstCaps*"/>
           </parameter>
           <parameter name="presence" transfer-ownership="none">
-            <doc xml:space="preserve">the number of time this stream must be used. 0 means any number of
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/encoding-profile.c"
+                 line="1157">the number of time this stream must be used. 0 means any number of
  times (including never)</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
@@ -2374,15 +3465,23 @@ NULL. See gst_encoding_profile_get_restriction() for more details.</doc>
       </constructor>
       <method name="get_pass"
               c:identifier="gst_encoding_video_profile_get_pass">
-        <doc xml:space="preserve">Get the pass number if this is part of a multi-pass profile.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/encoding-profile.c"
+             line="895">Get the pass number if this is part of a multi-pass profile.</doc>
+        <source-position filename="gst-libs/gst/pbutils/encoding-profile.h"
+                         line="250"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The pass number. Starts at 1 for multi-pass. 0 if this is
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/encoding-profile.c"
+               line="901">The pass number. Starts at 1 for multi-pass. 0 if this is
 not a multi-pass profile</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="prof" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstEncodingVideoProfile</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/encoding-profile.c"
+                 line="897">a #GstEncodingVideoProfile</doc>
             <type name="EncodingVideoProfile"
                   c:type="GstEncodingVideoProfile*"/>
           </instance-parameter>
@@ -2390,13 +3489,19 @@ not a multi-pass profile</doc>
       </method>
       <method name="get_variableframerate"
               c:identifier="gst_encoding_video_profile_get_variableframerate">
+        <source-position filename="gst-libs/gst/pbutils/encoding-profile.h"
+                         line="253"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">Whether non-constant video framerate is allowed for encoding.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/encoding-profile.c"
+               line="916">Whether non-constant video framerate is allowed for encoding.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="prof" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstEncodingVideoProfile</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/encoding-profile.c"
+                 line="914">a #GstEncodingVideoProfile</doc>
             <type name="EncodingVideoProfile"
                   c:type="GstEncodingVideoProfile*"/>
           </instance-parameter>
@@ -2404,41 +3509,57 @@ not a multi-pass profile</doc>
       </method>
       <method name="set_pass"
               c:identifier="gst_encoding_video_profile_set_pass">
-        <doc xml:space="preserve">Sets the pass number of this video profile. The first pass profile should have
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/encoding-profile.c"
+             line="927">Sets the pass number of this video profile. The first pass profile should have
 this value set to 1. If this video profile isn't part of a multi-pass profile,
 you may set it to 0 (the default value).</doc>
+        <source-position filename="gst-libs/gst/pbutils/encoding-profile.h"
+                         line="256"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="prof" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstEncodingVideoProfile</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/encoding-profile.c"
+                 line="929">a #GstEncodingVideoProfile</doc>
             <type name="EncodingVideoProfile"
                   c:type="GstEncodingVideoProfile*"/>
           </instance-parameter>
           <parameter name="pass" transfer-ownership="none">
-            <doc xml:space="preserve">the pass number for this profile</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/encoding-profile.c"
+                 line="930">the pass number for this profile</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_variableframerate"
               c:identifier="gst_encoding_video_profile_set_variableframerate">
-        <doc xml:space="preserve">If set to %TRUE, then the incoming stream will be allowed to have non-constant
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/encoding-profile.c"
+             line="944">If set to %TRUE, then the incoming stream will be allowed to have non-constant
 framerate. If set to %FALSE (default value), then the incoming stream will
 be normalized by dropping/duplicating frames in order to produce a
 constance framerate.</doc>
+        <source-position filename="gst-libs/gst/pbutils/encoding-profile.h"
+                         line="260"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="prof" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstEncodingVideoProfile</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/encoding-profile.c"
+                 line="946">a #GstEncodingVideoProfile</doc>
             <type name="EncodingVideoProfile"
                   c:type="GstEncodingVideoProfile*"/>
           </instance-parameter>
           <parameter name="variableframerate" transfer-ownership="none">
-            <doc xml:space="preserve">a boolean</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/encoding-profile.c"
+                 line="947">a boolean</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
@@ -2448,24 +3569,188 @@ constance framerate.</doc>
             c:type="GstEncodingVideoProfileClass"
             disguised="1"
             glib:is-gtype-struct-for="EncodingVideoProfile">
+      <source-position filename="gst-libs/gst/pbutils/encoding-profile.h"
+                       line="83"/>
     </record>
+    <function-macro name="IS_DISCOVERER"
+                    c:identifier="GST_IS_DISCOVERER"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                       line="342"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_DISCOVERER_AUDIO_INFO"
+                    c:identifier="GST_IS_DISCOVERER_AUDIO_INFO"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                       line="114"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_DISCOVERER_CLASS"
+                    c:identifier="GST_IS_DISCOVERER_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                       line="344"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_DISCOVERER_CONTAINER_INFO"
+                    c:identifier="GST_IS_DISCOVERER_CONTAINER_INFO"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                       line="94"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_DISCOVERER_INFO"
+                    c:identifier="GST_IS_DISCOVERER_INFO"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                       line="266"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_DISCOVERER_STREAM_INFO"
+                    c:identifier="GST_IS_DISCOVERER_STREAM_INFO"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                       line="32"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_DISCOVERER_SUBTITLE_INFO"
+                    c:identifier="GST_IS_DISCOVERER_SUBTITLE_INFO"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                       line="201"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_DISCOVERER_VIDEO_INFO"
+                    c:identifier="GST_IS_DISCOVERER_VIDEO_INFO"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                       line="151"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_ENCODING_AUDIO_PROFILE"
+                    c:identifier="GST_IS_ENCODING_AUDIO_PROFILE"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/pbutils/encoding-profile.h"
+                       line="95"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_ENCODING_CONTAINER_PROFILE"
+                    c:identifier="GST_IS_ENCODING_CONTAINER_PROFILE"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/pbutils/encoding-profile.h"
+                       line="59"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_ENCODING_PROFILE"
+                    c:identifier="GST_IS_ENCODING_PROFILE"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/pbutils/encoding-profile.h"
+                       line="41"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_ENCODING_TARGET"
+                    c:identifier="GST_IS_ENCODING_TARGET"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/pbutils/encoding-target.h"
+                       line="96"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_ENCODING_VIDEO_PROFILE"
+                    c:identifier="GST_IS_ENCODING_VIDEO_PROFILE"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/pbutils/encoding-profile.h"
+                       line="77"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_SYNAESTHESIA"
+                    c:identifier="GST_IS_SYNAESTHESIA"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/pbutils/gstaudiovisualizer.h"
+                       line="39"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_SYNAESTHESIA_CLASS"
+                    c:identifier="GST_IS_SYNAESTHESIA_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/pbutils/gstaudiovisualizer.h"
+                       line="40"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
     <record name="InstallPluginsContext"
             c:type="GstInstallPluginsContext"
             glib:type-name="GstInstallPluginsContext"
             glib:get-type="gst_install_plugins_context_get_type"
             c:symbol-prefix="install_plugins_context">
-      <doc xml:space="preserve">Opaque context structure for the plugin installation. Use the provided
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/install-plugins.h"
+           line="90">Opaque context structure for the plugin installation. Use the provided
 API to set details on it.</doc>
+      <source-position filename="gst-libs/gst/pbutils/install-plugins.h"
+                       line="99"/>
       <constructor name="new" c:identifier="gst_install_plugins_context_new">
-        <doc xml:space="preserve">Creates a new #GstInstallPluginsContext.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/install-plugins.c"
+             line="415">Creates a new #GstInstallPluginsContext.</doc>
+        <source-position filename="gst-libs/gst/pbutils/install-plugins.h"
+                         line="102"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new #GstInstallPluginsContext. Free with
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/install-plugins.c"
+               line="420">a new #GstInstallPluginsContext. Free with
 gst_install_plugins_context_free() when no longer needed</doc>
           <type name="InstallPluginsContext"
                 c:type="GstInstallPluginsContext*"/>
         </return-value>
       </constructor>
       <method name="copy" c:identifier="gst_install_plugins_context_copy">
+        <source-position filename="gst-libs/gst/pbutils/install-plugins.h"
+                         line="105"/>
         <return-value transfer-ownership="full">
           <type name="InstallPluginsContext"
                 c:type="GstInstallPluginsContext*"/>
@@ -2478,13 +3763,19 @@ gst_install_plugins_context_free() when no longer needed</doc>
         </parameters>
       </method>
       <method name="free" c:identifier="gst_install_plugins_context_free">
-        <doc xml:space="preserve">Frees a #GstInstallPluginsContext.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/install-plugins.c"
+             line="429">Frees a #GstInstallPluginsContext.</doc>
+        <source-position filename="gst-libs/gst/pbutils/install-plugins.h"
+                         line="107"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="ctx" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstInstallPluginsContext</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/install-plugins.c"
+                 line="431">a #GstInstallPluginsContext</doc>
             <type name="InstallPluginsContext"
                   c:type="GstInstallPluginsContext*"/>
           </instance-parameter>
@@ -2493,22 +3784,30 @@ gst_install_plugins_context_free() when no longer needed</doc>
       <method name="set_confirm_search"
               c:identifier="gst_install_plugins_context_set_confirm_search"
               version="1.6">
-        <doc xml:space="preserve">This function is used to tell the external installer process whether it
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/install-plugins.c"
+             line="294">This function is used to tell the external installer process whether it
 should ask for confirmation or not before searching for missing plugins.
 
 If set, this option will be passed to the installer via a
 --interaction=[show-confirm-search|hide-confirm-search] command line option.</doc>
+        <source-position filename="gst-libs/gst/pbutils/install-plugins.h"
+                         line="110"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="ctx" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstInstallPluginsContext</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/install-plugins.c"
+                 line="296">a #GstInstallPluginsContext</doc>
             <type name="InstallPluginsContext"
                   c:type="GstInstallPluginsContext*"/>
           </instance-parameter>
           <parameter name="confirm_search" transfer-ownership="none">
-            <doc xml:space="preserve">whether to ask for confirmation before searching for plugins</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/install-plugins.c"
+                 line="297">whether to ask for confirmation before searching for plugins</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
@@ -2516,7 +3815,9 @@ If set, this option will be passed to the installer via a
       <method name="set_desktop_id"
               c:identifier="gst_install_plugins_context_set_desktop_id"
               version="1.6">
-        <doc xml:space="preserve">This function is used to pass the calling application's desktop file ID to
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/install-plugins.c"
+             line="319">This function is used to pass the calling application's desktop file ID to
 the external installer process.
 
 A desktop file ID is the basename of the desktop file, including the
@@ -2524,17 +3825,23 @@ A desktop file ID is the basename of the desktop file, including the
 
 If set, the desktop file ID will be passed to the installer via a
 --desktop-id= command line option.</doc>
+        <source-position filename="gst-libs/gst/pbutils/install-plugins.h"
+                         line="114"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="ctx" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstInstallPluginsContext</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/install-plugins.c"
+                 line="321">a #GstInstallPluginsContext</doc>
             <type name="InstallPluginsContext"
                   c:type="GstInstallPluginsContext*"/>
           </instance-parameter>
           <parameter name="desktop_id" transfer-ownership="none">
-            <doc xml:space="preserve">the desktop file ID of the calling application</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/install-plugins.c"
+                 line="322">the desktop file ID of the calling application</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
@@ -2542,7 +3849,9 @@ If set, the desktop file ID will be passed to the installer via a
       <method name="set_startup_notification_id"
               c:identifier="gst_install_plugins_context_set_startup_notification_id"
               version="1.6">
-        <doc xml:space="preserve">Sets the startup notification ID for the launched process.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/install-plugins.c"
+             line="344">Sets the startup notification ID for the launched process.
 
 This is typically used to to pass the current X11 event timestamp to the
 external installer process.
@@ -2560,24 +3869,32 @@ like this:
   startup_id = g_strdup_printf ("_TIME%u", timestamp);
 ...
 ]|</doc>
+        <source-position filename="gst-libs/gst/pbutils/install-plugins.h"
+                         line="118"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="ctx" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstInstallPluginsContext</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/install-plugins.c"
+                 line="346">a #GstInstallPluginsContext</doc>
             <type name="InstallPluginsContext"
                   c:type="GstInstallPluginsContext*"/>
           </instance-parameter>
           <parameter name="startup_id" transfer-ownership="none">
-            <doc xml:space="preserve">the startup notification ID</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/install-plugins.c"
+                 line="347">the startup notification ID</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_xid"
               c:identifier="gst_install_plugins_context_set_xid">
-        <doc xml:space="preserve">This function is for X11-based applications (such as most Gtk/Qt
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/install-plugins.c"
+             line="378">This function is for X11-based applications (such as most Gtk/Qt
 applications on linux/unix) only. You can use it to tell the external
 installer the XID of your main application window. That way the installer
 can make its own window transient to your application window during the
@@ -2599,17 +3916,23 @@ window like this:
 ##endif
 ...
 ]|</doc>
+        <source-position filename="gst-libs/gst/pbutils/install-plugins.h"
+                         line="122"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="ctx" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstInstallPluginsContext</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/install-plugins.c"
+                 line="380">a #GstInstallPluginsContext</doc>
             <type name="InstallPluginsContext"
                   c:type="GstInstallPluginsContext*"/>
           </instance-parameter>
           <parameter name="xid" transfer-ownership="none">
-            <doc xml:space="preserve">the XWindow ID (XID) of the top-level application</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/install-plugins.c"
+                 line="381">the XWindow ID (XID) of the top-level application</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
@@ -2617,15 +3940,21 @@ window like this:
     </record>
     <callback name="InstallPluginsResultFunc"
               c:type="GstInstallPluginsResultFunc">
-      <doc xml:space="preserve">The prototype of the callback function that will be called once the
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/install-plugins.h"
+           line="128">The prototype of the callback function that will be called once the
 external plugin installer program has returned. You only need to provide
 a callback function if you are using the asynchronous interface.</doc>
+      <source-position filename="gst-libs/gst/pbutils/install-plugins.h"
+                       line="137"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="result" transfer-ownership="none">
-          <doc xml:space="preserve">whether the installation of the requested plugins succeeded or not</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/install-plugins.h"
+               line="130">whether the installation of the requested plugins succeeded or not</doc>
           <type name="InstallPluginsReturn" c:type="GstInstallPluginsReturn"/>
         </parameter>
         <parameter name="user_data"
@@ -2633,7 +3962,9 @@ a callback function if you are using the asynchronous interface.</doc>
                    nullable="1"
                    allow-none="1"
                    closure="1">
-          <doc xml:space="preserve">the user data passed to gst_install_plugins_async()</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/install-plugins.h"
+               line="131">the user data passed to gst_install_plugins_async()</doc>
           <type name="gpointer" c:type="gpointer"/>
         </parameter>
       </parameters>
@@ -2642,7 +3973,9 @@ a callback function if you are using the asynchronous interface.</doc>
                  glib:type-name="GstInstallPluginsReturn"
                  glib:get-type="gst_install_plugins_return_get_type"
                  c:type="GstInstallPluginsReturn">
-      <doc xml:space="preserve">Result codes returned by gst_install_plugins_async() and
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/install-plugins.h"
+           line="33">Result codes returned by gst_install_plugins_async() and
 gst_install_plugins_sync(), and also the result code passed to the
 #GstInstallPluginsResultFunc specified with gst_install_plugins_async().
 
@@ -2652,14 +3985,18 @@ program and to what extent the requested plugins could be installed.</doc>
               value="0"
               c:identifier="GST_INSTALL_PLUGINS_SUCCESS"
               glib:nick="success">
-        <doc xml:space="preserve">all of the requested plugins could be
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/install-plugins.h"
+             line="35">all of the requested plugins could be
     installed</doc>
       </member>
       <member name="not_found"
               value="1"
               c:identifier="GST_INSTALL_PLUGINS_NOT_FOUND"
               glib:nick="not-found">
-        <doc xml:space="preserve">no appropriate installation candidate for
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/install-plugins.h"
+             line="37">no appropriate installation candidate for
     any of the requested plugins could be found. Only return this if nothing
     has been installed. Return #GST_INSTALL_PLUGINS_PARTIAL_SUCCESS if
     some (but not all) of the requested plugins could be installed.</doc>
@@ -2668,7 +4005,9 @@ program and to what extent the requested plugins could be installed.</doc>
               value="2"
               c:identifier="GST_INSTALL_PLUGINS_ERROR"
               glib:nick="error">
-        <doc xml:space="preserve">an error occured during the installation. If
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/install-plugins.h"
+             line="41">an error occurred during the installation. If
     this happens, the  user has already seen an error message and another
     one should not be displayed</doc>
       </member>
@@ -2676,33 +4015,43 @@ program and to what extent the requested plugins could be installed.</doc>
               value="3"
               c:identifier="GST_INSTALL_PLUGINS_PARTIAL_SUCCESS"
               glib:nick="partial-success">
-        <doc xml:space="preserve">some of the requested plugins could
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/install-plugins.h"
+             line="46">some of the requested plugins could
     be installed, but not all</doc>
       </member>
       <member name="user_abort"
               value="4"
               c:identifier="GST_INSTALL_PLUGINS_USER_ABORT"
               glib:nick="user-abort">
-        <doc xml:space="preserve">the user has aborted the installation</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/install-plugins.h"
+             line="48">the user has aborted the installation</doc>
       </member>
       <member name="crashed"
               value="100"
               c:identifier="GST_INSTALL_PLUGINS_CRASHED"
               glib:nick="crashed">
-        <doc xml:space="preserve">the installer had an unclean exit code
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/install-plugins.h"
+             line="44">the installer had an unclean exit code
     (ie. death by signal)</doc>
       </member>
       <member name="invalid"
               value="101"
               c:identifier="GST_INSTALL_PLUGINS_INVALID"
               glib:nick="invalid">
-        <doc xml:space="preserve">the helper returned an invalid status code</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/install-plugins.h"
+             line="49">the helper returned an invalid status code</doc>
       </member>
       <member name="started_ok"
               value="200"
               c:identifier="GST_INSTALL_PLUGINS_STARTED_OK"
               glib:nick="started-ok">
-        <doc xml:space="preserve">returned by gst_install_plugins_async() to
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/install-plugins.h"
+             line="50">returned by gst_install_plugins_async() to
     indicate that everything went fine so far and the provided callback
     will be called with the result of the installation later</doc>
       </member>
@@ -2710,85 +4059,135 @@ program and to what extent the requested plugins could be installed.</doc>
               value="201"
               c:identifier="GST_INSTALL_PLUGINS_INTERNAL_FAILURE"
               glib:nick="internal-failure">
-        <doc xml:space="preserve">some internal failure has
-    occured when trying to start the installer</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/install-plugins.h"
+             line="53">some internal failure has
+    occurred when trying to start the installer</doc>
       </member>
       <member name="helper_missing"
               value="202"
               c:identifier="GST_INSTALL_PLUGINS_HELPER_MISSING"
               glib:nick="helper-missing">
-        <doc xml:space="preserve">the helper script to call the
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/install-plugins.h"
+             line="55">the helper script to call the
     actual installer is not installed</doc>
       </member>
       <member name="install_in_progress"
               value="203"
               c:identifier="GST_INSTALL_PLUGINS_INSTALL_IN_PROGRESS"
               glib:nick="install-in-progress">
-        <doc xml:space="preserve">a previously-started plugin
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/install-plugins.h"
+             line="57">a previously-started plugin
     installation is still in progress, try again later</doc>
       </member>
       <function name="get_name"
                 c:identifier="gst_install_plugins_return_get_name">
-        <doc xml:space="preserve">Convenience function to return the descriptive string associated
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/install-plugins.c"
+             line="698">Convenience function to return the descriptive string associated
 with a status code.  This function returns English strings and
 should not be used for user messages. It is here only to assist
 in debugging.</doc>
+        <source-position filename="gst-libs/gst/pbutils/install-plugins.h"
+                         line="151"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a descriptive string for the status code in @ret</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/install-plugins.c"
+               line="707">a descriptive string for the status code in @ret</doc>
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
         <parameters>
           <parameter name="ret" transfer-ownership="none">
-            <doc xml:space="preserve">the return status code</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/pbutils/install-plugins.c"
+                 line="700">the return status code</doc>
             <type name="InstallPluginsReturn"
                   c:type="GstInstallPluginsReturn"/>
           </parameter>
         </parameters>
       </function>
     </enumeration>
+    <function-macro name="PBUTILS_DEPRECATED_FOR"
+                    c:identifier="GST_PBUTILS_DEPRECATED_FOR"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/pbutils/pbutils-prelude.h"
+                       line="35"/>
+      <parameters>
+        <parameter name="f">
+        </parameter>
+      </parameters>
+    </function-macro>
     <constant name="PLUGINS_BASE_VERSION_MAJOR"
               value="1"
               c:type="GST_PLUGINS_BASE_VERSION_MAJOR">
-      <doc xml:space="preserve">The major version of GStreamer's gst-plugins-base libraries at compile time.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/gstpluginsbaseversion.h"
+           line="28">The major version of GStreamer's gst-plugins-base libraries at compile time.</doc>
+      <source-position filename="gst-libs/gst/pbutils/gstpluginsbaseversion.h"
+                       line="33"/>
       <type name="gint" c:type="gint"/>
     </constant>
     <constant name="PLUGINS_BASE_VERSION_MICRO"
               value="0"
               c:type="GST_PLUGINS_BASE_VERSION_MICRO">
-      <doc xml:space="preserve">The micro version of GStreamer's gst-plugins-base libraries at compile time.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/gstpluginsbaseversion.h"
+           line="40">The micro version of GStreamer's gst-plugins-base libraries at compile time.</doc>
+      <source-position filename="gst-libs/gst/pbutils/gstpluginsbaseversion.h"
+                       line="45"/>
       <type name="gint" c:type="gint"/>
     </constant>
     <constant name="PLUGINS_BASE_VERSION_MINOR"
               value="17"
               c:type="GST_PLUGINS_BASE_VERSION_MINOR">
-      <doc xml:space="preserve">The minor version of GStreamer's gst-plugins-base libraries at compile time.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/gstpluginsbaseversion.h"
+           line="34">The minor version of GStreamer's gst-plugins-base libraries at compile time.</doc>
+      <source-position filename="gst-libs/gst/pbutils/gstpluginsbaseversion.h"
+                       line="39"/>
       <type name="gint" c:type="gint"/>
     </constant>
     <constant name="PLUGINS_BASE_VERSION_NANO"
               value="1"
               c:type="GST_PLUGINS_BASE_VERSION_NANO">
-      <doc xml:space="preserve">The nano version of GStreamer's gst-plugins-base libraries at compile time.
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/gstpluginsbaseversion.h"
+           line="46">The nano version of GStreamer's gst-plugins-base libraries at compile time.
 Actual releases have 0, GIT versions have 1, prerelease versions have 2-...</doc>
+      <source-position filename="gst-libs/gst/pbutils/gstpluginsbaseversion.h"
+                       line="52"/>
       <type name="gint" c:type="gint"/>
     </constant>
     <function name="codec_utils_aac_caps_set_level_and_profile"
               c:identifier="gst_codec_utils_aac_caps_set_level_and_profile">
-      <doc xml:space="preserve">Sets the level and profile on @caps if it can be determined from
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/codec-utils.c"
+           line="490">Sets the level and profile on @caps if it can be determined from
 @audio_config. See gst_codec_utils_aac_get_level() and
 gst_codec_utils_aac_get_profile() for more details on the parameters.
 @caps must be audio/mpeg caps with an "mpegversion" field of either 2 or 4.
 If mpegversion is 4, the "base-profile" field is also set in @caps.</doc>
+      <source-position filename="gst-libs/gst/pbutils/codec-utils.h"
+                       line="51"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE if the level and profile could be set, %FALSE otherwise.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/codec-utils.c"
+             line="504">%TRUE if the level and profile could be set, %FALSE otherwise.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="caps" transfer-ownership="none">
-          <doc xml:space="preserve">the #GstCaps to which level and profile fields are to be added</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/codec-utils.c"
+               line="492">the #GstCaps to which level and profile fields are to be added</doc>
           <type name="Gst.Caps" c:type="GstCaps*"/>
         </parameter>
         <parameter name="audio_config" transfer-ownership="none">
-          <doc xml:space="preserve">a pointer to the AudioSpecificConfig
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/codec-utils.c"
+               line="493">a pointer to the AudioSpecificConfig
                as specified in the Elementary Stream Descriptor (esds)
                in ISO/IEC 14496-1. (See below for more details)</doc>
           <array length="2" zero-terminated="0" c:type="const guint8*">
@@ -2796,23 +4195,32 @@ If mpegversion is 4, the "base-profile" field is also set in @caps.</doc>
           </array>
         </parameter>
         <parameter name="len" transfer-ownership="none">
-          <doc xml:space="preserve">Length of @audio_config in bytes</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/codec-utils.c"
+               line="496">Length of @audio_config in bytes</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
       </parameters>
     </function>
     <function name="codec_utils_aac_get_channels"
-              c:identifier="gst_codec_utils_aac_get_channels">
-      <doc xml:space="preserve">Returns the channels of the given AAC stream.</doc>
+              c:identifier="gst_codec_utils_aac_get_channels"
+              version="1.10">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/codec-utils.c"
+           line="218">Returns the channels of the given AAC stream.</doc>
+      <source-position filename="gst-libs/gst/pbutils/codec-utils.h"
+                       line="48"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">The channels or 0 if the channel could not be determined.
-
-Since 1.10</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/codec-utils.c"
+             line="227">The channels or 0 if the channel could not be determined.</doc>
         <type name="guint" c:type="guint"/>
       </return-value>
       <parameters>
         <parameter name="audio_config" transfer-ownership="none">
-          <doc xml:space="preserve">a pointer to the AudioSpecificConfig
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/codec-utils.c"
+               line="220">a pointer to the AudioSpecificConfig
                as specified in the Elementary Stream Descriptor (esds)
                in ISO/IEC 14496-1.</doc>
           <array length="1" zero-terminated="0" c:type="const guint8*">
@@ -2820,29 +4228,41 @@ Since 1.10</doc>
           </array>
         </parameter>
         <parameter name="len" transfer-ownership="none">
-          <doc xml:space="preserve">Length of @audio_config in bytes</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/codec-utils.c"
+               line="223">Length of @audio_config in bytes</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
       </parameters>
     </function>
     <function name="codec_utils_aac_get_index_from_sample_rate"
               c:identifier="gst_codec_utils_aac_get_index_from_sample_rate">
-      <doc xml:space="preserve">Translates the sample rate to the index corresponding to it in AAC spec.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/codec-utils.c"
+           line="89">Translates the sample rate to the index corresponding to it in AAC spec.</doc>
+      <source-position filename="gst-libs/gst/pbutils/codec-utils.h"
+                       line="36"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">The AAC index for this sample rate, -1 if the rate is not a
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/codec-utils.c"
+             line="95">The AAC index for this sample rate, -1 if the rate is not a
 valid AAC sample rate.</doc>
         <type name="gint" c:type="gint"/>
       </return-value>
       <parameters>
         <parameter name="rate" transfer-ownership="none">
-          <doc xml:space="preserve">Sample rate</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/codec-utils.c"
+               line="91">Sample rate</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
       </parameters>
     </function>
     <function name="codec_utils_aac_get_level"
               c:identifier="gst_codec_utils_aac_get_level">
-      <doc xml:space="preserve">Determines the level of a stream as defined in ISO/IEC 14496-3. For AAC LC
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/codec-utils.c"
+           line="301">Determines the level of a stream as defined in ISO/IEC 14496-3. For AAC LC
 streams, the constraints from the AAC audio profile are applied. For AAC
 Main, LTP, SSR and others, the Main profile is used.
 
@@ -2855,14 +4275,20 @@ most significant bit of the first byte:
     next 24 bits define the actual sample frequency, and subsequent
     fields are appropriately shifted).
   * Bit 9:12 contains the channel configuration</doc>
+      <source-position filename="gst-libs/gst/pbutils/codec-utils.h"
+                       line="42"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">The level as a const string and %NULL if the level could not be
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/codec-utils.c"
+             line="322">The level as a const string and %NULL if the level could not be
 determined.</doc>
         <type name="utf8" c:type="const gchar*"/>
       </return-value>
       <parameters>
         <parameter name="audio_config" transfer-ownership="none">
-          <doc xml:space="preserve">a pointer to the AudioSpecificConfig
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/codec-utils.c"
+               line="303">a pointer to the AudioSpecificConfig
                as specified in the Elementary Stream Descriptor (esds)
                in ISO/IEC 14496-1.</doc>
           <array length="1" zero-terminated="0" c:type="const guint8*">
@@ -2870,24 +4296,34 @@ determined.</doc>
           </array>
         </parameter>
         <parameter name="len" transfer-ownership="none">
-          <doc xml:space="preserve">Length of @audio_config in bytes</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/codec-utils.c"
+               line="306">Length of @audio_config in bytes</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
       </parameters>
     </function>
     <function name="codec_utils_aac_get_profile"
               c:identifier="gst_codec_utils_aac_get_profile">
-      <doc xml:space="preserve">Returns the profile of the given AAC stream as a string. The profile is
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/codec-utils.c"
+           line="248">Returns the profile of the given AAC stream as a string. The profile is
 normally determined using the AudioObjectType field which is in the first
 5 bits of @audio_config</doc>
+      <source-position filename="gst-libs/gst/pbutils/codec-utils.h"
+                       line="39"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">The profile as a const string and %NULL if the profile could not be
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/codec-utils.c"
+             line="259">The profile as a const string and %NULL if the profile could not be
 determined.</doc>
         <type name="utf8" c:type="const gchar*"/>
       </return-value>
       <parameters>
         <parameter name="audio_config" transfer-ownership="none">
-          <doc xml:space="preserve">a pointer to the AudioSpecificConfig
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/codec-utils.c"
+               line="250">a pointer to the AudioSpecificConfig
                as specified in the Elementary Stream Descriptor (esds)
                in ISO/IEC 14496-1.</doc>
           <array length="1" zero-terminated="0" c:type="const guint8*">
@@ -2895,24 +4331,33 @@ determined.</doc>
           </array>
         </parameter>
         <parameter name="len" transfer-ownership="none">
-          <doc xml:space="preserve">Length of @audio_config in bytes</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/codec-utils.c"
+               line="253">Length of @audio_config in bytes</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
       </parameters>
     </function>
     <function name="codec_utils_aac_get_sample_rate"
-              c:identifier="gst_codec_utils_aac_get_sample_rate">
-      <doc xml:space="preserve">Translates the sample rate index found in AAC headers to the actual sample
+              c:identifier="gst_codec_utils_aac_get_sample_rate"
+              version="1.10">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/codec-utils.c"
+           line="188">Translates the sample rate index found in AAC headers to the actual sample
 rate.</doc>
+      <source-position filename="gst-libs/gst/pbutils/codec-utils.h"
+                       line="45"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">The sample rate if sr_idx is valid, 0 otherwise.
-
-Since 1.10</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/codec-utils.c"
+             line="198">The sample rate if sr_idx is valid, 0 otherwise.</doc>
         <type name="guint" c:type="guint"/>
       </return-value>
       <parameters>
         <parameter name="audio_config" transfer-ownership="none">
-          <doc xml:space="preserve">a pointer to the AudioSpecificConfig
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/codec-utils.c"
+               line="190">a pointer to the AudioSpecificConfig
                as specified in the Elementary Stream Descriptor (esds)
                in ISO/IEC 14496-1.</doc>
           <array length="1" zero-terminated="0" c:type="const guint8*">
@@ -2920,22 +4365,32 @@ Since 1.10</doc>
           </array>
         </parameter>
         <parameter name="len" transfer-ownership="none">
-          <doc xml:space="preserve">Length of @audio_config</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/codec-utils.c"
+               line="193">Length of @audio_config</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
       </parameters>
     </function>
     <function name="codec_utils_aac_get_sample_rate_from_index"
               c:identifier="gst_codec_utils_aac_get_sample_rate_from_index">
-      <doc xml:space="preserve">Translates the sample rate index found in AAC headers to the actual sample
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/codec-utils.c"
+           line="69">Translates the sample rate index found in AAC headers to the actual sample
 rate.</doc>
+      <source-position filename="gst-libs/gst/pbutils/codec-utils.h"
+                       line="33"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">The sample rate if @sr_idx is valid, 0 otherwise.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/codec-utils.c"
+             line="77">The sample rate if @sr_idx is valid, 0 otherwise.</doc>
         <type name="guint" c:type="guint"/>
       </return-value>
       <parameters>
         <parameter name="sr_idx" transfer-ownership="none">
-          <doc xml:space="preserve">Sample rate index as from the AudioSpecificConfig (MPEG-4
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/codec-utils.c"
+               line="71">Sample rate index as from the AudioSpecificConfig (MPEG-4
          container) or ADTS frame header</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
@@ -2943,69 +4398,101 @@ rate.</doc>
     </function>
     <function name="codec_utils_h264_caps_set_level_and_profile"
               c:identifier="gst_codec_utils_h264_caps_set_level_and_profile">
-      <doc xml:space="preserve">Sets the level and profile in @caps if it can be determined from @sps. See
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/codec-utils.c"
+           line="772">Sets the level and profile in @caps if it can be determined from @sps. See
 gst_codec_utils_h264_get_level() and gst_codec_utils_h264_get_profile()
 for more details on the parameters.</doc>
+      <source-position filename="gst-libs/gst/pbutils/codec-utils.h"
+                       line="67"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE if the level and profile could be set, %FALSE otherwise.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/codec-utils.c"
+             line="782">%TRUE if the level and profile could be set, %FALSE otherwise.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="caps" transfer-ownership="none">
-          <doc xml:space="preserve">the #GstCaps to which the level and profile are to be added</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/codec-utils.c"
+               line="774">the #GstCaps to which the level and profile are to be added</doc>
           <type name="Gst.Caps" c:type="GstCaps*"/>
         </parameter>
         <parameter name="sps" transfer-ownership="none">
-          <doc xml:space="preserve">Pointer to the sequence parameter set for the stream.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/codec-utils.c"
+               line="775">Pointer to the sequence parameter set for the stream.</doc>
           <array length="2" zero-terminated="0" c:type="const guint8*">
             <type name="guint8" c:type="guint8"/>
           </array>
         </parameter>
         <parameter name="len" transfer-ownership="none">
-          <doc xml:space="preserve">Length of the data available in @sps.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/codec-utils.c"
+               line="776">Length of the data available in @sps.</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
       </parameters>
     </function>
     <function name="codec_utils_h264_get_level"
               c:identifier="gst_codec_utils_h264_get_level">
-      <doc xml:space="preserve">Converts the level indication (level_idc) in the stream's
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/codec-utils.c"
+           line="659">Converts the level indication (level_idc) in the stream's
 sequence parameter set into a string. The SPS is expected to have the
 same format as for gst_codec_utils_h264_get_profile().</doc>
+      <source-position filename="gst-libs/gst/pbutils/codec-utils.h"
+                       line="61"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">The level as a const string, or %NULL if there is an error.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/codec-utils.c"
+             line="668">The level as a const string, or %NULL if there is an error.</doc>
         <type name="utf8" c:type="const gchar*"/>
       </return-value>
       <parameters>
         <parameter name="sps" transfer-ownership="none">
-          <doc xml:space="preserve">Pointer to the sequence parameter set for the stream.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/codec-utils.c"
+               line="661">Pointer to the sequence parameter set for the stream.</doc>
           <array length="1" zero-terminated="0" c:type="const guint8*">
             <type name="guint8" c:type="guint8"/>
           </array>
         </parameter>
         <parameter name="len" transfer-ownership="none">
-          <doc xml:space="preserve">Length of the data available in @sps.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/codec-utils.c"
+               line="662">Length of the data available in @sps.</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
       </parameters>
     </function>
     <function name="codec_utils_h264_get_level_idc"
               c:identifier="gst_codec_utils_h264_get_level_idc">
-      <doc xml:space="preserve">Transform a level string from the caps into the level_idc</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/codec-utils.c"
+           line="720">Transform a level string from the caps into the level_idc</doc>
+      <source-position filename="gst-libs/gst/pbutils/codec-utils.h"
+                       line="64"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">the level_idc or 0 if the level is unknown</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/codec-utils.c"
+             line="726">the level_idc or 0 if the level is unknown</doc>
         <type name="guint8" c:type="guint8"/>
       </return-value>
       <parameters>
         <parameter name="level" transfer-ownership="none">
-          <doc xml:space="preserve">A level string from caps</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/codec-utils.c"
+               line="722">A level string from caps</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
       </parameters>
     </function>
     <function name="codec_utils_h264_get_profile"
               c:identifier="gst_codec_utils_h264_get_profile">
-      <doc xml:space="preserve">Converts the profile indication (profile_idc) in the stream's
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/codec-utils.c"
+           line="547">Converts the profile indication (profile_idc) in the stream's
 sequence parameter set into a string. The SPS is expected to have the
 following format, as defined in the H.264 specification. The SPS is viewed
 as a bitstream here, with bit 0 being the most significant bit of the first
@@ -3019,97 +4506,135 @@ byte.
 * Bit 12    - constraint_set3_flag
 * Bit 13:15 - Reserved
 * Bit 16:24 - Level indication</doc>
+      <source-position filename="gst-libs/gst/pbutils/codec-utils.h"
+                       line="58"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">The profile as a const string, or %NULL if there is an error.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/codec-utils.c"
+             line="567">The profile as a const string, or %NULL if there is an error.</doc>
         <type name="utf8" c:type="const gchar*"/>
       </return-value>
       <parameters>
         <parameter name="sps" transfer-ownership="none">
-          <doc xml:space="preserve">Pointer to the sequence parameter set for the stream.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/codec-utils.c"
+               line="549">Pointer to the sequence parameter set for the stream.</doc>
           <array length="1" zero-terminated="0" c:type="const guint8*">
             <type name="guint8" c:type="guint8"/>
           </array>
         </parameter>
         <parameter name="len" transfer-ownership="none">
-          <doc xml:space="preserve">Length of the data available in @sps.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/codec-utils.c"
+               line="550">Length of the data available in @sps.</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
       </parameters>
     </function>
     <function name="codec_utils_h265_caps_set_level_tier_and_profile"
-              c:identifier="gst_codec_utils_h265_caps_set_level_tier_and_profile">
-      <doc xml:space="preserve">Sets the level, tier and profile in @caps if it can be determined from
+              c:identifier="gst_codec_utils_h265_caps_set_level_tier_and_profile"
+              version="1.4">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/codec-utils.c"
+           line="1416">Sets the level, tier and profile in @caps if it can be determined from
 @profile_tier_level. See gst_codec_utils_h265_get_level(),
 gst_codec_utils_h265_get_tier() and gst_codec_utils_h265_get_profile()
 for more details on the parameters.</doc>
+      <source-position filename="gst-libs/gst/pbutils/codec-utils.h"
+                       line="89"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE if the level, tier, profile could be set, %FALSE otherwise.
-
-Since 1.4</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/codec-utils.c"
+             line="1428">%TRUE if the level, tier, profile could be set, %FALSE otherwise.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="caps" transfer-ownership="none">
-          <doc xml:space="preserve">the #GstCaps to which the level, tier and profile are to be added</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/codec-utils.c"
+               line="1418">the #GstCaps to which the level, tier and profile are to be added</doc>
           <type name="Gst.Caps" c:type="GstCaps*"/>
         </parameter>
         <parameter name="profile_tier_level" transfer-ownership="none">
-          <doc xml:space="preserve">Pointer to the profile_tier_level
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/codec-utils.c"
+               line="1419">Pointer to the profile_tier_level
   struct</doc>
           <array length="2" zero-terminated="0" c:type="const guint8*">
             <type name="guint8" c:type="guint8"/>
           </array>
         </parameter>
         <parameter name="len" transfer-ownership="none">
-          <doc xml:space="preserve">Length of the data available in @profile_tier_level.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/codec-utils.c"
+               line="1421">Length of the data available in @profile_tier_level.</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
       </parameters>
     </function>
     <function name="codec_utils_h265_get_level"
-              c:identifier="gst_codec_utils_h265_get_level">
-      <doc xml:space="preserve">Converts the level indication (general_level_idc) in the stream's
+              c:identifier="gst_codec_utils_h265_get_level"
+              version="1.4">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/codec-utils.c"
+           line="1313">Converts the level indication (general_level_idc) in the stream's
 profile_tier_level structure into a string. The profiel_tier_level is
 expected to have the same format as for gst_codec_utils_h264_get_profile().</doc>
+      <source-position filename="gst-libs/gst/pbutils/codec-utils.h"
+                       line="82"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">The level as a const string, or %NULL if there is an error.
-
-Since 1.4</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/codec-utils.c"
+             line="1323">The level as a const string, or %NULL if there is an error.</doc>
         <type name="utf8" c:type="const gchar*"/>
       </return-value>
       <parameters>
         <parameter name="profile_tier_level" transfer-ownership="none">
-          <doc xml:space="preserve">Pointer to the profile_tier_level
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/codec-utils.c"
+               line="1315">Pointer to the profile_tier_level
   for the stream</doc>
           <array length="1" zero-terminated="0" c:type="const guint8*">
             <type name="guint8" c:type="guint8"/>
           </array>
         </parameter>
         <parameter name="len" transfer-ownership="none">
-          <doc xml:space="preserve">Length of the data available in @profile_tier_level.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/codec-utils.c"
+               line="1317">Length of the data available in @profile_tier_level.</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
       </parameters>
     </function>
     <function name="codec_utils_h265_get_level_idc"
-              c:identifier="gst_codec_utils_h265_get_level_idc">
-      <doc xml:space="preserve">Transform a level string from the caps into the level_idc</doc>
+              c:identifier="gst_codec_utils_h265_get_level_idc"
+              version="1.4">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/codec-utils.c"
+           line="1370">Transform a level string from the caps into the level_idc</doc>
+      <source-position filename="gst-libs/gst/pbutils/codec-utils.h"
+                       line="86"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">the level_idc or 0 if the level is unknown
-
-Since 1.4</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/codec-utils.c"
+             line="1376">the level_idc or 0 if the level is unknown</doc>
         <type name="guint8" c:type="guint8"/>
       </return-value>
       <parameters>
         <parameter name="level" transfer-ownership="none">
-          <doc xml:space="preserve">A level string from caps</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/codec-utils.c"
+               line="1372">A level string from caps</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
       </parameters>
     </function>
     <function name="codec_utils_h265_get_profile"
-              c:identifier="gst_codec_utils_h265_get_profile">
-      <doc xml:space="preserve">Converts the profile indication (general_profile_idc) in the stream's
+              c:identifier="gst_codec_utils_h265_get_profile"
+              version="1.4">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/codec-utils.c"
+           line="1097">Converts the profile indication (general_profile_idc) in the stream's
 profile_level_tier structure into a string. The profile_tier_level is
 expected to have the following format, as defined in the H.265
 specification. The profile_tier_level is viewed as a bitstream here,
@@ -3123,125 +4648,172 @@ with bit 0 being the most significant bit of the first byte.
 * Bit 41    - general_interlaced_source_flag
 * Bit 42    - general_non_packed_constraint_flag
 * Bit 43    - general_frame_only_constraint_flag
-* Bit 44:87 - general_reserved_zero_44bits
+* Bit 44:87 - See below
 * Bit 88:95 - general_level_idc</doc>
+      <source-position filename="gst-libs/gst/pbutils/codec-utils.h"
+                       line="74"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">The profile as a const string, or %NULL if there is an error.
-
-Since 1.4</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/codec-utils.c"
+             line="1120">The profile as a const string, or %NULL if there is an error.</doc>
         <type name="utf8" c:type="const gchar*"/>
       </return-value>
       <parameters>
         <parameter name="profile_tier_level" transfer-ownership="none">
-          <doc xml:space="preserve">Pointer to the profile_tier_level
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/codec-utils.c"
+               line="1099">Pointer to the profile_tier_level
   structure for the stream.</doc>
           <array length="1" zero-terminated="0" c:type="const guint8*">
             <type name="guint8" c:type="guint8"/>
           </array>
         </parameter>
         <parameter name="len" transfer-ownership="none">
-          <doc xml:space="preserve">Length of the data available in @profile_tier_level</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/codec-utils.c"
+               line="1101">Length of the data available in @profile_tier_level</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
       </parameters>
     </function>
     <function name="codec_utils_h265_get_tier"
-              c:identifier="gst_codec_utils_h265_get_tier">
-      <doc xml:space="preserve">Converts the tier indication (general_tier_flag) in the stream's
+              c:identifier="gst_codec_utils_h265_get_tier"
+              version="1.4">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/codec-utils.c"
+           line="1276">Converts the tier indication (general_tier_flag) in the stream's
 profile_tier_level structure into a string. The profile_tier_level
 is expected to have the same format as for gst_codec_utils_h264_get_profile().</doc>
+      <source-position filename="gst-libs/gst/pbutils/codec-utils.h"
+                       line="78"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">The tier as a const string, or %NULL if there is an error.
-
-Since 1.4</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/codec-utils.c"
+             line="1286">The tier as a const string, or %NULL if there is an error.</doc>
         <type name="utf8" c:type="const gchar*"/>
       </return-value>
       <parameters>
         <parameter name="profile_tier_level" transfer-ownership="none">
-          <doc xml:space="preserve">Pointer to the profile_tier_level
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/codec-utils.c"
+               line="1278">Pointer to the profile_tier_level
   for the stream.</doc>
           <array length="1" zero-terminated="0" c:type="const guint8*">
             <type name="guint8" c:type="guint8"/>
           </array>
         </parameter>
         <parameter name="len" transfer-ownership="none">
-          <doc xml:space="preserve">Length of the data available in @profile_tier_level.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/codec-utils.c"
+               line="1280">Length of the data available in @profile_tier_level.</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
       </parameters>
     </function>
     <function name="codec_utils_mpeg4video_caps_set_level_and_profile"
               c:identifier="gst_codec_utils_mpeg4video_caps_set_level_and_profile">
-      <doc xml:space="preserve">Sets the level and profile in @caps if it can be determined from
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/codec-utils.c"
+           line="1627">Sets the level and profile in @caps if it can be determined from
 @vis_obj_seq. See gst_codec_utils_mpeg4video_get_level() and
 gst_codec_utils_mpeg4video_get_profile() for more details on the
 parameters.</doc>
+      <source-position filename="gst-libs/gst/pbutils/codec-utils.h"
+                       line="101"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE if the level and profile could be set, %FALSE otherwise.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/codec-utils.c"
+             line="1639">%TRUE if the level and profile could be set, %FALSE otherwise.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="caps" transfer-ownership="none">
-          <doc xml:space="preserve">the #GstCaps to which the level and profile are to be added</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/codec-utils.c"
+               line="1629">the #GstCaps to which the level and profile are to be added</doc>
           <type name="Gst.Caps" c:type="GstCaps*"/>
         </parameter>
         <parameter name="vis_obj_seq" transfer-ownership="none">
-          <doc xml:space="preserve">Pointer to the visual object
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/codec-utils.c"
+               line="1630">Pointer to the visual object
   sequence for the stream.</doc>
           <array length="2" zero-terminated="0" c:type="const guint8*">
             <type name="guint8" c:type="guint8"/>
           </array>
         </parameter>
         <parameter name="len" transfer-ownership="none">
-          <doc xml:space="preserve">Length of the data available in @sps.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/codec-utils.c"
+               line="1632">Length of the data available in @sps.</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
       </parameters>
     </function>
     <function name="codec_utils_mpeg4video_get_level"
               c:identifier="gst_codec_utils_mpeg4video_get_level">
-      <doc xml:space="preserve">Converts the level indication in the stream's visual object sequence into
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/codec-utils.c"
+           line="1535">Converts the level indication in the stream's visual object sequence into
 a string. @vis_obj_seq is expected to be the data following the visual
 object sequence start code. Only the first byte
 (profile_and_level_indication) is used.</doc>
+      <source-position filename="gst-libs/gst/pbutils/codec-utils.h"
+                       line="98"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">The level as a const string, or NULL if there is an error.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/codec-utils.c"
+             line="1546">The level as a const string, or NULL if there is an error.</doc>
         <type name="utf8" c:type="const gchar*"/>
       </return-value>
       <parameters>
         <parameter name="vis_obj_seq" transfer-ownership="none">
-          <doc xml:space="preserve">Pointer to the visual object
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/codec-utils.c"
+               line="1537">Pointer to the visual object
   sequence for the stream.</doc>
           <array length="1" zero-terminated="0" c:type="const guint8*">
             <type name="guint8" c:type="guint8"/>
           </array>
         </parameter>
         <parameter name="len" transfer-ownership="none">
-          <doc xml:space="preserve">Length of the data available in @sps.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/codec-utils.c"
+               line="1539">Length of the data available in @sps.</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
       </parameters>
     </function>
     <function name="codec_utils_mpeg4video_get_profile"
               c:identifier="gst_codec_utils_mpeg4video_get_profile">
-      <doc xml:space="preserve">Converts the profile indication in the stream's visual object sequence into
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/codec-utils.c"
+           line="1462">Converts the profile indication in the stream's visual object sequence into
 a string. @vis_obj_seq is expected to be the data following the visual
 object sequence start code. Only the first byte
 (profile_and_level_indication) is used.</doc>
+      <source-position filename="gst-libs/gst/pbutils/codec-utils.h"
+                       line="95"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">The profile as a const string, or NULL if there is an error.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/codec-utils.c"
+             line="1473">The profile as a const string, or NULL if there is an error.</doc>
         <type name="utf8" c:type="const gchar*"/>
       </return-value>
       <parameters>
         <parameter name="vis_obj_seq" transfer-ownership="none">
-          <doc xml:space="preserve">Pointer to the visual object
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/codec-utils.c"
+               line="1464">Pointer to the visual object
   sequence for the stream.</doc>
           <array length="1" zero-terminated="0" c:type="const guint8*">
             <type name="guint8" c:type="guint8"/>
           </array>
         </parameter>
         <parameter name="len" transfer-ownership="none">
-          <doc xml:space="preserve">Length of the data available in @sps.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/codec-utils.c"
+               line="1466">Length of the data available in @sps.</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
       </parameters>
@@ -3249,38 +4821,56 @@ object sequence start code. Only the first byte
     <function name="codec_utils_opus_create_caps"
               c:identifier="gst_codec_utils_opus_create_caps"
               version="1.8">
-      <doc xml:space="preserve">Creates Opus caps from the given parameters.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/codec-utils.c"
+           line="1784">Creates Opus caps from the given parameters.</doc>
+      <source-position filename="gst-libs/gst/pbutils/codec-utils.h"
+                       line="117"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">The #GstCaps, or %NULL if the parameters would lead to
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/codec-utils.c"
+             line="1795">The #GstCaps, or %NULL if the parameters would lead to
 invalid Opus caps.</doc>
         <type name="Gst.Caps" c:type="GstCaps*"/>
       </return-value>
       <parameters>
         <parameter name="rate" transfer-ownership="none">
-          <doc xml:space="preserve">the sample rate</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/codec-utils.c"
+               line="1786">the sample rate</doc>
           <type name="guint32" c:type="guint32"/>
         </parameter>
         <parameter name="channels" transfer-ownership="none">
-          <doc xml:space="preserve">the number of channels</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/codec-utils.c"
+               line="1787">the number of channels</doc>
           <type name="guint8" c:type="guint8"/>
         </parameter>
         <parameter name="channel_mapping_family" transfer-ownership="none">
-          <doc xml:space="preserve">the channel mapping family</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/codec-utils.c"
+               line="1788">the channel mapping family</doc>
           <type name="guint8" c:type="guint8"/>
         </parameter>
         <parameter name="stream_count" transfer-ownership="none">
-          <doc xml:space="preserve">the number of independent streams</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/codec-utils.c"
+               line="1789">the number of independent streams</doc>
           <type name="guint8" c:type="guint8"/>
         </parameter>
         <parameter name="coupled_count" transfer-ownership="none">
-          <doc xml:space="preserve">the number of stereo streams</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/codec-utils.c"
+               line="1790">the number of stereo streams</doc>
           <type name="guint8" c:type="guint8"/>
         </parameter>
         <parameter name="channel_mapping"
                    transfer-ownership="none"
                    nullable="1"
                    allow-none="1">
-          <doc xml:space="preserve">the mapping between the streams</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/codec-utils.c"
+               line="1791">the mapping between the streams</doc>
           <array zero-terminated="0" c:type="const guint8*">
             <type name="guint8" c:type="guint8"/>
           </array>
@@ -3290,22 +4880,32 @@ invalid Opus caps.</doc>
     <function name="codec_utils_opus_create_caps_from_header"
               c:identifier="gst_codec_utils_opus_create_caps_from_header"
               version="1.8">
-      <doc xml:space="preserve">Creates Opus caps from the given OpusHead @header and comment header
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/codec-utils.c"
+           line="1953">Creates Opus caps from the given OpusHead @header and comment header
 @comments.</doc>
+      <source-position filename="gst-libs/gst/pbutils/codec-utils.h"
+                       line="125"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">The #GstCaps.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/codec-utils.c"
+             line="1961">The #GstCaps.</doc>
         <type name="Gst.Caps" c:type="GstCaps*"/>
       </return-value>
       <parameters>
         <parameter name="header" transfer-ownership="none">
-          <doc xml:space="preserve">OpusHead header</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/codec-utils.c"
+               line="1955">OpusHead header</doc>
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </parameter>
         <parameter name="comments"
                    transfer-ownership="none"
                    nullable="1"
                    allow-none="1">
-          <doc xml:space="preserve">Comment header or NULL</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/codec-utils.c"
+               line="1956">Comment header or NULL</doc>
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </parameter>
       </parameters>
@@ -3313,47 +4913,69 @@ invalid Opus caps.</doc>
     <function name="codec_utils_opus_create_header"
               c:identifier="gst_codec_utils_opus_create_header"
               version="1.8">
-      <doc xml:space="preserve">Creates OpusHead header from the given parameters.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/codec-utils.c"
+           line="2008">Creates OpusHead header from the given parameters.</doc>
+      <source-position filename="gst-libs/gst/pbutils/codec-utils.h"
+                       line="128"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">The #GstBuffer containing the OpusHead.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/codec-utils.c"
+             line="2021">The #GstBuffer containing the OpusHead.</doc>
         <type name="Gst.Buffer" c:type="GstBuffer*"/>
       </return-value>
       <parameters>
         <parameter name="rate" transfer-ownership="none">
-          <doc xml:space="preserve">the sample rate</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/codec-utils.c"
+               line="2010">the sample rate</doc>
           <type name="guint32" c:type="guint32"/>
         </parameter>
         <parameter name="channels" transfer-ownership="none">
-          <doc xml:space="preserve">the number of channels</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/codec-utils.c"
+               line="2011">the number of channels</doc>
           <type name="guint8" c:type="guint8"/>
         </parameter>
         <parameter name="channel_mapping_family" transfer-ownership="none">
-          <doc xml:space="preserve">the channel mapping family</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/codec-utils.c"
+               line="2012">the channel mapping family</doc>
           <type name="guint8" c:type="guint8"/>
         </parameter>
         <parameter name="stream_count" transfer-ownership="none">
-          <doc xml:space="preserve">the number of independent streams</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/codec-utils.c"
+               line="2013">the number of independent streams</doc>
           <type name="guint8" c:type="guint8"/>
         </parameter>
         <parameter name="coupled_count" transfer-ownership="none">
-          <doc xml:space="preserve">the number of stereo streams</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/codec-utils.c"
+               line="2014">the number of stereo streams</doc>
           <type name="guint8" c:type="guint8"/>
         </parameter>
         <parameter name="channel_mapping"
                    transfer-ownership="none"
                    nullable="1"
                    allow-none="1">
-          <doc xml:space="preserve">the mapping between the streams</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/codec-utils.c"
+               line="2015">the mapping between the streams</doc>
           <array zero-terminated="0" c:type="const guint8*">
             <type name="guint8" c:type="guint8"/>
           </array>
         </parameter>
         <parameter name="pre_skip" transfer-ownership="none">
-          <doc xml:space="preserve">Pre-skip in 48kHz samples or 0</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/codec-utils.c"
+               line="2016">Pre-skip in 48kHz samples or 0</doc>
           <type name="guint16" c:type="guint16"/>
         </parameter>
         <parameter name="output_gain" transfer-ownership="none">
-          <doc xml:space="preserve">Output gain or 0</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/codec-utils.c"
+               line="2017">Output gain or 0</doc>
           <type name="gint16" c:type="gint16"/>
         </parameter>
       </parameters>
@@ -3361,56 +4983,76 @@ invalid Opus caps.</doc>
     <function name="codec_utils_opus_parse_caps"
               c:identifier="gst_codec_utils_opus_parse_caps"
               version="1.8">
-      <doc xml:space="preserve">Parses Opus caps and fills the different fields with defaults if possible.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/codec-utils.c"
+           line="1667">Parses Opus caps and fills the different fields with defaults if possible.</doc>
+      <source-position filename="gst-libs/gst/pbutils/codec-utils.h"
+                       line="108"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE if parsing was successful, %FALSE otherwise.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/codec-utils.c"
+             line="1679">%TRUE if parsing was successful, %FALSE otherwise.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="caps" transfer-ownership="none">
-          <doc xml:space="preserve">the #GstCaps to parse the data from</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/codec-utils.c"
+               line="1669">the #GstCaps to parse the data from</doc>
           <type name="Gst.Caps" c:type="GstCaps*"/>
         </parameter>
         <parameter name="rate"
                    direction="out"
                    caller-allocates="0"
                    transfer-ownership="full">
-          <doc xml:space="preserve">the sample rate</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/codec-utils.c"
+               line="1670">the sample rate</doc>
           <type name="guint32" c:type="guint32*"/>
         </parameter>
         <parameter name="channels"
                    direction="out"
                    caller-allocates="0"
                    transfer-ownership="full">
-          <doc xml:space="preserve">the number of channels</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/codec-utils.c"
+               line="1671">the number of channels</doc>
           <type name="guint8" c:type="guint8*"/>
         </parameter>
         <parameter name="channel_mapping_family"
                    direction="out"
                    caller-allocates="0"
                    transfer-ownership="full">
-          <doc xml:space="preserve">the channel mapping family</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/codec-utils.c"
+               line="1672">the channel mapping family</doc>
           <type name="guint8" c:type="guint8*"/>
         </parameter>
         <parameter name="stream_count"
                    direction="out"
                    caller-allocates="0"
                    transfer-ownership="full">
-          <doc xml:space="preserve">the number of independent streams</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/codec-utils.c"
+               line="1673">the number of independent streams</doc>
           <type name="guint8" c:type="guint8*"/>
         </parameter>
         <parameter name="coupled_count"
                    direction="out"
                    caller-allocates="0"
                    transfer-ownership="full">
-          <doc xml:space="preserve">the number of stereo streams</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/codec-utils.c"
+               line="1674">the number of stereo streams</doc>
           <type name="guint8" c:type="guint8*"/>
         </parameter>
         <parameter name="channel_mapping"
                    direction="out"
                    caller-allocates="0"
                    transfer-ownership="full">
-          <doc xml:space="preserve">the mapping between the streams</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/codec-utils.c"
+               line="1675">the mapping between the streams</doc>
           <array zero-terminated="0" c:type="guint8*" fixed-size="256">
             <type name="guint8" c:type="guint8"/>
           </array>
@@ -3420,56 +5062,76 @@ invalid Opus caps.</doc>
     <function name="codec_utils_opus_parse_header"
               c:identifier="gst_codec_utils_opus_parse_header"
               version="1.8">
-      <doc xml:space="preserve">Parses the OpusHead header.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/codec-utils.c"
+           line="2089">Parses the OpusHead header.</doc>
+      <source-position filename="gst-libs/gst/pbutils/codec-utils.h"
+                       line="138"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE if parsing was successful, %FALSE otherwise.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/codec-utils.c"
+             line="2103">%TRUE if parsing was successful, %FALSE otherwise.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="header" transfer-ownership="none">
-          <doc xml:space="preserve">the OpusHead #GstBuffer</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/codec-utils.c"
+               line="2091">the OpusHead #GstBuffer</doc>
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </parameter>
         <parameter name="rate"
                    direction="out"
                    caller-allocates="0"
                    transfer-ownership="full">
-          <doc xml:space="preserve">the sample rate</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/codec-utils.c"
+               line="2092">the sample rate</doc>
           <type name="guint32" c:type="guint32*"/>
         </parameter>
         <parameter name="channels"
                    direction="out"
                    caller-allocates="0"
                    transfer-ownership="full">
-          <doc xml:space="preserve">the number of channels</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/codec-utils.c"
+               line="2093">the number of channels</doc>
           <type name="guint8" c:type="guint8*"/>
         </parameter>
         <parameter name="channel_mapping_family"
                    direction="out"
                    caller-allocates="0"
                    transfer-ownership="full">
-          <doc xml:space="preserve">the channel mapping family</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/codec-utils.c"
+               line="2094">the channel mapping family</doc>
           <type name="guint8" c:type="guint8*"/>
         </parameter>
         <parameter name="stream_count"
                    direction="out"
                    caller-allocates="0"
                    transfer-ownership="full">
-          <doc xml:space="preserve">the number of independent streams</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/codec-utils.c"
+               line="2095">the number of independent streams</doc>
           <type name="guint8" c:type="guint8*"/>
         </parameter>
         <parameter name="coupled_count"
                    direction="out"
                    caller-allocates="0"
                    transfer-ownership="full">
-          <doc xml:space="preserve">the number of stereo streams</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/codec-utils.c"
+               line="2096">the number of stereo streams</doc>
           <type name="guint8" c:type="guint8*"/>
         </parameter>
         <parameter name="channel_mapping"
                    direction="out"
                    caller-allocates="0"
                    transfer-ownership="full">
-          <doc xml:space="preserve">the mapping between the streams</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/codec-utils.c"
+               line="2097">the mapping between the streams</doc>
           <array zero-terminated="0" c:type="guint8*" fixed-size="256">
             <type name="guint8" c:type="guint8"/>
           </array>
@@ -3478,24 +5140,98 @@ invalid Opus caps.</doc>
                    direction="out"
                    caller-allocates="0"
                    transfer-ownership="full">
-          <doc xml:space="preserve">Pre-skip in 48kHz samples or 0</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/codec-utils.c"
+               line="2098">Pre-skip in 48kHz samples or 0</doc>
           <type name="guint16" c:type="guint16*"/>
         </parameter>
         <parameter name="output_gain"
                    direction="out"
                    caller-allocates="0"
                    transfer-ownership="full">
-          <doc xml:space="preserve">Output gain or 0</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/codec-utils.c"
+               line="2099">Output gain or 0</doc>
           <type name="gint16" c:type="gint16*"/>
         </parameter>
       </parameters>
     </function>
+    <function-macro name="discoverer_info_ref"
+                    c:identifier="gst_discoverer_info_ref"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+           line="1082">Increments the reference count of @info.</doc>
+      <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                       line="274"/>
+      <parameters>
+        <parameter name="info">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+               line="1084">a #GstDiscovererInfo</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="discoverer_info_unref"
+                    c:identifier="gst_discoverer_info_unref"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+           line="1091">Decrements the reference count of @info.</doc>
+      <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                       line="273"/>
+      <parameters>
+        <parameter name="info">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+               line="1093">a #GstDiscovererInfo</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="discoverer_stream_info_ref"
+                    c:identifier="gst_discoverer_stream_info_ref"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+           line="1098">Increments the reference count of @info.</doc>
+      <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                       line="59"/>
+      <parameters>
+        <parameter name="info">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+               line="1100">a #GstDiscovererStreamInfo</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="discoverer_stream_info_unref"
+                    c:identifier="gst_discoverer_stream_info_unref"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+           line="1107">Decrements the reference count of @info.</doc>
+      <source-position filename="gst-libs/gst/pbutils/gstdiscoverer.h"
+                       line="60"/>
+      <parameters>
+        <parameter name="info">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/gstdiscoverer-types.c"
+               line="1109">a #GstDiscovererStreamInfo</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
     <function name="encoding_list_all_targets"
               c:identifier="gst_encoding_list_all_targets">
-      <doc xml:space="preserve">List all available #GstEncodingTarget for the specified category, or all categories
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/encoding-target.c"
+           line="1241">List all available #GstEncodingTarget for the specified category, or all categories
 if @categoryname is %NULL.</doc>
+      <source-position filename="gst-libs/gst/pbutils/encoding-target.h"
+                       line="172"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">The list of #GstEncodingTarget</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/encoding-target.c"
+             line="1249">The list of #GstEncodingTarget</doc>
         <type name="GLib.List" c:type="GList*">
           <type name="EncodingTarget"/>
         </type>
@@ -3505,7 +5241,9 @@ if @categoryname is %NULL.</doc>
                    transfer-ownership="none"
                    nullable="1"
                    allow-none="1">
-          <doc xml:space="preserve">The category, for ex: #GST_ENCODING_CATEGORY_DEVICE.
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/encoding-target.c"
+               line="1243">The category, for ex: #GST_ENCODING_CATEGORY_DEVICE.
 Can be %NULL.</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
@@ -3513,18 +5251,90 @@ Can be %NULL.</doc>
     </function>
     <function name="encoding_list_available_categories"
               c:identifier="gst_encoding_list_available_categories">
-      <doc xml:space="preserve">Lists all #GstEncodingTarget categories present on disk.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/encoding-target.c"
+           line="1108">Lists all #GstEncodingTarget categories present on disk.</doc>
+      <source-position filename="gst-libs/gst/pbutils/encoding-target.h"
+                       line="169"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">A list
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/encoding-target.c"
+             line="1113">A list
 of #GstEncodingTarget categories.</doc>
         <type name="GLib.List" c:type="GList*">
           <type name="utf8"/>
         </type>
       </return-value>
     </function>
+    <function-macro name="encoding_profile_ref"
+                    c:identifier="gst_encoding_profile_ref"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/encoding-profile.h"
+           line="119">Increases the reference count of the @profile.</doc>
+      <source-position filename="gst-libs/gst/pbutils/encoding-profile.h"
+                       line="121"/>
+      <parameters>
+        <parameter name="profile">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/encoding-profile.h"
+               line="121">a #GstEncodingProfile</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="encoding_profile_unref"
+                    c:identifier="gst_encoding_profile_unref"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/encoding-profile.h"
+           line="111">Decreases the reference count of the @profile, possibly freeing the @profile.</doc>
+      <source-position filename="gst-libs/gst/pbutils/encoding-profile.h"
+                       line="113"/>
+      <parameters>
+        <parameter name="profile">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/encoding-profile.h"
+               line="113">a #GstEncodingProfile</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="encoding_target_ref"
+                    c:identifier="gst_encoding_target_ref"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/encoding-target.h"
+           line="115">Increases the reference count of the @target.</doc>
+      <source-position filename="gst-libs/gst/pbutils/encoding-target.h"
+                       line="120"/>
+      <parameters>
+        <parameter name="target">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/encoding-target.h"
+               line="117">a #GstEncodingTarget</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="encoding_target_unref"
+                    c:identifier="gst_encoding_target_unref"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/encoding-target.h"
+           line="106">Decreases the reference count of the @target, possibly freeing it.</doc>
+      <source-position filename="gst-libs/gst/pbutils/encoding-target.h"
+                       line="111"/>
+      <parameters>
+        <parameter name="target">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/encoding-target.h"
+               line="108">a #GstEncodingTarget</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
     <function name="install_plugins_async"
               c:identifier="gst_install_plugins_async">
-      <doc xml:space="preserve">Requests plugin installation without blocking. Once the plugins have been
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/install-plugins.c"
+           line="600">Requests plugin installation without blocking. Once the plugins have been
 installed or installation has failed, @func will be called with the result
 of the installation and your provided @user_data pointer.
 
@@ -3540,13 +5350,19 @@ application via the provided API, such as gst_missing_element_message_new().
 It is possible to request the installation of multiple missing plugins in
 one go (as might be required if there is a demuxer for a certain format
 installed but no suitable video decoder and no suitable audio decoder).</doc>
+      <source-position filename="gst-libs/gst/pbutils/install-plugins.h"
+                       line="141"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">result code whether an external installer could be started</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/install-plugins.c"
+             line="625">result code whether an external installer could be started</doc>
         <type name="InstallPluginsReturn" c:type="GstInstallPluginsReturn"/>
       </return-value>
       <parameters>
         <parameter name="details" transfer-ownership="none">
-          <doc xml:space="preserve">NULL-terminated array
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/install-plugins.c"
+               line="602">NULL-terminated array
     of installer string details (see below)</doc>
           <array c:type="const gchar* const*">
             <type name="utf8" c:type="gchar*"/>
@@ -3556,7 +5372,9 @@ installed but no suitable video decoder and no suitable audio decoder).</doc>
                    transfer-ownership="none"
                    nullable="1"
                    allow-none="1">
-          <doc xml:space="preserve">a #GstInstallPluginsContext, or NULL</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/install-plugins.c"
+               line="604">a #GstInstallPluginsContext, or NULL</doc>
           <type name="InstallPluginsContext"
                 c:type="GstInstallPluginsContext*"/>
         </parameter>
@@ -3564,7 +5382,9 @@ installed but no suitable video decoder and no suitable audio decoder).</doc>
                    transfer-ownership="none"
                    scope="async"
                    closure="3">
-          <doc xml:space="preserve">the function to call when the installer program returns</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/install-plugins.c"
+               line="605">the function to call when the installer program returns</doc>
           <type name="InstallPluginsResultFunc"
                 c:type="GstInstallPluginsResultFunc"/>
         </parameter>
@@ -3572,52 +5392,76 @@ installed but no suitable video decoder and no suitable audio decoder).</doc>
                    transfer-ownership="none"
                    nullable="1"
                    allow-none="1">
-          <doc xml:space="preserve">the user data to pass to @func when called, or NULL</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/install-plugins.c"
+               line="606">the user data to pass to @func when called, or NULL</doc>
           <type name="gpointer" c:type="gpointer"/>
         </parameter>
       </parameters>
     </function>
     <function name="install_plugins_installation_in_progress"
               c:identifier="gst_install_plugins_installation_in_progress">
-      <doc xml:space="preserve">Checks whether plugin installation (initiated by this application only)
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/install-plugins.c"
+           line="741">Checks whether plugin installation (initiated by this application only)
 is currently in progress.</doc>
+      <source-position filename="gst-libs/gst/pbutils/install-plugins.h"
+                       line="154"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">TRUE if plugin installation is in progress, otherwise FALSE</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/install-plugins.c"
+             line="747">TRUE if plugin installation is in progress, otherwise FALSE</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
     </function>
     <function name="install_plugins_return_get_name"
               c:identifier="gst_install_plugins_return_get_name"
               moved-to="InstallPluginsReturn.get_name">
-      <doc xml:space="preserve">Convenience function to return the descriptive string associated
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/install-plugins.c"
+           line="698">Convenience function to return the descriptive string associated
 with a status code.  This function returns English strings and
 should not be used for user messages. It is here only to assist
 in debugging.</doc>
+      <source-position filename="gst-libs/gst/pbutils/install-plugins.h"
+                       line="151"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">a descriptive string for the status code in @ret</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/install-plugins.c"
+             line="707">a descriptive string for the status code in @ret</doc>
         <type name="utf8" c:type="const gchar*"/>
       </return-value>
       <parameters>
         <parameter name="ret" transfer-ownership="none">
-          <doc xml:space="preserve">the return status code</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/install-plugins.c"
+               line="700">the return status code</doc>
           <type name="InstallPluginsReturn" c:type="GstInstallPluginsReturn"/>
         </parameter>
       </parameters>
     </function>
     <function name="install_plugins_supported"
               c:identifier="gst_install_plugins_supported">
-      <doc xml:space="preserve">Checks whether plugin installation is likely to be supported by the
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/install-plugins.c"
+           line="755">Checks whether plugin installation is likely to be supported by the
 current environment. This currently only checks whether the helper script
 that is to be provided by the distribution or operating system vendor
 exists.</doc>
+      <source-position filename="gst-libs/gst/pbutils/install-plugins.h"
+                       line="157"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">TRUE if plugin installation is likely to be supported.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/install-plugins.c"
+             line="763">TRUE if plugin installation is likely to be supported.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
     </function>
     <function name="install_plugins_sync"
               c:identifier="gst_install_plugins_sync">
-      <doc xml:space="preserve">Requests plugin installation and block until the plugins have been
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/install-plugins.c"
+           line="659">Requests plugin installation and block until the plugins have been
 installed or installation has failed.
 
 This function should almost never be used, it only exists for cases where
@@ -3625,13 +5469,19 @@ a non-GLib main loop is running and the user wants to run it in a separate
 thread and marshal the result back asynchronously into the main thread
 using the other non-GLib main loop. You should almost always use
 gst_install_plugins_async() instead of this function.</doc>
+      <source-position filename="gst-libs/gst/pbutils/install-plugins.h"
+                       line="147"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">the result of the installation.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/install-plugins.c"
+             line="674">the result of the installation.</doc>
         <type name="InstallPluginsReturn" c:type="GstInstallPluginsReturn"/>
       </return-value>
       <parameters>
         <parameter name="details" transfer-ownership="none">
-          <doc xml:space="preserve">NULL-terminated array
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/install-plugins.c"
+               line="661">NULL-terminated array
     of installer string details</doc>
           <array c:type="const gchar* const*">
             <type name="utf8" c:type="gchar*"/>
@@ -3641,7 +5491,9 @@ gst_install_plugins_async() instead of this function.</doc>
                    transfer-ownership="none"
                    nullable="1"
                    allow-none="1">
-          <doc xml:space="preserve">a #GstInstallPluginsContext, or NULL</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/install-plugins.c"
+               line="663">a #GstInstallPluginsContext, or NULL</doc>
           <type name="InstallPluginsContext"
                 c:type="GstInstallPluginsContext*"/>
         </parameter>
@@ -3649,21 +5501,31 @@ gst_install_plugins_async() instead of this function.</doc>
     </function>
     <function name="is_missing_plugin_message"
               c:identifier="gst_is_missing_plugin_message">
-      <doc xml:space="preserve">Checks whether @msg is a missing plugins message.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/missing-plugins.c"
+           line="586">Checks whether @msg is a missing plugins message.</doc>
+      <source-position filename="gst-libs/gst/pbutils/missing-plugins.h"
+                       line="63"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE if @msg is a missing-plugins message, otherwise %FALSE.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/missing-plugins.c"
+             line="592">%TRUE if @msg is a missing-plugins message, otherwise %FALSE.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="msg" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstMessage</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/missing-plugins.c"
+               line="588">a #GstMessage</doc>
           <type name="Gst.Message" c:type="GstMessage*"/>
         </parameter>
       </parameters>
     </function>
     <function name="missing_decoder_installer_detail_new"
               c:identifier="gst_missing_decoder_installer_detail_new">
-      <doc xml:space="preserve">Returns an opaque string containing all the details about the missing
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/missing-plugins.c"
+           line="724">Returns an opaque string containing all the details about the missing
 element to be passed to an external installer called via
 gst_install_plugins_async() or gst_install_plugins_sync().
 
@@ -3671,41 +5533,59 @@ This function is mainly for applications that call external plugin
 installation mechanisms using one of the two above-mentioned functions in
 the case where the application knows exactly what kind of plugin it is
 missing.</doc>
+      <source-position filename="gst-libs/gst/pbutils/missing-plugins.h"
+                       line="82"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">a newly-allocated detail string, or NULL on error. Free string
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/missing-plugins.c"
+             line="737">a newly-allocated detail string, or NULL on error. Free string
          with g_free() when not needed any longer.</doc>
         <type name="utf8" c:type="gchar*"/>
       </return-value>
       <parameters>
         <parameter name="decode_caps" transfer-ownership="none">
-          <doc xml:space="preserve">the (fixed) caps for which a decoder element is needed</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/missing-plugins.c"
+               line="726">the (fixed) caps for which a decoder element is needed</doc>
           <type name="Gst.Caps" c:type="const GstCaps*"/>
         </parameter>
       </parameters>
     </function>
     <function name="missing_decoder_message_new"
               c:identifier="gst_missing_decoder_message_new">
-      <doc xml:space="preserve">Creates a missing-plugin message for @element to notify the application
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/missing-plugins.c"
+           line="256">Creates a missing-plugin message for @element to notify the application
 that a decoder element for a particular set of (fixed) caps is missing.
 This function is mainly for use in plugins.</doc>
+      <source-position filename="gst-libs/gst/pbutils/missing-plugins.h"
+                       line="45"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">a new #GstMessage, or NULL on error</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/missing-plugins.c"
+             line="265">a new #GstMessage, or NULL on error</doc>
         <type name="Gst.Message" c:type="GstMessage*"/>
       </return-value>
       <parameters>
         <parameter name="element" transfer-ownership="none">
-          <doc xml:space="preserve">the #GstElement posting the message</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/missing-plugins.c"
+               line="258">the #GstElement posting the message</doc>
           <type name="Gst.Element" c:type="GstElement*"/>
         </parameter>
         <parameter name="decode_caps" transfer-ownership="none">
-          <doc xml:space="preserve">the (fixed) caps for which a decoder element is needed</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/missing-plugins.c"
+               line="259">the (fixed) caps for which a decoder element is needed</doc>
           <type name="Gst.Caps" c:type="const GstCaps*"/>
         </parameter>
       </parameters>
     </function>
     <function name="missing_element_installer_detail_new"
               c:identifier="gst_missing_element_installer_detail_new">
-      <doc xml:space="preserve">Returns an opaque string containing all the details about the missing
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/missing-plugins.c"
+           line="696">Returns an opaque string containing all the details about the missing
 element to be passed to an external installer called via
 gst_install_plugins_async() or gst_install_plugins_sync().
 
@@ -3713,14 +5593,20 @@ This function is mainly for applications that call external plugin
 installation mechanisms using one of the two above-mentioned functions in
 the case where the application knows exactly what kind of plugin it is
 missing.</doc>
+      <source-position filename="gst-libs/gst/pbutils/missing-plugins.h"
+                       line="79"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">a newly-allocated detail string, or NULL on error. Free string
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/missing-plugins.c"
+             line="710">a newly-allocated detail string, or NULL on error. Free string
          with g_free() when not needed any longer.</doc>
         <type name="utf8" c:type="gchar*"/>
       </return-value>
       <parameters>
         <parameter name="factory_name" transfer-ownership="none">
-          <doc xml:space="preserve">the name of the missing element (element factory),
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/missing-plugins.c"
+               line="698">the name of the missing element (element factory),
            e.g. "videoscale" or "cdparanoiasrc"</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
@@ -3728,20 +5614,30 @@ missing.</doc>
     </function>
     <function name="missing_element_message_new"
               c:identifier="gst_missing_element_message_new">
-      <doc xml:space="preserve">Creates a missing-plugin message for @element to notify the application
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/missing-plugins.c"
+           line="223">Creates a missing-plugin message for @element to notify the application
 that a certain required element is missing. This function is mainly for
 use in plugins.</doc>
+      <source-position filename="gst-libs/gst/pbutils/missing-plugins.h"
+                       line="41"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">a new #GstMessage, or NULL on error</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/missing-plugins.c"
+             line="233">a new #GstMessage, or NULL on error</doc>
         <type name="Gst.Message" c:type="GstMessage*"/>
       </return-value>
       <parameters>
         <parameter name="element" transfer-ownership="none">
-          <doc xml:space="preserve">the #GstElement posting the message</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/missing-plugins.c"
+               line="225">the #GstElement posting the message</doc>
           <type name="Gst.Element" c:type="GstElement*"/>
         </parameter>
         <parameter name="factory_name" transfer-ownership="none">
-          <doc xml:space="preserve">the name of the missing element (element factory),
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/missing-plugins.c"
+               line="226">the name of the missing element (element factory),
            e.g. "videoscale" or "cdparanoiasrc"</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
@@ -3749,7 +5645,9 @@ use in plugins.</doc>
     </function>
     <function name="missing_encoder_installer_detail_new"
               c:identifier="gst_missing_encoder_installer_detail_new">
-      <doc xml:space="preserve">Returns an opaque string containing all the details about the missing
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/missing-plugins.c"
+           line="762">Returns an opaque string containing all the details about the missing
 element to be passed to an external installer called via
 gst_install_plugins_async() or gst_install_plugins_sync().
 
@@ -3757,82 +5655,116 @@ This function is mainly for applications that call external plugin
 installation mechanisms using one of the two above-mentioned functions in
 the case where the application knows exactly what kind of plugin it is
 missing.</doc>
+      <source-position filename="gst-libs/gst/pbutils/missing-plugins.h"
+                       line="85"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">a newly-allocated detail string, or NULL on error. Free string
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/missing-plugins.c"
+             line="775">a newly-allocated detail string, or NULL on error. Free string
          with g_free() when not needed any longer.</doc>
         <type name="utf8" c:type="gchar*"/>
       </return-value>
       <parameters>
         <parameter name="encode_caps" transfer-ownership="none">
-          <doc xml:space="preserve">the (fixed) caps for which an encoder element is needed</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/missing-plugins.c"
+               line="764">the (fixed) caps for which an encoder element is needed</doc>
           <type name="Gst.Caps" c:type="const GstCaps*"/>
         </parameter>
       </parameters>
     </function>
     <function name="missing_encoder_message_new"
               c:identifier="gst_missing_encoder_message_new">
-      <doc xml:space="preserve">Creates a missing-plugin message for @element to notify the application
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/missing-plugins.c"
+           line="296">Creates a missing-plugin message for @element to notify the application
 that an encoder element for a particular set of (fixed) caps is missing.
 This function is mainly for use in plugins.</doc>
+      <source-position filename="gst-libs/gst/pbutils/missing-plugins.h"
+                       line="49"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">a new #GstMessage, or NULL on error</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/missing-plugins.c"
+             line="305">a new #GstMessage, or NULL on error</doc>
         <type name="Gst.Message" c:type="GstMessage*"/>
       </return-value>
       <parameters>
         <parameter name="element" transfer-ownership="none">
-          <doc xml:space="preserve">the #GstElement posting the message</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/missing-plugins.c"
+               line="298">the #GstElement posting the message</doc>
           <type name="Gst.Element" c:type="GstElement*"/>
         </parameter>
         <parameter name="encode_caps" transfer-ownership="none">
-          <doc xml:space="preserve">the (fixed) caps for which an encoder element is needed</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/missing-plugins.c"
+               line="299">the (fixed) caps for which an encoder element is needed</doc>
           <type name="Gst.Caps" c:type="const GstCaps*"/>
         </parameter>
       </parameters>
     </function>
     <function name="missing_plugin_message_get_description"
               c:identifier="gst_missing_plugin_message_get_description">
-      <doc xml:space="preserve">Returns a localised string describing the missing feature, for use in
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/missing-plugins.c"
+           line="481">Returns a localised string describing the missing feature, for use in
 error dialogs and the like. Should never return NULL unless @msg is not
 a valid missing-plugin message.
 
 This function is mainly for applications that need a human-readable string
 describing a missing plugin, given a previously collected missing-plugin
 message</doc>
+      <source-position filename="gst-libs/gst/pbutils/missing-plugins.h"
+                       line="60"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">a newly-allocated description string, or NULL on error. Free
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/missing-plugins.c"
+             line="493">a newly-allocated description string, or NULL on error. Free
          string with g_free() when not needed any longer.</doc>
         <type name="utf8" c:type="gchar*"/>
       </return-value>
       <parameters>
         <parameter name="msg" transfer-ownership="none">
-          <doc xml:space="preserve">a missing-plugin #GstMessage of type #GST_MESSAGE_ELEMENT</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/missing-plugins.c"
+               line="483">a missing-plugin #GstMessage of type #GST_MESSAGE_ELEMENT</doc>
           <type name="Gst.Message" c:type="GstMessage*"/>
         </parameter>
       </parameters>
     </function>
     <function name="missing_plugin_message_get_installer_detail"
               c:identifier="gst_missing_plugin_message_get_installer_detail">
-      <doc xml:space="preserve">Returns an opaque string containing all the details about the missing
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/missing-plugins.c"
+           line="385">Returns an opaque string containing all the details about the missing
 element to be passed to an external installer called via
 gst_install_plugins_async() or gst_install_plugins_sync().
 
 This function is mainly for applications that call external plugin
 installation mechanisms using one of the two above-mentioned functions.</doc>
+      <source-position filename="gst-libs/gst/pbutils/missing-plugins.h"
+                       line="57"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">a newly-allocated detail string, or NULL on error. Free string
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/missing-plugins.c"
+             line="396">a newly-allocated detail string, or NULL on error. Free string
          with g_free() when not needed any longer.</doc>
         <type name="utf8" c:type="gchar*"/>
       </return-value>
       <parameters>
         <parameter name="msg" transfer-ownership="none">
-          <doc xml:space="preserve">a missing-plugin #GstMessage of type #GST_MESSAGE_ELEMENT</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/missing-plugins.c"
+               line="387">a missing-plugin #GstMessage of type #GST_MESSAGE_ELEMENT</doc>
           <type name="Gst.Message" c:type="GstMessage*"/>
         </parameter>
       </parameters>
     </function>
     <function name="missing_uri_sink_installer_detail_new"
               c:identifier="gst_missing_uri_sink_installer_detail_new">
-      <doc xml:space="preserve">Returns an opaque string containing all the details about the missing
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/missing-plugins.c"
+           line="668">Returns an opaque string containing all the details about the missing
 element to be passed to an external installer called via
 gst_install_plugins_async() or gst_install_plugins_sync().
 
@@ -3840,14 +5772,20 @@ This function is mainly for applications that call external plugin
 installation mechanisms using one of the two above-mentioned functions in
 the case where the application knows exactly what kind of plugin it is
 missing.</doc>
+      <source-position filename="gst-libs/gst/pbutils/missing-plugins.h"
+                       line="76"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">a newly-allocated detail string, or NULL on error. Free string
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/missing-plugins.c"
+             line="682">a newly-allocated detail string, or NULL on error. Free string
          with g_free() when not needed any longer.</doc>
         <type name="utf8" c:type="gchar*"/>
       </return-value>
       <parameters>
         <parameter name="protocol" transfer-ownership="none">
-          <doc xml:space="preserve">the URI protocol the missing source needs to implement,
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/missing-plugins.c"
+               line="670">the URI protocol the missing source needs to implement,
            e.g. "http" or "mms"</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
@@ -3855,20 +5793,30 @@ missing.</doc>
     </function>
     <function name="missing_uri_sink_message_new"
               c:identifier="gst_missing_uri_sink_message_new">
-      <doc xml:space="preserve">Creates a missing-plugin message for @element to notify the application
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/missing-plugins.c"
+           line="191">Creates a missing-plugin message for @element to notify the application
 that a sink element for a particular URI protocol is missing. This
 function is mainly for use in plugins.</doc>
+      <source-position filename="gst-libs/gst/pbutils/missing-plugins.h"
+                       line="37"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">a new #GstMessage, or NULL on error</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/missing-plugins.c"
+             line="201">a new #GstMessage, or NULL on error</doc>
         <type name="Gst.Message" c:type="GstMessage*"/>
       </return-value>
       <parameters>
         <parameter name="element" transfer-ownership="none">
-          <doc xml:space="preserve">the #GstElement posting the message</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/missing-plugins.c"
+               line="193">the #GstElement posting the message</doc>
           <type name="Gst.Element" c:type="GstElement*"/>
         </parameter>
         <parameter name="protocol" transfer-ownership="none">
-          <doc xml:space="preserve">the URI protocol the missing sink needs to implement,
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/missing-plugins.c"
+               line="194">the URI protocol the missing sink needs to implement,
            e.g. "http" or "smb"</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
@@ -3876,7 +5824,9 @@ function is mainly for use in plugins.</doc>
     </function>
     <function name="missing_uri_source_installer_detail_new"
               c:identifier="gst_missing_uri_source_installer_detail_new">
-      <doc xml:space="preserve">Returns an opaque string containing all the details about the missing
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/missing-plugins.c"
+           line="640">Returns an opaque string containing all the details about the missing
 element to be passed to an external installer called via
 gst_install_plugins_async() or gst_install_plugins_sync().
 
@@ -3884,14 +5834,20 @@ This function is mainly for applications that call external plugin
 installation mechanisms using one of the two above-mentioned functions in
 the case where the application knows exactly what kind of plugin it is
 missing.</doc>
+      <source-position filename="gst-libs/gst/pbutils/missing-plugins.h"
+                       line="73"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">a newly-allocated detail string, or NULL on error. Free string
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/missing-plugins.c"
+             line="654">a newly-allocated detail string, or NULL on error. Free string
          with g_free() when not needed any longer.</doc>
         <type name="utf8" c:type="gchar*"/>
       </return-value>
       <parameters>
         <parameter name="protocol" transfer-ownership="none">
-          <doc xml:space="preserve">the URI protocol the missing source needs to implement,
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/missing-plugins.c"
+               line="642">the URI protocol the missing source needs to implement,
            e.g. "http" or "mms"</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
@@ -3899,20 +5855,30 @@ missing.</doc>
     </function>
     <function name="missing_uri_source_message_new"
               c:identifier="gst_missing_uri_source_message_new">
-      <doc xml:space="preserve">Creates a missing-plugin message for @element to notify the application
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/missing-plugins.c"
+           line="158">Creates a missing-plugin message for @element to notify the application
 that a source element for a particular URI protocol is missing. This
 function is mainly for use in plugins.</doc>
+      <source-position filename="gst-libs/gst/pbutils/missing-plugins.h"
+                       line="33"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">a new #GstMessage, or NULL on error</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/missing-plugins.c"
+             line="168">a new #GstMessage, or NULL on error</doc>
         <type name="Gst.Message" c:type="GstMessage*"/>
       </return-value>
       <parameters>
         <parameter name="element" transfer-ownership="none">
-          <doc xml:space="preserve">the #GstElement posting the message</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/missing-plugins.c"
+               line="160">the #GstElement posting the message</doc>
           <type name="Gst.Element" c:type="GstElement*"/>
         </parameter>
         <parameter name="protocol" transfer-ownership="none">
-          <doc xml:space="preserve">the URI protocol the missing source needs to implement,
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/missing-plugins.c"
+               line="161">the URI protocol the missing source needs to implement,
            e.g. "http" or "mms"</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
@@ -3920,170 +5886,237 @@ function is mainly for use in plugins.</doc>
     </function>
     <function name="pb_utils_add_codec_description_to_tag_list"
               c:identifier="gst_pb_utils_add_codec_description_to_tag_list">
-      <doc xml:space="preserve">Adds a codec tag describing the format specified by @caps to @taglist.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/descriptions.c"
+           line="1141">Adds a codec tag describing the format specified by @caps to @taglist.</doc>
+      <source-position filename="gst-libs/gst/pbutils/descriptions.h"
+                       line="35"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">TRUE if a codec tag was added, FALSE otherwise.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/descriptions.c"
+             line="1151">TRUE if a codec tag was added, FALSE otherwise.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="taglist" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstTagList</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/descriptions.c"
+               line="1143">a #GstTagList</doc>
           <type name="Gst.TagList" c:type="GstTagList*"/>
         </parameter>
         <parameter name="codec_tag"
                    transfer-ownership="none"
                    nullable="1"
                    allow-none="1">
-          <doc xml:space="preserve">a GStreamer codec tag such as #GST_TAG_AUDIO_CODEC,
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/descriptions.c"
+               line="1144">a GStreamer codec tag such as #GST_TAG_AUDIO_CODEC,
             #GST_TAG_VIDEO_CODEC or #GST_TAG_CODEC. If none is specified,
             the function will attempt to detect the appropriate category.</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
         <parameter name="caps" transfer-ownership="none">
-          <doc xml:space="preserve">the (fixed) #GstCaps for which a codec tag should be added.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/descriptions.c"
+               line="1147">the (fixed) #GstCaps for which a codec tag should be added.</doc>
           <type name="Gst.Caps" c:type="const GstCaps*"/>
         </parameter>
       </parameters>
     </function>
     <function name="pb_utils_get_codec_description"
               c:identifier="gst_pb_utils_get_codec_description">
-      <doc xml:space="preserve">Returns a localised (as far as this is possible) string describing the
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/descriptions.c"
+           line="1192">Returns a localised (as far as this is possible) string describing the
 media format specified in @caps, for use in error dialogs or other messages
 to be seen by the user. Should never return NULL unless @caps is invalid.
 
 Also see the convenience function
 gst_pb_utils_add_codec_description_to_tag_list().</doc>
+      <source-position filename="gst-libs/gst/pbutils/descriptions.h"
+                       line="40"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">a newly-allocated description string, or NULL on error. Free
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/descriptions.c"
+             line="1203">a newly-allocated description string, or NULL on error. Free
          string with g_free() when not needed any longer.</doc>
         <type name="utf8" c:type="gchar*"/>
       </return-value>
       <parameters>
         <parameter name="caps" transfer-ownership="none">
-          <doc xml:space="preserve">the (fixed) #GstCaps for which an format description is needed</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/descriptions.c"
+               line="1194">the (fixed) #GstCaps for which an format description is needed</doc>
           <type name="Gst.Caps" c:type="const GstCaps*"/>
         </parameter>
       </parameters>
     </function>
     <function name="pb_utils_get_decoder_description"
               c:identifier="gst_pb_utils_get_decoder_description">
-      <doc xml:space="preserve">Returns a localised string describing an decoder for the format specified
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/descriptions.c"
+           line="1003">Returns a localised string describing an decoder for the format specified
 in @caps, for use in error dialogs or other messages to be seen by the user.
 Should never return NULL unless @factory_name or @caps are invalid.
 
 This function is mainly for internal use, applications would typically
 use gst_missing_plugin_message_get_description() to get a description of
 a missing feature from a missing-plugin message.</doc>
+      <source-position filename="gst-libs/gst/pbutils/descriptions.h"
+                       line="54"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">a newly-allocated description string, or NULL on error. Free
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/descriptions.c"
+             line="1015">a newly-allocated description string, or NULL on error. Free
          string with g_free() when not needed any longer.</doc>
         <type name="utf8" c:type="gchar*"/>
       </return-value>
       <parameters>
         <parameter name="caps" transfer-ownership="none">
-          <doc xml:space="preserve">the (fixed) #GstCaps for which an decoder description is needed</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/descriptions.c"
+               line="1005">the (fixed) #GstCaps for which an decoder description is needed</doc>
           <type name="Gst.Caps" c:type="const GstCaps*"/>
         </parameter>
       </parameters>
     </function>
     <function name="pb_utils_get_element_description"
               c:identifier="gst_pb_utils_get_element_description">
-      <doc xml:space="preserve">Returns a localised string describing the given element, for use in
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/descriptions.c"
+           line="1110">Returns a localised string describing the given element, for use in
 error dialogs or other messages to be seen by the user. Should never
 return NULL unless @factory_name is invalid.
 
 This function is mainly for internal use, applications would typically
 use gst_missing_plugin_message_get_description() to get a description of
 a missing feature from a missing-plugin message.</doc>
+      <source-position filename="gst-libs/gst/pbutils/descriptions.h"
+                       line="60"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">a newly-allocated description string, or NULL on error. Free
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/descriptions.c"
+             line="1122">a newly-allocated description string, or NULL on error. Free
          string with g_free() when not needed any longer.</doc>
         <type name="utf8" c:type="gchar*"/>
       </return-value>
       <parameters>
         <parameter name="factory_name" transfer-ownership="none">
-          <doc xml:space="preserve">the name of the element, e.g. "giosrc"</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/descriptions.c"
+               line="1112">the name of the element, e.g. "giosrc"</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
       </parameters>
     </function>
     <function name="pb_utils_get_encoder_description"
               c:identifier="gst_pb_utils_get_encoder_description">
-      <doc xml:space="preserve">Returns a localised string describing an encoder for the format specified
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/descriptions.c"
+           line="1058">Returns a localised string describing an encoder for the format specified
 in @caps, for use in error dialogs or other messages to be seen by the user.
 Should never return NULL unless @factory_name or @caps are invalid.
 
 This function is mainly for internal use, applications would typically
 use gst_missing_plugin_message_get_description() to get a description of
 a missing feature from a missing-plugin message.</doc>
+      <source-position filename="gst-libs/gst/pbutils/descriptions.h"
+                       line="57"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">a newly-allocated description string, or NULL on error. Free
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/descriptions.c"
+             line="1070">a newly-allocated description string, or NULL on error. Free
          string with g_free() when not needed any longer.</doc>
         <type name="utf8" c:type="gchar*"/>
       </return-value>
       <parameters>
         <parameter name="caps" transfer-ownership="none">
-          <doc xml:space="preserve">the (fixed) #GstCaps for which an encoder description is needed</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/descriptions.c"
+               line="1060">the (fixed) #GstCaps for which an encoder description is needed</doc>
           <type name="Gst.Caps" c:type="const GstCaps*"/>
         </parameter>
       </parameters>
     </function>
     <function name="pb_utils_get_sink_description"
               c:identifier="gst_pb_utils_get_sink_description">
-      <doc xml:space="preserve">Returns a localised string describing a sink element handling the protocol
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/descriptions.c"
+           line="968">Returns a localised string describing a sink element handling the protocol
 specified in @protocol, for use in error dialogs or other messages to be
 seen by the user. Should never return NULL unless @protocol is invalid.
 
 This function is mainly for internal use, applications would typically
 use gst_missing_plugin_message_get_description() to get a description of
 a missing feature from a missing-plugin message.</doc>
+      <source-position filename="gst-libs/gst/pbutils/descriptions.h"
+                       line="51"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">a newly-allocated description string, or NULL on error. Free
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/descriptions.c"
+             line="980">a newly-allocated description string, or NULL on error. Free
          string with g_free() when not needed any longer.</doc>
         <type name="utf8" c:type="gchar*"/>
       </return-value>
       <parameters>
         <parameter name="protocol" transfer-ownership="none">
-          <doc xml:space="preserve">the protocol the sink element needs to handle, e.g. "http"</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/descriptions.c"
+               line="970">the protocol the sink element needs to handle, e.g. "http"</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
       </parameters>
     </function>
     <function name="pb_utils_get_source_description"
               c:identifier="gst_pb_utils_get_source_description">
-      <doc xml:space="preserve">Returns a localised string describing a source element handling the protocol
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/descriptions.c"
+           line="918">Returns a localised string describing a source element handling the protocol
 specified in @protocol, for use in error dialogs or other messages to be
 seen by the user. Should never return NULL unless @protocol is invalid.
 
 This function is mainly for internal use, applications would typically
 use gst_missing_plugin_message_get_description() to get a description of
 a missing feature from a missing-plugin message.</doc>
+      <source-position filename="gst-libs/gst/pbutils/descriptions.h"
+                       line="48"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">a newly-allocated description string, or NULL on error. Free
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/descriptions.c"
+             line="930">a newly-allocated description string, or NULL on error. Free
          string with g_free() when not needed any longer.</doc>
         <type name="utf8" c:type="gchar*"/>
       </return-value>
       <parameters>
         <parameter name="protocol" transfer-ownership="none">
-          <doc xml:space="preserve">the protocol the source element needs to handle, e.g. "http"</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/descriptions.c"
+               line="920">the protocol the source element needs to handle, e.g. "http"</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
       </parameters>
     </function>
     <function name="pb_utils_init" c:identifier="gst_pb_utils_init">
-      <doc xml:space="preserve">Initialises the base utils support library. This function is not
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/pbutils.c"
+           line="85">Initialises the base utils support library. This function is not
 thread-safe. Applications should call it after calling gst_init(),
 plugins should call it from their plugin_init function.
 
 This function may be called multiple times. It will do nothing if the
 library has already been initialised.</doc>
+      <source-position filename="gst-libs/gst/pbutils/pbutils.h" line="39"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
     </function>
     <function name="plugins_base_version"
               c:identifier="gst_plugins_base_version">
-      <doc xml:space="preserve">Gets the version number of the GStreamer Plugins Base libraries.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/gstpluginsbaseversion.c"
+           line="38">Gets the version number of the GStreamer Plugins Base libraries.</doc>
+      <source-position filename="gst-libs/gst/pbutils/gstpluginsbaseversion.h"
+                       line="72"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
@@ -4092,39 +6125,53 @@ library has already been initialised.</doc>
                    direction="out"
                    caller-allocates="0"
                    transfer-ownership="full">
-          <doc xml:space="preserve">pointer to a guint to store the major version number, or %NULL</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/gstpluginsbaseversion.c"
+               line="40">pointer to a guint to store the major version number, or %NULL</doc>
           <type name="guint" c:type="guint*"/>
         </parameter>
         <parameter name="minor"
                    direction="out"
                    caller-allocates="0"
                    transfer-ownership="full">
-          <doc xml:space="preserve">pointer to a guint to store the minor version number, or %NULL</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/gstpluginsbaseversion.c"
+               line="41">pointer to a guint to store the minor version number, or %NULL</doc>
           <type name="guint" c:type="guint*"/>
         </parameter>
         <parameter name="micro"
                    direction="out"
                    caller-allocates="0"
                    transfer-ownership="full">
-          <doc xml:space="preserve">pointer to a guint to store the micro version number, or %NULL</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/gstpluginsbaseversion.c"
+               line="42">pointer to a guint to store the micro version number, or %NULL</doc>
           <type name="guint" c:type="guint*"/>
         </parameter>
         <parameter name="nano"
                    direction="out"
                    caller-allocates="0"
                    transfer-ownership="full">
-          <doc xml:space="preserve">pointer to a guint to store the nano version number, or %NULL</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/pbutils/gstpluginsbaseversion.c"
+               line="43">pointer to a guint to store the nano version number, or %NULL</doc>
           <type name="guint" c:type="guint*"/>
         </parameter>
       </parameters>
     </function>
     <function name="plugins_base_version_string"
               c:identifier="gst_plugins_base_version_string">
-      <doc xml:space="preserve">This function returns a string that is useful for describing this version
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/pbutils/gstpluginsbaseversion.c"
+           line="61">This function returns a string that is useful for describing this version
 of GStreamer's gst-plugins-base libraries to the outside world: user agent
 strings, logging, about dialogs ...</doc>
+      <source-position filename="gst-libs/gst/pbutils/gstpluginsbaseversion.h"
+                       line="75"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">a newly allocated string describing this version of gst-plugins-base</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/pbutils/gstpluginsbaseversion.c"
+             line="68">a newly allocated string describing this version of gst-plugins-base</doc>
         <type name="utf8" c:type="gchar*"/>
       </return-value>
     </function>
index bbfc42c..f6f004c 100644 (file)
@@ -15,8 +15,70 @@ and/or use gtk-doc annotations.  -->
              shared-library="libgstrtp-1.0.so.0"
              c:identifier-prefixes="Gst"
              c:symbol-prefixes="gst">
+    <function-macro name="IS_RTP_BASE_AUDIO_PAYLOAD"
+                    c:identifier="GST_IS_RTP_BASE_AUDIO_PAYLOAD"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/rtp/gstrtpbaseaudiopayload.h"
+                       line="41"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_RTP_BASE_AUDIO_PAYLOAD_CLASS"
+                    c:identifier="GST_IS_RTP_BASE_AUDIO_PAYLOAD_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/rtp/gstrtpbaseaudiopayload.h"
+                       line="43"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_RTP_BASE_DEPAYLOAD"
+                    c:identifier="GST_IS_RTP_BASE_DEPAYLOAD"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/rtp/gstrtpbasedepayload.h"
+                       line="35"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_RTP_BASE_DEPAYLOAD_CLASS"
+                    c:identifier="GST_IS_RTP_BASE_DEPAYLOAD_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/rtp/gstrtpbasedepayload.h"
+                       line="37"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_RTP_BASE_PAYLOAD"
+                    c:identifier="GST_IS_RTP_BASE_PAYLOAD"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/rtp/gstrtpbasepayload.h"
+                       line="35"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_RTP_BASE_PAYLOAD_CLASS"
+                    c:identifier="GST_IS_RTP_BASE_PAYLOAD_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/rtp/gstrtpbasepayload.h"
+                       line="37"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
     <record name="RTCPBuffer" c:type="GstRTCPBuffer">
-      <doc xml:space="preserve">Note: The API in this module is not yet declared stable.
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+           line="23">Note: The API in this module is not yet declared stable.
 
 The GstRTPCBuffer helper functions makes it easy to parse and create regular
 #GstBuffer objects that contain compound RTCP packets. These buffers are typically
@@ -26,6 +88,7 @@ An RTCP buffer consists of 1 or more #GstRTCPPacket structures that you can
 retrieve with gst_rtcp_buffer_get_first_packet(). #GstRTCPPacket acts as a pointer
 into the RTCP buffer; you can move to the next packet with
 gst_rtcp_packet_move_to_next().</doc>
+      <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h" line="229"/>
       <field name="buffer" writable="1">
         <type name="Gst.Buffer" c:type="GstBuffer*"/>
       </field>
@@ -33,189 +96,281 @@ gst_rtcp_packet_move_to_next().</doc>
         <type name="Gst.MapInfo" c:type="GstMapInfo"/>
       </field>
       <method name="add_packet" c:identifier="gst_rtcp_buffer_add_packet">
-        <doc xml:space="preserve">Add a new packet of @type to @rtcp. @packet will point to the newly created
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="530">Add a new packet of @type to @rtcp. @packet will point to the newly created
 packet.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="300"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the packet could be created. This function returns %FALSE
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="539">%TRUE if the packet could be created. This function returns %FALSE
 if the max mtu is exceeded for the buffer.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="rtcp" transfer-ownership="none">
-            <doc xml:space="preserve">a valid RTCP buffer</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="532">a valid RTCP buffer</doc>
             <type name="RTCPBuffer" c:type="GstRTCPBuffer*"/>
           </instance-parameter>
           <parameter name="type" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstRTCPType of the new packet</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="533">the #GstRTCPType of the new packet</doc>
             <type name="RTCPType" c:type="GstRTCPType"/>
           </parameter>
           <parameter name="packet" transfer-ownership="none">
-            <doc xml:space="preserve">pointer to new packet</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="534">pointer to new packet</doc>
             <type name="RTCPPacket" c:type="GstRTCPPacket*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_first_packet"
               c:identifier="gst_rtcp_buffer_get_first_packet">
-        <doc xml:space="preserve">Initialize a new #GstRTCPPacket pointer that points to the first packet in
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="460">Initialize a new #GstRTCPPacket pointer that points to the first packet in
 @rtcp.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="294"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">TRUE if the packet existed in @rtcp.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="468">TRUE if the packet existed in @rtcp.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="rtcp" transfer-ownership="none">
-            <doc xml:space="preserve">a valid RTCP buffer</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="462">a valid RTCP buffer</doc>
             <type name="RTCPBuffer" c:type="GstRTCPBuffer*"/>
           </instance-parameter>
           <parameter name="packet" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTCPPacket</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="463">a #GstRTCPPacket</doc>
             <type name="RTCPPacket" c:type="GstRTCPPacket*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_packet_count"
               c:identifier="gst_rtcp_buffer_get_packet_count">
-        <doc xml:space="preserve">Get the number of RTCP packets in @rtcp.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the number of RTCP packets in @rtcp.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="348">Get the number of RTCP packets in @rtcp.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="291"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="354">the number of RTCP packets in @rtcp.</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="rtcp" transfer-ownership="none">
-            <doc xml:space="preserve">a valid RTCP buffer</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="350">a valid RTCP buffer</doc>
             <type name="RTCPBuffer" c:type="GstRTCPBuffer*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="unmap" c:identifier="gst_rtcp_buffer_unmap">
-        <doc xml:space="preserve">Finish @rtcp after being constructed. This function is usually called
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="321">Finish @rtcp after being constructed. This function is usually called
 after gst_rtcp_buffer_map() and after adding the RTCP items to the new buffer.
 
 The function adjusts the size of @rtcp with the total length of all the
 added packets.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="286"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="rtcp" transfer-ownership="none">
-            <doc xml:space="preserve">a buffer with an RTCP packet</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="323">a buffer with an RTCP packet</doc>
             <type name="RTCPBuffer" c:type="GstRTCPBuffer*"/>
           </instance-parameter>
         </parameters>
       </method>
       <function name="map" c:identifier="gst_rtcp_buffer_map">
-        <doc xml:space="preserve">Open @buffer for reading or writing, depending on @flags. The resulting RTCP
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="297">Open @buffer for reading or writing, depending on @flags. The resulting RTCP
 buffer state is stored in @rtcp.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="283"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <parameter name="buffer" transfer-ownership="none">
-            <doc xml:space="preserve">a buffer with an RTCP packet</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="299">a buffer with an RTCP packet</doc>
             <type name="Gst.Buffer" c:type="GstBuffer*"/>
           </parameter>
           <parameter name="flags" transfer-ownership="none">
-            <doc xml:space="preserve">flags for the mapping</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="300">flags for the mapping</doc>
             <type name="Gst.MapFlags" c:type="GstMapFlags"/>
           </parameter>
           <parameter name="rtcp" transfer-ownership="none">
-            <doc xml:space="preserve">resulting #GstRTCPBuffer</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="301">resulting #GstRTCPBuffer</doc>
             <type name="RTCPBuffer" c:type="GstRTCPBuffer*"/>
           </parameter>
         </parameters>
       </function>
       <function name="new" c:identifier="gst_rtcp_buffer_new">
-        <doc xml:space="preserve">Create a new buffer for constructing RTCP packets. The packet will have a
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="273">Create a new buffer for constructing RTCP packets. The packet will have a
 maximum size of @mtu.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="280"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">A newly allocated buffer.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="280">A newly allocated buffer.</doc>
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </return-value>
         <parameters>
           <parameter name="mtu" transfer-ownership="none">
-            <doc xml:space="preserve">the maximum mtu size.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="275">the maximum mtu size.</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </function>
       <function name="new_copy_data"
                 c:identifier="gst_rtcp_buffer_new_copy_data">
-        <doc xml:space="preserve">Create a new buffer and set the data to a copy of @len
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="73">Create a new buffer and set the data to a copy of @len
 bytes of @data and the size to @len. The data will be freed when the buffer
 is freed.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="264"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">A newly allocated buffer with a copy of @data and of size @len.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="82">A newly allocated buffer with a copy of @data and of size @len.</doc>
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </return-value>
         <parameters>
           <parameter name="data" transfer-ownership="none">
-            <doc xml:space="preserve">data for the new buffer</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="75">data for the new buffer</doc>
             <array length="1" zero-terminated="0" c:type="gconstpointer">
               <type name="guint8"/>
             </array>
           </parameter>
           <parameter name="len" transfer-ownership="none">
-            <doc xml:space="preserve">the length of data</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="76">the length of data</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </function>
       <function name="new_take_data"
                 c:identifier="gst_rtcp_buffer_new_take_data">
-        <doc xml:space="preserve">Create a new buffer and set the data and size of the buffer to @data and @len
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="49">Create a new buffer and set the data and size of the buffer to @data and @len
 respectively. @data will be freed when the buffer is unreffed, so this
 function transfers ownership of @data to the new buffer.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="261"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">A newly allocated buffer with @data and of size @len.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="58">A newly allocated buffer with @data and of size @len.</doc>
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </return-value>
         <parameters>
           <parameter name="data" transfer-ownership="none">
-            <doc xml:space="preserve">data for the new buffer</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="51">data for the new buffer</doc>
             <array length="1" zero-terminated="0" c:type="gpointer">
               <type name="guint8"/>
             </array>
           </parameter>
           <parameter name="len" transfer-ownership="none">
-            <doc xml:space="preserve">the length of data</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="52">the length of data</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </function>
       <function name="validate" c:identifier="gst_rtcp_buffer_validate">
-        <doc xml:space="preserve">Check if the data pointed to by @buffer is a valid RTCP packet using
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="249">Check if the data pointed to by @buffer is a valid RTCP packet using
 gst_rtcp_buffer_validate_data().</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="270"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">TRUE if @buffer is a valid RTCP packet.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="256">TRUE if @buffer is a valid RTCP packet.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <parameter name="buffer" transfer-ownership="none">
-            <doc xml:space="preserve">the buffer to validate</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="251">the buffer to validate</doc>
             <type name="Gst.Buffer" c:type="GstBuffer*"/>
           </parameter>
         </parameters>
       </function>
       <function name="validate_data"
                 c:identifier="gst_rtcp_buffer_validate_data">
-        <doc xml:space="preserve">Check if the @data and @size point to the data of a valid compound,
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="204">Check if the @data and @size point to the data of a valid compound,
 non-reduced size RTCP packet.
 Use this function to validate a packet before using the other functions in
 this module.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="267"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">TRUE if the data points to a valid RTCP packet.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="214">TRUE if the data points to a valid RTCP packet.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <parameter name="data" transfer-ownership="none">
-            <doc xml:space="preserve">the data to validate</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="206">the data to validate</doc>
             <array length="1" zero-terminated="0" c:type="guint8*">
               <type name="guint8" c:type="guint8"/>
             </array>
           </parameter>
           <parameter name="len" transfer-ownership="none">
-            <doc xml:space="preserve">the length of @data to validate</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="207">the length of @data to validate</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
@@ -223,26 +378,36 @@ this module.</doc>
       <function name="validate_data_reduced"
                 c:identifier="gst_rtcp_buffer_validate_data_reduced"
                 version="1.6">
-        <doc xml:space="preserve">Check if the @data and @size point to the data of a valid RTCP packet.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="180">Check if the @data and @size point to the data of a valid RTCP packet.
 Use this function to validate a packet before using the other functions in
 this module.
 
 This function is updated to support reduced size rtcp packets according to
 RFC 5506 and will validate full compound RTCP packets as well as reduced
 size RTCP packets.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="273"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">TRUE if the data points to a valid RTCP packet.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="193">TRUE if the data points to a valid RTCP packet.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <parameter name="data" transfer-ownership="none">
-            <doc xml:space="preserve">the data to validate</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="182">the data to validate</doc>
             <array length="1" zero-terminated="0" c:type="guint8*">
               <type name="guint8" c:type="guint8"/>
             </array>
           </parameter>
           <parameter name="len" transfer-ownership="none">
-            <doc xml:space="preserve">the length of @data to validate</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="183">the length of @data to validate</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
@@ -250,15 +415,23 @@ size RTCP packets.</doc>
       <function name="validate_reduced"
                 c:identifier="gst_rtcp_buffer_validate_reduced"
                 version="1.6">
-        <doc xml:space="preserve">Check if the data pointed to by @buffer is a valid RTCP packet using
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="223">Check if the data pointed to by @buffer is a valid RTCP packet using
 gst_rtcp_buffer_validate_reduced().</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="276"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">TRUE if @buffer is a valid RTCP packet.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="230">TRUE if @buffer is a valid RTCP packet.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <parameter name="buffer" transfer-ownership="none">
-            <doc xml:space="preserve">the buffer to validate</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="225">the buffer to validate</doc>
             <type name="Gst.Buffer" c:type="GstBuffer*"/>
           </parameter>
         </parameters>
@@ -268,97 +441,137 @@ gst_rtcp_buffer_validate_reduced().</doc>
                  glib:type-name="GstRTCPFBType"
                  glib:get-type="gst_rtcpfb_type_get_type"
                  c:type="GstRTCPFBType">
-      <doc xml:space="preserve">Different types of feedback messages.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+           line="68">Different types of feedback messages.</doc>
       <member name="fb_type_invalid"
               value="0"
               c:identifier="GST_RTCP_FB_TYPE_INVALID"
               glib:nick="fb-type-invalid">
-        <doc xml:space="preserve">Invalid type</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+             line="70">Invalid type</doc>
       </member>
       <member name="rtpfb_type_nack"
               value="1"
               c:identifier="GST_RTCP_RTPFB_TYPE_NACK"
               glib:nick="rtpfb-type-nack">
-        <doc xml:space="preserve">Generic NACK</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+             line="71">Generic NACK</doc>
       </member>
       <member name="rtpfb_type_tmmbr"
               value="3"
               c:identifier="GST_RTCP_RTPFB_TYPE_TMMBR"
               glib:nick="rtpfb-type-tmmbr">
-        <doc xml:space="preserve">Temporary Maximum Media Stream Bit Rate Request</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+             line="72">Temporary Maximum Media Stream Bit Rate Request</doc>
       </member>
       <member name="rtpfb_type_tmmbn"
               value="4"
               c:identifier="GST_RTCP_RTPFB_TYPE_TMMBN"
               glib:nick="rtpfb-type-tmmbn">
-        <doc xml:space="preserve">Temporary Maximum Media Stream Bit Rate
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+             line="73">Temporary Maximum Media Stream Bit Rate
    Notification</doc>
       </member>
       <member name="rtpfb_type_rtcp_sr_req"
               value="5"
               c:identifier="GST_RTCP_RTPFB_TYPE_RTCP_SR_REQ"
               glib:nick="rtpfb-type-rtcp-sr-req">
-        <doc xml:space="preserve">Request an SR packet for early
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+             line="75">Request an SR packet for early
    synchronization</doc>
       </member>
+      <member name="rtpfb_type_twcc"
+              value="15"
+              c:identifier="GST_RTCP_RTPFB_TYPE_TWCC"
+              glib:nick="rtpfb-type-twcc">
+      </member>
       <member name="psfb_type_pli"
               value="1"
               c:identifier="GST_RTCP_PSFB_TYPE_PLI"
               glib:nick="psfb-type-pli">
-        <doc xml:space="preserve">Picture Loss Indication</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+             line="77">Picture Loss Indication</doc>
       </member>
       <member name="psfb_type_sli"
               value="2"
               c:identifier="GST_RTCP_PSFB_TYPE_SLI"
               glib:nick="psfb-type-sli">
-        <doc xml:space="preserve">Slice Loss Indication</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+             line="78">Slice Loss Indication</doc>
       </member>
       <member name="psfb_type_rpsi"
               value="3"
               c:identifier="GST_RTCP_PSFB_TYPE_RPSI"
               glib:nick="psfb-type-rpsi">
-        <doc xml:space="preserve">Reference Picture Selection Indication</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+             line="79">Reference Picture Selection Indication</doc>
       </member>
       <member name="psfb_type_afb"
               value="15"
               c:identifier="GST_RTCP_PSFB_TYPE_AFB"
               glib:nick="psfb-type-afb">
-        <doc xml:space="preserve">Application layer Feedback</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+             line="80">Application layer Feedback</doc>
       </member>
       <member name="psfb_type_fir"
               value="4"
               c:identifier="GST_RTCP_PSFB_TYPE_FIR"
               glib:nick="psfb-type-fir">
-        <doc xml:space="preserve">Full Intra Request Command</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+             line="81">Full Intra Request Command</doc>
       </member>
       <member name="psfb_type_tstr"
               value="5"
               c:identifier="GST_RTCP_PSFB_TYPE_TSTR"
               glib:nick="psfb-type-tstr">
-        <doc xml:space="preserve">Temporal-Spatial Trade-off Request</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+             line="82">Temporal-Spatial Trade-off Request</doc>
       </member>
       <member name="psfb_type_tstn"
               value="6"
               c:identifier="GST_RTCP_PSFB_TYPE_TSTN"
               glib:nick="psfb-type-tstn">
-        <doc xml:space="preserve">Temporal-Spatial Trade-off Notification</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+             line="83">Temporal-Spatial Trade-off Notification</doc>
       </member>
       <member name="psfb_type_vbcn"
               value="7"
               c:identifier="GST_RTCP_PSFB_TYPE_VBCN"
               glib:nick="psfb-type-vbcn">
-        <doc xml:space="preserve">Video Back Channel Message</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+             line="84">Video Back Channel Message</doc>
       </member>
     </enumeration>
     <record name="RTCPPacket" c:type="GstRTCPPacket">
-      <doc xml:space="preserve">Data structure that points to a packet at @offset in @buffer.
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+           line="233">Data structure that points to a packet at @offset in @buffer.
 The size of the structure is made public to allow stack allocations.</doc>
+      <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h" line="256"/>
       <field name="rtcp" writable="1">
-        <doc xml:space="preserve">pointer to RTCP buffer</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+             line="235">pointer to RTCP buffer</doc>
         <type name="RTCPBuffer" c:type="GstRTCPBuffer*"/>
       </field>
       <field name="offset" writable="1">
-        <doc xml:space="preserve">offset of packet in buffer data</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+             line="236">offset of packet in buffer data</doc>
         <type name="guint" c:type="guint"/>
       </field>
       <field name="padding" readable="0" private="1">
@@ -384,69 +597,103 @@ The size of the structure is made public to allow stack allocations.</doc>
       </field>
       <method name="add_profile_specific_ext"
               c:identifier="gst_rtcp_packet_add_profile_specific_ext">
-        <doc xml:space="preserve">Add profile-specific extension @data to @packet. If @packet already
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="1060">Add profile-specific extension @data to @packet. If @packet already
 contains profile-specific extension @data will be appended to the existing
 extension.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="367"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the profile specific extension data was added.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="1070">%TRUE if the profile specific extension data was added.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="packet" transfer-ownership="none">
-            <doc xml:space="preserve">a valid SR or RR #GstRTCPPacket</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="1062">a valid SR or RR #GstRTCPPacket</doc>
             <type name="RTCPPacket" c:type="GstRTCPPacket*"/>
           </instance-parameter>
           <parameter name="data" transfer-ownership="none">
-            <doc xml:space="preserve">profile-specific data</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="1063">profile-specific data</doc>
             <array length="1" zero-terminated="0" c:type="const guint8*">
               <type name="guint8" c:type="guint8"/>
             </array>
           </parameter>
           <parameter name="len" transfer-ownership="none">
-            <doc xml:space="preserve">length of the profile-specific data in bytes</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="1064">length of the profile-specific data in bytes</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="add_rb" c:identifier="gst_rtcp_packet_add_rb">
-        <doc xml:space="preserve">Add a new report block to @packet with the given values.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the packet was created. This function can return %FALSE if
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="943">Add a new report block to @packet with the given values.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="353"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="956">%TRUE if the packet was created. This function can return %FALSE if
 the max MTU is exceeded or the number of report blocks is greater than
 #GST_RTCP_MAX_RB_COUNT.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="packet" transfer-ownership="none">
-            <doc xml:space="preserve">a valid SR or RR #GstRTCPPacket</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="945">a valid SR or RR #GstRTCPPacket</doc>
             <type name="RTCPPacket" c:type="GstRTCPPacket*"/>
           </instance-parameter>
           <parameter name="ssrc" transfer-ownership="none">
-            <doc xml:space="preserve">data source being reported</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="946">data source being reported</doc>
             <type name="guint32" c:type="guint32"/>
           </parameter>
           <parameter name="fractionlost" transfer-ownership="none">
-            <doc xml:space="preserve">fraction lost since last SR/RR</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="947">fraction lost since last SR/RR</doc>
             <type name="guint8" c:type="guint8"/>
           </parameter>
           <parameter name="packetslost" transfer-ownership="none">
-            <doc xml:space="preserve">the cumululative number of packets lost</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="948">the cumululative number of packets lost</doc>
             <type name="gint32" c:type="gint32"/>
           </parameter>
           <parameter name="exthighestseq" transfer-ownership="none">
-            <doc xml:space="preserve">the extended last sequence number received</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="949">the extended last sequence number received</doc>
             <type name="guint32" c:type="guint32"/>
           </parameter>
           <parameter name="jitter" transfer-ownership="none">
-            <doc xml:space="preserve">the interarrival jitter</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="950">the interarrival jitter</doc>
             <type name="guint32" c:type="guint32"/>
           </parameter>
           <parameter name="lsr" transfer-ownership="none">
-            <doc xml:space="preserve">the last SR packet from this source</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="951">the last SR packet from this source</doc>
             <type name="guint32" c:type="guint32"/>
           </parameter>
           <parameter name="dlsr" transfer-ownership="none">
-            <doc xml:space="preserve">the delay since last SR packet</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="952">the delay since last SR packet</doc>
             <type name="guint32" c:type="guint32"/>
           </parameter>
         </parameters>
@@ -454,14 +701,22 @@ the max MTU is exceeded or the number of report blocks is greater than
       <method name="app_get_data"
               c:identifier="gst_rtcp_packet_app_get_data"
               version="1.10">
-        <doc xml:space="preserve">Get the application-dependent data attached to a RTPFB or PSFB @packet.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">A pointer to the data</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="2531">Get the application-dependent data attached to a RTPFB or PSFB @packet.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="468"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="2537">A pointer to the data</doc>
           <type name="guint8" c:type="guint8*"/>
         </return-value>
         <parameters>
           <instance-parameter name="packet" transfer-ownership="none">
-            <doc xml:space="preserve">a valid APP #GstRTCPPacket</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="2533">a valid APP #GstRTCPPacket</doc>
             <type name="RTCPPacket" c:type="GstRTCPPacket*"/>
           </instance-parameter>
         </parameters>
@@ -469,15 +724,23 @@ the max MTU is exceeded or the number of report blocks is greater than
       <method name="app_get_data_length"
               c:identifier="gst_rtcp_packet_app_get_data_length"
               version="1.10">
-        <doc xml:space="preserve">Get the length of the application-dependent data attached to an APP
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="2470">Get the length of the application-dependent data attached to an APP
 @packet.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="462"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The length of data in 32-bit words.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="2477">The length of data in 32-bit words.</doc>
           <type name="guint16" c:type="guint16"/>
         </return-value>
         <parameters>
           <instance-parameter name="packet" transfer-ownership="none">
-            <doc xml:space="preserve">a valid APP #GstRTCPPacket</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="2472">a valid APP #GstRTCPPacket</doc>
             <type name="RTCPPacket" c:type="GstRTCPPacket*"/>
           </instance-parameter>
         </parameters>
@@ -485,14 +748,22 @@ the max MTU is exceeded or the number of report blocks is greater than
       <method name="app_get_name"
               c:identifier="gst_rtcp_packet_app_get_name"
               version="1.10">
-        <doc xml:space="preserve">Get the name field of the APP @packet.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The 4-byte name field, not zero-terminated.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="2449">Get the name field of the APP @packet.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="459"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="2455">The 4-byte name field, not zero-terminated.</doc>
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
         <parameters>
           <instance-parameter name="packet" transfer-ownership="none">
-            <doc xml:space="preserve">a valid APP #GstRTCPPacket</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="2451">a valid APP #GstRTCPPacket</doc>
             <type name="RTCPPacket" c:type="GstRTCPPacket*"/>
           </instance-parameter>
         </parameters>
@@ -500,14 +771,22 @@ the max MTU is exceeded or the number of report blocks is greater than
       <method name="app_get_ssrc"
               c:identifier="gst_rtcp_packet_app_get_ssrc"
               version="1.10">
-        <doc xml:space="preserve">Get the SSRC/CSRC field of the APP @packet.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The SSRC/CSRC.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="2401">Get the SSRC/CSRC field of the APP @packet.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="453"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="2407">The SSRC/CSRC.</doc>
           <type name="guint32" c:type="guint32"/>
         </return-value>
         <parameters>
           <instance-parameter name="packet" transfer-ownership="none">
-            <doc xml:space="preserve">a valid APP #GstRTCPPacket</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="2403">a valid APP #GstRTCPPacket</doc>
             <type name="RTCPPacket" c:type="GstRTCPPacket*"/>
           </instance-parameter>
         </parameters>
@@ -515,14 +794,22 @@ the max MTU is exceeded or the number of report blocks is greater than
       <method name="app_get_subtype"
               c:identifier="gst_rtcp_packet_app_get_subtype"
               version="1.10">
-        <doc xml:space="preserve">Get the subtype field of the APP @packet.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The subtype.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="2353">Get the subtype field of the APP @packet.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="447"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="2359">The subtype.</doc>
           <type name="guint8" c:type="guint8"/>
         </return-value>
         <parameters>
           <instance-parameter name="packet" transfer-ownership="none">
-            <doc xml:space="preserve">a valid APP #GstRTCPPacket</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="2355">a valid APP #GstRTCPPacket</doc>
             <type name="RTCPPacket" c:type="GstRTCPPacket*"/>
           </instance-parameter>
         </parameters>
@@ -530,20 +817,30 @@ the max MTU is exceeded or the number of report blocks is greater than
       <method name="app_set_data_length"
               c:identifier="gst_rtcp_packet_app_set_data_length"
               version="1.10">
-        <doc xml:space="preserve">Set the length of the application-dependent data attached to an APP
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="2496">Set the length of the application-dependent data attached to an APP
 @packet.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="465"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if there was enough space in the packet to add this much
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="2504">%TRUE if there was enough space in the packet to add this much
 data.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="packet" transfer-ownership="none">
-            <doc xml:space="preserve">a valid APP #GstRTCPPacket</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="2498">a valid APP #GstRTCPPacket</doc>
             <type name="RTCPPacket" c:type="GstRTCPPacket*"/>
           </instance-parameter>
           <parameter name="wordlen" transfer-ownership="none">
-            <doc xml:space="preserve">Length of the data in 32-bit words</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="2499">Length of the data in 32-bit words</doc>
             <type name="guint16" c:type="guint16"/>
           </parameter>
         </parameters>
@@ -551,17 +848,25 @@ data.</doc>
       <method name="app_set_name"
               c:identifier="gst_rtcp_packet_app_set_name"
               version="1.10">
-        <doc xml:space="preserve">Set the name field of the APP @packet.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="2426">Set the name field of the APP @packet.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="456"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="packet" transfer-ownership="none">
-            <doc xml:space="preserve">a valid APP #GstRTCPPacket</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="2428">a valid APP #GstRTCPPacket</doc>
             <type name="RTCPPacket" c:type="GstRTCPPacket*"/>
           </instance-parameter>
           <parameter name="name" transfer-ownership="none">
-            <doc xml:space="preserve">4-byte ASCII name</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="2429">4-byte ASCII name</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
@@ -569,17 +874,25 @@ data.</doc>
       <method name="app_set_ssrc"
               c:identifier="gst_rtcp_packet_app_set_ssrc"
               version="1.10">
-        <doc xml:space="preserve">Set the SSRC/CSRC field of the APP @packet.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="2378">Set the SSRC/CSRC field of the APP @packet.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="450"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="packet" transfer-ownership="none">
-            <doc xml:space="preserve">a valid APP #GstRTCPPacket</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="2380">a valid APP #GstRTCPPacket</doc>
             <type name="RTCPPacket" c:type="GstRTCPPacket*"/>
           </instance-parameter>
           <parameter name="ssrc" transfer-ownership="none">
-            <doc xml:space="preserve">SSRC/CSRC of the packet</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="2381">SSRC/CSRC of the packet</doc>
             <type name="guint32" c:type="guint32"/>
           </parameter>
         </parameters>
@@ -587,164 +900,248 @@ data.</doc>
       <method name="app_set_subtype"
               c:identifier="gst_rtcp_packet_app_set_subtype"
               version="1.10">
-        <doc xml:space="preserve">Set the subtype field of the APP @packet.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="2330">Set the subtype field of the APP @packet.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="444"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="packet" transfer-ownership="none">
-            <doc xml:space="preserve">a valid APP #GstRTCPPacket</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="2332">a valid APP #GstRTCPPacket</doc>
             <type name="RTCPPacket" c:type="GstRTCPPacket*"/>
           </instance-parameter>
           <parameter name="subtype" transfer-ownership="none">
-            <doc xml:space="preserve">subtype of the packet</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="2333">subtype of the packet</doc>
             <type name="guint8" c:type="guint8"/>
           </parameter>
         </parameters>
       </method>
       <method name="bye_add_ssrc" c:identifier="gst_rtcp_packet_bye_add_ssrc">
-        <doc xml:space="preserve">Add @ssrc to the BYE @packet.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the ssrc was added. This function can return %FALSE if
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="1701">Add @ssrc to the BYE @packet.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="427"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="1708">%TRUE if the ssrc was added. This function can return %FALSE if
 the max MTU is exceeded or the number of sources blocks is greater than
 #GST_RTCP_MAX_BYE_SSRC_COUNT.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="packet" transfer-ownership="none">
-            <doc xml:space="preserve">a valid BYE #GstRTCPPacket</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="1703">a valid BYE #GstRTCPPacket</doc>
             <type name="RTCPPacket" c:type="GstRTCPPacket*"/>
           </instance-parameter>
           <parameter name="ssrc" transfer-ownership="none">
-            <doc xml:space="preserve">an SSRC to add</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="1704">an SSRC to add</doc>
             <type name="guint32" c:type="guint32"/>
           </parameter>
         </parameters>
       </method>
       <method name="bye_add_ssrcs"
               c:identifier="gst_rtcp_packet_bye_add_ssrcs">
-        <doc xml:space="preserve">Adds @len SSRCs in @ssrc to BYE @packet.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the all the SSRCs were added. This function can return %FALSE if
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="1761">Adds @len SSRCs in @ssrc to BYE @packet.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="430"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="1769">%TRUE if the all the SSRCs were added. This function can return %FALSE if
 the max MTU is exceeded or the number of sources blocks is greater than
 #GST_RTCP_MAX_BYE_SSRC_COUNT.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="packet" transfer-ownership="none">
-            <doc xml:space="preserve">a valid BYE #GstRTCPPacket</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="1763">a valid BYE #GstRTCPPacket</doc>
             <type name="RTCPPacket" c:type="GstRTCPPacket*"/>
           </instance-parameter>
           <parameter name="ssrc" transfer-ownership="none">
-            <doc xml:space="preserve">an array of SSRCs to add</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="1764">an array of SSRCs to add</doc>
             <array length="1" zero-terminated="0" c:type="guint32*">
               <type name="guint32" c:type="guint32"/>
             </array>
           </parameter>
           <parameter name="len" transfer-ownership="none">
-            <doc xml:space="preserve">number of elements in @ssrc</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="1765">number of elements in @ssrc</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="bye_get_nth_ssrc"
               c:identifier="gst_rtcp_packet_bye_get_nth_ssrc">
-        <doc xml:space="preserve">Get the @nth SSRC of the BYE @packet.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The @nth SSRC of @packet.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="1657">Get the @nth SSRC of the BYE @packet.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="424"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="1664">The @nth SSRC of @packet.</doc>
           <type name="guint32" c:type="guint32"/>
         </return-value>
         <parameters>
           <instance-parameter name="packet" transfer-ownership="none">
-            <doc xml:space="preserve">a valid BYE #GstRTCPPacket</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="1659">a valid BYE #GstRTCPPacket</doc>
             <type name="RTCPPacket" c:type="GstRTCPPacket*"/>
           </instance-parameter>
           <parameter name="nth" transfer-ownership="none">
-            <doc xml:space="preserve">the nth SSRC to get</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="1660">the nth SSRC to get</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="bye_get_reason"
               c:identifier="gst_rtcp_packet_bye_get_reason">
-        <doc xml:space="preserve">Get the reason in @packet.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="1845">Get the reason in @packet.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="436"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">The reason for the BYE @packet or NULL if the packet did not contain
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="1851">The reason for the BYE @packet or NULL if the packet did not contain
 a reason string. The string must be freed with g_free() after usage.</doc>
           <type name="utf8" c:type="gchar*"/>
         </return-value>
         <parameters>
           <instance-parameter name="packet" transfer-ownership="none">
-            <doc xml:space="preserve">a valid BYE #GstRTCPPacket</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="1847">a valid BYE #GstRTCPPacket</doc>
             <type name="RTCPPacket" c:type="GstRTCPPacket*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="bye_get_reason_len"
               c:identifier="gst_rtcp_packet_bye_get_reason_len">
-        <doc xml:space="preserve">Get the length of the reason string.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The length of the reason string or 0 when there is no reason string
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="1816">Get the length of the reason string.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="433"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="1822">The length of the reason string or 0 when there is no reason string
 present.</doc>
           <type name="guint8" c:type="guint8"/>
         </return-value>
         <parameters>
           <instance-parameter name="packet" transfer-ownership="none">
-            <doc xml:space="preserve">a valid BYE #GstRTCPPacket</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="1818">a valid BYE #GstRTCPPacket</doc>
             <type name="RTCPPacket" c:type="GstRTCPPacket*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="bye_get_ssrc_count"
               c:identifier="gst_rtcp_packet_bye_get_ssrc_count">
-        <doc xml:space="preserve">Get the number of SSRC fields in @packet.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The number of SSRC fields in @packet.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="1640">Get the number of SSRC fields in @packet.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="421"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="1646">The number of SSRC fields in @packet.</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="packet" transfer-ownership="none">
-            <doc xml:space="preserve">a valid BYE #GstRTCPPacket</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="1642">a valid BYE #GstRTCPPacket</doc>
             <type name="RTCPPacket" c:type="GstRTCPPacket*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="bye_set_reason"
               c:identifier="gst_rtcp_packet_bye_set_reason">
-        <doc xml:space="preserve">Set the reason string to @reason in @packet.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">TRUE if the string could be set.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="1887">Set the reason string to @reason in @packet.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="439"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="1894">TRUE if the string could be set.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="packet" transfer-ownership="none">
-            <doc xml:space="preserve">a valid BYE #GstRTCPPacket</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="1889">a valid BYE #GstRTCPPacket</doc>
             <type name="RTCPPacket" c:type="GstRTCPPacket*"/>
           </instance-parameter>
           <parameter name="reason" transfer-ownership="none">
-            <doc xml:space="preserve">a reason string</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="1890">a reason string</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </method>
       <method name="copy_profile_specific_ext"
               c:identifier="gst_rtcp_packet_copy_profile_specific_ext">
-        <doc xml:space="preserve">The profile-specific extension data is copied into a new allocated
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="1170">The profile-specific extension data is copied into a new allocated
 memory area @data. This must be freed with g_free() after usage.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="378"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if there was valid data.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="1179">%TRUE if there was valid data.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="packet" transfer-ownership="none">
-            <doc xml:space="preserve">a valid SR or RR #GstRTCPPacket</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="1172">a valid SR or RR #GstRTCPPacket</doc>
             <type name="RTCPPacket" c:type="GstRTCPPacket*"/>
           </instance-parameter>
           <parameter name="data"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">result profile-specific data</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="1173">result profile-specific data</doc>
             <array length="1" zero-terminated="0" c:type="guint8**">
               <type name="guint8" c:type="guint8*"/>
             </array>
@@ -753,206 +1150,314 @@ memory area @data. This must be freed with g_free() after usage.</doc>
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">length of the profile-specific extension data</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="1174">length of the profile-specific extension data</doc>
             <type name="guint" c:type="guint*"/>
           </parameter>
         </parameters>
       </method>
       <method name="fb_get_fci" c:identifier="gst_rtcp_packet_fb_get_fci">
-        <doc xml:space="preserve">Get the Feedback Control Information attached to a RTPFB or PSFB @packet.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a pointer to the FCI</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="2303">Get the Feedback Control Information attached to a RTPFB or PSFB @packet.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="497"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="2309">a pointer to the FCI</doc>
           <type name="guint8" c:type="guint8*"/>
         </return-value>
         <parameters>
           <instance-parameter name="packet" transfer-ownership="none">
-            <doc xml:space="preserve">a valid RTPFB or PSFB #GstRTCPPacket</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="2305">a valid RTPFB or PSFB #GstRTCPPacket</doc>
             <type name="RTCPPacket" c:type="GstRTCPPacket*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="fb_get_fci_length"
               c:identifier="gst_rtcp_packet_fb_get_fci_length">
-        <doc xml:space="preserve">Get the length of the Feedback Control Information attached to a
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="2245">Get the length of the Feedback Control Information attached to a
 RTPFB or PSFB @packet.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="491"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The length of the FCI in 32-bit words.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="2252">The length of the FCI in 32-bit words.</doc>
           <type name="guint16" c:type="guint16"/>
         </return-value>
         <parameters>
           <instance-parameter name="packet" transfer-ownership="none">
-            <doc xml:space="preserve">a valid RTPFB or PSFB #GstRTCPPacket</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="2247">a valid RTPFB or PSFB #GstRTCPPacket</doc>
             <type name="RTCPPacket" c:type="GstRTCPPacket*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="fb_get_media_ssrc"
               c:identifier="gst_rtcp_packet_fb_get_media_ssrc">
-        <doc xml:space="preserve">Get the media SSRC field of the RTPFB or PSFB @packet.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the media SSRC.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="2007">Get the media SSRC field of the RTPFB or PSFB @packet.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="479"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="2013">the media SSRC.</doc>
           <type name="guint32" c:type="guint32"/>
         </return-value>
         <parameters>
           <instance-parameter name="packet" transfer-ownership="none">
-            <doc xml:space="preserve">a valid RTPFB or PSFB #GstRTCPPacket</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="2009">a valid RTPFB or PSFB #GstRTCPPacket</doc>
             <type name="RTCPPacket" c:type="GstRTCPPacket*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="fb_get_sender_ssrc"
               c:identifier="gst_rtcp_packet_fb_get_sender_ssrc">
-        <doc xml:space="preserve">Get the sender SSRC field of the RTPFB or PSFB @packet.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the sender SSRC.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="1953">Get the sender SSRC field of the RTPFB or PSFB @packet.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="473"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="1959">the sender SSRC.</doc>
           <type name="guint32" c:type="guint32"/>
         </return-value>
         <parameters>
           <instance-parameter name="packet" transfer-ownership="none">
-            <doc xml:space="preserve">a valid RTPFB or PSFB #GstRTCPPacket</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="1955">a valid RTPFB or PSFB #GstRTCPPacket</doc>
             <type name="RTCPPacket" c:type="GstRTCPPacket*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="fb_get_type" c:identifier="gst_rtcp_packet_fb_get_type">
-        <doc xml:space="preserve">Get the feedback message type of the FB @packet.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The feedback message type.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="2061">Get the feedback message type of the FB @packet.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="485"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="2067">The feedback message type.</doc>
           <type name="RTCPFBType" c:type="GstRTCPFBType"/>
         </return-value>
         <parameters>
           <instance-parameter name="packet" transfer-ownership="none">
-            <doc xml:space="preserve">a valid RTPFB or PSFB #GstRTCPPacket</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="2063">a valid RTPFB or PSFB #GstRTCPPacket</doc>
             <type name="RTCPPacket" c:type="GstRTCPPacket*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="fb_set_fci_length"
               c:identifier="gst_rtcp_packet_fb_set_fci_length">
-        <doc xml:space="preserve">Set the length of the Feedback Control Information attached to a
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="2270">Set the length of the Feedback Control Information attached to a
 RTPFB or PSFB @packet.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="494"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if there was enough space in the packet to add this much FCI</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="2278">%TRUE if there was enough space in the packet to add this much FCI</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="packet" transfer-ownership="none">
-            <doc xml:space="preserve">a valid RTPFB or PSFB #GstRTCPPacket</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="2272">a valid RTPFB or PSFB #GstRTCPPacket</doc>
             <type name="RTCPPacket" c:type="GstRTCPPacket*"/>
           </instance-parameter>
           <parameter name="wordlen" transfer-ownership="none">
-            <doc xml:space="preserve">Length of the FCI in 32-bit words</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="2273">Length of the FCI in 32-bit words</doc>
             <type name="guint16" c:type="guint16"/>
           </parameter>
         </parameters>
       </method>
       <method name="fb_set_media_ssrc"
               c:identifier="gst_rtcp_packet_fb_set_media_ssrc">
-        <doc xml:space="preserve">Set the media SSRC field of the RTPFB or PSFB @packet.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="2036">Set the media SSRC field of the RTPFB or PSFB @packet.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="482"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="packet" transfer-ownership="none">
-            <doc xml:space="preserve">a valid RTPFB or PSFB #GstRTCPPacket</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="2038">a valid RTPFB or PSFB #GstRTCPPacket</doc>
             <type name="RTCPPacket" c:type="GstRTCPPacket*"/>
           </instance-parameter>
           <parameter name="ssrc" transfer-ownership="none">
-            <doc xml:space="preserve">a media SSRC</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="2039">a media SSRC</doc>
             <type name="guint32" c:type="guint32"/>
           </parameter>
         </parameters>
       </method>
       <method name="fb_set_sender_ssrc"
               c:identifier="gst_rtcp_packet_fb_set_sender_ssrc">
-        <doc xml:space="preserve">Set the sender SSRC field of the RTPFB or PSFB @packet.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="1982">Set the sender SSRC field of the RTPFB or PSFB @packet.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="476"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="packet" transfer-ownership="none">
-            <doc xml:space="preserve">a valid RTPFB or PSFB #GstRTCPPacket</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="1984">a valid RTPFB or PSFB #GstRTCPPacket</doc>
             <type name="RTCPPacket" c:type="GstRTCPPacket*"/>
           </instance-parameter>
           <parameter name="ssrc" transfer-ownership="none">
-            <doc xml:space="preserve">a sender SSRC</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="1985">a sender SSRC</doc>
             <type name="guint32" c:type="guint32"/>
           </parameter>
         </parameters>
       </method>
       <method name="fb_set_type" c:identifier="gst_rtcp_packet_fb_set_type">
-        <doc xml:space="preserve">Set the feedback message type of the FB @packet.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="2079">Set the feedback message type of the FB @packet.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="488"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="packet" transfer-ownership="none">
-            <doc xml:space="preserve">a valid RTPFB or PSFB #GstRTCPPacket</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="2081">a valid RTPFB or PSFB #GstRTCPPacket</doc>
             <type name="RTCPPacket" c:type="GstRTCPPacket*"/>
           </instance-parameter>
           <parameter name="type" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstRTCPFBType to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="2082">the #GstRTCPFBType to set</doc>
             <type name="RTCPFBType" c:type="GstRTCPFBType"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_count" c:identifier="gst_rtcp_packet_get_count">
-        <doc xml:space="preserve">Get the count field in @packet.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The count field in @packet or -1 if @packet does not point to a
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="672">Get the count field in @packet.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="312"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="678">The count field in @packet or -1 if @packet does not point to a
 valid packet.</doc>
           <type name="guint8" c:type="guint8"/>
         </return-value>
         <parameters>
           <instance-parameter name="packet" transfer-ownership="none">
-            <doc xml:space="preserve">a valid #GstRTCPPacket</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="674">a valid #GstRTCPPacket</doc>
             <type name="RTCPPacket" c:type="GstRTCPPacket*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_length" c:identifier="gst_rtcp_packet_get_length">
-        <doc xml:space="preserve">Get the length field of @packet. This is the length of the packet in
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="690">Get the length field of @packet. This is the length of the packet in
 32-bit words minus one.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="318"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The length field of @packet.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="697">The length field of @packet.</doc>
           <type name="guint16" c:type="guint16"/>
         </return-value>
         <parameters>
           <instance-parameter name="packet" transfer-ownership="none">
-            <doc xml:space="preserve">a valid #GstRTCPPacket</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="692">a valid #GstRTCPPacket</doc>
             <type name="RTCPPacket" c:type="GstRTCPPacket*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_padding" c:identifier="gst_rtcp_packet_get_padding">
-        <doc xml:space="preserve">Get the packet padding of the packet pointed to by @packet.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">If the packet has the padding bit set.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="638">Get the packet padding of the packet pointed to by @packet.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="309"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="644">If the packet has the padding bit set.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="packet" transfer-ownership="none">
-            <doc xml:space="preserve">a valid #GstRTCPPacket</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="640">a valid #GstRTCPPacket</doc>
             <type name="RTCPPacket" c:type="GstRTCPPacket*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_profile_specific_ext"
               c:identifier="gst_rtcp_packet_get_profile_specific_ext">
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="374"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if there was valid data.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="1140">%TRUE if there was valid data.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="packet" transfer-ownership="none">
-            <doc xml:space="preserve">a valid SR or RR #GstRTCPPacket</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="1136">a valid SR or RR #GstRTCPPacket</doc>
             <type name="RTCPPacket" c:type="GstRTCPPacket*"/>
           </instance-parameter>
           <parameter name="data"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="none">
-            <doc xml:space="preserve">result profile-specific data</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="1137">result profile-specific data</doc>
             <array length="1" zero-terminated="0" c:type="guint8**">
               <type name="guint8" c:type="guint8*"/>
             </array>
@@ -961,199 +1466,291 @@ valid packet.</doc>
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">result length of the profile-specific data</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="1138">result length of the profile-specific data</doc>
             <type name="guint" c:type="guint*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_profile_specific_ext_length"
               c:identifier="gst_rtcp_packet_get_profile_specific_ext_length">
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="371"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The number of 32-bit words containing profile-specific extension
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="1109">The number of 32-bit words containing profile-specific extension
          data from @packet.</doc>
           <type name="guint16" c:type="guint16"/>
         </return-value>
         <parameters>
           <instance-parameter name="packet" transfer-ownership="none">
-            <doc xml:space="preserve">a valid SR or RR #GstRTCPPacket</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="1107">a valid SR or RR #GstRTCPPacket</doc>
             <type name="RTCPPacket" c:type="GstRTCPPacket*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_rb" c:identifier="gst_rtcp_packet_get_rb">
-        <doc xml:space="preserve">Parse the values of the @nth report block in @packet and store the result in
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="860">Parse the values of the @nth report block in @packet and store the result in
 the values.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="347"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="packet" transfer-ownership="none">
-            <doc xml:space="preserve">a valid SR or RR #GstRTCPPacket</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="862">a valid SR or RR #GstRTCPPacket</doc>
             <type name="RTCPPacket" c:type="GstRTCPPacket*"/>
           </instance-parameter>
           <parameter name="nth" transfer-ownership="none">
-            <doc xml:space="preserve">the nth report block in @packet</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="863">the nth report block in @packet</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="ssrc"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">result for data source being reported</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="864">result for data source being reported</doc>
             <type name="guint32" c:type="guint32*"/>
           </parameter>
           <parameter name="fractionlost"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">result for fraction lost since last SR/RR</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="865">result for fraction lost since last SR/RR</doc>
             <type name="guint8" c:type="guint8*"/>
           </parameter>
           <parameter name="packetslost"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">result for the cumululative number of packets lost</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="866">result for the cumululative number of packets lost</doc>
             <type name="gint32" c:type="gint32*"/>
           </parameter>
           <parameter name="exthighestseq"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">result for the extended last sequence number received</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="867">result for the extended last sequence number received</doc>
             <type name="guint32" c:type="guint32*"/>
           </parameter>
           <parameter name="jitter"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">result for the interarrival jitter</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="868">result for the interarrival jitter</doc>
             <type name="guint32" c:type="guint32*"/>
           </parameter>
           <parameter name="lsr"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">result for the last SR packet from this source</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="869">result for the last SR packet from this source</doc>
             <type name="guint32" c:type="guint32*"/>
           </parameter>
           <parameter name="dlsr"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">result for the delay since last SR packet</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="870">result for the delay since last SR packet</doc>
             <type name="guint32" c:type="guint32*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_rb_count" c:identifier="gst_rtcp_packet_get_rb_count">
-        <doc xml:space="preserve">Get the number of report blocks in @packet.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The number of report blocks in @packet.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="840">Get the number of report blocks in @packet.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="344"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="846">The number of report blocks in @packet.</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="packet" transfer-ownership="none">
-            <doc xml:space="preserve">a valid SR or RR #GstRTCPPacket</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="842">a valid SR or RR #GstRTCPPacket</doc>
             <type name="RTCPPacket" c:type="GstRTCPPacket*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_type" c:identifier="gst_rtcp_packet_get_type">
-        <doc xml:space="preserve">Get the packet type of the packet pointed to by @packet.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The packet type or GST_RTCP_TYPE_INVALID when @packet is not
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="655">Get the packet type of the packet pointed to by @packet.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="315"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="661">The packet type or GST_RTCP_TYPE_INVALID when @packet is not
 pointing to a valid packet.</doc>
           <type name="RTCPType" c:type="GstRTCPType"/>
         </return-value>
         <parameters>
           <instance-parameter name="packet" transfer-ownership="none">
-            <doc xml:space="preserve">a valid #GstRTCPPacket</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="657">a valid #GstRTCPPacket</doc>
             <type name="RTCPPacket" c:type="GstRTCPPacket*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="move_to_next" c:identifier="gst_rtcp_packet_move_to_next">
-        <doc xml:space="preserve">Move the packet pointer @packet to the next packet in the payload.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="490">Move the packet pointer @packet to the next packet in the payload.
 Use gst_rtcp_buffer_get_first_packet() to initialize @packet.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="297"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">TRUE if @packet is pointing to a valid packet after calling this
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="497">TRUE if @packet is pointing to a valid packet after calling this
 function.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="packet" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTCPPacket</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="492">a #GstRTCPPacket</doc>
             <type name="RTCPPacket" c:type="GstRTCPPacket*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="remove" c:identifier="gst_rtcp_packet_remove">
-        <doc xml:space="preserve">Removes the packet pointed to by @packet and moves pointer to the next one</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">TRUE if @packet is pointing to a valid packet after calling this
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="601">Removes the packet pointed to by @packet and moves pointer to the next one</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="304"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="607">TRUE if @packet is pointing to a valid packet after calling this
 function.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="packet" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTCPPacket</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="603">a #GstRTCPPacket</doc>
             <type name="RTCPPacket" c:type="GstRTCPPacket*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="rr_get_ssrc" c:identifier="gst_rtcp_packet_rr_get_ssrc">
-        <doc xml:space="preserve">Get the ssrc field of the RR @packet.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the ssrc.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="788">Get the ssrc field of the RR @packet.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="335"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="794">the ssrc.</doc>
           <type name="guint32" c:type="guint32"/>
         </return-value>
         <parameters>
           <instance-parameter name="packet" transfer-ownership="none">
-            <doc xml:space="preserve">a valid RR #GstRTCPPacket</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="790">a valid RR #GstRTCPPacket</doc>
             <type name="RTCPPacket" c:type="GstRTCPPacket*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="rr_set_ssrc" c:identifier="gst_rtcp_packet_rr_set_ssrc">
-        <doc xml:space="preserve">Set the ssrc field of the RR @packet.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="816">Set the ssrc field of the RR @packet.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="338"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="packet" transfer-ownership="none">
-            <doc xml:space="preserve">a valid RR #GstRTCPPacket</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="818">a valid RR #GstRTCPPacket</doc>
             <type name="RTCPPacket" c:type="GstRTCPPacket*"/>
           </instance-parameter>
           <parameter name="ssrc" transfer-ownership="none">
-            <doc xml:space="preserve">the SSRC to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="819">the SSRC to set</doc>
             <type name="guint32" c:type="guint32"/>
           </parameter>
         </parameters>
       </method>
       <method name="sdes_add_entry"
               c:identifier="gst_rtcp_packet_sdes_add_entry">
-        <doc xml:space="preserve">Add a new SDES entry to the current item in @packet.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the item could be added, %FALSE if the MTU has been
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="1575">Add a new SDES entry to the current item in @packet.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="415"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="1584">%TRUE if the item could be added, %FALSE if the MTU has been
 reached.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="packet" transfer-ownership="none">
-            <doc xml:space="preserve">a valid SDES #GstRTCPPacket</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="1577">a valid SDES #GstRTCPPacket</doc>
             <type name="RTCPPacket" c:type="GstRTCPPacket*"/>
           </instance-parameter>
           <parameter name="type" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstRTCPSDESType of the SDES entry</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="1578">the #GstRTCPSDESType of the SDES entry</doc>
             <type name="RTCPSDESType" c:type="GstRTCPSDESType"/>
           </parameter>
           <parameter name="len" transfer-ownership="none">
-            <doc xml:space="preserve">the data length</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="1579">the data length</doc>
             <type name="guint8" c:type="guint8"/>
           </parameter>
           <parameter name="data" transfer-ownership="none">
-            <doc xml:space="preserve">the data</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="1580">the data</doc>
             <array length="1" zero-terminated="0" c:type="const guint8*">
               <type name="guint8" c:type="guint8"/>
             </array>
@@ -1162,52 +1759,76 @@ reached.</doc>
       </method>
       <method name="sdes_add_item"
               c:identifier="gst_rtcp_packet_sdes_add_item">
-        <doc xml:space="preserve">Add a new SDES item for @ssrc to @packet.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the item could be added, %FALSE if the maximum amount of
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="1504">Add a new SDES item for @ssrc to @packet.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="412"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="1511">%TRUE if the item could be added, %FALSE if the maximum amount of
 items has been exceeded for the SDES packet or the MTU has been reached.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="packet" transfer-ownership="none">
-            <doc xml:space="preserve">a valid SDES #GstRTCPPacket</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="1506">a valid SDES #GstRTCPPacket</doc>
             <type name="RTCPPacket" c:type="GstRTCPPacket*"/>
           </instance-parameter>
           <parameter name="ssrc" transfer-ownership="none">
-            <doc xml:space="preserve">the SSRC of the new item to add</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="1507">the SSRC of the new item to add</doc>
             <type name="guint32" c:type="guint32"/>
           </parameter>
         </parameters>
       </method>
       <method name="sdes_copy_entry"
               c:identifier="gst_rtcp_packet_sdes_copy_entry">
-        <doc xml:space="preserve">This function is like gst_rtcp_packet_sdes_get_entry() but it returns a
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="1469">This function is like gst_rtcp_packet_sdes_get_entry() but it returns a
 null-terminated copy of the data instead. use g_free() after usage.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="407"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if there was valid data.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="1479">%TRUE if there was valid data.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="packet" transfer-ownership="none">
-            <doc xml:space="preserve">a valid SDES #GstRTCPPacket</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="1471">a valid SDES #GstRTCPPacket</doc>
             <type name="RTCPPacket" c:type="GstRTCPPacket*"/>
           </instance-parameter>
           <parameter name="type" transfer-ownership="none">
-            <doc xml:space="preserve">result of the entry type</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="1472">result of the entry type</doc>
             <type name="RTCPSDESType" c:type="GstRTCPSDESType*"/>
           </parameter>
           <parameter name="len"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">result length of the entry data</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="1473">result length of the entry data</doc>
             <type name="guint8" c:type="guint8*"/>
           </parameter>
           <parameter name="data"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">result entry data</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="1474">result entry data</doc>
             <array length="1" zero-terminated="0" c:type="guint8**">
               <type name="guint8" c:type="guint8*"/>
             </array>
@@ -1216,66 +1837,96 @@ null-terminated copy of the data instead. use g_free() after usage.</doc>
       </method>
       <method name="sdes_first_entry"
               c:identifier="gst_rtcp_packet_sdes_first_entry">
-        <doc xml:space="preserve">Move to the first SDES entry in the current item.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if there was a first entry.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="1334">Move to the first SDES entry in the current item.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="396"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="1340">%TRUE if there was a first entry.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="packet" transfer-ownership="none">
-            <doc xml:space="preserve">a valid SDES #GstRTCPPacket</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="1336">a valid SDES #GstRTCPPacket</doc>
             <type name="RTCPPacket" c:type="GstRTCPPacket*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="sdes_first_item"
               c:identifier="gst_rtcp_packet_sdes_first_item">
-        <doc xml:space="preserve">Move to the first SDES item in @packet.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">TRUE if there was a first item.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="1227">Move to the first SDES item in @packet.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="387"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="1233">TRUE if there was a first item.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="packet" transfer-ownership="none">
-            <doc xml:space="preserve">a valid SDES #GstRTCPPacket</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="1229">a valid SDES #GstRTCPPacket</doc>
             <type name="RTCPPacket" c:type="GstRTCPPacket*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="sdes_get_entry"
               c:identifier="gst_rtcp_packet_sdes_get_entry">
-        <doc xml:space="preserve">Get the data of the current SDES item entry. @type (when not NULL) will
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="1419">Get the data of the current SDES item entry. @type (when not NULL) will
 contain the type of the entry. @data (when not NULL) will point to @len
 bytes.
 
 When @type refers to a text item, @data will point to a UTF8 string. Note
 that this UTF8 string is NOT null-terminated. Use
 gst_rtcp_packet_sdes_copy_entry() to get a null-terminated copy of the entry.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="402"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if there was valid data.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="1434">%TRUE if there was valid data.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="packet" transfer-ownership="none">
-            <doc xml:space="preserve">a valid SDES #GstRTCPPacket</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="1421">a valid SDES #GstRTCPPacket</doc>
             <type name="RTCPPacket" c:type="GstRTCPPacket*"/>
           </instance-parameter>
           <parameter name="type" transfer-ownership="none">
-            <doc xml:space="preserve">result of the entry type</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="1422">result of the entry type</doc>
             <type name="RTCPSDESType" c:type="GstRTCPSDESType*"/>
           </parameter>
           <parameter name="len"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">result length of the entry data</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="1423">result length of the entry data</doc>
             <type name="guint8" c:type="guint8*"/>
           </parameter>
           <parameter name="data"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="none">
-            <doc xml:space="preserve">result entry data</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="1424">result entry data</doc>
             <array length="1" zero-terminated="0" c:type="guint8**">
               <type name="guint8" c:type="guint8*"/>
             </array>
@@ -1284,183 +1935,269 @@ gst_rtcp_packet_sdes_copy_entry() to get a null-terminated copy of the entry.</d
       </method>
       <method name="sdes_get_item_count"
               c:identifier="gst_rtcp_packet_sdes_get_item_count">
-        <doc xml:space="preserve">Get the number of items in the SDES packet @packet.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The number of items in @packet.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="1210">Get the number of items in the SDES packet @packet.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="384"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="1216">The number of items in @packet.</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="packet" transfer-ownership="none">
-            <doc xml:space="preserve">a valid SDES #GstRTCPPacket</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="1212">a valid SDES #GstRTCPPacket</doc>
             <type name="RTCPPacket" c:type="GstRTCPPacket*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="sdes_get_ssrc"
               c:identifier="gst_rtcp_packet_sdes_get_ssrc">
-        <doc xml:space="preserve">Get the SSRC of the current SDES item.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the SSRC of the current item.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="1304">Get the SSRC of the current SDES item.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="393"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="1310">the SSRC of the current item.</doc>
           <type name="guint32" c:type="guint32"/>
         </return-value>
         <parameters>
           <instance-parameter name="packet" transfer-ownership="none">
-            <doc xml:space="preserve">a valid SDES #GstRTCPPacket</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="1306">a valid SDES #GstRTCPPacket</doc>
             <type name="RTCPPacket" c:type="GstRTCPPacket*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="sdes_next_entry"
               c:identifier="gst_rtcp_packet_sdes_next_entry">
-        <doc xml:space="preserve">Move to the next SDES entry in the current item.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if there was a next entry.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="1374">Move to the next SDES entry in the current item.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="399"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="1380">%TRUE if there was a next entry.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="packet" transfer-ownership="none">
-            <doc xml:space="preserve">a valid SDES #GstRTCPPacket</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="1376">a valid SDES #GstRTCPPacket</doc>
             <type name="RTCPPacket" c:type="GstRTCPPacket*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="sdes_next_item"
               c:identifier="gst_rtcp_packet_sdes_next_item">
-        <doc xml:space="preserve">Move to the next SDES item in @packet.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">TRUE if there was a next item.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="1251">Move to the next SDES item in @packet.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="390"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="1257">TRUE if there was a next item.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="packet" transfer-ownership="none">
-            <doc xml:space="preserve">a valid SDES #GstRTCPPacket</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="1253">a valid SDES #GstRTCPPacket</doc>
             <type name="RTCPPacket" c:type="GstRTCPPacket*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="set_rb" c:identifier="gst_rtcp_packet_set_rb">
-        <doc xml:space="preserve">Set the @nth new report block in @packet with the given values.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="1029">Set the @nth new report block in @packet with the given values.
 
 Note: Not implemented.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="359"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="packet" transfer-ownership="none">
-            <doc xml:space="preserve">a valid SR or RR #GstRTCPPacket</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="1031">a valid SR or RR #GstRTCPPacket</doc>
             <type name="RTCPPacket" c:type="GstRTCPPacket*"/>
           </instance-parameter>
           <parameter name="nth" transfer-ownership="none">
-            <doc xml:space="preserve">the nth report block to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="1032">the nth report block to set</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="ssrc" transfer-ownership="none">
-            <doc xml:space="preserve">data source being reported</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="1033">data source being reported</doc>
             <type name="guint32" c:type="guint32"/>
           </parameter>
           <parameter name="fractionlost" transfer-ownership="none">
-            <doc xml:space="preserve">fraction lost since last SR/RR</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="1034">fraction lost since last SR/RR</doc>
             <type name="guint8" c:type="guint8"/>
           </parameter>
           <parameter name="packetslost" transfer-ownership="none">
-            <doc xml:space="preserve">the cumululative number of packets lost</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="1035">the cumululative number of packets lost</doc>
             <type name="gint32" c:type="gint32"/>
           </parameter>
           <parameter name="exthighestseq" transfer-ownership="none">
-            <doc xml:space="preserve">the extended last sequence number received</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="1036">the extended last sequence number received</doc>
             <type name="guint32" c:type="guint32"/>
           </parameter>
           <parameter name="jitter" transfer-ownership="none">
-            <doc xml:space="preserve">the interarrival jitter</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="1037">the interarrival jitter</doc>
             <type name="guint32" c:type="guint32"/>
           </parameter>
           <parameter name="lsr" transfer-ownership="none">
-            <doc xml:space="preserve">the last SR packet from this source</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="1038">the last SR packet from this source</doc>
             <type name="guint32" c:type="guint32"/>
           </parameter>
           <parameter name="dlsr" transfer-ownership="none">
-            <doc xml:space="preserve">the delay since last SR packet</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="1039">the delay since last SR packet</doc>
             <type name="guint32" c:type="guint32"/>
           </parameter>
         </parameters>
       </method>
       <method name="sr_get_sender_info"
               c:identifier="gst_rtcp_packet_sr_get_sender_info">
-        <doc xml:space="preserve">Parse the SR sender info and store the values.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="708">Parse the SR sender info and store the values.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="324"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="packet" transfer-ownership="none">
-            <doc xml:space="preserve">a valid SR #GstRTCPPacket</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="710">a valid SR #GstRTCPPacket</doc>
             <type name="RTCPPacket" c:type="GstRTCPPacket*"/>
           </instance-parameter>
           <parameter name="ssrc"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">result SSRC</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="711">result SSRC</doc>
             <type name="guint32" c:type="guint32*"/>
           </parameter>
           <parameter name="ntptime"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">result NTP time</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="712">result NTP time</doc>
             <type name="guint64" c:type="guint64*"/>
           </parameter>
           <parameter name="rtptime"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">result RTP time</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="713">result RTP time</doc>
             <type name="guint32" c:type="guint32*"/>
           </parameter>
           <parameter name="packet_count"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">result packet count</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="714">result packet count</doc>
             <type name="guint32" c:type="guint32*"/>
           </parameter>
           <parameter name="octet_count"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">result octet count</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="715">result octet count</doc>
             <type name="guint32" c:type="guint32*"/>
           </parameter>
         </parameters>
       </method>
       <method name="sr_set_sender_info"
               c:identifier="gst_rtcp_packet_sr_set_sender_info">
-        <doc xml:space="preserve">Set the given values in the SR packet @packet.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="751">Set the given values in the SR packet @packet.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="329"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="packet" transfer-ownership="none">
-            <doc xml:space="preserve">a valid SR #GstRTCPPacket</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="753">a valid SR #GstRTCPPacket</doc>
             <type name="RTCPPacket" c:type="GstRTCPPacket*"/>
           </instance-parameter>
           <parameter name="ssrc" transfer-ownership="none">
-            <doc xml:space="preserve">the SSRC</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="754">the SSRC</doc>
             <type name="guint32" c:type="guint32"/>
           </parameter>
           <parameter name="ntptime" transfer-ownership="none">
-            <doc xml:space="preserve">the NTP time</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="755">the NTP time</doc>
             <type name="guint64" c:type="guint64"/>
           </parameter>
           <parameter name="rtptime" transfer-ownership="none">
-            <doc xml:space="preserve">the RTP time</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="756">the RTP time</doc>
             <type name="guint32" c:type="guint32"/>
           </parameter>
           <parameter name="packet_count" transfer-ownership="none">
-            <doc xml:space="preserve">the packet count</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="757">the packet count</doc>
             <type name="guint32" c:type="guint32"/>
           </parameter>
           <parameter name="octet_count" transfer-ownership="none">
-            <doc xml:space="preserve">the octet count</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="758">the octet count</doc>
             <type name="guint32" c:type="guint32"/>
           </parameter>
         </parameters>
@@ -1468,14 +2205,22 @@ Note: Not implemented.</doc>
       <method name="xr_first_rb"
               c:identifier="gst_rtcp_packet_xr_first_rb"
               version="1.16">
-        <doc xml:space="preserve">Move to the first extended report block in XR @packet.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">TRUE if there was a first extended report block.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="2589">Move to the first extended report block in XR @packet.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="519"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="2595">TRUE if there was a first extended report block.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="packet" transfer-ownership="none">
-            <doc xml:space="preserve">a valid XR #GstRTCPPacket</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="2591">a valid XR #GstRTCPPacket</doc>
             <type name="RTCPPacket" c:type="GstRTCPPacket*"/>
           </instance-parameter>
         </parameters>
@@ -1483,14 +2228,20 @@ Note: Not implemented.</doc>
       <method name="xr_get_block_length"
               c:identifier="gst_rtcp_packet_xr_get_block_length"
               version="1.16">
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="528"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The number of 32-bit words containing type-specific block
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="2723">The number of 32-bit words containing type-specific block
          data from @packet.</doc>
           <type name="guint16" c:type="guint16"/>
         </return-value>
         <parameters>
           <instance-parameter name="packet" transfer-ownership="none">
-            <doc xml:space="preserve">a valid XR #GstRTCPPacket</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="2721">a valid XR #GstRTCPPacket</doc>
             <type name="RTCPPacket" c:type="GstRTCPPacket*"/>
           </instance-parameter>
         </parameters>
@@ -1498,14 +2249,22 @@ Note: Not implemented.</doc>
       <method name="xr_get_block_type"
               c:identifier="gst_rtcp_packet_xr_get_block_type"
               version="1.16">
-        <doc xml:space="preserve">Get the extended report block type of the XR @packet.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The extended report block type.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="2666">Get the extended report block type of the XR @packet.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="525"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="2672">The extended report block type.</doc>
           <type name="RTCPXRType" c:type="GstRTCPXRType"/>
         </return-value>
         <parameters>
           <instance-parameter name="packet" transfer-ownership="none">
-            <doc xml:space="preserve">a valid XR #GstRTCPPacket</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="2668">a valid XR #GstRTCPPacket</doc>
             <type name="RTCPPacket" c:type="GstRTCPPacket*"/>
           </instance-parameter>
         </parameters>
@@ -1513,30 +2272,46 @@ Note: Not implemented.</doc>
       <method name="xr_get_dlrr_block"
               c:identifier="gst_rtcp_packet_xr_get_dlrr_block"
               version="1.16">
-        <doc xml:space="preserve">Parse the extended report block for DLRR report block type.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the report block is correctly parsed.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="2972">Parse the extended report block for DLRR report block type.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="553"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="2982">%TRUE if the report block is correctly parsed.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="packet" transfer-ownership="none">
-            <doc xml:space="preserve">a valid XR #GstRTCPPacket which has DLRR Report Block.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="2974">a valid XR #GstRTCPPacket which has DLRR Report Block.</doc>
             <type name="RTCPPacket" c:type="GstRTCPPacket*"/>
           </instance-parameter>
           <parameter name="nth" transfer-ownership="none">
-            <doc xml:space="preserve">the index of sub-block to retrieve.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="2975">the index of sub-block to retrieve.</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="ssrc" transfer-ownership="none">
-            <doc xml:space="preserve">the SSRC of the receiver.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="2976">the SSRC of the receiver.</doc>
             <type name="guint32" c:type="guint32*"/>
           </parameter>
           <parameter name="last_rr" transfer-ownership="none">
-            <doc xml:space="preserve">the last receiver reference timestamp of @ssrc.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="2977">the last receiver reference timestamp of @ssrc.</doc>
             <type name="guint32" c:type="guint32*"/>
           </parameter>
           <parameter name="delay" transfer-ownership="none">
-            <doc xml:space="preserve">the delay since @last_rr.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="2978">the delay since @last_rr.</doc>
             <type name="guint32" c:type="guint32*"/>
           </parameter>
         </parameters>
@@ -1544,22 +2319,34 @@ Note: Not implemented.</doc>
       <method name="xr_get_prt_by_seq"
               c:identifier="gst_rtcp_packet_xr_get_prt_by_seq"
               version="1.16">
-        <doc xml:space="preserve">Retrieve the packet receipt time of @seq which ranges in [begin_seq, end_seq).</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the report block returns the receipt time correctly.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="2899">Retrieve the packet receipt time of @seq which ranges in [begin_seq, end_seq).</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="546"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="2907">%TRUE if the report block returns the receipt time correctly.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="packet" transfer-ownership="none">
-            <doc xml:space="preserve">a valid XR #GstRTCPPacket which has the Packet Recept Times Report Block.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="2901">a valid XR #GstRTCPPacket which has the Packet Recept Times Report Block.</doc>
             <type name="RTCPPacket" c:type="GstRTCPPacket*"/>
           </instance-parameter>
           <parameter name="seq" transfer-ownership="none">
-            <doc xml:space="preserve">the sequence to retrieve the time.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="2902">the sequence to retrieve the time.</doc>
             <type name="guint16" c:type="guint16"/>
           </parameter>
           <parameter name="receipt_time" transfer-ownership="none">
-            <doc xml:space="preserve">the packet receipt time of @seq.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="2903">the packet receipt time of @seq.</doc>
             <type name="guint32" c:type="guint32*"/>
           </parameter>
         </parameters>
@@ -1567,30 +2354,46 @@ Note: Not implemented.</doc>
       <method name="xr_get_prt_info"
               c:identifier="gst_rtcp_packet_xr_get_prt_info"
               version="1.16">
-        <doc xml:space="preserve">Parse the Packet Recept Times Report Block from a XR @packet</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the report block is correctly parsed.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="2847">Parse the Packet Recept Times Report Block from a XR @packet</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="541"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="2857">%TRUE if the report block is correctly parsed.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="packet" transfer-ownership="none">
-            <doc xml:space="preserve">a valid XR #GstRTCPPacket which has a Packet Receipt Times Report Block</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="2849">a valid XR #GstRTCPPacket which has a Packet Receipt Times Report Block</doc>
             <type name="RTCPPacket" c:type="GstRTCPPacket*"/>
           </instance-parameter>
           <parameter name="ssrc" transfer-ownership="none">
-            <doc xml:space="preserve">the SSRC of the RTP data packet source being reported upon by this report block.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="2850">the SSRC of the RTP data packet source being reported upon by this report block.</doc>
             <type name="guint32" c:type="guint32*"/>
           </parameter>
           <parameter name="thinning" transfer-ownership="none">
-            <doc xml:space="preserve">the amount of thinning performed on the sequence number space.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="2851">the amount of thinning performed on the sequence number space.</doc>
             <type name="guint8" c:type="guint8*"/>
           </parameter>
           <parameter name="begin_seq" transfer-ownership="none">
-            <doc xml:space="preserve">the first sequence number that this block reports on.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="2852">the first sequence number that this block reports on.</doc>
             <type name="guint16" c:type="guint16*"/>
           </parameter>
           <parameter name="end_seq" transfer-ownership="none">
-            <doc xml:space="preserve">the last sequence number that this block reports on plus one.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="2853">the last sequence number that this block reports on plus one.</doc>
             <type name="guint16" c:type="guint16*"/>
           </parameter>
         </parameters>
@@ -1598,34 +2401,52 @@ Note: Not implemented.</doc>
       <method name="xr_get_rle_info"
               c:identifier="gst_rtcp_packet_xr_get_rle_info"
               version="1.16">
-        <doc xml:space="preserve">Parse the extended report block for Loss RLE and Duplicated LRE block type.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the report block is correctly parsed.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="2748">Parse the extended report block for Loss RLE and Duplicated LRE block type.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="531"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="2759">%TRUE if the report block is correctly parsed.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="packet" transfer-ownership="none">
-            <doc xml:space="preserve">a valid XR #GstRTCPPacket which is Loss RLE or Duplicate RLE report.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="2750">a valid XR #GstRTCPPacket which is Loss RLE or Duplicate RLE report.</doc>
             <type name="RTCPPacket" c:type="GstRTCPPacket*"/>
           </instance-parameter>
           <parameter name="ssrc" transfer-ownership="none">
-            <doc xml:space="preserve">the SSRC of the RTP data packet source being reported upon by this report block.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="2751">the SSRC of the RTP data packet source being reported upon by this report block.</doc>
             <type name="guint32" c:type="guint32*"/>
           </parameter>
           <parameter name="thinning" transfer-ownership="none">
-            <doc xml:space="preserve">the amount of thinning performed on the sequence number space.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="2752">the amount of thinning performed on the sequence number space.</doc>
             <type name="guint8" c:type="guint8*"/>
           </parameter>
           <parameter name="begin_seq" transfer-ownership="none">
-            <doc xml:space="preserve">the first sequence number that this block reports on.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="2753">the first sequence number that this block reports on.</doc>
             <type name="guint16" c:type="guint16*"/>
           </parameter>
           <parameter name="end_seq" transfer-ownership="none">
-            <doc xml:space="preserve">the last sequence number that this block reports on plus one.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="2754">the last sequence number that this block reports on plus one.</doc>
             <type name="guint16" c:type="guint16*"/>
           </parameter>
           <parameter name="chunk_count" transfer-ownership="none">
-            <doc xml:space="preserve">the number of chunks calculated by block length.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="2755">the number of chunks calculated by block length.</doc>
             <type name="guint32" c:type="guint32*"/>
           </parameter>
         </parameters>
@@ -1633,22 +2454,34 @@ Note: Not implemented.</doc>
       <method name="xr_get_rle_nth_chunk"
               c:identifier="gst_rtcp_packet_xr_get_rle_nth_chunk"
               version="1.16">
-        <doc xml:space="preserve">Retrieve actual chunk data.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the report block returns chunk correctly.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="2806">Retrieve actual chunk data.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="537"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="2814">%TRUE if the report block returns chunk correctly.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="packet" transfer-ownership="none">
-            <doc xml:space="preserve">a valid XR #GstRTCPPacket which is Loss RLE or Duplicate RLE report.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="2808">a valid XR #GstRTCPPacket which is Loss RLE or Duplicate RLE report.</doc>
             <type name="RTCPPacket" c:type="GstRTCPPacket*"/>
           </instance-parameter>
           <parameter name="nth" transfer-ownership="none">
-            <doc xml:space="preserve">the index of chunk to retrieve.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="2809">the index of chunk to retrieve.</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="chunk" transfer-ownership="none">
-            <doc xml:space="preserve">the @nth chunk.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="2810">the @nth chunk.</doc>
             <type name="guint16" c:type="guint16*"/>
           </parameter>
         </parameters>
@@ -1656,17 +2489,25 @@ Note: Not implemented.</doc>
       <method name="xr_get_rrt"
               c:identifier="gst_rtcp_packet_xr_get_rrt"
               version="1.16">
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="550"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the report block returns the reference time correctly.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="2945">%TRUE if the report block returns the reference time correctly.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="packet" transfer-ownership="none">
-            <doc xml:space="preserve">a valid XR #GstRTCPPacket which has the Receiver Reference Time.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="2942">a valid XR #GstRTCPPacket which has the Receiver Reference Time.</doc>
             <type name="RTCPPacket" c:type="GstRTCPPacket*"/>
           </instance-parameter>
           <parameter name="timestamp" transfer-ownership="none">
-            <doc xml:space="preserve">NTP timestamp</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="2943">NTP timestamp</doc>
             <type name="guint64" c:type="guint64*"/>
           </parameter>
         </parameters>
@@ -1674,14 +2515,22 @@ Note: Not implemented.</doc>
       <method name="xr_get_ssrc"
               c:identifier="gst_rtcp_packet_xr_get_ssrc"
               version="1.16">
-        <doc xml:space="preserve">Get the ssrc field of the XR @packet.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the ssrc.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="2559">Get the ssrc field of the XR @packet.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="516"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="2565">the ssrc.</doc>
           <type name="guint32" c:type="guint32"/>
         </return-value>
         <parameters>
           <instance-parameter name="packet" transfer-ownership="none">
-            <doc xml:space="preserve">a valid XR #GstRTCPPacket</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="2561">a valid XR #GstRTCPPacket</doc>
             <type name="RTCPPacket" c:type="GstRTCPPacket*"/>
           </instance-parameter>
         </parameters>
@@ -1689,26 +2538,40 @@ Note: Not implemented.</doc>
       <method name="xr_get_summary_info"
               c:identifier="gst_rtcp_packet_xr_get_summary_info"
               version="1.16">
-        <doc xml:space="preserve">Extract a basic information from static summary report block of XR @packet.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the report block is correctly parsed.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="3022">Extract a basic information from static summary report block of XR @packet.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="558"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="3031">%TRUE if the report block is correctly parsed.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="packet" transfer-ownership="none">
-            <doc xml:space="preserve">a valid XR #GstRTCPPacket which has Statics Summary Report Block.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="3024">a valid XR #GstRTCPPacket which has Statics Summary Report Block.</doc>
             <type name="RTCPPacket" c:type="GstRTCPPacket*"/>
           </instance-parameter>
           <parameter name="ssrc" transfer-ownership="none">
-            <doc xml:space="preserve">the SSRC of the source.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="3025">the SSRC of the source.</doc>
             <type name="guint32" c:type="guint32*"/>
           </parameter>
           <parameter name="begin_seq" transfer-ownership="none">
-            <doc xml:space="preserve">the first sequence number that this block reports on.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="3026">the first sequence number that this block reports on.</doc>
             <type name="guint16" c:type="guint16*"/>
           </parameter>
           <parameter name="end_seq" transfer-ownership="none">
-            <doc xml:space="preserve">the last sequence number that this block reports on plus one.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="3027">the last sequence number that this block reports on plus one.</doc>
             <type name="guint16" c:type="guint16*"/>
           </parameter>
         </parameters>
@@ -1716,31 +2579,47 @@ Note: Not implemented.</doc>
       <method name="xr_get_summary_jitter"
               c:identifier="gst_rtcp_packet_xr_get_summary_jitter"
               version="1.16">
-        <doc xml:space="preserve">Extract jitter information from the statistics summary. If the jitter flag in
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="3118">Extract jitter information from the statistics summary. If the jitter flag in
 a block header is set as zero, all of jitters will be zero.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="566"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the report block is correctly parsed.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="3129">%TRUE if the report block is correctly parsed.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="packet" transfer-ownership="none">
-            <doc xml:space="preserve">a valid XR #GstRTCPPacket which has Statics Summary Report Block.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="3120">a valid XR #GstRTCPPacket which has Statics Summary Report Block.</doc>
             <type name="RTCPPacket" c:type="GstRTCPPacket*"/>
           </instance-parameter>
           <parameter name="min_jitter" transfer-ownership="none">
-            <doc xml:space="preserve">the minimum relative transit time between two sequences.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="3121">the minimum relative transit time between two sequences.</doc>
             <type name="guint32" c:type="guint32*"/>
           </parameter>
           <parameter name="max_jitter" transfer-ownership="none">
-            <doc xml:space="preserve">the maximum relative transit time between two sequences.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="3122">the maximum relative transit time between two sequences.</doc>
             <type name="guint32" c:type="guint32*"/>
           </parameter>
           <parameter name="mean_jitter" transfer-ownership="none">
-            <doc xml:space="preserve">the mean relative transit time between two sequences.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="3123">the mean relative transit time between two sequences.</doc>
             <type name="guint32" c:type="guint32*"/>
           </parameter>
           <parameter name="dev_jitter" transfer-ownership="none">
-            <doc xml:space="preserve">the standard deviation of the relative transit time between two sequences.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="3124">the standard deviation of the relative transit time between two sequences.</doc>
             <type name="guint32" c:type="guint32*"/>
           </parameter>
         </parameters>
@@ -1748,23 +2627,35 @@ a block header is set as zero, all of jitters will be zero.</doc>
       <method name="xr_get_summary_pkt"
               c:identifier="gst_rtcp_packet_xr_get_summary_pkt"
               version="1.16">
-        <doc xml:space="preserve">Get the number of lost or duplicate packets. If the flag in a block header
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="3068">Get the number of lost or duplicate packets. If the flag in a block header
 is set as zero, @lost_packets or @dup_packets will be zero.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="562"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the report block is correctly parsed.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="3077">%TRUE if the report block is correctly parsed.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="packet" transfer-ownership="none">
-            <doc xml:space="preserve">a valid XR #GstRTCPPacket which has Statics Summary Report Block.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="3070">a valid XR #GstRTCPPacket which has Statics Summary Report Block.</doc>
             <type name="RTCPPacket" c:type="GstRTCPPacket*"/>
           </instance-parameter>
           <parameter name="lost_packets" transfer-ownership="none">
-            <doc xml:space="preserve">the number of lost packets between begin_seq and end_seq.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="3071">the number of lost packets between begin_seq and end_seq.</doc>
             <type name="guint32" c:type="guint32*"/>
           </parameter>
           <parameter name="dup_packets" transfer-ownership="none">
-            <doc xml:space="preserve">the number of duplicate packets between begin_seq and end_seq.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="3072">the number of duplicate packets between begin_seq and end_seq.</doc>
             <type name="guint32" c:type="guint32*"/>
           </parameter>
         </parameters>
@@ -1772,34 +2663,52 @@ is set as zero, @lost_packets or @dup_packets will be zero.</doc>
       <method name="xr_get_summary_ttl"
               c:identifier="gst_rtcp_packet_xr_get_summary_ttl"
               version="1.16">
-        <doc xml:space="preserve">Extract the value of ttl for ipv4, or hop limit for ipv6.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the report block is correctly parsed.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="3185">Extract the value of ttl for ipv4, or hop limit for ipv6.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="571"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="3196">%TRUE if the report block is correctly parsed.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="packet" transfer-ownership="none">
-            <doc xml:space="preserve">a valid XR #GstRTCPPacket which has Statics Summary Report Block.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="3187">a valid XR #GstRTCPPacket which has Statics Summary Report Block.</doc>
             <type name="RTCPPacket" c:type="GstRTCPPacket*"/>
           </instance-parameter>
           <parameter name="is_ipv4" transfer-ownership="none">
-            <doc xml:space="preserve">the flag to indicate that the return values are ipv4 ttl or ipv6 hop limits.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="3188">the flag to indicate that the return values are ipv4 ttl or ipv6 hop limits.</doc>
             <type name="gboolean" c:type="gboolean*"/>
           </parameter>
           <parameter name="min_ttl" transfer-ownership="none">
-            <doc xml:space="preserve">the minimum TTL or Hop Limit value of data packets between two sequences.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="3189">the minimum TTL or Hop Limit value of data packets between two sequences.</doc>
             <type name="guint8" c:type="guint8*"/>
           </parameter>
           <parameter name="max_ttl" transfer-ownership="none">
-            <doc xml:space="preserve">the maximum TTL or Hop Limit value of data packets between two sequences.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="3190">the maximum TTL or Hop Limit value of data packets between two sequences.</doc>
             <type name="guint8" c:type="guint8*"/>
           </parameter>
           <parameter name="mean_ttl" transfer-ownership="none">
-            <doc xml:space="preserve">the mean TTL or Hop Limit value of data packets between two sequences.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="3191">the mean TTL or Hop Limit value of data packets between two sequences.</doc>
             <type name="guint8" c:type="guint8*"/>
           </parameter>
           <parameter name="dev_ttl" transfer-ownership="none">
-            <doc xml:space="preserve">the standard deviation of the TTL or Hop Limit value of data packets between two sequences.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="3192">the standard deviation of the TTL or Hop Limit value of data packets between two sequences.</doc>
             <type name="guint8" c:type="guint8*"/>
           </parameter>
         </parameters>
@@ -1807,29 +2716,43 @@ is set as zero, @lost_packets or @dup_packets will be zero.</doc>
       <method name="xr_get_voip_burst_metrics"
               c:identifier="gst_rtcp_packet_xr_get_voip_burst_metrics"
               version="1.16">
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="583"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the report block is correctly parsed.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="3320">%TRUE if the report block is correctly parsed.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="packet" transfer-ownership="none">
-            <doc xml:space="preserve">a valid XR #GstRTCPPacket which has VoIP Metrics Report Block.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="3314">a valid XR #GstRTCPPacket which has VoIP Metrics Report Block.</doc>
             <type name="RTCPPacket" c:type="GstRTCPPacket*"/>
           </instance-parameter>
           <parameter name="burst_density" transfer-ownership="none">
-            <doc xml:space="preserve">the fraction of RTP data packets within burst periods.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="3315">the fraction of RTP data packets within burst periods.</doc>
             <type name="guint8" c:type="guint8*"/>
           </parameter>
           <parameter name="gap_density" transfer-ownership="none">
-            <doc xml:space="preserve">the fraction of RTP data packets within inter-burst gaps.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="3316">the fraction of RTP data packets within inter-burst gaps.</doc>
             <type name="guint8" c:type="guint8*"/>
           </parameter>
           <parameter name="burst_duration" transfer-ownership="none">
-            <doc xml:space="preserve">the mean duration(ms) of the burst periods.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="3317">the mean duration(ms) of the burst periods.</doc>
             <type name="guint16" c:type="guint16*"/>
           </parameter>
           <parameter name="gap_duration" transfer-ownership="none">
-            <doc xml:space="preserve">the mean duration(ms) of the gap periods.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="3318">the mean duration(ms) of the gap periods.</doc>
             <type name="guint16" c:type="guint16*"/>
           </parameter>
         </parameters>
@@ -1837,21 +2760,31 @@ is set as zero, @lost_packets or @dup_packets will be zero.</doc>
       <method name="xr_get_voip_configuration_params"
               c:identifier="gst_rtcp_packet_xr_get_voip_configuration_params"
               version="1.16">
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="603"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the report block is correctly parsed.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="3496">%TRUE if the report block is correctly parsed.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="packet" transfer-ownership="none">
-            <doc xml:space="preserve">a valid XR #GstRTCPPacket which has VoIP Metrics Report Block.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="3492">a valid XR #GstRTCPPacket which has VoIP Metrics Report Block.</doc>
             <type name="RTCPPacket" c:type="GstRTCPPacket*"/>
           </instance-parameter>
           <parameter name="gmin" transfer-ownership="none">
-            <doc xml:space="preserve">the gap threshold.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="3493">the gap threshold.</doc>
             <type name="guint8" c:type="guint8*"/>
           </parameter>
           <parameter name="rx_config" transfer-ownership="none">
-            <doc xml:space="preserve">the receiver configuration byte.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="3494">the receiver configuration byte.</doc>
             <type name="guint8" c:type="guint8*"/>
           </parameter>
         </parameters>
@@ -1859,21 +2792,31 @@ is set as zero, @lost_packets or @dup_packets will be zero.</doc>
       <method name="xr_get_voip_delay_metrics"
               c:identifier="gst_rtcp_packet_xr_get_voip_delay_metrics"
               version="1.16">
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="588"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the report block is correctly parsed.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="3366">%TRUE if the report block is correctly parsed.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="packet" transfer-ownership="none">
-            <doc xml:space="preserve">a valid XR #GstRTCPPacket which has VoIP Metrics Report Block.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="3362">a valid XR #GstRTCPPacket which has VoIP Metrics Report Block.</doc>
             <type name="RTCPPacket" c:type="GstRTCPPacket*"/>
           </instance-parameter>
           <parameter name="roundtrip_delay" transfer-ownership="none">
-            <doc xml:space="preserve">the most recently calculated round trip time between RTP interfaces(ms)</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="3363">the most recently calculated round trip time between RTP interfaces(ms)</doc>
             <type name="guint16" c:type="guint16*"/>
           </parameter>
           <parameter name="end_system_delay" transfer-ownership="none">
-            <doc xml:space="preserve">the most recently estimated end system delay(ms)</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="3364">the most recently estimated end system delay(ms)</doc>
             <type name="guint16" c:type="guint16*"/>
           </parameter>
         </parameters>
@@ -1881,25 +2824,37 @@ is set as zero, @lost_packets or @dup_packets will be zero.</doc>
       <method name="xr_get_voip_jitter_buffer_params"
               c:identifier="gst_rtcp_packet_xr_get_voip_jitter_buffer_params"
               version="1.16">
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="607"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the report block is correctly parsed.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="3532">%TRUE if the report block is correctly parsed.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="packet" transfer-ownership="none">
-            <doc xml:space="preserve">a valid XR #GstRTCPPacket which has VoIP Metrics Report Block.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="3527">a valid XR #GstRTCPPacket which has VoIP Metrics Report Block.</doc>
             <type name="RTCPPacket" c:type="GstRTCPPacket*"/>
           </instance-parameter>
           <parameter name="jb_nominal" transfer-ownership="none">
-            <doc xml:space="preserve">the current nominal jitter buffer delay(ms)</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="3528">the current nominal jitter buffer delay(ms)</doc>
             <type name="guint16" c:type="guint16*"/>
           </parameter>
           <parameter name="jb_maximum" transfer-ownership="none">
-            <doc xml:space="preserve">the current maximum jitter buffer delay(ms)</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="3529">the current maximum jitter buffer delay(ms)</doc>
             <type name="guint16" c:type="guint16*"/>
           </parameter>
           <parameter name="jb_abs_max" transfer-ownership="none">
-            <doc xml:space="preserve">the absolute maximum delay(ms)</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="3530">the absolute maximum delay(ms)</doc>
             <type name="guint16" c:type="guint16*"/>
           </parameter>
         </parameters>
@@ -1907,17 +2862,25 @@ is set as zero, @lost_packets or @dup_packets will be zero.</doc>
       <method name="xr_get_voip_metrics_ssrc"
               c:identifier="gst_rtcp_packet_xr_get_voip_metrics_ssrc"
               version="1.16">
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="576"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the report block is correctly parsed.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="3247">%TRUE if the report block is correctly parsed.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="packet" transfer-ownership="none">
-            <doc xml:space="preserve">a valid XR #GstRTCPPacket which has VoIP Metrics Report Block.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="3244">a valid XR #GstRTCPPacket which has VoIP Metrics Report Block.</doc>
             <type name="RTCPPacket" c:type="GstRTCPPacket*"/>
           </instance-parameter>
           <parameter name="ssrc" transfer-ownership="none">
-            <doc xml:space="preserve">the SSRC of source</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="3245">the SSRC of source</doc>
             <type name="guint32" c:type="guint32*"/>
           </parameter>
         </parameters>
@@ -1925,21 +2888,31 @@ is set as zero, @lost_packets or @dup_packets will be zero.</doc>
       <method name="xr_get_voip_packet_metrics"
               c:identifier="gst_rtcp_packet_xr_get_voip_packet_metrics"
               version="1.16">
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="579"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the report block is correctly parsed.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="3281">%TRUE if the report block is correctly parsed.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="packet" transfer-ownership="none">
-            <doc xml:space="preserve">a valid XR #GstRTCPPacket which has VoIP Metrics Report Block.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="3277">a valid XR #GstRTCPPacket which has VoIP Metrics Report Block.</doc>
             <type name="RTCPPacket" c:type="GstRTCPPacket*"/>
           </instance-parameter>
           <parameter name="loss_rate" transfer-ownership="none">
-            <doc xml:space="preserve">the fraction of RTP data packets from the source lost.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="3278">the fraction of RTP data packets from the source lost.</doc>
             <type name="guint8" c:type="guint8*"/>
           </parameter>
           <parameter name="discard_rate" transfer-ownership="none">
-            <doc xml:space="preserve">the fraction of RTP data packets from the source that have been discarded.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="3279">the fraction of RTP data packets from the source that have been discarded.</doc>
             <type name="guint8" c:type="guint8*"/>
           </parameter>
         </parameters>
@@ -1947,29 +2920,43 @@ is set as zero, @lost_packets or @dup_packets will be zero.</doc>
       <method name="xr_get_voip_quality_metrics"
               c:identifier="gst_rtcp_packet_xr_get_voip_quality_metrics"
               version="1.16">
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="598"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the report block is correctly parsed.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="3452">%TRUE if the report block is correctly parsed.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="packet" transfer-ownership="none">
-            <doc xml:space="preserve">a valid XR #GstRTCPPacket which has VoIP Metrics Report Block.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="3446">a valid XR #GstRTCPPacket which has VoIP Metrics Report Block.</doc>
             <type name="RTCPPacket" c:type="GstRTCPPacket*"/>
           </instance-parameter>
           <parameter name="r_factor" transfer-ownership="none">
-            <doc xml:space="preserve">the R factor is a voice quality metric describing the segment of the call.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="3447">the R factor is a voice quality metric describing the segment of the call.</doc>
             <type name="guint8" c:type="guint8*"/>
           </parameter>
           <parameter name="ext_r_factor" transfer-ownership="none">
-            <doc xml:space="preserve">the external R factor is a voice quality metric.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="3448">the external R factor is a voice quality metric.</doc>
             <type name="guint8" c:type="guint8*"/>
           </parameter>
           <parameter name="mos_lq" transfer-ownership="none">
-            <doc xml:space="preserve">the estimated mean opinion score for listening quality.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="3449">the estimated mean opinion score for listening quality.</doc>
             <type name="guint8" c:type="guint8*"/>
           </parameter>
           <parameter name="mos_cq" transfer-ownership="none">
-            <doc xml:space="preserve">the estimated mean opinion score for conversational quality.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="3450">the estimated mean opinion score for conversational quality.</doc>
             <type name="guint8" c:type="guint8*"/>
           </parameter>
         </parameters>
@@ -1977,29 +2964,43 @@ is set as zero, @lost_packets or @dup_packets will be zero.</doc>
       <method name="xr_get_voip_signal_metrics"
               c:identifier="gst_rtcp_packet_xr_get_voip_signal_metrics"
               version="1.16">
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="593"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the report block is correctly parsed.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="3406">%TRUE if the report block is correctly parsed.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="packet" transfer-ownership="none">
-            <doc xml:space="preserve">a valid XR #GstRTCPPacket which has VoIP Metrics Report Block.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="3400">a valid XR #GstRTCPPacket which has VoIP Metrics Report Block.</doc>
             <type name="RTCPPacket" c:type="GstRTCPPacket*"/>
           </instance-parameter>
           <parameter name="signal_level" transfer-ownership="none">
-            <doc xml:space="preserve">the ratio of the signal level to a 0 dBm reference.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="3401">the ratio of the signal level to a 0 dBm reference.</doc>
             <type name="guint8" c:type="guint8*"/>
           </parameter>
           <parameter name="noise_level" transfer-ownership="none">
-            <doc xml:space="preserve">the ratio of the silent period background noise level to a 0 dBm reference.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="3402">the ratio of the silent period background noise level to a 0 dBm reference.</doc>
             <type name="guint8" c:type="guint8*"/>
           </parameter>
           <parameter name="rerl" transfer-ownership="none">
-            <doc xml:space="preserve">the residual echo return loss value.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="3403">the residual echo return loss value.</doc>
             <type name="guint8" c:type="guint8*"/>
           </parameter>
           <parameter name="gmin" transfer-ownership="none">
-            <doc xml:space="preserve">the gap threshold.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="3404">the gap threshold.</doc>
             <type name="guint8" c:type="guint8*"/>
           </parameter>
         </parameters>
@@ -2007,14 +3008,22 @@ is set as zero, @lost_packets or @dup_packets will be zero.</doc>
       <method name="xr_next_rb"
               c:identifier="gst_rtcp_packet_xr_next_rb"
               version="1.16">
-        <doc xml:space="preserve">Move to the next extended report block in XR @packet.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">TRUE if there was a next extended report block.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="2628">Move to the next extended report block in XR @packet.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+                         line="522"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="2634">TRUE if there was a next extended report block.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="packet" transfer-ownership="none">
-            <doc xml:space="preserve">a valid XR #GstRTCPPacket</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+                 line="2630">a valid XR #GstRTCPPacket</doc>
             <type name="RTCPPacket" c:type="GstRTCPPacket*"/>
           </instance-parameter>
         </parameters>
@@ -2024,126 +3033,168 @@ is set as zero, @lost_packets or @dup_packets will be zero.</doc>
                  glib:type-name="GstRTCPSDESType"
                  glib:get-type="gst_rtcpsdes_type_get_type"
                  c:type="GstRTCPSDESType">
-      <doc xml:space="preserve">Different types of SDES content.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+           line="114">Different types of SDES content.</doc>
       <member name="invalid"
               value="-1"
               c:identifier="GST_RTCP_SDES_INVALID"
               glib:nick="invalid">
-        <doc xml:space="preserve">Invalid SDES entry</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+             line="116">Invalid SDES entry</doc>
       </member>
       <member name="end"
               value="0"
               c:identifier="GST_RTCP_SDES_END"
               glib:nick="end">
-        <doc xml:space="preserve">End of SDES list</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+             line="117">End of SDES list</doc>
       </member>
       <member name="cname"
               value="1"
               c:identifier="GST_RTCP_SDES_CNAME"
               glib:nick="cname">
-        <doc xml:space="preserve">Canonical name</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+             line="118">Canonical name</doc>
       </member>
       <member name="name"
               value="2"
               c:identifier="GST_RTCP_SDES_NAME"
               glib:nick="name">
-        <doc xml:space="preserve">User name</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+             line="119">User name</doc>
       </member>
       <member name="email"
               value="3"
               c:identifier="GST_RTCP_SDES_EMAIL"
               glib:nick="email">
-        <doc xml:space="preserve">User's electronic mail address</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+             line="120">User's electronic mail address</doc>
       </member>
       <member name="phone"
               value="4"
               c:identifier="GST_RTCP_SDES_PHONE"
               glib:nick="phone">
-        <doc xml:space="preserve">User's phone number</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+             line="121">User's phone number</doc>
       </member>
       <member name="loc"
               value="5"
               c:identifier="GST_RTCP_SDES_LOC"
               glib:nick="loc">
-        <doc xml:space="preserve">Geographic user location</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+             line="122">Geographic user location</doc>
       </member>
       <member name="tool"
               value="6"
               c:identifier="GST_RTCP_SDES_TOOL"
               glib:nick="tool">
-        <doc xml:space="preserve">Name of application or tool</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+             line="123">Name of application or tool</doc>
       </member>
       <member name="note"
               value="7"
               c:identifier="GST_RTCP_SDES_NOTE"
               glib:nick="note">
-        <doc xml:space="preserve">Notice about the source</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+             line="124">Notice about the source</doc>
       </member>
       <member name="priv"
               value="8"
               c:identifier="GST_RTCP_SDES_PRIV"
               glib:nick="priv">
-        <doc xml:space="preserve">Private extensions</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+             line="125">Private extensions</doc>
       </member>
     </enumeration>
     <enumeration name="RTCPType"
                  glib:type-name="GstRTCPType"
                  glib:get-type="gst_rtcp_type_get_type"
                  c:type="GstRTCPType">
-      <doc xml:space="preserve">Different RTCP packet types.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+           line="38">Different RTCP packet types.</doc>
       <member name="invalid"
               value="0"
               c:identifier="GST_RTCP_TYPE_INVALID"
               glib:nick="invalid">
-        <doc xml:space="preserve">Invalid type</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+             line="40">Invalid type</doc>
       </member>
       <member name="sr"
               value="200"
               c:identifier="GST_RTCP_TYPE_SR"
               glib:nick="sr">
-        <doc xml:space="preserve">Sender report</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+             line="41">Sender report</doc>
       </member>
       <member name="rr"
               value="201"
               c:identifier="GST_RTCP_TYPE_RR"
               glib:nick="rr">
-        <doc xml:space="preserve">Receiver report</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+             line="42">Receiver report</doc>
       </member>
       <member name="sdes"
               value="202"
               c:identifier="GST_RTCP_TYPE_SDES"
               glib:nick="sdes">
-        <doc xml:space="preserve">Source description</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+             line="43">Source description</doc>
       </member>
       <member name="bye"
               value="203"
               c:identifier="GST_RTCP_TYPE_BYE"
               glib:nick="bye">
-        <doc xml:space="preserve">Goodbye</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+             line="44">Goodbye</doc>
       </member>
       <member name="app"
               value="204"
               c:identifier="GST_RTCP_TYPE_APP"
               glib:nick="app">
-        <doc xml:space="preserve">Application defined</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+             line="45">Application defined</doc>
       </member>
       <member name="rtpfb"
               value="205"
               c:identifier="GST_RTCP_TYPE_RTPFB"
               glib:nick="rtpfb">
-        <doc xml:space="preserve">Transport layer feedback.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+             line="46">Transport layer feedback.</doc>
       </member>
       <member name="psfb"
               value="206"
               c:identifier="GST_RTCP_TYPE_PSFB"
               glib:nick="psfb">
-        <doc xml:space="preserve">Payload-specific feedback.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+             line="47">Payload-specific feedback.</doc>
       </member>
       <member name="xr"
               value="207"
               c:identifier="GST_RTCP_TYPE_XR"
               glib:nick="xr">
-        <doc xml:space="preserve">Extended report.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+             line="48">Extended report.</doc>
       </member>
     </enumeration>
     <enumeration name="RTCPXRType"
@@ -2151,101 +3202,143 @@ is set as zero, @lost_packets or @dup_packets will be zero.</doc>
                  glib:type-name="GstRTCPXRType"
                  glib:get-type="gst_rtcpxr_type_get_type"
                  c:type="GstRTCPXRType">
-      <doc xml:space="preserve">Types of RTCP Extended Reports, those are defined in RFC 3611 and other RFCs
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+           line="143">Types of RTCP Extended Reports, those are defined in RFC 3611 and other RFCs
 according to the [IANA registry](https://www.iana.org/assignments/rtcp-xr-block-types/rtcp-xr-block-types.xhtml).</doc>
       <member name="invalid"
               value="-1"
               c:identifier="GST_RTCP_XR_TYPE_INVALID"
               glib:nick="invalid">
-        <doc xml:space="preserve">Invalid XR Report Block</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+             line="145">Invalid XR Report Block</doc>
       </member>
       <member name="lrle"
               value="1"
               c:identifier="GST_RTCP_XR_TYPE_LRLE"
               glib:nick="lrle">
-        <doc xml:space="preserve">Loss RLE Report Block</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+             line="146">Loss RLE Report Block</doc>
       </member>
       <member name="drle"
               value="2"
               c:identifier="GST_RTCP_XR_TYPE_DRLE"
               glib:nick="drle">
-        <doc xml:space="preserve">Duplicate RLE Report Block</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+             line="147">Duplicate RLE Report Block</doc>
       </member>
       <member name="prt"
               value="3"
               c:identifier="GST_RTCP_XR_TYPE_PRT"
               glib:nick="prt">
-        <doc xml:space="preserve">Packet Receipt Times Report Block</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+             line="148">Packet Receipt Times Report Block</doc>
       </member>
       <member name="rrt"
               value="4"
               c:identifier="GST_RTCP_XR_TYPE_RRT"
               glib:nick="rrt">
-        <doc xml:space="preserve">Receiver Reference Time Report Block</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+             line="149">Receiver Reference Time Report Block</doc>
       </member>
       <member name="dlrr"
               value="5"
               c:identifier="GST_RTCP_XR_TYPE_DLRR"
               glib:nick="dlrr">
-        <doc xml:space="preserve">Delay since the last Receiver Report</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+             line="150">Delay since the last Receiver Report</doc>
       </member>
       <member name="ssumm"
               value="6"
               c:identifier="GST_RTCP_XR_TYPE_SSUMM"
               glib:nick="ssumm">
-        <doc xml:space="preserve">Statistics Summary Report Block</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+             line="151">Statistics Summary Report Block</doc>
       </member>
       <member name="voip_metrics"
               value="7"
               c:identifier="GST_RTCP_XR_TYPE_VOIP_METRICS"
               glib:nick="voip-metrics">
-        <doc xml:space="preserve">VoIP Metrics Report Block</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+             line="152">VoIP Metrics Report Block</doc>
       </member>
     </enumeration>
     <constant name="RTCP_MAX_BYE_SSRC_COUNT"
               value="31"
               c:type="GST_RTCP_MAX_BYE_SSRC_COUNT">
-      <doc xml:space="preserve">The maximum amount of SSRCs in a BYE packet.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+           line="192">The maximum amount of SSRCs in a BYE packet.</doc>
+      <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h" line="197"/>
       <type name="gint" c:type="gint"/>
     </constant>
     <constant name="RTCP_MAX_RB_COUNT"
               value="31"
               c:type="GST_RTCP_MAX_RB_COUNT">
-      <doc xml:space="preserve">The maximum amount of Receiver report blocks in RR and SR messages.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+           line="178">The maximum amount of Receiver report blocks in RR and SR messages.</doc>
+      <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h" line="183"/>
       <type name="gint" c:type="gint"/>
     </constant>
     <constant name="RTCP_MAX_SDES" value="255" c:type="GST_RTCP_MAX_SDES">
-      <doc xml:space="preserve">The maximum text length for an SDES item.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+           line="171">The maximum text length for an SDES item.</doc>
+      <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h" line="176"/>
       <type name="gint" c:type="gint"/>
     </constant>
     <constant name="RTCP_MAX_SDES_ITEM_COUNT"
               value="31"
               c:type="GST_RTCP_MAX_SDES_ITEM_COUNT">
-      <doc xml:space="preserve">The maximum amount of SDES items.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+           line="185">The maximum amount of SDES items.</doc>
+      <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h" line="190"/>
       <type name="gint" c:type="gint"/>
     </constant>
     <constant name="RTCP_REDUCED_SIZE_VALID_MASK"
               value="57592"
               c:type="GST_RTCP_REDUCED_SIZE_VALID_MASK">
-      <doc xml:space="preserve">Mask for version, padding bit and packet type pair allowing reduced size
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+           line="206">Mask for version, padding bit and packet type pair allowing reduced size
 packets, basically it accepts other types than RR and SR</doc>
+      <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h" line="212"/>
       <type name="gint" c:type="gint"/>
     </constant>
     <constant name="RTCP_VALID_MASK"
               value="57598"
               c:type="GST_RTCP_VALID_MASK">
-      <doc xml:space="preserve">Mask for version, padding bit and packet type pair</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+           line="199">Mask for version, padding bit and packet type pair</doc>
+      <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h" line="204"/>
       <type name="gint" c:type="gint"/>
     </constant>
     <constant name="RTCP_VALID_VALUE"
               value="200"
               c:type="GST_RTCP_VALID_VALUE">
-      <doc xml:space="preserve">Valid value for the first two bytes of an RTCP packet after applying
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+           line="214">Valid value for the first two bytes of an RTCP packet after applying
 #GST_RTCP_VALID_MASK to them.</doc>
+      <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h" line="220"/>
       <type name="gint" c:type="gint"/>
     </constant>
     <constant name="RTCP_VERSION" value="2" c:type="GST_RTCP_VERSION">
-      <doc xml:space="preserve">The supported RTCP version 2.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtp/gstrtcpbuffer.h"
+           line="31">The supported RTCP version 2.</doc>
+      <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h" line="36"/>
       <type name="gint" c:type="gint"/>
     </constant>
     <class name="RTPBaseAudioPayload"
@@ -2255,7 +3348,9 @@ packets, basically it accepts other types than RR and SR</doc>
            glib:type-name="GstRTPBaseAudioPayload"
            glib:get-type="gst_rtp_base_audio_payload_get_type"
            glib:type-struct="RTPBaseAudioPayloadClass">
-      <doc xml:space="preserve">Provides a base class for audio RTP payloaders for frame or sample based
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtp/gstrtpbaseaudiopayload.c"
+           line="20">Provides a base class for audio RTP payloaders for frame or sample based
 audio codecs (constant bitrate)
 
 This class derives from GstRTPBasePayload. It can be used for payloading
@@ -2275,7 +3370,7 @@ RTP packets always contain full frames.
 To use this base class, your child element needs to call either
 gst_rtp_base_audio_payload_set_frame_based() or
 gst_rtp_base_audio_payload_set_sample_based(). This is usually done in the
-element's _init() function. Then, the child element must call either
+element's `_init()` function. Then, the child element must call either
 gst_rtp_base_audio_payload_set_frame_options(),
 gst_rtp_base_audio_payload_set_sample_options() or
 gst_rtp_base_audio_payload_set_samplebits_options. Since
@@ -2283,162 +3378,236 @@ GstRTPBaseAudioPayload derives from GstRTPBasePayload, the child element
 must set any variables or call/override any functions required by that base
 class. The child element does not need to override any other functions
 specific to GstRTPBaseAudioPayload.</doc>
+      <source-position filename="gst-libs/gst/rtp/gstrtpbaseaudiopayload.h"
+                       line="77"/>
       <method name="flush" c:identifier="gst_rtp_base_audio_payload_flush">
-        <doc xml:space="preserve">Create an RTP buffer and store @payload_len bytes of the adapter as the
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbaseaudiopayload.c"
+             line="562">Create an RTP buffer and store @payload_len bytes of the adapter as the
 payload. Set the timestamp on the new buffer to @timestamp before pushing
 the buffer downstream.
 
 If @payload_len is -1, all pending bytes will be flushed. If @timestamp is
 -1, the timestamp will be calculated automatically.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtpbaseaudiopayload.h"
+                         line="117"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstFlowReturn</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbaseaudiopayload.c"
+               line="575">a #GstFlowReturn</doc>
           <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
         <parameters>
           <instance-parameter name="baseaudiopayload"
                               transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTPBasePayload</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbaseaudiopayload.c"
+                 line="564">a #GstRTPBasePayload</doc>
             <type name="RTPBaseAudioPayload" c:type="GstRTPBaseAudioPayload*"/>
           </instance-parameter>
           <parameter name="payload_len" transfer-ownership="none">
-            <doc xml:space="preserve">length of payload</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbaseaudiopayload.c"
+                 line="565">length of payload</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="timestamp" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstClockTime</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbaseaudiopayload.c"
+                 line="566">a #GstClockTime</doc>
             <type name="Gst.ClockTime" c:type="GstClockTime"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_adapter"
               c:identifier="gst_rtp_base_audio_payload_get_adapter">
-        <doc xml:space="preserve">Gets the internal adapter used by the depayloader.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbaseaudiopayload.c"
+             line="1001">Gets the internal adapter used by the depayloader.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtpbaseaudiopayload.h"
+                         line="107"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a #GstAdapter.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbaseaudiopayload.c"
+               line="1007">a #GstAdapter.</doc>
           <type name="GstBase.Adapter" c:type="GstAdapter*"/>
         </return-value>
         <parameters>
           <instance-parameter name="rtpbaseaudiopayload"
                               transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTPBaseAudioPayload</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbaseaudiopayload.c"
+                 line="1003">a #GstRTPBaseAudioPayload</doc>
             <type name="RTPBaseAudioPayload" c:type="GstRTPBaseAudioPayload*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="push" c:identifier="gst_rtp_base_audio_payload_push">
-        <doc xml:space="preserve">Create an RTP buffer and store @payload_len bytes of @data as the
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbaseaudiopayload.c"
+             line="428">Create an RTP buffer and store @payload_len bytes of @data as the
 payload. Set the timestamp on the new buffer to @timestamp before pushing
 the buffer downstream.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtpbaseaudiopayload.h"
+                         line="112"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstFlowReturn</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbaseaudiopayload.c"
+               line="439">a #GstFlowReturn</doc>
           <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
         <parameters>
           <instance-parameter name="baseaudiopayload"
                               transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTPBasePayload</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbaseaudiopayload.c"
+                 line="430">a #GstRTPBasePayload</doc>
             <type name="RTPBaseAudioPayload" c:type="GstRTPBaseAudioPayload*"/>
           </instance-parameter>
           <parameter name="data" transfer-ownership="none">
-            <doc xml:space="preserve">data to set as payload</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbaseaudiopayload.c"
+                 line="431">data to set as payload</doc>
             <array length="1" zero-terminated="0" c:type="const guint8*">
               <type name="guint8" c:type="guint8"/>
             </array>
           </parameter>
           <parameter name="payload_len" transfer-ownership="none">
-            <doc xml:space="preserve">length of payload</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbaseaudiopayload.c"
+                 line="432">length of payload</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="timestamp" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstClockTime</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbaseaudiopayload.c"
+                 line="433">a #GstClockTime</doc>
             <type name="Gst.ClockTime" c:type="GstClockTime"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_frame_based"
               c:identifier="gst_rtp_base_audio_payload_set_frame_based">
-        <doc xml:space="preserve">Tells #GstRTPBaseAudioPayload that the child element is for a frame based
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbaseaudiopayload.c"
+             line="260">Tells #GstRTPBaseAudioPayload that the child element is for a frame based
 audio codec</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtpbaseaudiopayload.h"
+                         line="85"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="rtpbaseaudiopayload"
                               transfer-ownership="none">
-            <doc xml:space="preserve">a pointer to the element.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbaseaudiopayload.c"
+                 line="262">a pointer to the element.</doc>
             <type name="RTPBaseAudioPayload" c:type="GstRTPBaseAudioPayload*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="set_frame_options"
               c:identifier="gst_rtp_base_audio_payload_set_frame_options">
-        <doc xml:space="preserve">Sets the options for frame based audio codecs.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbaseaudiopayload.c"
+             line="308">Sets the options for frame based audio codecs.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtpbaseaudiopayload.h"
+                         line="88"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="rtpbaseaudiopayload"
                               transfer-ownership="none">
-            <doc xml:space="preserve">a pointer to the element.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbaseaudiopayload.c"
+                 line="310">a pointer to the element.</doc>
             <type name="RTPBaseAudioPayload" c:type="GstRTPBaseAudioPayload*"/>
           </instance-parameter>
           <parameter name="frame_duration" transfer-ownership="none">
-            <doc xml:space="preserve">The duraction of an audio frame in milliseconds.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbaseaudiopayload.c"
+                 line="311">The duraction of an audio frame in milliseconds.</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="frame_size" transfer-ownership="none">
-            <doc xml:space="preserve">The size of an audio frame in bytes.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbaseaudiopayload.c"
+                 line="312">The size of an audio frame in bytes.</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_sample_based"
               c:identifier="gst_rtp_base_audio_payload_set_sample_based">
-        <doc xml:space="preserve">Tells #GstRTPBaseAudioPayload that the child element is for a sample based
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbaseaudiopayload.c"
+             line="284">Tells #GstRTPBaseAudioPayload that the child element is for a sample based
 audio codec</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtpbaseaudiopayload.h"
+                         line="94"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="rtpbaseaudiopayload"
                               transfer-ownership="none">
-            <doc xml:space="preserve">a pointer to the element.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbaseaudiopayload.c"
+                 line="286">a pointer to the element.</doc>
             <type name="RTPBaseAudioPayload" c:type="GstRTPBaseAudioPayload*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="set_sample_options"
               c:identifier="gst_rtp_base_audio_payload_set_sample_options">
-        <doc xml:space="preserve">Sets the options for sample based audio codecs.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbaseaudiopayload.c"
+             line="338">Sets the options for sample based audio codecs.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtpbaseaudiopayload.h"
+                         line="97"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="rtpbaseaudiopayload"
                               transfer-ownership="none">
-            <doc xml:space="preserve">a pointer to the element.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbaseaudiopayload.c"
+                 line="340">a pointer to the element.</doc>
             <type name="RTPBaseAudioPayload" c:type="GstRTPBaseAudioPayload*"/>
           </instance-parameter>
           <parameter name="sample_size" transfer-ownership="none">
-            <doc xml:space="preserve">Size per sample in bytes.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbaseaudiopayload.c"
+                 line="341">Size per sample in bytes.</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_samplebits_options"
               c:identifier="gst_rtp_base_audio_payload_set_samplebits_options">
-        <doc xml:space="preserve">Sets the options for sample based audio codecs.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbaseaudiopayload.c"
+             line="356">Sets the options for sample based audio codecs.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtpbaseaudiopayload.h"
+                         line="101"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="rtpbaseaudiopayload"
                               transfer-ownership="none">
-            <doc xml:space="preserve">a pointer to the element.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbaseaudiopayload.c"
+                 line="358">a pointer to the element.</doc>
             <type name="RTPBaseAudioPayload" c:type="GstRTPBaseAudioPayload*"/>
           </instance-parameter>
           <parameter name="sample_size" transfer-ownership="none">
-            <doc xml:space="preserve">Size per sample in bits.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbaseaudiopayload.c"
+                 line="359">Size per sample in bits.</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
         </parameters>
@@ -2466,7 +3635,7 @@ audio codec</doc>
         <type name="gint" c:type="gint"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -2474,13 +3643,19 @@ audio codec</doc>
     <record name="RTPBaseAudioPayloadClass"
             c:type="GstRTPBaseAudioPayloadClass"
             glib:is-gtype-struct-for="RTPBaseAudioPayload">
-      <doc xml:space="preserve">Base class for audio RTP payloader.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtp/gstrtpbaseaudiopayload.h"
+           line="65">Base class for audio RTP payloader.</doc>
+      <source-position filename="gst-libs/gst/rtp/gstrtpbaseaudiopayload.h"
+                       line="77"/>
       <field name="parent_class">
-        <doc xml:space="preserve">the parent class</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbaseaudiopayload.h"
+             line="67">the parent class</doc>
         <type name="RTPBasePayloadClass" c:type="GstRTPBasePayloadClass"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -2488,6 +3663,8 @@ audio codec</doc>
     <record name="RTPBaseAudioPayloadPrivate"
             c:type="GstRTPBaseAudioPayloadPrivate"
             disguised="1">
+      <source-position filename="gst-libs/gst/rtp/gstrtpbaseaudiopayload.h"
+                       line="32"/>
     </record>
     <class name="RTPBaseDepayload"
            c:symbol-prefix="rtp_base_depayload"
@@ -2497,8 +3674,14 @@ audio codec</doc>
            glib:type-name="GstRTPBaseDepayload"
            glib:get-type="gst_rtp_base_depayload_get_type"
            glib:type-struct="RTPBaseDepayloadClass">
-      <doc xml:space="preserve">Provides a base class for RTP depayloaders</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtp/gstrtpbasedepayload.c"
+           line="21">Provides a base class for RTP depayloaders</doc>
+      <source-position filename="gst-libs/gst/rtp/gstrtpbasedepayload.h"
+                       line="112"/>
       <virtual-method name="handle_event">
+        <source-position filename="gst-libs/gst/rtp/gstrtpbasedepayload.h"
+                         line="106"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -2512,6 +3695,8 @@ audio codec</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="packet_lost">
+        <source-position filename="gst-libs/gst/rtp/gstrtpbasedepayload.h"
+                         line="102"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -2525,6 +3710,8 @@ audio codec</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="process">
+        <source-position filename="gst-libs/gst/rtp/gstrtpbasedepayload.h"
+                         line="97"/>
         <return-value transfer-ownership="full">
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </return-value>
@@ -2538,6 +3725,8 @@ audio codec</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="process_rtp_packet">
+        <source-position filename="gst-libs/gst/rtp/gstrtpbasedepayload.h"
+                         line="108"/>
         <return-value transfer-ownership="full">
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </return-value>
@@ -2551,6 +3740,8 @@ audio codec</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="set_caps">
+        <source-position filename="gst-libs/gst/rtp/gstrtpbasedepayload.h"
+                         line="94"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -2566,53 +3757,81 @@ audio codec</doc>
       <method name="is_source_info_enabled"
               c:identifier="gst_rtp_base_depayload_is_source_info_enabled"
               version="1.16">
-        <doc xml:space="preserve">Queries whether #GstRTPSourceMeta will be added to depayloaded buffers.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if source-info is enabled.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbasedepayload.c"
+             line="1154">Queries whether #GstRTPSourceMeta will be added to depayloaded buffers.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtpbasedepayload.h"
+                         line="124"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbasedepayload.c"
+               line="1160">%TRUE if source-info is enabled.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="depayload" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTPBaseDepayload</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbasedepayload.c"
+                 line="1156">a #GstRTPBaseDepayload</doc>
             <type name="RTPBaseDepayload" c:type="GstRTPBaseDepayload*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="push" c:identifier="gst_rtp_base_depayload_push">
-        <doc xml:space="preserve">Push @out_buf to the peer of @filter. This function takes ownership of
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbasedepayload.c"
+             line="899">Push @out_buf to the peer of @filter. This function takes ownership of
 @out_buf.
 
-This function will by default apply the last incomming timestamp on
+This function will by default apply the last incoming timestamp on
 the outgoing buffer when it didn't have a timestamp already.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtpbasedepayload.h"
+                         line="118"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstFlowReturn.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbasedepayload.c"
+               line="910">a #GstFlowReturn.</doc>
           <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
         <parameters>
           <instance-parameter name="filter" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTPBaseDepayload</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbasedepayload.c"
+                 line="901">a #GstRTPBaseDepayload</doc>
             <type name="RTPBaseDepayload" c:type="GstRTPBaseDepayload*"/>
           </instance-parameter>
           <parameter name="out_buf" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBuffer</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbasedepayload.c"
+                 line="902">a #GstBuffer</doc>
             <type name="Gst.Buffer" c:type="GstBuffer*"/>
           </parameter>
         </parameters>
       </method>
       <method name="push_list" c:identifier="gst_rtp_base_depayload_push_list">
-        <doc xml:space="preserve">Push @out_list to the peer of @filter. This function takes ownership of
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbasedepayload.c"
+             line="930">Push @out_list to the peer of @filter. This function takes ownership of
 @out_list.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtpbasedepayload.h"
+                         line="121"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstFlowReturn.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbasedepayload.c"
+               line="938">a #GstFlowReturn.</doc>
           <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
         <parameters>
           <instance-parameter name="filter" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTPBaseDepayload</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbasedepayload.c"
+                 line="932">a #GstRTPBaseDepayload</doc>
             <type name="RTPBaseDepayload" c:type="GstRTPBaseDepayload*"/>
           </instance-parameter>
           <parameter name="out_list" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBufferList</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbasedepayload.c"
+                 line="933">a #GstBufferList</doc>
             <type name="Gst.BufferList" c:type="GstBufferList*"/>
           </parameter>
         </parameters>
@@ -2620,30 +3839,54 @@ the outgoing buffer when it didn't have a timestamp already.</doc>
       <method name="set_source_info_enabled"
               c:identifier="gst_rtp_base_depayload_set_source_info_enabled"
               version="1.16">
-        <doc xml:space="preserve">Enable or disable adding #GstRTPSourceMeta to depayloaded buffers.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbasedepayload.c"
+             line="1138">Enable or disable adding #GstRTPSourceMeta to depayloaded buffers.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtpbasedepayload.h"
+                         line="127"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="depayload" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTPBaseDepayload</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbasedepayload.c"
+                 line="1140">a #GstRTPBaseDepayload</doc>
             <type name="RTPBaseDepayload" c:type="GstRTPBaseDepayload*"/>
           </instance-parameter>
           <parameter name="enable" transfer-ownership="none">
-            <doc xml:space="preserve">whether to add meta about RTP sources to buffer</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbasedepayload.c"
+                 line="1141">whether to add meta about RTP sources to buffer</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </method>
+      <property name="max-reorder"
+                version="1.18"
+                writable="1"
+                transfer-ownership="none">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbasedepayload.c"
+             line="211">Max seqnum reorder before the sender is assumed to have restarted.
+
+When max-reorder is set to 0 all reordered/duplicate packets are
+considered coming from a restarted sender.</doc>
+        <type name="gint" c:type="gint"/>
+      </property>
       <property name="source-info"
                 version="1.16"
                 writable="1"
                 transfer-ownership="none">
-        <doc xml:space="preserve">Add RTP source information found in RTP header as meta to output buffer.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbasedepayload.c"
+             line="199">Add RTP source information found in RTP header as meta to output buffer.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </property>
       <property name="stats" transfer-ownership="none">
-        <doc xml:space="preserve">Various depayloader statistics retrieved atomically (and are therefore
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbasedepayload.c"
+             line="175">Various depayloader statistics retrieved atomically (and are therefore
 synchroized with each other). This property return a GstStructure named
 application/x-rtp-depayload-stats containing the following fields relating to
 the last processed buffer and current state of the stream being depayloaded:
@@ -2684,7 +3927,7 @@ the last processed buffer and current state of the stream being depayloaded:
               c:type="GstRTPBaseDepayloadPrivate*"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -2692,13 +3935,21 @@ the last processed buffer and current state of the stream being depayloaded:
     <record name="RTPBaseDepayloadClass"
             c:type="GstRTPBaseDepayloadClass"
             glib:is-gtype-struct-for="RTPBaseDepayload">
-      <doc xml:space="preserve">Base class for RTP depayloaders.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtp/gstrtpbasedepayload.h"
+           line="66">Base class for RTP depayloaders.</doc>
+      <source-position filename="gst-libs/gst/rtp/gstrtpbasedepayload.h"
+                       line="112"/>
       <field name="parent_class">
-        <doc xml:space="preserve">the parent class</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbasedepayload.h"
+             line="68">the parent class</doc>
         <type name="Gst.ElementClass" c:type="GstElementClass"/>
       </field>
       <field name="set_caps">
         <callback name="set_caps">
+          <source-position filename="gst-libs/gst/rtp/gstrtpbasedepayload.h"
+                           line="94"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -2714,6 +3965,8 @@ the last processed buffer and current state of the stream being depayloaded:
       </field>
       <field name="process">
         <callback name="process">
+          <source-position filename="gst-libs/gst/rtp/gstrtpbasedepayload.h"
+                           line="97"/>
           <return-value transfer-ownership="full">
             <type name="Gst.Buffer" c:type="GstBuffer*"/>
           </return-value>
@@ -2729,6 +3982,8 @@ the last processed buffer and current state of the stream being depayloaded:
       </field>
       <field name="packet_lost">
         <callback name="packet_lost">
+          <source-position filename="gst-libs/gst/rtp/gstrtpbasedepayload.h"
+                           line="102"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -2744,6 +3999,8 @@ the last processed buffer and current state of the stream being depayloaded:
       </field>
       <field name="handle_event">
         <callback name="handle_event">
+          <source-position filename="gst-libs/gst/rtp/gstrtpbasedepayload.h"
+                           line="106"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -2759,6 +4016,8 @@ the last processed buffer and current state of the stream being depayloaded:
       </field>
       <field name="process_rtp_packet">
         <callback name="process_rtp_packet">
+          <source-position filename="gst-libs/gst/rtp/gstrtpbasedepayload.h"
+                           line="108"/>
           <return-value transfer-ownership="full">
             <type name="Gst.Buffer" c:type="GstBuffer*"/>
           </return-value>
@@ -2773,7 +4032,7 @@ the last processed buffer and current state of the stream being depayloaded:
         </callback>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="3">
+        <array zero-terminated="0" fixed-size="3">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -2781,6 +4040,8 @@ the last processed buffer and current state of the stream being depayloaded:
     <record name="RTPBaseDepayloadPrivate"
             c:type="GstRTPBaseDepayloadPrivate"
             disguised="1">
+      <source-position filename="gst-libs/gst/rtp/gstrtpbasedepayload.h"
+                       line="46"/>
     </record>
     <class name="RTPBasePayload"
            c:symbol-prefix="rtp_base_payload"
@@ -2790,8 +4051,14 @@ the last processed buffer and current state of the stream being depayloaded:
            glib:type-name="GstRTPBasePayload"
            glib:get-type="gst_rtp_base_payload_get_type"
            glib:type-struct="RTPBasePayloadClass">
-      <doc xml:space="preserve">Provides a base class for RTP payloaders</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtp/gstrtpbasepayload.c"
+           line="15">Provides a base class for RTP payloaders</doc>
+      <source-position filename="gst-libs/gst/rtp/gstrtpbasepayload.h"
+                       line="147"/>
       <virtual-method name="get_caps">
+        <source-position filename="gst-libs/gst/rtp/gstrtpbasepayload.h"
+                         line="132"/>
         <return-value transfer-ownership="full">
           <type name="Gst.Caps" c:type="GstCaps*"/>
         </return-value>
@@ -2808,6 +4075,8 @@ the last processed buffer and current state of the stream being depayloaded:
         </parameters>
       </virtual-method>
       <virtual-method name="handle_buffer">
+        <source-position filename="gst-libs/gst/rtp/gstrtpbasepayload.h"
+                         line="138"/>
         <return-value transfer-ownership="none">
           <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
@@ -2821,6 +4090,8 @@ the last processed buffer and current state of the stream being depayloaded:
         </parameters>
       </virtual-method>
       <virtual-method name="query">
+        <source-position filename="gst-libs/gst/rtp/gstrtpbasepayload.h"
+                         line="143"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -2837,6 +4108,8 @@ the last processed buffer and current state of the stream being depayloaded:
         </parameters>
       </virtual-method>
       <virtual-method name="set_caps">
+        <source-position filename="gst-libs/gst/rtp/gstrtpbasepayload.h"
+                         line="134"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -2850,6 +4123,8 @@ the last processed buffer and current state of the stream being depayloaded:
         </parameters>
       </virtual-method>
       <virtual-method name="sink_event">
+        <source-position filename="gst-libs/gst/rtp/gstrtpbasepayload.h"
+                         line="141"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -2863,6 +4138,8 @@ the last processed buffer and current state of the stream being depayloaded:
         </parameters>
       </virtual-method>
       <virtual-method name="src_event">
+        <source-position filename="gst-libs/gst/rtp/gstrtpbasepayload.h"
+                         line="142"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -2878,30 +4155,44 @@ the last processed buffer and current state of the stream being depayloaded:
       <method name="allocate_output_buffer"
               c:identifier="gst_rtp_base_payload_allocate_output_buffer"
               version="1.16">
-        <doc xml:space="preserve">Allocate a new #GstBuffer with enough data to hold an RTP packet with
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbasepayload.c"
+             line="1506">Allocate a new #GstBuffer with enough data to hold an RTP packet with
 minimum @csrc_count CSRCs, a payload length of @payload_len and padding of
 @pad_len. If @payload has #GstRTPBasePayload:source-info %TRUE additional
 CSRCs may be allocated and filled with RTP source information.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtpbasepayload.h"
+                         line="176"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">A newly allocated buffer that can hold an RTP packet with given
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbasepayload.c"
+               line="1518">A newly allocated buffer that can hold an RTP packet with given
 parameters.</doc>
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </return-value>
         <parameters>
           <instance-parameter name="payload" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTPBasePayload</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbasepayload.c"
+                 line="1508">a #GstRTPBasePayload</doc>
             <type name="RTPBasePayload" c:type="GstRTPBasePayload*"/>
           </instance-parameter>
           <parameter name="payload_len" transfer-ownership="none">
-            <doc xml:space="preserve">the length of the payload</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbasepayload.c"
+                 line="1509">the length of the payload</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="pad_len" transfer-ownership="none">
-            <doc xml:space="preserve">the amount of padding</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbasepayload.c"
+                 line="1510">the amount of padding</doc>
             <type name="guint8" c:type="guint8"/>
           </parameter>
           <parameter name="csrc_count" transfer-ownership="none">
-            <doc xml:space="preserve">the minimum number of CSRC entries</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbasepayload.c"
+                 line="1511">the minimum number of CSRC entries</doc>
             <type name="guint8" c:type="guint8"/>
           </parameter>
         </parameters>
@@ -2909,43 +4200,65 @@ parameters.</doc>
       <method name="get_source_count"
               c:identifier="gst_rtp_base_payload_get_source_count"
               version="1.16">
-        <doc xml:space="preserve">Count the total number of RTP sources found in the meta of @buffer, which
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbasepayload.c"
+             line="1824">Count the total number of RTP sources found in the meta of @buffer, which
 will be automically added by gst_rtp_base_payload_allocate_output_buffer().
 If #GstRTPBasePayload:source-info is %FALSE the count will be 0.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtpbasepayload.h"
+                         line="188"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The number of sources.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbasepayload.c"
+               line="1833">The number of sources.</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="payload" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTPBasePayload</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbasepayload.c"
+                 line="1826">a #GstRTPBasePayload</doc>
             <type name="RTPBasePayload" c:type="GstRTPBasePayload*"/>
           </instance-parameter>
           <parameter name="buffer" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBuffer, typically the buffer to payload</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbasepayload.c"
+                 line="1827">a #GstBuffer, typically the buffer to payload</doc>
             <type name="Gst.Buffer" c:type="GstBuffer*"/>
           </parameter>
         </parameters>
       </method>
       <method name="is_filled" c:identifier="gst_rtp_base_payload_is_filled">
-        <doc xml:space="preserve">Check if the packet with @size and @duration would exceed the configured
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbasepayload.c"
+             line="1187">Check if the packet with @size and @duration would exceed the configured
 maximum size.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtpbasepayload.h"
+                         line="164"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the packet of @size and @duration would exceed the
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbasepayload.c"
+               line="1196">%TRUE if the packet of @size and @duration would exceed the
 configured MTU or max_ptime.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="payload" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTPBasePayload</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbasepayload.c"
+                 line="1189">a #GstRTPBasePayload</doc>
             <type name="RTPBasePayload" c:type="GstRTPBasePayload*"/>
           </instance-parameter>
           <parameter name="size" transfer-ownership="none">
-            <doc xml:space="preserve">the size of the packet</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbasepayload.c"
+                 line="1190">the size of the packet</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="duration" transfer-ownership="none">
-            <doc xml:space="preserve">the duration of the packet</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbasepayload.c"
+                 line="1191">the duration of the packet</doc>
             <type name="Gst.ClockTime" c:type="GstClockTime"/>
           </parameter>
         </parameters>
@@ -2953,86 +4266,128 @@ configured MTU or max_ptime.</doc>
       <method name="is_source_info_enabled"
               c:identifier="gst_rtp_base_payload_is_source_info_enabled"
               version="1.16">
-        <doc xml:space="preserve">Queries whether the payloader will add contributing sources (CSRCs) to the
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbasepayload.c"
+             line="1806">Queries whether the payloader will add contributing sources (CSRCs) to the
 RTP header from #GstRTPSourceMeta.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtpbasepayload.h"
+                         line="185"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if source-info is enabled.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbasepayload.c"
+               line="1813">%TRUE if source-info is enabled.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="payload" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTPBasePayload</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbasepayload.c"
+                 line="1808">a #GstRTPBasePayload</doc>
             <type name="RTPBasePayload" c:type="GstRTPBasePayload*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="push" c:identifier="gst_rtp_base_payload_push">
-        <doc xml:space="preserve">Push @buffer to the peer element of the payloader. The SSRC, payload type,
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbasepayload.c"
+             line="1473">Push @buffer to the peer element of the payloader. The SSRC, payload type,
 seqnum and timestamp of the RTP buffer will be updated first.
 
 This function takes ownership of @buffer.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtpbasepayload.h"
+                         line="168"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstFlowReturn.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbasepayload.c"
+               line="1483">a #GstFlowReturn.</doc>
           <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
         <parameters>
           <instance-parameter name="payload" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTPBasePayload</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbasepayload.c"
+                 line="1475">a #GstRTPBasePayload</doc>
             <type name="RTPBasePayload" c:type="GstRTPBasePayload*"/>
           </instance-parameter>
           <parameter name="buffer" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBuffer</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbasepayload.c"
+                 line="1476">a #GstBuffer</doc>
             <type name="Gst.Buffer" c:type="GstBuffer*"/>
           </parameter>
         </parameters>
       </method>
       <method name="push_list" c:identifier="gst_rtp_base_payload_push_list">
-        <doc xml:space="preserve">Push @list to the peer element of the payloader. The SSRC, payload type,
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbasepayload.c"
+             line="1439">Push @list to the peer element of the payloader. The SSRC, payload type,
 seqnum and timestamp of the RTP buffer will be updated first.
 
 This function takes ownership of @list.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtpbasepayload.h"
+                         line="172"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstFlowReturn.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbasepayload.c"
+               line="1449">a #GstFlowReturn.</doc>
           <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
         <parameters>
           <instance-parameter name="payload" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTPBasePayload</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbasepayload.c"
+                 line="1441">a #GstRTPBasePayload</doc>
             <type name="RTPBasePayload" c:type="GstRTPBasePayload*"/>
           </instance-parameter>
           <parameter name="list" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBufferList</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbasepayload.c"
+                 line="1442">a #GstBufferList</doc>
             <type name="Gst.BufferList" c:type="GstBufferList*"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_options"
               c:identifier="gst_rtp_base_payload_set_options">
-        <doc xml:space="preserve">Set the rtp options of the payloader. These options will be set in the caps
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbasepayload.c"
+             line="779">Set the rtp options of the payloader. These options will be set in the caps
 of the payloader. Subclasses must call this method before calling
 gst_rtp_base_payload_push() or gst_rtp_base_payload_set_outcaps().</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtpbasepayload.h"
+                         line="153"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="payload" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTPBasePayload</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbasepayload.c"
+                 line="781">a #GstRTPBasePayload</doc>
             <type name="RTPBasePayload" c:type="GstRTPBasePayload*"/>
           </instance-parameter>
           <parameter name="media" transfer-ownership="none">
-            <doc xml:space="preserve">the media type (typically "audio" or "video")</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbasepayload.c"
+                 line="782">the media type (typically "audio" or "video")</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="dynamic" transfer-ownership="none">
-            <doc xml:space="preserve">if the payload type is dynamic</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbasepayload.c"
+                 line="783">if the payload type is dynamic</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
           <parameter name="encoding_name" transfer-ownership="none">
-            <doc xml:space="preserve">the encoding name</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbasepayload.c"
+                 line="784">the encoding name</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="clock_rate" transfer-ownership="none">
-            <doc xml:space="preserve">the clock rate of the media</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbasepayload.c"
+                 line="785">the clock rate of the media</doc>
             <type name="guint32" c:type="guint32"/>
           </parameter>
         </parameters>
@@ -3040,25 +4395,37 @@ gst_rtp_base_payload_push() or gst_rtp_base_payload_set_outcaps().</doc>
       <method name="set_outcaps"
               c:identifier="gst_rtp_base_payload_set_outcaps"
               introspectable="0">
-        <doc xml:space="preserve">Configure the output caps with the optional parameters.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbasepayload.c"
+             line="831">Configure the output caps with the optional parameters.
 
 Variable arguments should be in the form field name, field type
 (as a GType), value(s).  The last variable argument should be NULL.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtpbasepayload.h"
+                         line="160"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the caps could be set.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbasepayload.c"
+               line="842">%TRUE if the caps could be set.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="payload" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTPBasePayload</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbasepayload.c"
+                 line="833">a #GstRTPBasePayload</doc>
             <type name="RTPBasePayload" c:type="GstRTPBasePayload*"/>
           </instance-parameter>
           <parameter name="fieldname" transfer-ownership="none">
-            <doc xml:space="preserve">the first field name or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbasepayload.c"
+                 line="834">the first field name or %NULL</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="..." transfer-ownership="none">
-            <doc xml:space="preserve">field values</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbasepayload.c"
+                 line="835">field values</doc>
             <varargs/>
           </parameter>
         </parameters>
@@ -3066,18 +4433,26 @@ Variable arguments should be in the form field name, field type
       <method name="set_source_info_enabled"
               c:identifier="gst_rtp_base_payload_set_source_info_enabled"
               version="1.16">
-        <doc xml:space="preserve">Enable or disable adding contributing sources to RTP packets from
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbasepayload.c"
+             line="1789">Enable or disable adding contributing sources to RTP packets from
 #GstRTPSourceMeta.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtpbasepayload.h"
+                         line="181"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="payload" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTPBasePayload</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbasepayload.c"
+                 line="1791">a #GstRTPBasePayload</doc>
             <type name="RTPBasePayload" c:type="GstRTPBasePayload*"/>
           </instance-parameter>
           <parameter name="enable" transfer-ownership="none">
-            <doc xml:space="preserve">whether to add contributing sources to RTP packets</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbasepayload.c"
+                 line="1792">whether to add contributing sources to RTP packets</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
@@ -3086,7 +4461,9 @@ Variable arguments should be in the form field name, field type
         <type name="gint64" c:type="gint64"/>
       </property>
       <property name="min-ptime" writable="1" transfer-ownership="none">
-        <doc xml:space="preserve">Minimum duration of the packet data in ns (can't go above MTU)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbasepayload.c"
+             line="242">Minimum duration of the packet data in ns (can't go above MTU)</doc>
         <type name="gint64" c:type="gint64"/>
       </property>
       <property name="mtu" writable="1" transfer-ownership="none">
@@ -3096,12 +4473,16 @@ Variable arguments should be in the form field name, field type
                 version="1.16"
                 writable="1"
                 transfer-ownership="none">
-        <doc xml:space="preserve">Make the payloader timestamp packets according to the Rate-Control=no
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbasepayload.c"
+             line="331">Make the payloader timestamp packets according to the Rate-Control=no
 behaviour specified in the ONVIF replay spec.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </property>
       <property name="perfect-rtptime" writable="1" transfer-ownership="none">
-        <doc xml:space="preserve">Try to use the offset fields to generate perfect RTP timestamps. When this
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbasepayload.c"
+             line="262">Try to use the offset fields to generate perfect RTP timestamps. When this
 option is disabled, RTP timestamps are generated from GST_BUFFER_PTS of
 each payloaded buffer. The PTSes of buffers may not necessarily increment
 with the amount of data in each input buffer, consider e.g. the case where
@@ -3122,9 +4503,27 @@ timestamps for audio streams.</doc>
         <type name="guint" c:type="guint"/>
       </property>
       <property name="ptime-multiple" writable="1" transfer-ownership="none">
-        <doc xml:space="preserve">Force buffers to be multiples of this duration in ns (0 disables)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbasepayload.c"
+             line="285">Force buffers to be multiples of this duration in ns (0 disables)</doc>
         <type name="gint64" c:type="gint64"/>
       </property>
+      <property name="scale-rtptime"
+                version="1.18"
+                writable="1"
+                transfer-ownership="none">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbasepayload.c"
+             line="367">Make the RTP packets' timestamps be scaled with the segment's rate
+(corresponding to RTSP speed parameter). Disabling this property means
+the timestamps will not be affected by the set delivery speed (RTSP speed).
+
+Example: A server wants to allow streaming a recorded video in double
+speed but still have the timestamps correspond to the position in the
+video. This is achieved by the client setting RTSP Speed to 2 while the
+server has this property disabled.</doc>
+        <type name="gboolean" c:type="gboolean"/>
+      </property>
       <property name="seqnum" transfer-ownership="none">
         <type name="guint" c:type="guint"/>
       </property>
@@ -3135,7 +4534,9 @@ timestamps for audio streams.</doc>
                 version="1.16"
                 writable="1"
                 transfer-ownership="none">
-        <doc xml:space="preserve">Enable writing the CSRC field in allocated RTP header based on RTP source
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbasepayload.c"
+             line="318">Enable writing the CSRC field in allocated RTP header based on RTP source
 information found in the input buffer's #GstRTPSourceMeta.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </property>
@@ -3143,7 +4544,9 @@ information found in the input buffer's #GstRTPSourceMeta.</doc>
         <type name="guint" c:type="guint"/>
       </property>
       <property name="stats" transfer-ownership="none">
-        <doc xml:space="preserve">Various payloader statistics retrieved atomically (and are therefore
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbasepayload.c"
+             line="296">Various payloader statistics retrieved atomically (and are therefore
 synchroized with each other), these can be used e.g. to generate an
 RTP-Info header. This property return a GstStructure named
 application/x-rtp-payload-stats containing the following fields relating to
@@ -3165,6 +4568,21 @@ the last processed buffer and current state of the stream being payloaded:
       <property name="timestamp-offset" writable="1" transfer-ownership="none">
         <type name="guint" c:type="guint"/>
       </property>
+      <property name="twcc-ext-id"
+                version="1.18"
+                writable="1"
+                transfer-ownership="none">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbasepayload.c"
+             line="346">The RTP header-extension ID used for tagging buffers with Transport-Wide
+Congestion Control sequence-numbers.
+
+To use this across multiple bundled streams (transport wide), the
+GstRTPFunnel can mux TWCC sequence-numbers together.
+
+This is experimental, as it is still a draft and not yet a standard.</doc>
+        <type name="guint" c:type="guint"/>
+      </property>
       <field name="element">
         <type name="Gst.Element" c:type="GstElement"/>
       </field>
@@ -3235,7 +4653,7 @@ the last processed buffer and current state of the stream being payloaded:
         <type name="RTPBasePayloadPrivate" c:type="GstRTPBasePayloadPrivate*"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -3243,13 +4661,21 @@ the last processed buffer and current state of the stream being payloaded:
     <record name="RTPBasePayloadClass"
             c:type="GstRTPBasePayloadClass"
             glib:is-gtype-struct-for="RTPBasePayload">
-      <doc xml:space="preserve">Base class for audio RTP payloader.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtp/gstrtpbasepayload.h"
+           line="115">Base class for audio RTP payloader.</doc>
+      <source-position filename="gst-libs/gst/rtp/gstrtpbasepayload.h"
+                       line="147"/>
       <field name="parent_class">
-        <doc xml:space="preserve">the parent class</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbasepayload.h"
+             line="117">the parent class</doc>
         <type name="Gst.ElementClass" c:type="GstElementClass"/>
       </field>
       <field name="get_caps">
         <callback name="get_caps">
+          <source-position filename="gst-libs/gst/rtp/gstrtpbasepayload.h"
+                           line="132"/>
           <return-value transfer-ownership="full">
             <type name="Gst.Caps" c:type="GstCaps*"/>
           </return-value>
@@ -3268,6 +4694,8 @@ the last processed buffer and current state of the stream being payloaded:
       </field>
       <field name="set_caps">
         <callback name="set_caps">
+          <source-position filename="gst-libs/gst/rtp/gstrtpbasepayload.h"
+                           line="134"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -3283,6 +4711,8 @@ the last processed buffer and current state of the stream being payloaded:
       </field>
       <field name="handle_buffer">
         <callback name="handle_buffer">
+          <source-position filename="gst-libs/gst/rtp/gstrtpbasepayload.h"
+                           line="138"/>
           <return-value transfer-ownership="none">
             <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
           </return-value>
@@ -3298,6 +4728,8 @@ the last processed buffer and current state of the stream being payloaded:
       </field>
       <field name="sink_event">
         <callback name="sink_event">
+          <source-position filename="gst-libs/gst/rtp/gstrtpbasepayload.h"
+                           line="141"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -3313,6 +4745,8 @@ the last processed buffer and current state of the stream being payloaded:
       </field>
       <field name="src_event">
         <callback name="src_event">
+          <source-position filename="gst-libs/gst/rtp/gstrtpbasepayload.h"
+                           line="142"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -3328,6 +4762,8 @@ the last processed buffer and current state of the stream being payloaded:
       </field>
       <field name="query">
         <callback name="query">
+          <source-position filename="gst-libs/gst/rtp/gstrtpbasepayload.h"
+                           line="143"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -3345,7 +4781,7 @@ the last processed buffer and current state of the stream being payloaded:
         </callback>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -3353,149 +4789,220 @@ the last processed buffer and current state of the stream being payloaded:
     <record name="RTPBasePayloadPrivate"
             c:type="GstRTPBasePayloadPrivate"
             disguised="1">
+      <source-position filename="gst-libs/gst/rtp/gstrtpbasepayload.h"
+                       line="44"/>
     </record>
     <record name="RTPBuffer" c:type="GstRTPBuffer">
-      <doc xml:space="preserve">The GstRTPBuffer helper functions makes it easy to parse and create regular
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+           line="21">The GstRTPBuffer helper functions makes it easy to parse and create regular
 #GstBuffer objects that contain RTP payloads. These buffers are typically of
 'application/x-rtp' #GstCaps.</doc>
+      <source-position filename="gst-libs/gst/rtp/gstrtpbuffer.h" line="60"/>
       <field name="buffer" writable="1">
-        <doc xml:space="preserve">pointer to RTP buffer</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbuffer.h"
+             line="44">pointer to RTP buffer</doc>
         <type name="Gst.Buffer" c:type="GstBuffer*"/>
       </field>
       <field name="state" writable="1">
-        <doc xml:space="preserve">internal state</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbuffer.h"
+             line="45">internal state</doc>
         <type name="guint" c:type="guint"/>
       </field>
       <field name="data" writable="1">
-        <doc xml:space="preserve">array of data</doc>
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbuffer.h"
+             line="46">array of data</doc>
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
       <field name="size" writable="1">
-        <doc xml:space="preserve">array of size</doc>
-        <array zero-terminated="0" c:type="gsize" fixed-size="4">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbuffer.h"
+             line="47">array of size</doc>
+        <array zero-terminated="0" fixed-size="4">
           <type name="gsize" c:type="gsize"/>
         </array>
       </field>
       <field name="map" writable="1">
-        <doc xml:space="preserve">array of #GstMapInfo</doc>
-        <array zero-terminated="0" c:type="GstMapInfo" fixed-size="4">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbuffer.h"
+             line="48">array of #GstMapInfo</doc>
+        <array zero-terminated="0" fixed-size="4">
           <type name="Gst.MapInfo" c:type="GstMapInfo"/>
         </array>
       </field>
       <method name="add_extension_onebyte_header"
               c:identifier="gst_rtp_buffer_add_extension_onebyte_header">
-        <doc xml:space="preserve">Adds a RFC 5285 header extension with a one byte header to the end of the
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+             line="1555">Adds a RFC 5285 header extension with a one byte header to the end of the
 RTP header. If there is already a RFC 5285 header extension with a one byte
 header, the new extension will be appended.
 It will not work if there is already a header extension that does not follow
-the mecanism described in RFC 5285 or if there is a header extension with
+the mechanism described in RFC 5285 or if there is a header extension with
 a two bytes header as described in RFC 5285. In that case, use
 gst_rtp_buffer_add_extension_twobytes_header()</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtpbuffer.h"
+                         line="219"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if header extension could be added</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+               line="1570">%TRUE if header extension could be added</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="rtp" transfer-ownership="none">
-            <doc xml:space="preserve">the RTP packet</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="1557">the RTP packet</doc>
             <type name="RTPBuffer" c:type="GstRTPBuffer*"/>
           </instance-parameter>
           <parameter name="id" transfer-ownership="none">
-            <doc xml:space="preserve">The ID of the header extension (between 1 and 14).</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="1558">The ID of the header extension (between 1 and 14).</doc>
             <type name="guint8" c:type="guint8"/>
           </parameter>
           <parameter name="data" transfer-ownership="none">
-            <doc xml:space="preserve">location for data</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="1559">location for data</doc>
             <array length="2" zero-terminated="0" c:type="gconstpointer">
               <type name="guint8"/>
             </array>
           </parameter>
           <parameter name="size" transfer-ownership="none">
-            <doc xml:space="preserve">the size of the data in bytes</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="1560">the size of the data in bytes</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="add_extension_twobytes_header"
               c:identifier="gst_rtp_buffer_add_extension_twobytes_header">
-        <doc xml:space="preserve">Adds a RFC 5285 header extension with a two bytes header to the end of the
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+             line="1654">Adds a RFC 5285 header extension with a two bytes header to the end of the
 RTP header. If there is already a RFC 5285 header extension with a two bytes
 header, the new extension will be appended.
 It will not work if there is already a header extension that does not follow
-the mecanism described in RFC 5285 or if there is a header extension with
+the mechanism described in RFC 5285 or if there is a header extension with
 a one byte header as described in RFC 5285. In that case, use
 gst_rtp_buffer_add_extension_onebyte_header()</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtpbuffer.h"
+                         line="225"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if header extension could be added</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+               line="1670">%TRUE if header extension could be added</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="rtp" transfer-ownership="none">
-            <doc xml:space="preserve">the RTP packet</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="1656">the RTP packet</doc>
             <type name="RTPBuffer" c:type="GstRTPBuffer*"/>
           </instance-parameter>
           <parameter name="appbits" transfer-ownership="none">
-            <doc xml:space="preserve">Application specific bits</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="1657">Application specific bits</doc>
             <type name="guint8" c:type="guint8"/>
           </parameter>
           <parameter name="id" transfer-ownership="none">
-            <doc xml:space="preserve">The ID of the header extension</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="1658">The ID of the header extension</doc>
             <type name="guint8" c:type="guint8"/>
           </parameter>
           <parameter name="data" transfer-ownership="none">
-            <doc xml:space="preserve">location for data</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="1659">location for data</doc>
             <array length="3" zero-terminated="0" c:type="gconstpointer">
               <type name="guint8"/>
             </array>
           </parameter>
           <parameter name="size" transfer-ownership="none">
-            <doc xml:space="preserve">the size of the data in bytes</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="1660">the size of the data in bytes</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_csrc" c:identifier="gst_rtp_buffer_get_csrc">
-        <doc xml:space="preserve">Get the CSRC at index @idx in @buffer.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the CSRC at index @idx in host order.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+             line="931">Get the CSRC at index @idx in @buffer.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtpbuffer.h"
+                         line="148"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+               line="938">the CSRC at index @idx in host order.</doc>
           <type name="guint32" c:type="guint32"/>
         </return-value>
         <parameters>
           <instance-parameter name="rtp" transfer-ownership="none">
-            <doc xml:space="preserve">the RTP packet</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="933">the RTP packet</doc>
             <type name="RTPBuffer" c:type="GstRTPBuffer*"/>
           </instance-parameter>
           <parameter name="idx" transfer-ownership="none">
-            <doc xml:space="preserve">the index of the CSRC to get</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="934">the index of the CSRC to get</doc>
             <type name="guint8" c:type="guint8"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_csrc_count"
               c:identifier="gst_rtp_buffer_get_csrc_count">
-        <doc xml:space="preserve">Get the CSRC count of the RTP packet in @buffer.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the CSRC count of @buffer.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+             line="917">Get the CSRC count of the RTP packet in @buffer.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtpbuffer.h"
+                         line="145"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+               line="923">the CSRC count of @buffer.</doc>
           <type name="guint8" c:type="guint8"/>
         </return-value>
         <parameters>
           <instance-parameter name="rtp" transfer-ownership="none">
-            <doc xml:space="preserve">the RTP packet</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="919">the RTP packet</doc>
             <type name="RTPBuffer" c:type="GstRTPBuffer*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_extension" c:identifier="gst_rtp_buffer_get_extension">
-        <doc xml:space="preserve">Check if the extension bit is set on the RTP packet in @buffer.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">TRUE if @buffer has the extension bit set.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+             line="657">Check if the extension bit is set on the RTP packet in @buffer.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtpbuffer.h"
+                         line="123"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+               line="663">TRUE if @buffer has the extension bit set.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="rtp" transfer-ownership="none">
-            <doc xml:space="preserve">the RTP packet</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="659">the RTP packet</doc>
             <type name="RTPBuffer" c:type="GstRTPBuffer*"/>
           </instance-parameter>
         </parameters>
@@ -3504,7 +5011,9 @@ gst_rtp_buffer_add_extension_onebyte_header()</doc>
               c:identifier="gst_rtp_buffer_get_extension_bytes"
               shadows="get_extension_data"
               version="1.2">
-        <doc xml:space="preserve">Similar to gst_rtp_buffer_get_extension_data, but more suitable for language
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+             line="722">Similar to gst_rtp_buffer_get_extension_data, but more suitable for language
 bindings usage. @bits will contain the extension 16 bits of custom data and
 the extension data (not including the extension header) is placed in a new
 #GBytes structure.
@@ -3512,21 +5021,29 @@ the extension data (not including the extension header) is placed in a new
 If @rtp did not contain an extension, this function will return %NULL, with
 @bits unchanged. If there is an extension header but no extension data then
 an empty #GBytes will be returned.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtpbuffer.h"
+                         line="133"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">A new #GBytes if an extension header was present
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+               line="736">A new #GBytes if an extension header was present
 and %NULL otherwise.</doc>
           <type name="GLib.Bytes" c:type="GBytes*"/>
         </return-value>
         <parameters>
           <instance-parameter name="rtp" transfer-ownership="none">
-            <doc xml:space="preserve">the RTP packet</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="724">the RTP packet</doc>
             <type name="RTPBuffer" c:type="GstRTPBuffer*"/>
           </instance-parameter>
           <parameter name="bits"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">location for header bits</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="725">location for header bits</doc>
             <type name="guint16" c:type="guint16*"/>
           </parameter>
         </parameters>
@@ -3535,33 +5052,45 @@ and %NULL otherwise.</doc>
               c:identifier="gst_rtp_buffer_get_extension_data"
               shadowed-by="get_extension_bytes"
               introspectable="0">
-        <doc xml:space="preserve">Get the extension data. @bits will contain the extension 16 bits of custom
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+             line="684">Get the extension data. @bits will contain the extension 16 bits of custom
 data. @data will point to the data in the extension and @wordlen will contain
 the length of @data in 32 bits words.
 
 If @buffer did not contain an extension, this function will return %FALSE
 with @bits, @data and @wordlen unchanged.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtpbuffer.h"
+                         line="129"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">TRUE if @buffer had the extension bit set.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+               line="698">TRUE if @buffer had the extension bit set.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="rtp" transfer-ownership="none">
-            <doc xml:space="preserve">the RTP packet</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="686">the RTP packet</doc>
             <type name="RTPBuffer" c:type="GstRTPBuffer*"/>
           </instance-parameter>
           <parameter name="bits"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">location for result bits</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="687">location for result bits</doc>
             <type name="guint16" c:type="guint16*"/>
           </parameter>
           <parameter name="data"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="none">
-            <doc xml:space="preserve">location for data</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="688">location for data</doc>
             <array zero-terminated="0" c:type="gpointer*">
               <type name="guint8"/>
             </array>
@@ -3570,37 +5099,53 @@ with @bits, @data and @wordlen unchanged.</doc>
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">location for length of @data in 32 bits words</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="689">location for length of @data in 32 bits words</doc>
             <type name="guint" c:type="guint*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_extension_onebyte_header"
               c:identifier="gst_rtp_buffer_get_extension_onebyte_header">
-        <doc xml:space="preserve">Parses RFC 5285 style header extensions with a one byte header. It will
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+             line="1405">Parses RFC 5285 style header extensions with a one byte header. It will
 return the nth extension with the requested id.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtpbuffer.h"
+                         line="204"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">TRUE if @buffer had the requested header extension</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+               line="1417">TRUE if @buffer had the requested header extension</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="rtp" transfer-ownership="none">
-            <doc xml:space="preserve">the RTP packet</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="1407">the RTP packet</doc>
             <type name="RTPBuffer" c:type="GstRTPBuffer*"/>
           </instance-parameter>
           <parameter name="id" transfer-ownership="none">
-            <doc xml:space="preserve">The ID of the header extension to be read (between 1 and 14).</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="1408">The ID of the header extension to be read (between 1 and 14).</doc>
             <type name="guint8" c:type="guint8"/>
           </parameter>
           <parameter name="nth" transfer-ownership="none">
-            <doc xml:space="preserve">Read the nth extension packet with the requested ID</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="1409">Read the nth extension packet with the requested ID</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="data"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="none">
-            <doc xml:space="preserve">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="1410">
   location for data</doc>
             <array length="3" zero-terminated="0" c:type="gpointer*">
               <type name="guint8"/>
@@ -3610,44 +5155,62 @@ return the nth extension with the requested id.</doc>
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">the size of the data in bytes</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="1412">the size of the data in bytes</doc>
             <type name="guint" c:type="guint*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_extension_twobytes_header"
               c:identifier="gst_rtp_buffer_get_extension_twobytes_header">
-        <doc xml:space="preserve">Parses RFC 5285 style header extensions with a two bytes header. It will
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+             line="1437">Parses RFC 5285 style header extensions with a two bytes header. It will
 return the nth extension with the requested id.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtpbuffer.h"
+                         line="211"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">TRUE if @buffer had the requested header extension</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+               line="1450">TRUE if @buffer had the requested header extension</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="rtp" transfer-ownership="none">
-            <doc xml:space="preserve">the RTP packet</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="1439">the RTP packet</doc>
             <type name="RTPBuffer" c:type="GstRTPBuffer*"/>
           </instance-parameter>
           <parameter name="appbits"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">Application specific bits</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="1440">Application specific bits</doc>
             <type name="guint8" c:type="guint8*"/>
           </parameter>
           <parameter name="id" transfer-ownership="none">
-            <doc xml:space="preserve">The ID of the header extension to be read (between 1 and 14).</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="1441">The ID of the header extension to be read (between 1 and 14).</doc>
             <type name="guint8" c:type="guint8"/>
           </parameter>
           <parameter name="nth" transfer-ownership="none">
-            <doc xml:space="preserve">Read the nth extension packet with the requested ID</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="1442">Read the nth extension packet with the requested ID</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="data"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="none">
-            <doc xml:space="preserve">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="1443">
   location for data</doc>
             <array length="4" zero-terminated="0" c:type="gpointer*">
               <type name="guint8"/>
@@ -3657,62 +5220,96 @@ return the nth extension with the requested id.</doc>
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">the size of the data in bytes</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="1445">the size of the data in bytes</doc>
             <type name="guint" c:type="guint*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_header_len"
               c:identifier="gst_rtp_buffer_get_header_len">
-        <doc xml:space="preserve">Return the total length of the header in @buffer. This include the length of
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+             line="561">Return the total length of the header in @buffer. This include the length of
 the fixed header, the CSRC list and the extension header.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtpbuffer.h"
+                         line="105"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The total length of the header in @buffer.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+               line="568">The total length of the header in @buffer.</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="rtp" transfer-ownership="none">
-            <doc xml:space="preserve">the RTP packet</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="563">the RTP packet</doc>
             <type name="RTPBuffer" c:type="GstRTPBuffer*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_marker" c:identifier="gst_rtp_buffer_get_marker">
-        <doc xml:space="preserve">Check if the marker bit is set on the RTP packet in @buffer.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">TRUE if @buffer has the marker bit set.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+             line="972">Check if the marker bit is set on the RTP packet in @buffer.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtpbuffer.h"
+                         line="154"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+               line="978">TRUE if @buffer has the marker bit set.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="rtp" transfer-ownership="none">
-            <doc xml:space="preserve">the RTP packet</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="974">the RTP packet</doc>
             <type name="RTPBuffer" c:type="GstRTPBuffer*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_packet_len"
               c:identifier="gst_rtp_buffer_get_packet_len">
-        <doc xml:space="preserve">Return the total length of the packet in @buffer.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The total length of the packet in @buffer.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+             line="547">Return the total length of the packet in @buffer.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtpbuffer.h"
+                         line="102"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+               line="553">The total length of the packet in @buffer.</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="rtp" transfer-ownership="none">
-            <doc xml:space="preserve">the RTP packet</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="549">the RTP packet</doc>
             <type name="RTPBuffer" c:type="GstRTPBuffer*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_padding" c:identifier="gst_rtp_buffer_get_padding">
-        <doc xml:space="preserve">Check if the padding bit is set on the RTP packet in @buffer.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">TRUE if @buffer has the padding bit set.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+             line="605">Check if the padding bit is set on the RTP packet in @buffer.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtpbuffer.h"
+                         line="114"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+               line="611">TRUE if @buffer has the padding bit set.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="rtp" transfer-ownership="none">
-            <doc xml:space="preserve">the RTP packet</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="607">the RTP packet</doc>
             <type name="RTPBuffer" c:type="GstRTPBuffer*"/>
           </instance-parameter>
         </parameters>
@@ -3721,10 +5318,16 @@ the fixed header, the CSRC list and the extension header.</doc>
               c:identifier="gst_rtp_buffer_get_payload"
               shadowed-by="get_payload_bytes"
               introspectable="0">
-        <doc xml:space="preserve">Get a pointer to the payload data in @buffer. This pointer is valid as long
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+             line="1156">Get a pointer to the payload data in @buffer. This pointer is valid as long
 as a reference to @buffer is held.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtpbuffer.h"
+                         line="187"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">A pointer
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+               line="1163">A pointer
 to the payload data in @buffer.</doc>
           <array zero-terminated="0" c:type="gpointer">
             <type name="guint8"/>
@@ -3732,23 +5335,33 @@ to the payload data in @buffer.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="rtp" transfer-ownership="none">
-            <doc xml:space="preserve">the RTP packet</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="1158">the RTP packet</doc>
             <type name="RTPBuffer" c:type="GstRTPBuffer*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_payload_buffer"
               c:identifier="gst_rtp_buffer_get_payload_buffer">
-        <doc xml:space="preserve">Create a buffer of the payload of the RTP packet in @buffer. This function
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+             line="1125">Create a buffer of the payload of the RTP packet in @buffer. This function
 will internally create a subbuffer of @buffer so that a memcpy can be
 avoided.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtpbuffer.h"
+                         line="178"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">A new buffer with the data of the payload.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+               line="1133">A new buffer with the data of the payload.</doc>
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </return-value>
         <parameters>
           <instance-parameter name="rtp" transfer-ownership="none">
-            <doc xml:space="preserve">the RTP packet</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="1127">the RTP packet</doc>
             <type name="RTPBuffer" c:type="GstRTPBuffer*"/>
           </instance-parameter>
         </parameters>
@@ -3757,475 +5370,709 @@ avoided.</doc>
               c:identifier="gst_rtp_buffer_get_payload_bytes"
               shadows="get_payload"
               version="1.2">
-        <doc xml:space="preserve">Similar to gst_rtp_buffer_get_payload, but more suitable for language
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+             line="1178">Similar to gst_rtp_buffer_get_payload, but more suitable for language
 bindings usage. The return value is a pointer to a #GBytes structure
 containing the payload data in @rtp.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtpbuffer.h"
+                         line="190"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">A new #GBytes containing the payload data in @rtp.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+               line="1186">A new #GBytes containing the payload data in @rtp.</doc>
           <type name="GLib.Bytes" c:type="GBytes*"/>
         </return-value>
         <parameters>
           <instance-parameter name="rtp" transfer-ownership="none">
-            <doc xml:space="preserve">the RTP packet</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="1180">the RTP packet</doc>
             <type name="RTPBuffer" c:type="GstRTPBuffer*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_payload_len"
               c:identifier="gst_rtp_buffer_get_payload_len">
-        <doc xml:space="preserve">Get the length of the payload of the RTP packet in @buffer.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The length of the payload in @buffer.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+             line="1141">Get the length of the payload of the RTP packet in @buffer.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtpbuffer.h"
+                         line="184"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+               line="1147">The length of the payload in @buffer.</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="rtp" transfer-ownership="none">
-            <doc xml:space="preserve">the RTP packet</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="1143">the RTP packet</doc>
             <type name="RTPBuffer" c:type="GstRTPBuffer*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_payload_subbuffer"
               c:identifier="gst_rtp_buffer_get_payload_subbuffer">
-        <doc xml:space="preserve">Create a subbuffer of the payload of the RTP packet in @buffer. @offset bytes
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+             line="1083">Create a subbuffer of the payload of the RTP packet in @buffer. @offset bytes
 are skipped in the payload and the subbuffer will be of size @len.
 If @len is -1 the total payload starting from @offset is subbuffered.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtpbuffer.h"
+                         line="181"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">A new buffer with the specified data of the payload.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+               line="1093">A new buffer with the specified data of the payload.</doc>
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </return-value>
         <parameters>
           <instance-parameter name="rtp" transfer-ownership="none">
-            <doc xml:space="preserve">the RTP packet</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="1085">the RTP packet</doc>
             <type name="RTPBuffer" c:type="GstRTPBuffer*"/>
           </instance-parameter>
           <parameter name="offset" transfer-ownership="none">
-            <doc xml:space="preserve">the offset in the payload</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="1086">the offset in the payload</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="len" transfer-ownership="none">
-            <doc xml:space="preserve">the length in the payload</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="1087">the length in the payload</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_payload_type"
               c:identifier="gst_rtp_buffer_get_payload_type">
-        <doc xml:space="preserve">Get the payload type of the RTP packet in @buffer.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The payload type.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+             line="999">Get the payload type of the RTP packet in @buffer.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtpbuffer.h"
+                         line="160"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+               line="1005">The payload type.</doc>
           <type name="guint8" c:type="guint8"/>
         </return-value>
         <parameters>
           <instance-parameter name="rtp" transfer-ownership="none">
-            <doc xml:space="preserve">the RTP packet</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="1001">the RTP packet</doc>
             <type name="RTPBuffer" c:type="GstRTPBuffer*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_seq" c:identifier="gst_rtp_buffer_get_seq">
-        <doc xml:space="preserve">Get the sequence number of the RTP packet in @buffer.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The sequence number in host order.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+             line="1028">Get the sequence number of the RTP packet in @buffer.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtpbuffer.h"
+                         line="166"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+               line="1034">The sequence number in host order.</doc>
           <type name="guint16" c:type="guint16"/>
         </return-value>
         <parameters>
           <instance-parameter name="rtp" transfer-ownership="none">
-            <doc xml:space="preserve">the RTP packet</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="1030">the RTP packet</doc>
             <type name="RTPBuffer" c:type="GstRTPBuffer*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_ssrc" c:identifier="gst_rtp_buffer_get_ssrc">
-        <doc xml:space="preserve">Get the SSRC of the RTP packet in @buffer.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the SSRC of @buffer in host order.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+             line="890">Get the SSRC of the RTP packet in @buffer.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtpbuffer.h"
+                         line="139"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+               line="896">the SSRC of @buffer in host order.</doc>
           <type name="guint32" c:type="guint32"/>
         </return-value>
         <parameters>
           <instance-parameter name="rtp" transfer-ownership="none">
-            <doc xml:space="preserve">the RTP packet</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="892">the RTP packet</doc>
             <type name="RTPBuffer" c:type="GstRTPBuffer*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_timestamp" c:identifier="gst_rtp_buffer_get_timestamp">
-        <doc xml:space="preserve">Get the timestamp of the RTP packet in @buffer.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The timestamp in host order.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+             line="1055">Get the timestamp of the RTP packet in @buffer.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtpbuffer.h"
+                         line="172"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+               line="1061">The timestamp in host order.</doc>
           <type name="guint32" c:type="guint32"/>
         </return-value>
         <parameters>
           <instance-parameter name="rtp" transfer-ownership="none">
-            <doc xml:space="preserve">the RTP packet</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="1057">the RTP packet</doc>
             <type name="RTPBuffer" c:type="GstRTPBuffer*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_version" c:identifier="gst_rtp_buffer_get_version">
-        <doc xml:space="preserve">Get the version number of the RTP packet in @buffer.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The version of @buffer.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+             line="576">Get the version number of the RTP packet in @buffer.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtpbuffer.h"
+                         line="108"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+               line="582">The version of @buffer.</doc>
           <type name="guint8" c:type="guint8"/>
         </return-value>
         <parameters>
           <instance-parameter name="rtp" transfer-ownership="none">
-            <doc xml:space="preserve">the RTP packet</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="578">the RTP packet</doc>
             <type name="RTPBuffer" c:type="GstRTPBuffer*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="pad_to" c:identifier="gst_rtp_buffer_pad_to">
-        <doc xml:space="preserve">Set the amount of padding in the RTP packet in @buffer to
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+             line="632">Set the amount of padding in the RTP packet in @buffer to
 @len. If @len is 0, the padding is removed.
 
 NOTE: This function does not work correctly.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtpbuffer.h"
+                         line="120"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="rtp" transfer-ownership="none">
-            <doc xml:space="preserve">the RTP packet</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="634">the RTP packet</doc>
             <type name="RTPBuffer" c:type="GstRTPBuffer*"/>
           </instance-parameter>
           <parameter name="len" transfer-ownership="none">
-            <doc xml:space="preserve">the new amount of padding</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="635">the new amount of padding</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_csrc" c:identifier="gst_rtp_buffer_set_csrc">
-        <doc xml:space="preserve">Modify the CSRC at index @idx in @buffer to @csrc.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+             line="952">Modify the CSRC at index @idx in @buffer to @csrc.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtpbuffer.h"
+                         line="151"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="rtp" transfer-ownership="none">
-            <doc xml:space="preserve">the RTP packet</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="954">the RTP packet</doc>
             <type name="RTPBuffer" c:type="GstRTPBuffer*"/>
           </instance-parameter>
           <parameter name="idx" transfer-ownership="none">
-            <doc xml:space="preserve">the CSRC index to set</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="955">the CSRC index to set</doc>
             <type name="guint8" c:type="guint8"/>
           </parameter>
           <parameter name="csrc" transfer-ownership="none">
-            <doc xml:space="preserve">the CSRC in host order to set at @idx</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="956">the CSRC in host order to set at @idx</doc>
             <type name="guint32" c:type="guint32"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_extension" c:identifier="gst_rtp_buffer_set_extension">
-        <doc xml:space="preserve">Set the extension bit on the RTP packet in @buffer to @extension.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+             line="671">Set the extension bit on the RTP packet in @buffer to @extension.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtpbuffer.h"
+                         line="126"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="rtp" transfer-ownership="none">
-            <doc xml:space="preserve">the RTP packet</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="673">the RTP packet</doc>
             <type name="RTPBuffer" c:type="GstRTPBuffer*"/>
           </instance-parameter>
           <parameter name="extension" transfer-ownership="none">
-            <doc xml:space="preserve">the new extension</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="674">the new extension</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_extension_data"
               c:identifier="gst_rtp_buffer_set_extension_data">
-        <doc xml:space="preserve">Set the extension bit of the rtp buffer and fill in the @bits and @length of the
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+             line="825">Set the extension bit of the rtp buffer and fill in the @bits and @length of the
 extension header. If the existing extension data is not large enough, it will
 be made larger.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtpbuffer.h"
+                         line="136"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">True if done.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+               line="836">True if done.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="rtp" transfer-ownership="none">
-            <doc xml:space="preserve">the RTP packet</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="827">the RTP packet</doc>
             <type name="RTPBuffer" c:type="GstRTPBuffer*"/>
           </instance-parameter>
           <parameter name="bits" transfer-ownership="none">
-            <doc xml:space="preserve">the bits specific for the extension</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="828">the bits specific for the extension</doc>
             <type name="guint16" c:type="guint16"/>
           </parameter>
           <parameter name="length" transfer-ownership="none">
-            <doc xml:space="preserve">the length that counts the number of 32-bit words in
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="829">the length that counts the number of 32-bit words in
 the extension, excluding the extension header ( therefore zero is a valid length)</doc>
             <type name="guint16" c:type="guint16"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_marker" c:identifier="gst_rtp_buffer_set_marker">
-        <doc xml:space="preserve">Set the marker bit on the RTP packet in @buffer to @marker.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+             line="986">Set the marker bit on the RTP packet in @buffer to @marker.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtpbuffer.h"
+                         line="157"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="rtp" transfer-ownership="none">
-            <doc xml:space="preserve">the RTP packet</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="988">the RTP packet</doc>
             <type name="RTPBuffer" c:type="GstRTPBuffer*"/>
           </instance-parameter>
           <parameter name="marker" transfer-ownership="none">
-            <doc xml:space="preserve">the new marker</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="989">the new marker</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_packet_len"
               c:identifier="gst_rtp_buffer_set_packet_len">
-        <doc xml:space="preserve">Set the total @rtp size to @len. The data in the buffer will be made
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+             line="518">Set the total @rtp size to @len. The data in the buffer will be made
 larger if needed. Any padding will be removed from the packet.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtpbuffer.h" line="99"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="rtp" transfer-ownership="none">
-            <doc xml:space="preserve">the RTP packet</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="520">the RTP packet</doc>
             <type name="RTPBuffer" c:type="GstRTPBuffer*"/>
           </instance-parameter>
           <parameter name="len" transfer-ownership="none">
-            <doc xml:space="preserve">the new packet length</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="521">the new packet length</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_padding" c:identifier="gst_rtp_buffer_set_padding">
-        <doc xml:space="preserve">Set the padding bit on the RTP packet in @buffer to @padding.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+             line="619">Set the padding bit on the RTP packet in @buffer to @padding.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtpbuffer.h"
+                         line="117"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="rtp" transfer-ownership="none">
-            <doc xml:space="preserve">the buffer</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="621">the buffer</doc>
             <type name="RTPBuffer" c:type="GstRTPBuffer*"/>
           </instance-parameter>
           <parameter name="padding" transfer-ownership="none">
-            <doc xml:space="preserve">the new padding</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="622">the new padding</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_payload_type"
               c:identifier="gst_rtp_buffer_set_payload_type">
-        <doc xml:space="preserve">Set the payload type of the RTP packet in @buffer to @payload_type.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+             line="1013">Set the payload type of the RTP packet in @buffer to @payload_type.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtpbuffer.h"
+                         line="163"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="rtp" transfer-ownership="none">
-            <doc xml:space="preserve">the RTP packet</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="1015">the RTP packet</doc>
             <type name="RTPBuffer" c:type="GstRTPBuffer*"/>
           </instance-parameter>
           <parameter name="payload_type" transfer-ownership="none">
-            <doc xml:space="preserve">the new type</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="1016">the new type</doc>
             <type name="guint8" c:type="guint8"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_seq" c:identifier="gst_rtp_buffer_set_seq">
-        <doc xml:space="preserve">Set the sequence number of the RTP packet in @buffer to @seq.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+             line="1042">Set the sequence number of the RTP packet in @buffer to @seq.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtpbuffer.h"
+                         line="169"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="rtp" transfer-ownership="none">
-            <doc xml:space="preserve">the RTP packet</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="1044">the RTP packet</doc>
             <type name="RTPBuffer" c:type="GstRTPBuffer*"/>
           </instance-parameter>
           <parameter name="seq" transfer-ownership="none">
-            <doc xml:space="preserve">the new sequence number</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="1045">the new sequence number</doc>
             <type name="guint16" c:type="guint16"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_ssrc" c:identifier="gst_rtp_buffer_set_ssrc">
-        <doc xml:space="preserve">Set the SSRC on the RTP packet in @buffer to @ssrc.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+             line="904">Set the SSRC on the RTP packet in @buffer to @ssrc.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtpbuffer.h"
+                         line="142"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="rtp" transfer-ownership="none">
-            <doc xml:space="preserve">the RTP packet</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="906">the RTP packet</doc>
             <type name="RTPBuffer" c:type="GstRTPBuffer*"/>
           </instance-parameter>
           <parameter name="ssrc" transfer-ownership="none">
-            <doc xml:space="preserve">the new SSRC</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="907">the new SSRC</doc>
             <type name="guint32" c:type="guint32"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_timestamp" c:identifier="gst_rtp_buffer_set_timestamp">
-        <doc xml:space="preserve">Set the timestamp of the RTP packet in @buffer to @timestamp.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+             line="1069">Set the timestamp of the RTP packet in @buffer to @timestamp.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtpbuffer.h"
+                         line="175"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="rtp" transfer-ownership="none">
-            <doc xml:space="preserve">the RTP packet</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="1071">the RTP packet</doc>
             <type name="RTPBuffer" c:type="GstRTPBuffer*"/>
           </instance-parameter>
           <parameter name="timestamp" transfer-ownership="none">
-            <doc xml:space="preserve">the new timestamp</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="1072">the new timestamp</doc>
             <type name="guint32" c:type="guint32"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_version" c:identifier="gst_rtp_buffer_set_version">
-        <doc xml:space="preserve">Set the version of the RTP packet in @buffer to @version.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+             line="590">Set the version of the RTP packet in @buffer to @version.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtpbuffer.h"
+                         line="111"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="rtp" transfer-ownership="none">
-            <doc xml:space="preserve">the RTP packet</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="592">the RTP packet</doc>
             <type name="RTPBuffer" c:type="GstRTPBuffer*"/>
           </instance-parameter>
           <parameter name="version" transfer-ownership="none">
-            <doc xml:space="preserve">the new version</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="593">the new version</doc>
             <type name="guint8" c:type="guint8"/>
           </parameter>
         </parameters>
       </method>
       <method name="unmap" c:identifier="gst_rtp_buffer_unmap">
-        <doc xml:space="preserve">Unmap @rtp previously mapped with gst_rtp_buffer_map().</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+             line="492">Unmap @rtp previously mapped with gst_rtp_buffer_map().</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtpbuffer.h" line="96"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="rtp" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTPBuffer</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="494">a #GstRTPBuffer</doc>
             <type name="RTPBuffer" c:type="GstRTPBuffer*"/>
           </instance-parameter>
         </parameters>
       </method>
       <function name="allocate_data"
                 c:identifier="gst_rtp_buffer_allocate_data">
-        <doc xml:space="preserve">Allocate enough data in @buffer to hold an RTP packet with @csrc_count CSRCs,
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+             line="85">Allocate enough data in @buffer to hold an RTP packet with @csrc_count CSRCs,
 a payload length of @payload_len and padding of @pad_len.
 @buffer must be writable and all previous memory in @buffer will be freed.
 If @pad_len is &gt;0, the padding bit will be set. All other RTP header fields
 will be set to 0/FALSE.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtpbuffer.h" line="68"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <parameter name="buffer" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBuffer</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="87">a #GstBuffer</doc>
             <type name="Gst.Buffer" c:type="GstBuffer*"/>
           </parameter>
           <parameter name="payload_len" transfer-ownership="none">
-            <doc xml:space="preserve">the length of the payload</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="88">the length of the payload</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="pad_len" transfer-ownership="none">
-            <doc xml:space="preserve">the amount of padding</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="89">the amount of padding</doc>
             <type name="guint8" c:type="guint8"/>
           </parameter>
           <parameter name="csrc_count" transfer-ownership="none">
-            <doc xml:space="preserve">the number of CSRC entries</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="90">the number of CSRC entries</doc>
             <type name="guint8" c:type="guint8"/>
           </parameter>
         </parameters>
       </function>
       <function name="calc_header_len"
                 c:identifier="gst_rtp_buffer_calc_header_len">
-        <doc xml:space="preserve">Calculate the header length of an RTP packet with @csrc_count CSRC entries.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+             line="243">Calculate the header length of an RTP packet with @csrc_count CSRC entries.
 An RTP packet can have at most 15 CSRC entries.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtpbuffer.h" line="84"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The length of an RTP header with @csrc_count CSRC entries.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+               line="250">The length of an RTP header with @csrc_count CSRC entries.</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <parameter name="csrc_count" transfer-ownership="none">
-            <doc xml:space="preserve">the number of CSRC entries</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="245">the number of CSRC entries</doc>
             <type name="guint8" c:type="guint8"/>
           </parameter>
         </parameters>
       </function>
       <function name="calc_packet_len"
                 c:identifier="gst_rtp_buffer_calc_packet_len">
-        <doc xml:space="preserve">Calculate the total length of an RTP packet with a payload size of @payload_len,
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+             line="260">Calculate the total length of an RTP packet with a payload size of @payload_len,
 a padding of @pad_len and a @csrc_count CSRC entries.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtpbuffer.h" line="87"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The total length of an RTP header with given parameters.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+               line="269">The total length of an RTP header with given parameters.</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <parameter name="payload_len" transfer-ownership="none">
-            <doc xml:space="preserve">the length of the payload</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="262">the length of the payload</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="pad_len" transfer-ownership="none">
-            <doc xml:space="preserve">the amount of padding</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="263">the amount of padding</doc>
             <type name="guint8" c:type="guint8"/>
           </parameter>
           <parameter name="csrc_count" transfer-ownership="none">
-            <doc xml:space="preserve">the number of CSRC entries</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="264">the number of CSRC entries</doc>
             <type name="guint8" c:type="guint8"/>
           </parameter>
         </parameters>
       </function>
       <function name="calc_payload_len"
                 c:identifier="gst_rtp_buffer_calc_payload_len">
-        <doc xml:space="preserve">Calculate the length of the payload of an RTP packet with size @packet_len,
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+             line="281">Calculate the length of the payload of an RTP packet with size @packet_len,
 a padding of @pad_len and a @csrc_count CSRC entries.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtpbuffer.h" line="90"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The length of the payload of an RTP packet  with given parameters.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+               line="290">The length of the payload of an RTP packet  with given parameters.</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <parameter name="packet_len" transfer-ownership="none">
-            <doc xml:space="preserve">the length of the total RTP packet</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="283">the length of the total RTP packet</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="pad_len" transfer-ownership="none">
-            <doc xml:space="preserve">the amount of padding</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="284">the amount of padding</doc>
             <type name="guint8" c:type="guint8"/>
           </parameter>
           <parameter name="csrc_count" transfer-ownership="none">
-            <doc xml:space="preserve">the number of CSRC entries</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="285">the number of CSRC entries</doc>
             <type name="guint8" c:type="guint8"/>
           </parameter>
         </parameters>
       </function>
       <function name="compare_seqnum"
                 c:identifier="gst_rtp_buffer_compare_seqnum">
-        <doc xml:space="preserve">Compare two sequence numbers, taking care of wraparounds. This function
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+             line="1231">Compare two sequence numbers, taking care of wraparounds. This function
 returns the difference between @seqnum1 and @seqnum2.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtpbuffer.h"
+                         line="198"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a negative value if @seqnum1 is bigger than @seqnum2, 0 if they
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+               line="1239">a negative value if @seqnum1 is bigger than @seqnum2, 0 if they
 are equal or a positive value if @seqnum1 is smaller than @segnum2.</doc>
           <type name="gint" c:type="gint"/>
         </return-value>
         <parameters>
           <parameter name="seqnum1" transfer-ownership="none">
-            <doc xml:space="preserve">a sequence number</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="1233">a sequence number</doc>
             <type name="guint16" c:type="guint16"/>
           </parameter>
           <parameter name="seqnum2" transfer-ownership="none">
-            <doc xml:space="preserve">a sequence number</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="1234">a sequence number</doc>
             <type name="guint16" c:type="guint16"/>
           </parameter>
         </parameters>
       </function>
       <function name="default_clock_rate"
                 c:identifier="gst_rtp_buffer_default_clock_rate">
-        <doc xml:space="preserve">Get the default clock-rate for the static payload type @payload_type.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the default clock rate or -1 if the payload type is not static or
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+             line="1204">Get the default clock-rate for the static payload type @payload_type.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtpbuffer.h"
+                         line="195"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+               line="1210">the default clock rate or -1 if the payload type is not static or
 the clock-rate is undefined.</doc>
           <type name="guint32" c:type="guint32"/>
         </return-value>
         <parameters>
           <parameter name="payload_type" transfer-ownership="none">
-            <doc xml:space="preserve">the static payload type</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="1206">the static payload type</doc>
             <type name="guint8" c:type="guint8"/>
           </parameter>
         </parameters>
       </function>
       <function name="ext_timestamp"
                 c:identifier="gst_rtp_buffer_ext_timestamp">
-        <doc xml:space="preserve">Update the @exttimestamp field with the extended timestamp of @timestamp
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+             line="1253">Update the @exttimestamp field with the extended timestamp of @timestamp
 For the first call of the method, @exttimestamp should point to a location
 with a value of -1.
 
@@ -4233,8 +6080,12 @@ This function is able to handle both forward and backward timestamps taking
 into account:
   - timestamp wraparound making sure that the returned value is properly increased.
   - timestamp unwraparound making sure that the returned value is properly decreased.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtpbuffer.h"
+                         line="201"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The extended timestamp of @timestamp or 0 if the result can't go anywhere backwards.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+               line="1267">The extended timestamp of @timestamp or 0 if the result can't go anywhere backwards.</doc>
           <type name="guint64" c:type="guint64"/>
         </return-value>
         <parameters>
@@ -4242,130 +6093,250 @@ into account:
                      direction="inout"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">a previous extended timestamp</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="1255">a previous extended timestamp</doc>
             <type name="guint64" c:type="guint64*"/>
           </parameter>
           <parameter name="timestamp" transfer-ownership="none">
-            <doc xml:space="preserve">a new timestamp</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="1256">a new timestamp</doc>
             <type name="guint32" c:type="guint32"/>
           </parameter>
         </parameters>
       </function>
-      <function name="map" c:identifier="gst_rtp_buffer_map">
-        <doc xml:space="preserve">Map the contents of @buffer into @rtp.</doc>
+      <function name="get_extension_onebyte_header_from_bytes"
+                c:identifier="gst_rtp_buffer_get_extension_onebyte_header_from_bytes"
+                version="1.18">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+             line="1375">Similar to gst_rtp_buffer_get_extension_onebyte_header, but working
+on the #GBytes you get from gst_rtp_buffer_get_extension_bytes.
+Parses RFC 5285 style header extensions with a one byte header. It will
+return the nth extension with the requested id.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtpbuffer.h"
+                         line="232"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if @buffer could be mapped.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+               line="1390">TRUE if @bytes had the requested header extension</doc>
+          <type name="gboolean" c:type="gboolean"/>
+        </return-value>
+        <parameters>
+          <parameter name="bytes" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="1377">#GBytes</doc>
+            <type name="GLib.Bytes" c:type="GBytes*"/>
+          </parameter>
+          <parameter name="bit_pattern" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="1378">The bit-pattern. Anything but 0xBEDE is rejected.</doc>
+            <type name="guint16" c:type="guint16"/>
+          </parameter>
+          <parameter name="id" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="1379">The ID of the header extension to be read (between 1 and 14).</doc>
+            <type name="guint8" c:type="guint8"/>
+          </parameter>
+          <parameter name="nth" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="1380">Read the nth extension packet with the requested ID</doc>
+            <type name="guint" c:type="guint"/>
+          </parameter>
+          <parameter name="data"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="1381">
+  location for data</doc>
+            <array length="5" zero-terminated="0" c:type="gpointer*">
+              <type name="guint8"/>
+            </array>
+          </parameter>
+          <parameter name="size"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="1383">the size of the data in bytes</doc>
+            <type name="guint" c:type="guint*"/>
+          </parameter>
+        </parameters>
+      </function>
+      <function name="map" c:identifier="gst_rtp_buffer_map">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+             line="306">Map the contents of @buffer into @rtp.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtpbuffer.h" line="93"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+               line="314">%TRUE if @buffer could be mapped.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <parameter name="buffer" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBuffer</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="308">a #GstBuffer</doc>
             <type name="Gst.Buffer" c:type="GstBuffer*"/>
           </parameter>
           <parameter name="flags" transfer-ownership="none">
-            <doc xml:space="preserve">#GstMapFlags</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="309">#GstMapFlags</doc>
             <type name="Gst.MapFlags" c:type="GstMapFlags"/>
           </parameter>
           <parameter name="rtp"
                      direction="out"
                      caller-allocates="1"
                      transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTPBuffer</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="310">a #GstRTPBuffer</doc>
             <type name="RTPBuffer" c:type="GstRTPBuffer*"/>
           </parameter>
         </parameters>
       </function>
       <function name="new_allocate" c:identifier="gst_rtp_buffer_new_allocate">
-        <doc xml:space="preserve">Allocate a new #GstBuffer with enough data to hold an RTP packet with
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+             line="190">Allocate a new #GstBuffer with enough data to hold an RTP packet with
 @csrc_count CSRCs, a payload length of @payload_len and padding of @pad_len.
 All other RTP header fields will be set to 0/FALSE.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtpbuffer.h" line="78"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">A newly allocated buffer that can hold an RTP packet with given
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+               line="200">A newly allocated buffer that can hold an RTP packet with given
 parameters.</doc>
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </return-value>
         <parameters>
           <parameter name="payload_len" transfer-ownership="none">
-            <doc xml:space="preserve">the length of the payload</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="192">the length of the payload</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="pad_len" transfer-ownership="none">
-            <doc xml:space="preserve">the amount of padding</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="193">the amount of padding</doc>
             <type name="guint8" c:type="guint8"/>
           </parameter>
           <parameter name="csrc_count" transfer-ownership="none">
-            <doc xml:space="preserve">the number of CSRC entries</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="194">the number of CSRC entries</doc>
             <type name="guint8" c:type="guint8"/>
           </parameter>
         </parameters>
       </function>
       <function name="new_allocate_len"
                 c:identifier="gst_rtp_buffer_new_allocate_len">
-        <doc xml:space="preserve">Create a new #GstBuffer that can hold an RTP packet that is exactly
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+             line="217">Create a new #GstBuffer that can hold an RTP packet that is exactly
 @packet_len long. The length of the payload depends on @pad_len and
 @csrc_count and can be calculated with gst_rtp_buffer_calc_payload_len().
 All RTP header fields will be set to 0/FALSE.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtpbuffer.h" line="81"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">A newly allocated buffer that can hold an RTP packet of @packet_len.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+               line="228">A newly allocated buffer that can hold an RTP packet of @packet_len.</doc>
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </return-value>
         <parameters>
           <parameter name="packet_len" transfer-ownership="none">
-            <doc xml:space="preserve">the total length of the packet</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="219">the total length of the packet</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="pad_len" transfer-ownership="none">
-            <doc xml:space="preserve">the amount of padding</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="220">the amount of padding</doc>
             <type name="guint8" c:type="guint8"/>
           </parameter>
           <parameter name="csrc_count" transfer-ownership="none">
-            <doc xml:space="preserve">the number of CSRC entries</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="221">the number of CSRC entries</doc>
             <type name="guint8" c:type="guint8"/>
           </parameter>
         </parameters>
       </function>
       <function name="new_copy_data"
                 c:identifier="gst_rtp_buffer_new_copy_data">
-        <doc xml:space="preserve">Create a new buffer and set the data to a copy of @len
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+             line="172">Create a new buffer and set the data to a copy of @len
 bytes of @data and the size to @len. The data will be freed when the buffer
 is freed.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtpbuffer.h" line="75"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">A newly allocated buffer with a copy of @data and of size @len.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+               line="182">A newly allocated buffer with a copy of @data and of size @len.</doc>
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </return-value>
         <parameters>
           <parameter name="data" transfer-ownership="none">
-            <doc xml:space="preserve">data for the new
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="174">data for the new
   buffer</doc>
             <array length="1" zero-terminated="0" c:type="gconstpointer">
               <type name="guint8"/>
             </array>
           </parameter>
           <parameter name="len" transfer-ownership="none">
-            <doc xml:space="preserve">the length of data</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="176">the length of data</doc>
             <type name="gsize" c:type="gsize"/>
           </parameter>
         </parameters>
       </function>
       <function name="new_take_data"
                 c:identifier="gst_rtp_buffer_new_take_data">
-        <doc xml:space="preserve">Create a new buffer and set the data and size of the buffer to @data and @len
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+             line="151">Create a new buffer and set the data and size of the buffer to @data and @len
 respectively. @data will be freed when the buffer is unreffed, so this
 function transfers ownership of @data to the new buffer.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtpbuffer.h" line="72"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">A newly allocated buffer with @data and of size @len.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+               line="161">A newly allocated buffer with @data and of size @len.</doc>
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </return-value>
         <parameters>
           <parameter name="data" transfer-ownership="full">
-            <doc xml:space="preserve">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="153">
   data for the new buffer</doc>
             <array length="1" zero-terminated="0" c:type="gpointer">
               <type name="guint8"/>
             </array>
           </parameter>
           <parameter name="len" transfer-ownership="none">
-            <doc xml:space="preserve">the length of data</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+                 line="155">the length of data</doc>
             <type name="gsize" c:type="gsize"/>
           </parameter>
         </parameters>
@@ -4376,7 +6347,9 @@ function transfers ownership of @data to the new buffer.</doc>
               glib:type-name="GstRTPBufferFlags"
               glib:get-type="gst_rtp_buffer_flags_get_type"
               c:type="GstRTPBufferFlags">
-      <doc xml:space="preserve">Additional RTP buffer flags. These flags can potentially be used on any
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtp/gstrtpbuffer.h"
+           line="239">Additional RTP buffer flags. These flags can potentially be used on any
 buffers carrying RTP packets.
 
 Note that these are only valid for #GstCaps of type: application/x-rtp (x-rtcp).
@@ -4385,14 +6358,18 @@ They can conflict with other extended buffer flags.</doc>
               value="1048576"
               c:identifier="GST_RTP_BUFFER_FLAG_RETRANSMISSION"
               glib:nick="retransmission">
-        <doc xml:space="preserve">The #GstBuffer was once wrapped
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbuffer.h"
+             line="241">The #GstBuffer was once wrapped
           in a retransmitted packet as specified by RFC 4588.</doc>
       </member>
       <member name="redundant"
               value="2097152"
               c:identifier="GST_RTP_BUFFER_FLAG_REDUNDANT"
               glib:nick="redundant">
-        <doc xml:space="preserve">The packet represents redundant RTP packet.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbuffer.h"
+             line="243">The packet represents redundant RTP packet.
           The flag is used in gstrtpstorage to be able to hold the packetback
           and use it only for recovery from packet loss.
           Since: 1.14</doc>
@@ -4401,7 +6378,9 @@ They can conflict with other extended buffer flags.</doc>
               value="268435456"
               c:identifier="GST_RTP_BUFFER_FLAG_LAST"
               glib:nick="last">
-        <doc xml:space="preserve">Offset to define more flags.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbuffer.h"
+             line="247">Offset to define more flags.</doc>
       </member>
     </bitfield>
     <bitfield name="RTPBufferMapFlags"
@@ -4409,12 +6388,16 @@ They can conflict with other extended buffer flags.</doc>
               glib:type-name="GstRTPBufferMapFlags"
               glib:get-type="gst_rtp_buffer_map_flags_get_type"
               c:type="GstRTPBufferMapFlags">
-      <doc xml:space="preserve">Additional mapping flags for gst_rtp_buffer_map().</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtp/gstrtpbuffer.h"
+           line="263">Additional mapping flags for gst_rtp_buffer_map().</doc>
       <member name="skip_padding"
               value="65536"
               c:identifier="GST_RTP_BUFFER_MAP_FLAG_SKIP_PADDING"
               glib:nick="skip-padding">
-        <doc xml:space="preserve">Skip mapping and validation of RTP
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbuffer.h"
+             line="265">Skip mapping and validation of RTP
           padding and RTP pad count when present. Useful for buffers where
           the padding may be encrypted.</doc>
       </member>
@@ -4422,14 +6405,18 @@ They can conflict with other extended buffer flags.</doc>
               value="16777216"
               c:identifier="GST_RTP_BUFFER_MAP_FLAG_LAST"
               glib:nick="last">
-        <doc xml:space="preserve">Offset to define more flags</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbuffer.h"
+             line="268">Offset to define more flags</doc>
       </member>
     </bitfield>
     <enumeration name="RTPPayload"
                  glib:type-name="GstRTPPayload"
                  glib:get-type="gst_rtp_payload_get_type"
                  c:type="GstRTPPayload">
-      <doc xml:space="preserve">Standard predefined fixed payload types.
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtp/gstrtppayloads.h"
+           line="31">Standard predefined fixed payload types.
 
 The official list is at:
 http://www.iana.org/assignments/rtp-parameters
@@ -4445,224 +6432,310 @@ Reserved for RTCP conflict avoidance: 72-76</doc>
               value="0"
               c:identifier="GST_RTP_PAYLOAD_PCMU"
               glib:nick="pcmu">
-        <doc xml:space="preserve">ITU-T G.711. mu-law audio (RFC 3551)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtppayloads.h"
+             line="33">ITU-T G.711. mu-law audio (RFC 3551)</doc>
       </member>
       <member name="1016"
               value="1"
               c:identifier="GST_RTP_PAYLOAD_1016"
               glib:nick="1016">
-        <doc xml:space="preserve">RFC 3551 says reserved</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtppayloads.h"
+             line="34">RFC 3551 says reserved</doc>
       </member>
       <member name="g721"
               value="2"
               c:identifier="GST_RTP_PAYLOAD_G721"
               glib:nick="g721">
-        <doc xml:space="preserve">RFC 3551 says reserved</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtppayloads.h"
+             line="35">RFC 3551 says reserved</doc>
       </member>
       <member name="gsm"
               value="3"
               c:identifier="GST_RTP_PAYLOAD_GSM"
               glib:nick="gsm">
-        <doc xml:space="preserve">GSM audio</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtppayloads.h"
+             line="36">GSM audio</doc>
       </member>
       <member name="g723"
               value="4"
               c:identifier="GST_RTP_PAYLOAD_G723"
               glib:nick="g723">
-        <doc xml:space="preserve">ITU G.723.1 audio</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtppayloads.h"
+             line="37">ITU G.723.1 audio</doc>
       </member>
       <member name="dvi4_8000"
               value="5"
               c:identifier="GST_RTP_PAYLOAD_DVI4_8000"
               glib:nick="dvi4-8000">
-        <doc xml:space="preserve">IMA ADPCM wave type (RFC 3551)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtppayloads.h"
+             line="38">IMA ADPCM wave type (RFC 3551)</doc>
       </member>
       <member name="dvi4_16000"
               value="6"
               c:identifier="GST_RTP_PAYLOAD_DVI4_16000"
               glib:nick="dvi4-16000">
-        <doc xml:space="preserve">IMA ADPCM wave type (RFC 3551)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtppayloads.h"
+             line="39">IMA ADPCM wave type (RFC 3551)</doc>
       </member>
       <member name="lpc"
               value="7"
               c:identifier="GST_RTP_PAYLOAD_LPC"
               glib:nick="lpc">
-        <doc xml:space="preserve">experimental linear predictive encoding</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtppayloads.h"
+             line="40">experimental linear predictive encoding</doc>
       </member>
       <member name="pcma"
               value="8"
               c:identifier="GST_RTP_PAYLOAD_PCMA"
               glib:nick="pcma">
-        <doc xml:space="preserve">ITU-T G.711 A-law audio (RFC 3551)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtppayloads.h"
+             line="41">ITU-T G.711 A-law audio (RFC 3551)</doc>
       </member>
       <member name="g722"
               value="9"
               c:identifier="GST_RTP_PAYLOAD_G722"
               glib:nick="g722">
-        <doc xml:space="preserve">ITU-T G.722 (RFC 3551)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtppayloads.h"
+             line="42">ITU-T G.722 (RFC 3551)</doc>
       </member>
       <member name="l16_stereo"
               value="10"
               c:identifier="GST_RTP_PAYLOAD_L16_STEREO"
               glib:nick="l16-stereo">
-        <doc xml:space="preserve">stereo PCM</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtppayloads.h"
+             line="43">stereo PCM</doc>
       </member>
       <member name="l16_mono"
               value="11"
               c:identifier="GST_RTP_PAYLOAD_L16_MONO"
               glib:nick="l16-mono">
-        <doc xml:space="preserve">mono PCM</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtppayloads.h"
+             line="44">mono PCM</doc>
       </member>
       <member name="qcelp"
               value="12"
               c:identifier="GST_RTP_PAYLOAD_QCELP"
               glib:nick="qcelp">
-        <doc xml:space="preserve">EIA &amp; TIA standard IS-733</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtppayloads.h"
+             line="45">EIA &amp; TIA standard IS-733</doc>
       </member>
       <member name="cn"
               value="13"
               c:identifier="GST_RTP_PAYLOAD_CN"
               glib:nick="cn">
-        <doc xml:space="preserve">Comfort Noise (RFC 3389)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtppayloads.h"
+             line="46">Comfort Noise (RFC 3389)</doc>
       </member>
       <member name="mpa"
               value="14"
               c:identifier="GST_RTP_PAYLOAD_MPA"
               glib:nick="mpa">
-        <doc xml:space="preserve">Audio MPEG 1-3.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtppayloads.h"
+             line="47">Audio MPEG 1-3.</doc>
       </member>
       <member name="g728"
               value="15"
               c:identifier="GST_RTP_PAYLOAD_G728"
               glib:nick="g728">
-        <doc xml:space="preserve">ITU-T G.728 Speech coder (RFC 3551)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtppayloads.h"
+             line="48">ITU-T G.728 Speech coder (RFC 3551)</doc>
       </member>
       <member name="dvi4_11025"
               value="16"
               c:identifier="GST_RTP_PAYLOAD_DVI4_11025"
               glib:nick="dvi4-11025">
-        <doc xml:space="preserve">IMA ADPCM wave type (RFC 3551)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtppayloads.h"
+             line="49">IMA ADPCM wave type (RFC 3551)</doc>
       </member>
       <member name="dvi4_22050"
               value="17"
               c:identifier="GST_RTP_PAYLOAD_DVI4_22050"
               glib:nick="dvi4-22050">
-        <doc xml:space="preserve">IMA ADPCM wave type (RFC 3551)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtppayloads.h"
+             line="50">IMA ADPCM wave type (RFC 3551)</doc>
       </member>
       <member name="g729"
               value="18"
               c:identifier="GST_RTP_PAYLOAD_G729"
               glib:nick="g729">
-        <doc xml:space="preserve">ITU-T G.729 Speech coder (RFC 3551)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtppayloads.h"
+             line="51">ITU-T G.729 Speech coder (RFC 3551)</doc>
       </member>
       <member name="cellb"
               value="25"
               c:identifier="GST_RTP_PAYLOAD_CELLB"
               glib:nick="cellb">
-        <doc xml:space="preserve">See RFC 2029</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtppayloads.h"
+             line="52">See RFC 2029</doc>
       </member>
       <member name="jpeg"
               value="26"
               c:identifier="GST_RTP_PAYLOAD_JPEG"
               glib:nick="jpeg">
-        <doc xml:space="preserve">ISO Standards 10918-1 and 10918-2 (RFC 2435)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtppayloads.h"
+             line="53">ISO Standards 10918-1 and 10918-2 (RFC 2435)</doc>
       </member>
       <member name="nv"
               value="28"
               c:identifier="GST_RTP_PAYLOAD_NV"
               glib:nick="nv">
-        <doc xml:space="preserve">nv encoding by Ron Frederick</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtppayloads.h"
+             line="54">nv encoding by Ron Frederick</doc>
       </member>
       <member name="h261"
               value="31"
               c:identifier="GST_RTP_PAYLOAD_H261"
               glib:nick="h261">
-        <doc xml:space="preserve">ITU-T Recommendation H.261 (RFC 2032)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtppayloads.h"
+             line="55">ITU-T Recommendation H.261 (RFC 2032)</doc>
       </member>
       <member name="mpv"
               value="32"
               c:identifier="GST_RTP_PAYLOAD_MPV"
               glib:nick="mpv">
-        <doc xml:space="preserve">Video MPEG 1 &amp; 2 (RFC 2250)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtppayloads.h"
+             line="56">Video MPEG 1 &amp; 2 (RFC 2250)</doc>
       </member>
       <member name="mp2t"
               value="33"
               c:identifier="GST_RTP_PAYLOAD_MP2T"
               glib:nick="mp2t">
-        <doc xml:space="preserve">MPEG-2 transport stream (RFC 2250)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtppayloads.h"
+             line="57">MPEG-2 transport stream (RFC 2250)</doc>
       </member>
       <member name="h263"
               value="34"
               c:identifier="GST_RTP_PAYLOAD_H263"
               glib:nick="h263">
-        <doc xml:space="preserve">Video H263 (RFC 2190)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtppayloads.h"
+             line="58">Video H263 (RFC 2190)</doc>
       </member>
     </enumeration>
     <record name="RTPPayloadInfo" c:type="GstRTPPayloadInfo">
-      <doc xml:space="preserve">Structure holding default payload type information.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtp/gstrtppayloads.h"
+           line="164">Structure holding default payload type information.</doc>
+      <source-position filename="gst-libs/gst/rtp/gstrtppayloads.h"
+                       line="188"/>
       <field name="payload_type" writable="1">
-        <doc xml:space="preserve">payload type, -1 means dynamic</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtppayloads.h"
+             line="166">payload type, -1 means dynamic</doc>
         <type name="guint8" c:type="guint8"/>
       </field>
       <field name="media" writable="1">
-        <doc xml:space="preserve">the media type(s), usually "audio", "video", "application", "text",
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtppayloads.h"
+             line="167">the media type(s), usually "audio", "video", "application", "text",
 "message".</doc>
         <type name="utf8" c:type="const gchar*"/>
       </field>
       <field name="encoding_name" writable="1">
-        <doc xml:space="preserve">the encoding name of @pt</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtppayloads.h"
+             line="169">the encoding name of @pt</doc>
         <type name="utf8" c:type="const gchar*"/>
       </field>
       <field name="clock_rate" writable="1">
-        <doc xml:space="preserve">default clock rate, 0 = unknown/variable</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtppayloads.h"
+             line="170">default clock rate, 0 = unknown/variable</doc>
         <type name="guint" c:type="guint"/>
       </field>
       <field name="encoding_parameters" writable="1">
-        <doc xml:space="preserve">encoding parameters. For audio this is the number of
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtppayloads.h"
+             line="171">encoding parameters. For audio this is the number of
 channels. NULL = not applicable.</doc>
         <type name="utf8" c:type="const gchar*"/>
       </field>
       <field name="bitrate" writable="1">
-        <doc xml:space="preserve">the bitrate of the media. 0 = unknown/variable.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtppayloads.h"
+             line="173">the bitrate of the media. 0 = unknown/variable.</doc>
         <type name="guint" c:type="guint"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
       <function name="for_name" c:identifier="gst_rtp_payload_info_for_name">
-        <doc xml:space="preserve">Get the #GstRTPPayloadInfo for @media and @encoding_name. This function is
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtppayloads.c"
+             line="205">Get the #GstRTPPayloadInfo for @media and @encoding_name. This function is
 mostly used to get the default clock-rate and bandwidth for dynamic payload
 types specified with @media and @encoding name.
 
-The search for @encoding_name will be performed in a case insensitve way.</doc>
+The search for @encoding_name will be performed in a case insensitive way.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtppayloads.h"
+                         line="194"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstRTPPayloadInfo or NULL when no info could be found.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtppayloads.c"
+               line="216">a #GstRTPPayloadInfo or NULL when no info could be found.</doc>
           <type name="RTPPayloadInfo" c:type="const GstRTPPayloadInfo*"/>
         </return-value>
         <parameters>
           <parameter name="media" transfer-ownership="none">
-            <doc xml:space="preserve">the media to find</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtppayloads.c"
+                 line="207">the media to find</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="encoding_name" transfer-ownership="none">
-            <doc xml:space="preserve">the encoding name to find</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtppayloads.c"
+                 line="208">the encoding name to find</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </function>
       <function name="for_pt" c:identifier="gst_rtp_payload_info_for_pt">
-        <doc xml:space="preserve">Get the #GstRTPPayloadInfo for @payload_type. This function is
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtppayloads.c"
+             line="180">Get the #GstRTPPayloadInfo for @payload_type. This function is
 mostly used to get the default clock-rate and bandwidth for static payload
 types specified with @payload_type.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtppayloads.h"
+                         line="191"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstRTPPayloadInfo or NULL when no info could be found.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtppayloads.c"
+               line="188">a #GstRTPPayloadInfo or NULL when no info could be found.</doc>
           <type name="RTPPayloadInfo" c:type="const GstRTPPayloadInfo*"/>
         </return-value>
         <parameters>
           <parameter name="payload_type" transfer-ownership="none">
-            <doc xml:space="preserve">the payload_type to find</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtppayloads.c"
+                 line="182">the payload_type to find</doc>
             <type name="guint8" c:type="guint8"/>
           </parameter>
         </parameters>
@@ -4673,81 +6746,117 @@ types specified with @payload_type.</doc>
                  glib:type-name="GstRTPProfile"
                  glib:get-type="gst_rtp_profile_get_type"
                  c:type="GstRTPProfile">
-      <doc xml:space="preserve">The transfer profile to use.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtp/gstrtpdefs.h"
+           line="38">The transfer profile to use.</doc>
       <member name="unknown"
               value="0"
               c:identifier="GST_RTP_PROFILE_UNKNOWN"
               glib:nick="unknown">
-        <doc xml:space="preserve">invalid profile</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpdefs.h"
+             line="40">invalid profile</doc>
       </member>
       <member name="avp"
               value="1"
               c:identifier="GST_RTP_PROFILE_AVP"
               glib:nick="avp">
-        <doc xml:space="preserve">the Audio/Visual profile (RFC 3551)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpdefs.h"
+             line="41">the Audio/Visual profile (RFC 3551)</doc>
       </member>
       <member name="savp"
               value="2"
               c:identifier="GST_RTP_PROFILE_SAVP"
               glib:nick="savp">
-        <doc xml:space="preserve">the secure Audio/Visual profile (RFC 3711)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpdefs.h"
+             line="42">the secure Audio/Visual profile (RFC 3711)</doc>
       </member>
       <member name="avpf"
               value="3"
               c:identifier="GST_RTP_PROFILE_AVPF"
               glib:nick="avpf">
-        <doc xml:space="preserve">the Audio/Visual profile with feedback (RFC 4585)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpdefs.h"
+             line="43">the Audio/Visual profile with feedback (RFC 4585)</doc>
       </member>
       <member name="savpf"
               value="4"
               c:identifier="GST_RTP_PROFILE_SAVPF"
               glib:nick="savpf">
-        <doc xml:space="preserve">the secure Audio/Visual profile with feedback (RFC 5124)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpdefs.h"
+             line="44">the secure Audio/Visual profile with feedback (RFC 5124)</doc>
       </member>
     </enumeration>
     <record name="RTPSourceMeta" c:type="GstRTPSourceMeta" version="1.16">
-      <doc xml:space="preserve">Meta describing the source(s) of the buffer.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtp/gstrtpmeta.h"
+           line="34">Meta describing the source(s) of the buffer.</doc>
+      <source-position filename="gst-libs/gst/rtp/gstrtpmeta.h" line="54"/>
       <field name="meta" writable="1">
-        <doc xml:space="preserve">parent #GstMeta</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpmeta.h"
+             line="36">parent #GstMeta</doc>
         <type name="Gst.Meta" c:type="GstMeta"/>
       </field>
       <field name="ssrc" writable="1">
-        <doc xml:space="preserve">the SSRC</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpmeta.h"
+             line="37">the SSRC</doc>
         <type name="guint32" c:type="guint32"/>
       </field>
       <field name="ssrc_valid" writable="1">
-        <doc xml:space="preserve">whether @ssrc is set and valid</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpmeta.h"
+             line="38">whether @ssrc is set and valid</doc>
         <type name="gboolean" c:type="gboolean"/>
       </field>
       <field name="csrc" writable="1">
-        <doc xml:space="preserve">pointer to the CSRCs</doc>
-        <array zero-terminated="0" c:type="guint32" fixed-size="15">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpmeta.h"
+             line="39">pointer to the CSRCs</doc>
+        <array zero-terminated="0" fixed-size="15">
           <type name="guint32" c:type="guint32"/>
         </array>
       </field>
       <field name="csrc_count" writable="1">
-        <doc xml:space="preserve">number of elements in @csrc</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpmeta.h"
+             line="40">number of elements in @csrc</doc>
         <type name="guint" c:type="guint"/>
       </field>
       <method name="append_csrc"
               c:identifier="gst_rtp_source_meta_append_csrc"
               version="1.16">
-        <doc xml:space="preserve">Appends @csrc to the list of contributing sources in @meta.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if all elements in @csrc was added, %FALSE otherwise.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpmeta.c"
+             line="161">Appends @csrc to the list of contributing sources in @meta.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtpmeta.h" line="72"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpmeta.c"
+               line="169">%TRUE if all elements in @csrc was added, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="meta" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTPSourceMeta</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpmeta.c"
+                 line="163">a #GstRTPSourceMeta</doc>
             <type name="RTPSourceMeta" c:type="GstRTPSourceMeta*"/>
           </instance-parameter>
           <parameter name="csrc" transfer-ownership="none">
-            <doc xml:space="preserve">the csrcs to append</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpmeta.c"
+                 line="164">the csrcs to append</doc>
             <type name="guint32" c:type="const guint32*"/>
           </parameter>
           <parameter name="csrc_count" transfer-ownership="none">
-            <doc xml:space="preserve">number of elements in @csrc</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpmeta.c"
+                 line="165">number of elements in @csrc</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
@@ -4755,14 +6864,21 @@ types specified with @payload_type.</doc>
       <method name="get_source_count"
               c:identifier="gst_rtp_source_meta_get_source_count"
               version="1.16">
-        <doc xml:space="preserve">Count the total number of RTP sources found in @meta, both SSRC and CSRC.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The number of RTP sources</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpmeta.c"
+             line="117">Count the total number of RTP sources found in @meta, both SSRC and CSRC.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtpmeta.h" line="66"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpmeta.c"
+               line="123">The number of RTP sources</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="meta" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTPSourceMeta</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpmeta.c"
+                 line="119">a #GstRTPSourceMeta</doc>
             <type name="RTPSourceMeta" c:type="const GstRTPSourceMeta*"/>
           </instance-parameter>
         </parameters>
@@ -4770,265 +6886,577 @@ types specified with @payload_type.</doc>
       <method name="set_ssrc"
               c:identifier="gst_rtp_source_meta_set_ssrc"
               version="1.16">
-        <doc xml:space="preserve">Sets @ssrc in @meta. If @ssrc is %NULL the ssrc of @meta will be unset.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE on success, %FALSE otherwise.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpmeta.c"
+             line="137">Sets @ssrc in @meta. If @ssrc is %NULL the ssrc of @meta will be unset.</doc>
+        <source-position filename="gst-libs/gst/rtp/gstrtpmeta.h" line="69"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpmeta.c"
+               line="144">%TRUE on success, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="meta" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTPSourceMeta</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpmeta.c"
+                 line="139">a #GstRTPSourceMeta</doc>
             <type name="RTPSourceMeta" c:type="GstRTPSourceMeta*"/>
           </instance-parameter>
           <parameter name="ssrc"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">pointer to the SSRC</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtp/gstrtpmeta.c"
+                 line="140">pointer to the SSRC</doc>
             <type name="guint32" c:type="guint32*"/>
           </parameter>
         </parameters>
       </method>
       <function name="get_info" c:identifier="gst_rtp_source_meta_get_info">
+        <source-position filename="gst-libs/gst/rtp/gstrtpmeta.h" line="75"/>
         <return-value transfer-ownership="none">
           <type name="Gst.MetaInfo" c:type="const GstMetaInfo*"/>
         </return-value>
       </function>
     </record>
+    <function-macro name="RTP_BASE_AUDIO_PAYLOAD"
+                    c:identifier="GST_RTP_BASE_AUDIO_PAYLOAD"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/rtp/gstrtpbaseaudiopayload.h"
+                       line="35"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="RTP_BASE_AUDIO_PAYLOAD_CAST"
+                    c:identifier="GST_RTP_BASE_AUDIO_PAYLOAD_CAST"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/rtp/gstrtpbaseaudiopayload.h"
+                       line="45"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="RTP_BASE_AUDIO_PAYLOAD_CLASS"
+                    c:identifier="GST_RTP_BASE_AUDIO_PAYLOAD_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/rtp/gstrtpbaseaudiopayload.h"
+                       line="38"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="RTP_BASE_DEPAYLOAD"
+                    c:identifier="GST_RTP_BASE_DEPAYLOAD"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/rtp/gstrtpbasedepayload.h"
+                       line="29"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="RTP_BASE_DEPAYLOAD_CAST"
+                    c:identifier="GST_RTP_BASE_DEPAYLOAD_CAST"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/rtp/gstrtpbasedepayload.h"
+                       line="39"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="RTP_BASE_DEPAYLOAD_CLASS"
+                    c:identifier="GST_RTP_BASE_DEPAYLOAD_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/rtp/gstrtpbasedepayload.h"
+                       line="31"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="RTP_BASE_DEPAYLOAD_GET_CLASS"
+                    c:identifier="GST_RTP_BASE_DEPAYLOAD_GET_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/rtp/gstrtpbasedepayload.h"
+                       line="33"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="RTP_BASE_DEPAYLOAD_SINKPAD"
+                    c:identifier="GST_RTP_BASE_DEPAYLOAD_SINKPAD"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/rtp/gstrtpbasedepayload.h"
+                       line="41"/>
+      <parameters>
+        <parameter name="depayload">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="RTP_BASE_DEPAYLOAD_SRCPAD"
+                    c:identifier="GST_RTP_BASE_DEPAYLOAD_SRCPAD"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/rtp/gstrtpbasedepayload.h"
+                       line="42"/>
+      <parameters>
+        <parameter name="depayload">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="RTP_BASE_PAYLOAD"
+                    c:identifier="GST_RTP_BASE_PAYLOAD"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/rtp/gstrtpbasepayload.h"
+                       line="29"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="RTP_BASE_PAYLOAD_CAST"
+                    c:identifier="GST_RTP_BASE_PAYLOAD_CAST"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/rtp/gstrtpbasepayload.h"
+                       line="39"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="RTP_BASE_PAYLOAD_CLASS"
+                    c:identifier="GST_RTP_BASE_PAYLOAD_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/rtp/gstrtpbasepayload.h"
+                       line="31"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="RTP_BASE_PAYLOAD_GET_CLASS"
+                    c:identifier="GST_RTP_BASE_PAYLOAD_GET_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/rtp/gstrtpbasepayload.h"
+                       line="33"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="RTP_BASE_PAYLOAD_MTU"
+                    c:identifier="GST_RTP_BASE_PAYLOAD_MTU"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtp/gstrtpbasepayload.h"
+           line="69">Get access to the configured MTU of @payload.</doc>
+      <source-position filename="gst-libs/gst/rtp/gstrtpbasepayload.h"
+                       line="74"/>
+      <parameters>
+        <parameter name="payload">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbasepayload.h"
+               line="71">a #GstRTPBasePayload</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="RTP_BASE_PAYLOAD_PT"
+                    c:identifier="GST_RTP_BASE_PAYLOAD_PT"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtp/gstrtpbasepayload.h"
+           line="62">Get access to the configured payload type of @payload.</doc>
+      <source-position filename="gst-libs/gst/rtp/gstrtpbasepayload.h"
+                       line="67"/>
+      <parameters>
+        <parameter name="payload">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbasepayload.h"
+               line="64">a #GstRTPBasePayload</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="RTP_BASE_PAYLOAD_SINKPAD"
+                    c:identifier="GST_RTP_BASE_PAYLOAD_SINKPAD"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtp/gstrtpbasepayload.h"
+           line="47">Get access to the sinkpad of @payload.</doc>
+      <source-position filename="gst-libs/gst/rtp/gstrtpbasepayload.h"
+                       line="52"/>
+      <parameters>
+        <parameter name="payload">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbasepayload.h"
+               line="49">a #GstRTPBasePayload</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="RTP_BASE_PAYLOAD_SRCPAD"
+                    c:identifier="GST_RTP_BASE_PAYLOAD_SRCPAD"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtp/gstrtpbasepayload.h"
+           line="54">Get access to the srcpad of @payload.</doc>
+      <source-position filename="gst-libs/gst/rtp/gstrtpbasepayload.h"
+                       line="59"/>
+      <parameters>
+        <parameter name="payload">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbasepayload.h"
+               line="56">a #GstRTPBasePayload</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
     <constant name="RTP_HDREXT_BASE"
               value="urn:ietf:params:rtp-hdrext:"
               c:type="GST_RTP_HDREXT_BASE">
+      <source-position filename="gst-libs/gst/rtp/gstrtphdrext.h" line="30"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="RTP_HDREXT_NTP_56"
               value="ntp-56"
               c:type="GST_RTP_HDREXT_NTP_56">
+      <source-position filename="gst-libs/gst/rtp/gstrtphdrext.h" line="43"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="RTP_HDREXT_NTP_56_SIZE"
               value="7"
               c:type="GST_RTP_HDREXT_NTP_56_SIZE">
+      <source-position filename="gst-libs/gst/rtp/gstrtphdrext.h" line="45"/>
       <type name="gint" c:type="gint"/>
     </constant>
     <constant name="RTP_HDREXT_NTP_64"
               value="ntp-64"
               c:type="GST_RTP_HDREXT_NTP_64">
+      <source-position filename="gst-libs/gst/rtp/gstrtphdrext.h" line="33"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="RTP_HDREXT_NTP_64_SIZE"
               value="8"
               c:type="GST_RTP_HDREXT_NTP_64_SIZE">
+      <source-position filename="gst-libs/gst/rtp/gstrtphdrext.h" line="35"/>
       <type name="gint" c:type="gint"/>
     </constant>
     <constant name="RTP_PAYLOAD_1016_STRING"
               value="1"
               c:type="GST_RTP_PAYLOAD_1016_STRING">
+      <source-position filename="gst-libs/gst/rtp/gstrtppayloads.h"
+                       line="124"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="RTP_PAYLOAD_CELLB_STRING"
               value="25"
               c:type="GST_RTP_PAYLOAD_CELLB_STRING">
+      <source-position filename="gst-libs/gst/rtp/gstrtppayloads.h"
+                       line="143"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="RTP_PAYLOAD_CN_STRING"
               value="13"
               c:type="GST_RTP_PAYLOAD_CN_STRING">
+      <source-position filename="gst-libs/gst/rtp/gstrtppayloads.h"
+                       line="136"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="RTP_PAYLOAD_DVI4_11025_STRING"
               value="16"
               c:type="GST_RTP_PAYLOAD_DVI4_11025_STRING">
+      <source-position filename="gst-libs/gst/rtp/gstrtppayloads.h"
+                       line="139"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="RTP_PAYLOAD_DVI4_16000_STRING"
               value="6"
               c:type="GST_RTP_PAYLOAD_DVI4_16000_STRING">
+      <source-position filename="gst-libs/gst/rtp/gstrtppayloads.h"
+                       line="129"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="RTP_PAYLOAD_DVI4_22050_STRING"
               value="17"
               c:type="GST_RTP_PAYLOAD_DVI4_22050_STRING">
+      <source-position filename="gst-libs/gst/rtp/gstrtppayloads.h"
+                       line="140"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="RTP_PAYLOAD_DVI4_8000_STRING"
               value="5"
               c:type="GST_RTP_PAYLOAD_DVI4_8000_STRING">
+      <source-position filename="gst-libs/gst/rtp/gstrtppayloads.h"
+                       line="128"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="RTP_PAYLOAD_DYNAMIC_STRING"
               value="[96, 127]"
               c:type="GST_RTP_PAYLOAD_DYNAMIC_STRING">
+      <source-position filename="gst-libs/gst/rtp/gstrtppayloads.h"
+                       line="152"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="RTP_PAYLOAD_G721_STRING"
               value="2"
               c:type="GST_RTP_PAYLOAD_G721_STRING">
+      <source-position filename="gst-libs/gst/rtp/gstrtppayloads.h"
+                       line="125"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="RTP_PAYLOAD_G722_STRING"
               value="9"
               c:type="GST_RTP_PAYLOAD_G722_STRING">
+      <source-position filename="gst-libs/gst/rtp/gstrtppayloads.h"
+                       line="132"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="RTP_PAYLOAD_G723_53"
               value="17"
               c:type="GST_RTP_PAYLOAD_G723_53">
+      <source-position filename="gst-libs/gst/rtp/gstrtppayloads.h"
+                       line="111"/>
       <type name="gint" c:type="gint"/>
     </constant>
     <constant name="RTP_PAYLOAD_G723_53_STRING"
               value="17"
               c:type="GST_RTP_PAYLOAD_G723_53_STRING">
+      <source-position filename="gst-libs/gst/rtp/gstrtppayloads.h"
+                       line="116"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="RTP_PAYLOAD_G723_63"
               value="16"
               c:type="GST_RTP_PAYLOAD_G723_63">
+      <source-position filename="gst-libs/gst/rtp/gstrtppayloads.h"
+                       line="110"/>
       <type name="gint" c:type="gint"/>
     </constant>
     <constant name="RTP_PAYLOAD_G723_63_STRING"
               value="16"
               c:type="GST_RTP_PAYLOAD_G723_63_STRING">
+      <source-position filename="gst-libs/gst/rtp/gstrtppayloads.h"
+                       line="115"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="RTP_PAYLOAD_G723_STRING"
               value="4"
               c:type="GST_RTP_PAYLOAD_G723_STRING">
+      <source-position filename="gst-libs/gst/rtp/gstrtppayloads.h"
+                       line="127"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="RTP_PAYLOAD_G728_STRING"
               value="15"
               c:type="GST_RTP_PAYLOAD_G728_STRING">
+      <source-position filename="gst-libs/gst/rtp/gstrtppayloads.h"
+                       line="138"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="RTP_PAYLOAD_G729_STRING"
               value="18"
               c:type="GST_RTP_PAYLOAD_G729_STRING">
+      <source-position filename="gst-libs/gst/rtp/gstrtppayloads.h"
+                       line="141"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="RTP_PAYLOAD_GSM_STRING"
               value="3"
               c:type="GST_RTP_PAYLOAD_GSM_STRING">
+      <source-position filename="gst-libs/gst/rtp/gstrtppayloads.h"
+                       line="126"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="RTP_PAYLOAD_H261_STRING"
               value="31"
               c:type="GST_RTP_PAYLOAD_H261_STRING">
+      <source-position filename="gst-libs/gst/rtp/gstrtppayloads.h"
+                       line="147"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="RTP_PAYLOAD_H263_STRING"
               value="34"
               c:type="GST_RTP_PAYLOAD_H263_STRING">
+      <source-position filename="gst-libs/gst/rtp/gstrtppayloads.h"
+                       line="150"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
+    <function-macro name="RTP_PAYLOAD_IS_DYNAMIC"
+                    c:identifier="GST_RTP_PAYLOAD_IS_DYNAMIC"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtp/gstrtppayloads.h"
+           line="154">Check if @pt is a dynamic payload type.</doc>
+      <source-position filename="gst-libs/gst/rtp/gstrtppayloads.h"
+                       line="160"/>
+      <parameters>
+        <parameter name="pt">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtppayloads.h"
+               line="156">a payload type</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
     <constant name="RTP_PAYLOAD_JPEG_STRING"
               value="26"
               c:type="GST_RTP_PAYLOAD_JPEG_STRING">
+      <source-position filename="gst-libs/gst/rtp/gstrtppayloads.h"
+                       line="144"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="RTP_PAYLOAD_L16_MONO_STRING"
               value="11"
               c:type="GST_RTP_PAYLOAD_L16_MONO_STRING">
+      <source-position filename="gst-libs/gst/rtp/gstrtppayloads.h"
+                       line="134"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="RTP_PAYLOAD_L16_STEREO_STRING"
               value="10"
               c:type="GST_RTP_PAYLOAD_L16_STEREO_STRING">
+      <source-position filename="gst-libs/gst/rtp/gstrtppayloads.h"
+                       line="133"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="RTP_PAYLOAD_LPC_STRING"
               value="7"
               c:type="GST_RTP_PAYLOAD_LPC_STRING">
+      <source-position filename="gst-libs/gst/rtp/gstrtppayloads.h"
+                       line="130"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="RTP_PAYLOAD_MP2T_STRING"
               value="33"
               c:type="GST_RTP_PAYLOAD_MP2T_STRING">
+      <source-position filename="gst-libs/gst/rtp/gstrtppayloads.h"
+                       line="149"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="RTP_PAYLOAD_MPA_STRING"
               value="14"
               c:type="GST_RTP_PAYLOAD_MPA_STRING">
+      <source-position filename="gst-libs/gst/rtp/gstrtppayloads.h"
+                       line="137"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="RTP_PAYLOAD_MPV_STRING"
               value="32"
               c:type="GST_RTP_PAYLOAD_MPV_STRING">
+      <source-position filename="gst-libs/gst/rtp/gstrtppayloads.h"
+                       line="148"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="RTP_PAYLOAD_NV_STRING"
               value="28"
               c:type="GST_RTP_PAYLOAD_NV_STRING">
+      <source-position filename="gst-libs/gst/rtp/gstrtppayloads.h"
+                       line="145"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="RTP_PAYLOAD_PCMA_STRING"
               value="8"
               c:type="GST_RTP_PAYLOAD_PCMA_STRING">
+      <source-position filename="gst-libs/gst/rtp/gstrtppayloads.h"
+                       line="131"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="RTP_PAYLOAD_PCMU_STRING"
               value="0"
               c:type="GST_RTP_PAYLOAD_PCMU_STRING">
+      <source-position filename="gst-libs/gst/rtp/gstrtppayloads.h"
+                       line="123"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="RTP_PAYLOAD_QCELP_STRING"
               value="12"
               c:type="GST_RTP_PAYLOAD_QCELP_STRING">
+      <source-position filename="gst-libs/gst/rtp/gstrtppayloads.h"
+                       line="135"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="RTP_PAYLOAD_TS41" value="19" c:type="GST_RTP_PAYLOAD_TS41">
+      <source-position filename="gst-libs/gst/rtp/gstrtppayloads.h"
+                       line="113"/>
       <type name="gint" c:type="gint"/>
     </constant>
     <constant name="RTP_PAYLOAD_TS41_STRING"
               value="19"
               c:type="GST_RTP_PAYLOAD_TS41_STRING">
+      <source-position filename="gst-libs/gst/rtp/gstrtppayloads.h"
+                       line="118"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="RTP_PAYLOAD_TS48" value="18" c:type="GST_RTP_PAYLOAD_TS48">
+      <source-position filename="gst-libs/gst/rtp/gstrtppayloads.h"
+                       line="112"/>
       <type name="gint" c:type="gint"/>
     </constant>
     <constant name="RTP_PAYLOAD_TS48_STRING"
               value="18"
               c:type="GST_RTP_PAYLOAD_TS48_STRING">
+      <source-position filename="gst-libs/gst/rtp/gstrtppayloads.h"
+                       line="117"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="RTP_SOURCE_META_MAX_CSRC_COUNT"
               value="15"
               c:type="GST_RTP_SOURCE_META_MAX_CSRC_COUNT">
+      <source-position filename="gst-libs/gst/rtp/gstrtpmeta.h" line="32"/>
       <type name="gint" c:type="gint"/>
     </constant>
     <constant name="RTP_VERSION" value="2" c:type="GST_RTP_VERSION">
-      <doc xml:space="preserve">The supported RTP version 2.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtp/gstrtpbuffer.h"
+           line="32">The supported RTP version 2.</doc>
+      <source-position filename="gst-libs/gst/rtp/gstrtpbuffer.h" line="37"/>
       <type name="gint" c:type="gint"/>
     </constant>
     <function name="buffer_add_rtp_source_meta"
               c:identifier="gst_buffer_add_rtp_source_meta"
               version="1.16">
-      <doc xml:space="preserve">Attaches RTP source information to @buffer.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtp/gstrtpmeta.c"
+           line="34">Attaches RTP source information to @buffer.</doc>
+      <source-position filename="gst-libs/gst/rtp/gstrtpmeta.h" line="60"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">the #GstRTPSourceMeta on @buffer.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpmeta.c"
+             line="43">the #GstRTPSourceMeta on @buffer.</doc>
         <type name="RTPSourceMeta" c:type="GstRTPSourceMeta*"/>
       </return-value>
       <parameters>
         <parameter name="buffer" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstBuffer</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpmeta.c"
+               line="36">a #GstBuffer</doc>
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </parameter>
         <parameter name="ssrc"
                    transfer-ownership="none"
                    nullable="1"
                    allow-none="1">
-          <doc xml:space="preserve">pointer to the SSRC</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpmeta.c"
+               line="37">pointer to the SSRC</doc>
           <type name="guint32" c:type="const guint32*"/>
         </parameter>
         <parameter name="csrc"
                    transfer-ownership="none"
                    nullable="1"
                    allow-none="1">
-          <doc xml:space="preserve">pointer to the CSRCs</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpmeta.c"
+               line="38">pointer to the CSRCs</doc>
           <type name="guint32" c:type="const guint32*"/>
         </parameter>
         <parameter name="csrc_count" transfer-ownership="none">
-          <doc xml:space="preserve">number of elements in @csrc</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpmeta.c"
+               line="39">number of elements in @csrc</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
       </parameters>
@@ -5036,15 +7464,22 @@ types specified with @payload_type.</doc>
     <function name="buffer_get_rtp_source_meta"
               c:identifier="gst_buffer_get_rtp_source_meta"
               version="1.16">
-      <doc xml:space="preserve">Find the #GstRTPSourceMeta on @buffer.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtp/gstrtpmeta.c"
+           line="78">Find the #GstRTPSourceMeta on @buffer.</doc>
+      <source-position filename="gst-libs/gst/rtp/gstrtpmeta.h" line="63"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">the #GstRTPSourceMeta or %NULL when there
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpmeta.c"
+             line="84">the #GstRTPSourceMeta or %NULL when there
 is no such metadata on @buffer.</doc>
         <type name="RTPSourceMeta" c:type="GstRTPSourceMeta*"/>
       </return-value>
       <parameters>
         <parameter name="buffer" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstBuffer</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpmeta.c"
+               line="80">a #GstBuffer</doc>
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </parameter>
       </parameters>
@@ -5052,22 +7487,31 @@ is no such metadata on @buffer.</doc>
     <function name="rtcp_buffer_map"
               c:identifier="gst_rtcp_buffer_map"
               moved-to="RTCPBuffer.map">
-      <doc xml:space="preserve">Open @buffer for reading or writing, depending on @flags. The resulting RTCP
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+           line="297">Open @buffer for reading or writing, depending on @flags. The resulting RTCP
 buffer state is stored in @rtcp.</doc>
+      <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h" line="283"/>
       <return-value transfer-ownership="none">
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="buffer" transfer-ownership="none">
-          <doc xml:space="preserve">a buffer with an RTCP packet</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="299">a buffer with an RTCP packet</doc>
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </parameter>
         <parameter name="flags" transfer-ownership="none">
-          <doc xml:space="preserve">flags for the mapping</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="300">flags for the mapping</doc>
           <type name="Gst.MapFlags" c:type="GstMapFlags"/>
         </parameter>
         <parameter name="rtcp" transfer-ownership="none">
-          <doc xml:space="preserve">resulting #GstRTCPBuffer</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="301">resulting #GstRTCPBuffer</doc>
           <type name="RTCPBuffer" c:type="GstRTCPBuffer*"/>
         </parameter>
       </parameters>
@@ -5075,15 +7519,22 @@ buffer state is stored in @rtcp.</doc>
     <function name="rtcp_buffer_new"
               c:identifier="gst_rtcp_buffer_new"
               moved-to="RTCPBuffer.new">
-      <doc xml:space="preserve">Create a new buffer for constructing RTCP packets. The packet will have a
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+           line="273">Create a new buffer for constructing RTCP packets. The packet will have a
 maximum size of @mtu.</doc>
+      <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h" line="280"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">A newly allocated buffer.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="280">A newly allocated buffer.</doc>
         <type name="Gst.Buffer" c:type="GstBuffer*"/>
       </return-value>
       <parameters>
         <parameter name="mtu" transfer-ownership="none">
-          <doc xml:space="preserve">the maximum mtu size.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="275">the maximum mtu size.</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
       </parameters>
@@ -5091,22 +7542,31 @@ maximum size of @mtu.</doc>
     <function name="rtcp_buffer_new_copy_data"
               c:identifier="gst_rtcp_buffer_new_copy_data"
               moved-to="RTCPBuffer.new_copy_data">
-      <doc xml:space="preserve">Create a new buffer and set the data to a copy of @len
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+           line="73">Create a new buffer and set the data to a copy of @len
 bytes of @data and the size to @len. The data will be freed when the buffer
 is freed.</doc>
+      <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h" line="264"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">A newly allocated buffer with a copy of @data and of size @len.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="82">A newly allocated buffer with a copy of @data and of size @len.</doc>
         <type name="Gst.Buffer" c:type="GstBuffer*"/>
       </return-value>
       <parameters>
         <parameter name="data" transfer-ownership="none">
-          <doc xml:space="preserve">data for the new buffer</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="75">data for the new buffer</doc>
           <array length="1" zero-terminated="0" c:type="gconstpointer">
             <type name="guint8"/>
           </array>
         </parameter>
         <parameter name="len" transfer-ownership="none">
-          <doc xml:space="preserve">the length of data</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="76">the length of data</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
       </parameters>
@@ -5114,22 +7574,31 @@ is freed.</doc>
     <function name="rtcp_buffer_new_take_data"
               c:identifier="gst_rtcp_buffer_new_take_data"
               moved-to="RTCPBuffer.new_take_data">
-      <doc xml:space="preserve">Create a new buffer and set the data and size of the buffer to @data and @len
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+           line="49">Create a new buffer and set the data and size of the buffer to @data and @len
 respectively. @data will be freed when the buffer is unreffed, so this
 function transfers ownership of @data to the new buffer.</doc>
+      <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h" line="261"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">A newly allocated buffer with @data and of size @len.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="58">A newly allocated buffer with @data and of size @len.</doc>
         <type name="Gst.Buffer" c:type="GstBuffer*"/>
       </return-value>
       <parameters>
         <parameter name="data" transfer-ownership="none">
-          <doc xml:space="preserve">data for the new buffer</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="51">data for the new buffer</doc>
           <array length="1" zero-terminated="0" c:type="gpointer">
             <type name="guint8"/>
           </array>
         </parameter>
         <parameter name="len" transfer-ownership="none">
-          <doc xml:space="preserve">the length of data</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="52">the length of data</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
       </parameters>
@@ -5137,15 +7606,22 @@ function transfers ownership of @data to the new buffer.</doc>
     <function name="rtcp_buffer_validate"
               c:identifier="gst_rtcp_buffer_validate"
               moved-to="RTCPBuffer.validate">
-      <doc xml:space="preserve">Check if the data pointed to by @buffer is a valid RTCP packet using
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+           line="249">Check if the data pointed to by @buffer is a valid RTCP packet using
 gst_rtcp_buffer_validate_data().</doc>
+      <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h" line="270"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">TRUE if @buffer is a valid RTCP packet.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="256">TRUE if @buffer is a valid RTCP packet.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="buffer" transfer-ownership="none">
-          <doc xml:space="preserve">the buffer to validate</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="251">the buffer to validate</doc>
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </parameter>
       </parameters>
@@ -5153,23 +7629,32 @@ gst_rtcp_buffer_validate_data().</doc>
     <function name="rtcp_buffer_validate_data"
               c:identifier="gst_rtcp_buffer_validate_data"
               moved-to="RTCPBuffer.validate_data">
-      <doc xml:space="preserve">Check if the @data and @size point to the data of a valid compound,
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+           line="204">Check if the @data and @size point to the data of a valid compound,
 non-reduced size RTCP packet.
 Use this function to validate a packet before using the other functions in
 this module.</doc>
+      <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h" line="267"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">TRUE if the data points to a valid RTCP packet.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="214">TRUE if the data points to a valid RTCP packet.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="data" transfer-ownership="none">
-          <doc xml:space="preserve">the data to validate</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="206">the data to validate</doc>
           <array length="1" zero-terminated="0" c:type="guint8*">
             <type name="guint8" c:type="guint8"/>
           </array>
         </parameter>
         <parameter name="len" transfer-ownership="none">
-          <doc xml:space="preserve">the length of @data to validate</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="207">the length of @data to validate</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
       </parameters>
@@ -5178,26 +7663,35 @@ this module.</doc>
               c:identifier="gst_rtcp_buffer_validate_data_reduced"
               moved-to="RTCPBuffer.validate_data_reduced"
               version="1.6">
-      <doc xml:space="preserve">Check if the @data and @size point to the data of a valid RTCP packet.
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+           line="180">Check if the @data and @size point to the data of a valid RTCP packet.
 Use this function to validate a packet before using the other functions in
 this module.
 
 This function is updated to support reduced size rtcp packets according to
 RFC 5506 and will validate full compound RTCP packets as well as reduced
 size RTCP packets.</doc>
+      <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h" line="273"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">TRUE if the data points to a valid RTCP packet.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="193">TRUE if the data points to a valid RTCP packet.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="data" transfer-ownership="none">
-          <doc xml:space="preserve">the data to validate</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="182">the data to validate</doc>
           <array length="1" zero-terminated="0" c:type="guint8*">
             <type name="guint8" c:type="guint8"/>
           </array>
         </parameter>
         <parameter name="len" transfer-ownership="none">
-          <doc xml:space="preserve">the length of @data to validate</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="183">the length of @data to validate</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
       </parameters>
@@ -5206,79 +7700,114 @@ size RTCP packets.</doc>
               c:identifier="gst_rtcp_buffer_validate_reduced"
               moved-to="RTCPBuffer.validate_reduced"
               version="1.6">
-      <doc xml:space="preserve">Check if the data pointed to by @buffer is a valid RTCP packet using
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+           line="223">Check if the data pointed to by @buffer is a valid RTCP packet using
 gst_rtcp_buffer_validate_reduced().</doc>
+      <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h" line="276"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">TRUE if @buffer is a valid RTCP packet.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="230">TRUE if @buffer is a valid RTCP packet.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="buffer" transfer-ownership="none">
-          <doc xml:space="preserve">the buffer to validate</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="225">the buffer to validate</doc>
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </parameter>
       </parameters>
     </function>
     <function name="rtcp_ntp_to_unix" c:identifier="gst_rtcp_ntp_to_unix">
-      <doc xml:space="preserve">Converts an NTP time to UNIX nanoseconds. @ntptime can typically be
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+           line="2103">Converts an NTP time to UNIX nanoseconds. @ntptime can typically be
 the NTP time of an SR RTCP message and contains, in the upper 32 bits, the
 number of seconds since 1900 and, in the lower 32 bits, the fractional
 seconds. The resulting value will be the number of nanoseconds since 1970.</doc>
+      <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h" line="502"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">the UNIX time for @ntptime in nanoseconds.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="2112">the UNIX time for @ntptime in nanoseconds.</doc>
         <type name="guint64" c:type="guint64"/>
       </return-value>
       <parameters>
         <parameter name="ntptime" transfer-ownership="none">
-          <doc xml:space="preserve">an NTP timestamp</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="2105">an NTP timestamp</doc>
           <type name="guint64" c:type="guint64"/>
         </parameter>
       </parameters>
     </function>
     <function name="rtcp_sdes_name_to_type"
               c:identifier="gst_rtcp_sdes_name_to_type">
-      <doc xml:space="preserve">Convert @name into a @GstRTCPSDESType. @name is typically a key in a
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+           line="2205">Convert @name into a @GstRTCPSDESType. @name is typically a key in a
 #GstStructure containing SDES items.</doc>
+      <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h" line="511"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">the #GstRTCPSDESType for @name or #GST_RTCP_SDES_PRIV when @name
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="2212">the #GstRTCPSDESType for @name or #GST_RTCP_SDES_PRIV when @name
 is a private sdes item.</doc>
         <type name="RTCPSDESType" c:type="GstRTCPSDESType"/>
       </return-value>
       <parameters>
         <parameter name="name" transfer-ownership="none">
-          <doc xml:space="preserve">a SDES name</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="2207">a SDES name</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
       </parameters>
     </function>
     <function name="rtcp_sdes_type_to_name"
               c:identifier="gst_rtcp_sdes_type_to_name">
-      <doc xml:space="preserve">Converts @type to the string equivalent. The string is typically used as a
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+           line="2159">Converts @type to the string equivalent. The string is typically used as a
 key in a #GstStructure containing SDES items.</doc>
+      <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h" line="508"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">the string equivalent of @type</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="2166">the string equivalent of @type</doc>
         <type name="utf8" c:type="const gchar*"/>
       </return-value>
       <parameters>
         <parameter name="type" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstRTCPSDESType</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="2161">a #GstRTCPSDESType</doc>
           <type name="RTCPSDESType" c:type="GstRTCPSDESType"/>
         </parameter>
       </parameters>
     </function>
     <function name="rtcp_unix_to_ntp" c:identifier="gst_rtcp_unix_to_ntp">
-      <doc xml:space="preserve">Converts a UNIX timestamp in nanoseconds to an NTP time. The caller should
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+           line="2130">Converts a UNIX timestamp in nanoseconds to an NTP time. The caller should
 pass a value with nanoseconds since 1970. The NTP time will, in the upper
 32 bits, contain the number of seconds since 1900 and, in the lower 32
 bits, the fractional seconds. The resulting value can be used as an ntptime
 for constructing SR RTCP packets.</doc>
+      <source-position filename="gst-libs/gst/rtp/gstrtcpbuffer.h" line="505"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">the NTP time for @unixtime.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+             line="2140">the NTP time for @unixtime.</doc>
         <type name="guint64" c:type="guint64"/>
       </return-value>
       <parameters>
         <parameter name="unixtime" transfer-ownership="none">
-          <doc xml:space="preserve">an UNIX timestamp in nanoseconds</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtcpbuffer.c"
+               line="2132">an UNIX timestamp in nanoseconds</doc>
           <type name="guint64" c:type="guint64"/>
         </parameter>
       </parameters>
@@ -5286,29 +7815,40 @@ for constructing SR RTCP packets.</doc>
     <function name="rtp_buffer_allocate_data"
               c:identifier="gst_rtp_buffer_allocate_data"
               moved-to="RTPBuffer.allocate_data">
-      <doc xml:space="preserve">Allocate enough data in @buffer to hold an RTP packet with @csrc_count CSRCs,
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+           line="85">Allocate enough data in @buffer to hold an RTP packet with @csrc_count CSRCs,
 a payload length of @payload_len and padding of @pad_len.
 @buffer must be writable and all previous memory in @buffer will be freed.
 If @pad_len is &gt;0, the padding bit will be set. All other RTP header fields
 will be set to 0/FALSE.</doc>
+      <source-position filename="gst-libs/gst/rtp/gstrtpbuffer.h" line="68"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="buffer" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstBuffer</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+               line="87">a #GstBuffer</doc>
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </parameter>
         <parameter name="payload_len" transfer-ownership="none">
-          <doc xml:space="preserve">the length of the payload</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+               line="88">the length of the payload</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
         <parameter name="pad_len" transfer-ownership="none">
-          <doc xml:space="preserve">the amount of padding</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+               line="89">the amount of padding</doc>
           <type name="guint8" c:type="guint8"/>
         </parameter>
         <parameter name="csrc_count" transfer-ownership="none">
-          <doc xml:space="preserve">the number of CSRC entries</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+               line="90">the number of CSRC entries</doc>
           <type name="guint8" c:type="guint8"/>
         </parameter>
       </parameters>
@@ -5316,15 +7856,22 @@ will be set to 0/FALSE.</doc>
     <function name="rtp_buffer_calc_header_len"
               c:identifier="gst_rtp_buffer_calc_header_len"
               moved-to="RTPBuffer.calc_header_len">
-      <doc xml:space="preserve">Calculate the header length of an RTP packet with @csrc_count CSRC entries.
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+           line="243">Calculate the header length of an RTP packet with @csrc_count CSRC entries.
 An RTP packet can have at most 15 CSRC entries.</doc>
+      <source-position filename="gst-libs/gst/rtp/gstrtpbuffer.h" line="84"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">The length of an RTP header with @csrc_count CSRC entries.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+             line="250">The length of an RTP header with @csrc_count CSRC entries.</doc>
         <type name="guint" c:type="guint"/>
       </return-value>
       <parameters>
         <parameter name="csrc_count" transfer-ownership="none">
-          <doc xml:space="preserve">the number of CSRC entries</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+               line="245">the number of CSRC entries</doc>
           <type name="guint8" c:type="guint8"/>
         </parameter>
       </parameters>
@@ -5332,23 +7879,34 @@ An RTP packet can have at most 15 CSRC entries.</doc>
     <function name="rtp_buffer_calc_packet_len"
               c:identifier="gst_rtp_buffer_calc_packet_len"
               moved-to="RTPBuffer.calc_packet_len">
-      <doc xml:space="preserve">Calculate the total length of an RTP packet with a payload size of @payload_len,
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+           line="260">Calculate the total length of an RTP packet with a payload size of @payload_len,
 a padding of @pad_len and a @csrc_count CSRC entries.</doc>
+      <source-position filename="gst-libs/gst/rtp/gstrtpbuffer.h" line="87"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">The total length of an RTP header with given parameters.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+             line="269">The total length of an RTP header with given parameters.</doc>
         <type name="guint" c:type="guint"/>
       </return-value>
       <parameters>
         <parameter name="payload_len" transfer-ownership="none">
-          <doc xml:space="preserve">the length of the payload</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+               line="262">the length of the payload</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
         <parameter name="pad_len" transfer-ownership="none">
-          <doc xml:space="preserve">the amount of padding</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+               line="263">the amount of padding</doc>
           <type name="guint8" c:type="guint8"/>
         </parameter>
         <parameter name="csrc_count" transfer-ownership="none">
-          <doc xml:space="preserve">the number of CSRC entries</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+               line="264">the number of CSRC entries</doc>
           <type name="guint8" c:type="guint8"/>
         </parameter>
       </parameters>
@@ -5356,23 +7914,34 @@ a padding of @pad_len and a @csrc_count CSRC entries.</doc>
     <function name="rtp_buffer_calc_payload_len"
               c:identifier="gst_rtp_buffer_calc_payload_len"
               moved-to="RTPBuffer.calc_payload_len">
-      <doc xml:space="preserve">Calculate the length of the payload of an RTP packet with size @packet_len,
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+           line="281">Calculate the length of the payload of an RTP packet with size @packet_len,
 a padding of @pad_len and a @csrc_count CSRC entries.</doc>
+      <source-position filename="gst-libs/gst/rtp/gstrtpbuffer.h" line="90"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">The length of the payload of an RTP packet  with given parameters.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+             line="290">The length of the payload of an RTP packet  with given parameters.</doc>
         <type name="guint" c:type="guint"/>
       </return-value>
       <parameters>
         <parameter name="packet_len" transfer-ownership="none">
-          <doc xml:space="preserve">the length of the total RTP packet</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+               line="283">the length of the total RTP packet</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
         <parameter name="pad_len" transfer-ownership="none">
-          <doc xml:space="preserve">the amount of padding</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+               line="284">the amount of padding</doc>
           <type name="guint8" c:type="guint8"/>
         </parameter>
         <parameter name="csrc_count" transfer-ownership="none">
-          <doc xml:space="preserve">the number of CSRC entries</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+               line="285">the number of CSRC entries</doc>
           <type name="guint8" c:type="guint8"/>
         </parameter>
       </parameters>
@@ -5380,20 +7949,29 @@ a padding of @pad_len and a @csrc_count CSRC entries.</doc>
     <function name="rtp_buffer_compare_seqnum"
               c:identifier="gst_rtp_buffer_compare_seqnum"
               moved-to="RTPBuffer.compare_seqnum">
-      <doc xml:space="preserve">Compare two sequence numbers, taking care of wraparounds. This function
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+           line="1231">Compare two sequence numbers, taking care of wraparounds. This function
 returns the difference between @seqnum1 and @seqnum2.</doc>
+      <source-position filename="gst-libs/gst/rtp/gstrtpbuffer.h" line="198"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">a negative value if @seqnum1 is bigger than @seqnum2, 0 if they
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+             line="1239">a negative value if @seqnum1 is bigger than @seqnum2, 0 if they
 are equal or a positive value if @seqnum1 is smaller than @segnum2.</doc>
         <type name="gint" c:type="gint"/>
       </return-value>
       <parameters>
         <parameter name="seqnum1" transfer-ownership="none">
-          <doc xml:space="preserve">a sequence number</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+               line="1233">a sequence number</doc>
           <type name="guint16" c:type="guint16"/>
         </parameter>
         <parameter name="seqnum2" transfer-ownership="none">
-          <doc xml:space="preserve">a sequence number</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+               line="1234">a sequence number</doc>
           <type name="guint16" c:type="guint16"/>
         </parameter>
       </parameters>
@@ -5401,15 +7979,22 @@ are equal or a positive value if @seqnum1 is smaller than @segnum2.</doc>
     <function name="rtp_buffer_default_clock_rate"
               c:identifier="gst_rtp_buffer_default_clock_rate"
               moved-to="RTPBuffer.default_clock_rate">
-      <doc xml:space="preserve">Get the default clock-rate for the static payload type @payload_type.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+           line="1204">Get the default clock-rate for the static payload type @payload_type.</doc>
+      <source-position filename="gst-libs/gst/rtp/gstrtpbuffer.h" line="195"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">the default clock rate or -1 if the payload type is not static or
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+             line="1210">the default clock rate or -1 if the payload type is not static or
 the clock-rate is undefined.</doc>
         <type name="guint32" c:type="guint32"/>
       </return-value>
       <parameters>
         <parameter name="payload_type" transfer-ownership="none">
-          <doc xml:space="preserve">the static payload type</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+               line="1206">the static payload type</doc>
           <type name="guint8" c:type="guint8"/>
         </parameter>
       </parameters>
@@ -5417,7 +8002,9 @@ the clock-rate is undefined.</doc>
     <function name="rtp_buffer_ext_timestamp"
               c:identifier="gst_rtp_buffer_ext_timestamp"
               moved-to="RTPBuffer.ext_timestamp">
-      <doc xml:space="preserve">Update the @exttimestamp field with the extended timestamp of @timestamp
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+           line="1253">Update the @exttimestamp field with the extended timestamp of @timestamp
 For the first call of the method, @exttimestamp should point to a location
 with a value of -1.
 
@@ -5425,8 +8012,11 @@ This function is able to handle both forward and backward timestamps taking
 into account:
   - timestamp wraparound making sure that the returned value is properly increased.
   - timestamp unwraparound making sure that the returned value is properly decreased.</doc>
+      <source-position filename="gst-libs/gst/rtp/gstrtpbuffer.h" line="201"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">The extended timestamp of @timestamp or 0 if the result can't go anywhere backwards.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+             line="1267">The extended timestamp of @timestamp or 0 if the result can't go anywhere backwards.</doc>
         <type name="guint64" c:type="guint64"/>
       </return-value>
       <parameters>
@@ -5434,37 +8024,117 @@ into account:
                    direction="inout"
                    caller-allocates="0"
                    transfer-ownership="full">
-          <doc xml:space="preserve">a previous extended timestamp</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+               line="1255">a previous extended timestamp</doc>
           <type name="guint64" c:type="guint64*"/>
         </parameter>
         <parameter name="timestamp" transfer-ownership="none">
-          <doc xml:space="preserve">a new timestamp</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+               line="1256">a new timestamp</doc>
           <type name="guint32" c:type="guint32"/>
         </parameter>
       </parameters>
     </function>
+    <function name="rtp_buffer_get_extension_onebyte_header_from_bytes"
+              c:identifier="gst_rtp_buffer_get_extension_onebyte_header_from_bytes"
+              moved-to="RTPBuffer.get_extension_onebyte_header_from_bytes"
+              version="1.18">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+           line="1375">Similar to gst_rtp_buffer_get_extension_onebyte_header, but working
+on the #GBytes you get from gst_rtp_buffer_get_extension_bytes.
+Parses RFC 5285 style header extensions with a one byte header. It will
+return the nth extension with the requested id.</doc>
+      <source-position filename="gst-libs/gst/rtp/gstrtpbuffer.h" line="232"/>
+      <return-value transfer-ownership="none">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+             line="1390">TRUE if @bytes had the requested header extension</doc>
+        <type name="gboolean" c:type="gboolean"/>
+      </return-value>
+      <parameters>
+        <parameter name="bytes" transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+               line="1377">#GBytes</doc>
+          <type name="GLib.Bytes" c:type="GBytes*"/>
+        </parameter>
+        <parameter name="bit_pattern" transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+               line="1378">The bit-pattern. Anything but 0xBEDE is rejected.</doc>
+          <type name="guint16" c:type="guint16"/>
+        </parameter>
+        <parameter name="id" transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+               line="1379">The ID of the header extension to be read (between 1 and 14).</doc>
+          <type name="guint8" c:type="guint8"/>
+        </parameter>
+        <parameter name="nth" transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+               line="1380">Read the nth extension packet with the requested ID</doc>
+          <type name="guint" c:type="guint"/>
+        </parameter>
+        <parameter name="data"
+                   direction="out"
+                   caller-allocates="0"
+                   transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+               line="1381">
+  location for data</doc>
+          <array length="5" zero-terminated="0" c:type="gpointer*">
+            <type name="guint8"/>
+          </array>
+        </parameter>
+        <parameter name="size"
+                   direction="out"
+                   caller-allocates="0"
+                   transfer-ownership="full">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+               line="1383">the size of the data in bytes</doc>
+          <type name="guint" c:type="guint*"/>
+        </parameter>
+      </parameters>
+    </function>
     <function name="rtp_buffer_map"
               c:identifier="gst_rtp_buffer_map"
               moved-to="RTPBuffer.map">
-      <doc xml:space="preserve">Map the contents of @buffer into @rtp.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+           line="306">Map the contents of @buffer into @rtp.</doc>
+      <source-position filename="gst-libs/gst/rtp/gstrtpbuffer.h" line="93"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE if @buffer could be mapped.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+             line="314">%TRUE if @buffer could be mapped.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="buffer" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstBuffer</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+               line="308">a #GstBuffer</doc>
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </parameter>
         <parameter name="flags" transfer-ownership="none">
-          <doc xml:space="preserve">#GstMapFlags</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+               line="309">#GstMapFlags</doc>
           <type name="Gst.MapFlags" c:type="GstMapFlags"/>
         </parameter>
         <parameter name="rtp"
                    direction="out"
                    caller-allocates="1"
                    transfer-ownership="none">
-          <doc xml:space="preserve">a #GstRTPBuffer</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+               line="310">a #GstRTPBuffer</doc>
           <type name="RTPBuffer" c:type="GstRTPBuffer*"/>
         </parameter>
       </parameters>
@@ -5472,25 +8142,36 @@ into account:
     <function name="rtp_buffer_new_allocate"
               c:identifier="gst_rtp_buffer_new_allocate"
               moved-to="RTPBuffer.new_allocate">
-      <doc xml:space="preserve">Allocate a new #GstBuffer with enough data to hold an RTP packet with
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+           line="190">Allocate a new #GstBuffer with enough data to hold an RTP packet with
 @csrc_count CSRCs, a payload length of @payload_len and padding of @pad_len.
 All other RTP header fields will be set to 0/FALSE.</doc>
+      <source-position filename="gst-libs/gst/rtp/gstrtpbuffer.h" line="78"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">A newly allocated buffer that can hold an RTP packet with given
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+             line="200">A newly allocated buffer that can hold an RTP packet with given
 parameters.</doc>
         <type name="Gst.Buffer" c:type="GstBuffer*"/>
       </return-value>
       <parameters>
         <parameter name="payload_len" transfer-ownership="none">
-          <doc xml:space="preserve">the length of the payload</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+               line="192">the length of the payload</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
         <parameter name="pad_len" transfer-ownership="none">
-          <doc xml:space="preserve">the amount of padding</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+               line="193">the amount of padding</doc>
           <type name="guint8" c:type="guint8"/>
         </parameter>
         <parameter name="csrc_count" transfer-ownership="none">
-          <doc xml:space="preserve">the number of CSRC entries</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+               line="194">the number of CSRC entries</doc>
           <type name="guint8" c:type="guint8"/>
         </parameter>
       </parameters>
@@ -5498,25 +8179,36 @@ parameters.</doc>
     <function name="rtp_buffer_new_allocate_len"
               c:identifier="gst_rtp_buffer_new_allocate_len"
               moved-to="RTPBuffer.new_allocate_len">
-      <doc xml:space="preserve">Create a new #GstBuffer that can hold an RTP packet that is exactly
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+           line="217">Create a new #GstBuffer that can hold an RTP packet that is exactly
 @packet_len long. The length of the payload depends on @pad_len and
 @csrc_count and can be calculated with gst_rtp_buffer_calc_payload_len().
 All RTP header fields will be set to 0/FALSE.</doc>
+      <source-position filename="gst-libs/gst/rtp/gstrtpbuffer.h" line="81"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">A newly allocated buffer that can hold an RTP packet of @packet_len.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+             line="228">A newly allocated buffer that can hold an RTP packet of @packet_len.</doc>
         <type name="Gst.Buffer" c:type="GstBuffer*"/>
       </return-value>
       <parameters>
         <parameter name="packet_len" transfer-ownership="none">
-          <doc xml:space="preserve">the total length of the packet</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+               line="219">the total length of the packet</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
         <parameter name="pad_len" transfer-ownership="none">
-          <doc xml:space="preserve">the amount of padding</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+               line="220">the amount of padding</doc>
           <type name="guint8" c:type="guint8"/>
         </parameter>
         <parameter name="csrc_count" transfer-ownership="none">
-          <doc xml:space="preserve">the number of CSRC entries</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+               line="221">the number of CSRC entries</doc>
           <type name="guint8" c:type="guint8"/>
         </parameter>
       </parameters>
@@ -5524,23 +8216,32 @@ All RTP header fields will be set to 0/FALSE.</doc>
     <function name="rtp_buffer_new_copy_data"
               c:identifier="gst_rtp_buffer_new_copy_data"
               moved-to="RTPBuffer.new_copy_data">
-      <doc xml:space="preserve">Create a new buffer and set the data to a copy of @len
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+           line="172">Create a new buffer and set the data to a copy of @len
 bytes of @data and the size to @len. The data will be freed when the buffer
 is freed.</doc>
+      <source-position filename="gst-libs/gst/rtp/gstrtpbuffer.h" line="75"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">A newly allocated buffer with a copy of @data and of size @len.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+             line="182">A newly allocated buffer with a copy of @data and of size @len.</doc>
         <type name="Gst.Buffer" c:type="GstBuffer*"/>
       </return-value>
       <parameters>
         <parameter name="data" transfer-ownership="none">
-          <doc xml:space="preserve">data for the new
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+               line="174">data for the new
   buffer</doc>
           <array length="1" zero-terminated="0" c:type="gconstpointer">
             <type name="guint8"/>
           </array>
         </parameter>
         <parameter name="len" transfer-ownership="none">
-          <doc xml:space="preserve">the length of data</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+               line="176">the length of data</doc>
           <type name="gsize" c:type="gsize"/>
         </parameter>
       </parameters>
@@ -5548,89 +8249,125 @@ is freed.</doc>
     <function name="rtp_buffer_new_take_data"
               c:identifier="gst_rtp_buffer_new_take_data"
               moved-to="RTPBuffer.new_take_data">
-      <doc xml:space="preserve">Create a new buffer and set the data and size of the buffer to @data and @len
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+           line="151">Create a new buffer and set the data and size of the buffer to @data and @len
 respectively. @data will be freed when the buffer is unreffed, so this
 function transfers ownership of @data to the new buffer.</doc>
+      <source-position filename="gst-libs/gst/rtp/gstrtpbuffer.h" line="72"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">A newly allocated buffer with @data and of size @len.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+             line="161">A newly allocated buffer with @data and of size @len.</doc>
         <type name="Gst.Buffer" c:type="GstBuffer*"/>
       </return-value>
       <parameters>
         <parameter name="data" transfer-ownership="full">
-          <doc xml:space="preserve">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+               line="153">
   data for the new buffer</doc>
           <array length="1" zero-terminated="0" c:type="gpointer">
             <type name="guint8"/>
           </array>
         </parameter>
         <parameter name="len" transfer-ownership="none">
-          <doc xml:space="preserve">the length of data</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtpbuffer.c"
+               line="155">the length of data</doc>
           <type name="gsize" c:type="gsize"/>
         </parameter>
       </parameters>
     </function>
     <function name="rtp_hdrext_get_ntp_56"
               c:identifier="gst_rtp_hdrext_get_ntp_56">
-      <doc xml:space="preserve">Reads the NTP time from the @size NTP-56 extension bytes in @data and store the
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtp/gstrtphdrext.c"
+           line="108">Reads the NTP time from the @size NTP-56 extension bytes in @data and store the
 result in @ntptime.</doc>
+      <source-position filename="gst-libs/gst/rtp/gstrtphdrext.h" line="51"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE on success.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtphdrext.c"
+             line="117">%TRUE on success.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="data" transfer-ownership="none">
-          <doc xml:space="preserve">the data to read from</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtphdrext.c"
+               line="110">the data to read from</doc>
           <array length="1" zero-terminated="0" c:type="gpointer">
             <type name="guint8"/>
           </array>
         </parameter>
         <parameter name="size" transfer-ownership="none">
-          <doc xml:space="preserve">the size of @data</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtphdrext.c"
+               line="111">the size of @data</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
         <parameter name="ntptime"
                    direction="out"
                    caller-allocates="0"
                    transfer-ownership="full">
-          <doc xml:space="preserve">the result NTP time</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtphdrext.c"
+               line="112">the result NTP time</doc>
           <type name="guint64" c:type="guint64*"/>
         </parameter>
       </parameters>
     </function>
     <function name="rtp_hdrext_get_ntp_64"
               c:identifier="gst_rtp_hdrext_get_ntp_64">
-      <doc xml:space="preserve">Reads the NTP time from the @size NTP-64 extension bytes in @data and store the
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtp/gstrtphdrext.c"
+           line="58">Reads the NTP time from the @size NTP-64 extension bytes in @data and store the
 result in @ntptime.</doc>
+      <source-position filename="gst-libs/gst/rtp/gstrtphdrext.h" line="41"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE on success.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtphdrext.c"
+             line="67">%TRUE on success.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="data" transfer-ownership="none">
-          <doc xml:space="preserve">the data to read from</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtphdrext.c"
+               line="60">the data to read from</doc>
           <array length="1" zero-terminated="0" c:type="gpointer">
             <type name="guint8"/>
           </array>
         </parameter>
         <parameter name="size" transfer-ownership="none">
-          <doc xml:space="preserve">the size of @data</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtphdrext.c"
+               line="61">the size of @data</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
         <parameter name="ntptime"
                    direction="out"
                    caller-allocates="0"
                    transfer-ownership="full">
-          <doc xml:space="preserve">the result NTP time</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtphdrext.c"
+               line="62">the result NTP time</doc>
           <type name="guint64" c:type="guint64*"/>
         </parameter>
       </parameters>
     </function>
     <function name="rtp_hdrext_set_ntp_56"
               c:identifier="gst_rtp_hdrext_set_ntp_56">
-      <doc xml:space="preserve">Writes the NTP time in @ntptime to the format required for the NTP-56 header
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtp/gstrtphdrext.c"
+           line="81">Writes the NTP time in @ntptime to the format required for the NTP-56 header
 extension. @data must hold at least #GST_RTP_HDREXT_NTP_56_SIZE bytes.</doc>
+      <source-position filename="gst-libs/gst/rtp/gstrtphdrext.h" line="48"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE on success.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtphdrext.c"
+             line="90">%TRUE on success.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
@@ -5638,25 +8375,36 @@ extension. @data must hold at least #GST_RTP_HDREXT_NTP_56_SIZE bytes.</doc>
                    transfer-ownership="none"
                    nullable="1"
                    allow-none="1">
-          <doc xml:space="preserve">the data to write to</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtphdrext.c"
+               line="83">the data to write to</doc>
           <type name="gpointer" c:type="gpointer"/>
         </parameter>
         <parameter name="size" transfer-ownership="none">
-          <doc xml:space="preserve">the size of @data</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtphdrext.c"
+               line="84">the size of @data</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
         <parameter name="ntptime" transfer-ownership="none">
-          <doc xml:space="preserve">the NTP time</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtphdrext.c"
+               line="85">the NTP time</doc>
           <type name="guint64" c:type="guint64"/>
         </parameter>
       </parameters>
     </function>
     <function name="rtp_hdrext_set_ntp_64"
               c:identifier="gst_rtp_hdrext_set_ntp_64">
-      <doc xml:space="preserve">Writes the NTP time in @ntptime to the format required for the NTP-64 header
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtp/gstrtphdrext.c"
+           line="36">Writes the NTP time in @ntptime to the format required for the NTP-64 header
 extension. @data must hold at least #GST_RTP_HDREXT_NTP_64_SIZE bytes.</doc>
+      <source-position filename="gst-libs/gst/rtp/gstrtphdrext.h" line="38"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE on success.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtphdrext.c"
+             line="45">%TRUE on success.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
@@ -5664,15 +8412,21 @@ extension. @data must hold at least #GST_RTP_HDREXT_NTP_64_SIZE bytes.</doc>
                    transfer-ownership="none"
                    nullable="1"
                    allow-none="1">
-          <doc xml:space="preserve">the data to write to</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtphdrext.c"
+               line="38">the data to write to</doc>
           <type name="gpointer" c:type="gpointer"/>
         </parameter>
         <parameter name="size" transfer-ownership="none">
-          <doc xml:space="preserve">the size of @data</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtphdrext.c"
+               line="39">the size of @data</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
         <parameter name="ntptime" transfer-ownership="none">
-          <doc xml:space="preserve">the NTP time</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtphdrext.c"
+               line="40">the NTP time</doc>
           <type name="guint64" c:type="guint64"/>
         </parameter>
       </parameters>
@@ -5680,22 +8434,32 @@ extension. @data must hold at least #GST_RTP_HDREXT_NTP_64_SIZE bytes.</doc>
     <function name="rtp_payload_info_for_name"
               c:identifier="gst_rtp_payload_info_for_name"
               moved-to="RTPPayloadInfo.for_name">
-      <doc xml:space="preserve">Get the #GstRTPPayloadInfo for @media and @encoding_name. This function is
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtp/gstrtppayloads.c"
+           line="205">Get the #GstRTPPayloadInfo for @media and @encoding_name. This function is
 mostly used to get the default clock-rate and bandwidth for dynamic payload
 types specified with @media and @encoding name.
 
-The search for @encoding_name will be performed in a case insensitve way.</doc>
+The search for @encoding_name will be performed in a case insensitive way.</doc>
+      <source-position filename="gst-libs/gst/rtp/gstrtppayloads.h"
+                       line="194"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">a #GstRTPPayloadInfo or NULL when no info could be found.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtppayloads.c"
+             line="216">a #GstRTPPayloadInfo or NULL when no info could be found.</doc>
         <type name="RTPPayloadInfo" c:type="const GstRTPPayloadInfo*"/>
       </return-value>
       <parameters>
         <parameter name="media" transfer-ownership="none">
-          <doc xml:space="preserve">the media to find</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtppayloads.c"
+               line="207">the media to find</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
         <parameter name="encoding_name" transfer-ownership="none">
-          <doc xml:space="preserve">the encoding name to find</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtppayloads.c"
+               line="208">the encoding name to find</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
       </parameters>
@@ -5703,22 +8467,31 @@ The search for @encoding_name will be performed in a case insensitve way.</doc>
     <function name="rtp_payload_info_for_pt"
               c:identifier="gst_rtp_payload_info_for_pt"
               moved-to="RTPPayloadInfo.for_pt">
-      <doc xml:space="preserve">Get the #GstRTPPayloadInfo for @payload_type. This function is
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtp/gstrtppayloads.c"
+           line="180">Get the #GstRTPPayloadInfo for @payload_type. This function is
 mostly used to get the default clock-rate and bandwidth for static payload
 types specified with @payload_type.</doc>
+      <source-position filename="gst-libs/gst/rtp/gstrtppayloads.h"
+                       line="191"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">a #GstRTPPayloadInfo or NULL when no info could be found.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtp/gstrtppayloads.c"
+             line="188">a #GstRTPPayloadInfo or NULL when no info could be found.</doc>
         <type name="RTPPayloadInfo" c:type="const GstRTPPayloadInfo*"/>
       </return-value>
       <parameters>
         <parameter name="payload_type" transfer-ownership="none">
-          <doc xml:space="preserve">the payload_type to find</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtp/gstrtppayloads.c"
+               line="182">the payload_type to find</doc>
           <type name="guint8" c:type="guint8"/>
         </parameter>
       </parameters>
     </function>
     <function name="rtp_source_meta_api_get_type"
               c:identifier="gst_rtp_source_meta_api_get_type">
+      <source-position filename="gst-libs/gst/rtp/gstrtpmeta.h" line="57"/>
       <return-value transfer-ownership="none">
         <type name="GType" c:type="GType"/>
       </return-value>
@@ -5726,6 +8499,7 @@ types specified with @payload_type.</doc>
     <function name="rtp_source_meta_get_info"
               c:identifier="gst_rtp_source_meta_get_info"
               moved-to="RTPSourceMeta.get_info">
+      <source-position filename="gst-libs/gst/rtp/gstrtpmeta.h" line="75"/>
       <return-value transfer-ownership="none">
         <type name="Gst.MetaInfo" c:type="const GstMetaInfo*"/>
       </return-value>
index 1f2acf8..3724bc1 100644 (file)
@@ -17,22 +17,42 @@ and/or use gtk-doc annotations.  -->
              shared-library="libgstrtsp-1.0.so.0"
              c:identifier-prefixes="Gst"
              c:symbol-prefixes="gst">
+    <function-macro name="IS_RTSP_EXTENSION"
+                    c:identifier="GST_IS_RTSP_EXTENSION"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/rtsp/gstrtspextension.h"
+                       line="37"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
     <record name="RTSPAuthCredential"
             c:type="GstRTSPAuthCredential"
             glib:type-name="GstRTSPAuthCredential"
             glib:get-type="gst_rtsp_auth_credential_get_type"
             c:symbol-prefix="rtsp_auth_credential">
-      <doc xml:space="preserve">RTSP Authentication credentials</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtsp/gstrtspmessage.h"
+           line="284">RTSP Authentication credentials</doc>
+      <source-position filename="gst-libs/gst/rtsp/gstrtspmessage.h"
+                       line="301"/>
       <field name="scheme" writable="1">
-        <doc xml:space="preserve">a #GstRTSPAuthMethod</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspmessage.h"
+             line="286">a #GstRTSPAuthMethod</doc>
         <type name="RTSPAuthMethod" c:type="GstRTSPAuthMethod"/>
       </field>
       <field name="params" writable="1">
-        <doc xml:space="preserve">A NULL-terminated array of #GstRTSPAuthParam</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspmessage.h"
+             line="287">A NULL-terminated array of #GstRTSPAuthParam</doc>
         <type name="RTSPAuthParam" c:type="GstRTSPAuthParam**"/>
       </field>
       <field name="authorization" writable="1">
-        <doc xml:space="preserve">The authorization for the basic schem</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspmessage.h"
+             line="288">The authorization for the basic schem</doc>
         <type name="utf8" c:type="gchar*"/>
       </field>
     </record>
@@ -40,24 +60,32 @@ and/or use gtk-doc annotations.  -->
                  glib:type-name="GstRTSPAuthMethod"
                  glib:get-type="gst_rtsp_auth_method_get_type"
                  c:type="GstRTSPAuthMethod">
-      <doc xml:space="preserve">Authentication methods, ordered by strength</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtsp/gstrtspdefs.h"
+           line="209">Authentication methods, ordered by strength</doc>
       <member name="none"
               value="0"
               c:identifier="GST_RTSP_AUTH_NONE"
               glib:nick="none">
-        <doc xml:space="preserve">no authentication</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspdefs.h"
+             line="211">no authentication</doc>
       </member>
       <member name="basic"
               value="1"
               c:identifier="GST_RTSP_AUTH_BASIC"
               glib:nick="basic">
-        <doc xml:space="preserve">basic authentication</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspdefs.h"
+             line="212">basic authentication</doc>
       </member>
       <member name="digest"
               value="2"
               c:identifier="GST_RTSP_AUTH_DIGEST"
               glib:nick="digest">
-        <doc xml:space="preserve">digest authentication</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspdefs.h"
+             line="213">digest authentication</doc>
       </member>
     </enumeration>
     <record name="RTSPAuthParam"
@@ -65,16 +93,26 @@ and/or use gtk-doc annotations.  -->
             glib:type-name="GstRTSPAuthParam"
             glib:get-type="gst_rtsp_auth_param_get_type"
             c:symbol-prefix="rtsp_auth_param">
-      <doc xml:space="preserve">RTSP Authentication parameter</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtsp/gstrtspmessage.h"
+           line="303">RTSP Authentication parameter</doc>
+      <source-position filename="gst-libs/gst/rtsp/gstrtspmessage.h"
+                       line="313"/>
       <field name="name" writable="1">
-        <doc xml:space="preserve">The name of the parameter</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspmessage.h"
+             line="305">The name of the parameter</doc>
         <type name="utf8" c:type="gchar*"/>
       </field>
       <field name="value" writable="1">
-        <doc xml:space="preserve">The value of the parameter</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspmessage.h"
+             line="306">The value of the parameter</doc>
         <type name="utf8" c:type="gchar*"/>
       </field>
       <method name="copy" c:identifier="gst_rtsp_auth_param_copy">
+        <source-position filename="gst-libs/gst/rtsp/gstrtspmessage.h"
+                         line="316"/>
         <return-value transfer-ownership="full">
           <type name="RTSPAuthParam" c:type="GstRTSPAuthParam*"/>
         </return-value>
@@ -85,6 +123,8 @@ and/or use gtk-doc annotations.  -->
         </parameters>
       </method>
       <method name="free" c:identifier="gst_rtsp_auth_param_free">
+        <source-position filename="gst-libs/gst/rtsp/gstrtspmessage.h"
+                         line="318"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
@@ -96,89 +136,210 @@ and/or use gtk-doc annotations.  -->
       </method>
     </record>
     <record name="RTSPConnection" c:type="GstRTSPConnection" disguised="1">
-      <doc xml:space="preserve">This object manages the RTSP connection to the server. It provides function
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+           line="43">This object manages the RTSP connection to the server. It provides function
 to receive and send bytes and messages.</doc>
+      <source-position filename="gst-libs/gst/rtsp/gstrtspconnection.h"
+                       line="61"/>
       <method name="clear_auth_params"
               c:identifier="gst_rtsp_connection_clear_auth_params">
-        <doc xml:space="preserve">Clear the list of authentication directives stored in @conn.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+             line="3157">Clear the list of authentication directives stored in @conn.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspconnection.h"
+                         line="184"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="conn" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPConnection</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="3159">a #GstRTSPConnection</doc>
             <type name="RTSPConnection" c:type="GstRTSPConnection*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="close" c:identifier="gst_rtsp_connection_close">
-        <doc xml:space="preserve">Close the connected @conn. After this call, the connection is in the same
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+             line="2756">Close the connected @conn. After this call, the connection is in the same
 state as when it was first created.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspconnection.h"
+                         line="85"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">#GST_RTSP_OK on success.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+               line="2763">#GST_RTSP_OK on success.</doc>
           <type name="RTSPResult" c:type="GstRTSPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="conn" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPConnection</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="2758">a #GstRTSPConnection</doc>
             <type name="RTSPConnection" c:type="GstRTSPConnection*"/>
           </instance-parameter>
         </parameters>
       </method>
-      <method name="connect" c:identifier="gst_rtsp_connection_connect">
-        <doc xml:space="preserve">Attempt to connect to the url of @conn made with
+      <method name="connect"
+              c:identifier="gst_rtsp_connection_connect"
+              deprecated="1"
+              deprecated-version="1.18">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+             line="4813">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.
 
 This function can be cancelled with gst_rtsp_connection_flush().</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspconnection.h"
+                         line="345"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">#GST_RTSP_OK when a connection could be made.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+               line="4825">#GST_RTSP_OK when a connection could be made.</doc>
           <type name="RTSPResult" c:type="GstRTSPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="conn" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPConnection</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="4815">a #GstRTSPConnection</doc>
             <type name="RTSPConnection" c:type="GstRTSPConnection*"/>
           </instance-parameter>
           <parameter name="timeout" transfer-ownership="none">
-            <doc xml:space="preserve">a #GTimeVal timeout</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="4816">a GTimeVal timeout</doc>
             <type name="GLib.TimeVal" c:type="GTimeVal*"/>
           </parameter>
         </parameters>
       </method>
+      <method name="connect_usec"
+              c:identifier="gst_rtsp_connection_connect_usec"
+              version="1.18">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+             line="1150">Attempt to connect to the url of @conn made with
+gst_rtsp_connection_create(). If @timeout is 0 this function can block
+forever. If @timeout contains a valid timeout, this function will return
+#GST_RTSP_ETIMEOUT after the timeout expired.
+
+This function can be cancelled with gst_rtsp_connection_flush().</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspconnection.h"
+                         line="79"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+               line="1162">#GST_RTSP_OK when a connection could be made.</doc>
+          <type name="RTSPResult" c:type="GstRTSPResult"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="conn" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="1152">a #GstRTSPConnection</doc>
+            <type name="RTSPConnection" c:type="GstRTSPConnection*"/>
+          </instance-parameter>
+          <parameter name="timeout" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="1153">a timeout in microseconds</doc>
+            <type name="gint64" c:type="gint64"/>
+          </parameter>
+        </parameters>
+      </method>
       <method name="connect_with_response"
-              c:identifier="gst_rtsp_connection_connect_with_response">
-        <doc xml:space="preserve">Attempt to connect to the url of @conn made with
+              c:identifier="gst_rtsp_connection_connect_with_response"
+              version="1.8"
+              deprecated="1"
+              deprecated-version="1.18">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+             line="4835">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().</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspconnection.h"
+                         line="348"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">#GST_RTSP_OK when a connection could be made.
-
-Since 1.8</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+               line="4849">#GST_RTSP_OK when a connection could be made.</doc>
           <type name="RTSPResult" c:type="GstRTSPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="conn" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPConnection</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="4837">a #GstRTSPConnection</doc>
             <type name="RTSPConnection" c:type="GstRTSPConnection*"/>
           </instance-parameter>
           <parameter name="timeout" transfer-ownership="none">
-            <doc xml:space="preserve">a #GTimeVal timeout</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="4838">a GTimeVal timeout</doc>
             <type name="GLib.TimeVal" c:type="GTimeVal*"/>
           </parameter>
           <parameter name="response" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="4839">a #GstRTSPMessage</doc>
+            <type name="RTSPMessage" c:type="GstRTSPMessage*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="connect_with_response_usec"
+              c:identifier="gst_rtsp_connection_connect_with_response_usec"
+              version="1.18">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+             line="957">Attempt to connect to the url of @conn made with
+gst_rtsp_connection_create(). If @timeout is 0 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().</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspconnection.h"
+                         line="82"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+               line="971">#GST_RTSP_OK when a connection could be made.</doc>
+          <type name="RTSPResult" c:type="GstRTSPResult"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="conn" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="959">a #GstRTSPConnection</doc>
+            <type name="RTSPConnection" c:type="GstRTSPConnection*"/>
+          </instance-parameter>
+          <parameter name="timeout" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="960">a timeout in microseconds</doc>
+            <type name="gint64" c:type="gint64"/>
+          </parameter>
+          <parameter name="response" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="961">a #GstRTSPMessage</doc>
             <type name="RTSPMessage" c:type="GstRTSPMessage*"/>
           </parameter>
         </parameters>
       </method>
       <method name="do_tunnel" c:identifier="gst_rtsp_connection_do_tunnel">
-        <doc xml:space="preserve">If @conn received the first tunnel connection and @conn2 received
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+             line="3444">If @conn received the first tunnel connection and @conn2 received
 the second tunnel connection, link the two connections together so that
 @conn manages the tunneled connection.
 
@@ -187,92 +348,140 @@ gst_rtsp_connection_free().
 
 If @conn2 is %NULL then only the base64 decoding context will be setup for
 @conn.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspconnection.h"
+                         line="230"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">return GST_RTSP_OK on success.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+               line="3459">return GST_RTSP_OK on success.</doc>
           <type name="RTSPResult" c:type="GstRTSPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="conn" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPConnection</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="3446">a #GstRTSPConnection</doc>
             <type name="RTSPConnection" c:type="GstRTSPConnection*"/>
           </instance-parameter>
           <parameter name="conn2" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPConnection or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="3447">a #GstRTSPConnection or %NULL</doc>
             <type name="RTSPConnection" c:type="GstRTSPConnection*"/>
           </parameter>
         </parameters>
       </method>
       <method name="flush" c:identifier="gst_rtsp_connection_flush">
-        <doc xml:space="preserve">Start or stop the flushing action on @conn. When flushing, all current
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+             line="3003">Start or stop the flushing action on @conn. When flushing, all current
 and future actions on @conn will return #GST_RTSP_EINTR until the connection
 is set to non-flushing mode again.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspconnection.h"
+                         line="164"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">#GST_RTSP_OK.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+               line="3012">#GST_RTSP_OK.</doc>
           <type name="RTSPResult" c:type="GstRTSPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="conn" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPConnection</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="3005">a #GstRTSPConnection</doc>
             <type name="RTSPConnection" c:type="GstRTSPConnection*"/>
           </instance-parameter>
           <parameter name="flush" transfer-ownership="none">
-            <doc xml:space="preserve">start or stop the flush</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="3006">start or stop the flush</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </method>
       <method name="free" c:identifier="gst_rtsp_connection_free">
-        <doc xml:space="preserve">Close and free @conn.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+             line="2816">Close and free @conn.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspconnection.h"
+                         line="88"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">#GST_RTSP_OK on success.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+               line="2822">#GST_RTSP_OK on success.</doc>
           <type name="RTSPResult" c:type="GstRTSPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="conn" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPConnection</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="2818">a #GstRTSPConnection</doc>
             <type name="RTSPConnection" c:type="GstRTSPConnection*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_ip" c:identifier="gst_rtsp_connection_get_ip">
-        <doc xml:space="preserve">Retrieve the IP address of the other end of @conn.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+             line="3305">Retrieve the IP address of the other end of @conn.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspconnection.h"
+                         line="203"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The IP address as a string. this value remains valid until the
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+               line="3311">The IP address as a string. this value remains valid until the
 connection is closed.</doc>
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
         <parameters>
           <instance-parameter name="conn" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPConnection</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="3307">a #GstRTSPConnection</doc>
             <type name="RTSPConnection" c:type="const GstRTSPConnection*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_read_socket"
               c:identifier="gst_rtsp_connection_get_read_socket">
-        <doc xml:space="preserve">Get the file descriptor for reading.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+             line="3338">Get the file descriptor for reading.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspconnection.h"
+                         line="209"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the file descriptor used for reading or %NULL on
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+               line="3344">the file descriptor used for reading or %NULL on
 error. The file descriptor remains valid until the connection is closed.</doc>
           <type name="Gio.Socket" c:type="GSocket*"/>
         </return-value>
         <parameters>
           <instance-parameter name="conn" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPConnection</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="3340">a #GstRTSPConnection</doc>
             <type name="RTSPConnection" c:type="const GstRTSPConnection*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_remember_session_id"
               c:identifier="gst_rtsp_connection_get_remember_session_id">
+        <source-position filename="gst-libs/gst/rtsp/gstrtspconnection.h"
+                         line="236"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the #GstRTSPConnection remembers the session id in the
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+               line="3555">%TRUE if the #GstRTSPConnection remembers the session id in the
 last response to set it on any further request.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="conn" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPConnection</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="3553">a #GstRTSPConnection</doc>
             <type name="RTSPConnection" c:type="GstRTSPConnection*"/>
           </instance-parameter>
         </parameters>
@@ -281,7 +490,9 @@ last response to set it on any further request.</doc>
               c:identifier="gst_rtsp_connection_get_tls"
               version="1.2"
               throws="1">
-        <doc xml:space="preserve">Get the TLS connection of @conn.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+             line="545">Get the TLS connection of @conn.
 
 For client side this will return the #GTlsClientConnection when connected
 over TLS.
@@ -289,13 +500,19 @@ over TLS.
 For server side connections, this function will create a GTlsServerConnection
 when called the first time and will return that same connection on subsequent
 calls. The server is then responsible for configuring the TLS connection.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspconnection.h"
+                         line="93"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the TLS connection for @conn.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+               line="559">the TLS connection for @conn.</doc>
           <type name="Gio.TlsConnection" c:type="GTlsConnection*"/>
         </return-value>
         <parameters>
           <instance-parameter name="conn" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPConnection</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="547">a #GstRTSPConnection</doc>
             <type name="RTSPConnection" c:type="GstRTSPConnection*"/>
           </instance-parameter>
         </parameters>
@@ -303,18 +520,26 @@ calls. The server is then responsible for configuring the TLS connection.</doc>
       <method name="get_tls_database"
               c:identifier="gst_rtsp_connection_get_tls_database"
               version="1.4">
-        <doc xml:space="preserve">Gets the anchor certificate authorities database that will be used
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+             line="666">Gets the anchor certificate authorities database that will be used
 after a server certificate can't be verified with the default
 certificate database.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspconnection.h"
+                         line="105"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the anchor certificate authorities database, or NULL if no
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+               line="674">the anchor certificate authorities database, or NULL if no
 database has been previously set. Use g_object_unref() to release the
 certificate database.</doc>
           <type name="Gio.TlsDatabase" c:type="GTlsDatabase*"/>
         </return-value>
         <parameters>
           <instance-parameter name="conn" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPConnection</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="668">a #GstRTSPConnection</doc>
             <type name="RTSPConnection" c:type="GstRTSPConnection*"/>
           </instance-parameter>
         </parameters>
@@ -322,17 +547,25 @@ certificate database.</doc>
       <method name="get_tls_interaction"
               c:identifier="gst_rtsp_connection_get_tls_interaction"
               version="1.6">
-        <doc xml:space="preserve">Gets a #GTlsInteraction object to be used when the connection or certificate
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+             line="722">Gets a #GTlsInteraction object to be used when the connection or certificate
 database need to interact with the user. This will be used to prompt the
 user for passwords where necessary.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspconnection.h"
+                         line="111"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a reference on the #GTlsInteraction. Use
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+               line="730">a reference on the #GTlsInteraction. Use
 g_object_unref() to release.</doc>
           <type name="Gio.TlsInteraction" c:type="GTlsInteraction*"/>
         </return-value>
         <parameters>
           <instance-parameter name="conn" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPConnection</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="724">a #GstRTSPConnection</doc>
             <type name="RTSPConnection" c:type="GstRTSPConnection*"/>
           </instance-parameter>
         </parameters>
@@ -340,96 +573,176 @@ g_object_unref() to release.</doc>
       <method name="get_tls_validation_flags"
               c:identifier="gst_rtsp_connection_get_tls_validation_flags"
               version="1.2.1">
-        <doc xml:space="preserve">Gets the TLS validation flags used to verify the peer certificate
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+             line="618">Gets the TLS validation flags used to verify the peer certificate
 when a TLS connection is established.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspconnection.h"
+                         line="99"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the validationg flags.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+               line="625">the validationg flags.</doc>
           <type name="Gio.TlsCertificateFlags" c:type="GTlsCertificateFlags"/>
         </return-value>
         <parameters>
           <instance-parameter name="conn" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPConnection</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="620">a #GstRTSPConnection</doc>
             <type name="RTSPConnection" c:type="GstRTSPConnection*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_tunnelid"
               c:identifier="gst_rtsp_connection_get_tunnelid">
-        <doc xml:space="preserve">Get the tunnel session id the connection.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+             line="3425">Get the tunnel session id the connection.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspconnection.h"
+                         line="227"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">returns a non-empty string if @conn is being tunneled over HTTP.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+               line="3431">returns a non-empty string if @conn is being tunneled over HTTP.</doc>
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
         <parameters>
           <instance-parameter name="conn" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPConnection</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="3427">a #GstRTSPConnection</doc>
             <type name="RTSPConnection" c:type="const GstRTSPConnection*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_url" c:identifier="gst_rtsp_connection_get_url">
-        <doc xml:space="preserve">Retrieve the URL of the other end of @conn.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+             line="3288">Retrieve the URL of the other end of @conn.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspconnection.h"
+                         line="200"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">The URL. This value remains valid until the
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+               line="3294">The URL. This value remains valid until the
 connection is freed.</doc>
           <type name="RTSPUrl" c:type="GstRTSPUrl*"/>
         </return-value>
         <parameters>
           <instance-parameter name="conn" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPConnection</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="3290">a #GstRTSPConnection</doc>
             <type name="RTSPConnection" c:type="const GstRTSPConnection*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_write_socket"
               c:identifier="gst_rtsp_connection_get_write_socket">
-        <doc xml:space="preserve">Get the file descriptor for writing.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+             line="3356">Get the file descriptor for writing.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspconnection.h"
+                         line="212"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the file descriptor used for writing or NULL on
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+               line="3362">the file descriptor used for writing or NULL on
 error. The file descriptor remains valid until the connection is closed.</doc>
           <type name="Gio.Socket" c:type="GSocket*"/>
         </return-value>
         <parameters>
           <instance-parameter name="conn" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPConnection</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="3358">a #GstRTSPConnection</doc>
             <type name="RTSPConnection" c:type="const GstRTSPConnection*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="is_tunneled"
               c:identifier="gst_rtsp_connection_is_tunneled">
-        <doc xml:space="preserve">Get the tunneling state of the connection.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+             line="3409">Get the tunneling state of the connection.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspconnection.h"
+                         line="224"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">if @conn is using HTTP tunneling.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+               line="3415">if @conn is using HTTP tunneling.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="conn" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPConnection</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="3411">a #GstRTSPConnection</doc>
             <type name="RTSPConnection" c:type="const GstRTSPConnection*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="next_timeout"
-              c:identifier="gst_rtsp_connection_next_timeout">
-        <doc xml:space="preserve">Calculate the next timeout for @conn, storing the result in @timeout.</doc>
+              c:identifier="gst_rtsp_connection_next_timeout"
+              deprecated="1"
+              deprecated-version="1.18">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+             line="5011">Calculate the next timeout for @conn, storing the result in @timeout.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspconnection.h"
+                         line="377"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">#GST_RTSP_OK.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+               line="5018">#GST_RTSP_OK.</doc>
           <type name="RTSPResult" c:type="GstRTSPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="conn" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPConnection</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="5013">a #GstRTSPConnection</doc>
             <type name="RTSPConnection" c:type="GstRTSPConnection*"/>
           </instance-parameter>
           <parameter name="timeout" transfer-ownership="none">
-            <doc xml:space="preserve">a timeout</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="5014">a timeout</doc>
             <type name="GLib.TimeVal" c:type="GTimeVal*"/>
           </parameter>
         </parameters>
       </method>
-      <method name="poll" c:identifier="gst_rtsp_connection_poll">
-        <doc xml:space="preserve">Wait up to the specified @timeout for the connection to become available for
+      <method name="next_timeout_usec"
+              c:identifier="gst_rtsp_connection_next_timeout_usec"
+              version="1.18">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+             line="2937">Calculate the next timeout for @conn</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspconnection.h"
+                         line="156"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+               line="2943">#the next timeout in microseconds</doc>
+          <type name="gint64" c:type="gint64"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="conn" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="2939">a #GstRTSPConnection</doc>
+            <type name="RTSPConnection" c:type="GstRTSPConnection*"/>
+          </instance-parameter>
+        </parameters>
+      </method>
+      <method name="poll"
+              c:identifier="gst_rtsp_connection_poll"
+              deprecated="1"
+              deprecated-version="1.18">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+             line="4983">Wait up to the specified @timeout for the connection to become available for
 at least one of the operations specified in @events. When the function returns
 with #GST_RTSP_OK, @revents will contain a bitmask of available operations on
 @conn.
@@ -437,170 +750,477 @@ with #GST_RTSP_OK, @revents will contain a bitmask of available operations on
 @timeout can be %NULL, in which case this function might block forever.
 
 This function can be cancelled with gst_rtsp_connection_flush().</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspconnection.h"
+                         line="373"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">#GST_RTSP_OK on success.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+               line="4999">#GST_RTSP_OK on success.</doc>
           <type name="RTSPResult" c:type="GstRTSPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="conn" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPConnection</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="4985">a #GstRTSPConnection</doc>
             <type name="RTSPConnection" c:type="GstRTSPConnection*"/>
           </instance-parameter>
           <parameter name="events" transfer-ownership="none">
-            <doc xml:space="preserve">a bitmask of #GstRTSPEvent flags to check</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="4986">a bitmask of #GstRTSPEvent flags to check</doc>
             <type name="RTSPEvent" c:type="GstRTSPEvent"/>
           </parameter>
           <parameter name="revents" transfer-ownership="none">
-            <doc xml:space="preserve">location for result flags</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="4987">location for result flags</doc>
             <type name="RTSPEvent" c:type="GstRTSPEvent*"/>
           </parameter>
           <parameter name="timeout" transfer-ownership="none">
-            <doc xml:space="preserve">a timeout</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="4988">a timeout</doc>
             <type name="GLib.TimeVal" c:type="GTimeVal*"/>
           </parameter>
         </parameters>
       </method>
-      <method name="read" c:identifier="gst_rtsp_connection_read">
-        <doc xml:space="preserve">Attempt to read @size bytes into @data from the connected @conn, blocking up to
+      <method name="poll_usec"
+              c:identifier="gst_rtsp_connection_poll_usec"
+              version="1.18">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+             line="2853">Wait up to the specified @timeout for the connection to become available for
+at least one of the operations specified in @events. When the function returns
+with #GST_RTSP_OK, @revents will contain a bitmask of available operations on
+@conn.
+
+@timeout can be 0, in which case this function might block forever.
+
+This function can be cancelled with gst_rtsp_connection_flush().</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspconnection.h"
+                         line="150"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+               line="2869">#GST_RTSP_OK on success.</doc>
+          <type name="RTSPResult" c:type="GstRTSPResult"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="conn" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="2855">a #GstRTSPConnection</doc>
+            <type name="RTSPConnection" c:type="GstRTSPConnection*"/>
+          </instance-parameter>
+          <parameter name="events" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="2856">a bitmask of #GstRTSPEvent flags to check</doc>
+            <type name="RTSPEvent" c:type="GstRTSPEvent"/>
+          </parameter>
+          <parameter name="revents" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="2857">location for result flags</doc>
+            <type name="RTSPEvent" c:type="GstRTSPEvent*"/>
+          </parameter>
+          <parameter name="timeout" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="2858">a timeout in microseconds</doc>
+            <type name="gint64" c:type="gint64"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="read"
+              c:identifier="gst_rtsp_connection_read"
+              deprecated="1"
+              deprecated-version="1.18">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+             line="4862">Attempt to read @size bytes into @data from the connected @conn, blocking up to
 the specified @timeout. @timeout can be %NULL, in which case this function
 might block forever.
 
 This function can be cancelled with gst_rtsp_connection_flush().</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspconnection.h"
+                         line="352"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">#GST_RTSP_OK on success.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+               line="4875">#GST_RTSP_OK on success.</doc>
           <type name="RTSPResult" c:type="GstRTSPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="conn" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPConnection</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="4864">a #GstRTSPConnection</doc>
             <type name="RTSPConnection" c:type="GstRTSPConnection*"/>
           </instance-parameter>
           <parameter name="data" transfer-ownership="none">
-            <doc xml:space="preserve">the data to read</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="4865">the data to read</doc>
             <type name="guint8" c:type="guint8*"/>
           </parameter>
           <parameter name="size" transfer-ownership="none">
-            <doc xml:space="preserve">the size of @data</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="4866">the size of @data</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="timeout" transfer-ownership="none">
-            <doc xml:space="preserve">a timeout value or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="4867">a timeout value or %NULL</doc>
             <type name="GLib.TimeVal" c:type="GTimeVal*"/>
           </parameter>
         </parameters>
       </method>
-      <method name="receive" c:identifier="gst_rtsp_connection_receive">
-        <doc xml:space="preserve">Attempt to read into @message from the connected @conn, blocking up to
+      <method name="read_usec"
+              c:identifier="gst_rtsp_connection_read_usec"
+              version="1.18">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+             line="2587">Attempt to read @size bytes into @data from the connected @conn, blocking up to
+the specified @timeout. @timeout can be 0, in which case this function
+might block forever.
+
+This function can be cancelled with gst_rtsp_connection_flush().</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspconnection.h"
+                         line="126"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+               line="2600">#GST_RTSP_OK on success.</doc>
+          <type name="RTSPResult" c:type="GstRTSPResult"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="conn" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="2589">a #GstRTSPConnection</doc>
+            <type name="RTSPConnection" c:type="GstRTSPConnection*"/>
+          </instance-parameter>
+          <parameter name="data" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="2590">the data to read</doc>
+            <type name="guint8" c:type="guint8*"/>
+          </parameter>
+          <parameter name="size" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="2591">the size of @data</doc>
+            <type name="guint" c:type="guint"/>
+          </parameter>
+          <parameter name="timeout" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="2592">a timeout value in microseconds</doc>
+            <type name="gint64" c:type="gint64"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="receive"
+              c:identifier="gst_rtsp_connection_receive"
+              deprecated="1"
+              deprecated-version="1.18">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+             line="4960">Attempt to read into @message from the connected @conn, blocking up to
 the specified @timeout. @timeout can be %NULL, in which case this function
 might block forever.
 
 This function can be cancelled with gst_rtsp_connection_flush().</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspconnection.h"
+                         line="369"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">#GST_RTSP_OK on success.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+               line="4972">#GST_RTSP_OK on success.</doc>
           <type name="RTSPResult" c:type="GstRTSPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="conn" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPConnection</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="4962">a #GstRTSPConnection</doc>
             <type name="RTSPConnection" c:type="GstRTSPConnection*"/>
           </instance-parameter>
           <parameter name="message" transfer-ownership="none">
-            <doc xml:space="preserve">the message to read</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="4963">the message to read</doc>
             <type name="RTSPMessage" c:type="GstRTSPMessage*"/>
           </parameter>
           <parameter name="timeout" transfer-ownership="none">
-            <doc xml:space="preserve">a timeout value or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="4964">a timeout value or %NULL</doc>
             <type name="GLib.TimeVal" c:type="GTimeVal*"/>
           </parameter>
         </parameters>
       </method>
+      <method name="receive_usec"
+              c:identifier="gst_rtsp_connection_receive_usec"
+              version="1.18">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+             line="2669">Attempt to read into @message from the connected @conn, blocking up to
+the specified @timeout. @timeout can be 0, in which case this function
+might block forever.
+
+This function can be cancelled with gst_rtsp_connection_flush().</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspconnection.h"
+                         line="144"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+               line="2681">#GST_RTSP_OK on success.</doc>
+          <type name="RTSPResult" c:type="GstRTSPResult"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="conn" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="2671">a #GstRTSPConnection</doc>
+            <type name="RTSPConnection" c:type="GstRTSPConnection*"/>
+          </instance-parameter>
+          <parameter name="message" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="2672">the message to read</doc>
+            <type name="RTSPMessage" c:type="GstRTSPMessage*"/>
+          </parameter>
+          <parameter name="timeout" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="2673">a timeout value or 0</doc>
+            <type name="gint64" c:type="gint64"/>
+          </parameter>
+        </parameters>
+      </method>
       <method name="reset_timeout"
               c:identifier="gst_rtsp_connection_reset_timeout">
-        <doc xml:space="preserve">Reset the timeout of @conn.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+             line="2985">Reset the timeout of @conn.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspconnection.h"
+                         line="159"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">#GST_RTSP_OK.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+               line="2991">#GST_RTSP_OK.</doc>
           <type name="RTSPResult" c:type="GstRTSPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="conn" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPConnection</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="2987">a #GstRTSPConnection</doc>
             <type name="RTSPConnection" c:type="GstRTSPConnection*"/>
           </instance-parameter>
         </parameters>
       </method>
-      <method name="send" c:identifier="gst_rtsp_connection_send">
-        <doc xml:space="preserve">Attempt to send @message to the connected @conn, blocking up to
+      <method name="send"
+              c:identifier="gst_rtsp_connection_send"
+              deprecated="1"
+              deprecated-version="1.18">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+             line="4911">Attempt to send @message to the connected @conn, blocking up to
 the specified @timeout. @timeout can be %NULL, in which case this function
 might block forever.
 
 This function can be cancelled with gst_rtsp_connection_flush().</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspconnection.h"
+                         line="361"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">#GST_RTSP_OK on success.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+               line="4923">#GST_RTSP_OK on success.</doc>
           <type name="RTSPResult" c:type="GstRTSPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="conn" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPConnection</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="4913">a #GstRTSPConnection</doc>
             <type name="RTSPConnection" c:type="GstRTSPConnection*"/>
           </instance-parameter>
           <parameter name="message" transfer-ownership="none">
-            <doc xml:space="preserve">the message to send</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="4914">the message to send</doc>
             <type name="RTSPMessage" c:type="GstRTSPMessage*"/>
           </parameter>
           <parameter name="timeout" transfer-ownership="none">
-            <doc xml:space="preserve">a timeout value or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="4915">a timeout value or %NULL</doc>
             <type name="GLib.TimeVal" c:type="GTimeVal*"/>
           </parameter>
         </parameters>
       </method>
       <method name="send_messages"
               c:identifier="gst_rtsp_connection_send_messages"
-              version="1.16">
-        <doc xml:space="preserve">Attempt to send @messages to the connected @conn, blocking up to
+              version="1.16"
+              deprecated="1"
+              deprecated-version="1.18">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+             line="4934">Attempt to send @messages to the connected @conn, blocking up to
 the specified @timeout. @timeout can be %NULL, in which case this function
 might block forever.
 
 This function can be cancelled with gst_rtsp_connection_flush().</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspconnection.h"
+                         line="365"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">#GST_RTSP_OK on success.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+               line="4947">#GST_RTSP_OK on success.</doc>
           <type name="RTSPResult" c:type="GstRTSPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="conn" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPConnection</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="4936">a #GstRTSPConnection</doc>
             <type name="RTSPConnection" c:type="GstRTSPConnection*"/>
           </instance-parameter>
           <parameter name="messages" transfer-ownership="none">
-            <doc xml:space="preserve">the messages to send</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="4937">the messages to send</doc>
             <array length="1" zero-terminated="0" c:type="GstRTSPMessage*">
               <type name="RTSPMessage" c:type="GstRTSPMessage"/>
             </array>
           </parameter>
           <parameter name="n_messages" transfer-ownership="none">
-            <doc xml:space="preserve">the number of messages to send</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="4938">the number of messages to send</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="timeout" transfer-ownership="none">
-            <doc xml:space="preserve">a timeout value or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="4939">a timeout value or %NULL</doc>
             <type name="GLib.TimeVal" c:type="GTimeVal*"/>
           </parameter>
         </parameters>
       </method>
+      <method name="send_messages_usec"
+              c:identifier="gst_rtsp_connection_send_messages_usec"
+              version="1.18">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+             line="1813">Attempt to send @messages to the connected @conn, blocking up to
+the specified @timeout. @timeout can be 0, in which case this function
+might block forever.
+
+This function can be cancelled with gst_rtsp_connection_flush().</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspconnection.h"
+                         line="140"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+               line="1826">#GST_RTSP_OK on Since.</doc>
+          <type name="RTSPResult" c:type="GstRTSPResult"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="conn" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="1815">a #GstRTSPConnection</doc>
+            <type name="RTSPConnection" c:type="GstRTSPConnection*"/>
+          </instance-parameter>
+          <parameter name="messages" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="1816">the messages to send</doc>
+            <array length="1" zero-terminated="0" c:type="GstRTSPMessage*">
+              <type name="RTSPMessage" c:type="GstRTSPMessage"/>
+            </array>
+          </parameter>
+          <parameter name="n_messages" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="1817">the number of messages to send</doc>
+            <type name="guint" c:type="guint"/>
+          </parameter>
+          <parameter name="timeout" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="1818">a timeout value in microseconds</doc>
+            <type name="gint64" c:type="gint64"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="send_usec"
+              c:identifier="gst_rtsp_connection_send_usec"
+              version="1.18">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+             line="1787">Attempt to send @message to the connected @conn, blocking up to
+the specified @timeout. @timeout can be 0, in which case this function
+might block forever.
+
+This function can be cancelled with gst_rtsp_connection_flush().</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspconnection.h"
+                         line="136"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+               line="1799">#GST_RTSP_OK on success.</doc>
+          <type name="RTSPResult" c:type="GstRTSPResult"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="conn" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="1789">a #GstRTSPConnection</doc>
+            <type name="RTSPConnection" c:type="GstRTSPConnection*"/>
+          </instance-parameter>
+          <parameter name="message" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="1790">the message to send</doc>
+            <type name="RTSPMessage" c:type="GstRTSPMessage*"/>
+          </parameter>
+          <parameter name="timeout" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="1791">a timeout value in microseconds</doc>
+            <type name="gint64" c:type="gint64"/>
+          </parameter>
+        </parameters>
+      </method>
       <method name="set_accept_certificate_func"
               c:identifier="gst_rtsp_connection_set_accept_certificate_func"
               version="1.14">
-        <doc xml:space="preserve">Sets a custom accept-certificate function for checking certificates for
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+             line="748">Sets a custom accept-certificate function for checking certificates for
 validity. This will directly map to #GTlsConnection 's "accept-certificate"
 signal and be performed after the default checks of #GstRTSPConnection
 (checking against the #GTlsDatabase with the given #GTlsCertificateFlags)
 have failed. If no #GTlsDatabase is set on this connection, only @func will
 be called.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspconnection.h"
+                         line="118"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="conn" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPConnection</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="750">a #GstRTSPConnection</doc>
             <type name="RTSPConnection" c:type="GstRTSPConnection*"/>
           </instance-parameter>
           <parameter name="func"
@@ -608,7 +1228,9 @@ be called.</doc>
                      scope="notified"
                      closure="1"
                      destroy="2">
-            <doc xml:space="preserve">a #GstRTSPConnectionAcceptCertificateFunc to check certificates</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="751">a #GstRTSPConnectionAcceptCertificateFunc to check certificates</doc>
             <type name="RTSPConnectionAcceptCertificateFunc"
                   c:type="GstRTSPConnectionAcceptCertificateFunc"/>
           </parameter>
@@ -616,158 +1238,260 @@ be called.</doc>
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">User data passed to @func</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="753">User data passed to @func</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
           <parameter name="destroy_notify"
                      transfer-ownership="none"
                      scope="async">
-            <doc xml:space="preserve">#GDestroyNotify for @user_data</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="752">#GDestroyNotify for @user_data</doc>
             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_auth" c:identifier="gst_rtsp_connection_set_auth">
-        <doc xml:space="preserve">Configure @conn for authentication mode @method with @user and @pass as the
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+             line="3052">Configure @conn for authentication mode @method with @user and @pass as the
 user and password respectively.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspconnection.h"
+                         line="175"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">#GST_RTSP_OK.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+               line="3062">#GST_RTSP_OK.</doc>
           <type name="RTSPResult" c:type="GstRTSPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="conn" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPConnection</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="3054">a #GstRTSPConnection</doc>
             <type name="RTSPConnection" c:type="GstRTSPConnection*"/>
           </instance-parameter>
           <parameter name="method" transfer-ownership="none">
-            <doc xml:space="preserve">authentication method</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="3055">authentication method</doc>
             <type name="RTSPAuthMethod" c:type="GstRTSPAuthMethod"/>
           </parameter>
           <parameter name="user" transfer-ownership="none">
-            <doc xml:space="preserve">the user</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="3056">the user</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="pass" transfer-ownership="none">
-            <doc xml:space="preserve">the password</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="3057">the password</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_auth_param"
               c:identifier="gst_rtsp_connection_set_auth_param">
-        <doc xml:space="preserve">Setup @conn with authentication directives. This is not necesary for
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+             line="3131">Setup @conn with authentication directives. This is not necessary for
 methods #GST_RTSP_AUTH_NONE and #GST_RTSP_AUTH_BASIC. For
 #GST_RTSP_AUTH_DIGEST, directives should be taken from the digest challenge
 in the WWW-Authenticate response header and can include realm, domain,
 nonce, opaque, stale, algorithm, qop as per RFC2617.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspconnection.h"
+                         line="179"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="conn" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPConnection</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="3133">a #GstRTSPConnection</doc>
             <type name="RTSPConnection" c:type="GstRTSPConnection*"/>
           </instance-parameter>
           <parameter name="param" transfer-ownership="none">
-            <doc xml:space="preserve">authentication directive</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="3134">authentication directive</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="value" transfer-ownership="none">
-            <doc xml:space="preserve">value</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="3135">value</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </method>
+      <method name="set_content_length_limit"
+              c:identifier="gst_rtsp_connection_set_content_length_limit"
+              version="1.18">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+             line="3268">Configure @conn to use the specified Content-Length limit.
+Both requests and responses are validated. If content-length is
+exceeded, ENOMEM error will be returned.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspconnection.h"
+                         line="194"/>
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="conn" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="3270">a #GstRTSPConnection</doc>
+            <type name="RTSPConnection" c:type="GstRTSPConnection*"/>
+          </instance-parameter>
+          <parameter name="limit" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="3271">Content-Length limit</doc>
+            <type name="guint" c:type="guint"/>
+          </parameter>
+        </parameters>
+      </method>
       <method name="set_http_mode"
               c:identifier="gst_rtsp_connection_set_http_mode">
-        <doc xml:space="preserve">By setting the HTTP mode to %TRUE the message parsing will support HTTP
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+             line="3374">By setting the HTTP mode to %TRUE the message parsing will support HTTP
 messages in addition to the RTSP messages. It will also disable the
 automatic handling of setting up an HTTP tunnel.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspconnection.h"
+                         line="215"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="conn" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPConnection</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="3376">a #GstRTSPConnection</doc>
             <type name="RTSPConnection" c:type="GstRTSPConnection*"/>
           </instance-parameter>
           <parameter name="enable" transfer-ownership="none">
-            <doc xml:space="preserve">%TRUE to enable manual HTTP mode</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="3377">%TRUE to enable manual HTTP mode</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_ip" c:identifier="gst_rtsp_connection_set_ip">
-        <doc xml:space="preserve">Set the IP address of the server.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+             line="3322">Set the IP address of the server.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspconnection.h"
+                         line="206"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="conn" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPConnection</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="3324">a #GstRTSPConnection</doc>
             <type name="RTSPConnection" c:type="GstRTSPConnection*"/>
           </instance-parameter>
           <parameter name="ip" transfer-ownership="none">
-            <doc xml:space="preserve">an ip address</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="3325">an ip address</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_proxy" c:identifier="gst_rtsp_connection_set_proxy">
-        <doc xml:space="preserve">Set the proxy host and port.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+             line="3029">Set the proxy host and port.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspconnection.h"
+                         line="169"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">#GST_RTSP_OK.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+               line="3037">#GST_RTSP_OK.</doc>
           <type name="RTSPResult" c:type="GstRTSPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="conn" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPConnection</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="3031">a #GstRTSPConnection</doc>
             <type name="RTSPConnection" c:type="GstRTSPConnection*"/>
           </instance-parameter>
           <parameter name="host" transfer-ownership="none">
-            <doc xml:space="preserve">the proxy host</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="3032">the proxy host</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="port" transfer-ownership="none">
-            <doc xml:space="preserve">the proxy port</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="3033">the proxy port</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_qos_dscp"
               c:identifier="gst_rtsp_connection_set_qos_dscp">
-        <doc xml:space="preserve">Configure @conn to use the specified DSCP value.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+             line="3243">Configure @conn to use the specified DSCP value.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspconnection.h"
+                         line="189"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">#GST_RTSP_OK on success.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+               line="3250">#GST_RTSP_OK on success.</doc>
           <type name="RTSPResult" c:type="GstRTSPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="conn" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPConnection</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="3245">a #GstRTSPConnection</doc>
             <type name="RTSPConnection" c:type="GstRTSPConnection*"/>
           </instance-parameter>
           <parameter name="qos_dscp" transfer-ownership="none">
-            <doc xml:space="preserve">DSCP value</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="3246">DSCP value</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_remember_session_id"
               c:identifier="gst_rtsp_connection_set_remember_session_id">
-        <doc xml:space="preserve">Sets if the #GstRTSPConnection should remember the session id from the last
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+             line="3531">Sets if the #GstRTSPConnection should remember the session id from the last
 response received and force it onto any further requests.
 
 The default value is %TRUE</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspconnection.h"
+                         line="233"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="conn" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPConnection</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="3533">a #GstRTSPConnection</doc>
             <type name="RTSPConnection" c:type="GstRTSPConnection*"/>
           </instance-parameter>
           <parameter name="remember" transfer-ownership="none">
-            <doc xml:space="preserve">%TRUE if the connection should remember the session id</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="3534">%TRUE if the connection should remember the session id</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
@@ -775,19 +1499,27 @@ The default value is %TRUE</doc>
       <method name="set_tls_database"
               c:identifier="gst_rtsp_connection_set_tls_database"
               version="1.4">
-        <doc xml:space="preserve">Sets the anchor certificate authorities database. This certificate
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+             line="637">Sets the anchor certificate authorities database. This certificate
 database will be used to verify the server's certificate in case it
 can't be verified with the default certificate database first.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspconnection.h"
+                         line="102"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="conn" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPConnection</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="639">a #GstRTSPConnection</doc>
             <type name="RTSPConnection" c:type="GstRTSPConnection*"/>
           </instance-parameter>
           <parameter name="database" transfer-ownership="none">
-            <doc xml:space="preserve">a #GTlsDatabase</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="640">a #GTlsDatabase</doc>
             <type name="Gio.TlsDatabase" c:type="GTlsDatabase*"/>
           </parameter>
         </parameters>
@@ -795,19 +1527,27 @@ can't be verified with the default certificate database first.</doc>
       <method name="set_tls_interaction"
               c:identifier="gst_rtsp_connection_set_tls_interaction"
               version="1.6">
-        <doc xml:space="preserve">Sets a #GTlsInteraction object to be used when the connection or certificate
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+             line="693">Sets a #GTlsInteraction object to be used when the connection or certificate
 database need to interact with the user. This will be used to prompt the
 user for passwords where necessary.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspconnection.h"
+                         line="108"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="conn" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPConnection</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="695">a #GstRTSPConnection</doc>
             <type name="RTSPConnection" c:type="GstRTSPConnection*"/>
           </instance-parameter>
           <parameter name="interaction" transfer-ownership="none">
-            <doc xml:space="preserve">a #GTlsInteraction</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="696">a #GTlsInteraction</doc>
             <type name="Gio.TlsInteraction" c:type="GTlsInteraction*"/>
           </parameter>
         </parameters>
@@ -815,20 +1555,30 @@ user for passwords where necessary.</doc>
       <method name="set_tls_validation_flags"
               c:identifier="gst_rtsp_connection_set_tls_validation_flags"
               version="1.2.1">
-        <doc xml:space="preserve">Sets the TLS validation flags to be used to verify the peer
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+             line="590">Sets the TLS validation flags to be used to verify the peer
 certificate when a TLS connection is established.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspconnection.h"
+                         line="96"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">TRUE if the validation flags are set correctly, or FALSE if
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+               line="598">TRUE if the validation flags are set correctly, or FALSE if
 @conn is NULL or is not a TLS connection.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="conn" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPConnection</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="592">a #GstRTSPConnection</doc>
             <type name="RTSPConnection" c:type="GstRTSPConnection*"/>
           </instance-parameter>
           <parameter name="flags" transfer-ownership="none">
-            <doc xml:space="preserve">the validation flags.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="593">the validation flags.</doc>
             <type name="Gio.TlsCertificateFlags"
                   c:type="GTlsCertificateFlags"/>
           </parameter>
@@ -836,134 +1586,242 @@ certificate when a TLS connection is established.</doc>
       </method>
       <method name="set_tunneled"
               c:identifier="gst_rtsp_connection_set_tunneled">
-        <doc xml:space="preserve">Set the HTTP tunneling state of the connection. This must be configured before
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+             line="3391">Set the HTTP tunneling state of the connection. This must be configured before
 the @conn is connected.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspconnection.h"
+                         line="221"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="conn" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPConnection</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="3393">a #GstRTSPConnection</doc>
             <type name="RTSPConnection" c:type="GstRTSPConnection*"/>
           </instance-parameter>
           <parameter name="tunneled" transfer-ownership="none">
-            <doc xml:space="preserve">the new state</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="3394">the new state</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </method>
-      <method name="write" c:identifier="gst_rtsp_connection_write">
-        <doc xml:space="preserve">Attempt to write @size bytes of @data to the connected @conn, blocking up to
+      <method name="write"
+              c:identifier="gst_rtsp_connection_write"
+              deprecated="1"
+              deprecated-version="1.18">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+             line="4886">Attempt to write @size bytes of @data to the connected @conn, blocking up to
 the specified @timeout. @timeout can be %NULL, in which case this function
 might block forever.
 
 This function can be cancelled with gst_rtsp_connection_flush().</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspconnection.h"
+                         line="357"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">#GST_RTSP_OK on success.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+               line="4899">#GST_RTSP_OK on success.</doc>
           <type name="RTSPResult" c:type="GstRTSPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="conn" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPConnection</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="4888">a #GstRTSPConnection</doc>
             <type name="RTSPConnection" c:type="GstRTSPConnection*"/>
           </instance-parameter>
           <parameter name="data" transfer-ownership="none">
-            <doc xml:space="preserve">the data to write</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="4889">the data to write</doc>
             <type name="guint8" c:type="const guint8*"/>
           </parameter>
           <parameter name="size" transfer-ownership="none">
-            <doc xml:space="preserve">the size of @data</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="4890">the size of @data</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="timeout" transfer-ownership="none">
-            <doc xml:space="preserve">a timeout value or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="4891">a timeout value or %NULL</doc>
             <type name="GLib.TimeVal" c:type="GTimeVal*"/>
           </parameter>
         </parameters>
       </method>
+      <method name="write_usec"
+              c:identifier="gst_rtsp_connection_write_usec"
+              version="1.18">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+             line="1611">Attempt to write @size bytes of @data to the connected @conn, blocking up to
+the specified @timeout. @timeout can be 0, in which case this function
+might block forever.
+
+This function can be cancelled with gst_rtsp_connection_flush().</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspconnection.h"
+                         line="130"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+               line="1624">#GST_RTSP_OK on success.</doc>
+          <type name="RTSPResult" c:type="GstRTSPResult"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="conn" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="1613">a #GstRTSPConnection</doc>
+            <type name="RTSPConnection" c:type="GstRTSPConnection*"/>
+          </instance-parameter>
+          <parameter name="data" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="1614">the data to write</doc>
+            <type name="guint8" c:type="const guint8*"/>
+          </parameter>
+          <parameter name="size" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="1615">the size of @data</doc>
+            <type name="guint" c:type="guint"/>
+          </parameter>
+          <parameter name="timeout" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="1616">a timeout value or 0</doc>
+            <type name="gint64" c:type="gint64"/>
+          </parameter>
+        </parameters>
+      </method>
       <function name="accept" c:identifier="gst_rtsp_connection_accept">
-        <doc xml:space="preserve">Accept a new connection on @socket and create a new #GstRTSPConnection for
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+             line="485">Accept a new connection on @socket and create a new #GstRTSPConnection for
 handling communication on new socket.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspconnection.h"
+                         line="76"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">#GST_RTSP_OK when @conn contains a valid connection.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+               line="494">#GST_RTSP_OK when @conn contains a valid connection.</doc>
           <type name="RTSPResult" c:type="GstRTSPResult"/>
         </return-value>
         <parameters>
           <parameter name="socket" transfer-ownership="none">
-            <doc xml:space="preserve">a socket</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="487">a socket</doc>
             <type name="Gio.Socket" c:type="GSocket*"/>
           </parameter>
           <parameter name="conn"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">storage for a #GstRTSPConnection</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="488">storage for a #GstRTSPConnection</doc>
             <type name="RTSPConnection" c:type="GstRTSPConnection**"/>
           </parameter>
           <parameter name="cancellable"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">a #GCancellable to cancel the operation</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="489">a #GCancellable to cancel the operation</doc>
             <type name="Gio.Cancellable" c:type="GCancellable*"/>
           </parameter>
         </parameters>
       </function>
       <function name="create" c:identifier="gst_rtsp_connection_create">
-        <doc xml:space="preserve">Create a newly allocated #GstRTSPConnection from @url and store it in @conn.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+             line="329">Create a newly allocated #GstRTSPConnection from @url and store it in @conn.
 The connection will not yet attempt to connect to @url, use
 gst_rtsp_connection_connect().
 
 A copy of @url will be made.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspconnection.h"
+                         line="66"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">#GST_RTSP_OK when @conn contains a valid connection.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+               line="340">#GST_RTSP_OK when @conn contains a valid connection.</doc>
           <type name="RTSPResult" c:type="GstRTSPResult"/>
         </return-value>
         <parameters>
           <parameter name="url" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPUrl</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="331">a #GstRTSPUrl</doc>
             <type name="RTSPUrl" c:type="const GstRTSPUrl*"/>
           </parameter>
           <parameter name="conn"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">storage for a #GstRTSPConnection</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="332">storage for a #GstRTSPConnection</doc>
             <type name="RTSPConnection" c:type="GstRTSPConnection**"/>
           </parameter>
         </parameters>
       </function>
       <function name="create_from_socket"
                 c:identifier="gst_rtsp_connection_create_from_socket">
-        <doc xml:space="preserve">Create a new #GstRTSPConnection for handling communication on the existing
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+             line="408">Create a new #GstRTSPConnection for handling communication on the existing
 socket @socket. The @initial_buffer contains zero terminated data already
 read from @socket which should be used before starting to read new data.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspconnection.h"
+                         line="69"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">#GST_RTSP_OK when @conn contains a valid connection.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+               line="420">#GST_RTSP_OK when @conn contains a valid connection.</doc>
           <type name="RTSPResult" c:type="GstRTSPResult"/>
         </return-value>
         <parameters>
           <parameter name="socket" transfer-ownership="none">
-            <doc xml:space="preserve">a #GSocket</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="410">a #GSocket</doc>
             <type name="Gio.Socket" c:type="GSocket*"/>
           </parameter>
           <parameter name="ip" transfer-ownership="none">
-            <doc xml:space="preserve">the IP address of the other end</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="411">the IP address of the other end</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="port" transfer-ownership="none">
-            <doc xml:space="preserve">the port used by the other end</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="412">the port used by the other end</doc>
             <type name="guint16" c:type="guint16"/>
           </parameter>
           <parameter name="initial_buffer" transfer-ownership="none">
-            <doc xml:space="preserve">data already read from @fd</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="413">data already read from @fd</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="conn"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">storage for a #GstRTSPConnection</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="414">storage for a #GstRTSPConnection</doc>
             <type name="RTSPConnection" c:type="GstRTSPConnection**"/>
           </parameter>
         </parameters>
@@ -971,6 +1829,8 @@ read from @socket which should be used before starting to read new data.</doc>
     </record>
     <callback name="RTSPConnectionAcceptCertificateFunc"
               c:type="GstRTSPConnectionAcceptCertificateFunc">
+      <source-position filename="gst-libs/gst/rtsp/gstrtspconnection.h"
+                       line="113"/>
       <return-value transfer-ownership="none">
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
@@ -997,18 +1857,24 @@ read from @socket which should be used before starting to read new data.</doc>
               glib:type-name="GstRTSPEvent"
               glib:get-type="gst_rtsp_event_get_type"
               c:type="GstRTSPEvent">
-      <doc xml:space="preserve">The possible events for the connection.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtsp/gstrtspdefs.h"
+           line="111">The possible events for the connection.</doc>
       <member name="read"
               value="1"
               c:identifier="GST_RTSP_EV_READ"
               glib:nick="read">
-        <doc xml:space="preserve">connection is readable</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspdefs.h"
+             line="113">connection is readable</doc>
       </member>
       <member name="write"
               value="2"
               c:identifier="GST_RTSP_EV_WRITE"
               glib:nick="write">
-        <doc xml:space="preserve">connection is writable</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspdefs.h"
+             line="114">connection is writable</doc>
       </member>
     </bitfield>
     <interface name="RTSPExtension"
@@ -1017,9 +1883,15 @@ read from @socket which should be used before starting to read new data.</doc>
                glib:type-name="GstRTSPExtension"
                glib:get-type="gst_rtsp_extension_get_type"
                glib:type-struct="RTSPExtensionInterface">
-      <doc xml:space="preserve">This interface is implemented e.g. by the Windows Media Streaming RTSP
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtsp/gstrtspextension.c"
+           line="22">This interface is implemented e.g. by the Windows Media Streaming RTSP
  exentension (rtspwms) and the RealMedia RTSP extension (rtspreal).</doc>
+      <source-position filename="gst-libs/gst/rtsp/gstrtspextension.h"
+                       line="77"/>
       <virtual-method name="after_send" invoker="after_send">
+        <source-position filename="gst-libs/gst/rtsp/gstrtspextension.h"
+                         line="58"/>
         <return-value transfer-ownership="none">
           <type name="RTSPResult" c:type="GstRTSPResult"/>
         </return-value>
@@ -1036,6 +1908,8 @@ read from @socket which should be used before starting to read new data.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="before_send" invoker="before_send">
+        <source-position filename="gst-libs/gst/rtsp/gstrtspextension.h"
+                         line="57"/>
         <return-value transfer-ownership="none">
           <type name="RTSPResult" c:type="GstRTSPResult"/>
         </return-value>
@@ -1049,6 +1923,8 @@ read from @socket which should be used before starting to read new data.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="configure_stream" invoker="configure_stream">
+        <source-position filename="gst-libs/gst/rtsp/gstrtspextension.h"
+                         line="63"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -1062,6 +1938,8 @@ read from @socket which should be used before starting to read new data.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="detect_server" invoker="detect_server">
+        <source-position filename="gst-libs/gst/rtsp/gstrtspextension.h"
+                         line="55"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -1075,6 +1953,8 @@ read from @socket which should be used before starting to read new data.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="get_transports" invoker="get_transports">
+        <source-position filename="gst-libs/gst/rtsp/gstrtspextension.h"
+                         line="65"/>
         <return-value transfer-ownership="none">
           <type name="RTSPResult" c:type="GstRTSPResult"/>
         </return-value>
@@ -1091,6 +1971,8 @@ read from @socket which should be used before starting to read new data.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="parse_sdp" invoker="parse_sdp">
+        <source-position filename="gst-libs/gst/rtsp/gstrtspextension.h"
+                         line="60"/>
         <return-value transfer-ownership="none">
           <type name="RTSPResult" c:type="GstRTSPResult"/>
         </return-value>
@@ -1107,6 +1989,8 @@ read from @socket which should be used before starting to read new data.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="receive_request" invoker="receive_request">
+        <source-position filename="gst-libs/gst/rtsp/gstrtspextension.h"
+                         line="73"/>
         <return-value transfer-ownership="none">
           <type name="RTSPResult" c:type="GstRTSPResult"/>
         </return-value>
@@ -1120,6 +2004,8 @@ read from @socket which should be used before starting to read new data.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="send" invoker="send">
+        <source-position filename="gst-libs/gst/rtsp/gstrtspextension.h"
+                         line="70"/>
         <return-value transfer-ownership="none">
           <type name="RTSPResult" c:type="GstRTSPResult"/>
         </return-value>
@@ -1136,6 +2022,8 @@ read from @socket which should be used before starting to read new data.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="setup_media" invoker="setup_media">
+        <source-position filename="gst-libs/gst/rtsp/gstrtspextension.h"
+                         line="61"/>
         <return-value transfer-ownership="none">
           <type name="RTSPResult" c:type="GstRTSPResult"/>
         </return-value>
@@ -1149,6 +2037,8 @@ read from @socket which should be used before starting to read new data.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="stream_select" invoker="stream_select">
+        <source-position filename="gst-libs/gst/rtsp/gstrtspextension.h"
+                         line="67"/>
         <return-value transfer-ownership="none">
           <type name="RTSPResult" c:type="GstRTSPResult"/>
         </return-value>
@@ -1162,6 +2052,8 @@ read from @socket which should be used before starting to read new data.</doc>
         </parameters>
       </virtual-method>
       <method name="after_send" c:identifier="gst_rtsp_extension_after_send">
+        <source-position filename="gst-libs/gst/rtsp/gstrtspextension.h"
+                         line="91"/>
         <return-value transfer-ownership="none">
           <type name="RTSPResult" c:type="GstRTSPResult"/>
         </return-value>
@@ -1178,6 +2070,8 @@ read from @socket which should be used before starting to read new data.</doc>
         </parameters>
       </method>
       <method name="before_send" c:identifier="gst_rtsp_extension_before_send">
+        <source-position filename="gst-libs/gst/rtsp/gstrtspextension.h"
+                         line="88"/>
         <return-value transfer-ownership="none">
           <type name="RTSPResult" c:type="GstRTSPResult"/>
         </return-value>
@@ -1192,6 +2086,8 @@ read from @socket which should be used before starting to read new data.</doc>
       </method>
       <method name="configure_stream"
               c:identifier="gst_rtsp_extension_configure_stream">
+        <source-position filename="gst-libs/gst/rtsp/gstrtspextension.h"
+                         line="102"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -1206,6 +2102,8 @@ read from @socket which should be used before starting to read new data.</doc>
       </method>
       <method name="detect_server"
               c:identifier="gst_rtsp_extension_detect_server">
+        <source-position filename="gst-libs/gst/rtsp/gstrtspextension.h"
+                         line="85"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -1220,6 +2118,8 @@ read from @socket which should be used before starting to read new data.</doc>
       </method>
       <method name="get_transports"
               c:identifier="gst_rtsp_extension_get_transports">
+        <source-position filename="gst-libs/gst/rtsp/gstrtspextension.h"
+                         line="105"/>
         <return-value transfer-ownership="none">
           <type name="RTSPResult" c:type="GstRTSPResult"/>
         </return-value>
@@ -1236,6 +2136,8 @@ read from @socket which should be used before starting to read new data.</doc>
         </parameters>
       </method>
       <method name="parse_sdp" c:identifier="gst_rtsp_extension_parse_sdp">
+        <source-position filename="gst-libs/gst/rtsp/gstrtspextension.h"
+                         line="95"/>
         <return-value transfer-ownership="none">
           <type name="RTSPResult" c:type="GstRTSPResult"/>
         </return-value>
@@ -1253,6 +2155,8 @@ read from @socket which should be used before starting to read new data.</doc>
       </method>
       <method name="receive_request"
               c:identifier="gst_rtsp_extension_receive_request">
+        <source-position filename="gst-libs/gst/rtsp/gstrtspextension.h"
+                         line="112"/>
         <return-value transfer-ownership="none">
           <type name="RTSPResult" c:type="GstRTSPResult"/>
         </return-value>
@@ -1266,6 +2170,8 @@ read from @socket which should be used before starting to read new data.</doc>
         </parameters>
       </method>
       <method name="send" c:identifier="gst_rtsp_extension_send">
+        <source-position filename="gst-libs/gst/rtsp/gstrtspextension.h"
+                         line="117"/>
         <return-value transfer-ownership="none">
           <type name="RTSPResult" c:type="GstRTSPResult"/>
         </return-value>
@@ -1282,6 +2188,8 @@ read from @socket which should be used before starting to read new data.</doc>
         </parameters>
       </method>
       <method name="setup_media" c:identifier="gst_rtsp_extension_setup_media">
+        <source-position filename="gst-libs/gst/rtsp/gstrtspextension.h"
+                         line="99"/>
         <return-value transfer-ownership="none">
           <type name="RTSPResult" c:type="GstRTSPResult"/>
         </return-value>
@@ -1296,6 +2204,8 @@ read from @socket which should be used before starting to read new data.</doc>
       </method>
       <method name="stream_select"
               c:identifier="gst_rtsp_extension_stream_select">
+        <source-position filename="gst-libs/gst/rtsp/gstrtspextension.h"
+                         line="109"/>
         <return-value transfer-ownership="none">
           <type name="RTSPResult" c:type="GstRTSPResult"/>
         </return-value>
@@ -1331,12 +2241,18 @@ read from @socket which should be used before starting to read new data.</doc>
     <record name="RTSPExtensionInterface"
             c:type="GstRTSPExtensionInterface"
             glib:is-gtype-struct-for="RTSPExtension">
-      <doc xml:space="preserve">An interface representing RTSP extensions.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtsp/gstrtspextension.h"
+           line="43">An interface representing RTSP extensions.</doc>
+      <source-position filename="gst-libs/gst/rtsp/gstrtspextension.h"
+                       line="77"/>
       <field name="parent">
         <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
       </field>
       <field name="detect_server">
         <callback name="detect_server">
+          <source-position filename="gst-libs/gst/rtsp/gstrtspextension.h"
+                           line="55"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -1352,6 +2268,8 @@ read from @socket which should be used before starting to read new data.</doc>
       </field>
       <field name="before_send">
         <callback name="before_send">
+          <source-position filename="gst-libs/gst/rtsp/gstrtspextension.h"
+                           line="57"/>
           <return-value transfer-ownership="none">
             <type name="RTSPResult" c:type="GstRTSPResult"/>
           </return-value>
@@ -1367,6 +2285,8 @@ read from @socket which should be used before starting to read new data.</doc>
       </field>
       <field name="after_send">
         <callback name="after_send">
+          <source-position filename="gst-libs/gst/rtsp/gstrtspextension.h"
+                           line="58"/>
           <return-value transfer-ownership="none">
             <type name="RTSPResult" c:type="GstRTSPResult"/>
           </return-value>
@@ -1385,6 +2305,8 @@ read from @socket which should be used before starting to read new data.</doc>
       </field>
       <field name="parse_sdp">
         <callback name="parse_sdp">
+          <source-position filename="gst-libs/gst/rtsp/gstrtspextension.h"
+                           line="60"/>
           <return-value transfer-ownership="none">
             <type name="RTSPResult" c:type="GstRTSPResult"/>
           </return-value>
@@ -1403,6 +2325,8 @@ read from @socket which should be used before starting to read new data.</doc>
       </field>
       <field name="setup_media">
         <callback name="setup_media">
+          <source-position filename="gst-libs/gst/rtsp/gstrtspextension.h"
+                           line="61"/>
           <return-value transfer-ownership="none">
             <type name="RTSPResult" c:type="GstRTSPResult"/>
           </return-value>
@@ -1418,6 +2342,8 @@ read from @socket which should be used before starting to read new data.</doc>
       </field>
       <field name="configure_stream">
         <callback name="configure_stream">
+          <source-position filename="gst-libs/gst/rtsp/gstrtspextension.h"
+                           line="63"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -1433,6 +2359,8 @@ read from @socket which should be used before starting to read new data.</doc>
       </field>
       <field name="get_transports">
         <callback name="get_transports">
+          <source-position filename="gst-libs/gst/rtsp/gstrtspextension.h"
+                           line="65"/>
           <return-value transfer-ownership="none">
             <type name="RTSPResult" c:type="GstRTSPResult"/>
           </return-value>
@@ -1451,6 +2379,8 @@ read from @socket which should be used before starting to read new data.</doc>
       </field>
       <field name="stream_select">
         <callback name="stream_select">
+          <source-position filename="gst-libs/gst/rtsp/gstrtspextension.h"
+                           line="67"/>
           <return-value transfer-ownership="none">
             <type name="RTSPResult" c:type="GstRTSPResult"/>
           </return-value>
@@ -1466,6 +2396,8 @@ read from @socket which should be used before starting to read new data.</doc>
       </field>
       <field name="send">
         <callback name="send">
+          <source-position filename="gst-libs/gst/rtsp/gstrtspextension.h"
+                           line="70"/>
           <return-value transfer-ownership="none">
             <type name="RTSPResult" c:type="GstRTSPResult"/>
           </return-value>
@@ -1484,6 +2416,8 @@ read from @socket which should be used before starting to read new data.</doc>
       </field>
       <field name="receive_request">
         <callback name="receive_request">
+          <source-position filename="gst-libs/gst/rtsp/gstrtspextension.h"
+                           line="73"/>
           <return-value transfer-ownership="none">
             <type name="RTSPResult" c:type="GstRTSPResult"/>
           </return-value>
@@ -1498,7 +2432,7 @@ read from @socket which should be used before starting to read new data.</doc>
         </callback>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -1507,31 +2441,41 @@ read from @socket which should be used before starting to read new data.</doc>
                  glib:type-name="GstRTSPFamily"
                  glib:get-type="gst_rtsp_family_get_type"
                  c:type="GstRTSPFamily">
-      <doc xml:space="preserve">The possible network families.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtsp/gstrtspdefs.h"
+           line="123">The possible network families.</doc>
       <member name="none"
               value="0"
               c:identifier="GST_RTSP_FAM_NONE"
               glib:nick="none">
-        <doc xml:space="preserve">unknown network family</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspdefs.h"
+             line="125">unknown network family</doc>
       </member>
       <member name="inet"
               value="1"
               c:identifier="GST_RTSP_FAM_INET"
               glib:nick="inet">
-        <doc xml:space="preserve">internet</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspdefs.h"
+             line="126">internet</doc>
       </member>
       <member name="inet6"
               value="2"
               c:identifier="GST_RTSP_FAM_INET6"
               glib:nick="inet6">
-        <doc xml:space="preserve">internet V6</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspdefs.h"
+             line="127">internet V6</doc>
       </member>
     </enumeration>
     <enumeration name="RTSPHeaderField"
                  glib:type-name="GstRTSPHeaderField"
                  glib:get-type="gst_rtsp_header_field_get_type"
                  c:type="GstRTSPHeaderField">
-      <doc xml:space="preserve">Enumeration of rtsp header fields</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtsp/gstrtspdefs.h"
+           line="230">Enumeration of rtsp header fields</doc>
       <member name="invalid"
               value="0"
               c:identifier="GST_RTSP_HDR_INVALID"
@@ -1987,42 +2931,56 @@ read from @socket which should be used before starting to read new data.</doc>
               glib:type-name="GstRTSPLowerTrans"
               glib:get-type="gst_rtsp_lower_trans_get_type"
               c:type="GstRTSPLowerTrans">
-      <doc xml:space="preserve">The different transport methods.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtsp/gstrtsptransport.h"
+           line="86">The different transport methods.</doc>
       <member name="unknown"
               value="0"
               c:identifier="GST_RTSP_LOWER_TRANS_UNKNOWN"
               glib:nick="unknown">
-        <doc xml:space="preserve">invalid transport flag</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtsptransport.h"
+             line="88">invalid transport flag</doc>
       </member>
       <member name="udp"
               value="1"
               c:identifier="GST_RTSP_LOWER_TRANS_UDP"
               glib:nick="udp">
-        <doc xml:space="preserve">stream data over UDP</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtsptransport.h"
+             line="89">stream data over UDP</doc>
       </member>
       <member name="udp_mcast"
               value="2"
               c:identifier="GST_RTSP_LOWER_TRANS_UDP_MCAST"
               glib:nick="udp-mcast">
-        <doc xml:space="preserve">stream data over UDP multicast</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtsptransport.h"
+             line="90">stream data over UDP multicast</doc>
       </member>
       <member name="tcp"
               value="4"
               c:identifier="GST_RTSP_LOWER_TRANS_TCP"
               glib:nick="tcp">
-        <doc xml:space="preserve">stream data over TCP</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtsptransport.h"
+             line="91">stream data over TCP</doc>
       </member>
       <member name="http"
               value="16"
               c:identifier="GST_RTSP_LOWER_TRANS_HTTP"
               glib:nick="http">
-        <doc xml:space="preserve">stream data tunneled over HTTP.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtsptransport.h"
+             line="92">stream data tunneled over HTTP.</doc>
       </member>
       <member name="tls"
               value="32"
               c:identifier="GST_RTSP_LOWER_TRANS_TLS"
               glib:nick="tls">
-        <doc xml:space="preserve">encrypt TCP and HTTP with TLS</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtsptransport.h"
+             line="93">encrypt TCP and HTTP with TLS</doc>
       </member>
     </bitfield>
     <record name="RTSPMessage"
@@ -2030,13 +2988,23 @@ read from @socket which should be used before starting to read new data.</doc>
             glib:type-name="GstRTSPMessage"
             glib:get-type="gst_rtsp_msg_get_type"
             c:symbol-prefix="rtsp_msg">
-      <doc xml:space="preserve">Provides methods for creating and parsing request, response and data messages.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+           line="45">Provides methods for creating and parsing request, response and data messages.</doc>
+      <source-position filename="gst-libs/gst/rtsp/gstrtspmessage.h"
+                       line="109"/>
       <field name="type" writable="1">
-        <doc xml:space="preserve">the message type</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspmessage.h"
+             line="76">the message type</doc>
         <type name="RTSPMsgType" c:type="GstRTSPMsgType"/>
       </field>
       <union name="type_data" c:type="type_data">
+        <source-position filename="gst-libs/gst/rtsp/gstrtspmessage.h"
+                         line="99"/>
         <record name="request" c:type="request">
+          <source-position filename="gst-libs/gst/rtsp/gstrtspmessage.h"
+                           line="90"/>
           <field name="method" writable="1">
             <type name="RTSPMethod" c:type="GstRTSPMethod"/>
           </field>
@@ -2048,6 +3016,8 @@ read from @socket which should be used before starting to read new data.</doc>
           </field>
         </record>
         <record name="response" c:type="response">
+          <source-position filename="gst-libs/gst/rtsp/gstrtspmessage.h"
+                           line="95"/>
           <field name="code" writable="1">
             <type name="RTSPStatusCode" c:type="GstRTSPStatusCode"/>
           </field>
@@ -2059,6 +3029,8 @@ read from @socket which should be used before starting to read new data.</doc>
           </field>
         </record>
         <record name="data" c:type="data">
+          <source-position filename="gst-libs/gst/rtsp/gstrtspmessage.h"
+                           line="98"/>
           <field name="channel" writable="1">
             <type name="guint8" c:type="guint8"/>
           </field>
@@ -2079,28 +3051,40 @@ read from @socket which should be used before starting to read new data.</doc>
         <type name="Gst.Buffer" c:type="GstBuffer*"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="3">
+        <array zero-terminated="0" fixed-size="3">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
       <method name="add_header" c:identifier="gst_rtsp_message_add_header">
-        <doc xml:space="preserve">Add a header with key @field and @value to @msg. This function takes a copy
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+             line="628">Add a header with key @field and @value to @msg. This function takes a copy
 of @value.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspmessage.h"
+                         line="193"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstRTSPResult.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+               line="637">a #GstRTSPResult.</doc>
           <type name="RTSPResult" c:type="GstRTSPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+                 line="630">a #GstRTSPMessage</doc>
             <type name="RTSPMessage" c:type="GstRTSPMessage*"/>
           </instance-parameter>
           <parameter name="field" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPHeaderField</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+                 line="631">a #GstRTSPHeaderField</doc>
             <type name="RTSPHeaderField" c:type="GstRTSPHeaderField"/>
           </parameter>
           <parameter name="value" transfer-ownership="none">
-            <doc xml:space="preserve">the value of the header</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+                 line="632">the value of the header</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
@@ -2108,114 +3092,172 @@ of @value.</doc>
       <method name="add_header_by_name"
               c:identifier="gst_rtsp_message_add_header_by_name"
               version="1.6">
-        <doc xml:space="preserve">Add a header with key @header and @value to @msg. This function takes a copy
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+             line="722">Add a header with key @header and @value to @msg. This function takes a copy
 of @value.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspmessage.h"
+                         line="214"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstRTSPResult.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+               line="731">a #GstRTSPResult.</doc>
           <type name="RTSPResult" c:type="GstRTSPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+                 line="724">a #GstRTSPMessage</doc>
             <type name="RTSPMessage" c:type="GstRTSPMessage*"/>
           </instance-parameter>
           <parameter name="header" transfer-ownership="none">
-            <doc xml:space="preserve">header string</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+                 line="725">header string</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="value" transfer-ownership="none">
-            <doc xml:space="preserve">the value of the header</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+                 line="726">the value of the header</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </method>
       <method name="append_headers"
               c:identifier="gst_rtsp_message_append_headers">
-        <doc xml:space="preserve">Append the currently configured headers in @msg to the #GString @str suitable
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+             line="895">Append the currently configured headers in @msg to the #GString @str suitable
 for transmission.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspmessage.h"
+                         line="237"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">#GST_RTSP_OK.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+               line="903">#GST_RTSP_OK.</doc>
           <type name="RTSPResult" c:type="GstRTSPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+                 line="897">a #GstRTSPMessage</doc>
             <type name="RTSPMessage" c:type="const GstRTSPMessage*"/>
           </instance-parameter>
           <parameter name="str" transfer-ownership="none">
-            <doc xml:space="preserve">a string</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+                 line="898">a string</doc>
             <type name="GLib.String" c:type="GString*"/>
           </parameter>
         </parameters>
       </method>
       <method name="copy" c:identifier="gst_rtsp_message_copy" version="1.14">
-        <doc xml:space="preserve">Allocate a new copy of @msg and store the result in @copy. The value in
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+             line="539">Allocate a new copy of @msg and store the result in @copy. The value in
 @copy should be release with gst_rtsp_message_free function.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspmessage.h"
+                         line="132"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstRTSPResult</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+               line="547">a #GstRTSPResult</doc>
           <type name="RTSPResult" c:type="GstRTSPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+                 line="541">a #GstRTSPMessage</doc>
             <type name="RTSPMessage" c:type="const GstRTSPMessage*"/>
           </instance-parameter>
           <parameter name="copy"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">pointer to new #GstRTSPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+                 line="542">pointer to new #GstRTSPMessage</doc>
             <type name="RTSPMessage" c:type="GstRTSPMessage**"/>
           </parameter>
         </parameters>
       </method>
       <method name="dump" c:identifier="gst_rtsp_message_dump">
-        <doc xml:space="preserve">Dump the contents of @msg to stdout.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+             line="1193">Dump the contents of @msg to stdout.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspmessage.h"
+                         line="339"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">#GST_RTSP_OK.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+               line="1199">#GST_RTSP_OK.</doc>
           <type name="RTSPResult" c:type="GstRTSPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+                 line="1195">a #GstRTSPMessage</doc>
             <type name="RTSPMessage" c:type="GstRTSPMessage*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="free" c:identifier="gst_rtsp_message_free">
-        <doc xml:space="preserve">Free the memory used by @msg.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+             line="517">Free the memory used by @msg.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspmessage.h"
+                         line="130"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstRTSPResult.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+               line="523">a #GstRTSPResult.</doc>
           <type name="RTSPResult" c:type="GstRTSPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+                 line="519">a #GstRTSPMessage</doc>
             <type name="RTSPMessage" c:type="GstRTSPMessage*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_body" c:identifier="gst_rtsp_message_get_body">
-        <doc xml:space="preserve">Get the body of @msg. @data remains valid for as long as @msg is valid and
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+             line="975">Get the body of @msg. @data remains valid for as long as @msg is valid and
 unchanged.
 
 If the message body was set as a #GstBuffer before this will cause the data
 to be copied and stored in the message. The #GstBuffer will no longer be
 kept in the message.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspmessage.h"
+                         line="253"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">#GST_RTSP_OK.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+               line="988">#GST_RTSP_OK.</doc>
           <type name="RTSPResult" c:type="GstRTSPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+                 line="977">a #GstRTSPMessage</doc>
             <type name="RTSPMessage" c:type="const GstRTSPMessage*"/>
           </instance-parameter>
           <parameter name="data"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="none">
-            <doc xml:space="preserve">location for the data</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+                 line="978">location for the data</doc>
             <array length="1" zero-terminated="0" c:type="guint8**">
               <type name="guint8" c:type="guint8*"/>
             </array>
@@ -2224,7 +3266,9 @@ kept in the message.</doc>
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">location for the size of @data</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+                 line="979">location for the size of @data</doc>
             <type name="guint" c:type="guint*"/>
           </parameter>
         </parameters>
@@ -2232,56 +3276,80 @@ kept in the message.</doc>
       <method name="get_body_buffer"
               c:identifier="gst_rtsp_message_get_body_buffer"
               version="1.16">
-        <doc xml:space="preserve">Get the body of @msg. @buffer remains valid for as long as @msg is valid and
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+             line="1099">Get the body of @msg. @buffer remains valid for as long as @msg is valid and
 unchanged.
 
 If body data was set from raw memory instead of a #GstBuffer this function
 will always return %NULL. The caller can check if there is a body buffer by
 calling gst_rtsp_message_has_body_buffer().</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspmessage.h"
+                         line="271"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">#GST_RTSP_OK.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+               line="1111">#GST_RTSP_OK.</doc>
           <type name="RTSPResult" c:type="GstRTSPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+                 line="1101">a #GstRTSPMessage</doc>
             <type name="RTSPMessage" c:type="const GstRTSPMessage*"/>
           </instance-parameter>
           <parameter name="buffer"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="none">
-            <doc xml:space="preserve">location for the buffer</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+                 line="1102">location for the buffer</doc>
             <type name="Gst.Buffer" c:type="GstBuffer**"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_header" c:identifier="gst_rtsp_message_get_header">
-        <doc xml:space="preserve">Get the @indx header value with key @field from @msg. The result in @value
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+             line="683">Get the @indx header value with key @field from @msg. The result in @value
 stays valid as long as it remains present in @msg.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspmessage.h"
+                         line="208"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">#GST_RTSP_OK when @field was found, #GST_RTSP_ENOTIMPL if the key
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+               line="693">#GST_RTSP_OK when @field was found, #GST_RTSP_ENOTIMPL if the key
 was not found.</doc>
           <type name="RTSPResult" c:type="GstRTSPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+                 line="685">a #GstRTSPMessage</doc>
             <type name="RTSPMessage" c:type="const GstRTSPMessage*"/>
           </instance-parameter>
           <parameter name="field" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPHeaderField</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+                 line="686">a #GstRTSPHeaderField</doc>
             <type name="RTSPHeaderField" c:type="GstRTSPHeaderField"/>
           </parameter>
           <parameter name="value"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="none">
-            <doc xml:space="preserve">pointer to hold the result</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+                 line="687">pointer to hold the result</doc>
             <type name="utf8" c:type="gchar**"/>
           </parameter>
           <parameter name="indx" transfer-ownership="none">
-            <doc xml:space="preserve">the index of the header</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+                 line="688">the index of the header</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
         </parameters>
@@ -2289,44 +3357,66 @@ was not found.</doc>
       <method name="get_header_by_name"
               c:identifier="gst_rtsp_message_get_header_by_name"
               version="1.6">
-        <doc xml:space="preserve">Get the @index header value with key @header from @msg. The result in @value
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+             line="857">Get the @index header value with key @header from @msg. The result in @value
 stays valid as long as it remains present in @msg.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspmessage.h"
+                         line="229"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">#GST_RTSP_OK when @field was found, #GST_RTSP_ENOTIMPL if the key
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+               line="867">#GST_RTSP_OK when @field was found, #GST_RTSP_ENOTIMPL if the key
 was not found.</doc>
           <type name="RTSPResult" c:type="GstRTSPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+                 line="859">a #GstRTSPMessage</doc>
             <type name="RTSPMessage" c:type="GstRTSPMessage*"/>
           </instance-parameter>
           <parameter name="header" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPHeaderField</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+                 line="860">a #GstRTSPHeaderField</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="value"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="none">
-            <doc xml:space="preserve">pointer to hold the result</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+                 line="861">pointer to hold the result</doc>
             <type name="utf8" c:type="gchar**"/>
           </parameter>
           <parameter name="index" transfer-ownership="none">
-            <doc xml:space="preserve">the index of the header</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+                 line="862">the index of the header</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_type" c:identifier="gst_rtsp_message_get_type">
-        <doc xml:space="preserve">Get the message type of @msg.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+             line="159">Get the message type of @msg.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspmessage.h"
+                         line="136"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the message type.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+               line="165">the message type.</doc>
           <type name="RTSPMsgType" c:type="GstRTSPMsgType"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+                 line="161">a #GstRTSPMessage</doc>
             <type name="RTSPMessage" c:type="GstRTSPMessage*"/>
           </instance-parameter>
         </parameters>
@@ -2334,105 +3424,157 @@ was not found.</doc>
       <method name="has_body_buffer"
               c:identifier="gst_rtsp_message_has_body_buffer"
               version="1.16">
-        <doc xml:space="preserve">Checks if @msg has a body and the body is stored as #GstBuffer.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+             line="1160">Checks if @msg has a body and the body is stored as #GstBuffer.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspmessage.h"
+                         line="279"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if @msg has a body and it's stored as #GstBuffer, %FALSE
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+               line="1166">%TRUE if @msg has a body and it's stored as #GstBuffer, %FALSE
 otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+                 line="1162">a #GstRTSPMessage</doc>
             <type name="RTSPMessage" c:type="const GstRTSPMessage*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="init" c:identifier="gst_rtsp_message_init">
-        <doc xml:space="preserve">Initialize @msg. This function is mostly used when @msg is allocated on the
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+             line="137">Initialize @msg. This function is mostly used when @msg is allocated on the
 stack. The reverse operation of this is gst_rtsp_message_unset().</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspmessage.h"
+                         line="124"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstRTSPResult.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+               line="144">a #GstRTSPResult.</doc>
           <type name="RTSPResult" c:type="GstRTSPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+                 line="139">a #GstRTSPMessage</doc>
             <type name="RTSPMessage" c:type="GstRTSPMessage*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="init_data" c:identifier="gst_rtsp_message_init_data">
-        <doc xml:space="preserve">Initialize a new data #GstRTSPMessage for @channel.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+             line="422">Initialize a new data #GstRTSPMessage for @channel.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspmessage.h"
+                         line="183"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstRTSPResult.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+               line="429">a #GstRTSPResult.</doc>
           <type name="RTSPResult" c:type="GstRTSPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+                 line="424">a #GstRTSPMessage</doc>
             <type name="RTSPMessage" c:type="GstRTSPMessage*"/>
           </instance-parameter>
           <parameter name="channel" transfer-ownership="none">
-            <doc xml:space="preserve">a channel</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+                 line="425">a channel</doc>
             <type name="guint8" c:type="guint8"/>
           </parameter>
         </parameters>
       </method>
       <method name="init_request" c:identifier="gst_rtsp_message_init_request">
-        <doc xml:space="preserve">Initialize @msg as a request message with @method and @uri. To clear @msg
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+             line="202">Initialize @msg as a request message with @method and @uri. To clear @msg
 again, use gst_rtsp_message_unset().</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspmessage.h"
+                         line="146"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstRTSPResult.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+               line="211">a #GstRTSPResult.</doc>
           <type name="RTSPResult" c:type="GstRTSPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+                 line="204">a #GstRTSPMessage</doc>
             <type name="RTSPMessage" c:type="GstRTSPMessage*"/>
           </instance-parameter>
           <parameter name="method" transfer-ownership="none">
-            <doc xml:space="preserve">the request method to use</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+                 line="205">the request method to use</doc>
             <type name="RTSPMethod" c:type="GstRTSPMethod"/>
           </parameter>
           <parameter name="uri" transfer-ownership="none">
-            <doc xml:space="preserve">the uri of the request</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+                 line="206">the uri of the request</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </method>
       <method name="init_response"
               c:identifier="gst_rtsp_message_init_response">
-        <doc xml:space="preserve">Initialize @msg with @code and @reason.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+             line="296">Initialize @msg with @code and @reason.
 
 When @reason is %NULL, the default reason for @code will be used.
 
 When @request is not %NULL, the relevant headers will be copied to the new
 response message.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspmessage.h"
+                         line="165"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstRTSPResult.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+               line="310">a #GstRTSPResult.</doc>
           <type name="RTSPResult" c:type="GstRTSPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+                 line="298">a #GstRTSPMessage</doc>
             <type name="RTSPMessage" c:type="GstRTSPMessage*"/>
           </instance-parameter>
           <parameter name="code" transfer-ownership="none">
-            <doc xml:space="preserve">the status code</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+                 line="299">the status code</doc>
             <type name="RTSPStatusCode" c:type="GstRTSPStatusCode"/>
           </parameter>
           <parameter name="reason"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">the status reason or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+                 line="300">the status reason or %NULL</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="request"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">the request that triggered the response or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+                 line="301">the request that triggered the response or %NULL</doc>
             <type name="RTSPMessage" c:type="const GstRTSPMessage*"/>
           </parameter>
         </parameters>
@@ -2440,9 +3582,15 @@ response message.</doc>
       <method name="parse_auth_credentials"
               c:identifier="gst_rtsp_message_parse_auth_credentials"
               version="1.12">
-        <doc xml:space="preserve">Parses the credentials given in a WWW-Authenticate or Authorization header.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+             line="1441">Parses the credentials given in a WWW-Authenticate or Authorization header.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspmessage.h"
+                         line="321"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+               line="1448">
     %NULL-terminated array of GstRTSPAuthCredential or %NULL.</doc>
           <array c:type="GstRTSPAuthCredential**">
             <type name="RTSPAuthCredential" c:type="GstRTSPAuthCredential*"/>
@@ -2450,49 +3598,71 @@ response message.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+                 line="1443">a #GstRTSPMessage</doc>
             <type name="RTSPMessage" c:type="GstRTSPMessage*"/>
           </instance-parameter>
           <parameter name="field" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPHeaderField</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+                 line="1444">a #GstRTSPHeaderField</doc>
             <type name="RTSPHeaderField" c:type="GstRTSPHeaderField"/>
           </parameter>
         </parameters>
       </method>
       <method name="parse_data" c:identifier="gst_rtsp_message_parse_data">
-        <doc xml:space="preserve">Parse the data message @msg and store the channel in @channel.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+             line="444">Parse the data message @msg and store the channel in @channel.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspmessage.h"
+                         line="187"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstRTSPResult.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+               line="451">a #GstRTSPResult.</doc>
           <type name="RTSPResult" c:type="GstRTSPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+                 line="446">a #GstRTSPMessage</doc>
             <type name="RTSPMessage" c:type="GstRTSPMessage*"/>
           </instance-parameter>
           <parameter name="channel"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">location to hold the channel</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+                 line="447">location to hold the channel</doc>
             <type name="guint8" c:type="guint8*"/>
           </parameter>
         </parameters>
       </method>
       <method name="parse_request"
               c:identifier="gst_rtsp_message_parse_request">
-        <doc xml:space="preserve">Parse the request message @msg and store the values @method, @uri and
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+             line="231">Parse the request message @msg and store the values @method, @uri and
 @version. The result locations can be %NULL if one is not interested in its
 value.
 
 @uri remains valid for as long as @msg is valid and unchanged.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspmessage.h"
+                         line="151"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstRTSPResult.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+               line="244">a #GstRTSPResult.</doc>
           <type name="RTSPResult" c:type="GstRTSPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+                 line="233">a #GstRTSPMessage</doc>
             <type name="RTSPMessage" c:type="GstRTSPMessage*"/>
           </instance-parameter>
           <parameter name="method"
@@ -2501,7 +3671,9 @@ value.
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">location to hold the method</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+                 line="234">location to hold the method</doc>
             <type name="RTSPMethod" c:type="GstRTSPMethod*"/>
           </parameter>
           <parameter name="uri"
@@ -2510,7 +3682,9 @@ value.
                      transfer-ownership="none"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">location to hold the uri</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+                 line="235">location to hold the uri</doc>
             <type name="utf8" c:type="const gchar**"/>
           </parameter>
           <parameter name="version"
@@ -2519,25 +3693,35 @@ value.
                      transfer-ownership="none"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">location to hold the version</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+                 line="236">location to hold the version</doc>
             <type name="RTSPVersion" c:type="GstRTSPVersion*"/>
           </parameter>
         </parameters>
       </method>
       <method name="parse_response"
               c:identifier="gst_rtsp_message_parse_response">
-        <doc xml:space="preserve">Parse the response message @msg and store the values @code, @reason and
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+             line="365">Parse the response message @msg and store the values @code, @reason and
 @version. The result locations can be %NULL if one is not interested in its
 value.
 
 @reason remains valid for as long as @msg is valid and unchanged.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspmessage.h"
+                         line="171"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstRTSPResult.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+               line="378">a #GstRTSPResult.</doc>
           <type name="RTSPResult" c:type="GstRTSPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+                 line="367">a #GstRTSPMessage</doc>
             <type name="RTSPMessage" c:type="GstRTSPMessage*"/>
           </instance-parameter>
           <parameter name="code"
@@ -2546,7 +3730,9 @@ value.
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">location to hold the status code</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+                 line="368">location to hold the status code</doc>
             <type name="RTSPStatusCode" c:type="GstRTSPStatusCode*"/>
           </parameter>
           <parameter name="reason"
@@ -2555,7 +3741,9 @@ value.
                      transfer-ownership="none"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">location to hold the status reason</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+                 line="369">location to hold the status reason</doc>
             <type name="utf8" c:type="const gchar**"/>
           </parameter>
           <parameter name="version"
@@ -2564,30 +3752,44 @@ value.
                      transfer-ownership="none"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">location to hold the version</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+                 line="370">location to hold the version</doc>
             <type name="RTSPVersion" c:type="GstRTSPVersion*"/>
           </parameter>
         </parameters>
       </method>
       <method name="remove_header"
               c:identifier="gst_rtsp_message_remove_header">
-        <doc xml:space="preserve">Remove the @indx header with key @field from @msg. If @indx equals -1, all
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+             line="646">Remove the @indx header with key @field from @msg. If @indx equals -1, all
 headers will be removed.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspmessage.h"
+                         line="203"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstRTSPResult.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+               line="655">a #GstRTSPResult.</doc>
           <type name="RTSPResult" c:type="GstRTSPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+                 line="648">a #GstRTSPMessage</doc>
             <type name="RTSPMessage" c:type="GstRTSPMessage*"/>
           </instance-parameter>
           <parameter name="field" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPHeaderField</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+                 line="649">a #GstRTSPHeaderField</doc>
             <type name="RTSPHeaderField" c:type="GstRTSPHeaderField"/>
           </parameter>
           <parameter name="indx" transfer-ownership="none">
-            <doc xml:space="preserve">the index of the header</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+                 line="650">the index of the header</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
         </parameters>
@@ -2595,47 +3797,71 @@ headers will be removed.</doc>
       <method name="remove_header_by_name"
               c:identifier="gst_rtsp_message_remove_header_by_name"
               version="1.6">
-        <doc xml:space="preserve">Remove the @index header with key @header from @msg. If @index equals -1,
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+             line="817">Remove the @index header with key @header from @msg. If @index equals -1,
 all matching headers will be removed.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspmessage.h"
+                         line="224"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstRTSPResult</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+               line="826">a #GstRTSPResult</doc>
           <type name="RTSPResult" c:type="GstRTSPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+                 line="819">a #GstRTSPMessage</doc>
             <type name="RTSPMessage" c:type="GstRTSPMessage*"/>
           </instance-parameter>
           <parameter name="header" transfer-ownership="none">
-            <doc xml:space="preserve">the header string</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+                 line="820">the header string</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="index" transfer-ownership="none">
-            <doc xml:space="preserve">the index of the header</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+                 line="821">the index of the header</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_body" c:identifier="gst_rtsp_message_set_body">
-        <doc xml:space="preserve">Set the body of @msg to a copy of @data. Any existing body or body buffer
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+             line="929">Set the body of @msg to a copy of @data. Any existing body or body buffer
 will be replaced by the new body.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspmessage.h"
+                         line="243"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">#GST_RTSP_OK.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+               line="938">#GST_RTSP_OK.</doc>
           <type name="RTSPResult" c:type="GstRTSPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+                 line="931">a #GstRTSPMessage</doc>
             <type name="RTSPMessage" c:type="GstRTSPMessage*"/>
           </instance-parameter>
           <parameter name="data" transfer-ownership="none">
-            <doc xml:space="preserve">the data</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+                 line="932">the data</doc>
             <array length="1" zero-terminated="0" c:type="const guint8*">
               <type name="guint8" c:type="guint8"/>
             </array>
           </parameter>
           <parameter name="size" transfer-ownership="none">
-            <doc xml:space="preserve">the size of @data</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+                 line="933">the size of @data</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
@@ -2643,40 +3869,60 @@ will be replaced by the new body.</doc>
       <method name="set_body_buffer"
               c:identifier="gst_rtsp_message_set_body_buffer"
               version="1.16">
-        <doc xml:space="preserve">Set the body of @msg to @buffer. Any existing body or body buffer
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+             line="1051">Set the body of @msg to @buffer. Any existing body or body buffer
 will be replaced by the new body.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspmessage.h"
+                         line="263"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">#GST_RTSP_OK.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+               line="1059">#GST_RTSP_OK.</doc>
           <type name="RTSPResult" c:type="GstRTSPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+                 line="1053">a #GstRTSPMessage</doc>
             <type name="RTSPMessage" c:type="GstRTSPMessage*"/>
           </instance-parameter>
           <parameter name="buffer" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBuffer</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+                 line="1054">a #GstBuffer</doc>
             <type name="Gst.Buffer" c:type="GstBuffer*"/>
           </parameter>
         </parameters>
       </method>
       <method name="steal_body" c:identifier="gst_rtsp_message_steal_body">
-        <doc xml:space="preserve">Take the body of @msg and store it in @data and @size. After this method,
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+             line="1014">Take the body of @msg and store it in @data and @size. After this method,
 the body and size of @msg will be set to %NULL and 0 respectively.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspmessage.h"
+                         line="258"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">#GST_RTSP_OK.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+               line="1023">#GST_RTSP_OK.</doc>
           <type name="RTSPResult" c:type="GstRTSPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+                 line="1016">a #GstRTSPMessage</doc>
             <type name="RTSPMessage" c:type="GstRTSPMessage*"/>
           </instance-parameter>
           <parameter name="data"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">location for the data</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+                 line="1017">location for the data</doc>
             <array length="1" zero-terminated="0" c:type="guint8**">
               <type name="guint8" c:type="guint8*"/>
             </array>
@@ -2685,7 +3931,9 @@ the body and size of @msg will be set to %NULL and 0 respectively.</doc>
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">location for the size of @data</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+                 line="1018">location for the size of @data</doc>
             <type name="guint" c:type="guint*"/>
           </parameter>
         </parameters>
@@ -2693,50 +3941,72 @@ the body and size of @msg will be set to %NULL and 0 respectively.</doc>
       <method name="steal_body_buffer"
               c:identifier="gst_rtsp_message_steal_body_buffer"
               version="1.16">
-        <doc xml:space="preserve">Take the body of @msg and store it in @buffer. After this method,
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+             line="1127">Take the body of @msg and store it in @buffer. After this method,
 the body and size of @msg will be set to %NULL and 0 respectively.
 
 If body data was set from raw memory instead of a #GstBuffer this function
 will always return %NULL. The caller can check if there is a body buffer by
 calling gst_rtsp_message_has_body_buffer().</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspmessage.h"
+                         line="275"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">#GST_RTSP_OK.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+               line="1139">#GST_RTSP_OK.</doc>
           <type name="RTSPResult" c:type="GstRTSPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+                 line="1129">a #GstRTSPMessage</doc>
             <type name="RTSPMessage" c:type="GstRTSPMessage*"/>
           </instance-parameter>
           <parameter name="buffer"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">location for the buffer</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+                 line="1130">location for the buffer</doc>
             <type name="Gst.Buffer" c:type="GstBuffer**"/>
           </parameter>
         </parameters>
       </method>
       <method name="take_body" c:identifier="gst_rtsp_message_take_body">
-        <doc xml:space="preserve">Set the body of @msg to @data and @size. This method takes ownership of
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+             line="949">Set the body of @msg to @data and @size. This method takes ownership of
 @data. Any existing body or body buffer will be replaced by the new body.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspmessage.h"
+                         line="248"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">#GST_RTSP_OK.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+               line="958">#GST_RTSP_OK.</doc>
           <type name="RTSPResult" c:type="GstRTSPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+                 line="951">a #GstRTSPMessage</doc>
             <type name="RTSPMessage" c:type="GstRTSPMessage*"/>
           </instance-parameter>
           <parameter name="data" transfer-ownership="full">
-            <doc xml:space="preserve">the data</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+                 line="952">the data</doc>
             <array length="1" zero-terminated="0" c:type="guint8*">
               <type name="guint8" c:type="guint8"/>
             </array>
           </parameter>
           <parameter name="size" transfer-ownership="none">
-            <doc xml:space="preserve">the size of @data</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+                 line="953">the size of @data</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
@@ -2744,41 +4014,63 @@ calling gst_rtsp_message_has_body_buffer().</doc>
       <method name="take_body_buffer"
               c:identifier="gst_rtsp_message_take_body_buffer"
               version="1.16">
-        <doc xml:space="preserve">Set the body of @msg to @buffer. This method takes ownership of @buffer.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+             line="1072">Set the body of @msg to @buffer. This method takes ownership of @buffer.
 Any existing body or body buffer will be replaced by the new body.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspmessage.h"
+                         line="267"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">#GST_RTSP_OK.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+               line="1080">#GST_RTSP_OK.</doc>
           <type name="RTSPResult" c:type="GstRTSPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+                 line="1074">a #GstRTSPMessage</doc>
             <type name="RTSPMessage" c:type="GstRTSPMessage*"/>
           </instance-parameter>
           <parameter name="buffer" transfer-ownership="full">
-            <doc xml:space="preserve">a #GstBuffer</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+                 line="1075">a #GstBuffer</doc>
             <type name="Gst.Buffer" c:type="GstBuffer*"/>
           </parameter>
         </parameters>
       </method>
       <method name="take_header" c:identifier="gst_rtsp_message_take_header">
-        <doc xml:space="preserve">Add a header with key @field and @value to @msg. This function takes
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+             line="599">Add a header with key @field and @value to @msg. This function takes
 ownership of @value.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspmessage.h"
+                         line="198"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstRTSPResult.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+               line="608">a #GstRTSPResult.</doc>
           <type name="RTSPResult" c:type="GstRTSPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+                 line="601">a #GstRTSPMessage</doc>
             <type name="RTSPMessage" c:type="GstRTSPMessage*"/>
           </instance-parameter>
           <parameter name="field" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPHeaderField</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+                 line="602">a #GstRTSPHeaderField</doc>
             <type name="RTSPHeaderField" c:type="GstRTSPHeaderField"/>
           </parameter>
           <parameter name="value" transfer-ownership="full">
-            <doc xml:space="preserve">the value of the header</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+                 line="603">the value of the header</doc>
             <type name="utf8" c:type="gchar*"/>
           </parameter>
         </parameters>
@@ -2786,39 +4078,59 @@ ownership of @value.</doc>
       <method name="take_header_by_name"
               c:identifier="gst_rtsp_message_take_header_by_name"
               version="1.6">
-        <doc xml:space="preserve">Add a header with key @header and @value to @msg. This function takes
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+             line="752">Add a header with key @header and @value to @msg. This function takes
 ownership of @value, but not of @header.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspmessage.h"
+                         line="219"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstRTSPResult.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+               line="761">a #GstRTSPResult.</doc>
           <type name="RTSPResult" c:type="GstRTSPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+                 line="754">a #GstRTSPMessage</doc>
             <type name="RTSPMessage" c:type="GstRTSPMessage*"/>
           </instance-parameter>
           <parameter name="header" transfer-ownership="none">
-            <doc xml:space="preserve">a header string</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+                 line="755">a header string</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="value" transfer-ownership="full">
-            <doc xml:space="preserve">the value of the header</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+                 line="756">the value of the header</doc>
             <type name="utf8" c:type="gchar*"/>
           </parameter>
         </parameters>
       </method>
       <method name="unset" c:identifier="gst_rtsp_message_unset">
-        <doc xml:space="preserve">Unset the contents of @msg so that it becomes an uninitialized
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+             line="465">Unset the contents of @msg so that it becomes an uninitialized
 #GstRTSPMessage again. This function is mostly used in combination with
 gst_rtsp_message_init_request(), gst_rtsp_message_init_response() and
 gst_rtsp_message_init_data() on stack allocated #GstRTSPMessage structures.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspmessage.h"
+                         line="127"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">#GST_RTSP_OK.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+               line="474">#GST_RTSP_OK.</doc>
           <type name="RTSPResult" c:type="GstRTSPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+                 line="467">a #GstRTSPMessage</doc>
             <type name="RTSPMessage" c:type="GstRTSPMessage*"/>
           </instance-parameter>
         </parameters>
@@ -2828,100 +4140,138 @@ gst_rtsp_message_init_data() on stack allocated #GstRTSPMessage structures.</doc
               glib:type-name="GstRTSPMethod"
               glib:get-type="gst_rtsp_method_get_type"
               c:type="GstRTSPMethod">
-      <doc xml:space="preserve">The different supported RTSP methods.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtsp/gstrtspdefs.h"
+           line="173">The different supported RTSP methods.</doc>
       <member name="invalid"
               value="0"
               c:identifier="GST_RTSP_INVALID"
               glib:nick="invalid">
-        <doc xml:space="preserve">invalid method</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspdefs.h"
+             line="175">invalid method</doc>
       </member>
       <member name="describe"
               value="1"
               c:identifier="GST_RTSP_DESCRIBE"
               glib:nick="describe">
-        <doc xml:space="preserve">the DESCRIBE method</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspdefs.h"
+             line="176">the DESCRIBE method</doc>
       </member>
       <member name="announce"
               value="2"
               c:identifier="GST_RTSP_ANNOUNCE"
               glib:nick="announce">
-        <doc xml:space="preserve">the ANNOUNCE method</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspdefs.h"
+             line="177">the ANNOUNCE method</doc>
       </member>
       <member name="get_parameter"
               value="4"
               c:identifier="GST_RTSP_GET_PARAMETER"
               glib:nick="get-parameter">
-        <doc xml:space="preserve">the GET_PARAMETER method</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspdefs.h"
+             line="178">the GET_PARAMETER method</doc>
       </member>
       <member name="options"
               value="8"
               c:identifier="GST_RTSP_OPTIONS"
               glib:nick="options">
-        <doc xml:space="preserve">the OPTIONS method</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspdefs.h"
+             line="179">the OPTIONS method</doc>
       </member>
       <member name="pause"
               value="16"
               c:identifier="GST_RTSP_PAUSE"
               glib:nick="pause">
-        <doc xml:space="preserve">the PAUSE method</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspdefs.h"
+             line="180">the PAUSE method</doc>
       </member>
       <member name="play"
               value="32"
               c:identifier="GST_RTSP_PLAY"
               glib:nick="play">
-        <doc xml:space="preserve">the PLAY method</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspdefs.h"
+             line="181">the PLAY method</doc>
       </member>
       <member name="record"
               value="64"
               c:identifier="GST_RTSP_RECORD"
               glib:nick="record">
-        <doc xml:space="preserve">the RECORD method</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspdefs.h"
+             line="182">the RECORD method</doc>
       </member>
       <member name="redirect"
               value="128"
               c:identifier="GST_RTSP_REDIRECT"
               glib:nick="redirect">
-        <doc xml:space="preserve">the REDIRECT method</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspdefs.h"
+             line="183">the REDIRECT method</doc>
       </member>
       <member name="setup"
               value="256"
               c:identifier="GST_RTSP_SETUP"
               glib:nick="setup">
-        <doc xml:space="preserve">the SETUP method</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspdefs.h"
+             line="184">the SETUP method</doc>
       </member>
       <member name="set_parameter"
               value="512"
               c:identifier="GST_RTSP_SET_PARAMETER"
               glib:nick="set-parameter">
-        <doc xml:space="preserve">the SET_PARAMETER method</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspdefs.h"
+             line="185">the SET_PARAMETER method</doc>
       </member>
       <member name="teardown"
               value="1024"
               c:identifier="GST_RTSP_TEARDOWN"
               glib:nick="teardown">
-        <doc xml:space="preserve">the TEARDOWN method</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspdefs.h"
+             line="186">the TEARDOWN method</doc>
       </member>
       <member name="get"
               value="2048"
               c:identifier="GST_RTSP_GET"
               glib:nick="get">
-        <doc xml:space="preserve">the GET method (HTTP).</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspdefs.h"
+             line="187">the GET method (HTTP).</doc>
       </member>
       <member name="post"
               value="4096"
               c:identifier="GST_RTSP_POST"
               glib:nick="post">
-        <doc xml:space="preserve">the POST method (HTTP).</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspdefs.h"
+             line="188">the POST method (HTTP).</doc>
       </member>
       <function name="as_text" c:identifier="gst_rtsp_method_as_text">
-        <doc xml:space="preserve">Convert @method to a string.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspdefs.c"
+             line="310">Convert @method to a string.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspdefs.h"
+                         line="409"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a string representation of @method.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspdefs.c"
+               line="316">a string representation of @method.</doc>
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
         <parameters>
           <parameter name="method" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPMethod</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspdefs.c"
+                 line="312">a #GstRTSPMethod</doc>
             <type name="RTSPMethod" c:type="GstRTSPMethod"/>
           </parameter>
         </parameters>
@@ -2931,118 +4281,168 @@ gst_rtsp_message_init_data() on stack allocated #GstRTSPMessage structures.</doc
                  glib:type-name="GstRTSPMsgType"
                  glib:get-type="gst_rtsp_msg_type_get_type"
                  c:type="GstRTSPMsgType">
-      <doc xml:space="preserve">The type of a message.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtsp/gstrtspmessage.h"
+           line="51">The type of a message.</doc>
       <member name="invalid"
               value="0"
               c:identifier="GST_RTSP_MESSAGE_INVALID"
               glib:nick="invalid">
-        <doc xml:space="preserve">invalid message type</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspmessage.h"
+             line="53">invalid message type</doc>
       </member>
       <member name="request"
               value="1"
               c:identifier="GST_RTSP_MESSAGE_REQUEST"
               glib:nick="request">
-        <doc xml:space="preserve">RTSP request message</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspmessage.h"
+             line="54">RTSP request message</doc>
       </member>
       <member name="response"
               value="2"
               c:identifier="GST_RTSP_MESSAGE_RESPONSE"
               glib:nick="response">
-        <doc xml:space="preserve">RTSP response message</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspmessage.h"
+             line="55">RTSP response message</doc>
       </member>
       <member name="http_request"
               value="3"
               c:identifier="GST_RTSP_MESSAGE_HTTP_REQUEST"
               glib:nick="http-request">
-        <doc xml:space="preserve">HTTP request message.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspmessage.h"
+             line="56">HTTP request message.</doc>
       </member>
       <member name="http_response"
               value="4"
               c:identifier="GST_RTSP_MESSAGE_HTTP_RESPONSE"
               glib:nick="http-response">
-        <doc xml:space="preserve">HTTP response message.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspmessage.h"
+             line="57">HTTP response message.</doc>
       </member>
       <member name="data"
               value="5"
               c:identifier="GST_RTSP_MESSAGE_DATA"
               glib:nick="data">
-        <doc xml:space="preserve">data message</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspmessage.h"
+             line="58">data message</doc>
       </member>
     </enumeration>
     <bitfield name="RTSPProfile"
               glib:type-name="GstRTSPProfile"
               glib:get-type="gst_rtsp_profile_get_type"
               c:type="GstRTSPProfile">
-      <doc xml:space="preserve">The transfer profile to use.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtsp/gstrtsptransport.h"
+           line="66">The transfer profile to use.</doc>
       <member name="unknown"
               value="0"
               c:identifier="GST_RTSP_PROFILE_UNKNOWN"
               glib:nick="unknown">
-        <doc xml:space="preserve">invalid profile</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtsptransport.h"
+             line="68">invalid profile</doc>
       </member>
       <member name="avp"
               value="1"
               c:identifier="GST_RTSP_PROFILE_AVP"
               glib:nick="avp">
-        <doc xml:space="preserve">the Audio/Visual profile (RFC 3551)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtsptransport.h"
+             line="69">the Audio/Visual profile (RFC 3551)</doc>
       </member>
       <member name="savp"
               value="2"
               c:identifier="GST_RTSP_PROFILE_SAVP"
               glib:nick="savp">
-        <doc xml:space="preserve">the secure Audio/Visual profile (RFC 3711)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtsptransport.h"
+             line="70">the secure Audio/Visual profile (RFC 3711)</doc>
       </member>
       <member name="avpf"
               value="4"
               c:identifier="GST_RTSP_PROFILE_AVPF"
               glib:nick="avpf">
-        <doc xml:space="preserve">the Audio/Visual profile with feedback (RFC 4585)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtsptransport.h"
+             line="71">the Audio/Visual profile with feedback (RFC 4585)</doc>
       </member>
       <member name="savpf"
               value="8"
               c:identifier="GST_RTSP_PROFILE_SAVPF"
               glib:nick="savpf">
-        <doc xml:space="preserve">the secure Audio/Visual profile with feedback (RFC 5124)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtsptransport.h"
+             line="72">the secure Audio/Visual profile with feedback (RFC 5124)</doc>
       </member>
     </bitfield>
     <record name="RTSPRange" c:type="GstRTSPRange">
-      <doc xml:space="preserve">Provides helper functions to deal with time ranges.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtsp/gstrtsprange.c"
+           line="43">Provides helper functions to deal with time ranges.</doc>
+      <source-position filename="gst-libs/gst/rtsp/gstrtsptransport.h"
+                       line="120"/>
       <field name="min" writable="1">
-        <doc xml:space="preserve">minimum value of the range</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtsptransport.h"
+             line="111">minimum value of the range</doc>
         <type name="gint" c:type="gint"/>
       </field>
       <field name="max" writable="1">
-        <doc xml:space="preserve">maximum value of the range</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtsptransport.h"
+             line="112">maximum value of the range</doc>
         <type name="gint" c:type="gint"/>
       </field>
       <function name="convert_units"
                 c:identifier="gst_rtsp_range_convert_units">
-        <doc xml:space="preserve">Converts the range in-place between different types of units.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtsprange.c"
+             line="664">Converts the range in-place between different types of units.
 Ranges containing the special value #GST_RTSP_TIME_NOW can not be
 converted as these are only valid for #GST_RTSP_RANGE_NPT.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtsprange.h"
+                         line="159"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the range could be converted</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtsprange.c"
+               line="673">%TRUE if the range could be converted</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <parameter name="range" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPTimeRange</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtsprange.c"
+                 line="666">a #GstRTSPTimeRange</doc>
             <type name="RTSPTimeRange" c:type="GstRTSPTimeRange*"/>
           </parameter>
           <parameter name="unit" transfer-ownership="none">
-            <doc xml:space="preserve">the unit to convert the range into</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtsprange.c"
+                 line="667">the unit to convert the range into</doc>
             <type name="RTSPRangeUnit" c:type="GstRTSPRangeUnit"/>
           </parameter>
         </parameters>
       </function>
       <function name="free" c:identifier="gst_rtsp_range_free">
-        <doc xml:space="preserve">Free the memory allocated by @range.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtsprange.c"
+             line="472">Free the memory allocated by @range.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtsprange.h"
+                         line="152"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <parameter name="range" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPTimeRange</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtsprange.c"
+                 line="474">a #GstRTSPTimeRange</doc>
             <type name="RTSPTimeRange" c:type="GstRTSPTimeRange*"/>
           </parameter>
         </parameters>
@@ -3050,67 +4450,97 @@ converted as these are only valid for #GST_RTSP_RANGE_NPT.</doc>
       <function name="get_times"
                 c:identifier="gst_rtsp_range_get_times"
                 version="1.2">
-        <doc xml:space="preserve">Retrieve the minimum and maximum values from @range converted to
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtsprange.c"
+             line="565">Retrieve the minimum and maximum values from @range converted to
 #GstClockTime in @min and @max.
 
 A value of %GST_CLOCK_TIME_NONE will be used to signal #GST_RTSP_TIME_NOW
 and #GST_RTSP_TIME_END for @min and @max respectively.
 
 UTC times will be converted to nanoseconds since 1900.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtsprange.h"
+                         line="155"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE on success.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtsprange.c"
+               line="579">%TRUE on success.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <parameter name="range" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPTimeRange</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtsprange.c"
+                 line="567">a #GstRTSPTimeRange</doc>
             <type name="RTSPTimeRange" c:type="const GstRTSPTimeRange*"/>
           </parameter>
           <parameter name="min"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">result minimum #GstClockTime</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtsprange.c"
+                 line="568">result minimum #GstClockTime</doc>
             <type name="Gst.ClockTime" c:type="GstClockTime*"/>
           </parameter>
           <parameter name="max"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">result maximum #GstClockTime</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtsprange.c"
+                 line="569">result maximum #GstClockTime</doc>
             <type name="Gst.ClockTime" c:type="GstClockTime*"/>
           </parameter>
         </parameters>
       </function>
       <function name="parse" c:identifier="gst_rtsp_range_parse">
-        <doc xml:space="preserve">Parse @rangestr to a #GstRTSPTimeRange.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtsprange.c"
+             line="257">Parse @rangestr to a #GstRTSPTimeRange.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtsprange.h"
+                         line="146"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">#GST_RTSP_OK on success.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtsprange.c"
+               line="264">#GST_RTSP_OK on success.</doc>
           <type name="RTSPResult" c:type="GstRTSPResult"/>
         </return-value>
         <parameters>
           <parameter name="rangestr" transfer-ownership="none">
-            <doc xml:space="preserve">a range string to parse</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtsprange.c"
+                 line="259">a range string to parse</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="range"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">location to hold the #GstRTSPTimeRange result</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtsprange.c"
+                 line="260">location to hold the #GstRTSPTimeRange result</doc>
             <type name="RTSPTimeRange" c:type="GstRTSPTimeRange**"/>
           </parameter>
         </parameters>
       </function>
       <function name="to_string" c:identifier="gst_rtsp_range_to_string">
-        <doc xml:space="preserve">Convert @range into a string representation.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtsprange.c"
+             line="421">Convert @range into a string representation.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtsprange.h"
+                         line="149"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">The string representation of @range. g_free() after usage.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtsprange.c"
+               line="427">The string representation of @range. g_free() after usage.</doc>
           <type name="utf8" c:type="gchar*"/>
         </return-value>
         <parameters>
           <parameter name="range" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPTimeRange</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtsprange.c"
+                 line="423">a #GstRTSPTimeRange</doc>
             <type name="RTSPTimeRange" c:type="const GstRTSPTimeRange*"/>
           </parameter>
         </parameters>
@@ -3120,196 +4550,262 @@ UTC times will be converted to nanoseconds since 1900.</doc>
                  glib:type-name="GstRTSPRangeUnit"
                  glib:get-type="gst_rtsp_range_unit_get_type"
                  c:type="GstRTSPRangeUnit">
-      <doc xml:space="preserve">Different possible time range units.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtsp/gstrtsprange.h"
+           line="53">Different possible time range units.</doc>
       <member name="smpte"
               value="0"
               c:identifier="GST_RTSP_RANGE_SMPTE"
               glib:nick="smpte">
-        <doc xml:space="preserve">SMPTE timecode</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtsprange.h"
+             line="55">SMPTE timecode</doc>
       </member>
       <member name="smpte_30_drop"
               value="1"
               c:identifier="GST_RTSP_RANGE_SMPTE_30_DROP"
               glib:nick="smpte-30-drop">
-        <doc xml:space="preserve">29.97 frames per second</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtsprange.h"
+             line="56">29.97 frames per second</doc>
       </member>
       <member name="smpte_25"
               value="2"
               c:identifier="GST_RTSP_RANGE_SMPTE_25"
               glib:nick="smpte-25">
-        <doc xml:space="preserve">25 frames per second</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtsprange.h"
+             line="57">25 frames per second</doc>
       </member>
       <member name="npt"
               value="3"
               c:identifier="GST_RTSP_RANGE_NPT"
               glib:nick="npt">
-        <doc xml:space="preserve">Normal play time</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtsprange.h"
+             line="58">Normal play time</doc>
       </member>
       <member name="clock"
               value="4"
               c:identifier="GST_RTSP_RANGE_CLOCK"
               glib:nick="clock">
-        <doc xml:space="preserve">Absolute time expressed as ISO 8601 timestamps</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtsprange.h"
+             line="59">Absolute time expressed as ISO 8601 timestamps</doc>
       </member>
     </enumeration>
     <enumeration name="RTSPResult"
                  glib:type-name="GstRTSPResult"
                  glib:get-type="gst_rtsp_result_get_type"
                  c:type="GstRTSPResult">
-      <doc xml:space="preserve">Result codes from the RTSP functions.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtsp/gstrtspdefs.h"
+           line="65">Result codes from the RTSP functions.</doc>
       <member name="ok" value="0" c:identifier="GST_RTSP_OK" glib:nick="ok">
-        <doc xml:space="preserve">no error</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspdefs.h"
+             line="67">no error</doc>
       </member>
       <member name="error"
               value="-1"
               c:identifier="GST_RTSP_ERROR"
               glib:nick="error">
-        <doc xml:space="preserve">some unspecified error occured</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspdefs.h"
+             line="68">some unspecified error occurred</doc>
       </member>
       <member name="einval"
               value="-2"
               c:identifier="GST_RTSP_EINVAL"
               glib:nick="einval">
-        <doc xml:space="preserve">invalid arguments were provided to a function</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspdefs.h"
+             line="69">invalid arguments were provided to a function</doc>
       </member>
       <member name="eintr"
               value="-3"
               c:identifier="GST_RTSP_EINTR"
               glib:nick="eintr">
-        <doc xml:space="preserve">an operation was canceled</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspdefs.h"
+             line="70">an operation was canceled</doc>
       </member>
       <member name="enomem"
               value="-4"
               c:identifier="GST_RTSP_ENOMEM"
               glib:nick="enomem">
-        <doc xml:space="preserve">no memory was available for the operation</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspdefs.h"
+             line="71">no memory was available for the operation</doc>
       </member>
       <member name="eresolv"
               value="-5"
               c:identifier="GST_RTSP_ERESOLV"
               glib:nick="eresolv">
-        <doc xml:space="preserve">a host resolve error occured</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspdefs.h"
+             line="72">a host resolve error occurred</doc>
       </member>
       <member name="enotimpl"
               value="-6"
               c:identifier="GST_RTSP_ENOTIMPL"
               glib:nick="enotimpl">
-        <doc xml:space="preserve">function not implemented</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspdefs.h"
+             line="73">function not implemented</doc>
       </member>
       <member name="esys"
               value="-7"
               c:identifier="GST_RTSP_ESYS"
               glib:nick="esys">
-        <doc xml:space="preserve">a system error occured, errno contains more details</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspdefs.h"
+             line="74">a system error occurred, errno contains more details</doc>
       </member>
       <member name="eparse"
               value="-8"
               c:identifier="GST_RTSP_EPARSE"
               glib:nick="eparse">
-        <doc xml:space="preserve">a parsing error occured</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspdefs.h"
+             line="75">a parsing error occurred</doc>
       </member>
       <member name="ewsastart"
               value="-9"
               c:identifier="GST_RTSP_EWSASTART"
               glib:nick="ewsastart">
-        <doc xml:space="preserve">windows networking could not start</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspdefs.h"
+             line="76">windows networking could not start</doc>
       </member>
       <member name="ewsaversion"
               value="-10"
               c:identifier="GST_RTSP_EWSAVERSION"
               glib:nick="ewsaversion">
-        <doc xml:space="preserve">windows networking stack has wrong version</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspdefs.h"
+             line="77">windows networking stack has wrong version</doc>
       </member>
       <member name="eeof"
               value="-11"
               c:identifier="GST_RTSP_EEOF"
               glib:nick="eeof">
-        <doc xml:space="preserve">end-of-file was reached</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspdefs.h"
+             line="78">end-of-file was reached</doc>
       </member>
       <member name="enet"
               value="-12"
               c:identifier="GST_RTSP_ENET"
               glib:nick="enet">
-        <doc xml:space="preserve">a network problem occured, h_errno contains more details</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspdefs.h"
+             line="79">a network problem occurred, h_errno contains more details</doc>
       </member>
       <member name="enotip"
               value="-13"
               c:identifier="GST_RTSP_ENOTIP"
               glib:nick="enotip">
-        <doc xml:space="preserve">the host is not an IP host</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspdefs.h"
+             line="80">the host is not an IP host</doc>
       </member>
       <member name="etimeout"
               value="-14"
               c:identifier="GST_RTSP_ETIMEOUT"
               glib:nick="etimeout">
-        <doc xml:space="preserve">a timeout occured</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspdefs.h"
+             line="81">a timeout occurred</doc>
       </member>
       <member name="etget"
               value="-15"
               c:identifier="GST_RTSP_ETGET"
               glib:nick="etget">
-        <doc xml:space="preserve">the tunnel GET request has been performed</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspdefs.h"
+             line="82">the tunnel GET request has been performed</doc>
       </member>
       <member name="etpost"
               value="-16"
               c:identifier="GST_RTSP_ETPOST"
               glib:nick="etpost">
-        <doc xml:space="preserve">the tunnel POST request has been performed</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspdefs.h"
+             line="83">the tunnel POST request has been performed</doc>
       </member>
       <member name="elast"
               value="-17"
               c:identifier="GST_RTSP_ELAST"
               glib:nick="elast">
-        <doc xml:space="preserve">last error</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspdefs.h"
+             line="84">last error</doc>
       </member>
     </enumeration>
     <enumeration name="RTSPState"
                  glib:type-name="GstRTSPState"
                  glib:get-type="gst_rtsp_state_get_type"
                  c:type="GstRTSPState">
-      <doc xml:space="preserve">The different RTSP states.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtsp/gstrtspdefs.h"
+           line="137">The different RTSP states.</doc>
       <member name="invalid"
               value="0"
               c:identifier="GST_RTSP_STATE_INVALID"
               glib:nick="invalid">
-        <doc xml:space="preserve">invalid state</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspdefs.h"
+             line="139">invalid state</doc>
       </member>
       <member name="init"
               value="1"
               c:identifier="GST_RTSP_STATE_INIT"
               glib:nick="init">
-        <doc xml:space="preserve">initializing</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspdefs.h"
+             line="140">initializing</doc>
       </member>
       <member name="ready"
               value="2"
               c:identifier="GST_RTSP_STATE_READY"
               glib:nick="ready">
-        <doc xml:space="preserve">ready for operation</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspdefs.h"
+             line="141">ready for operation</doc>
       </member>
       <member name="seeking"
               value="3"
               c:identifier="GST_RTSP_STATE_SEEKING"
               glib:nick="seeking">
-        <doc xml:space="preserve">seeking in progress</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspdefs.h"
+             line="142">seeking in progress</doc>
       </member>
       <member name="playing"
               value="4"
               c:identifier="GST_RTSP_STATE_PLAYING"
               glib:nick="playing">
-        <doc xml:space="preserve">playing</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspdefs.h"
+             line="143">playing</doc>
       </member>
       <member name="recording"
               value="5"
               c:identifier="GST_RTSP_STATE_RECORDING"
               glib:nick="recording">
-        <doc xml:space="preserve">recording</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspdefs.h"
+             line="144">recording</doc>
       </member>
     </enumeration>
     <enumeration name="RTSPStatusCode"
                  glib:type-name="GstRTSPStatusCode"
                  glib:get-type="gst_rtsp_status_code_get_type"
                  c:type="GstRTSPStatusCode">
-      <doc xml:space="preserve">Enumeration of rtsp status codes</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtsp/gstrtspdefs.h"
+           line="351">Enumeration of rtsp status codes</doc>
       <member name="invalid"
               value="0"
               c:identifier="GST_RTSP_STS_INVALID"
@@ -3542,57 +5038,88 @@ UTC times will be converted to nanoseconds since 1900.</doc>
       </member>
     </enumeration>
     <record name="RTSPTime" c:type="GstRTSPTime">
-      <doc xml:space="preserve">A time indication.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtsp/gstrtsprange.h"
+           line="94">A time indication.</doc>
+      <source-position filename="gst-libs/gst/rtsp/gstrtsprange.h" line="105"/>
       <field name="type" writable="1">
-        <doc xml:space="preserve">the time of the time</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtsprange.h"
+             line="96">the time of the time</doc>
         <type name="RTSPTimeType" c:type="GstRTSPTimeType"/>
       </field>
       <field name="seconds" writable="1">
-        <doc xml:space="preserve">seconds when @type is GST_RTSP_TIME_SECONDS,
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtsprange.h"
+             line="97">seconds when @type is GST_RTSP_TIME_SECONDS,
           GST_RTSP_TIME_UTC and GST_RTSP_TIME_FRAMES</doc>
         <type name="gdouble" c:type="gdouble"/>
       </field>
     </record>
     <record name="RTSPTime2" c:type="GstRTSPTime2" version="1.2">
-      <doc xml:space="preserve">Extra fields for a time indication.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtsp/gstrtsprange.h"
+           line="107">Extra fields for a time indication.</doc>
+      <source-position filename="gst-libs/gst/rtsp/gstrtsprange.h" line="124"/>
       <field name="frames" writable="1">
-        <doc xml:space="preserve">frames and subframes when type in GstRTSPTime is
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtsprange.h"
+             line="109">frames and subframes when type in GstRTSPTime is
          GST_RTSP_TIME_FRAMES</doc>
         <type name="gdouble" c:type="gdouble"/>
       </field>
       <field name="year" writable="1">
-        <doc xml:space="preserve">year when type is GST_RTSP_TIME_UTC</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtsprange.h"
+             line="111">year when type is GST_RTSP_TIME_UTC</doc>
         <type name="guint" c:type="guint"/>
       </field>
       <field name="month" writable="1">
-        <doc xml:space="preserve">month when type is GST_RTSP_TIME_UTC</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtsprange.h"
+             line="112">month when type is GST_RTSP_TIME_UTC</doc>
         <type name="guint" c:type="guint"/>
       </field>
       <field name="day" writable="1">
-        <doc xml:space="preserve">day when type is GST_RTSP_TIME_UTC</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtsprange.h"
+             line="113">day when type is GST_RTSP_TIME_UTC</doc>
         <type name="guint" c:type="guint"/>
       </field>
     </record>
     <record name="RTSPTimeRange" c:type="GstRTSPTimeRange">
-      <doc xml:space="preserve">A time range.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtsp/gstrtsprange.h"
+           line="126">A time range.</doc>
+      <source-position filename="gst-libs/gst/rtsp/gstrtsprange.h" line="143"/>
       <field name="unit" writable="1">
-        <doc xml:space="preserve">the time units used</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtsprange.h"
+             line="128">the time units used</doc>
         <type name="RTSPRangeUnit" c:type="GstRTSPRangeUnit"/>
       </field>
       <field name="min" writable="1">
-        <doc xml:space="preserve">the minimum interval</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtsprange.h"
+             line="129">the minimum interval</doc>
         <type name="RTSPTime" c:type="GstRTSPTime"/>
       </field>
       <field name="max" writable="1">
-        <doc xml:space="preserve">the maximum interval</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtsprange.h"
+             line="130">the maximum interval</doc>
         <type name="RTSPTime" c:type="GstRTSPTime"/>
       </field>
       <field name="min2" writable="1">
-        <doc xml:space="preserve">extra fields in the minimum interval (Since: 1.2)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtsprange.h"
+             line="131">extra fields in the minimum interval (Since: 1.2)</doc>
         <type name="RTSPTime2" c:type="GstRTSPTime2"/>
       </field>
       <field name="max2" writable="1">
-        <doc xml:space="preserve">extra fields in the maximum interval (Since: 1.2)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtsprange.h"
+             line="132">extra fields in the maximum interval (Since: 1.2)</doc>
         <type name="RTSPTime2" c:type="GstRTSPTime2"/>
       </field>
     </record>
@@ -3600,157 +5127,227 @@ UTC times will be converted to nanoseconds since 1900.</doc>
                  glib:type-name="GstRTSPTimeType"
                  glib:get-type="gst_rtsp_time_type_get_type"
                  c:type="GstRTSPTimeType">
-      <doc xml:space="preserve">Possible time types.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtsp/gstrtsprange.h"
+           line="76">Possible time types.</doc>
       <member name="seconds"
               value="0"
               c:identifier="GST_RTSP_TIME_SECONDS"
               glib:nick="seconds">
-        <doc xml:space="preserve">seconds</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtsprange.h"
+             line="78">seconds</doc>
       </member>
       <member name="now"
               value="1"
               c:identifier="GST_RTSP_TIME_NOW"
               glib:nick="now">
-        <doc xml:space="preserve">now</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtsprange.h"
+             line="79">now</doc>
       </member>
       <member name="end"
               value="2"
               c:identifier="GST_RTSP_TIME_END"
               glib:nick="end">
-        <doc xml:space="preserve">end</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtsprange.h"
+             line="80">end</doc>
       </member>
       <member name="frames"
               value="3"
               c:identifier="GST_RTSP_TIME_FRAMES"
               glib:nick="frames">
-        <doc xml:space="preserve">frames and subframes</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtsprange.h"
+             line="81">frames and subframes</doc>
       </member>
       <member name="utc"
               value="4"
               c:identifier="GST_RTSP_TIME_UTC"
               glib:nick="utc">
-        <doc xml:space="preserve">UTC time</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtsprange.h"
+             line="82">UTC time</doc>
       </member>
     </enumeration>
     <bitfield name="RTSPTransMode"
               glib:type-name="GstRTSPTransMode"
               glib:get-type="gst_rtsp_trans_mode_get_type"
               c:type="GstRTSPTransMode">
-      <doc xml:space="preserve">The transfer mode to use.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtsp/gstrtsptransport.h"
+           line="52">The transfer mode to use.</doc>
       <member name="unknown"
               value="0"
               c:identifier="GST_RTSP_TRANS_UNKNOWN"
               glib:nick="unknown">
-        <doc xml:space="preserve">invalid tansport mode</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtsptransport.h"
+             line="54">invalid tansport mode</doc>
       </member>
       <member name="rtp"
               value="1"
               c:identifier="GST_RTSP_TRANS_RTP"
               glib:nick="rtp">
-        <doc xml:space="preserve">transfer RTP data</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtsptransport.h"
+             line="55">transfer RTP data</doc>
       </member>
       <member name="rdt"
               value="2"
               c:identifier="GST_RTSP_TRANS_RDT"
               glib:nick="rdt">
-        <doc xml:space="preserve">transfer RDT (RealMedia) data</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtsptransport.h"
+             line="56">transfer RDT (RealMedia) data</doc>
       </member>
     </bitfield>
     <record name="RTSPTransport" c:type="GstRTSPTransport">
-      <doc xml:space="preserve">Provides helper functions to deal with RTSP transport strings.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtsp/gstrtsptransport.c"
+           line="44">Provides helper functions to deal with RTSP transport strings.</doc>
+      <source-position filename="gst-libs/gst/rtsp/gstrtsptransport.h"
+                       line="172"/>
       <field name="trans" writable="1">
-        <doc xml:space="preserve">the transport mode</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtsptransport.h"
+             line="124">the transport mode</doc>
         <type name="RTSPTransMode" c:type="GstRTSPTransMode"/>
       </field>
       <field name="profile" writable="1">
-        <doc xml:space="preserve">the tansport profile</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtsptransport.h"
+             line="125">the tansport profile</doc>
         <type name="RTSPProfile" c:type="GstRTSPProfile"/>
       </field>
       <field name="lower_transport" writable="1">
-        <doc xml:space="preserve">the lower transport</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtsptransport.h"
+             line="126">the lower transport</doc>
         <type name="RTSPLowerTrans" c:type="GstRTSPLowerTrans"/>
       </field>
       <field name="destination" writable="1">
-        <doc xml:space="preserve">the destination ip/hostname</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtsptransport.h"
+             line="127">the destination ip/hostname</doc>
         <type name="utf8" c:type="gchar*"/>
       </field>
       <field name="source" writable="1">
-        <doc xml:space="preserve">the source ip/hostname</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtsptransport.h"
+             line="128">the source ip/hostname</doc>
         <type name="utf8" c:type="gchar*"/>
       </field>
       <field name="layers" writable="1">
-        <doc xml:space="preserve">the number of layers</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtsptransport.h"
+             line="129">the number of layers</doc>
         <type name="guint" c:type="guint"/>
       </field>
       <field name="mode_play" writable="1">
-        <doc xml:space="preserve">if play mode was selected</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtsptransport.h"
+             line="130">if play mode was selected</doc>
         <type name="gboolean" c:type="gboolean"/>
       </field>
       <field name="mode_record" writable="1">
-        <doc xml:space="preserve">if record mode was selected</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtsptransport.h"
+             line="131">if record mode was selected</doc>
         <type name="gboolean" c:type="gboolean"/>
       </field>
       <field name="append" writable="1">
-        <doc xml:space="preserve">is append mode was selected</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtsptransport.h"
+             line="132">is append mode was selected</doc>
         <type name="gboolean" c:type="gboolean"/>
       </field>
       <field name="interleaved" writable="1">
-        <doc xml:space="preserve">the interleave range</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtsptransport.h"
+             line="133">the interleave range</doc>
         <type name="RTSPRange" c:type="GstRTSPRange"/>
       </field>
       <field name="ttl" writable="1">
-        <doc xml:space="preserve">the time to live for multicast UDP</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtsptransport.h"
+             line="134">the time to live for multicast UDP</doc>
         <type name="guint" c:type="guint"/>
       </field>
       <field name="port" writable="1">
-        <doc xml:space="preserve">the port pair for multicast sessions</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtsptransport.h"
+             line="135">the port pair for multicast sessions</doc>
         <type name="RTSPRange" c:type="GstRTSPRange"/>
       </field>
       <field name="client_port" writable="1">
-        <doc xml:space="preserve">the client port pair for receiving data. For TCP
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtsptransport.h"
+             line="136">the client port pair for receiving data. For TCP
   based transports, applications can use this field to store the
   sender and receiver ports of the client.</doc>
         <type name="RTSPRange" c:type="GstRTSPRange"/>
       </field>
       <field name="server_port" writable="1">
-        <doc xml:space="preserve">the server port pair for receiving data. For TCP
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtsptransport.h"
+             line="139">the server port pair for receiving data. For TCP
   based transports, applications can use this field to store the
   sender and receiver ports of the server.</doc>
         <type name="RTSPRange" c:type="GstRTSPRange"/>
       </field>
       <field name="ssrc" writable="1">
-        <doc xml:space="preserve">the ssrc that the sender/receiver will use</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtsptransport.h"
+             line="142">the ssrc that the sender/receiver will use</doc>
         <type name="guint" c:type="guint"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
       <method name="as_text" c:identifier="gst_rtsp_transport_as_text">
-        <doc xml:space="preserve">Convert @transport into a string that can be used to signal the transport in
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtsptransport.c"
+             line="588">Convert @transport into a string that can be used to signal the transport in
 an RTSP SETUP response.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtsptransport.h"
+                         line="184"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a string describing the RTSP transport or %NULL when the transport
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtsptransport.c"
+               line="595">a string describing the RTSP transport or %NULL when the transport
 is invalid.</doc>
           <type name="utf8" c:type="gchar*"/>
         </return-value>
         <parameters>
           <instance-parameter name="transport" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPTransport</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtsptransport.c"
+                 line="590">a #GstRTSPTransport</doc>
             <type name="RTSPTransport" c:type="GstRTSPTransport*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="free" c:identifier="gst_rtsp_transport_free">
-        <doc xml:space="preserve">Free the memory used by @transport.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtsptransport.c"
+             line="751">Free the memory used by @transport.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtsptransport.h"
+                         line="197"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">#GST_RTSP_OK.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtsptransport.c"
+               line="757">#GST_RTSP_OK.</doc>
           <type name="RTSPResult" c:type="GstRTSPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="transport" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPTransport</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtsptransport.c"
+                 line="753">a #GstRTSPTransport</doc>
             <type name="RTSPTransport" c:type="GstRTSPTransport*"/>
           </instance-parameter>
         </parameters>
@@ -3758,55 +5355,81 @@ is invalid.</doc>
       <method name="get_media_type"
               c:identifier="gst_rtsp_transport_get_media_type"
               version="1.4">
-        <doc xml:space="preserve">Get the media type of @transport. This media type is typically
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtsptransport.c"
+             line="236">Get the media type of @transport. This media type is typically
 used to generate #GstCaps events.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtsptransport.h"
+                         line="193"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">#GST_RTSP_OK.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtsptransport.c"
+               line="246">#GST_RTSP_OK.</doc>
           <type name="RTSPResult" c:type="GstRTSPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="transport" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPTransport</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtsptransport.c"
+                 line="238">a #GstRTSPTransport</doc>
             <type name="RTSPTransport" c:type="GstRTSPTransport*"/>
           </instance-parameter>
           <parameter name="media_type"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="none">
-            <doc xml:space="preserve">media type of @transport</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtsptransport.c"
+                 line="239">media type of @transport</doc>
             <type name="utf8" c:type="const gchar**"/>
           </parameter>
         </parameters>
       </method>
       <method name="init" c:identifier="gst_rtsp_transport_init">
-        <doc xml:space="preserve">Initialize @transport so that it can be used.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtsptransport.c"
+             line="169">Initialize @transport so that it can be used.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtsptransport.h"
+                         line="178"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">#GST_RTSP_OK.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtsptransport.c"
+               line="175">#GST_RTSP_OK.</doc>
           <type name="RTSPResult" c:type="GstRTSPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="transport" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPTransport</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtsptransport.c"
+                 line="171">a #GstRTSPTransport</doc>
             <type name="RTSPTransport" c:type="GstRTSPTransport*"/>
           </instance-parameter>
         </parameters>
       </method>
       <function name="get_manager"
                 c:identifier="gst_rtsp_transport_get_manager">
-        <doc xml:space="preserve">Get the #GstElement that can handle the buffers transported over @trans.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtsptransport.c"
+             line="279">Get the #GstElement that can handle the buffers transported over @trans.
 
 It is possible that there are several managers available, use @option to
 selected one.
 
 @manager will contain an element name or %NULL when no manager is
 needed/available for @trans.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtsptransport.h"
+                         line="190"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">#GST_RTSP_OK.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtsptransport.c"
+               line="293">#GST_RTSP_OK.</doc>
           <type name="RTSPResult" c:type="GstRTSPResult"/>
         </return-value>
         <parameters>
           <parameter name="trans" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPTransMode</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtsptransport.c"
+                 line="281">a #GstRTSPTransMode</doc>
             <type name="RTSPTransMode" c:type="GstRTSPTransMode"/>
           </parameter>
           <parameter name="manager"
@@ -3814,11 +5437,15 @@ needed/available for @trans.</doc>
                      caller-allocates="0"
                      transfer-ownership="none"
                      nullable="1">
-            <doc xml:space="preserve">location to hold the result</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtsptransport.c"
+                 line="282">location to hold the result</doc>
             <type name="utf8" c:type="const gchar**"/>
           </parameter>
           <parameter name="option" transfer-ownership="none">
-            <doc xml:space="preserve">option index.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtsptransport.c"
+                 line="283">option index.</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
@@ -3826,53 +5453,81 @@ needed/available for @trans.</doc>
       <function name="get_mime"
                 c:identifier="gst_rtsp_transport_get_mime"
                 deprecated="1">
-        <doc xml:space="preserve">Get the mime type of the transport mode @trans. This mime type is typically
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtsptransport.c"
+             line="205">Get the mime type of the transport mode @trans. This mime type is typically
 used to generate #GstCaps events.</doc>
         <doc-deprecated xml:space="preserve">This functions only deals with the GstRTSPTransMode and only
    returns the mime type for #GST_RTSP_PROFILE_AVP. Use
    gst_rtsp_transport_get_media_type() instead.</doc-deprecated>
+        <source-position filename="gst-libs/gst/rtsp/gstrtsptransport.h"
+                         line="187"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">#GST_RTSP_OK.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtsptransport.c"
+               line="217">#GST_RTSP_OK.</doc>
           <type name="RTSPResult" c:type="GstRTSPResult"/>
         </return-value>
         <parameters>
           <parameter name="trans" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPTransMode</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtsptransport.c"
+                 line="207">a #GstRTSPTransMode</doc>
             <type name="RTSPTransMode" c:type="GstRTSPTransMode"/>
           </parameter>
           <parameter name="mime" transfer-ownership="none">
-            <doc xml:space="preserve">location to hold the result</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtsptransport.c"
+                 line="208">location to hold the result</doc>
             <type name="utf8" c:type="const gchar**"/>
           </parameter>
         </parameters>
       </function>
       <function name="new" c:identifier="gst_rtsp_transport_new">
-        <doc xml:space="preserve">Allocate a new initialized #GstRTSPTransport. Use gst_rtsp_transport_free()
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtsptransport.c"
+             line="146">Allocate a new initialized #GstRTSPTransport. Use gst_rtsp_transport_free()
 after usage.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtsptransport.h"
+                         line="175"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstRTSPResult.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtsptransport.c"
+               line="153">a #GstRTSPResult.</doc>
           <type name="RTSPResult" c:type="GstRTSPResult"/>
         </return-value>
         <parameters>
           <parameter name="transport" transfer-ownership="none">
-            <doc xml:space="preserve">location to hold the new #GstRTSPTransport</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtsptransport.c"
+                 line="148">location to hold the new #GstRTSPTransport</doc>
             <type name="RTSPTransport" c:type="GstRTSPTransport**"/>
           </parameter>
         </parameters>
       </function>
       <function name="parse" c:identifier="gst_rtsp_transport_parse">
-        <doc xml:space="preserve">Parse the RTSP transport string @str into @transport.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtsptransport.c"
+             line="433">Parse the RTSP transport string @str into @transport.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtsptransport.h"
+                         line="181"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstRTSPResult.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtsptransport.c"
+               line="440">a #GstRTSPResult.</doc>
           <type name="RTSPResult" c:type="GstRTSPResult"/>
         </return-value>
         <parameters>
           <parameter name="str" transfer-ownership="none">
-            <doc xml:space="preserve">a transport string</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtsptransport.c"
+                 line="435">a transport string</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="transport" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPTransport</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtsptransport.c"
+                 line="436">a #GstRTSPTransport</doc>
             <type name="RTSPTransport" c:type="GstRTSPTransport*"/>
           </parameter>
         </parameters>
@@ -3883,55 +5538,83 @@ after usage.</doc>
             glib:type-name="GstRTSPUrl"
             glib:get-type="gst_rtsp_url_get_type"
             c:symbol-prefix="rtsp_url">
-      <doc xml:space="preserve">Provides helper functions to handle RTSP urls.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtsp/gstrtspurl.c"
+           line="43">Provides helper functions to handle RTSP urls.</doc>
+      <source-position filename="gst-libs/gst/rtsp/gstrtspurl.h" line="87"/>
       <field name="transports" writable="1">
-        <doc xml:space="preserve">the transports allowed</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspurl.h"
+             line="67">the transports allowed</doc>
         <type name="RTSPLowerTrans" c:type="GstRTSPLowerTrans"/>
       </field>
       <field name="family" writable="1">
-        <doc xml:space="preserve">the family</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspurl.h"
+             line="68">the family</doc>
         <type name="RTSPFamily" c:type="GstRTSPFamily"/>
       </field>
       <field name="user" writable="1">
-        <doc xml:space="preserve">the user</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspurl.h"
+             line="69">the user</doc>
         <type name="utf8" c:type="gchar*"/>
       </field>
       <field name="passwd" writable="1">
-        <doc xml:space="preserve">the password</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspurl.h"
+             line="70">the password</doc>
         <type name="utf8" c:type="gchar*"/>
       </field>
       <field name="host" writable="1">
-        <doc xml:space="preserve">the host</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspurl.h"
+             line="71">the host</doc>
         <type name="utf8" c:type="gchar*"/>
       </field>
       <field name="port" writable="1">
-        <doc xml:space="preserve">the port</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspurl.h"
+             line="72">the port</doc>
         <type name="guint16" c:type="guint16"/>
       </field>
       <field name="abspath" writable="1">
-        <doc xml:space="preserve">the absolute path</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspurl.h"
+             line="73">the absolute path</doc>
         <type name="utf8" c:type="gchar*"/>
       </field>
       <field name="query" writable="1">
-        <doc xml:space="preserve">additional query parameters</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspurl.h"
+             line="74">additional query parameters</doc>
         <type name="utf8" c:type="gchar*"/>
       </field>
       <method name="copy" c:identifier="gst_rtsp_url_copy">
-        <doc xml:space="preserve">Make a copy of @url.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspurl.c"
+             line="219">Make a copy of @url.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspurl.h" line="96"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a copy of @url. Free with gst_rtsp_url_free () after usage.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspurl.c"
+               line="225">a copy of @url. Free with gst_rtsp_url_free () after usage.</doc>
           <type name="RTSPUrl" c:type="GstRTSPUrl*"/>
         </return-value>
         <parameters>
           <instance-parameter name="url" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPUrl</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspurl.c"
+                 line="221">a #GstRTSPUrl</doc>
             <type name="RTSPUrl" c:type="const GstRTSPUrl*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="decode_path_components"
               c:identifier="gst_rtsp_url_decode_path_components">
-        <doc xml:space="preserve">Splits the path of @url on '/' boundaries, decoding the resulting components,
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspurl.c"
+             line="434">Splits the path of @url on '/' boundaries, decoding the resulting components,
 
 The decoding performed by this routine is "URI decoding", as defined in RFC
 3986, commonly known as percent-decoding. For example, a string "foo\%2fbar"
@@ -3942,8 +5625,11 @@ unescaped to NUL, as that would prematurely terminate the string.
 
 Also note that since paths usually start with a slash, the first component
 will usually be the empty string.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspurl.h" line="109"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">%NULL-terminated array of URL components. Free with
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspurl.c"
+               line="450">%NULL-terminated array of URL components. Free with
 g_strfreev() when no longer needed.</doc>
           <array c:type="gchar**">
             <type name="utf8"/>
@@ -3951,91 +5637,162 @@ g_strfreev() when no longer needed.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="url" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPUrl</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspurl.c"
+                 line="436">a #GstRTSPUrl</doc>
             <type name="RTSPUrl" c:type="const GstRTSPUrl*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="free" c:identifier="gst_rtsp_url_free">
-        <doc xml:space="preserve">Free the memory used by @url.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspurl.c"
+             line="248">Free the memory used by @url.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspurl.h" line="99"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="url" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPUrl</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspurl.c"
+                 line="250">a #GstRTSPUrl</doc>
             <type name="RTSPUrl" c:type="GstRTSPUrl*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_port" c:identifier="gst_rtsp_url_get_port">
-        <doc xml:space="preserve">Get the port number of @url.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspurl.c"
+             line="287">Get the port number of @url.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspurl.h" line="115"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">#GST_RTSP_OK.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspurl.c"
+               line="294">#GST_RTSP_OK.</doc>
           <type name="RTSPResult" c:type="GstRTSPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="url" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPUrl</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspurl.c"
+                 line="289">a #GstRTSPUrl</doc>
             <type name="RTSPUrl" c:type="const GstRTSPUrl*"/>
           </instance-parameter>
           <parameter name="port"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">location to hold the port</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspurl.c"
+                 line="290">location to hold the port</doc>
             <type name="guint16" c:type="guint16*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_request_uri"
               c:identifier="gst_rtsp_url_get_request_uri">
-        <doc xml:space="preserve">Get a newly allocated string describing the request URI for @url.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspurl.c"
+             line="311">Get a newly allocated string describing the request URI for @url.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspurl.h" line="102"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a string with the request URI. g_free() after usage.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspurl.c"
+               line="317">a string with the request URI. g_free() after usage.</doc>
           <type name="utf8" c:type="gchar*"/>
         </return-value>
         <parameters>
           <instance-parameter name="url" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPUrl</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspurl.c"
+                 line="313">a #GstRTSPUrl</doc>
             <type name="RTSPUrl" c:type="const GstRTSPUrl*"/>
           </instance-parameter>
         </parameters>
       </method>
+      <method name="get_request_uri_with_control"
+              c:identifier="gst_rtsp_url_get_request_uri_with_control"
+              version="1.18">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspurl.c"
+             line="326">Get a newly allocated string describing the request URI for @url
+combined with the control path for @control_path</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspurl.h" line="105"/>
+        <return-value transfer-ownership="full">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspurl.c"
+               line="334">a string with the request URI combined with the control path.
+g_free() after usage.</doc>
+          <type name="utf8" c:type="gchar*"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="url" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspurl.c"
+                 line="328">a #GstRTSPUrl</doc>
+            <type name="RTSPUrl" c:type="const GstRTSPUrl*"/>
+          </instance-parameter>
+          <parameter name="control_path" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspurl.c"
+                 line="329">an RTSP aggregate control path</doc>
+            <type name="utf8" c:type="const gchar*"/>
+          </parameter>
+        </parameters>
+      </method>
       <method name="set_port" c:identifier="gst_rtsp_url_set_port">
-        <doc xml:space="preserve">Set the port number in @url to @port.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspurl.c"
+             line="268">Set the port number in @url to @port.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspurl.h" line="112"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">#GST_RTSP_OK.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspurl.c"
+               line="275">#GST_RTSP_OK.</doc>
           <type name="RTSPResult" c:type="GstRTSPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="url" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPUrl</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspurl.c"
+                 line="270">a #GstRTSPUrl</doc>
             <type name="RTSPUrl" c:type="GstRTSPUrl*"/>
           </instance-parameter>
           <parameter name="port" transfer-ownership="none">
-            <doc xml:space="preserve">the port</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspurl.c"
+                 line="271">the port</doc>
             <type name="guint16" c:type="guint16"/>
           </parameter>
         </parameters>
       </method>
       <function name="parse" c:identifier="gst_rtsp_url_parse">
-        <doc xml:space="preserve">Parse the RTSP @urlstr into a newly allocated #GstRTSPUrl. Free after usage
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspurl.c"
+             line="90">Parse the RTSP @urlstr into a newly allocated #GstRTSPUrl. Free after usage
 with gst_rtsp_url_free().</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspurl.h" line="93"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstRTSPResult.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspurl.c"
+               line="98">a #GstRTSPResult.</doc>
           <type name="RTSPResult" c:type="GstRTSPResult"/>
         </return-value>
         <parameters>
           <parameter name="urlstr" transfer-ownership="none">
-            <doc xml:space="preserve">the url string to parse</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspurl.c"
+                 line="92">the url string to parse</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="url"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">location to hold the result.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspurl.c"
+                 line="93">location to hold the result.</doc>
             <type name="RTSPUrl" c:type="GstRTSPUrl**"/>
           </parameter>
         </parameters>
@@ -4045,61 +5802,93 @@ with gst_rtsp_url_free().</doc>
                  glib:type-name="GstRTSPVersion"
                  glib:get-type="gst_rtsp_version_get_type"
                  c:type="GstRTSPVersion">
-      <doc xml:space="preserve">The supported RTSP versions.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtsp/gstrtspdefs.h"
+           line="157">The supported RTSP versions.</doc>
       <member name="invalid"
               value="0"
               c:identifier="GST_RTSP_VERSION_INVALID"
               glib:nick="invalid">
-        <doc xml:space="preserve">unknown/invalid version</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspdefs.h"
+             line="159">unknown/invalid version</doc>
       </member>
       <member name="1_0"
               value="16"
               c:identifier="GST_RTSP_VERSION_1_0"
               glib:nick="1-0">
-        <doc xml:space="preserve">version 1.0</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspdefs.h"
+             line="160">version 1.0</doc>
       </member>
       <member name="1_1"
               value="17"
               c:identifier="GST_RTSP_VERSION_1_1"
               glib:nick="1-1">
-        <doc xml:space="preserve">version 1.1.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspdefs.h"
+             line="161">version 1.1.</doc>
       </member>
       <member name="2_0"
               value="32"
               c:identifier="GST_RTSP_VERSION_2_0"
               glib:nick="2-0">
-        <doc xml:space="preserve">version 2.0.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspdefs.h"
+             line="162">version 2.0.</doc>
       </member>
       <function name="as_text" c:identifier="gst_rtsp_version_as_text">
-        <doc xml:space="preserve">Convert @version to a string.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspdefs.c"
+             line="334">Convert @version to a string.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspdefs.h"
+                         line="412"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a string representation of @version.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspdefs.c"
+               line="340">a string representation of @version.</doc>
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
         <parameters>
           <parameter name="version" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPVersion</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspdefs.c"
+                 line="336">a #GstRTSPVersion</doc>
             <type name="RTSPVersion" c:type="GstRTSPVersion"/>
           </parameter>
         </parameters>
       </function>
     </enumeration>
     <record name="RTSPWatch" c:type="GstRTSPWatch" disguised="1">
-      <doc xml:space="preserve">Opaque RTSP watch object that can be used for asynchronous RTSP
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtsp/gstrtspconnection.h"
+           line="240">Opaque RTSP watch object that can be used for asynchronous RTSP
 operations.</doc>
+      <source-position filename="gst-libs/gst/rtsp/gstrtspconnection.h"
+                       line="246"/>
       <method name="attach" c:identifier="gst_rtsp_watch_attach">
-        <doc xml:space="preserve">Adds a #GstRTSPWatch to a context so that it will be executed within that context.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+             line="4277">Adds a #GstRTSPWatch to a context so that it will be executed within that context.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspconnection.h"
+                         line="304"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the ID (greater than 0) for the watch within the GMainContext.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+               line="4284">the ID (greater than 0) for the watch within the GMainContext.</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="watch" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPWatch</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="4279">a #GstRTSPWatch</doc>
             <type name="RTSPWatch" c:type="GstRTSPWatch*"/>
           </instance-parameter>
           <parameter name="context" transfer-ownership="none">
-            <doc xml:space="preserve">a GMainContext (if NULL, the default context will be used)</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="4280">a GMainContext (if NULL, the default context will be used)</doc>
             <type name="GLib.MainContext" c:type="GMainContext*"/>
           </parameter>
         </parameters>
@@ -4107,14 +5896,20 @@ operations.</doc>
       <method name="get_send_backlog"
               c:identifier="gst_rtsp_watch_get_send_backlog"
               version="1.2">
-        <doc xml:space="preserve">Get the maximum amount of bytes and messages that will be queued in @watch.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+             line="4340">Get the maximum amount of bytes and messages that will be queued in @watch.
 See gst_rtsp_watch_set_send_backlog().</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspconnection.h"
+                         line="312"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="watch" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPWatch</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="4342">a #GstRTSPWatch</doc>
             <type name="RTSPWatch" c:type="GstRTSPWatch*"/>
           </instance-parameter>
           <parameter name="bytes"
@@ -4123,7 +5918,9 @@ See gst_rtsp_watch_set_send_backlog().</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">maximum bytes</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="4343">maximum bytes</doc>
             <type name="gsize" c:type="gsize*"/>
           </parameter>
           <parameter name="messages"
@@ -4132,42 +5929,60 @@ See gst_rtsp_watch_set_send_backlog().</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">maximum messages</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="4344">maximum messages</doc>
             <type name="guint" c:type="guint*"/>
           </parameter>
         </parameters>
       </method>
       <method name="reset" c:identifier="gst_rtsp_watch_reset">
-        <doc xml:space="preserve">Reset @watch, this is usually called after gst_rtsp_connection_do_tunnel()
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+             line="4221">Reset @watch, this is usually called after gst_rtsp_connection_do_tunnel()
 when the file descriptors of the connection might have changed.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspconnection.h"
+                         line="298"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="watch" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPWatch</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="4223">a #GstRTSPWatch</doc>
             <type name="RTSPWatch" c:type="GstRTSPWatch*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="send_message" c:identifier="gst_rtsp_watch_send_message">
-        <doc xml:space="preserve">Send a @message using the connection of the @watch. If it cannot be sent
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+             line="4640">Send a @message using the connection of the @watch. If it cannot be sent
 immediately, it will be queued for transmission in @watch. The contents of
 @message will then be serialized and transmitted when the connection of the
 @watch becomes writable. In case the @message is queued, the ID returned in
 @id will be non-zero and used as the ID argument in the message_sent
 callback.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspconnection.h"
+                         line="321"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">#GST_RTSP_OK on success.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+               line="4653">#GST_RTSP_OK on success.</doc>
           <type name="RTSPResult" c:type="GstRTSPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="watch" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPWatch</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="4642">a #GstRTSPWatch</doc>
             <type name="RTSPWatch" c:type="GstRTSPWatch*"/>
           </instance-parameter>
           <parameter name="message" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="4643">a #GstRTSPMessage</doc>
             <type name="RTSPMessage" c:type="GstRTSPMessage*"/>
           </parameter>
           <parameter name="id"
@@ -4176,7 +5991,9 @@ callback.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">location for a message ID or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="4644">location for a message ID or %NULL</doc>
             <type name="guint" c:type="guint*"/>
           </parameter>
         </parameters>
@@ -4184,30 +6001,42 @@ callback.</doc>
       <method name="send_messages"
               c:identifier="gst_rtsp_watch_send_messages"
               version="1.16">
-        <doc xml:space="preserve">Sends @messages using the connection of the @watch. If they cannot be sent
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+             line="4665">Sends @messages using the connection of the @watch. If they cannot be sent
 immediately, they will be queued for transmission in @watch. The contents of
 @messages will then be serialized and transmitted when the connection of the
 @watch becomes writable. In case the @messages are queued, the ID returned in
 @id will be non-zero and used as the ID argument in the message_sent
 callback once the last message is sent. The callback will only be called
 once for the last message.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspconnection.h"
+                         line="326"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">#GST_RTSP_OK on success.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+               line="4680">#GST_RTSP_OK on success.</doc>
           <type name="RTSPResult" c:type="GstRTSPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="watch" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPWatch</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="4667">a #GstRTSPWatch</doc>
             <type name="RTSPWatch" c:type="GstRTSPWatch*"/>
           </instance-parameter>
           <parameter name="messages" transfer-ownership="none">
-            <doc xml:space="preserve">the messages to send</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="4668">the messages to send</doc>
             <array length="1" zero-terminated="0" c:type="GstRTSPMessage*">
               <type name="RTSPMessage" c:type="GstRTSPMessage"/>
             </array>
           </parameter>
           <parameter name="n_messages" transfer-ownership="none">
-            <doc xml:space="preserve">the number of messages to send</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="4669">the number of messages to send</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="id"
@@ -4216,7 +6045,9 @@ once for the last message.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">location for a message ID or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="4670">location for a message ID or %NULL</doc>
             <type name="guint" c:type="guint*"/>
           </parameter>
         </parameters>
@@ -4224,19 +6055,27 @@ once for the last message.</doc>
       <method name="set_flushing"
               c:identifier="gst_rtsp_watch_set_flushing"
               version="1.4">
-        <doc xml:space="preserve">When @flushing is %TRUE, abort a call to gst_rtsp_watch_wait_backlog()
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+             line="4779">When @flushing is %TRUE, abort a call to gst_rtsp_watch_wait_backlog()
 and make sure gst_rtsp_watch_write_data() returns immediately with
 #GST_RTSP_EINTR. And empty the queue.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspconnection.h"
+                         line="336"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="watch" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPWatch</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="4781">a #GstRTSPWatch</doc>
             <type name="RTSPWatch" c:type="GstRTSPWatch*"/>
           </instance-parameter>
           <parameter name="flushing" transfer-ownership="none">
-            <doc xml:space="preserve">new flushing state</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="4782">new flushing state</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
@@ -4244,46 +6083,66 @@ and make sure gst_rtsp_watch_write_data() returns immediately with
       <method name="set_send_backlog"
               c:identifier="gst_rtsp_watch_set_send_backlog"
               version="1.2">
-        <doc xml:space="preserve">Set the maximum amount of bytes and messages that will be queued in @watch.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+             line="4309">Set the maximum amount of bytes and messages that will be queued in @watch.
 When the maximum amounts are exceeded, gst_rtsp_watch_write_data() and
 gst_rtsp_watch_send_message() will return #GST_RTSP_ENOMEM.
 
 A value of 0 for @bytes or @messages means no limits.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspconnection.h"
+                         line="308"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="watch" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPWatch</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="4311">a #GstRTSPWatch</doc>
             <type name="RTSPWatch" c:type="GstRTSPWatch*"/>
           </instance-parameter>
           <parameter name="bytes" transfer-ownership="none">
-            <doc xml:space="preserve">maximum bytes</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="4312">maximum bytes</doc>
             <type name="gsize" c:type="gsize"/>
           </parameter>
           <parameter name="messages" transfer-ownership="none">
-            <doc xml:space="preserve">maximum messages</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="4313">maximum messages</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="unref" c:identifier="gst_rtsp_watch_unref">
-        <doc xml:space="preserve">Decreases the reference count of @watch by one. If the resulting reference
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+             line="4294">Decreases the reference count of @watch by one. If the resulting reference
 count is zero the watch and associated memory will be destroyed.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspconnection.h"
+                         line="301"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="watch" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPWatch</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="4296">a #GstRTSPWatch</doc>
             <type name="RTSPWatch" c:type="GstRTSPWatch*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="wait_backlog"
               c:identifier="gst_rtsp_watch_wait_backlog"
-              version="1.4">
-        <doc xml:space="preserve">Wait until there is place in the backlog queue, @timeout is reached
+              version="1.4"
+              deprecated="1"
+              deprecated-version="1.18">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+             line="5038">Wait until there is place in the backlog queue, @timeout is reached
 or @watch is set to flushing.
 
 If @timeout is %NULL this function can block forever. If @timeout
@@ -4293,8 +6152,12 @@ after the timeout expired.
 The typically use of this function is when gst_rtsp_watch_write_data
 returns %GST_RTSP_ENOMEM. The caller then calls this function to wait for
 free space in the backlog queue and try again.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspconnection.h"
+                         line="380"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%GST_RTSP_OK when if there is room in queue.
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+               line="5054">%GST_RTSP_OK when if there is room in queue.
          %GST_RTSP_ETIMEOUT when @timeout was reached.
          %GST_RTSP_EINTR when @watch is flushing
          %GST_RTSP_EINVAL when called with invalid parameters.</doc>
@@ -4302,17 +6165,64 @@ free space in the backlog queue and try again.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="watch" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPWatch</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="5040">a #GstRTSPWatch</doc>
             <type name="RTSPWatch" c:type="GstRTSPWatch*"/>
           </instance-parameter>
           <parameter name="timeout" transfer-ownership="none">
-            <doc xml:space="preserve">a #GTimeVal timeout</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="5041">a GTimeVal timeout</doc>
             <type name="GLib.TimeVal" c:type="GTimeVal*"/>
           </parameter>
         </parameters>
       </method>
+      <method name="wait_backlog_usec"
+              c:identifier="gst_rtsp_watch_wait_backlog_usec"
+              version="1.18">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+             line="4714">Wait until there is place in the backlog queue, @timeout is reached
+or @watch is set to flushing.
+
+If @timeout is 0 this function can block forever. If @timeout
+contains a valid timeout, this function will return %GST_RTSP_ETIMEOUT
+after the timeout expired.
+
+The typically use of this function is when gst_rtsp_watch_write_data
+returns %GST_RTSP_ENOMEM. The caller then calls this function to wait for
+free space in the backlog queue and try again.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspconnection.h"
+                         line="332"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+               line="4730">%GST_RTSP_OK when if there is room in queue.
+         %GST_RTSP_ETIMEOUT when @timeout was reached.
+         %GST_RTSP_EINTR when @watch is flushing
+         %GST_RTSP_EINVAL when called with invalid parameters.</doc>
+          <type name="RTSPResult" c:type="GstRTSPResult"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="watch" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="4716">a #GstRTSPWatch</doc>
+            <type name="RTSPWatch" c:type="GstRTSPWatch*"/>
+          </instance-parameter>
+          <parameter name="timeout" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="4717">a timeout in microseconds</doc>
+            <type name="gint64" c:type="gint64"/>
+          </parameter>
+        </parameters>
+      </method>
       <method name="write_data" c:identifier="gst_rtsp_watch_write_data">
-        <doc xml:space="preserve">Write @data using the connection of the @watch. If it cannot be sent
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+             line="4602">Write @data using the connection of the @watch. If it cannot be sent
 immediately, it will be queued for transmission in @watch. The contents of
 @message will then be serialized and transmitted when the connection of the
 @watch becomes writable. In case the @message is queued, the ID returned in
@@ -4324,24 +6234,34 @@ This function will take ownership of @data and g_free() it after use.
 If the amount of queued data exceeds the limits set with
 gst_rtsp_watch_set_send_backlog(), this function will return
 #GST_RTSP_ENOMEM.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspconnection.h"
+                         line="316"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">#GST_RTSP_OK on success. #GST_RTSP_ENOMEM when the backlog limits
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+               line="4622">#GST_RTSP_OK on success. #GST_RTSP_ENOMEM when the backlog limits
 are reached. #GST_RTSP_EINTR when @watch was flushing.</doc>
           <type name="RTSPResult" c:type="GstRTSPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="watch" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPWatch</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="4604">a #GstRTSPWatch</doc>
             <type name="RTSPWatch" c:type="GstRTSPWatch*"/>
           </instance-parameter>
           <parameter name="data" transfer-ownership="full">
-            <doc xml:space="preserve">the data to queue</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="4605">the data to queue</doc>
             <array length="1" zero-terminated="0" c:type="const guint8*">
               <type name="guint8" c:type="guint8"/>
             </array>
           </parameter>
           <parameter name="size" transfer-ownership="none">
-            <doc xml:space="preserve">the size of @data</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="4606">the size of @data</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="id"
@@ -4350,7 +6270,9 @@ are reached. #GST_RTSP_EINTR when @watch was flushing.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">location for a message ID or %NULL</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="4607">location for a message ID or %NULL</doc>
             <type name="guint" c:type="guint*"/>
           </parameter>
         </parameters>
@@ -4358,45 +6280,65 @@ are reached. #GST_RTSP_EINTR when @watch was flushing.</doc>
       <function name="new"
                 c:identifier="gst_rtsp_watch_new"
                 introspectable="0">
-        <doc xml:space="preserve">Create a watch object for @conn. The functions provided in @funcs will be
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+             line="4170">Create a watch object for @conn. The functions provided in @funcs will be
 called with @user_data when activity happened on the watch.
 
 The new watch is usually created so that it can be attached to a
 maincontext with gst_rtsp_watch_attach().
 
 @conn must exist for the entire lifetime of the watch.</doc>
+        <source-position filename="gst-libs/gst/rtsp/gstrtspconnection.h"
+                         line="292"/>
         <return-value>
-          <doc xml:space="preserve">a #GstRTSPWatch that can be used for asynchronous RTSP
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+               line="4185">a #GstRTSPWatch that can be used for asynchronous RTSP
 communication. Free with gst_rtsp_watch_unref () after usage.</doc>
           <type name="RTSPWatch" c:type="GstRTSPWatch*"/>
         </return-value>
         <parameters>
           <parameter name="conn" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstRTSPConnection</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="4172">a #GstRTSPConnection</doc>
             <type name="RTSPConnection" c:type="GstRTSPConnection*"/>
           </parameter>
           <parameter name="funcs" transfer-ownership="none">
-            <doc xml:space="preserve">watch functions</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="4173">watch functions</doc>
             <type name="RTSPWatchFuncs" c:type="GstRTSPWatchFuncs*"/>
           </parameter>
           <parameter name="user_data"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">user data to pass to @funcs</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="4174">user data to pass to @funcs</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
           <parameter name="notify" transfer-ownership="none" scope="async">
-            <doc xml:space="preserve">notify when @user_data is not referenced anymore</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+                 line="4175">notify when @user_data is not referenced anymore</doc>
             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
           </parameter>
         </parameters>
       </function>
     </record>
     <record name="RTSPWatchFuncs" c:type="GstRTSPWatchFuncs">
-      <doc xml:space="preserve">Callback functions from a #GstRTSPWatch.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtsp/gstrtspconnection.h"
+           line="248">Callback functions from a #GstRTSPWatch.</doc>
+      <source-position filename="gst-libs/gst/rtsp/gstrtspconnection.h"
+                       line="289"/>
       <field name="message_received">
         <callback name="message_received">
+          <source-position filename="gst-libs/gst/rtsp/gstrtspconnection.h"
+                           line="269"/>
           <return-value transfer-ownership="none">
             <type name="RTSPResult" c:type="GstRTSPResult"/>
           </return-value>
@@ -4419,6 +6361,8 @@ communication. Free with gst_rtsp_watch_unref () after usage.</doc>
       </field>
       <field name="message_sent">
         <callback name="message_sent">
+          <source-position filename="gst-libs/gst/rtsp/gstrtspconnection.h"
+                           line="271"/>
           <return-value transfer-ownership="none">
             <type name="RTSPResult" c:type="GstRTSPResult"/>
           </return-value>
@@ -4441,6 +6385,8 @@ communication. Free with gst_rtsp_watch_unref () after usage.</doc>
       </field>
       <field name="closed">
         <callback name="closed">
+          <source-position filename="gst-libs/gst/rtsp/gstrtspconnection.h"
+                           line="273"/>
           <return-value transfer-ownership="none">
             <type name="RTSPResult" c:type="GstRTSPResult"/>
           </return-value>
@@ -4460,6 +6406,8 @@ communication. Free with gst_rtsp_watch_unref () after usage.</doc>
       </field>
       <field name="error">
         <callback name="error">
+          <source-position filename="gst-libs/gst/rtsp/gstrtspconnection.h"
+                           line="274"/>
           <return-value transfer-ownership="none">
             <type name="RTSPResult" c:type="GstRTSPResult"/>
           </return-value>
@@ -4482,6 +6430,8 @@ communication. Free with gst_rtsp_watch_unref () after usage.</doc>
       </field>
       <field name="tunnel_start">
         <callback name="tunnel_start">
+          <source-position filename="gst-libs/gst/rtsp/gstrtspconnection.h"
+                           line="276"/>
           <return-value transfer-ownership="none">
             <type name="RTSPStatusCode" c:type="GstRTSPStatusCode"/>
           </return-value>
@@ -4501,6 +6451,8 @@ communication. Free with gst_rtsp_watch_unref () after usage.</doc>
       </field>
       <field name="tunnel_complete">
         <callback name="tunnel_complete">
+          <source-position filename="gst-libs/gst/rtsp/gstrtspconnection.h"
+                           line="277"/>
           <return-value transfer-ownership="none">
             <type name="RTSPResult" c:type="GstRTSPResult"/>
           </return-value>
@@ -4520,6 +6472,8 @@ communication. Free with gst_rtsp_watch_unref () after usage.</doc>
       </field>
       <field name="error_full">
         <callback name="error_full">
+          <source-position filename="gst-libs/gst/rtsp/gstrtspconnection.h"
+                           line="278"/>
           <return-value transfer-ownership="none">
             <type name="RTSPResult" c:type="GstRTSPResult"/>
           </return-value>
@@ -4548,6 +6502,8 @@ communication. Free with gst_rtsp_watch_unref () after usage.</doc>
       </field>
       <field name="tunnel_lost">
         <callback name="tunnel_lost">
+          <source-position filename="gst-libs/gst/rtsp/gstrtspconnection.h"
+                           line="281"/>
           <return-value transfer-ownership="none">
             <type name="RTSPResult" c:type="GstRTSPResult"/>
           </return-value>
@@ -4567,6 +6523,8 @@ communication. Free with gst_rtsp_watch_unref () after usage.</doc>
       </field>
       <field name="tunnel_http_response">
         <callback name="tunnel_http_response">
+          <source-position filename="gst-libs/gst/rtsp/gstrtspconnection.h"
+                           line="282"/>
           <return-value transfer-ownership="none">
             <type name="RTSPResult" c:type="GstRTSPResult"/>
           </return-value>
@@ -4591,28 +6549,107 @@ communication. Free with gst_rtsp_watch_unref () after usage.</doc>
         </callback>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="3">
+        <array zero-terminated="0" fixed-size="3">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
     </record>
+    <function-macro name="RTSP_CHECK"
+                    c:identifier="GST_RTSP_CHECK"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtsp/gstrtspdefs.h"
+           line="51">Macro that checks the return value of @stmt and jumps to @label when it does
+not equal #GST_RTSP_OK.</doc>
+      <source-position filename="gst-libs/gst/rtsp/gstrtspdefs.h" line="59"/>
+      <parameters>
+        <parameter name="stmt">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspdefs.h"
+               line="53">a statement</doc>
+        </parameter>
+        <parameter name="label">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspdefs.h"
+               line="54">a label</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
     <constant name="RTSP_DEFAULT_PORT"
               value="554"
               c:type="GST_RTSP_DEFAULT_PORT">
-      <doc xml:space="preserve">The default RTSP port to connect to.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtsp/gstrtspurl.h"
+           line="54">The default RTSP port to connect to.</doc>
+      <source-position filename="gst-libs/gst/rtsp/gstrtspurl.h" line="59"/>
       <type name="gint" c:type="gint"/>
     </constant>
+    <function-macro name="RTSP_DEPRECATED_FOR"
+                    c:identifier="GST_RTSP_DEPRECATED_FOR"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/rtsp/rtsp-prelude.h" line="35"/>
+      <parameters>
+        <parameter name="f">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="RTSP_EXTENSION"
+                    c:identifier="GST_RTSP_EXTENSION"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/rtsp/gstrtspextension.h"
+                       line="35"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="RTSP_EXTENSION_GET_INTERFACE"
+                    c:identifier="GST_RTSP_EXTENSION_GET_INTERFACE"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/rtsp/gstrtspextension.h"
+                       line="39"/>
+      <parameters>
+        <parameter name="inst">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="RTSP_MESSAGE"
+                    c:identifier="GST_RTSP_MESSAGE"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/rtsp/gstrtspmessage.h"
+                       line="116"/>
+      <parameters>
+        <parameter name="object">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="RTSP_MESSAGE_CAST"
+                    c:identifier="GST_RTSP_MESSAGE_CAST"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/rtsp/gstrtspmessage.h"
+                       line="115"/>
+      <parameters>
+        <parameter name="object">
+        </parameter>
+      </parameters>
+    </function-macro>
     <function name="rtsp_auth_credentials_free"
               c:identifier="gst_rtsp_auth_credentials_free"
               version="1.12">
-      <doc xml:space="preserve">Free a %NULL-terminated array of credentials returned from
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+           line="1543">Free a %NULL-terminated array of credentials returned from
 gst_rtsp_message_parse_auth_credentials().</doc>
+      <source-position filename="gst-libs/gst/rtsp/gstrtspmessage.h"
+                       line="324"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="credentials" transfer-ownership="none">
-          <doc xml:space="preserve">a %NULL-terminated array of #GstRTSPAuthCredential</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+               line="1545">a %NULL-terminated array of #GstRTSPAuthCredential</doc>
           <type name="RTSPAuthCredential" c:type="GstRTSPAuthCredential**"/>
         </parameter>
       </parameters>
@@ -4620,29 +6657,41 @@ gst_rtsp_message_parse_auth_credentials().</doc>
     <function name="rtsp_connection_accept"
               c:identifier="gst_rtsp_connection_accept"
               moved-to="RTSPConnection.accept">
-      <doc xml:space="preserve">Accept a new connection on @socket and create a new #GstRTSPConnection for
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+           line="485">Accept a new connection on @socket and create a new #GstRTSPConnection for
 handling communication on new socket.</doc>
+      <source-position filename="gst-libs/gst/rtsp/gstrtspconnection.h"
+                       line="76"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">#GST_RTSP_OK when @conn contains a valid connection.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+             line="494">#GST_RTSP_OK when @conn contains a valid connection.</doc>
         <type name="RTSPResult" c:type="GstRTSPResult"/>
       </return-value>
       <parameters>
         <parameter name="socket" transfer-ownership="none">
-          <doc xml:space="preserve">a socket</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+               line="487">a socket</doc>
           <type name="Gio.Socket" c:type="GSocket*"/>
         </parameter>
         <parameter name="conn"
                    direction="out"
                    caller-allocates="0"
                    transfer-ownership="full">
-          <doc xml:space="preserve">storage for a #GstRTSPConnection</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+               line="488">storage for a #GstRTSPConnection</doc>
           <type name="RTSPConnection" c:type="GstRTSPConnection**"/>
         </parameter>
         <parameter name="cancellable"
                    transfer-ownership="none"
                    nullable="1"
                    allow-none="1">
-          <doc xml:space="preserve">a #GCancellable to cancel the operation</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+               line="489">a #GCancellable to cancel the operation</doc>
           <type name="Gio.Cancellable" c:type="GCancellable*"/>
         </parameter>
       </parameters>
@@ -4650,25 +6699,35 @@ handling communication on new socket.</doc>
     <function name="rtsp_connection_create"
               c:identifier="gst_rtsp_connection_create"
               moved-to="RTSPConnection.create">
-      <doc xml:space="preserve">Create a newly allocated #GstRTSPConnection from @url and store it in @conn.
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+           line="329">Create a newly allocated #GstRTSPConnection from @url and store it in @conn.
 The connection will not yet attempt to connect to @url, use
 gst_rtsp_connection_connect().
 
 A copy of @url will be made.</doc>
+      <source-position filename="gst-libs/gst/rtsp/gstrtspconnection.h"
+                       line="66"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">#GST_RTSP_OK when @conn contains a valid connection.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+             line="340">#GST_RTSP_OK when @conn contains a valid connection.</doc>
         <type name="RTSPResult" c:type="GstRTSPResult"/>
       </return-value>
       <parameters>
         <parameter name="url" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstRTSPUrl</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+               line="331">a #GstRTSPUrl</doc>
           <type name="RTSPUrl" c:type="const GstRTSPUrl*"/>
         </parameter>
         <parameter name="conn"
                    direction="out"
                    caller-allocates="0"
                    transfer-ownership="full">
-          <doc xml:space="preserve">storage for a #GstRTSPConnection</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+               line="332">storage for a #GstRTSPConnection</doc>
           <type name="RTSPConnection" c:type="GstRTSPConnection**"/>
         </parameter>
       </parameters>
@@ -4676,64 +6735,94 @@ A copy of @url will be made.</doc>
     <function name="rtsp_connection_create_from_socket"
               c:identifier="gst_rtsp_connection_create_from_socket"
               moved-to="RTSPConnection.create_from_socket">
-      <doc xml:space="preserve">Create a new #GstRTSPConnection for handling communication on the existing
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+           line="408">Create a new #GstRTSPConnection for handling communication on the existing
 socket @socket. The @initial_buffer contains zero terminated data already
 read from @socket which should be used before starting to read new data.</doc>
+      <source-position filename="gst-libs/gst/rtsp/gstrtspconnection.h"
+                       line="69"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">#GST_RTSP_OK when @conn contains a valid connection.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+             line="420">#GST_RTSP_OK when @conn contains a valid connection.</doc>
         <type name="RTSPResult" c:type="GstRTSPResult"/>
       </return-value>
       <parameters>
         <parameter name="socket" transfer-ownership="none">
-          <doc xml:space="preserve">a #GSocket</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+               line="410">a #GSocket</doc>
           <type name="Gio.Socket" c:type="GSocket*"/>
         </parameter>
         <parameter name="ip" transfer-ownership="none">
-          <doc xml:space="preserve">the IP address of the other end</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+               line="411">the IP address of the other end</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
         <parameter name="port" transfer-ownership="none">
-          <doc xml:space="preserve">the port used by the other end</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+               line="412">the port used by the other end</doc>
           <type name="guint16" c:type="guint16"/>
         </parameter>
         <parameter name="initial_buffer" transfer-ownership="none">
-          <doc xml:space="preserve">data already read from @fd</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+               line="413">data already read from @fd</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
         <parameter name="conn"
                    direction="out"
                    caller-allocates="0"
                    transfer-ownership="full">
-          <doc xml:space="preserve">storage for a #GstRTSPConnection</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+               line="414">storage for a #GstRTSPConnection</doc>
           <type name="RTSPConnection" c:type="GstRTSPConnection**"/>
         </parameter>
       </parameters>
     </function>
     <function name="rtsp_find_header_field"
               c:identifier="gst_rtsp_find_header_field">
-      <doc xml:space="preserve">Convert @header to a #GstRTSPHeaderField.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtsp/gstrtspdefs.c"
+           line="397">Convert @header to a #GstRTSPHeaderField.</doc>
+      <source-position filename="gst-libs/gst/rtsp/gstrtspdefs.h" line="427"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">a #GstRTSPHeaderField for @header or #GST_RTSP_HDR_INVALID if the
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspdefs.c"
+             line="403">a #GstRTSPHeaderField for @header or #GST_RTSP_HDR_INVALID if the
 header field is unknown.</doc>
         <type name="RTSPHeaderField" c:type="GstRTSPHeaderField"/>
       </return-value>
       <parameters>
         <parameter name="header" transfer-ownership="none">
-          <doc xml:space="preserve">a header string</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspdefs.c"
+               line="399">a header string</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
       </parameters>
     </function>
     <function name="rtsp_find_method" c:identifier="gst_rtsp_find_method">
-      <doc xml:space="preserve">Convert @method to a #GstRTSPMethod.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtsp/gstrtspdefs.c"
+           line="419">Convert @method to a #GstRTSPMethod.</doc>
+      <source-position filename="gst-libs/gst/rtsp/gstrtspdefs.h" line="430"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">a #GstRTSPMethod for @method or #GST_RTSP_INVALID if the
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspdefs.c"
+             line="425">a #GstRTSPMethod for @method or #GST_RTSP_INVALID if the
 method is unknown.</doc>
         <type name="RTSPMethod" c:type="GstRTSPMethod"/>
       </return-value>
       <parameters>
         <parameter name="method" transfer-ownership="none">
-          <doc xml:space="preserve">a method</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspdefs.c"
+               line="421">a method</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
       </parameters>
@@ -4741,12 +6830,17 @@ method is unknown.</doc>
     <function name="rtsp_generate_digest_auth_response"
               c:identifier="gst_rtsp_generate_digest_auth_response"
               version="1.12">
-      <doc xml:space="preserve">Calculates the digest auth response from the values given by the server and
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtsp/gstrtspdefs.c"
+           line="603">Calculates the digest auth response from the values given by the server and
 the username and password. See RFC2069 for details.
 
 Currently only supported algorithm "md5".</doc>
+      <source-position filename="gst-libs/gst/rtsp/gstrtspdefs.h" line="436"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">Authentication response or %NULL if unsupported</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspdefs.c"
+             line="618">Authentication response or %NULL if unsupported</doc>
         <type name="utf8" c:type="gchar*"/>
       </return-value>
       <parameters>
@@ -4754,31 +6848,45 @@ Currently only supported algorithm "md5".</doc>
                    transfer-ownership="none"
                    nullable="1"
                    allow-none="1">
-          <doc xml:space="preserve">Hash algorithm to use, or %NULL for MD5</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspdefs.c"
+               line="605">Hash algorithm to use, or %NULL for MD5</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
         <parameter name="method" transfer-ownership="none">
-          <doc xml:space="preserve">Request method, e.g. PLAY</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspdefs.c"
+               line="606">Request method, e.g. PLAY</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
         <parameter name="realm" transfer-ownership="none">
-          <doc xml:space="preserve">Realm</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspdefs.c"
+               line="607">Realm</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
         <parameter name="username" transfer-ownership="none">
-          <doc xml:space="preserve">Username</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspdefs.c"
+               line="608">Username</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
         <parameter name="password" transfer-ownership="none">
-          <doc xml:space="preserve">Password</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspdefs.c"
+               line="609">Password</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
         <parameter name="uri" transfer-ownership="none">
-          <doc xml:space="preserve">Original request URI</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspdefs.c"
+               line="610">Original request URI</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
         <parameter name="nonce" transfer-ownership="none">
-          <doc xml:space="preserve">Nonce</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspdefs.c"
+               line="611">Nonce</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
       </parameters>
@@ -4786,15 +6894,20 @@ Currently only supported algorithm "md5".</doc>
     <function name="rtsp_generate_digest_auth_response_from_md5"
               c:identifier="gst_rtsp_generate_digest_auth_response_from_md5"
               version="1.16">
-      <doc xml:space="preserve">Calculates the digest auth response from the values given by the server and
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtsp/gstrtspdefs.c"
+           line="644">Calculates the digest auth response from the values given by the server and
 the md5sum. See RFC2069 for details.
 
 This function is useful when the passwords are not stored in clear text,
 but instead in the same format as the .htdigest file.
 
 Currently only supported algorithm "md5".</doc>
+      <source-position filename="gst-libs/gst/rtsp/gstrtspdefs.h" line="445"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">Authentication response or %NULL if unsupported</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspdefs.c"
+             line="660">Authentication response or %NULL if unsupported</doc>
         <type name="utf8" c:type="gchar*"/>
       </return-value>
       <parameters>
@@ -4802,59 +6915,89 @@ Currently only supported algorithm "md5".</doc>
                    transfer-ownership="none"
                    nullable="1"
                    allow-none="1">
-          <doc xml:space="preserve">Hash algorithm to use, or %NULL for MD5</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspdefs.c"
+               line="646">Hash algorithm to use, or %NULL for MD5</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
         <parameter name="method" transfer-ownership="none">
-          <doc xml:space="preserve">Request method, e.g. PLAY</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspdefs.c"
+               line="647">Request method, e.g. PLAY</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
         <parameter name="md5" transfer-ownership="none">
-          <doc xml:space="preserve">The md5 sum of username:realm:password</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspdefs.c"
+               line="648">The md5 sum of username:realm:password</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
         <parameter name="uri" transfer-ownership="none">
-          <doc xml:space="preserve">Original request URI</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspdefs.c"
+               line="649">Original request URI</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
         <parameter name="nonce" transfer-ownership="none">
-          <doc xml:space="preserve">Nonce</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspdefs.c"
+               line="650">Nonce</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
       </parameters>
     </function>
     <function name="rtsp_header_allow_multiple"
               c:identifier="gst_rtsp_header_allow_multiple">
-      <doc xml:space="preserve">Check whether @field may appear multiple times in a message.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtsp/gstrtspdefs.c"
+           line="526">Check whether @field may appear multiple times in a message.</doc>
+      <source-position filename="gst-libs/gst/rtsp/gstrtspdefs.h" line="433"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE if multiple headers are allowed.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspdefs.c"
+             line="532">%TRUE if multiple headers are allowed.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="field" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstRTSPHeaderField</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspdefs.c"
+               line="528">a #GstRTSPHeaderField</doc>
           <type name="RTSPHeaderField" c:type="GstRTSPHeaderField"/>
         </parameter>
       </parameters>
     </function>
     <function name="rtsp_header_as_text"
               c:identifier="gst_rtsp_header_as_text">
-      <doc xml:space="preserve">Convert @field to a string.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtsp/gstrtspdefs.c"
+           line="361">Convert @field to a string.</doc>
+      <source-position filename="gst-libs/gst/rtsp/gstrtspdefs.h" line="415"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">a string representation of @field.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspdefs.c"
+             line="367">a string representation of @field.</doc>
         <type name="utf8" c:type="const gchar*"/>
       </return-value>
       <parameters>
         <parameter name="field" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstRTSPHeaderField</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspdefs.c"
+               line="363">a #GstRTSPHeaderField</doc>
           <type name="RTSPHeaderField" c:type="GstRTSPHeaderField"/>
         </parameter>
       </parameters>
     </function>
     <function name="rtsp_message_new" c:identifier="gst_rtsp_message_new">
-      <doc xml:space="preserve">Create a new initialized #GstRTSPMessage. Free with gst_rtsp_message_free().</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+           line="115">Create a new initialized #GstRTSPMessage. Free with gst_rtsp_message_free().</doc>
+      <source-position filename="gst-libs/gst/rtsp/gstrtspmessage.h"
+                       line="121"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">a #GstRTSPResult.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+             line="121">a #GstRTSPResult.</doc>
         <type name="RTSPResult" c:type="GstRTSPResult"/>
       </return-value>
       <parameters>
@@ -4862,17 +7005,25 @@ Currently only supported algorithm "md5".</doc>
                    direction="out"
                    caller-allocates="0"
                    transfer-ownership="full">
-          <doc xml:space="preserve">a location for the new #GstRTSPMessage</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+               line="117">a location for the new #GstRTSPMessage</doc>
           <type name="RTSPMessage" c:type="GstRTSPMessage**"/>
         </parameter>
       </parameters>
     </function>
     <function name="rtsp_message_new_data"
               c:identifier="gst_rtsp_message_new_data">
-      <doc xml:space="preserve">Create a new data #GstRTSPMessage with @channel and store the
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+           line="398">Create a new data #GstRTSPMessage with @channel and store the
 result message in @msg. Free with gst_rtsp_message_free().</doc>
+      <source-position filename="gst-libs/gst/rtsp/gstrtspmessage.h"
+                       line="179"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">a #GstRTSPResult.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+             line="406">a #GstRTSPResult.</doc>
         <type name="RTSPResult" c:type="GstRTSPResult"/>
       </return-value>
       <parameters>
@@ -4880,21 +7031,31 @@ result message in @msg. Free with gst_rtsp_message_free().</doc>
                    direction="out"
                    caller-allocates="0"
                    transfer-ownership="full">
-          <doc xml:space="preserve">a location for the new #GstRTSPMessage</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+               line="400">a location for the new #GstRTSPMessage</doc>
           <type name="RTSPMessage" c:type="GstRTSPMessage**"/>
         </parameter>
         <parameter name="channel" transfer-ownership="none">
-          <doc xml:space="preserve">the channel</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+               line="401">the channel</doc>
           <type name="guint8" c:type="guint8"/>
         </parameter>
       </parameters>
     </function>
     <function name="rtsp_message_new_request"
               c:identifier="gst_rtsp_message_new_request">
-      <doc xml:space="preserve">Create a new #GstRTSPMessage with @method and @uri and store the result
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+           line="175">Create a new #GstRTSPMessage with @method and @uri and store the result
 request message in @msg. Free with gst_rtsp_message_free().</doc>
+      <source-position filename="gst-libs/gst/rtsp/gstrtspmessage.h"
+                       line="141"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">a #GstRTSPResult.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+             line="184">a #GstRTSPResult.</doc>
         <type name="RTSPResult" c:type="GstRTSPResult"/>
       </return-value>
       <parameters>
@@ -4902,30 +7063,42 @@ request message in @msg. Free with gst_rtsp_message_free().</doc>
                    direction="out"
                    caller-allocates="0"
                    transfer-ownership="full">
-          <doc xml:space="preserve">a location for the new #GstRTSPMessage</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+               line="177">a location for the new #GstRTSPMessage</doc>
           <type name="RTSPMessage" c:type="GstRTSPMessage**"/>
         </parameter>
         <parameter name="method" transfer-ownership="none">
-          <doc xml:space="preserve">the request method to use</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+               line="178">the request method to use</doc>
           <type name="RTSPMethod" c:type="GstRTSPMethod"/>
         </parameter>
         <parameter name="uri" transfer-ownership="none">
-          <doc xml:space="preserve">the uri of the request</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+               line="179">the uri of the request</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
       </parameters>
     </function>
     <function name="rtsp_message_new_response"
               c:identifier="gst_rtsp_message_new_response">
-      <doc xml:space="preserve">Create a new response #GstRTSPMessage with @code and @reason and store the
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+           line="264">Create a new response #GstRTSPMessage with @code and @reason and store the
 result message in @msg. Free with gst_rtsp_message_free().
 
 When @reason is %NULL, the default reason for @code will be used.
 
 When @request is not %NULL, the relevant headers will be copied to the new
 response message.</doc>
+      <source-position filename="gst-libs/gst/rtsp/gstrtspmessage.h"
+                       line="159"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">a #GstRTSPResult.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+             line="279">a #GstRTSPResult.</doc>
         <type name="RTSPResult" c:type="GstRTSPResult"/>
       </return-value>
       <parameters>
@@ -4933,25 +7106,33 @@ response message.</doc>
                    direction="out"
                    caller-allocates="0"
                    transfer-ownership="full">
-          <doc xml:space="preserve">a location for the new #GstRTSPMessage</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+               line="266">a location for the new #GstRTSPMessage</doc>
           <type name="RTSPMessage" c:type="GstRTSPMessage**"/>
         </parameter>
         <parameter name="code" transfer-ownership="none">
-          <doc xml:space="preserve">the status code</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+               line="267">the status code</doc>
           <type name="RTSPStatusCode" c:type="GstRTSPStatusCode"/>
         </parameter>
         <parameter name="reason"
                    transfer-ownership="none"
                    nullable="1"
                    allow-none="1">
-          <doc xml:space="preserve">the status reason or %NULL</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+               line="268">the status reason or %NULL</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
         <parameter name="request"
                    transfer-ownership="none"
                    nullable="1"
                    allow-none="1">
-          <doc xml:space="preserve">the request that triggered the response or %NULL</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspmessage.c"
+               line="269">the request that triggered the response or %NULL</doc>
           <type name="RTSPMessage" c:type="const GstRTSPMessage*"/>
         </parameter>
       </parameters>
@@ -4959,28 +7140,42 @@ response message.</doc>
     <function name="rtsp_method_as_text"
               c:identifier="gst_rtsp_method_as_text"
               moved-to="RTSPMethod.as_text">
-      <doc xml:space="preserve">Convert @method to a string.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtsp/gstrtspdefs.c"
+           line="310">Convert @method to a string.</doc>
+      <source-position filename="gst-libs/gst/rtsp/gstrtspdefs.h" line="409"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">a string representation of @method.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspdefs.c"
+             line="316">a string representation of @method.</doc>
         <type name="utf8" c:type="const gchar*"/>
       </return-value>
       <parameters>
         <parameter name="method" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstRTSPMethod</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspdefs.c"
+               line="312">a #GstRTSPMethod</doc>
           <type name="RTSPMethod" c:type="GstRTSPMethod"/>
         </parameter>
       </parameters>
     </function>
     <function name="rtsp_options_as_text"
               c:identifier="gst_rtsp_options_as_text">
-      <doc xml:space="preserve">Convert @options to a string.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtsp/gstrtspdefs.c"
+           line="441">Convert @options to a string.</doc>
+      <source-position filename="gst-libs/gst/rtsp/gstrtspdefs.h" line="421"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">a new string of @options. g_free() after usage.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspdefs.c"
+             line="447">a new string of @options. g_free() after usage.</doc>
         <type name="utf8" c:type="gchar*"/>
       </return-value>
       <parameters>
         <parameter name="options" transfer-ownership="none">
-          <doc xml:space="preserve">one or more #GstRTSPMethod</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspdefs.c"
+               line="443">one or more #GstRTSPMethod</doc>
           <type name="RTSPMethod" c:type="GstRTSPMethod"/>
         </parameter>
       </parameters>
@@ -4988,15 +7183,22 @@ response message.</doc>
     <function name="rtsp_options_from_text"
               c:identifier="gst_rtsp_options_from_text"
               version="1.2">
-      <doc xml:space="preserve">Convert the comma separated list @options to a #GstRTSPMethod bitwise or
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtsp/gstrtspdefs.c"
+           line="486">Convert the comma separated list @options to a #GstRTSPMethod bitwise or
 of methods. This functions is the reverse of gst_rtsp_options_as_text().</doc>
+      <source-position filename="gst-libs/gst/rtsp/gstrtspdefs.h" line="424"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">a #GstRTSPMethod</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspdefs.c"
+             line="493">a #GstRTSPMethod</doc>
         <type name="RTSPMethod" c:type="GstRTSPMethod"/>
       </return-value>
       <parameters>
         <parameter name="options" transfer-ownership="none">
-          <doc xml:space="preserve">a comma separated list of options</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspdefs.c"
+               line="488">a comma separated list of options</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
       </parameters>
@@ -5004,20 +7206,29 @@ of methods. This functions is the reverse of gst_rtsp_options_as_text().</doc>
     <function name="rtsp_range_convert_units"
               c:identifier="gst_rtsp_range_convert_units"
               moved-to="RTSPRange.convert_units">
-      <doc xml:space="preserve">Converts the range in-place between different types of units.
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtsp/gstrtsprange.c"
+           line="664">Converts the range in-place between different types of units.
 Ranges containing the special value #GST_RTSP_TIME_NOW can not be
 converted as these are only valid for #GST_RTSP_RANGE_NPT.</doc>
+      <source-position filename="gst-libs/gst/rtsp/gstrtsprange.h" line="159"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE if the range could be converted</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtsprange.c"
+             line="673">%TRUE if the range could be converted</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="range" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstRTSPTimeRange</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtsprange.c"
+               line="666">a #GstRTSPTimeRange</doc>
           <type name="RTSPTimeRange" c:type="GstRTSPTimeRange*"/>
         </parameter>
         <parameter name="unit" transfer-ownership="none">
-          <doc xml:space="preserve">the unit to convert the range into</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtsprange.c"
+               line="667">the unit to convert the range into</doc>
           <type name="RTSPRangeUnit" c:type="GstRTSPRangeUnit"/>
         </parameter>
       </parameters>
@@ -5025,13 +7236,18 @@ converted as these are only valid for #GST_RTSP_RANGE_NPT.</doc>
     <function name="rtsp_range_free"
               c:identifier="gst_rtsp_range_free"
               moved-to="RTSPRange.free">
-      <doc xml:space="preserve">Free the memory allocated by @range.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtsp/gstrtsprange.c"
+           line="472">Free the memory allocated by @range.</doc>
+      <source-position filename="gst-libs/gst/rtsp/gstrtsprange.h" line="152"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="range" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstRTSPTimeRange</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtsprange.c"
+               line="474">a #GstRTSPTimeRange</doc>
           <type name="RTSPTimeRange" c:type="GstRTSPTimeRange*"/>
         </parameter>
       </parameters>
@@ -5040,34 +7256,45 @@ converted as these are only valid for #GST_RTSP_RANGE_NPT.</doc>
               c:identifier="gst_rtsp_range_get_times"
               moved-to="RTSPRange.get_times"
               version="1.2">
-      <doc xml:space="preserve">Retrieve the minimum and maximum values from @range converted to
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtsp/gstrtsprange.c"
+           line="565">Retrieve the minimum and maximum values from @range converted to
 #GstClockTime in @min and @max.
 
 A value of %GST_CLOCK_TIME_NONE will be used to signal #GST_RTSP_TIME_NOW
 and #GST_RTSP_TIME_END for @min and @max respectively.
 
 UTC times will be converted to nanoseconds since 1900.</doc>
+      <source-position filename="gst-libs/gst/rtsp/gstrtsprange.h" line="155"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE on success.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtsprange.c"
+             line="579">%TRUE on success.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="range" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstRTSPTimeRange</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtsprange.c"
+               line="567">a #GstRTSPTimeRange</doc>
           <type name="RTSPTimeRange" c:type="const GstRTSPTimeRange*"/>
         </parameter>
         <parameter name="min"
                    direction="out"
                    caller-allocates="0"
                    transfer-ownership="full">
-          <doc xml:space="preserve">result minimum #GstClockTime</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtsprange.c"
+               line="568">result minimum #GstClockTime</doc>
           <type name="Gst.ClockTime" c:type="GstClockTime*"/>
         </parameter>
         <parameter name="max"
                    direction="out"
                    caller-allocates="0"
                    transfer-ownership="full">
-          <doc xml:space="preserve">result maximum #GstClockTime</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtsprange.c"
+               line="569">result maximum #GstClockTime</doc>
           <type name="Gst.ClockTime" c:type="GstClockTime*"/>
         </parameter>
       </parameters>
@@ -5075,21 +7302,30 @@ UTC times will be converted to nanoseconds since 1900.</doc>
     <function name="rtsp_range_parse"
               c:identifier="gst_rtsp_range_parse"
               moved-to="RTSPRange.parse">
-      <doc xml:space="preserve">Parse @rangestr to a #GstRTSPTimeRange.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtsp/gstrtsprange.c"
+           line="257">Parse @rangestr to a #GstRTSPTimeRange.</doc>
+      <source-position filename="gst-libs/gst/rtsp/gstrtsprange.h" line="146"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">#GST_RTSP_OK on success.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtsprange.c"
+             line="264">#GST_RTSP_OK on success.</doc>
         <type name="RTSPResult" c:type="GstRTSPResult"/>
       </return-value>
       <parameters>
         <parameter name="rangestr" transfer-ownership="none">
-          <doc xml:space="preserve">a range string to parse</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtsprange.c"
+               line="259">a range string to parse</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
         <parameter name="range"
                    direction="out"
                    caller-allocates="0"
                    transfer-ownership="full">
-          <doc xml:space="preserve">location to hold the #GstRTSPTimeRange result</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtsprange.c"
+               line="260">location to hold the #GstRTSPTimeRange result</doc>
           <type name="RTSPTimeRange" c:type="GstRTSPTimeRange**"/>
         </parameter>
       </parameters>
@@ -5097,41 +7333,62 @@ UTC times will be converted to nanoseconds since 1900.</doc>
     <function name="rtsp_range_to_string"
               c:identifier="gst_rtsp_range_to_string"
               moved-to="RTSPRange.to_string">
-      <doc xml:space="preserve">Convert @range into a string representation.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtsp/gstrtsprange.c"
+           line="421">Convert @range into a string representation.</doc>
+      <source-position filename="gst-libs/gst/rtsp/gstrtsprange.h" line="149"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">The string representation of @range. g_free() after usage.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtsprange.c"
+             line="427">The string representation of @range. g_free() after usage.</doc>
         <type name="utf8" c:type="gchar*"/>
       </return-value>
       <parameters>
         <parameter name="range" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstRTSPTimeRange</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtsprange.c"
+               line="423">a #GstRTSPTimeRange</doc>
           <type name="RTSPTimeRange" c:type="const GstRTSPTimeRange*"/>
         </parameter>
       </parameters>
     </function>
     <function name="rtsp_status_as_text"
               c:identifier="gst_rtsp_status_as_text">
-      <doc xml:space="preserve">Convert @code to a string.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtsp/gstrtspdefs.c"
+           line="378">Convert @code to a string.</doc>
+      <source-position filename="gst-libs/gst/rtsp/gstrtspdefs.h" line="418"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">a string representation of @code.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspdefs.c"
+             line="384">a string representation of @code.</doc>
         <type name="utf8" c:type="const gchar*"/>
       </return-value>
       <parameters>
         <parameter name="code" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstRTSPStatusCode</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspdefs.c"
+               line="380">a #GstRTSPStatusCode</doc>
           <type name="RTSPStatusCode" c:type="GstRTSPStatusCode"/>
         </parameter>
       </parameters>
     </function>
     <function name="rtsp_strresult" c:identifier="gst_rtsp_strresult">
-      <doc xml:space="preserve">Convert @result in a human readable string.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtsp/gstrtspdefs.c"
+           line="258">Convert @result in a human readable string.</doc>
+      <source-position filename="gst-libs/gst/rtsp/gstrtspdefs.h" line="406"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">a newly allocated string. g_free() after usage.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspdefs.c"
+             line="264">a newly allocated string. g_free() after usage.</doc>
         <type name="utf8" c:type="gchar*"/>
       </return-value>
       <parameters>
         <parameter name="result" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstRTSPResult</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspdefs.c"
+               line="260">a #GstRTSPResult</doc>
           <type name="RTSPResult" c:type="GstRTSPResult"/>
         </parameter>
       </parameters>
@@ -5139,20 +7396,28 @@ UTC times will be converted to nanoseconds since 1900.</doc>
     <function name="rtsp_transport_get_manager"
               c:identifier="gst_rtsp_transport_get_manager"
               moved-to="RTSPTransport.get_manager">
-      <doc xml:space="preserve">Get the #GstElement that can handle the buffers transported over @trans.
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtsp/gstrtsptransport.c"
+           line="279">Get the #GstElement that can handle the buffers transported over @trans.
 
 It is possible that there are several managers available, use @option to
 selected one.
 
 @manager will contain an element name or %NULL when no manager is
 needed/available for @trans.</doc>
+      <source-position filename="gst-libs/gst/rtsp/gstrtsptransport.h"
+                       line="190"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">#GST_RTSP_OK.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtsptransport.c"
+             line="293">#GST_RTSP_OK.</doc>
         <type name="RTSPResult" c:type="GstRTSPResult"/>
       </return-value>
       <parameters>
         <parameter name="trans" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstRTSPTransMode</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtsptransport.c"
+               line="281">a #GstRTSPTransMode</doc>
           <type name="RTSPTransMode" c:type="GstRTSPTransMode"/>
         </parameter>
         <parameter name="manager"
@@ -5160,11 +7425,15 @@ needed/available for @trans.</doc>
                    caller-allocates="0"
                    transfer-ownership="none"
                    nullable="1">
-          <doc xml:space="preserve">location to hold the result</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtsptransport.c"
+               line="282">location to hold the result</doc>
           <type name="utf8" c:type="const gchar**"/>
         </parameter>
         <parameter name="option" transfer-ownership="none">
-          <doc xml:space="preserve">option index.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtsptransport.c"
+               line="283">option index.</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
       </parameters>
@@ -5173,22 +7442,32 @@ needed/available for @trans.</doc>
               c:identifier="gst_rtsp_transport_get_mime"
               moved-to="RTSPTransport.get_mime"
               deprecated="1">
-      <doc xml:space="preserve">Get the mime type of the transport mode @trans. This mime type is typically
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtsp/gstrtsptransport.c"
+           line="205">Get the mime type of the transport mode @trans. This mime type is typically
 used to generate #GstCaps events.</doc>
       <doc-deprecated xml:space="preserve">This functions only deals with the GstRTSPTransMode and only
    returns the mime type for #GST_RTSP_PROFILE_AVP. Use
    gst_rtsp_transport_get_media_type() instead.</doc-deprecated>
+      <source-position filename="gst-libs/gst/rtsp/gstrtsptransport.h"
+                       line="187"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">#GST_RTSP_OK.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtsptransport.c"
+             line="217">#GST_RTSP_OK.</doc>
         <type name="RTSPResult" c:type="GstRTSPResult"/>
       </return-value>
       <parameters>
         <parameter name="trans" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstRTSPTransMode</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtsptransport.c"
+               line="207">a #GstRTSPTransMode</doc>
           <type name="RTSPTransMode" c:type="GstRTSPTransMode"/>
         </parameter>
         <parameter name="mime" transfer-ownership="none">
-          <doc xml:space="preserve">location to hold the result</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtsptransport.c"
+               line="208">location to hold the result</doc>
           <type name="utf8" c:type="const gchar**"/>
         </parameter>
       </parameters>
@@ -5196,15 +7475,23 @@ used to generate #GstCaps events.</doc>
     <function name="rtsp_transport_new"
               c:identifier="gst_rtsp_transport_new"
               moved-to="RTSPTransport.new">
-      <doc xml:space="preserve">Allocate a new initialized #GstRTSPTransport. Use gst_rtsp_transport_free()
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtsp/gstrtsptransport.c"
+           line="146">Allocate a new initialized #GstRTSPTransport. Use gst_rtsp_transport_free()
 after usage.</doc>
+      <source-position filename="gst-libs/gst/rtsp/gstrtsptransport.h"
+                       line="175"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">a #GstRTSPResult.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtsptransport.c"
+             line="153">a #GstRTSPResult.</doc>
         <type name="RTSPResult" c:type="GstRTSPResult"/>
       </return-value>
       <parameters>
         <parameter name="transport" transfer-ownership="none">
-          <doc xml:space="preserve">location to hold the new #GstRTSPTransport</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtsptransport.c"
+               line="148">location to hold the new #GstRTSPTransport</doc>
           <type name="RTSPTransport" c:type="GstRTSPTransport**"/>
         </parameter>
       </parameters>
@@ -5212,18 +7499,28 @@ after usage.</doc>
     <function name="rtsp_transport_parse"
               c:identifier="gst_rtsp_transport_parse"
               moved-to="RTSPTransport.parse">
-      <doc xml:space="preserve">Parse the RTSP transport string @str into @transport.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtsp/gstrtsptransport.c"
+           line="433">Parse the RTSP transport string @str into @transport.</doc>
+      <source-position filename="gst-libs/gst/rtsp/gstrtsptransport.h"
+                       line="181"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">a #GstRTSPResult.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtsptransport.c"
+             line="440">a #GstRTSPResult.</doc>
         <type name="RTSPResult" c:type="GstRTSPResult"/>
       </return-value>
       <parameters>
         <parameter name="str" transfer-ownership="none">
-          <doc xml:space="preserve">a transport string</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtsptransport.c"
+               line="435">a transport string</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
         <parameter name="transport" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstRTSPTransport</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtsptransport.c"
+               line="436">a #GstRTSPTransport</doc>
           <type name="RTSPTransport" c:type="GstRTSPTransport*"/>
         </parameter>
       </parameters>
@@ -5231,22 +7528,31 @@ after usage.</doc>
     <function name="rtsp_url_parse"
               c:identifier="gst_rtsp_url_parse"
               moved-to="RTSPUrl.parse">
-      <doc xml:space="preserve">Parse the RTSP @urlstr into a newly allocated #GstRTSPUrl. Free after usage
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtsp/gstrtspurl.c"
+           line="90">Parse the RTSP @urlstr into a newly allocated #GstRTSPUrl. Free after usage
 with gst_rtsp_url_free().</doc>
+      <source-position filename="gst-libs/gst/rtsp/gstrtspurl.h" line="93"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">a #GstRTSPResult.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspurl.c"
+             line="98">a #GstRTSPResult.</doc>
         <type name="RTSPResult" c:type="GstRTSPResult"/>
       </return-value>
       <parameters>
         <parameter name="urlstr" transfer-ownership="none">
-          <doc xml:space="preserve">the url string to parse</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspurl.c"
+               line="92">the url string to parse</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
         <parameter name="url"
                    direction="out"
                    caller-allocates="0"
                    transfer-ownership="full">
-          <doc xml:space="preserve">location to hold the result.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspurl.c"
+               line="93">location to hold the result.</doc>
           <type name="RTSPUrl" c:type="GstRTSPUrl**"/>
         </parameter>
       </parameters>
@@ -5254,14 +7560,21 @@ with gst_rtsp_url_free().</doc>
     <function name="rtsp_version_as_text"
               c:identifier="gst_rtsp_version_as_text"
               moved-to="RTSPVersion.as_text">
-      <doc xml:space="preserve">Convert @version to a string.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtsp/gstrtspdefs.c"
+           line="334">Convert @version to a string.</doc>
+      <source-position filename="gst-libs/gst/rtsp/gstrtspdefs.h" line="412"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">a string representation of @version.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspdefs.c"
+             line="340">a string representation of @version.</doc>
         <type name="utf8" c:type="const gchar*"/>
       </return-value>
       <parameters>
         <parameter name="version" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstRTSPVersion</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspdefs.c"
+               line="336">a #GstRTSPVersion</doc>
           <type name="RTSPVersion" c:type="GstRTSPVersion"/>
         </parameter>
       </parameters>
@@ -5270,36 +7583,50 @@ with gst_rtsp_url_free().</doc>
               c:identifier="gst_rtsp_watch_new"
               moved-to="RTSPWatch.new"
               introspectable="0">
-      <doc xml:space="preserve">Create a watch object for @conn. The functions provided in @funcs will be
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+           line="4170">Create a watch object for @conn. The functions provided in @funcs will be
 called with @user_data when activity happened on the watch.
 
 The new watch is usually created so that it can be attached to a
 maincontext with gst_rtsp_watch_attach().
 
 @conn must exist for the entire lifetime of the watch.</doc>
+      <source-position filename="gst-libs/gst/rtsp/gstrtspconnection.h"
+                       line="292"/>
       <return-value>
-        <doc xml:space="preserve">a #GstRTSPWatch that can be used for asynchronous RTSP
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+             line="4185">a #GstRTSPWatch that can be used for asynchronous RTSP
 communication. Free with gst_rtsp_watch_unref () after usage.</doc>
         <type name="RTSPWatch" c:type="GstRTSPWatch*"/>
       </return-value>
       <parameters>
         <parameter name="conn" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstRTSPConnection</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+               line="4172">a #GstRTSPConnection</doc>
           <type name="RTSPConnection" c:type="GstRTSPConnection*"/>
         </parameter>
         <parameter name="funcs" transfer-ownership="none">
-          <doc xml:space="preserve">watch functions</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+               line="4173">watch functions</doc>
           <type name="RTSPWatchFuncs" c:type="GstRTSPWatchFuncs*"/>
         </parameter>
         <parameter name="user_data"
                    transfer-ownership="none"
                    nullable="1"
                    allow-none="1">
-          <doc xml:space="preserve">user data to pass to @funcs</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+               line="4174">user data to pass to @funcs</doc>
           <type name="gpointer" c:type="gpointer"/>
         </parameter>
         <parameter name="notify" transfer-ownership="none" scope="async">
-          <doc xml:space="preserve">notify when @user_data is not referenced anymore</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/rtsp/gstrtspconnection.c"
+               line="4175">notify when @user_data is not referenced anymore</doc>
           <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
         </parameter>
       </parameters>
index b3c7d00..6a1d4b7 100644 (file)
@@ -15,97 +15,156 @@ and/or use gtk-doc annotations.  -->
              c:identifier-prefixes="Gst"
              c:symbol-prefixes="gst">
     <enumeration name="MIKEYCacheType" c:type="GstMIKEYCacheType">
-      <doc xml:space="preserve">The different cache types</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/sdp/gstmikey.h"
+           line="282">The different cache types</doc>
+      <source-position filename="gst-libs/gst/sdp/gstmikey.h" line="296"/>
       <member name="none" value="0" c:identifier="GST_MIKEY_CACHE_NONE">
-        <doc xml:space="preserve">The envelope key MUST NOT be cached</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="284">The envelope key MUST NOT be cached</doc>
       </member>
       <member name="always" value="1" c:identifier="GST_MIKEY_CACHE_ALWAYS">
-        <doc xml:space="preserve">The envelope key MUST be cached</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="285">The envelope key MUST be cached</doc>
       </member>
       <member name="for_csb" value="2" c:identifier="GST_MIKEY_CACHE_FOR_CSB">
-        <doc xml:space="preserve">The envelope key MUST be cached, but only
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="286">The envelope key MUST be cached, but only
                           to be used for the specific CSB.</doc>
       </member>
     </enumeration>
     <record name="MIKEYDecryptInfo" c:type="GstMIKEYDecryptInfo" disguised="1">
+      <source-position filename="gst-libs/gst/sdp/gstmikey.h" line="36"/>
     </record>
     <enumeration name="MIKEYEncAlg" c:type="GstMIKEYEncAlg">
-      <doc xml:space="preserve">The encryption algorithm used to encrypt the Encr data field</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/sdp/gstmikey.h"
+           line="217">The encryption algorithm used to encrypt the Encr data field</doc>
+      <source-position filename="gst-libs/gst/sdp/gstmikey.h" line="232"/>
       <member name="null" value="0" c:identifier="GST_MIKEY_ENC_NULL">
-        <doc xml:space="preserve">no encryption</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="219">no encryption</doc>
       </member>
       <member name="aes_cm_128"
               value="1"
               c:identifier="GST_MIKEY_ENC_AES_CM_128">
-        <doc xml:space="preserve">AES-CM using a 128-bit key</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="220">AES-CM using a 128-bit key</doc>
       </member>
       <member name="aes_kw_128"
               value="2"
               c:identifier="GST_MIKEY_ENC_AES_KW_128">
-        <doc xml:space="preserve">AES Key Wrap using a 128-bit key</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="221">AES Key Wrap using a 128-bit key</doc>
       </member>
       <member name="aes_gcm_128"
               value="6"
               c:identifier="GST_MIKEY_ENC_AES_GCM_128">
-        <doc xml:space="preserve">AES-GCM using a 128-bit key (Since 1.16)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="222">AES-GCM using a 128-bit key (Since: 1.16)</doc>
       </member>
     </enumeration>
     <record name="MIKEYEncryptInfo" c:type="GstMIKEYEncryptInfo" disguised="1">
+      <source-position filename="gst-libs/gst/sdp/gstmikey.h" line="35"/>
     </record>
     <enumeration name="MIKEYKVType" c:type="GstMIKEYKVType">
-      <doc xml:space="preserve">The key validity type</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/sdp/gstmikey.h"
+           line="487">The key validity type</doc>
+      <source-position filename="gst-libs/gst/sdp/gstmikey.h" line="500"/>
       <member name="null" value="0" c:identifier="GST_MIKEY_KV_NULL">
-        <doc xml:space="preserve">No specific usage rule</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="489">No specific usage rule</doc>
       </member>
       <member name="spi" value="1" c:identifier="GST_MIKEY_KV_SPI">
-        <doc xml:space="preserve">The key is associated with the SPI/MKI</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="490">The key is associated with the SPI/MKI</doc>
       </member>
       <member name="interval" value="2" c:identifier="GST_MIKEY_KV_INTERVAL">
-        <doc xml:space="preserve">The key has a start and expiration time</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="491">The key has a start and expiration time</doc>
       </member>
     </enumeration>
     <enumeration name="MIKEYKeyDataType" c:type="GstMIKEYKeyDataType">
-      <doc xml:space="preserve">The type of key.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/sdp/gstmikey.h"
+           line="474">The type of key.</doc>
+      <source-position filename="gst-libs/gst/sdp/gstmikey.h" line="485"/>
       <member name="tgk" value="0" c:identifier="GST_MIKEY_KD_TGK">
-        <doc xml:space="preserve">a TEK Generation Key</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="476">a TEK Generation Key</doc>
       </member>
       <member name="tek" value="2" c:identifier="GST_MIKEY_KD_TEK">
-        <doc xml:space="preserve">Traffic-Encrypting Key</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="477">Traffic-Encrypting Key</doc>
       </member>
     </enumeration>
     <enumeration name="MIKEYMacAlg" c:type="GstMIKEYMacAlg">
-      <doc xml:space="preserve">Specifies the authentication algorithm used</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/sdp/gstmikey.h"
+           line="234">Specifies the authentication algorithm used</doc>
+      <source-position filename="gst-libs/gst/sdp/gstmikey.h" line="245"/>
       <member name="null" value="0" c:identifier="GST_MIKEY_MAC_NULL">
-        <doc xml:space="preserve">no authentication</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="236">no authentication</doc>
       </member>
       <member name="hmac_sha_1_160"
               value="1"
               c:identifier="GST_MIKEY_MAC_HMAC_SHA_1_160">
-        <doc xml:space="preserve">HMAC-SHA-1-160</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="237">HMAC-SHA-1-160</doc>
       </member>
     </enumeration>
     <record name="MIKEYMapSRTP" c:type="GstMIKEYMapSRTP">
-      <doc xml:space="preserve">The Security policy Map item for SRTP</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/sdp/gstmikey.h"
+           line="132">The Security policy Map item for SRTP</doc>
+      <source-position filename="gst-libs/gst/sdp/gstmikey.h" line="144"/>
       <field name="policy" writable="1">
-        <doc xml:space="preserve">The security policy applied for the stream with @ssrc</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="134">The security policy applied for the stream with @ssrc</doc>
         <type name="guint8" c:type="guint8"/>
       </field>
       <field name="ssrc" writable="1">
-        <doc xml:space="preserve">the SSRC that must be used for the stream</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="135">the SSRC that must be used for the stream</doc>
         <type name="guint32" c:type="guint32"/>
       </field>
       <field name="roc" writable="1">
-        <doc xml:space="preserve">current rollover counter</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="136">current rollover counter</doc>
         <type name="guint32" c:type="guint32"/>
       </field>
     </record>
     <enumeration name="MIKEYMapType" c:type="GstMIKEYMapType">
-      <doc xml:space="preserve">Specifies the method of uniquely mapping Crypto Sessions to the security
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/sdp/gstmikey.h"
+           line="120">Specifies the method of uniquely mapping Crypto Sessions to the security
 protocol sessions.</doc>
+      <source-position filename="gst-libs/gst/sdp/gstmikey.h" line="130"/>
       <member name="mikey_map_type_srtp"
               value="0"
               c:identifier="GST_MIKEY_MAP_TYPE_SRTP">
-        <doc xml:space="preserve">SRTP</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="122">SRTP</doc>
       </member>
     </enumeration>
     <record name="MIKEYMessage"
@@ -113,42 +172,61 @@ protocol sessions.</doc>
             glib:type-name="GstMIKEYMessage"
             glib:get-type="gst_mikey_message_get_type"
             c:symbol-prefix="mikey_message">
-      <doc xml:space="preserve">Structure holding the information of the MIKEY message</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/sdp/gstmikey.h"
+           line="548">Structure holding the information of the MIKEY message</doc>
+      <source-position filename="gst-libs/gst/sdp/gstmikey.h" line="575"/>
       <field name="mini_object" readable="0" private="1">
         <type name="Gst.MiniObject" c:type="GstMiniObject"/>
       </field>
       <field name="version" writable="1">
-        <doc xml:space="preserve">the version</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="550">the version</doc>
         <type name="guint8" c:type="guint8"/>
       </field>
       <field name="type" writable="1">
-        <doc xml:space="preserve">the #GstMIKEYType message type</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="551">the #GstMIKEYType message type</doc>
         <type name="MIKEYType" c:type="GstMIKEYType"/>
       </field>
       <field name="V" writable="1">
-        <doc xml:space="preserve">verify flag</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="552">verify flag</doc>
         <type name="gboolean" c:type="gboolean"/>
       </field>
       <field name="prf_func" writable="1">
-        <doc xml:space="preserve">a #GstMIKEYPRFFunc</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="553">a #GstMIKEYPRFFunc</doc>
         <type name="MIKEYPRFFunc" c:type="GstMIKEYPRFFunc"/>
       </field>
       <field name="CSB_id" writable="1">
-        <doc xml:space="preserve">Identifies the Crypto Session Bundle</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="554">Identifies the Crypto Session Bundle</doc>
         <type name="guint32" c:type="guint32"/>
       </field>
       <field name="map_type" writable="1">
-        <doc xml:space="preserve">a #GstMIKEYMapType</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="555">a #GstMIKEYMapType</doc>
         <type name="MIKEYMapType" c:type="GstMIKEYMapType"/>
       </field>
       <field name="map_info" writable="1">
-        <doc xml:space="preserve">map info array of type depending on @map_type</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="556">map info array of type depending on @map_type</doc>
         <array name="GLib.Array" c:type="GArray*">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
       <field name="payloads" writable="1">
-        <doc xml:space="preserve">the payload array of #GstMIKEYPayload</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="557">the payload array of #GstMIKEYPayload</doc>
         <array name="GLib.Array" c:type="GArray*">
           <type name="gpointer" c:type="gpointer"/>
         </array>
@@ -156,9 +234,14 @@ protocol sessions.</doc>
       <constructor name="new"
                    c:identifier="gst_mikey_message_new"
                    version="1.4">
-        <doc xml:space="preserve">Make a new MIKEY message.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.c"
+             line="868">Make a new MIKEY message.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstmikey.h" line="579"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new #GstMIKEYMessage on success</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstmikey.c"
+               line="873">a new #GstMIKEYMessage on success</doc>
           <type name="MIKEYMessage" c:type="GstMIKEYMessage*"/>
         </return-value>
       </constructor>
@@ -166,18 +249,27 @@ protocol sessions.</doc>
                    c:identifier="gst_mikey_message_new_from_bytes"
                    version="1.4"
                    throws="1">
-        <doc xml:space="preserve">Make a new #GstMIKEYMessage from @bytes.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.c"
+             line="894">Make a new #GstMIKEYMessage from @bytes.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstmikey.h" line="586"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new #GstMIKEYMessage</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstmikey.c"
+               line="902">a new #GstMIKEYMessage</doc>
           <type name="MIKEYMessage" c:type="GstMIKEYMessage*"/>
         </return-value>
         <parameters>
           <parameter name="bytes" transfer-ownership="none">
-            <doc xml:space="preserve">a #GBytes</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="896">a #GBytes</doc>
             <type name="GLib.Bytes" c:type="GBytes*"/>
           </parameter>
           <parameter name="info" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstMIKEYDecryptInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="897">a #GstMIKEYDecryptInfo</doc>
             <type name="MIKEYDecryptInfo" c:type="GstMIKEYDecryptInfo*"/>
           </parameter>
         </parameters>
@@ -185,18 +277,25 @@ protocol sessions.</doc>
       <constructor name="new_from_caps"
                    c:identifier="gst_mikey_message_new_from_caps"
                    version="1.8">
-        <doc xml:space="preserve">Makes mikey message including:
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.c"
+             line="2232">Makes mikey message including:
  - Security Policy Payload
  - Key Data Transport Payload
  - Key Data Sub-Payload</doc>
+        <source-position filename="gst-libs/gst/sdp/gstmikey.h" line="594"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a #GstMIKEYMessage,
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstmikey.c"
+               line="2241">a #GstMIKEYMessage,
 or %NULL if there is no srtp information in the caps.</doc>
           <type name="MIKEYMessage" c:type="GstMIKEYMessage*"/>
         </return-value>
         <parameters>
           <parameter name="caps" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstCaps, including SRTP parameters (srtp/srtcp cipher, authorization, key data)</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="2234">a #GstCaps, including SRTP parameters (srtp/srtcp cipher, authorization, key data)</doc>
             <type name="Gst.Caps" c:type="GstCaps*"/>
           </parameter>
         </parameters>
@@ -205,26 +304,37 @@ or %NULL if there is no srtp information in the caps.</doc>
                    c:identifier="gst_mikey_message_new_from_data"
                    version="1.4"
                    throws="1">
-        <doc xml:space="preserve">Parse @size bytes from @data into a #GstMIKEYMessage. @info contains the
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.c"
+             line="2046">Parse @size bytes from @data into a #GstMIKEYMessage. @info contains the
 parameters to decrypt and verify the data.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstmikey.h" line="582"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a #GstMIKEYMessage on success or %NULL when parsing failed and
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstmikey.c"
+               line="2056">a #GstMIKEYMessage on success or %NULL when parsing failed and
 @error will be set.</doc>
           <type name="MIKEYMessage" c:type="GstMIKEYMessage*"/>
         </return-value>
         <parameters>
           <parameter name="data" transfer-ownership="none">
-            <doc xml:space="preserve">bytes to read</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="2048">bytes to read</doc>
             <array length="1" zero-terminated="0" c:type="gconstpointer">
               <type name="guint8"/>
             </array>
           </parameter>
           <parameter name="size" transfer-ownership="none">
-            <doc xml:space="preserve">length of @data</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="2049">length of @data</doc>
             <type name="gsize" c:type="gsize"/>
           </parameter>
           <parameter name="info" transfer-ownership="none">
-            <doc xml:space="preserve">#GstMIKEYDecryptInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="2050">#GstMIKEYDecryptInfo</doc>
             <type name="MIKEYDecryptInfo" c:type="GstMIKEYDecryptInfo*"/>
           </parameter>
         </parameters>
@@ -232,26 +342,39 @@ parameters to decrypt and verify the data.</doc>
       <method name="add_cs_srtp"
               c:identifier="gst_mikey_message_add_cs_srtp"
               version="1.4">
-        <doc xml:space="preserve">Add a Crypto policy for SRTP to @msg.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE on success</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.c"
+             line="1073">Add a Crypto policy for SRTP to @msg.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstmikey.h" line="675"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstmikey.c"
+               line="1082">%TRUE on success</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstMIKEYMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="1075">a #GstMIKEYMessage</doc>
             <type name="MIKEYMessage" c:type="GstMIKEYMessage*"/>
           </instance-parameter>
           <parameter name="policy" transfer-ownership="none">
-            <doc xml:space="preserve">The security policy applied for the stream with @ssrc</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="1076">The security policy applied for the stream with @ssrc</doc>
             <type name="guint8" c:type="guint8"/>
           </parameter>
           <parameter name="ssrc" transfer-ownership="none">
-            <doc xml:space="preserve">the SSRC that must be used for the stream</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="1077">the SSRC that must be used for the stream</doc>
             <type name="guint32" c:type="guint32"/>
           </parameter>
           <parameter name="roc" transfer-ownership="none">
-            <doc xml:space="preserve">current rollover counter</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="1078">current rollover counter</doc>
             <type name="guint32" c:type="guint32"/>
           </parameter>
         </parameters>
@@ -259,18 +382,27 @@ parameters to decrypt and verify the data.</doc>
       <method name="add_payload"
               c:identifier="gst_mikey_message_add_payload"
               version="1.4">
-        <doc xml:space="preserve">Add a new payload to @msg.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE on success</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.c"
+             line="1229">Add a new payload to @msg.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstmikey.h" line="698"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstmikey.c"
+               line="1236">%TRUE on success</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstMIKEYMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="1231">a #GstMIKEYMessage</doc>
             <type name="MIKEYMessage" c:type="GstMIKEYMessage*"/>
           </instance-parameter>
           <parameter name="payload" transfer-ownership="full">
-            <doc xml:space="preserve">a #GstMIKEYPayload</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="1232">a #GstMIKEYPayload</doc>
             <type name="MIKEYPayload" c:type="GstMIKEYPayload*"/>
           </parameter>
         </parameters>
@@ -278,26 +410,39 @@ parameters to decrypt and verify the data.</doc>
       <method name="add_pke"
               c:identifier="gst_mikey_message_add_pke"
               version="1.4">
-        <doc xml:space="preserve">Add a new PKE payload to @msg with the given parameters.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE on success</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.c"
+             line="1275">Add a new PKE payload to @msg with the given parameters.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstmikey.h" line="710"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstmikey.c"
+               line="1284">%TRUE on success</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstMIKEYMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="1277">a #GstMIKEYMessage</doc>
             <type name="MIKEYMessage" c:type="GstMIKEYMessage*"/>
           </instance-parameter>
           <parameter name="C" transfer-ownership="none">
-            <doc xml:space="preserve">envelope key cache indicator</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="1278">envelope key cache indicator</doc>
             <type name="MIKEYCacheType" c:type="GstMIKEYCacheType"/>
           </parameter>
           <parameter name="data_len" transfer-ownership="none">
-            <doc xml:space="preserve">the length of @data</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="1279">the length of @data</doc>
             <type name="guint16" c:type="guint16"/>
           </parameter>
           <parameter name="data" transfer-ownership="none">
-            <doc xml:space="preserve">the encrypted envelope key</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="1280">the encrypted envelope key</doc>
             <array length="1" zero-terminated="0" c:type="const guint8*">
               <type name="guint8" c:type="guint8"/>
             </array>
@@ -307,22 +452,33 @@ parameters to decrypt and verify the data.</doc>
       <method name="add_rand"
               c:identifier="gst_mikey_message_add_rand"
               version="1.4">
-        <doc xml:space="preserve">Add a new RAND payload to @msg with the given parameters.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE on success</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.c"
+             line="1365">Add a new RAND payload to @msg with the given parameters.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstmikey.h" line="732"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstmikey.c"
+               line="1373">%TRUE on success</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstMIKEYMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="1367">a #GstMIKEYMessage</doc>
             <type name="MIKEYMessage" c:type="GstMIKEYMessage*"/>
           </instance-parameter>
           <parameter name="len" transfer-ownership="none">
-            <doc xml:space="preserve">the length of @rand</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="1368">the length of @rand</doc>
             <type name="guint8" c:type="guint8"/>
           </parameter>
           <parameter name="rand" transfer-ownership="none">
-            <doc xml:space="preserve">random data</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="1369">random data</doc>
             <array length="0" zero-terminated="0" c:type="const guint8*">
               <type name="guint8" c:type="guint8"/>
             </array>
@@ -332,18 +488,27 @@ parameters to decrypt and verify the data.</doc>
       <method name="add_rand_len"
               c:identifier="gst_mikey_message_add_rand_len"
               version="1.4">
-        <doc xml:space="preserve">Add a new RAND payload to @msg with @len random bytes.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE on success</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.c"
+             line="1395">Add a new RAND payload to @msg with @len random bytes.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstmikey.h" line="736"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstmikey.c"
+               line="1402">%TRUE on success</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstMIKEYMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="1397">a #GstMIKEYMessage</doc>
             <type name="MIKEYMessage" c:type="GstMIKEYMessage*"/>
           </instance-parameter>
           <parameter name="len" transfer-ownership="none">
-            <doc xml:space="preserve">length</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="1398">length</doc>
             <type name="guint8" c:type="guint8"/>
           </parameter>
         </parameters>
@@ -351,22 +516,33 @@ parameters to decrypt and verify the data.</doc>
       <method name="add_t"
               c:identifier="gst_mikey_message_add_t"
               version="1.4">
-        <doc xml:space="preserve">Add a new T payload to @msg with the given parameters.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE on success</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.c"
+             line="1305">Add a new T payload to @msg with the given parameters.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstmikey.h" line="719"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstmikey.c"
+               line="1313">%TRUE on success</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstMIKEYMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="1307">a #GstMIKEYMessage</doc>
             <type name="MIKEYMessage" c:type="GstMIKEYMessage*"/>
           </instance-parameter>
           <parameter name="type" transfer-ownership="none">
-            <doc xml:space="preserve">specifies the timestamp type used</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="1308">specifies the timestamp type used</doc>
             <type name="MIKEYTSType" c:type="GstMIKEYTSType"/>
           </parameter>
           <parameter name="ts_value" transfer-ownership="none">
-            <doc xml:space="preserve">The timestamp value of the specified @type</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="1309">The timestamp value of the specified @type</doc>
             <array zero-terminated="0" c:type="const guint8*">
               <type name="guint8" c:type="guint8"/>
             </array>
@@ -376,15 +552,22 @@ parameters to decrypt and verify the data.</doc>
       <method name="add_t_now_ntp_utc"
               c:identifier="gst_mikey_message_add_t_now_ntp_utc"
               version="1.4">
-        <doc xml:space="preserve">Add a new T payload to @msg that contains the current time
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.c"
+             line="1334">Add a new T payload to @msg that contains the current time
 in NTP-UTC format.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstmikey.h" line="723"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE on success</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstmikey.c"
+               line="1341">%TRUE on success</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstMIKEYMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="1336">a #GstMIKEYMessage</doc>
             <type name="MIKEYMessage" c:type="GstMIKEYMessage*"/>
           </instance-parameter>
         </parameters>
@@ -392,13 +575,18 @@ in NTP-UTC format.</doc>
       <method name="base64_encode"
               c:identifier="gst_mikey_message_base64_encode"
               version="1.8">
+        <source-position filename="gst-libs/gst/sdp/gstmikey.h" line="600"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a #gchar, base64-encoded data</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstmikey.c"
+               line="2516">a #gchar, base64-encoded data</doc>
           <type name="utf8" c:type="gchar*"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstMIKEYMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="2514">a #GstMIKEYMessage</doc>
             <type name="MIKEYMessage" c:type="GstMIKEYMessage*"/>
           </instance-parameter>
         </parameters>
@@ -406,22 +594,33 @@ in NTP-UTC format.</doc>
       <method name="find_payload"
               c:identifier="gst_mikey_message_find_payload"
               version="1.4">
-        <doc xml:space="preserve">Find the @nth occurence of the payload with @type in @msg.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the @nth #GstMIKEYPayload of @type.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.c"
+             line="1144">Find the @nth occurrence of the payload with @type in @msg.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstmikey.h" line="687"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstmikey.c"
+               line="1152">the @nth #GstMIKEYPayload of @type.</doc>
           <type name="MIKEYPayload" c:type="const GstMIKEYPayload*"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstMIKEYMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="1146">a #GstMIKEYMessage</doc>
             <type name="MIKEYMessage" c:type="const GstMIKEYMessage*"/>
           </instance-parameter>
           <parameter name="type" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstMIKEYPayloadType</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="1147">a #GstMIKEYPayloadType</doc>
             <type name="MIKEYPayloadType" c:type="GstMIKEYPayloadType"/>
           </parameter>
           <parameter name="nth" transfer-ownership="none">
-            <doc xml:space="preserve">payload to find</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="1148">payload to find</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
@@ -429,18 +628,27 @@ in NTP-UTC format.</doc>
       <method name="get_cs_srtp"
               c:identifier="gst_mikey_message_get_cs_srtp"
               version="1.4">
-        <doc xml:space="preserve">Get the policy information of @msg at @idx.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstMIKEYMapSRTP</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.c"
+             line="970">Get the policy information of @msg at @idx.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstmikey.h" line="661"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstmikey.c"
+               line="977">a #GstMIKEYMapSRTP</doc>
           <type name="MIKEYMapSRTP" c:type="const GstMIKEYMapSRTP*"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstMIKEYMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="972">a #GstMIKEYMessage</doc>
             <type name="MIKEYMessage" c:type="const GstMIKEYMessage*"/>
           </instance-parameter>
           <parameter name="idx" transfer-ownership="none">
-            <doc xml:space="preserve">an index</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="973">an index</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
@@ -448,14 +656,21 @@ in NTP-UTC format.</doc>
       <method name="get_n_cs"
               c:identifier="gst_mikey_message_get_n_cs"
               version="1.4">
-        <doc xml:space="preserve">Get the number of crypto sessions in @msg.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the number of crypto sessions</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.c"
+             line="952">Get the number of crypto sessions in @msg.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstmikey.h" line="656"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstmikey.c"
+               line="958">the number of crypto sessions</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstMIKEYMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="954">a #GstMIKEYMessage</doc>
             <type name="MIKEYMessage" c:type="const GstMIKEYMessage*"/>
           </instance-parameter>
         </parameters>
@@ -463,14 +678,21 @@ in NTP-UTC format.</doc>
       <method name="get_n_payloads"
               c:identifier="gst_mikey_message_get_n_payloads"
               version="1.4">
-        <doc xml:space="preserve">Get the number of payloads in @msg.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the number of payloads in @msg</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.c"
+             line="1103">Get the number of payloads in @msg.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstmikey.h" line="681"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstmikey.c"
+               line="1109">the number of payloads in @msg</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstMIKEYMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="1105">a #GstMIKEYMessage</doc>
             <type name="MIKEYMessage" c:type="const GstMIKEYMessage*"/>
           </instance-parameter>
         </parameters>
@@ -478,19 +700,28 @@ in NTP-UTC format.</doc>
       <method name="get_payload"
               c:identifier="gst_mikey_message_get_payload"
               version="1.4">
-        <doc xml:space="preserve">Get the #GstMIKEYPayload at @idx in @msg</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the #GstMIKEYPayload at @idx. The payload
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.c"
+             line="1121">Get the #GstMIKEYPayload at @idx in @msg</doc>
+        <source-position filename="gst-libs/gst/sdp/gstmikey.h" line="684"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstmikey.c"
+               line="1128">the #GstMIKEYPayload at @idx. The payload
 remains valid for as long as it is part of @msg.</doc>
           <type name="MIKEYPayload" c:type="const GstMIKEYPayload*"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstMIKEYMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="1123">a #GstMIKEYMessage</doc>
             <type name="MIKEYMessage" c:type="const GstMIKEYMessage*"/>
           </instance-parameter>
           <parameter name="idx" transfer-ownership="none">
-            <doc xml:space="preserve">an index</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="1124">an index</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
@@ -498,24 +729,35 @@ remains valid for as long as it is part of @msg.</doc>
       <method name="insert_cs_srtp"
               c:identifier="gst_mikey_message_insert_cs_srtp"
               version="1.4">
-        <doc xml:space="preserve">Insert a Crypto Session map for SRTP in @msg at @idx
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.c"
+             line="993">Insert a Crypto Session map for SRTP in @msg at @idx
 
 When @idx is -1, the policy will be appended.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstmikey.h" line="664"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE on success</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstmikey.c"
+               line="1003">%TRUE on success</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstMIKEYMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="995">a #GstMIKEYMessage</doc>
             <type name="MIKEYMessage" c:type="GstMIKEYMessage*"/>
           </instance-parameter>
           <parameter name="idx" transfer-ownership="none">
-            <doc xml:space="preserve">the index to insert at</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="996">the index to insert at</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="map" transfer-ownership="none">
-            <doc xml:space="preserve">the map info</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="997">the map info</doc>
             <type name="MIKEYMapSRTP" c:type="const GstMIKEYMapSRTP*"/>
           </parameter>
         </parameters>
@@ -523,23 +765,34 @@ When @idx is -1, the policy will be appended.</doc>
       <method name="insert_payload"
               c:identifier="gst_mikey_message_insert_payload"
               version="1.4">
-        <doc xml:space="preserve">Insert the @payload at index @idx in @msg. If @idx is -1, the payload
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.c"
+             line="1200">Insert the @payload at index @idx in @msg. If @idx is -1, the payload
 will be appended to @msg.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstmikey.h" line="694"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE on success</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstmikey.c"
+               line="1209">%TRUE on success</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstMIKEYMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="1202">a #GstMIKEYMessage</doc>
             <type name="MIKEYMessage" c:type="GstMIKEYMessage*"/>
           </instance-parameter>
           <parameter name="idx" transfer-ownership="none">
-            <doc xml:space="preserve">an index</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="1203">an index</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="payload" transfer-ownership="full">
-            <doc xml:space="preserve">a #GstMIKEYPayload</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="1204">a #GstMIKEYPayload</doc>
             <type name="MIKEYPayload" c:type="GstMIKEYPayload*"/>
           </parameter>
         </parameters>
@@ -547,18 +800,27 @@ will be appended to @msg.</doc>
       <method name="remove_cs_srtp"
               c:identifier="gst_mikey_message_remove_cs_srtp"
               version="1.4">
-        <doc xml:space="preserve">Remove the SRTP policy at @idx.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE on success</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.c"
+             line="1050">Remove the SRTP policy at @idx.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstmikey.h" line="672"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstmikey.c"
+               line="1057">%TRUE on success</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstMIKEYMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="1052">a #GstMIKEYMessage</doc>
             <type name="MIKEYMessage" c:type="GstMIKEYMessage*"/>
           </instance-parameter>
           <parameter name="idx" transfer-ownership="none">
-            <doc xml:space="preserve">the index to remove</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="1053">the index to remove</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
         </parameters>
@@ -566,18 +828,27 @@ will be appended to @msg.</doc>
       <method name="remove_payload"
               c:identifier="gst_mikey_message_remove_payload"
               version="1.4">
-        <doc xml:space="preserve">Remove the payload in @msg at @idx</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE on success</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.c"
+             line="1178">Remove the payload in @msg at @idx</doc>
+        <source-position filename="gst-libs/gst/sdp/gstmikey.h" line="691"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstmikey.c"
+               line="1185">%TRUE on success</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstMIKEYMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="1180">a #GstMIKEYMessage</doc>
             <type name="MIKEYMessage" c:type="GstMIKEYMessage*"/>
           </instance-parameter>
           <parameter name="idx" transfer-ownership="none">
-            <doc xml:space="preserve">an index</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="1181">an index</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
@@ -585,22 +856,33 @@ will be appended to @msg.</doc>
       <method name="replace_cs_srtp"
               c:identifier="gst_mikey_message_replace_cs_srtp"
               version="1.4">
-        <doc xml:space="preserve">Replace a Crypto Session map for SRTP in @msg at @idx with @map.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE on success</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.c"
+             line="1024">Replace a Crypto Session map for SRTP in @msg at @idx with @map.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstmikey.h" line="668"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstmikey.c"
+               line="1032">%TRUE on success</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstMIKEYMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="1026">a #GstMIKEYMessage</doc>
             <type name="MIKEYMessage" c:type="GstMIKEYMessage*"/>
           </instance-parameter>
           <parameter name="idx" transfer-ownership="none">
-            <doc xml:space="preserve">the index to insert at</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="1027">the index to insert at</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="map" transfer-ownership="none">
-            <doc xml:space="preserve">the map info</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="1028">the map info</doc>
             <type name="MIKEYMapSRTP" c:type="const GstMIKEYMapSRTP*"/>
           </parameter>
         </parameters>
@@ -608,22 +890,33 @@ will be appended to @msg.</doc>
       <method name="replace_payload"
               c:identifier="gst_mikey_message_replace_payload"
               version="1.4">
-        <doc xml:space="preserve">Replace the payload at @idx in @msg with @payload.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE on success</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.c"
+             line="1246">Replace the payload at @idx in @msg with @payload.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstmikey.h" line="702"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstmikey.c"
+               line="1254">%TRUE on success</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstMIKEYMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="1248">a #GstMIKEYMessage</doc>
             <type name="MIKEYMessage" c:type="GstMIKEYMessage*"/>
           </instance-parameter>
           <parameter name="idx" transfer-ownership="none">
-            <doc xml:space="preserve">an index</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="1249">an index</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="payload" transfer-ownership="full">
-            <doc xml:space="preserve">a #GstMIKEYPayload</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="1250">a #GstMIKEYPayload</doc>
             <type name="MIKEYPayload" c:type="GstMIKEYPayload*"/>
           </parameter>
         </parameters>
@@ -631,38 +924,57 @@ will be appended to @msg.</doc>
       <method name="set_info"
               c:identifier="gst_mikey_message_set_info"
               version="1.4">
-        <doc xml:space="preserve">Set the information in @msg.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE on success</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.c"
+             line="919">Set the information in @msg.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstmikey.h" line="650"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstmikey.c"
+               line="931">%TRUE on success</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstMIKEYMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="921">a #GstMIKEYMessage</doc>
             <type name="MIKEYMessage" c:type="GstMIKEYMessage*"/>
           </instance-parameter>
           <parameter name="version" transfer-ownership="none">
-            <doc xml:space="preserve">a version</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="922">a version</doc>
             <type name="guint8" c:type="guint8"/>
           </parameter>
           <parameter name="type" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstMIKEYType</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="923">a #GstMIKEYType</doc>
             <type name="MIKEYType" c:type="GstMIKEYType"/>
           </parameter>
           <parameter name="V" transfer-ownership="none">
-            <doc xml:space="preserve">verify flag</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="924">verify flag</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
           <parameter name="prf_func" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstMIKEYPRFFunc function to use</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="925">the #GstMIKEYPRFFunc function to use</doc>
             <type name="MIKEYPRFFunc" c:type="GstMIKEYPRFFunc"/>
           </parameter>
           <parameter name="CSB_id" transfer-ownership="none">
-            <doc xml:space="preserve">the Crypto Session Bundle id</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="926">the Crypto Session Bundle id</doc>
             <type name="guint32" c:type="guint32"/>
           </parameter>
           <parameter name="map_type" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstMIKEYMapType</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="927">the #GstMIKEYMapType</doc>
             <type name="MIKEYMapType" c:type="GstMIKEYMapType"/>
           </parameter>
         </parameters>
@@ -671,18 +983,27 @@ will be appended to @msg.</doc>
               c:identifier="gst_mikey_message_to_bytes"
               version="1.4"
               throws="1">
-        <doc xml:space="preserve">Convert @msg to a #GBytes.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.c"
+             line="1662">Convert @msg to a #GBytes.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstmikey.h" line="590"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new #GBytes for @msg.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstmikey.c"
+               line="1670">a new #GBytes for @msg.</doc>
           <type name="GLib.Bytes" c:type="GBytes*"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstMIKEYMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="1664">a #GstMIKEYMessage</doc>
             <type name="MIKEYMessage" c:type="GstMIKEYMessage*"/>
           </instance-parameter>
           <parameter name="info" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstMIKEYEncryptInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="1665">a #GstMIKEYEncryptInfo</doc>
             <type name="MIKEYEncryptInfo" c:type="GstMIKEYEncryptInfo*"/>
           </parameter>
         </parameters>
@@ -690,28 +1011,40 @@ will be appended to @msg.</doc>
       <method name="to_caps"
               c:identifier="gst_mikey_message_to_caps"
               version="1.8.1">
+        <source-position filename="gst-libs/gst/sdp/gstmikey.h" line="597"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE on success</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstmikey.c"
+               line="2372">%TRUE on success</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstMIKEYMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="2369">a #GstMIKEYMessage</doc>
             <type name="MIKEYMessage" c:type="const GstMIKEYMessage*"/>
           </instance-parameter>
           <parameter name="caps" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstCaps to be filled with SRTP parameters (srtp/srtcp cipher, authorization, key data)</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="2370">a #GstCaps to be filled with SRTP parameters (srtp/srtcp cipher, authorization, key data)</doc>
             <type name="Gst.Caps" c:type="GstCaps*"/>
           </parameter>
         </parameters>
       </method>
     </record>
     <enumeration name="MIKEYPRFFunc" c:type="GstMIKEYPRFFunc">
-      <doc xml:space="preserve">The PRF function that has been/will be used for key derivation</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/sdp/gstmikey.h"
+           line="109">The PRF function that has been/will be used for key derivation</doc>
+      <source-position filename="gst-libs/gst/sdp/gstmikey.h" line="118"/>
       <member name="mikey_prf_mikey_1"
               value="0"
               c:identifier="GST_MIKEY_PRF_MIKEY_1">
-        <doc xml:space="preserve">MIKEY-1 PRF function</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="111">MIKEY-1 PRF function</doc>
       </member>
     </enumeration>
     <record name="MIKEYPayload"
@@ -719,29 +1052,43 @@ will be appended to @msg.</doc>
             glib:type-name="GstMIKEYPayload"
             glib:get-type="gst_mikey_payload_get_type"
             c:symbol-prefix="mikey_payload">
-      <doc xml:space="preserve">Hold the common fields for all payloads</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/sdp/gstmikey.h"
+           line="152">Hold the common fields for all payloads</doc>
+      <source-position filename="gst-libs/gst/sdp/gstmikey.h" line="166"/>
       <field name="mini_object" readable="0" private="1">
         <type name="Gst.MiniObject" c:type="GstMiniObject"/>
       </field>
       <field name="type" writable="1">
-        <doc xml:space="preserve">the payload type</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="154">the payload type</doc>
         <type name="MIKEYPayloadType" c:type="GstMIKEYPayloadType"/>
       </field>
       <field name="len" writable="1">
-        <doc xml:space="preserve">length of the payload</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="155">length of the payload</doc>
         <type name="guint" c:type="guint"/>
       </field>
       <constructor name="new"
                    c:identifier="gst_mikey_payload_new"
                    version="1.4">
-        <doc xml:space="preserve">Make a new #GstMIKEYPayload with @type.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.c"
+             line="760">Make a new #GstMIKEYPayload with @type.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstmikey.h" line="169"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">a new #GstMIKEYPayload or %NULL on failure.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstmikey.c"
+               line="766">a new #GstMIKEYPayload or %NULL on failure.</doc>
           <type name="MIKEYPayload" c:type="GstMIKEYPayload*"/>
         </return-value>
         <parameters>
           <parameter name="type" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstMIKEYPayloadType</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="762">a #GstMIKEYPayloadType</doc>
             <type name="MIKEYPayloadType" c:type="GstMIKEYPayloadType"/>
           </parameter>
         </parameters>
@@ -749,18 +1096,27 @@ will be appended to @msg.</doc>
       <method name="kemac_add_sub"
               c:identifier="gst_mikey_payload_kemac_add_sub"
               version="1.4">
-        <doc xml:space="preserve">Add a new sub payload to @payload.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE on success.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.c"
+             line="223">Add a new sub payload to @payload.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstmikey.h" line="279"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstmikey.c"
+               line="230">%TRUE on success.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="payload" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstMIKEYPayload</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="225">a #GstMIKEYPayload</doc>
             <type name="MIKEYPayload" c:type="GstMIKEYPayload*"/>
           </instance-parameter>
           <parameter name="newpay" transfer-ownership="full">
-            <doc xml:space="preserve">a #GstMIKEYPayload to add</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="226">a #GstMIKEYPayload to add</doc>
             <type name="MIKEYPayload" c:type="GstMIKEYPayload*"/>
           </parameter>
         </parameters>
@@ -768,15 +1124,22 @@ will be appended to @msg.</doc>
       <method name="kemac_get_n_sub"
               c:identifier="gst_mikey_payload_kemac_get_n_sub"
               version="1.4">
-        <doc xml:space="preserve">Get the number of sub payloads of @payload. @payload should be of type
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.c"
+             line="150">Get the number of sub payloads of @payload. @payload should be of type
 %GST_MIKEY_PT_KEMAC.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstmikey.h" line="270"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the number of sub payloads in @payload</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstmikey.c"
+               line="157">the number of sub payloads in @payload</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="payload" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstMIKEYPayload</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="152">a #GstMIKEYPayload</doc>
             <type name="MIKEYPayload" c:type="const GstMIKEYPayload*"/>
           </instance-parameter>
         </parameters>
@@ -784,19 +1147,28 @@ will be appended to @msg.</doc>
       <method name="kemac_get_sub"
               c:identifier="gst_mikey_payload_kemac_get_sub"
               version="1.4">
-        <doc xml:space="preserve">Get the sub payload of @payload at @idx. @payload should be of type
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.c"
+             line="172">Get the sub payload of @payload at @idx. @payload should be of type
 %GST_MIKEY_PT_KEMAC.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstmikey.h" line="273"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the #GstMIKEYPayload at @idx.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstmikey.c"
+               line="180">the #GstMIKEYPayload at @idx.</doc>
           <type name="MIKEYPayload" c:type="const GstMIKEYPayload*"/>
         </return-value>
         <parameters>
           <instance-parameter name="payload" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstMIKEYPayload</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="174">a #GstMIKEYPayload</doc>
             <type name="MIKEYPayload" c:type="const GstMIKEYPayload*"/>
           </instance-parameter>
           <parameter name="idx" transfer-ownership="none">
-            <doc xml:space="preserve">an index</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="175">an index</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
@@ -804,18 +1176,27 @@ will be appended to @msg.</doc>
       <method name="kemac_remove_sub"
               c:identifier="gst_mikey_payload_kemac_remove_sub"
               version="1.4">
-        <doc xml:space="preserve">Remove the sub payload at @idx in @payload.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE on success.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.c"
+             line="198">Remove the sub payload at @idx in @payload.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstmikey.h" line="276"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstmikey.c"
+               line="205">%TRUE on success.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="payload" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstMIKEYPayload</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="200">a #GstMIKEYPayload</doc>
             <type name="MIKEYPayload" c:type="GstMIKEYPayload*"/>
           </instance-parameter>
           <parameter name="idx" transfer-ownership="none">
-            <doc xml:space="preserve">the index to remove</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="201">the index to remove</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
@@ -823,23 +1204,34 @@ will be appended to @msg.</doc>
       <method name="kemac_set"
               c:identifier="gst_mikey_payload_kemac_set"
               version="1.4">
-        <doc xml:space="preserve">Set the KEMAC parameters. @payload should point to a %GST_MIKEY_PT_KEMAC
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.c"
+             line="98">Set the KEMAC parameters. @payload should point to a %GST_MIKEY_PT_KEMAC
 payload.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstmikey.h" line="265"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE on success</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstmikey.c"
+               line="107">%TRUE on success</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="payload" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstMIKEYPayload</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="100">a #GstMIKEYPayload</doc>
             <type name="MIKEYPayload" c:type="GstMIKEYPayload*"/>
           </instance-parameter>
           <parameter name="enc_alg" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstMIKEYEncAlg</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="101">the #GstMIKEYEncAlg</doc>
             <type name="MIKEYEncAlg" c:type="GstMIKEYEncAlg"/>
           </parameter>
           <parameter name="mac_alg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstMIKEYMacAlg</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="102">a #GstMIKEYMacAlg</doc>
             <type name="MIKEYMacAlg" c:type="GstMIKEYMacAlg"/>
           </parameter>
         </parameters>
@@ -847,32 +1239,47 @@ payload.</doc>
       <method name="key_data_set_interval"
               c:identifier="gst_mikey_payload_key_data_set_interval"
               version="1.4">
-        <doc xml:space="preserve">Set the key validity period in the %GST_MIKEY_PT_KEY_DATA @payload.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE on success</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.c"
+             line="682">Set the key validity period in the %GST_MIKEY_PT_KEY_DATA @payload.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstmikey.h" line="544"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstmikey.c"
+               line="692">%TRUE on success</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="payload" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstMIKEYPayload</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="684">a #GstMIKEYPayload</doc>
             <type name="MIKEYPayload" c:type="GstMIKEYPayload*"/>
           </instance-parameter>
           <parameter name="vf_len" transfer-ownership="none">
-            <doc xml:space="preserve">the length of @vf_data</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="685">the length of @vf_data</doc>
             <type name="guint8" c:type="guint8"/>
           </parameter>
           <parameter name="vf_data" transfer-ownership="none">
-            <doc xml:space="preserve">the Valid From data</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="686">the Valid From data</doc>
             <array length="1" zero-terminated="0" c:type="const guint8*">
               <type name="guint8" c:type="guint8"/>
             </array>
           </parameter>
           <parameter name="vt_len" transfer-ownership="none">
-            <doc xml:space="preserve">the length of @vt_data</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="687">the length of @vt_data</doc>
             <type name="guint8" c:type="guint8"/>
           </parameter>
           <parameter name="vt_data" transfer-ownership="none">
-            <doc xml:space="preserve">the Valid To data</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="688">the Valid To data</doc>
             <array length="2" zero-terminated="0" c:type="const guint8*">
               <type name="guint8" c:type="guint8"/>
             </array>
@@ -882,27 +1289,40 @@ payload.</doc>
       <method name="key_data_set_key"
               c:identifier="gst_mikey_payload_key_data_set_key"
               version="1.4">
-        <doc xml:space="preserve">Set @key_len bytes of @key_data of type @key_type as the key for the
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.c"
+             line="587">Set @key_len bytes of @key_data of type @key_type as the key for the
 %GST_MIKEY_PT_KEY_DATA @payload.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstmikey.h" line="531"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE on success</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstmikey.c"
+               line="597">%TRUE on success</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="payload" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstMIKEYPayload</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="589">a #GstMIKEYPayload</doc>
             <type name="MIKEYPayload" c:type="GstMIKEYPayload*"/>
           </instance-parameter>
           <parameter name="key_type" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstMIKEYKeyDataType</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="590">a #GstMIKEYKeyDataType</doc>
             <type name="MIKEYKeyDataType" c:type="GstMIKEYKeyDataType"/>
           </parameter>
           <parameter name="key_len" transfer-ownership="none">
-            <doc xml:space="preserve">the length of @key_data</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="591">the length of @key_data</doc>
             <type name="guint16" c:type="guint16"/>
           </parameter>
           <parameter name="key_data" transfer-ownership="none">
-            <doc xml:space="preserve">the key of type @key_type</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="592">the key of type @key_type</doc>
             <array length="1" zero-terminated="0" c:type="const guint8*">
               <type name="guint8" c:type="guint8"/>
             </array>
@@ -912,26 +1332,37 @@ payload.</doc>
       <method name="key_data_set_salt"
               c:identifier="gst_mikey_payload_key_data_set_salt"
               version="1.4">
-        <doc xml:space="preserve">Set the salt key data. If @salt_len is 0 and @salt_data is %NULL, the
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.c"
+             line="618">Set the salt key data. If @salt_len is 0 and @salt_data is %NULL, the
 salt data will be removed.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstmikey.h" line="536"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE on success</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstmikey.c"
+               line="627">%TRUE on success</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="payload" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstMIKEYPayload</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="620">a #GstMIKEYPayload</doc>
             <type name="MIKEYPayload" c:type="GstMIKEYPayload*"/>
           </instance-parameter>
           <parameter name="salt_len" transfer-ownership="none">
-            <doc xml:space="preserve">the length of @salt_data</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="621">the length of @salt_data</doc>
             <type name="guint16" c:type="guint16"/>
           </parameter>
           <parameter name="salt_data"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">the salt</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="622">the salt</doc>
             <array length="0" zero-terminated="0" c:type="const guint8*">
               <type name="guint8" c:type="guint8"/>
             </array>
@@ -941,22 +1372,33 @@ salt data will be removed.</doc>
       <method name="key_data_set_spi"
               c:identifier="gst_mikey_payload_key_data_set_spi"
               version="1.4">
-        <doc xml:space="preserve">Set the SPI/MKI validity in the %GST_MIKEY_PT_KEY_DATA @payload.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE on success</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.c"
+             line="650">Set the SPI/MKI validity in the %GST_MIKEY_PT_KEY_DATA @payload.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstmikey.h" line="540"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstmikey.c"
+               line="658">%TRUE on success</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="payload" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstMIKEYPayload</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="652">a #GstMIKEYPayload</doc>
             <type name="MIKEYPayload" c:type="GstMIKEYPayload*"/>
           </instance-parameter>
           <parameter name="spi_len" transfer-ownership="none">
-            <doc xml:space="preserve">the length of @spi_data</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="653">the length of @spi_data</doc>
             <type name="guint8" c:type="guint8"/>
           </parameter>
           <parameter name="spi_data" transfer-ownership="none">
-            <doc xml:space="preserve">the SPI/MKI data</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="654">the SPI/MKI data</doc>
             <array length="0" zero-terminated="0" c:type="const guint8*">
               <type name="guint8" c:type="guint8"/>
             </array>
@@ -966,27 +1408,40 @@ salt data will be removed.</doc>
       <method name="pke_set"
               c:identifier="gst_mikey_payload_pke_set"
               version="1.4">
-        <doc xml:space="preserve">Set the PKE values in @payload. @payload must be of type
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.c"
+             line="249">Set the PKE values in @payload. @payload must be of type
 %GST_MIKEY_PT_PKE.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstmikey.h" line="319"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE on success</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstmikey.c"
+               line="259">%TRUE on success</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="payload" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstMIKEYPayload</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="251">a #GstMIKEYPayload</doc>
             <type name="MIKEYPayload" c:type="GstMIKEYPayload*"/>
           </instance-parameter>
           <parameter name="C" transfer-ownership="none">
-            <doc xml:space="preserve">envelope key cache indicator</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="252">envelope key cache indicator</doc>
             <type name="MIKEYCacheType" c:type="GstMIKEYCacheType"/>
           </parameter>
           <parameter name="data_len" transfer-ownership="none">
-            <doc xml:space="preserve">the length of @data</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="253">the length of @data</doc>
             <type name="guint16" c:type="guint16"/>
           </parameter>
           <parameter name="data" transfer-ownership="none">
-            <doc xml:space="preserve">the encrypted envelope key</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="254">the encrypted envelope key</doc>
             <array length="1" zero-terminated="0" c:type="const guint8*">
               <type name="guint8" c:type="guint8"/>
             </array>
@@ -996,22 +1451,33 @@ salt data will be removed.</doc>
       <method name="rand_set"
               c:identifier="gst_mikey_payload_rand_set"
               version="1.4">
-        <doc xml:space="preserve">Set the random values in a %GST_MIKEY_PT_RAND @payload.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE on success</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.c"
+             line="539">Set the random values in a %GST_MIKEY_PT_RAND @payload.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstmikey.h" line="471"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstmikey.c"
+               line="547">%TRUE on success</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="payload" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstMIKEYPayload</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="541">a #GstMIKEYPayload</doc>
             <type name="MIKEYPayload" c:type="GstMIKEYPayload*"/>
           </instance-parameter>
           <parameter name="len" transfer-ownership="none">
-            <doc xml:space="preserve">the length of @rand</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="542">the length of @rand</doc>
             <type name="guint8" c:type="guint8"/>
           </parameter>
           <parameter name="rand" transfer-ownership="none">
-            <doc xml:space="preserve">random values</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="543">random values</doc>
             <array length="0" zero-terminated="0" c:type="const guint8*">
               <type name="guint8" c:type="guint8"/>
             </array>
@@ -1021,27 +1487,40 @@ salt data will be removed.</doc>
       <method name="sp_add_param"
               c:identifier="gst_mikey_payload_sp_add_param"
               version="1.4">
-        <doc xml:space="preserve">Add a new parameter to the %GST_MIKEY_PT_SP @payload with @type, @len
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.c"
+             line="505">Add a new parameter to the %GST_MIKEY_PT_SP @payload with @type, @len
 and @val.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstmikey.h" line="452"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE on success</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstmikey.c"
+               line="515">%TRUE on success</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="payload" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstMIKEYPayload</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="507">a #GstMIKEYPayload</doc>
             <type name="MIKEYPayload" c:type="GstMIKEYPayload*"/>
           </instance-parameter>
           <parameter name="type" transfer-ownership="none">
-            <doc xml:space="preserve">a type</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="508">a type</doc>
             <type name="guint8" c:type="guint8"/>
           </parameter>
           <parameter name="len" transfer-ownership="none">
-            <doc xml:space="preserve">a length</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="509">a length</doc>
             <type name="guint8" c:type="guint8"/>
           </parameter>
           <parameter name="val" transfer-ownership="none">
-            <doc xml:space="preserve">@len bytes of data</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="510">@len bytes of data</doc>
             <array length="1" zero-terminated="0" c:type="const guint8*">
               <type name="guint8" c:type="guint8"/>
             </array>
@@ -1051,15 +1530,22 @@ and @val.</doc>
       <method name="sp_get_n_params"
               c:identifier="gst_mikey_payload_sp_get_n_params"
               version="1.4">
-        <doc xml:space="preserve">Get the number of security policy parameters in a %GST_MIKEY_PT_SP
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.c"
+             line="430">Get the number of security policy parameters in a %GST_MIKEY_PT_SP
 @payload.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstmikey.h" line="442"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the number of parameters in @payload</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstmikey.c"
+               line="437">the number of parameters in @payload</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="payload" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstMIKEYPayload</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="432">a #GstMIKEYPayload</doc>
             <type name="MIKEYPayload" c:type="const GstMIKEYPayload*"/>
           </instance-parameter>
         </parameters>
@@ -1067,20 +1553,29 @@ and @val.</doc>
       <method name="sp_get_param"
               c:identifier="gst_mikey_payload_sp_get_param"
               version="1.4">
-        <doc xml:space="preserve">Get the Security Policy parameter in a %GST_MIKEY_PT_SP @payload
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.c"
+             line="453">Get the Security Policy parameter in a %GST_MIKEY_PT_SP @payload
 at @idx.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstmikey.h" line="446"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the #GstMIKEYPayloadSPParam at @idx in @payload</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstmikey.c"
+               line="461">the #GstMIKEYPayloadSPParam at @idx in @payload</doc>
           <type name="MIKEYPayloadSPParam"
                 c:type="const GstMIKEYPayloadSPParam*"/>
         </return-value>
         <parameters>
           <instance-parameter name="payload" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstMIKEYPayload</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="455">a #GstMIKEYPayload</doc>
             <type name="MIKEYPayload" c:type="const GstMIKEYPayload*"/>
           </instance-parameter>
           <parameter name="idx" transfer-ownership="none">
-            <doc xml:space="preserve">an index</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="456">an index</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
@@ -1088,19 +1583,28 @@ at @idx.</doc>
       <method name="sp_remove_param"
               c:identifier="gst_mikey_payload_sp_remove_param"
               version="1.4">
-        <doc xml:space="preserve">Remove the Security Policy parameters from a %GST_MIKEY_PT_SP
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.c"
+             line="479">Remove the Security Policy parameters from a %GST_MIKEY_PT_SP
 @payload at @idx.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstmikey.h" line="449"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE on success</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstmikey.c"
+               line="487">%TRUE on success</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="payload" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstMIKEYPayload</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="481">a #GstMIKEYPayload</doc>
             <type name="MIKEYPayload" c:type="GstMIKEYPayload*"/>
           </instance-parameter>
           <parameter name="idx" transfer-ownership="none">
-            <doc xml:space="preserve">an index</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="482">an index</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
@@ -1108,22 +1612,33 @@ at @idx.</doc>
       <method name="sp_set"
               c:identifier="gst_mikey_payload_sp_set"
               version="1.4">
-        <doc xml:space="preserve">Set the Security Policy parameters for @payload.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE on success</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.c"
+             line="378">Set the Security Policy parameters for @payload.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstmikey.h" line="439"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstmikey.c"
+               line="386">%TRUE on success</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="payload" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstMIKEYPayload</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="380">a #GstMIKEYPayload</doc>
             <type name="MIKEYPayload" c:type="GstMIKEYPayload*"/>
           </instance-parameter>
           <parameter name="policy" transfer-ownership="none">
-            <doc xml:space="preserve">the policy number</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="381">the policy number</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="proto" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstMIKEYSecProto</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="382">a #GstMIKEYSecProto</doc>
             <type name="MIKEYSecProto" c:type="GstMIKEYSecProto"/>
           </parameter>
         </parameters>
@@ -1131,22 +1646,33 @@ at @idx.</doc>
       <method name="t_set"
               c:identifier="gst_mikey_payload_t_set"
               version="1.4">
-        <doc xml:space="preserve">Set the timestamp in a %GST_MIKEY_PT_T @payload.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE on success</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.c"
+             line="320">Set the timestamp in a %GST_MIKEY_PT_T @payload.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstmikey.h" line="355"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstmikey.c"
+               line="328">%TRUE on success</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="payload" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstMIKEYPayload</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="322">a #GstMIKEYPayload</doc>
             <type name="MIKEYPayload" c:type="GstMIKEYPayload*"/>
           </instance-parameter>
           <parameter name="type" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstMIKEYTSType</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="323">the #GstMIKEYTSType</doc>
             <type name="MIKEYTSType" c:type="GstMIKEYTSType"/>
           </parameter>
           <parameter name="ts_value" transfer-ownership="none">
-            <doc xml:space="preserve">the timestamp value</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstmikey.c"
+                 line="324">the timestamp value</doc>
             <array zero-terminated="0" c:type="const guint8*">
               <type name="guint8" c:type="guint8"/>
             </array>
@@ -1155,690 +1681,1062 @@ at @idx.</doc>
       </method>
     </record>
     <record name="MIKEYPayloadKEMAC" c:type="GstMIKEYPayloadKEMAC">
-      <doc xml:space="preserve">A structure holding the KEMAC payload</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/sdp/gstmikey.h"
+           line="247">A structure holding the KEMAC payload</doc>
+      <source-position filename="gst-libs/gst/sdp/gstmikey.h" line="262"/>
       <field name="pt" writable="1">
-        <doc xml:space="preserve">the common #GstMIKEYPayload</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="249">the common #GstMIKEYPayload</doc>
         <type name="MIKEYPayload" c:type="GstMIKEYPayload"/>
       </field>
       <field name="enc_alg" writable="1">
-        <doc xml:space="preserve">the #GstMIKEYEncAlg</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="250">the #GstMIKEYEncAlg</doc>
         <type name="MIKEYEncAlg" c:type="GstMIKEYEncAlg"/>
       </field>
       <field name="mac_alg" writable="1">
-        <doc xml:space="preserve">the #GstMIKEYMacAlg</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="251">the #GstMIKEYMacAlg</doc>
         <type name="MIKEYMacAlg" c:type="GstMIKEYMacAlg"/>
       </field>
       <field name="subpayloads" writable="1">
-        <doc xml:space="preserve">the subpayloads</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="252">the subpayloads</doc>
         <array name="GLib.Array" c:type="GArray*">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
     </record>
     <record name="MIKEYPayloadKeyData" c:type="GstMIKEYPayloadKeyData">
-      <doc xml:space="preserve">The Key data payload contains key material. It should be added as sub
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/sdp/gstmikey.h"
+           line="502">The Key data payload contains key material. It should be added as sub
 payload to the KEMAC.</doc>
+      <source-position filename="gst-libs/gst/sdp/gstmikey.h" line="528"/>
       <field name="pt" writable="1">
-        <doc xml:space="preserve">the payload header</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="504">the payload header</doc>
         <type name="MIKEYPayload" c:type="GstMIKEYPayload"/>
       </field>
       <field name="key_type" writable="1">
-        <doc xml:space="preserve">the #GstMIKEYKeyDataType of @key_data</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="505">the #GstMIKEYKeyDataType of @key_data</doc>
         <type name="MIKEYKeyDataType" c:type="GstMIKEYKeyDataType"/>
       </field>
       <field name="key_len" writable="1">
-        <doc xml:space="preserve">length of @key_data</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="506">length of @key_data</doc>
         <type name="guint16" c:type="guint16"/>
       </field>
       <field name="key_data" writable="1">
-        <doc xml:space="preserve">the key data</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="507">the key data</doc>
         <type name="guint8" c:type="guint8*"/>
       </field>
       <field name="salt_len" writable="1">
-        <doc xml:space="preserve">the length of @salt_data, can be 0</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="508">the length of @salt_data, can be 0</doc>
         <type name="guint16" c:type="guint16"/>
       </field>
       <field name="salt_data" writable="1">
-        <doc xml:space="preserve">salt data</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="509">salt data</doc>
         <type name="guint8" c:type="guint8*"/>
       </field>
       <field name="kv_type" writable="1">
-        <doc xml:space="preserve">the Key Validity type</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="510">the Key Validity type</doc>
         <type name="MIKEYKVType" c:type="GstMIKEYKVType"/>
       </field>
       <field name="kv_len" writable="1">
-        <doc xml:space="preserve">length of @kv_data</doc>
-        <array zero-terminated="0" c:type="guint8" fixed-size="2">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="511">length of @kv_data</doc>
+        <array zero-terminated="0" fixed-size="2">
           <type name="guint8" c:type="guint8"/>
         </array>
       </field>
       <field name="kv_data" writable="1">
-        <doc xml:space="preserve">key validity data</doc>
-        <array zero-terminated="0" c:type="guint8" fixed-size="2">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="512">key validity data</doc>
+        <array zero-terminated="0" fixed-size="2">
           <type name="guint8" c:type="guint8*"/>
         </array>
       </field>
     </record>
     <record name="MIKEYPayloadPKE" c:type="GstMIKEYPayloadPKE">
-      <doc xml:space="preserve">The Envelope data payload contains the encrypted envelope key that is
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/sdp/gstmikey.h"
+           line="298">The Envelope data payload contains the encrypted envelope key that is
 used in the public-key transport to protect the data in the Key data
 transport payload.  The encryption algorithm used is implicit from
 the certificate/public key used.</doc>
+      <source-position filename="gst-libs/gst/sdp/gstmikey.h" line="316"/>
       <field name="pt" writable="1">
-        <doc xml:space="preserve">the common #GstMIKEYPayload</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="300">the common #GstMIKEYPayload</doc>
         <type name="MIKEYPayload" c:type="GstMIKEYPayload"/>
       </field>
       <field name="C" writable="1">
-        <doc xml:space="preserve">envelope key cache indicator</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="301">envelope key cache indicator</doc>
         <type name="MIKEYCacheType" c:type="GstMIKEYCacheType"/>
       </field>
       <field name="data_len" writable="1">
-        <doc xml:space="preserve">length of @data</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="302">length of @data</doc>
         <type name="guint16" c:type="guint16"/>
       </field>
       <field name="data" writable="1">
-        <doc xml:space="preserve">the encrypted envelope key</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="303">the encrypted envelope key</doc>
         <type name="guint8" c:type="guint8*"/>
       </field>
     </record>
     <record name="MIKEYPayloadRAND" c:type="GstMIKEYPayloadRAND">
-      <doc xml:space="preserve">The RAND payload consists of a (pseudo-)random bit-string</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/sdp/gstmikey.h"
+           line="455">The RAND payload consists of a (pseudo-)random bit-string</doc>
+      <source-position filename="gst-libs/gst/sdp/gstmikey.h" line="468"/>
       <field name="pt" writable="1">
-        <doc xml:space="preserve">the payload header</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="457">the payload header</doc>
         <type name="MIKEYPayload" c:type="GstMIKEYPayload"/>
       </field>
       <field name="len" writable="1">
-        <doc xml:space="preserve">the length of @rand</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="458">the length of @rand</doc>
         <type name="guint8" c:type="guint8"/>
       </field>
       <field name="rand" writable="1">
-        <doc xml:space="preserve">random values</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="459">random values</doc>
         <type name="guint8" c:type="guint8*"/>
       </field>
     </record>
     <record name="MIKEYPayloadSP" c:type="GstMIKEYPayloadSP">
-      <doc xml:space="preserve">The Security Policy payload defines a set of policies that apply to a
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/sdp/gstmikey.h"
+           line="420">The Security Policy payload defines a set of policies that apply to a
 specific security protocol</doc>
+      <source-position filename="gst-libs/gst/sdp/gstmikey.h" line="436"/>
       <field name="pt" writable="1">
-        <doc xml:space="preserve">the payload header</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="422">the payload header</doc>
         <type name="MIKEYPayload" c:type="GstMIKEYPayload"/>
       </field>
       <field name="policy" writable="1">
-        <doc xml:space="preserve">the policy number</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="423">the policy number</doc>
         <type name="guint" c:type="guint"/>
       </field>
       <field name="proto" writable="1">
-        <doc xml:space="preserve">the security protocol</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="424">the security protocol</doc>
         <type name="MIKEYSecProto" c:type="GstMIKEYSecProto"/>
       </field>
       <field name="params" writable="1">
-        <doc xml:space="preserve">array of #GstMIKEYPayloadSPParam</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="425">array of #GstMIKEYPayloadSPParam</doc>
         <array name="GLib.Array" c:type="GArray*">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
     </record>
     <record name="MIKEYPayloadSPParam" c:type="GstMIKEYPayloadSPParam">
-      <doc xml:space="preserve">A Type/Length/Value field for security paramaters</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/sdp/gstmikey.h"
+           line="358">A Type/Length/Value field for security parameters</doc>
+      <source-position filename="gst-libs/gst/sdp/gstmikey.h" line="370"/>
       <field name="type" writable="1">
-        <doc xml:space="preserve">specifies the type of the parameter</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="360">specifies the type of the parameter</doc>
         <type name="guint8" c:type="guint8"/>
       </field>
       <field name="len" writable="1">
-        <doc xml:space="preserve">specifies the length of @val</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="361">specifies the length of @val</doc>
         <type name="guint8" c:type="guint8"/>
       </field>
       <field name="val" writable="1">
-        <doc xml:space="preserve">specifies the value of the parameter</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="362">specifies the value of the parameter</doc>
         <type name="guint8" c:type="guint8*"/>
       </field>
     </record>
     <record name="MIKEYPayloadT" c:type="GstMIKEYPayloadT">
-      <doc xml:space="preserve">The timestamp payload carries the timestamp information</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/sdp/gstmikey.h"
+           line="339">The timestamp payload carries the timestamp information</doc>
+      <source-position filename="gst-libs/gst/sdp/gstmikey.h" line="352"/>
       <field name="pt" writable="1">
-        <doc xml:space="preserve">the payload header</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="341">the payload header</doc>
         <type name="MIKEYPayload" c:type="GstMIKEYPayload"/>
       </field>
       <field name="type" writable="1">
-        <doc xml:space="preserve">a #GstMIKEYTSType</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="342">a #GstMIKEYTSType</doc>
         <type name="MIKEYTSType" c:type="GstMIKEYTSType"/>
       </field>
       <field name="ts_value" writable="1">
-        <doc xml:space="preserve">the timestamp value</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="343">the timestamp value</doc>
         <type name="guint8" c:type="guint8*"/>
       </field>
     </record>
     <enumeration name="MIKEYPayloadType" c:type="GstMIKEYPayloadType">
-      <doc xml:space="preserve">Different MIKEY Payload types.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/sdp/gstmikey.h"
+           line="70">Different MIKEY Payload types.</doc>
+      <source-position filename="gst-libs/gst/sdp/gstmikey.h" line="107"/>
       <member name="last" value="0" c:identifier="GST_MIKEY_PT_LAST">
-        <doc xml:space="preserve">Last payload</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="72">Last payload</doc>
       </member>
       <member name="kemac" value="1" c:identifier="GST_MIKEY_PT_KEMAC">
-        <doc xml:space="preserve">Key data transport payload</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="73">Key data transport payload</doc>
       </member>
       <member name="pke" value="2" c:identifier="GST_MIKEY_PT_PKE">
-        <doc xml:space="preserve">Envelope data payload</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="74">Envelope data payload</doc>
       </member>
       <member name="dh" value="3" c:identifier="GST_MIKEY_PT_DH">
-        <doc xml:space="preserve">DH data payload</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="75">DH data payload</doc>
       </member>
       <member name="sign" value="4" c:identifier="GST_MIKEY_PT_SIGN">
-        <doc xml:space="preserve">Signature payload</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="76">Signature payload</doc>
       </member>
       <member name="t" value="5" c:identifier="GST_MIKEY_PT_T">
-        <doc xml:space="preserve">Timestamp payload</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="77">Timestamp payload</doc>
       </member>
       <member name="id" value="6" c:identifier="GST_MIKEY_PT_ID">
-        <doc xml:space="preserve">ID payload</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="78">ID payload</doc>
       </member>
       <member name="cert" value="7" c:identifier="GST_MIKEY_PT_CERT">
-        <doc xml:space="preserve">Certificate Payload</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="79">Certificate Payload</doc>
       </member>
       <member name="chash" value="8" c:identifier="GST_MIKEY_PT_CHASH">
-        <doc xml:space="preserve">Cert hash payload</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="80">Cert hash payload</doc>
       </member>
       <member name="v" value="9" c:identifier="GST_MIKEY_PT_V">
-        <doc xml:space="preserve">Verfication message payload</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="81">Verification message payload</doc>
       </member>
       <member name="sp" value="10" c:identifier="GST_MIKEY_PT_SP">
-        <doc xml:space="preserve">Security Policy payload</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="82">Security Policy payload</doc>
       </member>
       <member name="rand" value="11" c:identifier="GST_MIKEY_PT_RAND">
-        <doc xml:space="preserve">RAND payload</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="83">RAND payload</doc>
       </member>
       <member name="err" value="12" c:identifier="GST_MIKEY_PT_ERR">
-        <doc xml:space="preserve">Error payload</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="84">Error payload</doc>
       </member>
       <member name="key_data" value="20" c:identifier="GST_MIKEY_PT_KEY_DATA">
-        <doc xml:space="preserve">Key data sub-payload</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="85">Key data sub-payload</doc>
       </member>
       <member name="gen_ext" value="21" c:identifier="GST_MIKEY_PT_GEN_EXT">
-        <doc xml:space="preserve">General Extension Payload</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="86">General Extension Payload</doc>
       </member>
     </enumeration>
     <enumeration name="MIKEYSecProto" c:type="GstMIKEYSecProto">
-      <doc xml:space="preserve">Specifies the security protocol</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/sdp/gstmikey.h"
+           line="372">Specifies the security protocol</doc>
+      <source-position filename="gst-libs/gst/sdp/gstmikey.h" line="381"/>
       <member name="mikey_sec_proto_srtp"
               value="0"
               c:identifier="GST_MIKEY_SEC_PROTO_SRTP">
-        <doc xml:space="preserve">SRTP</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="374">SRTP</doc>
       </member>
     </enumeration>
     <enumeration name="MIKEYSecSRTP" c:type="GstMIKEYSecSRTP">
-      <doc xml:space="preserve">This policy specifies the parameters for SRTP and SRTCP</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/sdp/gstmikey.h"
+           line="383">This policy specifies the parameters for SRTP and SRTCP</doc>
+      <source-position filename="gst-libs/gst/sdp/gstmikey.h" line="418"/>
       <member name="enc_alg"
               value="0"
               c:identifier="GST_MIKEY_SP_SRTP_ENC_ALG">
-        <doc xml:space="preserve">Encryption algorithm</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="385">Encryption algorithm</doc>
       </member>
       <member name="enc_key_len"
               value="1"
               c:identifier="GST_MIKEY_SP_SRTP_ENC_KEY_LEN">
-        <doc xml:space="preserve">Session Encr. key length</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="386">Session Encr. key length</doc>
       </member>
       <member name="auth_alg"
               value="2"
               c:identifier="GST_MIKEY_SP_SRTP_AUTH_ALG">
-        <doc xml:space="preserve">Authentication algorithm</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="387">Authentication algorithm</doc>
       </member>
       <member name="auth_key_len"
               value="3"
               c:identifier="GST_MIKEY_SP_SRTP_AUTH_KEY_LEN">
-        <doc xml:space="preserve">Session Auth. key length</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="388">Session Auth. key length</doc>
       </member>
       <member name="salt_key_len"
               value="4"
               c:identifier="GST_MIKEY_SP_SRTP_SALT_KEY_LEN">
-        <doc xml:space="preserve">Session Salt key length</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="389">Session Salt key length</doc>
       </member>
       <member name="prf" value="5" c:identifier="GST_MIKEY_SP_SRTP_PRF">
-        <doc xml:space="preserve">SRTP Pseudo Random Function</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="390">SRTP Pseudo Random Function</doc>
       </member>
       <member name="key_deriv_rate"
               value="6"
               c:identifier="GST_MIKEY_SP_SRTP_KEY_DERIV_RATE">
-        <doc xml:space="preserve">Key derivation rate</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="391">Key derivation rate</doc>
       </member>
       <member name="srtp_enc"
               value="7"
               c:identifier="GST_MIKEY_SP_SRTP_SRTP_ENC">
-        <doc xml:space="preserve">SRTP encryption off/on, 0 if off, 1 if on</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="392">SRTP encryption off/on, 0 if off, 1 if on</doc>
       </member>
       <member name="srtcp_enc"
               value="8"
               c:identifier="GST_MIKEY_SP_SRTP_SRTCP_ENC">
-        <doc xml:space="preserve">SRTCP encryption off/on, 0 if off, 1 if on</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="393">SRTCP encryption off/on, 0 if off, 1 if on</doc>
       </member>
       <member name="fec_order"
               value="9"
               c:identifier="GST_MIKEY_SP_SRTP_FEC_ORDER">
-        <doc xml:space="preserve">sender's FEC order</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="394">sender's FEC order</doc>
       </member>
       <member name="srtp_auth"
               value="10"
               c:identifier="GST_MIKEY_SP_SRTP_SRTP_AUTH">
-        <doc xml:space="preserve">SRTP authentication off/on, 0 if off, 1 if on</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="395">SRTP authentication off/on, 0 if off, 1 if on</doc>
       </member>
       <member name="auth_tag_len"
               value="11"
               c:identifier="GST_MIKEY_SP_SRTP_AUTH_TAG_LEN">
-        <doc xml:space="preserve">Authentication tag length</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="396">Authentication tag length</doc>
       </member>
       <member name="srtp_prefix_len"
               value="12"
               c:identifier="GST_MIKEY_SP_SRTP_SRTP_PREFIX_LEN">
-        <doc xml:space="preserve">SRTP prefix length</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="397">SRTP prefix length</doc>
       </member>
       <member name="aead_auth_tag_len"
               value="20"
               c:identifier="GST_MIKEY_SP_SRTP_AEAD_AUTH_TAG_LEN">
-        <doc xml:space="preserve">AEAD authentication tag length (Since 1.16)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="398">AEAD authentication tag length (Since: 1.16)</doc>
       </member>
     </enumeration>
     <enumeration name="MIKEYTSType" c:type="GstMIKEYTSType">
-      <doc xml:space="preserve">Specifies the timestamp type.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/sdp/gstmikey.h"
+           line="324">Specifies the timestamp type.</doc>
+      <source-position filename="gst-libs/gst/sdp/gstmikey.h" line="337"/>
       <member name="ntp_utc"
               value="0"
               c:identifier="GST_MIKEY_TS_TYPE_NTP_UTC">
-        <doc xml:space="preserve">an NTP time in UTC timezone</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="326">an NTP time in UTC timezone</doc>
       </member>
       <member name="ntp" value="1" c:identifier="GST_MIKEY_TS_TYPE_NTP">
-        <doc xml:space="preserve">an NTP time</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="327">an NTP time</doc>
       </member>
       <member name="counter"
               value="2"
               c:identifier="GST_MIKEY_TS_TYPE_COUNTER">
-        <doc xml:space="preserve">a counter</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="328">a counter</doc>
       </member>
     </enumeration>
     <enumeration name="MIKEYType" c:type="GstMIKEYType">
-      <doc xml:space="preserve">Different MIKEY data types.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/sdp/gstmikey.h"
+           line="45">Different MIKEY data types.</doc>
+      <source-position filename="gst-libs/gst/sdp/gstmikey.h" line="68"/>
       <member name="invalid" value="-1" c:identifier="GST_MIKEY_TYPE_INVALID">
-        <doc xml:space="preserve">Invalid type</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="47">Invalid type</doc>
       </member>
       <member name="psk_init" value="0" c:identifier="GST_MIKEY_TYPE_PSK_INIT">
-        <doc xml:space="preserve">Initiator's pre-shared key message</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="48">Initiator's pre-shared key message</doc>
       </member>
       <member name="psk_verify"
               value="1"
               c:identifier="GST_MIKEY_TYPE_PSK_VERIFY">
-        <doc xml:space="preserve">Verification message of a Pre-shared key message</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="49">Verification message of a Pre-shared key message</doc>
       </member>
       <member name="pk_init" value="2" c:identifier="GST_MIKEY_TYPE_PK_INIT">
-        <doc xml:space="preserve">Initiator's public-key transport message</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="50">Initiator's public-key transport message</doc>
       </member>
       <member name="pk_verify"
               value="3"
               c:identifier="GST_MIKEY_TYPE_PK_VERIFY">
-        <doc xml:space="preserve">Verification message of a public-key message</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="51">Verification message of a public-key message</doc>
       </member>
       <member name="dh_init" value="4" c:identifier="GST_MIKEY_TYPE_DH_INIT">
-        <doc xml:space="preserve">Initiator's DH exchange message</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="52">Initiator's DH exchange message</doc>
       </member>
       <member name="dh_resp" value="5" c:identifier="GST_MIKEY_TYPE_DH_RESP">
-        <doc xml:space="preserve">Responder's DH exchange message</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="53">Responder's DH exchange message</doc>
       </member>
       <member name="error" value="6" c:identifier="GST_MIKEY_TYPE_ERROR">
-        <doc xml:space="preserve">Error message</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstmikey.h"
+             line="54">Error message</doc>
       </member>
     </enumeration>
     <constant name="MIKEY_VERSION" value="1" c:type="GST_MIKEY_VERSION">
-      <doc xml:space="preserve">The supported MIKEY version 1.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/sdp/gstmikey.h"
+           line="38">The supported MIKEY version 1.</doc>
+      <source-position filename="gst-libs/gst/sdp/gstmikey.h" line="43"/>
       <type name="gint" c:type="gint"/>
     </constant>
     <record name="SDPAttribute" c:type="GstSDPAttribute">
-      <doc xml:space="preserve">The contents of the SDP "a=" field which contains a key/value pair.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/sdp/gstsdpmessage.h"
+           line="229">The contents of the SDP "a=" field which contains a key/value pair.</doc>
+      <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h" line="239"/>
       <field name="key" writable="1">
-        <doc xml:space="preserve">the attribute key</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.h"
+             line="231">the attribute key</doc>
         <type name="utf8" c:type="gchar*"/>
       </field>
       <field name="value" writable="1">
-        <doc xml:space="preserve">the attribute value or NULL when it was a property attribute</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.h"
+             line="232">the attribute value or NULL when it was a property attribute</doc>
         <type name="utf8" c:type="gchar*"/>
       </field>
       <method name="clear"
               c:identifier="gst_sdp_attribute_clear"
               version="1.2">
-        <doc xml:space="preserve">Clear the attribute.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">@GST_SDP_OK.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="1584">Clear the attribute.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="246"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="1590">@GST_SDP_OK.</doc>
           <type name="SDPResult" c:type="GstSDPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="attr" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPAttribute</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1586">a #GstSDPAttribute</doc>
             <type name="SDPAttribute" c:type="GstSDPAttribute*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="set" c:identifier="gst_sdp_attribute_set" version="1.2">
-        <doc xml:space="preserve">Set the attribute with @key and @value.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">@GST_SDP_OK.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="1560">Set the attribute with @key and @value.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="242"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="1568">@GST_SDP_OK.</doc>
           <type name="SDPResult" c:type="GstSDPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="attr" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPAttribute</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1562">a #GstSDPAttribute</doc>
             <type name="SDPAttribute" c:type="GstSDPAttribute*"/>
           </instance-parameter>
           <parameter name="key" transfer-ownership="none">
-            <doc xml:space="preserve">the key</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1563">the key</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="value"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">the value</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1564">the value</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </method>
     </record>
     <record name="SDPBandwidth" c:type="GstSDPBandwidth">
-      <doc xml:space="preserve">The contents of the SDP "b=" field which specifies the proposed bandwidth to
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/sdp/gstsdpmessage.h"
+           line="150">The contents of the SDP "b=" field which specifies the proposed bandwidth to
 be used by the session or media.</doc>
+      <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h" line="161"/>
       <field name="bwtype" writable="1">
-        <doc xml:space="preserve">the bandwidth modifier type</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.h"
+             line="152">the bandwidth modifier type</doc>
         <type name="utf8" c:type="gchar*"/>
       </field>
       <field name="bandwidth" writable="1">
-        <doc xml:space="preserve">the bandwidth in kilobits per second</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.h"
+             line="153">the bandwidth in kilobits per second</doc>
         <type name="guint" c:type="guint"/>
       </field>
       <method name="clear"
               c:identifier="gst_sdp_bandwidth_clear"
               version="1.2">
-        <doc xml:space="preserve">Reset the bandwidth information in @bw.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstSDPResult.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="1128">Reset the bandwidth information in @bw.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="168"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="1134">a #GstSDPResult.</doc>
           <type name="SDPResult" c:type="GstSDPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="bw" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPBandwidth</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1130">a #GstSDPBandwidth</doc>
             <type name="SDPBandwidth" c:type="GstSDPBandwidth*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="set" c:identifier="gst_sdp_bandwidth_set" version="1.2">
-        <doc xml:space="preserve">Set bandwidth information in @bw.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstSDPResult.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="1105">Set bandwidth information in @bw.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="164"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="1113">a #GstSDPResult.</doc>
           <type name="SDPResult" c:type="GstSDPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="bw" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPBandwidth</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1107">a #GstSDPBandwidth</doc>
             <type name="SDPBandwidth" c:type="GstSDPBandwidth*"/>
           </instance-parameter>
           <parameter name="bwtype" transfer-ownership="none">
-            <doc xml:space="preserve">the bandwidth modifier type</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1108">the bandwidth modifier type</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="bandwidth" transfer-ownership="none">
-            <doc xml:space="preserve">the bandwidth in kilobits per second</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1109">the bandwidth in kilobits per second</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
     </record>
     <record name="SDPConnection" c:type="GstSDPConnection">
-      <doc xml:space="preserve">The contents of the SDP "c=" field which contains connection data.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/sdp/gstsdpmessage.h"
+           line="81">The contents of the SDP "c=" field which contains connection data.</doc>
+      <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h" line="98"/>
       <field name="nettype" writable="1">
-        <doc xml:space="preserve">the type of network. "IN" is defined to have the meaning
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.h"
+             line="83">the type of network. "IN" is defined to have the meaning
    "Internet".</doc>
         <type name="utf8" c:type="gchar*"/>
       </field>
       <field name="addrtype" writable="1">
-        <doc xml:space="preserve">the type of @address.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.h"
+             line="85">the type of @address.</doc>
         <type name="utf8" c:type="gchar*"/>
       </field>
       <field name="address" writable="1">
-        <doc xml:space="preserve">the address</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.h"
+             line="86">the address</doc>
         <type name="utf8" c:type="gchar*"/>
       </field>
       <field name="ttl" writable="1">
-        <doc xml:space="preserve">the time to live of the address</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.h"
+             line="87">the time to live of the address</doc>
         <type name="guint" c:type="guint"/>
       </field>
       <field name="addr_number" writable="1">
-        <doc xml:space="preserve">the number of layers</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.h"
+             line="88">the number of layers</doc>
         <type name="guint" c:type="guint"/>
       </field>
       <method name="clear"
               c:identifier="gst_sdp_connection_clear"
               version="1.2">
-        <doc xml:space="preserve">Clear the connection.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">@GST_SDP_OK.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="2382">Clear the connection.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="108"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="2388">@GST_SDP_OK.</doc>
           <type name="SDPResult" c:type="GstSDPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="conn" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPConnection</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2384">a #GstSDPConnection</doc>
             <type name="SDPConnection" c:type="GstSDPConnection*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="set" c:identifier="gst_sdp_connection_set" version="1.2">
-        <doc xml:space="preserve">Set the connection with the given parameters.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">@GST_SDP_OK.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="2349">Set the connection with the given parameters.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="101"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="2361">@GST_SDP_OK.</doc>
           <type name="SDPResult" c:type="GstSDPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="conn" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPConnection</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2351">a #GstSDPConnection</doc>
             <type name="SDPConnection" c:type="GstSDPConnection*"/>
           </instance-parameter>
           <parameter name="nettype" transfer-ownership="none">
-            <doc xml:space="preserve">the type of network. "IN" is defined to have the meaning
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2352">the type of network. "IN" is defined to have the meaning
 "Internet".</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="addrtype" transfer-ownership="none">
-            <doc xml:space="preserve">the type of address.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2354">the type of address.</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="address" transfer-ownership="none">
-            <doc xml:space="preserve">the address</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2355">the address</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="ttl" transfer-ownership="none">
-            <doc xml:space="preserve">the time to live of the address</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2356">the time to live of the address</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="addr_number" transfer-ownership="none">
-            <doc xml:space="preserve">the number of layers</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2357">the number of layers</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
     </record>
     <record name="SDPKey" c:type="GstSDPKey">
-      <doc xml:space="preserve">The contents of the SDP "k=" field which is used to convey encryption
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/sdp/gstsdpmessage.h"
+           line="216">The contents of the SDP "k=" field which is used to convey encryption
 keys.</doc>
+      <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h" line="227"/>
       <field name="type" writable="1">
-        <doc xml:space="preserve">the encryption type</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.h"
+             line="218">the encryption type</doc>
         <type name="utf8" c:type="gchar*"/>
       </field>
       <field name="data" writable="1">
-        <doc xml:space="preserve">the encryption data</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.h"
+             line="219">the encryption data</doc>
         <type name="utf8" c:type="gchar*"/>
       </field>
     </record>
     <record name="SDPMedia" c:type="GstSDPMedia">
-      <doc xml:space="preserve">The contents of the SDP "m=" field with all related fields.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/sdp/gstsdpmessage.h"
+           line="248">The contents of the SDP "m=" field with all related fields.</doc>
+      <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h" line="274"/>
       <field name="media" writable="1">
-        <doc xml:space="preserve">the media type</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.h"
+             line="250">the media type</doc>
         <type name="utf8" c:type="gchar*"/>
       </field>
       <field name="port" writable="1">
-        <doc xml:space="preserve">the transport port to which the media stream will be sent</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.h"
+             line="251">the transport port to which the media stream will be sent</doc>
         <type name="guint" c:type="guint"/>
       </field>
       <field name="num_ports" writable="1">
-        <doc xml:space="preserve">the number of ports or -1 if only one port was specified</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.h"
+             line="252">the number of ports or -1 if only one port was specified</doc>
         <type name="guint" c:type="guint"/>
       </field>
       <field name="proto" writable="1">
-        <doc xml:space="preserve">the transport protocol</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.h"
+             line="253">the transport protocol</doc>
         <type name="utf8" c:type="gchar*"/>
       </field>
       <field name="fmts" writable="1">
-        <doc xml:space="preserve">an array of #gchar formats</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.h"
+             line="254">an array of #gchar formats</doc>
         <array name="GLib.Array" c:type="GArray*">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
       <field name="information" writable="1">
-        <doc xml:space="preserve">the media title</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.h"
+             line="255">the media title</doc>
         <type name="utf8" c:type="gchar*"/>
       </field>
       <field name="connections" writable="1">
-        <doc xml:space="preserve">array of #GstSDPConnection with media connection information</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.h"
+             line="256">array of #GstSDPConnection with media connection information</doc>
         <array name="GLib.Array" c:type="GArray*">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
       <field name="bandwidths" writable="1">
-        <doc xml:space="preserve">array of #GstSDPBandwidth with media bandwidth information</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.h"
+             line="257">array of #GstSDPBandwidth with media bandwidth information</doc>
         <array name="GLib.Array" c:type="GArray*">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
       <field name="key" writable="1">
-        <doc xml:space="preserve">the encryption key</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.h"
+             line="258">the encryption key</doc>
         <type name="SDPKey" c:type="GstSDPKey"/>
       </field>
       <field name="attributes" writable="1">
-        <doc xml:space="preserve">array of #GstSDPAttribute with the additional media attributes</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.h"
+             line="259">array of #GstSDPAttribute with the additional media attributes</doc>
         <array name="GLib.Array" c:type="GArray*">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
       <method name="add_attribute" c:identifier="gst_sdp_media_add_attribute">
-        <doc xml:space="preserve">Add the attribute with @key and @value to @media.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">#GST_SDP_OK.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="2754">Add the attribute with @key and @value to @media.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="734"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="2762">#GST_SDP_OK.</doc>
           <type name="SDPResult" c:type="GstSDPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="media" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMedia</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2756">a #GstSDPMedia</doc>
             <type name="SDPMedia" c:type="GstSDPMedia*"/>
           </instance-parameter>
           <parameter name="key" transfer-ownership="none">
-            <doc xml:space="preserve">a key</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2757">a key</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="value"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">a value</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2758">a value</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </method>
       <method name="add_bandwidth" c:identifier="gst_sdp_media_add_bandwidth">
-        <doc xml:space="preserve">Add the bandwidth information with @bwtype and @bandwidth to @media.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">#GST_SDP_OK.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="2673">Add the bandwidth information with @bwtype and @bandwidth to @media.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="696"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="2681">#GST_SDP_OK.</doc>
           <type name="SDPResult" c:type="GstSDPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="media" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMedia</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2675">a #GstSDPMedia</doc>
             <type name="SDPMedia" c:type="GstSDPMedia*"/>
           </instance-parameter>
           <parameter name="bwtype" transfer-ownership="none">
-            <doc xml:space="preserve">the bandwidth modifier type</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2676">the bandwidth modifier type</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="bandwidth" transfer-ownership="none">
-            <doc xml:space="preserve">the bandwidth in kilobits per second</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2677">the bandwidth in kilobits per second</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="add_connection"
               c:identifier="gst_sdp_media_add_connection">
-        <doc xml:space="preserve">Add the given connection parameters to @media.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstSDPResult.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="2525">Add the given connection parameters to @media.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="670"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="2537">a #GstSDPResult.</doc>
           <type name="SDPResult" c:type="GstSDPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="media" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMedia</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2527">a #GstSDPMedia</doc>
             <type name="SDPMedia" c:type="GstSDPMedia*"/>
           </instance-parameter>
           <parameter name="nettype" transfer-ownership="none">
-            <doc xml:space="preserve">the type of network. "IN" is defined to have the meaning
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2528">the type of network. "IN" is defined to have the meaning
 "Internet".</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="addrtype" transfer-ownership="none">
-            <doc xml:space="preserve">the type of address.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2530">the type of address.</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="address" transfer-ownership="none">
-            <doc xml:space="preserve">the address</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2531">the address</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="ttl" transfer-ownership="none">
-            <doc xml:space="preserve">the time to live of the address</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2532">the time to live of the address</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="addr_number" transfer-ownership="none">
-            <doc xml:space="preserve">the number of layers</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2533">the number of layers</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="add_format" c:identifier="gst_sdp_media_add_format">
-        <doc xml:space="preserve">Add the format information to @media.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">#GST_SDP_OK.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="2289">Add the format information to @media.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="640"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="2296">#GST_SDP_OK.</doc>
           <type name="SDPResult" c:type="GstSDPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="media" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMedia</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2291">a #GstSDPMedia</doc>
             <type name="SDPMedia" c:type="GstSDPMedia*"/>
           </instance-parameter>
           <parameter name="format" transfer-ownership="none">
-            <doc xml:space="preserve">the format</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2292">the format</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </method>
       <method name="as_text" c:identifier="gst_sdp_media_as_text">
-        <doc xml:space="preserve">Convert the contents of @media to a text string.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="1962">Convert the contents of @media to a text string.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="596"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">A dynamically allocated string representing the media.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="1968">A dynamically allocated string representing the media.</doc>
           <type name="utf8" c:type="gchar*"/>
         </return-value>
         <parameters>
           <instance-parameter name="media" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMedia</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1964">a #GstSDPMedia</doc>
             <type name="SDPMedia" c:type="const GstSDPMedia*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="attributes_len"
               c:identifier="gst_sdp_media_attributes_len">
-        <doc xml:space="preserve">Get the number of attribute fields in @media.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the number of attributes in @media.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="2738">Get the number of attribute fields in @media.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="710"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="2744">the number of attributes in @media.</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="media" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMedia</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2740">a #GstSDPMedia</doc>
             <type name="SDPMedia" c:type="const GstSDPMedia*"/>
           </instance-parameter>
         </parameters>
@@ -1846,169 +2744,263 @@ keys.</doc>
       <method name="attributes_to_caps"
               c:identifier="gst_sdp_media_attributes_to_caps"
               version="1.8">
-        <doc xml:space="preserve">Mapping of attributes of #GstSDPMedia to #GstCaps</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstSDPResult.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="4288">Mapping of attributes of #GstSDPMedia to #GstCaps</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="756"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="4295">a #GstSDPResult.</doc>
           <type name="SDPResult" c:type="GstSDPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="media" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMedia</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="4290">a #GstSDPMedia</doc>
             <type name="SDPMedia" c:type="const GstSDPMedia*"/>
           </instance-parameter>
           <parameter name="caps" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstCaps</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="4291">a #GstCaps</doc>
             <type name="Gst.Caps" c:type="GstCaps*"/>
           </parameter>
         </parameters>
       </method>
       <method name="bandwidths_len"
               c:identifier="gst_sdp_media_bandwidths_len">
-        <doc xml:space="preserve">Get the number of bandwidth fields in @media.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the number of bandwidths in @media.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="2556">Get the number of bandwidth fields in @media.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="679"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="2562">the number of bandwidths in @media.</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="media" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMedia</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2558">a #GstSDPMedia</doc>
             <type name="SDPMedia" c:type="const GstSDPMedia*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="connections_len"
               c:identifier="gst_sdp_media_connections_len">
-        <doc xml:space="preserve">Get the number of connection fields in @media.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the number of connections in @media.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="2406">Get the number of connection fields in @media.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="653"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="2412">the number of connections in @media.</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="media" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMedia</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2408">a #GstSDPMedia</doc>
             <type name="SDPMedia" c:type="const GstSDPMedia*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="copy" c:identifier="gst_sdp_media_copy" version="1.2">
-        <doc xml:space="preserve">Allocate a new copy of @media and store the result in @copy. The value in
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="1897">Allocate a new copy of @media and store the result in @copy. The value in
 @copy should be release with gst_sdp_media_free function.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="593"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstSDPResult</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="1905">a #GstSDPResult</doc>
           <type name="SDPResult" c:type="GstSDPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="media" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMedia</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1899">a #GstSDPMedia</doc>
             <type name="SDPMedia" c:type="const GstSDPMedia*"/>
           </instance-parameter>
           <parameter name="copy"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">pointer to new #GstSDPMedia</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1900">pointer to new #GstSDPMedia</doc>
             <type name="SDPMedia" c:type="GstSDPMedia**"/>
           </parameter>
         </parameters>
       </method>
       <method name="formats_len" c:identifier="gst_sdp_media_formats_len">
-        <doc xml:space="preserve">Get the number of formats in @media.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the number of formats in @media.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="2169">Get the number of formats in @media.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="623"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="2175">the number of formats in @media.</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="media" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMedia</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2171">a #GstSDPMedia</doc>
             <type name="SDPMedia" c:type="const GstSDPMedia*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="free" c:identifier="gst_sdp_media_free">
-        <doc xml:space="preserve">Free all resources allocated by @media. @media should not be used anymore after
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="1876">Free all resources allocated by @media. @media should not be used anymore after
 this function. This function should be used when @media was dynamically
 allocated with gst_sdp_media_new().</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="590"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstSDPResult.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="1884">a #GstSDPResult.</doc>
           <type name="SDPResult" c:type="GstSDPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="media" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMedia</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1878">a #GstSDPMedia</doc>
             <type name="SDPMedia" c:type="GstSDPMedia*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_attribute" c:identifier="gst_sdp_media_get_attribute">
-        <doc xml:space="preserve">Get the attribute at position @idx in @media.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the #GstSDPAttribute at position @idx.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="2779">Get the attribute at position @idx in @media.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="713"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="2786">the #GstSDPAttribute at position @idx.</doc>
           <type name="SDPAttribute" c:type="const GstSDPAttribute*"/>
         </return-value>
         <parameters>
           <instance-parameter name="media" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMedia</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2781">a #GstSDPMedia</doc>
             <type name="SDPMedia" c:type="const GstSDPMedia*"/>
           </instance-parameter>
           <parameter name="idx" transfer-ownership="none">
-            <doc xml:space="preserve">an index</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2782">an index</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_attribute_val"
               c:identifier="gst_sdp_media_get_attribute_val">
-        <doc xml:space="preserve">Get the first attribute value for @key in @media.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the first attribute value for @key.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="2830">Get the first attribute value for @key in @media.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="716"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="2837">the first attribute value for @key.</doc>
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
         <parameters>
           <instance-parameter name="media" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMedia</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2832">a #GstSDPMedia</doc>
             <type name="SDPMedia" c:type="const GstSDPMedia*"/>
           </instance-parameter>
           <parameter name="key" transfer-ownership="none">
-            <doc xml:space="preserve">a key</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2833">a key</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_attribute_val_n"
               c:identifier="gst_sdp_media_get_attribute_val_n">
-        <doc xml:space="preserve">Get the @nth attribute value for @key in @media.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the @nth attribute value.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="2797">Get the @nth attribute value for @key in @media.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="719"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="2805">the @nth attribute value.</doc>
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
         <parameters>
           <instance-parameter name="media" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMedia</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2799">a #GstSDPMedia</doc>
             <type name="SDPMedia" c:type="const GstSDPMedia*"/>
           </instance-parameter>
           <parameter name="key" transfer-ownership="none">
-            <doc xml:space="preserve">a key</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2800">a key</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="nth" transfer-ownership="none">
-            <doc xml:space="preserve">an index</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2801">an index</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_bandwidth" c:identifier="gst_sdp_media_get_bandwidth">
-        <doc xml:space="preserve">Get the bandwidth at position @idx in @media.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the #GstSDPBandwidth at position @idx.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="2572">Get the bandwidth at position @idx in @media.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="682"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="2579">the #GstSDPBandwidth at position @idx.</doc>
           <type name="SDPBandwidth" c:type="const GstSDPBandwidth*"/>
         </return-value>
         <parameters>
           <instance-parameter name="media" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMedia</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2574">a #GstSDPMedia</doc>
             <type name="SDPMedia" c:type="const GstSDPMedia*"/>
           </instance-parameter>
           <parameter name="idx" transfer-ownership="none">
-            <doc xml:space="preserve">an index</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2575">an index</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
@@ -2016,156 +3008,244 @@ allocated with gst_sdp_media_new().</doc>
       <method name="get_caps_from_media"
               c:identifier="gst_sdp_media_get_caps_from_media"
               version="1.8">
-        <doc xml:space="preserve">Mapping of caps from SDP fields:
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="3543">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)];...</doc>
+a=fmtp:(payload) (param)[=(value)];...
+
+Note that the extmap attribute is set only by gst_sdp_media_attributes_to_caps().</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="738"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a #GstCaps, or %NULL if an error happened</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="3558">a #GstCaps, or %NULL if an error happened</doc>
           <type name="Gst.Caps" c:type="GstCaps*"/>
         </return-value>
         <parameters>
           <instance-parameter name="media" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMedia</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="3545">a #GstSDPMedia</doc>
             <type name="SDPMedia" c:type="const GstSDPMedia*"/>
           </instance-parameter>
           <parameter name="pt" transfer-ownership="none">
-            <doc xml:space="preserve">a payload type</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="3546">a payload type</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_connection"
               c:identifier="gst_sdp_media_get_connection">
-        <doc xml:space="preserve">Get the connection at position @idx in @media.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the #GstSDPConnection at position @idx.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="2422">Get the connection at position @idx in @media.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="656"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="2429">the #GstSDPConnection at position @idx.</doc>
           <type name="SDPConnection" c:type="const GstSDPConnection*"/>
         </return-value>
         <parameters>
           <instance-parameter name="media" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMedia</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2424">a #GstSDPMedia</doc>
             <type name="SDPMedia" c:type="const GstSDPMedia*"/>
           </instance-parameter>
           <parameter name="idx" transfer-ownership="none">
-            <doc xml:space="preserve">an index</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2425">an index</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_format" c:identifier="gst_sdp_media_get_format">
-        <doc xml:space="preserve">Get the format information at position @idx in @media.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the format at position @idx.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="2185">Get the format information at position @idx in @media.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="626"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="2192">the format at position @idx.</doc>
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
         <parameters>
           <instance-parameter name="media" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMedia</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2187">a #GstSDPMedia</doc>
             <type name="SDPMedia" c:type="const GstSDPMedia*"/>
           </instance-parameter>
           <parameter name="idx" transfer-ownership="none">
-            <doc xml:space="preserve">an index</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2188">an index</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_information"
               c:identifier="gst_sdp_media_get_information">
-        <doc xml:space="preserve">Get the information of @media</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the information of @media.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="2313">Get the information of @media</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="645"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="2319">the information of @media.</doc>
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
         <parameters>
           <instance-parameter name="media" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMedia</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2315">a #GstSDPMedia</doc>
             <type name="SDPMedia" c:type="const GstSDPMedia*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_key" c:identifier="gst_sdp_media_get_key">
-        <doc xml:space="preserve">Get the encryption information from @media.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstSDPKey.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="2722">Get the encryption information from @media.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="702"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="2728">a #GstSDPKey.</doc>
           <type name="SDPKey" c:type="const GstSDPKey*"/>
         </return-value>
         <parameters>
           <instance-parameter name="media" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMedia</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2724">a #GstSDPMedia</doc>
             <type name="SDPMedia" c:type="const GstSDPMedia*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_media" c:identifier="gst_sdp_media_get_media">
-        <doc xml:space="preserve">Get the media description of @media.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the media description.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="2043">Get the media description of @media.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="601"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="2049">the media description.</doc>
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
         <parameters>
           <instance-parameter name="media" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMedia</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2045">a #GstSDPMedia</doc>
             <type name="SDPMedia" c:type="const GstSDPMedia*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_num_ports" c:identifier="gst_sdp_media_get_num_ports">
-        <doc xml:space="preserve">Get the number of ports for @media.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the number of ports for @media.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="2096">Get the number of ports for @media.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="610"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="2102">the number of ports for @media.</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="media" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMedia</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2098">a #GstSDPMedia</doc>
             <type name="SDPMedia" c:type="const GstSDPMedia*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_port" c:identifier="gst_sdp_media_get_port">
-        <doc xml:space="preserve">Get the port number for @media.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the port number of @media.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="2080">Get the port number for @media.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="607"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="2086">the port number of @media.</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="media" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMedia</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2082">a #GstSDPMedia</doc>
             <type name="SDPMedia" c:type="const GstSDPMedia*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_proto" c:identifier="gst_sdp_media_get_proto">
-        <doc xml:space="preserve">Get the transport protocol of @media</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the transport protocol of @media.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="2133">Get the transport protocol of @media</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="617"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="2139">the transport protocol of @media.</doc>
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
         <parameters>
           <instance-parameter name="media" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMedia</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2135">a #GstSDPMedia</doc>
             <type name="SDPMedia" c:type="const GstSDPMedia*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="init" c:identifier="gst_sdp_media_init">
-        <doc xml:space="preserve">Initialize @media so that its contents are as if it was freshly allocated
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="1820">Initialize @media so that its contents are as if it was freshly allocated
 with gst_sdp_media_new(). This function is mostly used to initialize a media
 allocated on the stack. gst_sdp_media_uninit() undoes this operation.
 
 When this function is invoked on newly allocated data (with malloc or on the
 stack), its contents should be set to 0 before calling this function.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="584"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstSDPResult.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="1831">a #GstSDPResult.</doc>
           <type name="SDPResult" c:type="GstSDPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="media" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMedia</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1822">a #GstSDPMedia</doc>
             <type name="SDPMedia" c:type="GstSDPMedia*"/>
           </instance-parameter>
         </parameters>
@@ -2173,23 +3253,35 @@ stack), its contents should be set to 0 before calling this function.</doc>
       <method name="insert_attribute"
               c:identifier="gst_sdp_media_insert_attribute"
               version="1.2">
-        <doc xml:space="preserve">Insert the attribute to @media at @idx. When @idx is -1,
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="2848">Insert the attribute to @media at @idx. When @idx is -1,
 the attribute is appended.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="723"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">#GST_SDP_OK.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="2857">#GST_SDP_OK.</doc>
           <type name="SDPResult" c:type="GstSDPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="media" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMedia</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2850">a #GstSDPMedia</doc>
             <type name="SDPMedia" c:type="GstSDPMedia*"/>
           </instance-parameter>
           <parameter name="idx" transfer-ownership="none">
-            <doc xml:space="preserve">an index</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2851">an index</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="attr" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPAttribute</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2852">a #GstSDPAttribute</doc>
             <type name="SDPAttribute" c:type="GstSDPAttribute*"/>
           </parameter>
         </parameters>
@@ -2197,23 +3289,35 @@ the attribute is appended.</doc>
       <method name="insert_bandwidth"
               c:identifier="gst_sdp_media_insert_bandwidth"
               version="1.2">
-        <doc xml:space="preserve">Insert the bandwidth information to @media at @idx. When @idx is -1,
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="2589">Insert the bandwidth information to @media at @idx. When @idx is -1,
 the bandwidth is appended.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="685"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">#GST_SDP_OK.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="2598">#GST_SDP_OK.</doc>
           <type name="SDPResult" c:type="GstSDPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="media" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMedia</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2591">a #GstSDPMedia</doc>
             <type name="SDPMedia" c:type="GstSDPMedia*"/>
           </instance-parameter>
           <parameter name="idx" transfer-ownership="none">
-            <doc xml:space="preserve">an index</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2592">an index</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="bw" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPBandwidth</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2593">a #GstSDPBandwidth</doc>
             <type name="SDPBandwidth" c:type="GstSDPBandwidth*"/>
           </parameter>
         </parameters>
@@ -2221,23 +3325,35 @@ the bandwidth is appended.</doc>
       <method name="insert_connection"
               c:identifier="gst_sdp_media_insert_connection"
               version="1.2">
-        <doc xml:space="preserve">Insert the connection information to @media at @idx. When @idx is -1,
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="2440">Insert the connection information to @media at @idx. When @idx is -1,
 the connection is appended.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="659"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">#GST_SDP_OK.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="2449">#GST_SDP_OK.</doc>
           <type name="SDPResult" c:type="GstSDPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="media" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMedia</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2442">a #GstSDPMedia</doc>
             <type name="SDPMedia" c:type="GstSDPMedia*"/>
           </instance-parameter>
           <parameter name="idx" transfer-ownership="none">
-            <doc xml:space="preserve">an index</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2443">an index</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="conn" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPConnection</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2444">a #GstSDPConnection</doc>
             <type name="SDPConnection" c:type="GstSDPConnection*"/>
           </parameter>
         </parameters>
@@ -2245,23 +3361,35 @@ the connection is appended.</doc>
       <method name="insert_format"
               c:identifier="gst_sdp_media_insert_format"
               version="1.2">
-        <doc xml:space="preserve">Insert the format information to @media at @idx. When @idx is -1,
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="2204">Insert the format information to @media at @idx. When @idx is -1,
 the format is appended.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="629"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">#GST_SDP_OK.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="2213">#GST_SDP_OK.</doc>
           <type name="SDPResult" c:type="GstSDPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="media" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMedia</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2206">a #GstSDPMedia</doc>
             <type name="SDPMedia" c:type="GstSDPMedia*"/>
           </instance-parameter>
           <parameter name="idx" transfer-ownership="none">
-            <doc xml:space="preserve">an index</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2207">an index</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="format" transfer-ownership="none">
-            <doc xml:space="preserve">the format</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2208">the format</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
@@ -2269,22 +3397,32 @@ the format is appended.</doc>
       <method name="parse_keymgmt"
               c:identifier="gst_sdp_media_parse_keymgmt"
               version="1.8.1">
-        <doc xml:space="preserve">Creates a new #GstMIKEYMessage after parsing the key-mgmt attribute
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="4071">Creates a new #GstMIKEYMessage after parsing the key-mgmt attribute
 from a #GstSDPMedia.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="750"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstSDPResult.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="4079">a #GstSDPResult.</doc>
           <type name="SDPResult" c:type="GstSDPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="media" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMedia</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="4073">a #GstSDPMedia</doc>
             <type name="SDPMedia" c:type="const GstSDPMedia*"/>
           </instance-parameter>
           <parameter name="mikey"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">pointer to new #GstMIKEYMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="4074">pointer to new #GstMIKEYMessage</doc>
             <type name="MIKEYMessage" c:type="GstMIKEYMessage**"/>
           </parameter>
         </parameters>
@@ -2292,18 +3430,28 @@ from a #GstSDPMedia.</doc>
       <method name="remove_attribute"
               c:identifier="gst_sdp_media_remove_attribute"
               version="1.2">
-        <doc xml:space="preserve">Remove the attribute in @media at @idx.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">#GST_SDP_OK.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="2907">Remove the attribute in @media at @idx.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="731"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="2914">#GST_SDP_OK.</doc>
           <type name="SDPResult" c:type="GstSDPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="media" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMedia</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2909">a #GstSDPMedia</doc>
             <type name="SDPMedia" c:type="GstSDPMedia*"/>
           </instance-parameter>
           <parameter name="idx" transfer-ownership="none">
-            <doc xml:space="preserve">an index</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2910">an index</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
@@ -2311,18 +3459,28 @@ from a #GstSDPMedia.</doc>
       <method name="remove_bandwidth"
               c:identifier="gst_sdp_media_remove_bandwidth"
               version="1.2">
-        <doc xml:space="preserve">Remove the bandwidth information in @media at @idx.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">#GST_SDP_OK.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="2647">Remove the bandwidth information in @media at @idx.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="693"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="2654">#GST_SDP_OK.</doc>
           <type name="SDPResult" c:type="GstSDPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="media" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMedia</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2649">a #GstSDPMedia</doc>
             <type name="SDPMedia" c:type="GstSDPMedia*"/>
           </instance-parameter>
           <parameter name="idx" transfer-ownership="none">
-            <doc xml:space="preserve">an index</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2650">an index</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
@@ -2330,18 +3488,28 @@ from a #GstSDPMedia.</doc>
       <method name="remove_connection"
               c:identifier="gst_sdp_media_remove_connection"
               version="1.2">
-        <doc xml:space="preserve">Remove the connection information in @media at @idx.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">#GST_SDP_OK.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="2499">Remove the connection information in @media at @idx.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="667"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="2506">#GST_SDP_OK.</doc>
           <type name="SDPResult" c:type="GstSDPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="media" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMedia</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2501">a #GstSDPMedia</doc>
             <type name="SDPMedia" c:type="GstSDPMedia*"/>
           </instance-parameter>
           <parameter name="idx" transfer-ownership="none">
-            <doc xml:space="preserve">an index</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2502">an index</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
@@ -2349,18 +3517,28 @@ from a #GstSDPMedia.</doc>
       <method name="remove_format"
               c:identifier="gst_sdp_media_remove_format"
               version="1.2">
-        <doc xml:space="preserve">Remove the format information in @media at @idx.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">#GST_SDP_OK.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="2264">Remove the format information in @media at @idx.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="637"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="2271">#GST_SDP_OK.</doc>
           <type name="SDPResult" c:type="GstSDPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="media" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMedia</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2266">a #GstSDPMedia</doc>
             <type name="SDPMedia" c:type="GstSDPMedia*"/>
           </instance-parameter>
           <parameter name="idx" transfer-ownership="none">
-            <doc xml:space="preserve">an index</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2267">an index</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
@@ -2368,22 +3546,34 @@ from a #GstSDPMedia.</doc>
       <method name="replace_attribute"
               c:identifier="gst_sdp_media_replace_attribute"
               version="1.2">
-        <doc xml:space="preserve">Replace the attribute in @media at @idx with @attr.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">#GST_SDP_OK.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="2878">Replace the attribute in @media at @idx with @attr.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="727"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="2886">#GST_SDP_OK.</doc>
           <type name="SDPResult" c:type="GstSDPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="media" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMedia</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2880">a #GstSDPMedia</doc>
             <type name="SDPMedia" c:type="GstSDPMedia*"/>
           </instance-parameter>
           <parameter name="idx" transfer-ownership="none">
-            <doc xml:space="preserve">an index</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2881">an index</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="attr" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPAttribute</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2882">a #GstSDPAttribute</doc>
             <type name="SDPAttribute" c:type="GstSDPAttribute*"/>
           </parameter>
         </parameters>
@@ -2391,22 +3581,34 @@ from a #GstSDPMedia.</doc>
       <method name="replace_bandwidth"
               c:identifier="gst_sdp_media_replace_bandwidth"
               version="1.2">
-        <doc xml:space="preserve">Replace the bandwidth information in @media at @idx with @bw.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">#GST_SDP_OK.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="2619">Replace the bandwidth information in @media at @idx with @bw.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="689"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="2627">#GST_SDP_OK.</doc>
           <type name="SDPResult" c:type="GstSDPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="media" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMedia</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2621">a #GstSDPMedia</doc>
             <type name="SDPMedia" c:type="GstSDPMedia*"/>
           </instance-parameter>
           <parameter name="idx" transfer-ownership="none">
-            <doc xml:space="preserve">an index</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2622">an index</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="bw" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPBandwidth</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2623">a #GstSDPBandwidth</doc>
             <type name="SDPBandwidth" c:type="GstSDPBandwidth*"/>
           </parameter>
         </parameters>
@@ -2414,22 +3616,34 @@ from a #GstSDPMedia.</doc>
       <method name="replace_connection"
               c:identifier="gst_sdp_media_replace_connection"
               version="1.2">
-        <doc xml:space="preserve">Replace the connection information in @media at @idx with @conn.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">#GST_SDP_OK.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="2470">Replace the connection information in @media at @idx with @conn.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="663"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="2478">#GST_SDP_OK.</doc>
           <type name="SDPResult" c:type="GstSDPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="media" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMedia</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2472">a #GstSDPMedia</doc>
             <type name="SDPMedia" c:type="GstSDPMedia*"/>
           </instance-parameter>
           <parameter name="idx" transfer-ownership="none">
-            <doc xml:space="preserve">an index</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2473">an index</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="conn" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPConnection</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2474">a #GstSDPConnection</doc>
             <type name="SDPConnection" c:type="GstSDPConnection*"/>
           </parameter>
         </parameters>
@@ -2437,139 +3651,219 @@ from a #GstSDPMedia.</doc>
       <method name="replace_format"
               c:identifier="gst_sdp_media_replace_format"
               version="1.2">
-        <doc xml:space="preserve">Replace the format information in @media at @idx with @format.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">#GST_SDP_OK.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="2236">Replace the format information in @media at @idx with @format.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="633"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="2244">#GST_SDP_OK.</doc>
           <type name="SDPResult" c:type="GstSDPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="media" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMedia</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2238">a #GstSDPMedia</doc>
             <type name="SDPMedia" c:type="GstSDPMedia*"/>
           </instance-parameter>
           <parameter name="idx" transfer-ownership="none">
-            <doc xml:space="preserve">an index</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2239">an index</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="format" transfer-ownership="none">
-            <doc xml:space="preserve">the format</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2240">the format</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_information"
               c:identifier="gst_sdp_media_set_information">
-        <doc xml:space="preserve">Set the media information of @media to @information.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">#GST_SDP_OK.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="2329">Set the media information of @media to @information.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="648"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="2336">#GST_SDP_OK.</doc>
           <type name="SDPResult" c:type="GstSDPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="media" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMedia</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2331">a #GstSDPMedia</doc>
             <type name="SDPMedia" c:type="GstSDPMedia*"/>
           </instance-parameter>
           <parameter name="information" transfer-ownership="none">
-            <doc xml:space="preserve">the media information</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2332">the media information</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_key" c:identifier="gst_sdp_media_set_key">
-        <doc xml:space="preserve">Adds the encryption information to @media.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstSDPResult.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="2698">Adds the encryption information to @media.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="705"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="2706">a #GstSDPResult.</doc>
           <type name="SDPResult" c:type="GstSDPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="media" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMedia</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2700">a #GstSDPMedia</doc>
             <type name="SDPMedia" c:type="GstSDPMedia*"/>
           </instance-parameter>
           <parameter name="type" transfer-ownership="none">
-            <doc xml:space="preserve">the encryption type</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2701">the encryption type</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="data" transfer-ownership="none">
-            <doc xml:space="preserve">the encryption data</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2702">the encryption data</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_media" c:identifier="gst_sdp_media_set_media">
-        <doc xml:space="preserve">Set the media description of @media to @med.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">#GST_SDP_OK.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="2059">Set the media description of @media to @med.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="604"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="2066">#GST_SDP_OK.</doc>
           <type name="SDPResult" c:type="GstSDPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="media" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMedia</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2061">a #GstSDPMedia</doc>
             <type name="SDPMedia" c:type="GstSDPMedia*"/>
           </instance-parameter>
           <parameter name="med" transfer-ownership="none">
-            <doc xml:space="preserve">the media description</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2062">the media description</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_port_info" c:identifier="gst_sdp_media_set_port_info">
-        <doc xml:space="preserve">Set the port information in @media.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">#GST_SDP_OK.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="2112">Set the port information in @media.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="613"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="2120">#GST_SDP_OK.</doc>
           <type name="SDPResult" c:type="GstSDPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="media" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMedia</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2114">a #GstSDPMedia</doc>
             <type name="SDPMedia" c:type="GstSDPMedia*"/>
           </instance-parameter>
           <parameter name="port" transfer-ownership="none">
-            <doc xml:space="preserve">the port number</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2115">the port number</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="num_ports" transfer-ownership="none">
-            <doc xml:space="preserve">the number of ports</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2116">the number of ports</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_proto" c:identifier="gst_sdp_media_set_proto">
-        <doc xml:space="preserve">Set the media transport protocol of @media to @proto.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">#GST_SDP_OK.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="2149">Set the media transport protocol of @media to @proto.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="620"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="2156">#GST_SDP_OK.</doc>
           <type name="SDPResult" c:type="GstSDPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="media" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMedia</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2151">a #GstSDPMedia</doc>
             <type name="SDPMedia" c:type="GstSDPMedia*"/>
           </instance-parameter>
           <parameter name="proto" transfer-ownership="none">
-            <doc xml:space="preserve">the media transport protocol</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="2152">the media transport protocol</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </method>
       <method name="uninit" c:identifier="gst_sdp_media_uninit">
-        <doc xml:space="preserve">Free all resources allocated in @media. @media should not be used anymore after
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="1852">Free all resources allocated in @media. @media should not be used anymore after
 this function. This function should be used when @media was allocated on the
 stack and initialized with gst_sdp_media_init().</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="587"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstSDPResult.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="1860">a #GstSDPResult.</doc>
           <type name="SDPResult" c:type="GstSDPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="media" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMedia</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1854">a #GstSDPMedia</doc>
             <type name="SDPMedia" c:type="GstSDPMedia*"/>
           </instance-parameter>
         </parameters>
       </method>
       <function name="new" c:identifier="gst_sdp_media_new">
-        <doc xml:space="preserve">Allocate a new GstSDPMedia and store the result in @media.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstSDPResult.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="1798">Allocate a new GstSDPMedia and store the result in @media.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="581"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="1804">a #GstSDPResult.</doc>
           <type name="SDPResult" c:type="GstSDPResult"/>
         </return-value>
         <parameters>
@@ -2577,7 +3871,9 @@ stack and initialized with gst_sdp_media_init().</doc>
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">pointer to new #GstSDPMedia</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1800">pointer to new #GstSDPMedia</doc>
             <type name="SDPMedia" c:type="GstSDPMedia**"/>
           </parameter>
         </parameters>
@@ -2585,7 +3881,9 @@ stack and initialized with gst_sdp_media_init().</doc>
       <function name="set_media_from_caps"
                 c:identifier="gst_sdp_media_set_media_from_caps"
                 version="1.8">
-        <doc xml:space="preserve">Mapping of caps to SDP fields:
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="3742">Mapping of caps to SDP fields:
 
 a=rtpmap:(payload) (encoding_name) or (clock_rate)[or (encoding_params)]
 
@@ -2593,18 +3891,28 @@ a=framesize:(payload) (width)-(height)
 
 a=fmtp:(payload) (param)[=(value)];...
 
-a=rtcp-fb:(payload) (param1) [param2]...</doc>
+a=rtcp-fb:(payload) (param1) [param2]...
+
+a=extmap:(id)[/direction] (extensionname) (extensionattributes)</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="741"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstSDPResult.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="3759">a #GstSDPResult.</doc>
           <type name="SDPResult" c:type="GstSDPResult"/>
         </return-value>
         <parameters>
           <parameter name="caps" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstCaps</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="3744">a #GstCaps</doc>
             <type name="Gst.Caps" c:type="const GstCaps*"/>
           </parameter>
           <parameter name="media" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMedia</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="3745">a #GstSDPMedia</doc>
             <type name="SDPMedia" c:type="GstSDPMedia*"/>
           </parameter>
         </parameters>
@@ -2615,199 +3923,298 @@ a=rtcp-fb:(payload) (param1) [param2]...</doc>
             glib:type-name="GstSDPMessage"
             glib:get-type="gst_sdp_message_get_type"
             c:symbol-prefix="sdp_message">
-      <doc xml:space="preserve">The GstSDPMessage helper functions makes it easy to parse and create SDP
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/sdp/gstsdpmessage.c"
+           line="43">The GstSDPMessage helper functions makes it easy to parse and create SDP
 messages.</doc>
+      <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h" line="310"/>
       <field name="version" writable="1">
-        <doc xml:space="preserve">the protocol version</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.h"
+             line="278">the protocol version</doc>
         <type name="utf8" c:type="gchar*"/>
       </field>
       <field name="origin" writable="1">
-        <doc xml:space="preserve">owner/creator and session identifier</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.h"
+             line="279">owner/creator and session identifier</doc>
         <type name="SDPOrigin" c:type="GstSDPOrigin"/>
       </field>
       <field name="session_name" writable="1">
-        <doc xml:space="preserve">session name</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.h"
+             line="280">session name</doc>
         <type name="utf8" c:type="gchar*"/>
       </field>
       <field name="information" writable="1">
-        <doc xml:space="preserve">session information</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.h"
+             line="281">session information</doc>
         <type name="utf8" c:type="gchar*"/>
       </field>
       <field name="uri" writable="1">
-        <doc xml:space="preserve">URI of description</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.h"
+             line="282">URI of description</doc>
         <type name="utf8" c:type="gchar*"/>
       </field>
       <field name="emails" writable="1">
-        <doc xml:space="preserve">array of #gchar with email addresses</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.h"
+             line="283">array of #gchar with email addresses</doc>
         <array name="GLib.Array" c:type="GArray*">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
       <field name="phones" writable="1">
-        <doc xml:space="preserve">array of #gchar with phone numbers</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.h"
+             line="284">array of #gchar with phone numbers</doc>
         <array name="GLib.Array" c:type="GArray*">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
       <field name="connection" writable="1">
-        <doc xml:space="preserve">connection information for the session</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.h"
+             line="285">connection information for the session</doc>
         <type name="SDPConnection" c:type="GstSDPConnection"/>
       </field>
       <field name="bandwidths" writable="1">
-        <doc xml:space="preserve">array of #GstSDPBandwidth with bandwidth information</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.h"
+             line="286">array of #GstSDPBandwidth with bandwidth information</doc>
         <array name="GLib.Array" c:type="GArray*">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
       <field name="times" writable="1">
-        <doc xml:space="preserve">array of #GstSDPTime with time descriptions</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.h"
+             line="287">array of #GstSDPTime with time descriptions</doc>
         <array name="GLib.Array" c:type="GArray*">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
       <field name="zones" writable="1">
-        <doc xml:space="preserve">array of #GstSDPZone with time zone adjustments</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.h"
+             line="288">array of #GstSDPZone with time zone adjustments</doc>
         <array name="GLib.Array" c:type="GArray*">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
       <field name="key" writable="1">
-        <doc xml:space="preserve">encryption key</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.h"
+             line="289">encryption key</doc>
         <type name="SDPKey" c:type="GstSDPKey"/>
       </field>
       <field name="attributes" writable="1">
-        <doc xml:space="preserve">array of #GstSDPAttribute with session attributes</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.h"
+             line="290">array of #GstSDPAttribute with session attributes</doc>
         <array name="GLib.Array" c:type="GArray*">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
       <field name="medias" writable="1">
-        <doc xml:space="preserve">array of #GstSDPMedia with media descriptions</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.h"
+             line="291">array of #GstSDPMedia with media descriptions</doc>
         <array name="GLib.Array" c:type="GArray*">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
       <method name="add_attribute"
               c:identifier="gst_sdp_message_add_attribute">
-        <doc xml:space="preserve">Add the attribute with @key and @value to @msg.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">@GST_SDP_OK.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="1721">Add the attribute with @key and @value to @msg.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="561"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="1729">@GST_SDP_OK.</doc>
           <type name="SDPResult" c:type="GstSDPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1723">a #GstSDPMessage</doc>
             <type name="SDPMessage" c:type="GstSDPMessage*"/>
           </instance-parameter>
           <parameter name="key" transfer-ownership="none">
-            <doc xml:space="preserve">the key</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1724">the key</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="value"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">the value</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1725">the value</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </method>
       <method name="add_bandwidth"
               c:identifier="gst_sdp_message_add_bandwidth">
-        <doc xml:space="preserve">Add the specified bandwidth information to @msg.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstSDPResult.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="1216">Add the specified bandwidth information to @msg.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="475"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="1224">a #GstSDPResult.</doc>
           <type name="SDPResult" c:type="GstSDPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1218">a #GstSDPMessage</doc>
             <type name="SDPMessage" c:type="GstSDPMessage*"/>
           </instance-parameter>
           <parameter name="bwtype" transfer-ownership="none">
-            <doc xml:space="preserve">the bandwidth modifier type</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1219">the bandwidth modifier type</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="bandwidth" transfer-ownership="none">
-            <doc xml:space="preserve">the bandwidth in kilobits per second</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1220">the bandwidth in kilobits per second</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="add_email" c:identifier="gst_sdp_message_add_email">
-        <doc xml:space="preserve">Add @email to the list of emails in @msg.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstSDPResult.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="975">Add @email to the list of emails in @msg.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="422"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="982">a #GstSDPResult.</doc>
           <type name="SDPResult" c:type="GstSDPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="977">a #GstSDPMessage</doc>
             <type name="SDPMessage" c:type="GstSDPMessage*"/>
           </instance-parameter>
           <parameter name="email" transfer-ownership="none">
-            <doc xml:space="preserve">an email</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="978">an email</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </method>
       <method name="add_media" c:identifier="gst_sdp_message_add_media">
-        <doc xml:space="preserve">Adds @media to the array of medias in @msg. This function takes ownership of
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="1766">Adds @media to the array of medias in @msg. This function takes ownership of
 the contents of @media so that @media will have to be reinitialized with
 gst_sdp_media_init() before it can be used again.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="573"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstSDPResult.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="1775">a #GstSDPResult.</doc>
           <type name="SDPResult" c:type="GstSDPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1768">a #GstSDPMessage</doc>
             <type name="SDPMessage" c:type="GstSDPMessage*"/>
           </instance-parameter>
           <parameter name="media" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMedia to add</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1769">a #GstSDPMedia to add</doc>
             <type name="SDPMedia" c:type="GstSDPMedia*"/>
           </parameter>
         </parameters>
       </method>
       <method name="add_phone" c:identifier="gst_sdp_message_add_phone">
-        <doc xml:space="preserve">Add @phone to the list of phones in @msg.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstSDPResult.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="1048">Add @phone to the list of phones in @msg.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="444"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="1055">a #GstSDPResult.</doc>
           <type name="SDPResult" c:type="GstSDPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1050">a #GstSDPMessage</doc>
             <type name="SDPMessage" c:type="GstSDPMessage*"/>
           </instance-parameter>
           <parameter name="phone" transfer-ownership="none">
-            <doc xml:space="preserve">a phone</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1051">a phone</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </method>
       <method name="add_time" c:identifier="gst_sdp_message_add_time">
-        <doc xml:space="preserve">Add time information @start and @stop to @msg.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstSDPResult.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="1363">Add time information @start and @stop to @msg.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="499"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="1372">a #GstSDPResult.</doc>
           <type name="SDPResult" c:type="GstSDPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1365">a #GstSDPMessage</doc>
             <type name="SDPMessage" c:type="GstSDPMessage*"/>
           </instance-parameter>
           <parameter name="start" transfer-ownership="none">
-            <doc xml:space="preserve">the start time</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1366">the start time</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="stop" transfer-ownership="none">
-            <doc xml:space="preserve">the stop time</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1367">the stop time</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="repeat" transfer-ownership="none">
-            <doc xml:space="preserve">the repeat times</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1368">the repeat times</doc>
             <array c:type="const gchar**">
               <type name="utf8" c:type="gchar*"/>
             </array>
@@ -2815,49 +4222,77 @@ gst_sdp_media_init() before it can be used again.</doc>
         </parameters>
       </method>
       <method name="add_zone" c:identifier="gst_sdp_message_add_zone">
-        <doc xml:space="preserve">Add time zone information to @msg.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstSDPResult.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="1498">Add time zone information to @msg.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="522"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="1506">a #GstSDPResult.</doc>
           <type name="SDPResult" c:type="GstSDPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1500">a #GstSDPMessage</doc>
             <type name="SDPMessage" c:type="GstSDPMessage*"/>
           </instance-parameter>
           <parameter name="adj_time" transfer-ownership="none">
-            <doc xml:space="preserve">the NTP time that a time zone adjustment happens</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1501">the NTP time that a time zone adjustment happens</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="typed_time" transfer-ownership="none">
-            <doc xml:space="preserve">the offset from the time when the session was first scheduled</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1502">the offset from the time when the session was first scheduled</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </method>
       <method name="as_text" c:identifier="gst_sdp_message_as_text">
-        <doc xml:space="preserve">Convert the contents of @msg to a text string.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="485">Convert the contents of @msg to a text string.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="341"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">A dynamically allocated string representing the SDP description.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="491">A dynamically allocated string representing the SDP description.</doc>
           <type name="utf8" c:type="gchar*"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="487">a #GstSDPMessage</doc>
             <type name="SDPMessage" c:type="const GstSDPMessage*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="attributes_len"
               c:identifier="gst_sdp_message_attributes_len">
-        <doc xml:space="preserve">Get the number of attributes in @msg.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the number of attributes in @msg.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="1604">Get the number of attributes in @msg.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="536"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="1610">the number of attributes in @msg.</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1606">a #GstSDPMessage</doc>
             <type name="SDPMessage" c:type="const GstSDPMessage*"/>
           </instance-parameter>
         </parameters>
@@ -2865,367 +4300,575 @@ gst_sdp_media_init() before it can be used again.</doc>
       <method name="attributes_to_caps"
               c:identifier="gst_sdp_message_attributes_to_caps"
               version="1.8">
-        <doc xml:space="preserve">Mapping of attributes of #GstSDPMessage to #GstCaps</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstSDPResult.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="4247">Mapping of attributes of #GstSDPMessage to #GstCaps</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="753"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="4254">a #GstSDPResult.</doc>
           <type name="SDPResult" c:type="GstSDPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="4249">a #GstSDPMessage</doc>
             <type name="SDPMessage" c:type="const GstSDPMessage*"/>
           </instance-parameter>
           <parameter name="caps" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstCaps</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="4250">a #GstCaps</doc>
             <type name="Gst.Caps" c:type="GstCaps*"/>
           </parameter>
         </parameters>
       </method>
       <method name="bandwidths_len"
               c:identifier="gst_sdp_message_bandwidths_len">
-        <doc xml:space="preserve">Get the number of bandwidth information in @msg.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the number of bandwidth information in @msg.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="1148">Get the number of bandwidth information in @msg.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="458"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="1154">the number of bandwidth information in @msg.</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1150">a #GstSDPMessage</doc>
             <type name="SDPMessage" c:type="const GstSDPMessage*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="copy" c:identifier="gst_sdp_message_copy" version="1.2">
-        <doc xml:space="preserve">Allocate a new copy of @msg and store the result in @copy. The value in
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="327">Allocate a new copy of @msg and store the result in @copy. The value in
 @copy should be release with gst_sdp_message_free function.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="335"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstSDPResult</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="335">a #GstSDPResult</doc>
           <type name="SDPResult" c:type="GstSDPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="329">a #GstSDPMessage</doc>
             <type name="SDPMessage" c:type="const GstSDPMessage*"/>
           </instance-parameter>
           <parameter name="copy"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">pointer to new #GstSDPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="330">pointer to new #GstSDPMessage</doc>
             <type name="SDPMessage" c:type="GstSDPMessage**"/>
           </parameter>
         </parameters>
       </method>
       <method name="dump" c:identifier="gst_sdp_message_dump">
-        <doc xml:space="preserve">Dump the parsed contents of @msg to stdout.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstSDPResult.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="3275">Dump the parsed contents of @msg to stdout.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="576"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="3281">a #GstSDPResult.</doc>
           <type name="SDPResult" c:type="GstSDPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="3277">a #GstSDPMessage</doc>
             <type name="SDPMessage" c:type="const GstSDPMessage*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="emails_len" c:identifier="gst_sdp_message_emails_len">
-        <doc xml:space="preserve">Get the number of emails in @msg.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the number of emails in @msg.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="913">Get the number of emails in @msg.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="405"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="919">the number of emails in @msg.</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="915">a #GstSDPMessage</doc>
             <type name="SDPMessage" c:type="const GstSDPMessage*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="free" c:identifier="gst_sdp_message_free">
-        <doc xml:space="preserve">Free all resources allocated by @msg. @msg should not be used anymore after
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="431">Free all resources allocated by @msg. @msg should not be used anymore after
 this function. This function should be used when @msg was dynamically
 allocated with gst_sdp_message_new().</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="332"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstSDPResult.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="439">a #GstSDPResult.</doc>
           <type name="SDPResult" c:type="GstSDPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="433">a #GstSDPMessage</doc>
             <type name="SDPMessage" c:type="GstSDPMessage*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_attribute"
               c:identifier="gst_sdp_message_get_attribute">
-        <doc xml:space="preserve">Get the attribute at position @idx in @msg.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the #GstSDPAttribute at position @idx.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="1614">Get the attribute at position @idx in @msg.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="539"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="1621">the #GstSDPAttribute at position @idx.</doc>
           <type name="SDPAttribute" c:type="const GstSDPAttribute*"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1616">a #GstSDPMessage</doc>
             <type name="SDPMessage" c:type="const GstSDPMessage*"/>
           </instance-parameter>
           <parameter name="idx" transfer-ownership="none">
-            <doc xml:space="preserve">the index</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1617">the index</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_attribute_val"
               c:identifier="gst_sdp_message_get_attribute_val">
-        <doc xml:space="preserve">Get the first attribute with key @key in @msg.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the attribute value of the first attribute with @key.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="1658">Get the first attribute with key @key in @msg.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="542"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="1665">the attribute value of the first attribute with @key.</doc>
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1660">a #GstSDPMessage</doc>
             <type name="SDPMessage" c:type="const GstSDPMessage*"/>
           </instance-parameter>
           <parameter name="key" transfer-ownership="none">
-            <doc xml:space="preserve">the key</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1661">the key</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_attribute_val_n"
               c:identifier="gst_sdp_message_get_attribute_val_n">
-        <doc xml:space="preserve">Get the @nth attribute with key @key in @msg.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the attribute value of the @nth attribute with @key.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="1625">Get the @nth attribute with key @key in @msg.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="546"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="1633">the attribute value of the @nth attribute with @key.</doc>
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1627">a #GstSDPMessage</doc>
             <type name="SDPMessage" c:type="const GstSDPMessage*"/>
           </instance-parameter>
           <parameter name="key" transfer-ownership="none">
-            <doc xml:space="preserve">the key</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1628">the key</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="nth" transfer-ownership="none">
-            <doc xml:space="preserve">the index</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1629">the index</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_bandwidth"
               c:identifier="gst_sdp_message_get_bandwidth">
-        <doc xml:space="preserve">Get the bandwidth at index @idx from @msg.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstSDPBandwidth.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="1157">Get the bandwidth at index @idx from @msg.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="461"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="1164">a #GstSDPBandwidth.</doc>
           <type name="SDPBandwidth" c:type="const GstSDPBandwidth*"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1159">a #GstSDPMessage</doc>
             <type name="SDPMessage" c:type="const GstSDPMessage*"/>
           </instance-parameter>
           <parameter name="idx" transfer-ownership="none">
-            <doc xml:space="preserve">the bandwidth index</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1160">the bandwidth index</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_connection"
               c:identifier="gst_sdp_message_get_connection">
-        <doc xml:space="preserve">Get the connection of @msg.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstSDPConnection. The result remains valid as long as @msg is valid.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="1089">Get the connection of @msg.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="449"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="1095">a #GstSDPConnection. The result remains valid as long as @msg is valid.</doc>
           <type name="SDPConnection" c:type="const GstSDPConnection*"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1091">a #GstSDPMessage</doc>
             <type name="SDPMessage" c:type="const GstSDPMessage*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_email" c:identifier="gst_sdp_message_get_email">
-        <doc xml:space="preserve">Get the email with number @idx from @msg.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the email at position @idx.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="922">Get the email with number @idx from @msg.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="408"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="929">the email at position @idx.</doc>
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="924">a #GstSDPMessage</doc>
             <type name="SDPMessage" c:type="const GstSDPMessage*"/>
           </instance-parameter>
           <parameter name="idx" transfer-ownership="none">
-            <doc xml:space="preserve">an email index</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="925">an email index</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_information"
               c:identifier="gst_sdp_message_get_information">
-        <doc xml:space="preserve">Get the information in @msg.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstSDPResult.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="884">Get the information in @msg.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="389"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="890">a #GstSDPResult.</doc>
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="886">a #GstSDPMessage</doc>
             <type name="SDPMessage" c:type="const GstSDPMessage*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_key" c:identifier="gst_sdp_message_get_key">
-        <doc xml:space="preserve">Get the encryption information from @msg.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstSDPKey.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="1544">Get the encryption information from @msg.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="528"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="1550">a #GstSDPKey.</doc>
           <type name="SDPKey" c:type="const GstSDPKey*"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1546">a #GstSDPMessage</doc>
             <type name="SDPMessage" c:type="const GstSDPMessage*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_media" c:identifier="gst_sdp_message_get_media">
-        <doc xml:space="preserve">Get the media description at index @idx in @msg.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstSDPMedia.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="1755">Get the media description at index @idx in @msg.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="570"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="1762">a #GstSDPMedia.</doc>
           <type name="SDPMedia" c:type="const GstSDPMedia*"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1757">a #GstSDPMessage</doc>
             <type name="SDPMessage" c:type="const GstSDPMessage*"/>
           </instance-parameter>
           <parameter name="idx" transfer-ownership="none">
-            <doc xml:space="preserve">the index</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1758">the index</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_origin" c:identifier="gst_sdp_message_get_origin">
-        <doc xml:space="preserve">Get the origin of @msg.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstSDPOrigin. The result remains valid as long as @msg is valid.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="839">Get the origin of @msg.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="370"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="845">a #GstSDPOrigin. The result remains valid as long as @msg is valid.</doc>
           <type name="SDPOrigin" c:type="const GstSDPOrigin*"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="841">a #GstSDPMessage</doc>
             <type name="SDPMessage" c:type="const GstSDPMessage*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_phone" c:identifier="gst_sdp_message_get_phone">
-        <doc xml:space="preserve">Get the phone with number @idx from @msg.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the phone at position @idx.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="995">Get the phone with number @idx from @msg.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="430"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="1002">the phone at position @idx.</doc>
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="997">a #GstSDPMessage</doc>
             <type name="SDPMessage" c:type="const GstSDPMessage*"/>
           </instance-parameter>
           <parameter name="idx" transfer-ownership="none">
-            <doc xml:space="preserve">a phone index</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="998">a phone index</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_session_name"
               c:identifier="gst_sdp_message_get_session_name">
-        <doc xml:space="preserve">Get the session name in @msg.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstSDPResult.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="865">Get the session name in @msg.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="381"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="871">a #GstSDPResult.</doc>
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="867">a #GstSDPMessage</doc>
             <type name="SDPMessage" c:type="const GstSDPMessage*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_time" c:identifier="gst_sdp_message_get_time">
-        <doc xml:space="preserve">Get time information with index @idx from @msg.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstSDPTime.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="1305">Get time information with index @idx from @msg.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="485"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="1312">a #GstSDPTime.</doc>
           <type name="SDPTime" c:type="const GstSDPTime*"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1307">a #GstSDPMessage</doc>
             <type name="SDPMessage" c:type="const GstSDPMessage*"/>
           </instance-parameter>
           <parameter name="idx" transfer-ownership="none">
-            <doc xml:space="preserve">the time index</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1308">the time index</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_uri" c:identifier="gst_sdp_message_get_uri">
-        <doc xml:space="preserve">Get the URI in @msg.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstSDPResult.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="903">Get the URI in @msg.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="397"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="909">a #GstSDPResult.</doc>
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="905">a #GstSDPMessage</doc>
             <type name="SDPMessage" c:type="const GstSDPMessage*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_version" c:identifier="gst_sdp_message_get_version">
-        <doc xml:space="preserve">Get the version in @msg.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstSDPResult.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="798">Get the version in @msg.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="362"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="804">a #GstSDPResult.</doc>
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="800">a #GstSDPMessage</doc>
             <type name="SDPMessage" c:type="const GstSDPMessage*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_zone" c:identifier="gst_sdp_message_get_zone">
-        <doc xml:space="preserve">Get time zone information with index @idx from @msg.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstSDPZone.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="1440">Get time zone information with index @idx from @msg.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="508"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="1447">a #GstSDPZone.</doc>
           <type name="SDPZone" c:type="const GstSDPZone*"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1442">a #GstSDPMessage</doc>
             <type name="SDPMessage" c:type="const GstSDPMessage*"/>
           </instance-parameter>
           <parameter name="idx" transfer-ownership="none">
-            <doc xml:space="preserve">the zone index</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1443">the zone index</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="init" c:identifier="gst_sdp_message_init">
-        <doc xml:space="preserve">Initialize @msg so that its contents are as if it was freshly allocated
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="263">Initialize @msg so that its contents are as if it was freshly allocated
 with gst_sdp_message_new(). This function is mostly used to initialize a message
 allocated on the stack. gst_sdp_message_uninit() undoes this operation.
 
 When this function is invoked on newly allocated data (with malloc or on the
 stack), its contents should be set to 0 before calling this function.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="326"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstSDPResult.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="274">a #GstSDPResult.</doc>
           <type name="SDPResult" c:type="GstSDPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="265">a #GstSDPMessage</doc>
             <type name="SDPMessage" c:type="GstSDPMessage*"/>
           </instance-parameter>
         </parameters>
@@ -3233,24 +4876,36 @@ stack), its contents should be set to 0 before calling this function.</doc>
       <method name="insert_attribute"
               c:identifier="gst_sdp_message_insert_attribute"
               version="1.2">
-        <doc xml:space="preserve">Insert attribute into the array of attributes in @msg
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="1676">Insert attribute into the array of attributes in @msg
 at index @idx.
 When -1 is given as @idx, the attribute is inserted at the end.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="550"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstSDPResult.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="1686">a #GstSDPResult.</doc>
           <type name="SDPResult" c:type="GstSDPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1678">a #GstSDPMessage</doc>
             <type name="SDPMessage" c:type="GstSDPMessage*"/>
           </instance-parameter>
           <parameter name="idx" transfer-ownership="none">
-            <doc xml:space="preserve">an index</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1679">an index</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="attr" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPAttribute</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1680">a #GstSDPAttribute</doc>
             <type name="SDPAttribute" c:type="GstSDPAttribute*"/>
           </parameter>
         </parameters>
@@ -3258,24 +4913,36 @@ When -1 is given as @idx, the attribute is inserted at the end.</doc>
       <method name="insert_bandwidth"
               c:identifier="gst_sdp_message_insert_bandwidth"
               version="1.2">
-        <doc xml:space="preserve">Insert bandwidth parameters into the array of bandwidths in @msg
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="1171">Insert bandwidth parameters into the array of bandwidths in @msg
 at index @idx.
 When -1 is given as @idx, the bandwidth is inserted at the end.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="464"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstSDPResult.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="1181">a #GstSDPResult.</doc>
           <type name="SDPResult" c:type="GstSDPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1173">a #GstSDPMessage</doc>
             <type name="SDPMessage" c:type="GstSDPMessage*"/>
           </instance-parameter>
           <parameter name="idx" transfer-ownership="none">
-            <doc xml:space="preserve">an index</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1174">an index</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="bw" transfer-ownership="none">
-            <doc xml:space="preserve">the bandwidth</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1175">the bandwidth</doc>
             <type name="SDPBandwidth" c:type="GstSDPBandwidth*"/>
           </parameter>
         </parameters>
@@ -3283,23 +4950,35 @@ When -1 is given as @idx, the bandwidth is inserted at the end.</doc>
       <method name="insert_email"
               c:identifier="gst_sdp_message_insert_email"
               version="1.2">
-        <doc xml:space="preserve">Insert @email into the array of emails in @msg at index @idx.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="933">Insert @email into the array of emails in @msg at index @idx.
 When -1 is given as @idx, the email is inserted at the end.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="411"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstSDPResult.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="942">a #GstSDPResult.</doc>
           <type name="SDPResult" c:type="GstSDPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="935">a #GstSDPMessage</doc>
             <type name="SDPMessage" c:type="GstSDPMessage*"/>
           </instance-parameter>
           <parameter name="idx" transfer-ownership="none">
-            <doc xml:space="preserve">an index</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="936">an index</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="email" transfer-ownership="none">
-            <doc xml:space="preserve">an email</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="937">an email</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
@@ -3307,23 +4986,35 @@ When -1 is given as @idx, the email is inserted at the end.</doc>
       <method name="insert_phone"
               c:identifier="gst_sdp_message_insert_phone"
               version="1.2">
-        <doc xml:space="preserve">Insert @phone into the array of phone numbers in @msg at index @idx.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="1006">Insert @phone into the array of phone numbers in @msg at index @idx.
 When -1 is given as @idx, the phone is inserted at the end.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="433"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstSDPResult.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="1015">a #GstSDPResult.</doc>
           <type name="SDPResult" c:type="GstSDPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1008">a #GstSDPMessage</doc>
             <type name="SDPMessage" c:type="GstSDPMessage*"/>
           </instance-parameter>
           <parameter name="idx" transfer-ownership="none">
-            <doc xml:space="preserve">a phone index</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1009">a phone index</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="phone" transfer-ownership="none">
-            <doc xml:space="preserve">a phone</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1010">a phone</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
@@ -3331,24 +5022,36 @@ When -1 is given as @idx, the phone is inserted at the end.</doc>
       <method name="insert_time"
               c:identifier="gst_sdp_message_insert_time"
               version="1.2">
-        <doc xml:space="preserve">Insert time parameters into the array of times in @msg
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="1319">Insert time parameters into the array of times in @msg
 at index @idx.
 When -1 is given as @idx, the times are inserted at the end.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="488"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstSDPResult.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="1329">a #GstSDPResult.</doc>
           <type name="SDPResult" c:type="GstSDPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1321">a #GstSDPMessage</doc>
             <type name="SDPMessage" c:type="GstSDPMessage*"/>
           </instance-parameter>
           <parameter name="idx" transfer-ownership="none">
-            <doc xml:space="preserve">an index</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1322">an index</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="t" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPTime</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1323">a #GstSDPTime</doc>
             <type name="SDPTime" c:type="GstSDPTime*"/>
           </parameter>
         </parameters>
@@ -3356,37 +5059,57 @@ When -1 is given as @idx, the times are inserted at the end.</doc>
       <method name="insert_zone"
               c:identifier="gst_sdp_message_insert_zone"
               version="1.2">
-        <doc xml:space="preserve">Insert zone parameters into the array of zones in @msg
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="1454">Insert zone parameters into the array of zones in @msg
 at index @idx.
 When -1 is given as @idx, the zone is inserted at the end.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="511"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstSDPResult.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="1464">a #GstSDPResult.</doc>
           <type name="SDPResult" c:type="GstSDPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1456">a #GstSDPMessage</doc>
             <type name="SDPMessage" c:type="GstSDPMessage*"/>
           </instance-parameter>
           <parameter name="idx" transfer-ownership="none">
-            <doc xml:space="preserve">an index</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1457">an index</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="zone" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPZone</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1458">a #GstSDPZone</doc>
             <type name="SDPZone" c:type="GstSDPZone*"/>
           </parameter>
         </parameters>
       </method>
       <method name="medias_len" c:identifier="gst_sdp_message_medias_len">
-        <doc xml:space="preserve">Get the number of media descriptions in @msg.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the number of media descriptions in @msg.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="1746">Get the number of media descriptions in @msg.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="567"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="1752">the number of media descriptions in @msg.</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1748">a #GstSDPMessage</doc>
             <type name="SDPMessage" c:type="const GstSDPMessage*"/>
           </instance-parameter>
         </parameters>
@@ -3394,35 +5117,53 @@ When -1 is given as @idx, the zone is inserted at the end.</doc>
       <method name="parse_keymgmt"
               c:identifier="gst_sdp_message_parse_keymgmt"
               version="1.8.1">
-        <doc xml:space="preserve">Creates a new #GstMIKEYMessage after parsing the key-mgmt attribute
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="4050">Creates a new #GstMIKEYMessage after parsing the key-mgmt attribute
 from a #GstSDPMessage.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="747"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstSDPResult.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="4058">a #GstSDPResult.</doc>
           <type name="SDPResult" c:type="GstSDPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="4052">a #GstSDPMessage</doc>
             <type name="SDPMessage" c:type="const GstSDPMessage*"/>
           </instance-parameter>
           <parameter name="mikey"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">pointer to new #GstMIKEYMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="4053">pointer to new #GstMIKEYMessage</doc>
             <type name="MIKEYMessage" c:type="GstMIKEYMessage**"/>
           </parameter>
         </parameters>
       </method>
       <method name="phones_len" c:identifier="gst_sdp_message_phones_len">
-        <doc xml:space="preserve">Get the number of phones in @msg.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the number of phones in @msg.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="986">Get the number of phones in @msg.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="427"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="992">the number of phones in @msg.</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="988">a #GstSDPMessage</doc>
             <type name="SDPMessage" c:type="const GstSDPMessage*"/>
           </instance-parameter>
         </parameters>
@@ -3430,18 +5171,28 @@ from a #GstSDPMessage.</doc>
       <method name="remove_attribute"
               c:identifier="gst_sdp_message_remove_attribute"
               version="1.2">
-        <doc xml:space="preserve">Remove the attribute in @msg at index @idx.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstSDPResult.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="1708">Remove the attribute in @msg at index @idx.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="558"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="1715">a #GstSDPResult.</doc>
           <type name="SDPResult" c:type="GstSDPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1710">a #GstSDPMessage</doc>
             <type name="SDPMessage" c:type="GstSDPMessage*"/>
           </instance-parameter>
           <parameter name="idx" transfer-ownership="none">
-            <doc xml:space="preserve">the index</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1711">the index</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
@@ -3449,18 +5200,28 @@ from a #GstSDPMessage.</doc>
       <method name="remove_bandwidth"
               c:identifier="gst_sdp_message_remove_bandwidth"
               version="1.2">
-        <doc xml:space="preserve">Remove the bandwidth information in @msg at index @idx.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstSDPResult.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="1203">Remove the bandwidth information in @msg at index @idx.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="472"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="1210">a #GstSDPResult.</doc>
           <type name="SDPResult" c:type="GstSDPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1205">a #GstSDPMessage</doc>
             <type name="SDPMessage" c:type="GstSDPMessage*"/>
           </instance-parameter>
           <parameter name="idx" transfer-ownership="none">
-            <doc xml:space="preserve">the bandwidth index</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1206">the bandwidth index</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
@@ -3468,18 +5229,28 @@ from a #GstSDPMessage.</doc>
       <method name="remove_email"
               c:identifier="gst_sdp_message_remove_email"
               version="1.2">
-        <doc xml:space="preserve">Remove the email in @msg at index @idx.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstSDPResult.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="962">Remove the email in @msg at index @idx.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="419"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="969">a #GstSDPResult.</doc>
           <type name="SDPResult" c:type="GstSDPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="964">a #GstSDPMessage</doc>
             <type name="SDPMessage" c:type="GstSDPMessage*"/>
           </instance-parameter>
           <parameter name="idx" transfer-ownership="none">
-            <doc xml:space="preserve">an email index</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="965">an email index</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
@@ -3487,18 +5258,28 @@ from a #GstSDPMessage.</doc>
       <method name="remove_phone"
               c:identifier="gst_sdp_message_remove_phone"
               version="1.2">
-        <doc xml:space="preserve">Remove the phone number in @msg at index @idx.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstSDPResult.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="1035">Remove the phone number in @msg at index @idx.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="441"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="1042">a #GstSDPResult.</doc>
           <type name="SDPResult" c:type="GstSDPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1037">a #GstSDPMessage</doc>
             <type name="SDPMessage" c:type="GstSDPMessage*"/>
           </instance-parameter>
           <parameter name="idx" transfer-ownership="none">
-            <doc xml:space="preserve">a phone index</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1038">a phone index</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
@@ -3506,18 +5287,28 @@ from a #GstSDPMessage.</doc>
       <method name="remove_time"
               c:identifier="gst_sdp_message_remove_time"
               version="1.2">
-        <doc xml:space="preserve">Remove the time information in @msg at index @idx.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstSDPResult.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="1350">Remove the time information in @msg at index @idx.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="496"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="1357">a #GstSDPResult.</doc>
           <type name="SDPResult" c:type="GstSDPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1352">a #GstSDPMessage</doc>
             <type name="SDPMessage" c:type="GstSDPMessage*"/>
           </instance-parameter>
           <parameter name="idx" transfer-ownership="none">
-            <doc xml:space="preserve">the index</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1353">the index</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
@@ -3525,18 +5316,28 @@ from a #GstSDPMessage.</doc>
       <method name="remove_zone"
               c:identifier="gst_sdp_message_remove_zone"
               version="1.2">
-        <doc xml:space="preserve">Remove the zone information in @msg at index @idx.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstSDPResult.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="1485">Remove the zone information in @msg at index @idx.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="519"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="1492">a #GstSDPResult.</doc>
           <type name="SDPResult" c:type="GstSDPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1487">a #GstSDPMessage</doc>
             <type name="SDPMessage" c:type="GstSDPMessage*"/>
           </instance-parameter>
           <parameter name="idx" transfer-ownership="none">
-            <doc xml:space="preserve">the index</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1488">the index</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
@@ -3544,22 +5345,34 @@ from a #GstSDPMessage.</doc>
       <method name="replace_attribute"
               c:identifier="gst_sdp_message_replace_attribute"
               version="1.2">
-        <doc xml:space="preserve">Replace the attribute in @msg at index @idx with @attr.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstSDPResult.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="1693">Replace the attribute in @msg at index @idx with @attr.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="554"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="1701">a #GstSDPResult.</doc>
           <type name="SDPResult" c:type="GstSDPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1695">a #GstSDPMessage</doc>
             <type name="SDPMessage" c:type="GstSDPMessage*"/>
           </instance-parameter>
           <parameter name="idx" transfer-ownership="none">
-            <doc xml:space="preserve">the index</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1696">the index</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="attr" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPAttribute</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1697">a #GstSDPAttribute</doc>
             <type name="SDPAttribute" c:type="GstSDPAttribute*"/>
           </parameter>
         </parameters>
@@ -3567,22 +5380,34 @@ from a #GstSDPMessage.</doc>
       <method name="replace_bandwidth"
               c:identifier="gst_sdp_message_replace_bandwidth"
               version="1.2">
-        <doc xml:space="preserve">Replace the bandwidth information in @msg at index @idx with @bw.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstSDPResult.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="1188">Replace the bandwidth information in @msg at index @idx with @bw.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="468"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="1196">a #GstSDPResult.</doc>
           <type name="SDPResult" c:type="GstSDPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1190">a #GstSDPMessage</doc>
             <type name="SDPMessage" c:type="GstSDPMessage*"/>
           </instance-parameter>
           <parameter name="idx" transfer-ownership="none">
-            <doc xml:space="preserve">the bandwidth index</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1191">the bandwidth index</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="bw" transfer-ownership="none">
-            <doc xml:space="preserve">the bandwidth</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1192">the bandwidth</doc>
             <type name="SDPBandwidth" c:type="GstSDPBandwidth*"/>
           </parameter>
         </parameters>
@@ -3590,22 +5415,34 @@ from a #GstSDPMessage.</doc>
       <method name="replace_email"
               c:identifier="gst_sdp_message_replace_email"
               version="1.2">
-        <doc xml:space="preserve">Replace the email in @msg at index @idx with @email.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstSDPResult.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="948">Replace the email in @msg at index @idx with @email.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="415"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="956">a #GstSDPResult.</doc>
           <type name="SDPResult" c:type="GstSDPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="950">a #GstSDPMessage</doc>
             <type name="SDPMessage" c:type="GstSDPMessage*"/>
           </instance-parameter>
           <parameter name="idx" transfer-ownership="none">
-            <doc xml:space="preserve">an email index</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="951">an email index</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="email" transfer-ownership="none">
-            <doc xml:space="preserve">an email</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="952">an email</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
@@ -3613,22 +5450,34 @@ from a #GstSDPMessage.</doc>
       <method name="replace_phone"
               c:identifier="gst_sdp_message_replace_phone"
               version="1.2">
-        <doc xml:space="preserve">Replace the phone number in @msg at index @idx with @phone.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstSDPResult.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="1021">Replace the phone number in @msg at index @idx with @phone.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="437"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="1029">a #GstSDPResult.</doc>
           <type name="SDPResult" c:type="GstSDPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1023">a #GstSDPMessage</doc>
             <type name="SDPMessage" c:type="GstSDPMessage*"/>
           </instance-parameter>
           <parameter name="idx" transfer-ownership="none">
-            <doc xml:space="preserve">a phone index</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1024">a phone index</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="phone" transfer-ownership="none">
-            <doc xml:space="preserve">a phone</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1025">a phone</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
@@ -3636,22 +5485,34 @@ from a #GstSDPMessage.</doc>
       <method name="replace_time"
               c:identifier="gst_sdp_message_replace_time"
               version="1.2">
-        <doc xml:space="preserve">Replace the time information in @msg at index @idx with @t.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstSDPResult.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="1335">Replace the time information in @msg at index @idx with @t.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="492"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="1343">a #GstSDPResult.</doc>
           <type name="SDPResult" c:type="GstSDPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1337">a #GstSDPMessage</doc>
             <type name="SDPMessage" c:type="GstSDPMessage*"/>
           </instance-parameter>
           <parameter name="idx" transfer-ownership="none">
-            <doc xml:space="preserve">the index</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1338">the index</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="t" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPTime</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1339">a #GstSDPTime</doc>
             <type name="SDPTime" c:type="GstSDPTime*"/>
           </parameter>
         </parameters>
@@ -3659,255 +5520,397 @@ from a #GstSDPMessage.</doc>
       <method name="replace_zone"
               c:identifier="gst_sdp_message_replace_zone"
               version="1.2">
-        <doc xml:space="preserve">Replace the zone information in @msg at index @idx with @zone.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstSDPResult.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="1470">Replace the zone information in @msg at index @idx with @zone.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="515"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="1478">a #GstSDPResult.</doc>
           <type name="SDPResult" c:type="GstSDPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1472">a #GstSDPMessage</doc>
             <type name="SDPMessage" c:type="GstSDPMessage*"/>
           </instance-parameter>
           <parameter name="idx" transfer-ownership="none">
-            <doc xml:space="preserve">the index</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1473">the index</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="zone" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPZone</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1474">a #GstSDPZone</doc>
             <type name="SDPZone" c:type="GstSDPZone*"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_connection"
               c:identifier="gst_sdp_message_set_connection">
-        <doc xml:space="preserve">Configure the SDP connection in @msg with the given parameters.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstSDPResult.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="1060">Configure the SDP connection in @msg with the given parameters.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="452"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="1072">a #GstSDPResult.</doc>
           <type name="SDPResult" c:type="GstSDPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1062">a #GstSDPMessage</doc>
             <type name="SDPMessage" c:type="GstSDPMessage*"/>
           </instance-parameter>
           <parameter name="nettype" transfer-ownership="none">
-            <doc xml:space="preserve">the type of network. "IN" is defined to have the meaning
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1063">the type of network. "IN" is defined to have the meaning
 "Internet".</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="addrtype" transfer-ownership="none">
-            <doc xml:space="preserve">the type of address.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1065">the type of address.</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="address" transfer-ownership="none">
-            <doc xml:space="preserve">the address</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1066">the address</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="ttl" transfer-ownership="none">
-            <doc xml:space="preserve">the time to live of the address</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1067">the time to live of the address</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="addr_number" transfer-ownership="none">
-            <doc xml:space="preserve">the number of layers</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1068">the number of layers</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_information"
               c:identifier="gst_sdp_message_set_information">
-        <doc xml:space="preserve">Set the information in @msg.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstSDPResult.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="874">Set the information in @msg.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="392"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="881">a #GstSDPResult.</doc>
           <type name="SDPResult" c:type="GstSDPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="876">a #GstSDPMessage</doc>
             <type name="SDPMessage" c:type="GstSDPMessage*"/>
           </instance-parameter>
           <parameter name="information" transfer-ownership="none">
-            <doc xml:space="preserve">the information</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="877">the information</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_key" c:identifier="gst_sdp_message_set_key">
-        <doc xml:space="preserve">Adds the encryption information to @msg.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstSDPResult.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="1522">Adds the encryption information to @msg.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="531"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="1530">a #GstSDPResult.</doc>
           <type name="SDPResult" c:type="GstSDPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1524">a #GstSDPMessage</doc>
             <type name="SDPMessage" c:type="GstSDPMessage*"/>
           </instance-parameter>
           <parameter name="type" transfer-ownership="none">
-            <doc xml:space="preserve">the encryption type</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1525">the encryption type</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="data" transfer-ownership="none">
-            <doc xml:space="preserve">the encryption data</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1526">the encryption data</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_origin" c:identifier="gst_sdp_message_set_origin">
-        <doc xml:space="preserve">Configure the SDP origin in @msg with the given parameters.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">#GST_SDP_OK.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="808">Configure the SDP origin in @msg with the given parameters.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="373"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="820">#GST_SDP_OK.</doc>
           <type name="SDPResult" c:type="GstSDPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="810">a #GstSDPMessage</doc>
             <type name="SDPMessage" c:type="GstSDPMessage*"/>
           </instance-parameter>
           <parameter name="username" transfer-ownership="none">
-            <doc xml:space="preserve">the user name</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="811">the user name</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="sess_id" transfer-ownership="none">
-            <doc xml:space="preserve">a session id</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="812">a session id</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="sess_version" transfer-ownership="none">
-            <doc xml:space="preserve">a session version</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="813">a session version</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="nettype" transfer-ownership="none">
-            <doc xml:space="preserve">a network type</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="814">a network type</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="addrtype" transfer-ownership="none">
-            <doc xml:space="preserve">an address type</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="815">an address type</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="addr" transfer-ownership="none">
-            <doc xml:space="preserve">an address</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="816">an address</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_session_name"
               c:identifier="gst_sdp_message_set_session_name">
-        <doc xml:space="preserve">Set the session name in @msg.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstSDPResult.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="855">Set the session name in @msg.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="384"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="862">a #GstSDPResult.</doc>
           <type name="SDPResult" c:type="GstSDPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="857">a #GstSDPMessage</doc>
             <type name="SDPMessage" c:type="GstSDPMessage*"/>
           </instance-parameter>
           <parameter name="session_name" transfer-ownership="none">
-            <doc xml:space="preserve">the session name</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="858">the session name</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_uri" c:identifier="gst_sdp_message_set_uri">
-        <doc xml:space="preserve">Set the URI in @msg.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstSDPResult.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="893">Set the URI in @msg.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="400"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="900">a #GstSDPResult.</doc>
           <type name="SDPResult" c:type="GstSDPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="895">a #GstSDPMessage</doc>
             <type name="SDPMessage" c:type="GstSDPMessage*"/>
           </instance-parameter>
           <parameter name="uri" transfer-ownership="none">
-            <doc xml:space="preserve">the URI</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="896">the URI</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_version" c:identifier="gst_sdp_message_set_version">
-        <doc xml:space="preserve">Set the version in @msg.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstSDPResult.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="788">Set the version in @msg.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="365"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="795">a #GstSDPResult.</doc>
           <type name="SDPResult" c:type="GstSDPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="790">a #GstSDPMessage</doc>
             <type name="SDPMessage" c:type="GstSDPMessage*"/>
           </instance-parameter>
           <parameter name="version" transfer-ownership="none">
-            <doc xml:space="preserve">the version</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="791">the version</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </method>
       <method name="times_len" c:identifier="gst_sdp_message_times_len">
-        <doc xml:space="preserve">Get the number of time information entries in @msg.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the number of time information entries in @msg.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="1295">Get the number of time information entries in @msg.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="482"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="1301">the number of time information entries in @msg.</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1297">a #GstSDPMessage</doc>
             <type name="SDPMessage" c:type="const GstSDPMessage*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="uninit" c:identifier="gst_sdp_message_uninit">
-        <doc xml:space="preserve">Free all resources allocated in @msg. @msg should not be used anymore after
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="299">Free all resources allocated in @msg. @msg should not be used anymore after
 this function. This function should be used when @msg was allocated on the
 stack and initialized with gst_sdp_message_init().</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="329"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstSDPResult.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="307">a #GstSDPResult.</doc>
           <type name="SDPResult" c:type="GstSDPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="301">a #GstSDPMessage</doc>
             <type name="SDPMessage" c:type="GstSDPMessage*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="zones_len" c:identifier="gst_sdp_message_zones_len">
-        <doc xml:space="preserve">Get the number of time zone information entries in @msg.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the number of time zone information entries in @msg.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="1431">Get the number of time zone information entries in @msg.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="505"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="1437">the number of time zone information entries in @msg.</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1433">a #GstSDPMessage</doc>
             <type name="SDPMessage" c:type="const GstSDPMessage*"/>
           </instance-parameter>
         </parameters>
       </method>
       <function name="as_uri" c:identifier="gst_sdp_message_as_uri">
-        <doc xml:space="preserve">Creates a uri from @msg with the given @scheme. The uri has the format:
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="727">Creates a uri from @msg with the given @scheme. The uri has the format:
 
  \@scheme:///[#type=value *[&amp;type=value]]
 
  Where each value is url encoded.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="352"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a uri for @msg.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="738">a uri for @msg.</doc>
           <type name="utf8" c:type="gchar*"/>
         </return-value>
         <parameters>
           <parameter name="scheme" transfer-ownership="none">
-            <doc xml:space="preserve">the uri scheme</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="729">the uri scheme</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstSDPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="730">the #GstSDPMessage</doc>
             <type name="SDPMessage" c:type="const GstSDPMessage*"/>
           </parameter>
         </parameters>
       </function>
       <function name="new" c:identifier="gst_sdp_message_new">
-        <doc xml:space="preserve">Allocate a new GstSDPMessage and store the result in @msg.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstSDPResult.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="217">Allocate a new GstSDPMessage and store the result in @msg.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="323"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="223">a #GstSDPResult.</doc>
           <type name="SDPResult" c:type="GstSDPResult"/>
         </return-value>
         <parameters>
@@ -3915,7 +5918,9 @@ stack and initialized with gst_sdp_message_init().</doc>
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">pointer to new #GstSDPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="219">pointer to new #GstSDPMessage</doc>
             <type name="SDPMessage" c:type="GstSDPMessage**"/>
           </parameter>
         </parameters>
@@ -3923,52 +5928,76 @@ stack and initialized with gst_sdp_message_init().</doc>
       <function name="new_from_text"
                 c:identifier="gst_sdp_message_new_from_text"
                 version="1.16">
-        <doc xml:space="preserve">Parse @text and create a new SDPMessage from these.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstSDPResult.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="239">Parse @text and create a new SDPMessage from these.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="344"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="246">a #GstSDPResult.</doc>
           <type name="SDPResult" c:type="GstSDPResult"/>
         </return-value>
         <parameters>
           <parameter name="text" transfer-ownership="none">
-            <doc xml:space="preserve">A dynamically allocated string representing the SDP description</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="242">A dynamically allocated string representing the SDP description</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="msg"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">pointer to new #GstSDPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="241">pointer to new #GstSDPMessage</doc>
             <type name="SDPMessage" c:type="GstSDPMessage**"/>
           </parameter>
         </parameters>
       </function>
       <function name="parse_buffer"
                 c:identifier="gst_sdp_message_parse_buffer">
-        <doc xml:space="preserve">Parse the contents of @size bytes pointed to by @data and store the result in
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="3127">Parse the contents of @size bytes pointed to by @data and store the result in
 @msg.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="338"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">#GST_SDP_OK on success.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="3136">#GST_SDP_OK on success.</doc>
           <type name="SDPResult" c:type="GstSDPResult"/>
         </return-value>
         <parameters>
           <parameter name="data" transfer-ownership="none">
-            <doc xml:space="preserve">the start of the buffer</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="3129">the start of the buffer</doc>
             <array length="1" zero-terminated="0" c:type="const guint8*">
               <type name="guint8" c:type="guint8"/>
             </array>
           </parameter>
           <parameter name="size" transfer-ownership="none">
-            <doc xml:space="preserve">the size of the buffer</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="3130">the size of the buffer</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">the result #GstSDPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="3131">the result #GstSDPMessage</doc>
             <type name="SDPMessage" c:type="GstSDPMessage*"/>
           </parameter>
         </parameters>
       </function>
       <function name="parse_uri" c:identifier="gst_sdp_message_parse_uri">
-        <doc xml:space="preserve">Parse the null-terminated @uri and store the result in @msg.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="623">Parse the null-terminated @uri and store the result in @msg.
 
 The uri should be of the form:
 
@@ -3977,118 +6006,179 @@ The uri should be of the form:
 
  where value is url encoded. This looslely resembles
  http://tools.ietf.org/html/draft-fujikawa-sdp-url-01</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="349"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">#GST_SDP_OK on success.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="638">#GST_SDP_OK on success.</doc>
           <type name="SDPResult" c:type="GstSDPResult"/>
         </return-value>
         <parameters>
           <parameter name="uri" transfer-ownership="none">
-            <doc xml:space="preserve">the start of the uri</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="625">the start of the uri</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="msg" transfer-ownership="none">
-            <doc xml:space="preserve">the result #GstSDPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="626">the result #GstSDPMessage</doc>
             <type name="SDPMessage" c:type="GstSDPMessage*"/>
           </parameter>
         </parameters>
       </function>
     </record>
     <record name="SDPOrigin" c:type="GstSDPOrigin">
-      <doc xml:space="preserve">The contents of the SDP "o=" field which gives the originator of the session
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/sdp/gstsdpmessage.h"
+           line="54">The contents of the SDP "o=" field which gives the originator of the session
 (their username and the address of the user's host) plus a session id and
 session version number.</doc>
+      <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h" line="79"/>
       <field name="username" writable="1">
-        <doc xml:space="preserve">the user's login on the originating host, or it is "-"
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.h"
+             line="56">the user's login on the originating host, or it is "-"
    if the originating host does not support the concept of user ids.</doc>
         <type name="utf8" c:type="gchar*"/>
       </field>
       <field name="sess_id" writable="1">
-        <doc xml:space="preserve">is a numeric string such that the tuple of @username, @sess_id,
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.h"
+             line="58">is a numeric string such that the tuple of @username, @sess_id,
    @nettype, @addrtype and @addr form a globally unique identifier for the
    session.</doc>
         <type name="utf8" c:type="gchar*"/>
       </field>
       <field name="sess_version" writable="1">
-        <doc xml:space="preserve">a version number for this announcement</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.h"
+             line="61">a version number for this announcement</doc>
         <type name="utf8" c:type="gchar*"/>
       </field>
       <field name="nettype" writable="1">
-        <doc xml:space="preserve">the type of network. "IN" is defined to have the meaning
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.h"
+             line="62">the type of network. "IN" is defined to have the meaning
    "Internet".</doc>
         <type name="utf8" c:type="gchar*"/>
       </field>
       <field name="addrtype" writable="1">
-        <doc xml:space="preserve">the type of @addr.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.h"
+             line="64">the type of @addr.</doc>
         <type name="utf8" c:type="gchar*"/>
       </field>
       <field name="addr" writable="1">
-        <doc xml:space="preserve">the globally unique address of the machine from which the session was
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.h"
+             line="65">the globally unique address of the machine from which the session was
     created.</doc>
         <type name="utf8" c:type="gchar*"/>
       </field>
     </record>
     <enumeration name="SDPResult" c:type="GstSDPResult">
-      <doc xml:space="preserve">Return values for the SDP functions.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/sdp/gstsdp.h"
+           line="46">Return values for the SDP functions.</doc>
+      <source-position filename="gst-libs/gst/sdp/gstsdp.h" line="56"/>
       <member name="ok" value="0" c:identifier="GST_SDP_OK">
-        <doc xml:space="preserve">A successful return value</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdp.h"
+             line="48">A successful return value</doc>
       </member>
       <member name="einval" value="-1" c:identifier="GST_SDP_EINVAL">
-        <doc xml:space="preserve">a function was given invalid parameters</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdp.h"
+             line="49">a function was given invalid parameters</doc>
       </member>
     </enumeration>
     <record name="SDPTime" c:type="GstSDPTime">
-      <doc xml:space="preserve">The contents of the SDP "t=" field which specify the start and stop times for
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/sdp/gstsdpmessage.h"
+           line="170">The contents of the SDP "t=" field which specify the start and stop times for
 a conference session.</doc>
+      <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h" line="185"/>
       <field name="start" writable="1">
-        <doc xml:space="preserve">start time for the conference. The value is the decimal
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.h"
+             line="172">start time for the conference. The value is the decimal
     representation of Network Time Protocol (NTP) time values in seconds</doc>
         <type name="utf8" c:type="gchar*"/>
       </field>
       <field name="stop" writable="1">
-        <doc xml:space="preserve">stop time for the conference. The value is the decimal
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.h"
+             line="174">stop time for the conference. The value is the decimal
     representation of Network Time Protocol (NTP) time values in seconds</doc>
         <type name="utf8" c:type="gchar*"/>
       </field>
       <field name="repeat" writable="1">
-        <doc xml:space="preserve">repeat times for a session</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.h"
+             line="176">repeat times for a session</doc>
         <array name="GLib.Array" c:type="GArray*">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
       <method name="clear" c:identifier="gst_sdp_time_clear" version="1.2">
-        <doc xml:space="preserve">Reset the time information in @t.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstSDPResult.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="1272">Reset the time information in @t.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="192"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="1278">a #GstSDPResult.</doc>
           <type name="SDPResult" c:type="GstSDPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="t" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPTime</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1274">a #GstSDPTime</doc>
             <type name="SDPTime" c:type="GstSDPTime*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="set" c:identifier="gst_sdp_time_set" version="1.2">
-        <doc xml:space="preserve">Set time information @start, @stop and @repeat in @t.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstSDPResult.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="1238">Set time information @start, @stop and @repeat in @t.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="188"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="1247">a #GstSDPResult.</doc>
           <type name="SDPResult" c:type="GstSDPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="t" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPTime</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1240">a #GstSDPTime</doc>
             <type name="SDPTime" c:type="GstSDPTime*"/>
           </instance-parameter>
           <parameter name="start" transfer-ownership="none">
-            <doc xml:space="preserve">the start time</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1241">the start time</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="stop" transfer-ownership="none">
-            <doc xml:space="preserve">the stop time</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1242">the stop time</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="repeat" transfer-ownership="none">
-            <doc xml:space="preserve">the repeat times</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1243">the repeat times</doc>
             <array c:type="const gchar**">
               <type name="utf8" c:type="gchar*"/>
             </array>
@@ -4097,96 +6187,170 @@ a conference session.</doc>
       </method>
     </record>
     <record name="SDPZone" c:type="GstSDPZone">
-      <doc xml:space="preserve">The contents of the SDP "z=" field which allows the sender to
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/sdp/gstsdpmessage.h"
+           line="194">The contents of the SDP "z=" field which allows the sender to
 specify a list of time zone adjustments and offsets from the base
 time.</doc>
+      <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h" line="206"/>
       <field name="time" writable="1">
-        <doc xml:space="preserve">the NTP time that a time zone adjustment happens</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.h"
+             line="196">the NTP time that a time zone adjustment happens</doc>
         <type name="utf8" c:type="gchar*"/>
       </field>
       <field name="typed_time" writable="1">
-        <doc xml:space="preserve">the offset from the time when the session was first scheduled</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.h"
+             line="197">the offset from the time when the session was first scheduled</doc>
         <type name="utf8" c:type="gchar*"/>
       </field>
       <method name="clear" c:identifier="gst_sdp_zone_clear" version="1.2">
-        <doc xml:space="preserve">Reset the zone information in @zone.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstSDPResult.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="1411">Reset the zone information in @zone.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="213"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="1417">a #GstSDPResult.</doc>
           <type name="SDPResult" c:type="GstSDPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="zone" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPZone</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1413">a #GstSDPZone</doc>
             <type name="SDPZone" c:type="GstSDPZone*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="set" c:identifier="gst_sdp_zone_set" version="1.2">
-        <doc xml:space="preserve">Set zone information in @zone.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstSDPResult.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="1388">Set zone information in @zone.</doc>
+        <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h"
+                         line="209"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="1396">a #GstSDPResult.</doc>
           <type name="SDPResult" c:type="GstSDPResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="zone" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstSDPZone</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1390">a #GstSDPZone</doc>
             <type name="SDPZone" c:type="GstSDPZone*"/>
           </instance-parameter>
           <parameter name="adj_time" transfer-ownership="none">
-            <doc xml:space="preserve">the NTP time that a time zone adjustment happens</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1391">the NTP time that a time zone adjustment happens</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
           <parameter name="typed_time" transfer-ownership="none">
-            <doc xml:space="preserve">the offset from the time when the session was first scheduled</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/sdp/gstsdpmessage.c"
+                 line="1392">the offset from the time when the session was first scheduled</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </method>
     </record>
     <constant name="SDP_BWTYPE_AS" value="AS" c:type="GST_SDP_BWTYPE_AS">
-      <doc xml:space="preserve">The Application-Specific Maximum bandwidth modifier.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/sdp/gstsdpmessage.h"
+           line="117">The Application-Specific Maximum bandwidth modifier.</doc>
+      <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h" line="122"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="SDP_BWTYPE_CT" value="CT" c:type="GST_SDP_BWTYPE_CT">
-      <doc xml:space="preserve">The Conference Total bandwidth modifier.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/sdp/gstsdpmessage.h"
+           line="111">The Conference Total bandwidth modifier.</doc>
+      <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h" line="116"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="SDP_BWTYPE_EXT_PREFIX"
               value="X-"
               c:type="GST_SDP_BWTYPE_EXT_PREFIX">
-      <doc xml:space="preserve">The extension prefix bandwidth modifier.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/sdp/gstsdpmessage.h"
+           line="123">The extension prefix bandwidth modifier.</doc>
+      <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h" line="128"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="SDP_BWTYPE_RR" value="RR" c:type="GST_SDP_BWTYPE_RR">
-      <doc xml:space="preserve">RTCP bandwidth allocated to data receivers (RFC 3556).</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/sdp/gstsdpmessage.h"
+           line="136">RTCP bandwidth allocated to data receivers (RFC 3556).</doc>
+      <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h" line="141"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="SDP_BWTYPE_RS" value="RS" c:type="GST_SDP_BWTYPE_RS">
-      <doc xml:space="preserve">RTCP bandwidth allocated to active data senders (RFC 3556).</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/sdp/gstsdpmessage.h"
+           line="130">RTCP bandwidth allocated to active data senders (RFC 3556).</doc>
+      <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h" line="135"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="SDP_BWTYPE_TIAS" value="TIAS" c:type="GST_SDP_BWTYPE_TIAS">
-      <doc xml:space="preserve">Transport Independent Application Specific Maximum bandwidth (RFC 3890).</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/sdp/gstsdpmessage.h"
+           line="142">Transport Independent Application Specific Maximum bandwidth (RFC 3890).</doc>
+      <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h" line="147"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
+    <function-macro name="SDP_MESSAGE"
+                    c:identifier="GST_SDP_MESSAGE"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h" line="318"/>
+      <parameters>
+        <parameter name="object">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="SDP_MESSAGE_CAST"
+                    c:identifier="GST_SDP_MESSAGE_CAST"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h" line="317"/>
+      <parameters>
+        <parameter name="object">
+        </parameter>
+      </parameters>
+    </function-macro>
     <function name="sdp_address_is_multicast"
               c:identifier="gst_sdp_address_is_multicast">
-      <doc xml:space="preserve">Check if the given @addr is a multicast address.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/sdp/gstsdpmessage.c"
+           line="452">Check if the given @addr is a multicast address.</doc>
+      <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h" line="357"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">TRUE when @addr is multicast.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="460">TRUE when @addr is multicast.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="nettype" transfer-ownership="none">
-          <doc xml:space="preserve">a network type</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="454">a network type</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
         <parameter name="addrtype" transfer-ownership="none">
-          <doc xml:space="preserve">an address type</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="455">an address type</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
         <parameter name="addr" transfer-ownership="none">
-          <doc xml:space="preserve">an address</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="456">an address</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
       </parameters>
@@ -4194,18 +6358,27 @@ time.</doc>
     <function name="sdp_make_keymgmt"
               c:identifier="gst_sdp_make_keymgmt"
               version="1.8">
-      <doc xml:space="preserve">Makes key management data</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/sdp/gstsdpmessage.c"
+           line="3977">Makes key management data</doc>
+      <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h" line="744"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">a #gchar key-mgmt data,</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="3984">a #gchar key-mgmt data,</doc>
         <type name="utf8" c:type="gchar*"/>
       </return-value>
       <parameters>
         <parameter name="uri" transfer-ownership="none">
-          <doc xml:space="preserve">a #gchar URI</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="3979">a #gchar URI</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
         <parameter name="base64" transfer-ownership="none">
-          <doc xml:space="preserve">a #gchar base64-encoded key data</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="3980">a #gchar base64-encoded key data</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
       </parameters>
@@ -4213,9 +6386,14 @@ time.</doc>
     <function name="sdp_media_new"
               c:identifier="gst_sdp_media_new"
               moved-to="SDPMedia.new">
-      <doc xml:space="preserve">Allocate a new GstSDPMedia and store the result in @media.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/sdp/gstsdpmessage.c"
+           line="1798">Allocate a new GstSDPMedia and store the result in @media.</doc>
+      <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h" line="581"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">a #GstSDPResult.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="1804">a #GstSDPResult.</doc>
         <type name="SDPResult" c:type="GstSDPResult"/>
       </return-value>
       <parameters>
@@ -4223,7 +6401,9 @@ time.</doc>
                    direction="out"
                    caller-allocates="0"
                    transfer-ownership="full">
-          <doc xml:space="preserve">pointer to new #GstSDPMedia</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="1800">pointer to new #GstSDPMedia</doc>
           <type name="SDPMedia" c:type="GstSDPMedia**"/>
         </parameter>
       </parameters>
@@ -4232,7 +6412,9 @@ time.</doc>
               c:identifier="gst_sdp_media_set_media_from_caps"
               moved-to="SDPMedia.set_media_from_caps"
               version="1.8">
-      <doc xml:space="preserve">Mapping of caps to SDP fields:
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/sdp/gstsdpmessage.c"
+           line="3742">Mapping of caps to SDP fields:
 
 a=rtpmap:(payload) (encoding_name) or (clock_rate)[or (encoding_params)]
 
@@ -4240,18 +6422,27 @@ a=framesize:(payload) (width)-(height)
 
 a=fmtp:(payload) (param)[=(value)];...
 
-a=rtcp-fb:(payload) (param1) [param2]...</doc>
+a=rtcp-fb:(payload) (param1) [param2]...
+
+a=extmap:(id)[/direction] (extensionname) (extensionattributes)</doc>
+      <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h" line="741"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">a #GstSDPResult.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="3759">a #GstSDPResult.</doc>
         <type name="SDPResult" c:type="GstSDPResult"/>
       </return-value>
       <parameters>
         <parameter name="caps" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstCaps</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="3744">a #GstCaps</doc>
           <type name="Gst.Caps" c:type="const GstCaps*"/>
         </parameter>
         <parameter name="media" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstSDPMedia</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="3745">a #GstSDPMedia</doc>
           <type name="SDPMedia" c:type="GstSDPMedia*"/>
         </parameter>
       </parameters>
@@ -4259,22 +6450,31 @@ a=rtcp-fb:(payload) (param1) [param2]...</doc>
     <function name="sdp_message_as_uri"
               c:identifier="gst_sdp_message_as_uri"
               moved-to="SDPMessage.as_uri">
-      <doc xml:space="preserve">Creates a uri from @msg with the given @scheme. The uri has the format:
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/sdp/gstsdpmessage.c"
+           line="727">Creates a uri from @msg with the given @scheme. The uri has the format:
 
  \@scheme:///[#type=value *[&amp;type=value]]
 
  Where each value is url encoded.</doc>
+      <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h" line="352"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">a uri for @msg.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="738">a uri for @msg.</doc>
         <type name="utf8" c:type="gchar*"/>
       </return-value>
       <parameters>
         <parameter name="scheme" transfer-ownership="none">
-          <doc xml:space="preserve">the uri scheme</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="729">the uri scheme</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
         <parameter name="msg" transfer-ownership="none">
-          <doc xml:space="preserve">the #GstSDPMessage</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="730">the #GstSDPMessage</doc>
           <type name="SDPMessage" c:type="const GstSDPMessage*"/>
         </parameter>
       </parameters>
@@ -4282,9 +6482,14 @@ a=rtcp-fb:(payload) (param1) [param2]...</doc>
     <function name="sdp_message_new"
               c:identifier="gst_sdp_message_new"
               moved-to="SDPMessage.new">
-      <doc xml:space="preserve">Allocate a new GstSDPMessage and store the result in @msg.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/sdp/gstsdpmessage.c"
+           line="217">Allocate a new GstSDPMessage and store the result in @msg.</doc>
+      <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h" line="323"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">a #GstSDPResult.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="223">a #GstSDPResult.</doc>
         <type name="SDPResult" c:type="GstSDPResult"/>
       </return-value>
       <parameters>
@@ -4292,7 +6497,9 @@ a=rtcp-fb:(payload) (param1) [param2]...</doc>
                    direction="out"
                    caller-allocates="0"
                    transfer-ownership="full">
-          <doc xml:space="preserve">pointer to new #GstSDPMessage</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="219">pointer to new #GstSDPMessage</doc>
           <type name="SDPMessage" c:type="GstSDPMessage**"/>
         </parameter>
       </parameters>
@@ -4301,21 +6508,30 @@ a=rtcp-fb:(payload) (param1) [param2]...</doc>
               c:identifier="gst_sdp_message_new_from_text"
               moved-to="SDPMessage.new_from_text"
               version="1.16">
-      <doc xml:space="preserve">Parse @text and create a new SDPMessage from these.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/sdp/gstsdpmessage.c"
+           line="239">Parse @text and create a new SDPMessage from these.</doc>
+      <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h" line="344"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">a #GstSDPResult.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="246">a #GstSDPResult.</doc>
         <type name="SDPResult" c:type="GstSDPResult"/>
       </return-value>
       <parameters>
         <parameter name="text" transfer-ownership="none">
-          <doc xml:space="preserve">A dynamically allocated string representing the SDP description</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="242">A dynamically allocated string representing the SDP description</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
         <parameter name="msg"
                    direction="out"
                    caller-allocates="0"
                    transfer-ownership="full">
-          <doc xml:space="preserve">pointer to new #GstSDPMessage</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="241">pointer to new #GstSDPMessage</doc>
           <type name="SDPMessage" c:type="GstSDPMessage**"/>
         </parameter>
       </parameters>
@@ -4323,25 +6539,36 @@ a=rtcp-fb:(payload) (param1) [param2]...</doc>
     <function name="sdp_message_parse_buffer"
               c:identifier="gst_sdp_message_parse_buffer"
               moved-to="SDPMessage.parse_buffer">
-      <doc xml:space="preserve">Parse the contents of @size bytes pointed to by @data and store the result in
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/sdp/gstsdpmessage.c"
+           line="3127">Parse the contents of @size bytes pointed to by @data and store the result in
 @msg.</doc>
+      <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h" line="338"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">#GST_SDP_OK on success.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="3136">#GST_SDP_OK on success.</doc>
         <type name="SDPResult" c:type="GstSDPResult"/>
       </return-value>
       <parameters>
         <parameter name="data" transfer-ownership="none">
-          <doc xml:space="preserve">the start of the buffer</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="3129">the start of the buffer</doc>
           <array length="1" zero-terminated="0" c:type="const guint8*">
             <type name="guint8" c:type="guint8"/>
           </array>
         </parameter>
         <parameter name="size" transfer-ownership="none">
-          <doc xml:space="preserve">the size of the buffer</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="3130">the size of the buffer</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
         <parameter name="msg" transfer-ownership="none">
-          <doc xml:space="preserve">the result #GstSDPMessage</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="3131">the result #GstSDPMessage</doc>
           <type name="SDPMessage" c:type="GstSDPMessage*"/>
         </parameter>
       </parameters>
@@ -4349,7 +6576,9 @@ a=rtcp-fb:(payload) (param1) [param2]...</doc>
     <function name="sdp_message_parse_uri"
               c:identifier="gst_sdp_message_parse_uri"
               moved-to="SDPMessage.parse_uri">
-      <doc xml:space="preserve">Parse the null-terminated @uri and store the result in @msg.
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/sdp/gstsdpmessage.c"
+           line="623">Parse the null-terminated @uri and store the result in @msg.
 
 The uri should be of the form:
 
@@ -4358,17 +6587,24 @@ The uri should be of the form:
 
  where value is url encoded. This looslely resembles
  http://tools.ietf.org/html/draft-fujikawa-sdp-url-01</doc>
+      <source-position filename="gst-libs/gst/sdp/gstsdpmessage.h" line="349"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">#GST_SDP_OK on success.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/sdp/gstsdpmessage.c"
+             line="638">#GST_SDP_OK on success.</doc>
         <type name="SDPResult" c:type="GstSDPResult"/>
       </return-value>
       <parameters>
         <parameter name="uri" transfer-ownership="none">
-          <doc xml:space="preserve">the start of the uri</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="625">the start of the uri</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
         <parameter name="msg" transfer-ownership="none">
-          <doc xml:space="preserve">the result #GstSDPMessage</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/sdp/gstsdpmessage.c"
+               line="626">the result #GstSDPMessage</doc>
           <type name="SDPMessage" c:type="GstSDPMessage*"/>
         </parameter>
       </parameters>
index ebda563..79b4270 100644 (file)
@@ -15,44 +15,123 @@ and/or use gtk-doc annotations.  -->
              shared-library="libgsttag-1.0.so.0"
              c:identifier-prefixes="Gst"
              c:symbol-prefixes="gst">
+    <function-macro name="IS_TAG_DEMUX"
+                    c:identifier="GST_IS_TAG_DEMUX"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/tag/gsttagdemux.h" line="32"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_TAG_DEMUX_CLASS"
+                    c:identifier="GST_IS_TAG_DEMUX_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/tag/gsttagdemux.h" line="33"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_TAG_MUX"
+                    c:identifier="GST_IS_TAG_MUX"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/tag/gsttagmux.h" line="35"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_TAG_MUX_CLASS"
+                    c:identifier="GST_IS_TAG_MUX_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/tag/gsttagmux.h" line="37"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_TAG_XMP_WRITER"
+                    c:identifier="GST_IS_TAG_XMP_WRITER"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/tag/xmpwriter.h" line="31"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <constant name="TAG_ACOUSTID_FINGERPRINT"
+              value="chromaprint-fingerprint"
+              c:type="GST_TAG_ACOUSTID_FINGERPRINT"
+              version="1.18">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/tag.h"
+           line="92">AcoustID Fingerprint (Chromaprint)</doc>
+      <source-position filename="gst-libs/gst/tag/tag.h" line="104"/>
+      <type name="utf8" c:type="gchar*"/>
+    </constant>
+    <constant name="TAG_ACOUSTID_ID"
+              value="acoustid-id"
+              c:type="GST_TAG_ACOUSTID_ID"
+              version="1.18">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/tag.h"
+           line="83">AcoustID Identifier</doc>
+      <source-position filename="gst-libs/gst/tag/tag.h" line="90"/>
+      <type name="utf8" c:type="gchar*"/>
+    </constant>
     <constant name="TAG_CAPTURING_CONTRAST"
               value="capturing-contrast"
               c:type="GST_TAG_CAPTURING_CONTRAST">
-      <doc xml:space="preserve">Direction of contrast processing applied when capturing an image. (string)
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/tag.h"
+           line="299">Direction of contrast processing applied when capturing an image. (string)
 
 The allowed values are:
  "normal"
  "soft"
  "hard"</doc>
+      <source-position filename="gst-libs/gst/tag/tag.h" line="309"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_CAPTURING_DIGITAL_ZOOM_RATIO"
               value="capturing-digital-zoom-ratio"
               c:type="GST_TAG_CAPTURING_DIGITAL_ZOOM_RATIO">
-      <doc xml:space="preserve">Digital zoom ratio used when capturing an image. (double)</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/tag.h"
+           line="204">Digital zoom ratio used when capturing an image. (double)</doc>
+      <source-position filename="gst-libs/gst/tag/tag.h" line="209"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_CAPTURING_EXPOSURE_COMPENSATION"
               value="capturing-exposure-compensation"
               c:type="GST_TAG_CAPTURING_EXPOSURE_COMPENSATION">
-      <doc xml:space="preserve">Exposure compensation using when capturing an image in EV. (double)</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/tag.h"
+           line="248">Exposure compensation using when capturing an image in EV. (double)</doc>
+      <source-position filename="gst-libs/gst/tag/tag.h" line="253"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_CAPTURING_EXPOSURE_MODE"
               value="capturing-exposure-mode"
               c:type="GST_TAG_CAPTURING_EXPOSURE_MODE">
-      <doc xml:space="preserve">Exposure mode used when capturing an image. (string)
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/tag.h"
+           line="236">Exposure mode used when capturing an image. (string)
 
 The allowed values are:
   "auto-exposure"
   "manual-exposure"
   "auto-bracket"</doc>
+      <source-position filename="gst-libs/gst/tag/tag.h" line="246"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_CAPTURING_EXPOSURE_PROGRAM"
               value="capturing-exposure-program"
               c:type="GST_TAG_CAPTURING_EXPOSURE_PROGRAM">
-      <doc xml:space="preserve">Type of exposure control used when capturing an image. (string)
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/tag.h"
+           line="218">Type of exposure control used when capturing an image. (string)
 
 The allowed values are:
   "undefined"
@@ -64,54 +143,72 @@ The allowed values are:
   "action" - biased towards fast shutter speed
   "portrait" - closeup, leaving background out of focus
   "landscape" - landscape photos, background in focus</doc>
+      <source-position filename="gst-libs/gst/tag/tag.h" line="234"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_CAPTURING_FLASH_FIRED"
               value="capturing-flash-fired"
               c:type="GST_TAG_CAPTURING_FLASH_FIRED">
-      <doc xml:space="preserve">If flash was fired during the capture of an image. (boolean)
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/tag.h"
+           line="335">If flash was fired during the capture of an image. (boolean)
 
 Note that if this tag isn't present, it should not be assumed that
 the flash did not fire. It should be treated as unknown.</doc>
+      <source-position filename="gst-libs/gst/tag/tag.h" line="343"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_CAPTURING_FLASH_MODE"
               value="capturing-flash-mode"
               c:type="GST_TAG_CAPTURING_FLASH_MODE">
-      <doc xml:space="preserve">The flash mode selected during the capture of an image. (string)
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/tag.h"
+           line="345">The flash mode selected during the capture of an image. (string)
 
 The allowed values are:
  "auto"
  "always"
  "never"</doc>
+      <source-position filename="gst-libs/gst/tag/tag.h" line="355"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_CAPTURING_FOCAL_LENGTH"
               value="capturing-focal-length"
               c:type="GST_TAG_CAPTURING_FOCAL_LENGTH">
-      <doc xml:space="preserve">Focal length used when capturing an image, in mm. (double)</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/tag.h"
+           line="188">Focal length used when capturing an image, in mm. (double)</doc>
+      <source-position filename="gst-libs/gst/tag/tag.h" line="193"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_CAPTURING_FOCAL_LENGTH_35_MM"
               value="capturing-focal-length-35mm"
               c:type="GST_TAG_CAPTURING_FOCAL_LENGTH_35_MM"
               version="1.10">
-      <doc xml:space="preserve">35 mm equivalent focal length used when capturing an image, in mm. (double)</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/tag.h"
+           line="195">35 mm equivalent focal length used when capturing an image, in mm. (double)</doc>
+      <source-position filename="gst-libs/gst/tag/tag.h" line="202"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_CAPTURING_FOCAL_RATIO"
               value="capturing-focal-ratio"
               c:type="GST_TAG_CAPTURING_FOCAL_RATIO">
-      <doc xml:space="preserve">Focal ratio (f-number) used when capturing an image. (double)
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/tag.h"
+           line="178">Focal ratio (f-number) used when capturing an image. (double)
 
 The value stored is the denominator of the focal ratio (f-number).
 For example, if this tag value is 2, the focal ratio is f/2.</doc>
+      <source-position filename="gst-libs/gst/tag/tag.h" line="186"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_CAPTURING_GAIN_ADJUSTMENT"
               value="capturing-gain-adjustment"
               c:type="GST_TAG_CAPTURING_GAIN_ADJUSTMENT">
-      <doc xml:space="preserve">Gain adjustment applied to an image. (string)
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/tag.h"
+           line="268">Gain adjustment applied to an image. (string)
 
 The allowed values are:
   "none"
@@ -119,18 +216,24 @@ The allowed values are:
   "high-gain-up"
   "low-gain-down"
   "high-gain-down"</doc>
+      <source-position filename="gst-libs/gst/tag/tag.h" line="280"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_CAPTURING_ISO_SPEED"
               value="capturing-iso-speed"
               c:type="GST_TAG_CAPTURING_ISO_SPEED">
-      <doc xml:space="preserve">ISO speed used when capturing an image. (integer)</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/tag.h"
+           line="211">ISO speed used when capturing an image. (integer)</doc>
+      <source-position filename="gst-libs/gst/tag/tag.h" line="216"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_CAPTURING_METERING_MODE"
               value="capturing-metering-mode"
               c:type="GST_TAG_CAPTURING_METERING_MODE">
-      <doc xml:space="preserve">Defines the way a camera determines the exposure. (string)
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/tag.h"
+           line="357">Defines the way a camera determines the exposure. (string)
 
 The allowed values are:
   "unknown"
@@ -141,52 +244,67 @@ The allowed values are:
   "pattern"
   "partial"
   "other"</doc>
+      <source-position filename="gst-libs/gst/tag/tag.h" line="372"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_CAPTURING_SATURATION"
               value="capturing-saturation"
               c:type="GST_TAG_CAPTURING_SATURATION">
-      <doc xml:space="preserve">Direction of saturation processing applied when capturing an image. (string)
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/tag.h"
+           line="311">Direction of saturation processing applied when capturing an image. (string)
 
 The allowed values are:
  "normal"
  "low-saturation"
  "high-saturation"</doc>
+      <source-position filename="gst-libs/gst/tag/tag.h" line="321"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_CAPTURING_SCENE_CAPTURE_TYPE"
               value="capturing-scene-capture-type"
               c:type="GST_TAG_CAPTURING_SCENE_CAPTURE_TYPE">
-      <doc xml:space="preserve">Scene mode used when capturing an image. (string)
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/tag.h"
+           line="255">Scene mode used when capturing an image. (string)
 
 The allowed values are:
   "standard"
   "landscape"
   "portrait"
   "night-scene"</doc>
+      <source-position filename="gst-libs/gst/tag/tag.h" line="266"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_CAPTURING_SHARPNESS"
               value="capturing-sharpness"
               c:type="GST_TAG_CAPTURING_SHARPNESS">
-      <doc xml:space="preserve">Direction of sharpness processing applied when capturing an image. (string)
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/tag.h"
+           line="323">Direction of sharpness processing applied when capturing an image. (string)
 
 The allowed values are:
  "normal"
  "soft"
  "hard"</doc>
+      <source-position filename="gst-libs/gst/tag/tag.h" line="333"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_CAPTURING_SHUTTER_SPEED"
               value="capturing-shutter-speed"
               c:type="GST_TAG_CAPTURING_SHUTTER_SPEED">
-      <doc xml:space="preserve">Shutter speed used when capturing an image, in seconds. (fraction)</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/tag.h"
+           line="171">Shutter speed used when capturing an image, in seconds. (fraction)</doc>
+      <source-position filename="gst-libs/gst/tag/tag.h" line="176"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_CAPTURING_SOURCE"
               value="capturing-source"
               c:type="GST_TAG_CAPTURING_SOURCE">
-      <doc xml:space="preserve">Indicates the source of capture. The device/medium used to do the
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/tag.h"
+           line="374">Indicates the source of capture. The device/medium used to do the
 capture. (string)
 
 Allowed values are:
@@ -194,12 +312,15 @@ Allowed values are:
   "transparent-scanner"
   "reflex-scanner"
   "other"</doc>
+      <source-position filename="gst-libs/gst/tag/tag.h" line="386"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_CAPTURING_WHITE_BALANCE"
               value="capturing-white-balance"
               c:type="GST_TAG_CAPTURING_WHITE_BALANCE">
-      <doc xml:space="preserve">White balance mode used when capturing an image. (string)
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/tag.h"
+           line="282">White balance mode used when capturing an image. (string)
 
 The allowed values are:
   "auto"
@@ -210,112 +331,235 @@ The allowed values are:
   "fluorescent"
   "fluorescent h" (newer daylight-calibrated fluorescents)
   "flash"</doc>
+      <source-position filename="gst-libs/gst/tag/tag.h" line="297"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_CDDA_CDDB_DISCID"
               value="discid"
               c:type="GST_TAG_CDDA_CDDB_DISCID">
-      <doc xml:space="preserve">CDDB disc id in its short form (e.g. 'aa063d0f')</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/tag.h"
+           line="143">CDDB disc id in its short form (e.g. 'aa063d0f')</doc>
+      <source-position filename="gst-libs/gst/tag/tag.h" line="148"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_CDDA_CDDB_DISCID_FULL"
               value="discid-full"
               c:type="GST_TAG_CDDA_CDDB_DISCID_FULL">
-      <doc xml:space="preserve">CDDB disc id including all details</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/tag.h"
+           line="150">CDDB disc id including all details</doc>
+      <source-position filename="gst-libs/gst/tag/tag.h" line="155"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_CDDA_MUSICBRAINZ_DISCID"
               value="musicbrainz-discid"
               c:type="GST_TAG_CDDA_MUSICBRAINZ_DISCID">
-      <doc xml:space="preserve">Musicbrainz disc id (e.g. 'ahg7JUcfR3vCYBphSDIogOOWrr0-')</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/tag.h"
+           line="157">Musicbrainz disc id (e.g. 'ahg7JUcfR3vCYBphSDIogOOWrr0-')</doc>
+      <source-position filename="gst-libs/gst/tag/tag.h" line="162"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_CDDA_MUSICBRAINZ_DISCID_FULL"
               value="musicbrainz-discid-full"
               c:type="GST_TAG_CDDA_MUSICBRAINZ_DISCID_FULL">
-      <doc xml:space="preserve">Musicbrainz disc id details</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/tag.h"
+           line="164">Musicbrainz disc id details</doc>
+      <source-position filename="gst-libs/gst/tag/tag.h" line="169"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_CMML_CLIP"
               value="cmml-clip"
               c:type="GST_TAG_CMML_CLIP">
-      <doc xml:space="preserve">Annodex CMML clip element tag</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/tag.h"
+           line="119">Annodex CMML clip element tag</doc>
+      <source-position filename="gst-libs/gst/tag/tag.h" line="124"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_CMML_HEAD"
               value="cmml-head"
               c:type="GST_TAG_CMML_HEAD">
-      <doc xml:space="preserve">Annodex CMML head element tag</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/tag.h"
+           line="112">Annodex CMML head element tag</doc>
+      <source-position filename="gst-libs/gst/tag/tag.h" line="118"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_CMML_STREAM"
               value="cmml-stream"
               c:type="GST_TAG_CMML_STREAM">
-      <doc xml:space="preserve">Annodex CMML stream element tag</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/tag.h"
+           line="106">Annodex CMML stream element tag</doc>
+      <source-position filename="gst-libs/gst/tag/tag.h" line="111"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
+    <function-macro name="TAG_DEMUX"
+                    c:identifier="GST_TAG_DEMUX"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/tag/gsttagdemux.h" line="30"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="TAG_DEMUX_CLASS"
+                    c:identifier="GST_TAG_DEMUX_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/tag/gsttagdemux.h" line="31"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
     <constant name="TAG_ID3V2_HEADER_SIZE"
               value="10"
               c:type="GST_TAG_ID3V2_HEADER_SIZE">
-      <doc xml:space="preserve">ID3V2 header size considered minimum input for some functions such as
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/tag.h"
+           line="456">ID3V2 header size considered minimum input for some functions such as
 gst_tag_list_from_id3v2_tag() and gst_tag_get_id3v2_tag_size() for example.</doc>
+      <source-position filename="gst-libs/gst/tag/tag.h" line="462"/>
       <type name="gint" c:type="gint"/>
     </constant>
     <constant name="TAG_IMAGE_HORIZONTAL_PPI"
               value="image-horizontal-ppi"
               c:type="GST_TAG_IMAGE_HORIZONTAL_PPI">
-      <doc xml:space="preserve">Media (image/video) intended horizontal pixel density in ppi. (double)</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/tag.h"
+           line="388">Media (image/video) intended horizontal pixel density in ppi. (double)</doc>
+      <source-position filename="gst-libs/gst/tag/tag.h" line="393"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_IMAGE_VERTICAL_PPI"
               value="image-vertical-ppi"
               c:type="GST_TAG_IMAGE_VERTICAL_PPI">
-      <doc xml:space="preserve">Media (image/video) intended vertical pixel density in ppi. (double)</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/tag.h"
+           line="394">Media (image/video) intended vertical pixel density in ppi. (double)</doc>
+      <source-position filename="gst-libs/gst/tag/tag.h" line="399"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_MUSICAL_KEY"
               value="musical-key"
               c:type="GST_TAG_MUSICAL_KEY"
               version="1.2">
-      <doc xml:space="preserve">Musical key in which the sound starts. It is represented as a string
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/tag.h"
+           line="125">Musical key in which the sound starts. It is represented as a string
 with a maximum length of three characters. The ground keys are
 represented with "A","B","C","D","E", "F" and "G" and halfkeys
 represented with "b" and "#". Minor is represented as "m" (e.g. "Dbm").
 Off key is represented with an "o" only.
 This notation might be extended in the future to support non-minor/major
 keys.</doc>
+      <source-position filename="gst-libs/gst/tag/tag.h" line="138"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_MUSICBRAINZ_ALBUMARTISTID"
               value="musicbrainz-albumartistid"
               c:type="GST_TAG_MUSICBRAINZ_ALBUMARTISTID">
-      <doc xml:space="preserve">MusicBrainz album artist ID</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/tag.h"
+           line="54">MusicBrainz album artist ID</doc>
+      <source-position filename="gst-libs/gst/tag/tag.h" line="59"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_MUSICBRAINZ_ALBUMID"
               value="musicbrainz-albumid"
               c:type="GST_TAG_MUSICBRAINZ_ALBUMID">
-      <doc xml:space="preserve">MusicBrainz album ID</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/tag.h"
+           line="48">MusicBrainz album ID</doc>
+      <source-position filename="gst-libs/gst/tag/tag.h" line="53"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_MUSICBRAINZ_ARTISTID"
               value="musicbrainz-artistid"
               c:type="GST_TAG_MUSICBRAINZ_ARTISTID">
-      <doc xml:space="preserve">MusicBrainz artist ID</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/tag.h"
+           line="42">MusicBrainz artist ID</doc>
+      <source-position filename="gst-libs/gst/tag/tag.h" line="47"/>
+      <type name="utf8" c:type="gchar*"/>
+    </constant>
+    <constant name="TAG_MUSICBRAINZ_RELEASEGROUPID"
+              value="musicbrainz-releasegroupid"
+              c:type="GST_TAG_MUSICBRAINZ_RELEASEGROUPID"
+              version="1.18">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/tag.h"
+           line="60">MusicBrainz Release Group ID</doc>
+      <source-position filename="gst-libs/gst/tag/tag.h" line="67"/>
+      <type name="utf8" c:type="gchar*"/>
+    </constant>
+    <constant name="TAG_MUSICBRAINZ_RELEASETRACKID"
+              value="musicbrainz-releasetrackid"
+              c:type="GST_TAG_MUSICBRAINZ_RELEASETRACKID"
+              version="1.18">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/tag.h"
+           line="68">MusicBrainz Release Track ID</doc>
+      <source-position filename="gst-libs/gst/tag/tag.h" line="75"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_MUSICBRAINZ_TRACKID"
               value="musicbrainz-trackid"
               c:type="GST_TAG_MUSICBRAINZ_TRACKID">
-      <doc xml:space="preserve">MusicBrainz track ID</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/tag.h"
+           line="36">MusicBrainz track ID</doc>
+      <source-position filename="gst-libs/gst/tag/tag.h" line="41"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="TAG_MUSICBRAINZ_TRMID"
               value="musicbrainz-trmid"
               c:type="GST_TAG_MUSICBRAINZ_TRMID">
-      <doc xml:space="preserve">MusicBrainz track TRM ID</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/tag.h"
+           line="76">MusicBrainz track TRM ID</doc>
+      <source-position filename="gst-libs/gst/tag/tag.h" line="81"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
+    <function-macro name="TAG_MUX"
+                    c:identifier="GST_TAG_MUX"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/tag/gsttagmux.h" line="31"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="TAG_MUX_CLASS"
+                    c:identifier="GST_TAG_MUX_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/tag/gsttagmux.h" line="33"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="TAG_XMP_WRITER"
+                    c:identifier="GST_TAG_XMP_WRITER"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/tag/xmpwriter.h" line="29"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="TAG_XMP_WRITER_GET_INTERFACE"
+                    c:identifier="GST_TAG_XMP_WRITER_GET_INTERFACE"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/tag/xmpwriter.h" line="33"/>
+      <parameters>
+        <parameter name="inst">
+        </parameter>
+      </parameters>
+    </function-macro>
     <class name="TagDemux"
            c:symbol-prefix="tag_demux"
            c:type="GstTagDemux"
@@ -324,7 +568,9 @@ keys.</doc>
            glib:type-name="GstTagDemux"
            glib:get-type="gst_tag_demux_get_type"
            glib:type-struct="TagDemuxClass">
-      <doc xml:space="preserve">Provides a base class for demuxing tags at the beginning or end of a
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/gsttagdemux.c"
+           line="21">Provides a base class for demuxing tags at the beginning or end of a
 stream and handles things like typefinding, querying, seeking, and
 different modes of operation (chain-based, pull_range-based, and providing
 downstream elements with random access if upstream supports that). The tag
@@ -353,7 +599,9 @@ Subclasses have to do four things:
  for the identify function to decide whether the stream has a supported tag
  or not. A class parsing ID3v1 tags, for example, would set min_end_size to
  128 bytes.</doc>
+      <source-position filename="gst-libs/gst/tag/gsttagdemux.h" line="129"/>
       <virtual-method name="identify_tag">
+        <source-position filename="gst-libs/gst/tag/gsttagdemux.h" line="110"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -373,6 +621,7 @@ Subclasses have to do four things:
         </parameters>
       </virtual-method>
       <virtual-method name="merge_tags">
+        <source-position filename="gst-libs/gst/tag/gsttagdemux.h" line="123"/>
         <return-value transfer-ownership="full">
           <type name="Gst.TagList" c:type="GstTagList*"/>
         </return-value>
@@ -389,6 +638,7 @@ Subclasses have to do four things:
         </parameters>
       </virtual-method>
       <virtual-method name="parse_tag">
+        <source-position filename="gst-libs/gst/tag/gsttagdemux.h" line="116"/>
         <return-value transfer-ownership="none">
           <type name="TagDemuxResult" c:type="GstTagDemuxResult"/>
         </return-value>
@@ -411,14 +661,16 @@ Subclasses have to do four things:
         </parameters>
       </virtual-method>
       <field name="element">
-        <doc xml:space="preserve">parent element</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/gsttagdemux.h"
+             line="55">parent element</doc>
         <type name="Gst.Element" c:type="GstElement"/>
       </field>
       <field name="priv" readable="0" private="1">
         <type name="TagDemuxPrivate" c:type="GstTagDemuxPrivate*"/>
       </field>
       <field name="reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -426,26 +678,37 @@ Subclasses have to do four things:
     <record name="TagDemuxClass"
             c:type="GstTagDemuxClass"
             glib:is-gtype-struct-for="TagDemux">
-      <doc xml:space="preserve">The #GstTagDemuxClass structure.  See documentation at beginning of section
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/gsttagdemux.h"
+           line="69">The #GstTagDemuxClass structure.  See documentation at beginning of section
 for details about what subclasses need to override and do.</doc>
+      <source-position filename="gst-libs/gst/tag/gsttagdemux.h" line="129"/>
       <field name="parent_class">
-        <doc xml:space="preserve">the parent class.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/gsttagdemux.h"
+             line="71">the parent class.</doc>
         <type name="Gst.ElementClass" c:type="GstElementClass"/>
       </field>
       <field name="min_start_size">
-        <doc xml:space="preserve">minimum size required to identify a tag at the start and
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/gsttagdemux.h"
+             line="72">minimum size required to identify a tag at the start and
 determine its total size. Set to 0 if not interested in start tags.
 Subclasses should set this in their class_init function.</doc>
         <type name="guint" c:type="guint"/>
       </field>
       <field name="min_end_size">
-        <doc xml:space="preserve">minimum size required to identify a tag at the end and
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/gsttagdemux.h"
+             line="75">minimum size required to identify a tag at the end and
 determine its total size. Set to 0 if not interested in end tags.
 Subclasses should set this in their class_init function.</doc>
         <type name="guint" c:type="guint"/>
       </field>
       <field name="identify_tag">
         <callback name="identify_tag">
+          <source-position filename="gst-libs/gst/tag/gsttagdemux.h"
+                           line="110"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -467,6 +730,8 @@ Subclasses should set this in their class_init function.</doc>
       </field>
       <field name="parse_tag">
         <callback name="parse_tag">
+          <source-position filename="gst-libs/gst/tag/gsttagdemux.h"
+                           line="116"/>
           <return-value transfer-ownership="none">
             <type name="TagDemuxResult" c:type="GstTagDemuxResult"/>
           </return-value>
@@ -491,6 +756,8 @@ Subclasses should set this in their class_init function.</doc>
       </field>
       <field name="merge_tags">
         <callback name="merge_tags">
+          <source-position filename="gst-libs/gst/tag/gsttagdemux.h"
+                           line="123"/>
           <return-value transfer-ownership="full">
             <type name="Gst.TagList" c:type="GstTagList*"/>
           </return-value>
@@ -508,48 +775,61 @@ Subclasses should set this in their class_init function.</doc>
         </callback>
       </field>
       <field name="reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
     </record>
     <record name="TagDemuxPrivate" c:type="GstTagDemuxPrivate" disguised="1">
+      <source-position filename="gst-libs/gst/tag/gsttagdemux.h" line="37"/>
     </record>
     <enumeration name="TagDemuxResult"
                  glib:type-name="GstTagDemuxResult"
                  glib:get-type="gst_tag_demux_result_get_type"
                  c:type="GstTagDemuxResult">
-      <doc xml:space="preserve">Result values from the parse_tag virtual function.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/gsttagdemux.h"
+           line="39">Result values from the parse_tag virtual function.</doc>
       <member name="broken_tag"
               value="0"
               c:identifier="GST_TAG_DEMUX_RESULT_BROKEN_TAG"
               glib:nick="broken-tag">
-        <doc xml:space="preserve">cannot parse tag, just skip it</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/gsttagdemux.h"
+             line="41">cannot parse tag, just skip it</doc>
       </member>
       <member name="again"
               value="1"
               c:identifier="GST_TAG_DEMUX_RESULT_AGAIN"
               glib:nick="again">
-        <doc xml:space="preserve">call again with less or more data</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/gsttagdemux.h"
+             line="42">call again with less or more data</doc>
       </member>
       <member name="ok"
               value="2"
               c:identifier="GST_TAG_DEMUX_RESULT_OK"
               glib:nick="ok">
-        <doc xml:space="preserve">parsed tag successfully</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/gsttagdemux.h"
+             line="43">parsed tag successfully</doc>
       </member>
     </enumeration>
     <enumeration name="TagImageType"
                  glib:type-name="GstTagImageType"
                  glib:get-type="gst_tag_image_type_get_type"
                  c:type="GstTagImageType">
-      <doc xml:space="preserve">Type of image contained in an image tag (specified as "image-type" field in
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/tag.h"
+           line="404">Type of image contained in an image tag (specified as "image-type" field in
 the info structure in the image's #GstSample)</doc>
       <member name="none"
               value="-1"
               c:identifier="GST_TAG_IMAGE_TYPE_NONE"
               glib:nick="none">
-        <doc xml:space="preserve">No image type. Can be used to
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/tag.h"
+             line="406">No image type. Can be used to
      tell functions such as gst_tag_image_data_to_image_sample() that no
      image type should be set.</doc>
       </member>
@@ -557,176 +837,232 @@ the info structure in the image's #GstSample)</doc>
               value="0"
               c:identifier="GST_TAG_IMAGE_TYPE_UNDEFINED"
               glib:nick="undefined">
-        <doc xml:space="preserve">Undefined/other image type</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/tag.h"
+             line="409">Undefined/other image type</doc>
       </member>
       <member name="front_cover"
               value="1"
               c:identifier="GST_TAG_IMAGE_TYPE_FRONT_COVER"
               glib:nick="front-cover">
-        <doc xml:space="preserve">Cover (front)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/tag.h"
+             line="410">Cover (front)</doc>
       </member>
       <member name="back_cover"
               value="2"
               c:identifier="GST_TAG_IMAGE_TYPE_BACK_COVER"
               glib:nick="back-cover">
-        <doc xml:space="preserve">Cover (back)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/tag.h"
+             line="411">Cover (back)</doc>
       </member>
       <member name="leaflet_page"
               value="3"
               c:identifier="GST_TAG_IMAGE_TYPE_LEAFLET_PAGE"
               glib:nick="leaflet-page">
-        <doc xml:space="preserve">Leaflet page</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/tag.h"
+             line="412">Leaflet page</doc>
       </member>
       <member name="medium"
               value="4"
               c:identifier="GST_TAG_IMAGE_TYPE_MEDIUM"
               glib:nick="medium">
-        <doc xml:space="preserve">Medium (e.g. label side of CD)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/tag.h"
+             line="413">Medium (e.g. label side of CD)</doc>
       </member>
       <member name="lead_artist"
               value="5"
               c:identifier="GST_TAG_IMAGE_TYPE_LEAD_ARTIST"
               glib:nick="lead-artist">
-        <doc xml:space="preserve">Lead artist/lead performer/soloist</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/tag.h"
+             line="414">Lead artist/lead performer/soloist</doc>
       </member>
       <member name="artist"
               value="6"
               c:identifier="GST_TAG_IMAGE_TYPE_ARTIST"
               glib:nick="artist">
-        <doc xml:space="preserve">Artist/performer</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/tag.h"
+             line="415">Artist/performer</doc>
       </member>
       <member name="conductor"
               value="7"
               c:identifier="GST_TAG_IMAGE_TYPE_CONDUCTOR"
               glib:nick="conductor">
-        <doc xml:space="preserve">Conductor</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/tag.h"
+             line="416">Conductor</doc>
       </member>
       <member name="band_orchestra"
               value="8"
               c:identifier="GST_TAG_IMAGE_TYPE_BAND_ORCHESTRA"
               glib:nick="band-orchestra">
-        <doc xml:space="preserve">Band/orchestra</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/tag.h"
+             line="417">Band/orchestra</doc>
       </member>
       <member name="composer"
               value="9"
               c:identifier="GST_TAG_IMAGE_TYPE_COMPOSER"
               glib:nick="composer">
-        <doc xml:space="preserve">Composer</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/tag.h"
+             line="418">Composer</doc>
       </member>
       <member name="lyricist"
               value="10"
               c:identifier="GST_TAG_IMAGE_TYPE_LYRICIST"
               glib:nick="lyricist">
-        <doc xml:space="preserve">Lyricist/text writer</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/tag.h"
+             line="419">Lyricist/text writer</doc>
       </member>
       <member name="recording_location"
               value="11"
               c:identifier="GST_TAG_IMAGE_TYPE_RECORDING_LOCATION"
               glib:nick="recording-location">
-        <doc xml:space="preserve">Recording location</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/tag.h"
+             line="420">Recording location</doc>
       </member>
       <member name="during_recording"
               value="12"
               c:identifier="GST_TAG_IMAGE_TYPE_DURING_RECORDING"
               glib:nick="during-recording">
-        <doc xml:space="preserve">During recording</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/tag.h"
+             line="421">During recording</doc>
       </member>
       <member name="during_performance"
               value="13"
               c:identifier="GST_TAG_IMAGE_TYPE_DURING_PERFORMANCE"
               glib:nick="during-performance">
-        <doc xml:space="preserve">During performance</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/tag.h"
+             line="422">During performance</doc>
       </member>
       <member name="video_capture"
               value="14"
               c:identifier="GST_TAG_IMAGE_TYPE_VIDEO_CAPTURE"
               glib:nick="video-capture">
-        <doc xml:space="preserve">Movie/video screen capture</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/tag.h"
+             line="423">Movie/video screen capture</doc>
       </member>
       <member name="fish"
               value="15"
               c:identifier="GST_TAG_IMAGE_TYPE_FISH"
               glib:nick="fish">
-        <doc xml:space="preserve">A fish as funny as the ID3v2 spec</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/tag.h"
+             line="424">A fish as funny as the ID3v2 spec</doc>
       </member>
       <member name="illustration"
               value="16"
               c:identifier="GST_TAG_IMAGE_TYPE_ILLUSTRATION"
               glib:nick="illustration">
-        <doc xml:space="preserve">Illustration</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/tag.h"
+             line="425">Illustration</doc>
       </member>
       <member name="band_artist_logo"
               value="17"
               c:identifier="GST_TAG_IMAGE_TYPE_BAND_ARTIST_LOGO"
               glib:nick="band-artist-logo">
-        <doc xml:space="preserve">Band/artist logotype</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/tag.h"
+             line="426">Band/artist logotype</doc>
       </member>
       <member name="publisher_studio_logo"
               value="18"
               c:identifier="GST_TAG_IMAGE_TYPE_PUBLISHER_STUDIO_LOGO"
               glib:nick="publisher-studio-logo">
-        <doc xml:space="preserve">Publisher/studio logotype</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/tag.h"
+             line="427">Publisher/studio logotype</doc>
       </member>
     </enumeration>
     <bitfield name="TagLicenseFlags"
               glib:type-name="GstTagLicenseFlags"
               glib:get-type="gst_tag_license_flags_get_type"
               c:type="GstTagLicenseFlags">
-      <doc xml:space="preserve">See http://creativecommons.org/ns for more information.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/tag.h"
+           line="628">See http://creativecommons.org/ns for more information.</doc>
       <member name="permits_reproduction"
               value="1"
               c:identifier="GST_TAG_LICENSE_PERMITS_REPRODUCTION"
               glib:nick="permits-reproduction">
-        <doc xml:space="preserve">making multiple copies
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/tag.h"
+             line="630">making multiple copies
     is allowed</doc>
       </member>
       <member name="permits_distribution"
               value="2"
               c:identifier="GST_TAG_LICENSE_PERMITS_DISTRIBUTION"
               glib:nick="permits-distribution">
-        <doc xml:space="preserve">distribution, public display
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/tag.h"
+             line="632">distribution, public display
     and public performance are allowed</doc>
       </member>
       <member name="permits_derivative_works"
               value="4"
               c:identifier="GST_TAG_LICENSE_PERMITS_DERIVATIVE_WORKS"
               glib:nick="permits-derivative-works">
-        <doc xml:space="preserve">distribution of derivative
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/tag.h"
+             line="634">distribution of derivative
     works is allowed</doc>
       </member>
       <member name="permits_sharing"
               value="8"
               c:identifier="GST_TAG_LICENSE_PERMITS_SHARING"
               glib:nick="permits-sharing">
-        <doc xml:space="preserve">commercial derivatives are allowed,
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/tag.h"
+             line="636">commercial derivatives are allowed,
     but only non-commercial distribution is allowed</doc>
       </member>
       <member name="requires_notice"
               value="256"
               c:identifier="GST_TAG_LICENSE_REQUIRES_NOTICE"
               glib:nick="requires-notice">
-        <doc xml:space="preserve">copyright and license notices
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/tag.h"
+             line="638">copyright and license notices
     must be kept intact</doc>
       </member>
       <member name="requires_attribution"
               value="512"
               c:identifier="GST_TAG_LICENSE_REQUIRES_ATTRIBUTION"
               glib:nick="requires-attribution">
-        <doc xml:space="preserve">credit must be given to
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/tag.h"
+             line="640">credit must be given to
     copyright holder and/or author</doc>
       </member>
       <member name="requires_share_alike"
               value="1024"
               c:identifier="GST_TAG_LICENSE_REQUIRES_SHARE_ALIKE"
               glib:nick="requires-share-alike">
-        <doc xml:space="preserve">derivative works must be
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/tag.h"
+             line="642">derivative works must be
     licensed under the same terms or compatible terms as the original work</doc>
       </member>
       <member name="requires_source_code"
               value="2048"
               c:identifier="GST_TAG_LICENSE_REQUIRES_SOURCE_CODE"
               glib:nick="requires-source-code">
-        <doc xml:space="preserve">source code (the preferred
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/tag.h"
+             line="644">source code (the preferred
     form for making modifications) must be provided when exercising some
     rights granted by the license</doc>
       </member>
@@ -734,7 +1070,9 @@ the info structure in the image's #GstSample)</doc>
               value="4096"
               c:identifier="GST_TAG_LICENSE_REQUIRES_COPYLEFT"
               glib:nick="requires-copyleft">
-        <doc xml:space="preserve">derivative and combined works
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/tag.h"
+             line="647">derivative and combined works
     must be licensed under specified terms, similar to those of the original
     work</doc>
       </member>
@@ -742,7 +1080,9 @@ the info structure in the image's #GstSample)</doc>
               value="8192"
               c:identifier="GST_TAG_LICENSE_REQUIRES_LESSER_COPYLEFT"
               glib:nick="requires-lesser-copyleft">
-        <doc xml:space="preserve">derivative works must be
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/tag.h"
+             line="650">derivative works must be
     licensed under specified terms, with at least the same conditions as
     the original work; combinations with the work may be licensed under
     different terms</doc>
@@ -751,28 +1091,36 @@ the info structure in the image's #GstSample)</doc>
               value="65536"
               c:identifier="GST_TAG_LICENSE_PROHIBITS_COMMERCIAL_USE"
               glib:nick="prohibits-commercial-use">
-        <doc xml:space="preserve">exercising rights for
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/tag.h"
+             line="654">exercising rights for
     commercial purposes is prohibited</doc>
       </member>
       <member name="prohibits_high_income_nation_use"
               value="131072"
               c:identifier="GST_TAG_LICENSE_PROHIBITS_HIGH_INCOME_NATION_USE"
               glib:nick="prohibits-high-income-nation-use">
-        <doc xml:space="preserve">use in a
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/tag.h"
+             line="656">use in a
     non-developing country is prohibited</doc>
       </member>
       <member name="creative_commons_license"
               value="16777216"
               c:identifier="GST_TAG_LICENSE_CREATIVE_COMMONS_LICENSE"
               glib:nick="creative-commons-license">
-        <doc xml:space="preserve">this license was created
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/tag.h"
+             line="658">this license was created
     by the Creative Commons project</doc>
       </member>
       <member name="free_software_foundation_license"
               value="33554432"
               c:identifier="GST_TAG_LICENSE_FREE_SOFTWARE_FOUNDATION_LICENSE"
               glib:nick="free-software-foundation-license">
-        <doc xml:space="preserve">this license was
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/tag.h"
+             line="660">this license was
     created by the Free Software Foundation (FSF)</doc>
       </member>
     </bitfield>
@@ -784,7 +1132,9 @@ the info structure in the image's #GstSample)</doc>
            glib:type-name="GstTagMux"
            glib:get-type="gst_tag_mux_get_type"
            glib:type-struct="TagMuxClass">
-      <doc xml:space="preserve">Provides a base class for adding tags at the beginning or end of a
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/gsttagmux.c"
+           line="23">Provides a base class for adding tags at the beginning or end of a
 stream.
 
 ## Deriving from GstTagMux
@@ -798,8 +1148,10 @@ Subclasses have to do the following things:
    GST_TAG_MUX_CLASS(mux_klass)-&gt;render_start_tag and/or
    GST_TAG_MUX_CLASS(mux_klass)-&gt;render_end_tag vfuncs and set up a render
    function.</doc>
+      <source-position filename="gst-libs/gst/tag/gsttagmux.h" line="80"/>
       <implements name="Gst.TagSetter"/>
       <virtual-method name="render_end_tag">
+        <source-position filename="gst-libs/gst/tag/gsttagmux.h" line="76"/>
         <return-value transfer-ownership="full">
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </return-value>
@@ -813,6 +1165,7 @@ Subclasses have to do the following things:
         </parameters>
       </virtual-method>
       <virtual-method name="render_start_tag">
+        <source-position filename="gst-libs/gst/tag/gsttagmux.h" line="75"/>
         <return-value transfer-ownership="full">
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </return-value>
@@ -826,14 +1179,16 @@ Subclasses have to do the following things:
         </parameters>
       </virtual-method>
       <field name="element">
-        <doc xml:space="preserve">parent element</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/gsttagmux.h"
+             line="47">parent element</doc>
         <type name="Gst.Element" c:type="GstElement"/>
       </field>
       <field name="priv" readable="0" private="1">
         <type name="TagMuxPrivate" c:type="GstTagMuxPrivate*"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -841,14 +1196,20 @@ Subclasses have to do the following things:
     <record name="TagMuxClass"
             c:type="GstTagMuxClass"
             glib:is-gtype-struct-for="TagMux">
-      <doc xml:space="preserve">The #GstTagMuxClass structure. Subclasses need to override at least one
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/gsttagmux.h"
+           line="60">The #GstTagMuxClass structure. Subclasses need to override at least one
 of the two render vfuncs.</doc>
+      <source-position filename="gst-libs/gst/tag/gsttagmux.h" line="80"/>
       <field name="parent_class">
-        <doc xml:space="preserve">the parent class.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/gsttagmux.h"
+             line="62">the parent class.</doc>
         <type name="Gst.ElementClass" c:type="GstElementClass"/>
       </field>
       <field name="render_start_tag">
         <callback name="render_start_tag">
+          <source-position filename="gst-libs/gst/tag/gsttagmux.h" line="75"/>
           <return-value transfer-ownership="full">
             <type name="Gst.Buffer" c:type="GstBuffer*"/>
           </return-value>
@@ -864,6 +1225,7 @@ of the two render vfuncs.</doc>
       </field>
       <field name="render_end_tag">
         <callback name="render_end_tag">
+          <source-position filename="gst-libs/gst/tag/gsttagmux.h" line="76"/>
           <return-value transfer-ownership="full">
             <type name="Gst.Buffer" c:type="GstBuffer*"/>
           </return-value>
@@ -878,12 +1240,13 @@ of the two render vfuncs.</doc>
         </callback>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
     </record>
     <record name="TagMuxPrivate" c:type="GstTagMuxPrivate" disguised="1">
+      <source-position filename="gst-libs/gst/tag/gsttagmux.h" line="43"/>
     </record>
     <interface name="TagXmpWriter"
                c:symbol-prefix="tag_xmp_writer"
@@ -891,94 +1254,131 @@ of the two render vfuncs.</doc>
                glib:type-name="GstTagXmpWriter"
                glib:get-type="gst_tag_xmp_writer_get_type"
                glib:type-struct="TagXmpWriterInterface">
-      <doc xml:space="preserve">This interface is implemented by elements that are able to do XMP serialization. Examples for
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/xmpwriter.c"
+           line="20">This interface is implemented by elements that are able to do XMP serialization. Examples for
 such elements are #jifmux and #qtmux.
 
 Applications can use this interface to configure which XMP schemas should be used when serializing
 tags into XMP. Schemas are represented by their names, a full list of the supported schemas can be
 obtained from gst_tag_xmp_list_schemas(). By default, all schemas are used.</doc>
+      <source-position filename="gst-libs/gst/tag/xmpwriter.h" line="42"/>
       <prerequisite name="Gst.Element"/>
       <method name="add_all_schemas"
               c:identifier="gst_tag_xmp_writer_add_all_schemas">
-        <doc xml:space="preserve">Adds all available XMP schemas to the configuration. Meaning that
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/xmpwriter.c"
+             line="153">Adds all available XMP schemas to the configuration. Meaning that
 all will be used.</doc>
+        <source-position filename="gst-libs/gst/tag/xmpwriter.h" line="48"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="config" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstTagXmpWriter</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/tag/xmpwriter.c"
+                 line="155">a #GstTagXmpWriter</doc>
             <type name="TagXmpWriter" c:type="GstTagXmpWriter*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="add_schema" c:identifier="gst_tag_xmp_writer_add_schema">
-        <doc xml:space="preserve">Adds @schema to the list schemas</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/xmpwriter.c"
+             line="174">Adds @schema to the list schemas</doc>
+        <source-position filename="gst-libs/gst/tag/xmpwriter.h" line="51"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="config" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstTagXmpWriter</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/tag/xmpwriter.c"
+                 line="176">a #GstTagXmpWriter</doc>
             <type name="TagXmpWriter" c:type="GstTagXmpWriter*"/>
           </instance-parameter>
           <parameter name="schema" transfer-ownership="none">
-            <doc xml:space="preserve">the schema to be added</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/tag/xmpwriter.c"
+                 line="177">the schema to be added</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </method>
       <method name="has_schema" c:identifier="gst_tag_xmp_writer_has_schema">
-        <doc xml:space="preserve">Checks if @schema is going to be used</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/xmpwriter.c"
+             line="195">Checks if @schema is going to be used</doc>
+        <source-position filename="gst-libs/gst/tag/xmpwriter.h" line="55"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if it is going to be used</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/tag/xmpwriter.c"
+               line="202">%TRUE if it is going to be used</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="config" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstTagXmpWriter</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/tag/xmpwriter.c"
+                 line="197">a #GstTagXmpWriter</doc>
             <type name="TagXmpWriter" c:type="GstTagXmpWriter*"/>
           </instance-parameter>
           <parameter name="schema" transfer-ownership="none">
-            <doc xml:space="preserve">the schema to test</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/tag/xmpwriter.c"
+                 line="198">the schema to test</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </method>
       <method name="remove_all_schemas"
               c:identifier="gst_tag_xmp_writer_remove_all_schemas">
-        <doc xml:space="preserve">Removes all schemas from the list of schemas to use. Meaning that no
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/xmpwriter.c"
+             line="257">Removes all schemas from the list of schemas to use. Meaning that no
 XMP will be generated.</doc>
+        <source-position filename="gst-libs/gst/tag/xmpwriter.h" line="63"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="config" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstTagXmpWriter</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/tag/xmpwriter.c"
+                 line="259">a #GstTagXmpWriter</doc>
             <type name="TagXmpWriter" c:type="GstTagXmpWriter*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="remove_schema"
               c:identifier="gst_tag_xmp_writer_remove_schema">
-        <doc xml:space="preserve">Removes a schema from the list of schemas to use. Nothing is done if
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/xmpwriter.c"
+             line="227">Removes a schema from the list of schemas to use. Nothing is done if
 the schema wasn't in the list</doc>
+        <source-position filename="gst-libs/gst/tag/xmpwriter.h" line="59"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="config" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstTagXmpWriter</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/tag/xmpwriter.c"
+                 line="229">a #GstTagXmpWriter</doc>
             <type name="TagXmpWriter" c:type="GstTagXmpWriter*"/>
           </instance-parameter>
           <parameter name="schema" transfer-ownership="none">
-            <doc xml:space="preserve">the schema to remove</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/tag/xmpwriter.c"
+                 line="230">the schema to remove</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </method>
       <method name="tag_list_to_xmp_buffer"
               c:identifier="gst_tag_xmp_writer_tag_list_to_xmp_buffer">
+        <source-position filename="gst-libs/gst/tag/xmpwriter.h" line="66"/>
         <return-value transfer-ownership="full">
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </return-value>
@@ -998,33 +1398,43 @@ the schema wasn't in the list</doc>
     <record name="TagXmpWriterInterface"
             c:type="GstTagXmpWriterInterface"
             glib:is-gtype-struct-for="TagXmpWriter">
+      <source-position filename="gst-libs/gst/tag/xmpwriter.h" line="42"/>
       <field name="parent">
         <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
       </field>
     </record>
     <function name="tag_check_language_code"
               c:identifier="gst_tag_check_language_code">
-      <doc xml:space="preserve">Check if a given string contains a known ISO 639 language code.
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/lang.c"
+           line="482">Check if a given string contains a known ISO 639 language code.
 
 This is useful in situations where it's not clear whether a given
 string is a language code (which should be put into a #GST_TAG_LANGUAGE_CODE
 tag) or a free-form language name descriptor (which should be put into a
 #GST_TAG_LANGUAGE_NAME tag instead).</doc>
+      <source-position filename="gst-libs/gst/tag/tag.h" line="614"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">TRUE if the two- or three-letter language code in @lang_code
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/lang.c"
+             line="493">TRUE if the two- or three-letter language code in @lang_code
     is a valid ISO-639 language code.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="lang_code" transfer-ownership="none">
-          <doc xml:space="preserve">ISO-639 language code (e.g. "deu" or "ger" or "de")</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/tag/lang.c"
+               line="484">ISO-639 language code (e.g. "deu" or "ger" or "de")</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
       </parameters>
     </function>
     <function name="tag_freeform_string_to_utf8"
               c:identifier="gst_tag_freeform_string_to_utf8">
-      <doc xml:space="preserve">Convenience function to read a string with unknown character encoding. If
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/tags.c"
+           line="317">Convenience function to read a string with unknown character encoding. If
 the string is already in UTF-8 encoding, it will be returned right away.
 If not it tries to detect byte-order-mark for UTF-16/32 cases and use that.
 Otherwise, the environment will be searched for a number of environment
@@ -1032,23 +1442,32 @@ variables (whose names are specified in the NULL-terminated string array
 @env_vars) containing a list of character encodings to try/use. If none
 are specified, the current locale will be tried. If that also doesn't work,
 WINDOWS-1252/ISO-8859-1 is assumed (which will almost always succeed).</doc>
+      <source-position filename="gst-libs/gst/tag/tag.h" line="581"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">a newly-allocated string in UTF-8 encoding, or NULL</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/tags.c"
+             line="333">a newly-allocated string in UTF-8 encoding, or NULL</doc>
         <type name="utf8" c:type="gchar*"/>
       </return-value>
       <parameters>
         <parameter name="data" transfer-ownership="none">
-          <doc xml:space="preserve">string data</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/tag/tags.c"
+               line="319">string data</doc>
           <array length="1" zero-terminated="0" c:type="const gchar*">
             <type name="gchar"/>
           </array>
         </parameter>
         <parameter name="size" transfer-ownership="none">
-          <doc xml:space="preserve">length of string data, or -1 if the string is NUL-terminated</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/tag/tags.c"
+               line="320">length of string data, or -1 if the string is NUL-terminated</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
         <parameter name="env_vars" transfer-ownership="none">
-          <doc xml:space="preserve">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/tag/tags.c"
+               line="321">
    a NULL-terminated string array of environment variable names, or NULL</doc>
           <array c:type="const gchar**">
             <type name="utf8" c:type="gchar*"/>
@@ -1057,142 +1476,213 @@ WINDOWS-1252/ISO-8859-1 is assumed (which will almost always succeed).</doc>
       </parameters>
     </function>
     <function name="tag_from_id3_tag" c:identifier="gst_tag_from_id3_tag">
-      <doc xml:space="preserve">Looks up the GStreamer tag for a ID3v2 tag.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/gstid3tag.c"
+           line="119">Looks up the GStreamer tag for a ID3v2 tag.</doc>
+      <source-position filename="gst-libs/gst/tag/tag.h" line="518"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">The corresponding GStreamer tag or NULL if none exists.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/gstid3tag.c"
+             line="125">The corresponding GStreamer tag or NULL if none exists.</doc>
         <type name="utf8" c:type="const gchar*"/>
       </return-value>
       <parameters>
         <parameter name="id3_tag" transfer-ownership="none">
-          <doc xml:space="preserve">ID3v2 tag to convert to GStreamer tag</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/tag/gstid3tag.c"
+               line="121">ID3v2 tag to convert to GStreamer tag</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
       </parameters>
     </function>
     <function name="tag_from_id3_user_tag"
               c:identifier="gst_tag_from_id3_user_tag">
-      <doc xml:space="preserve">Looks up the GStreamer tag for an ID3v2 user tag (e.g. description in
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/gstid3tag.c"
+           line="185">Looks up the GStreamer tag for an ID3v2 user tag (e.g. description in
 TXXX frame or owner in UFID frame).</doc>
+      <source-position filename="gst-libs/gst/tag/tag.h" line="521"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">The corresponding GStreamer tag or NULL if none exists.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/gstid3tag.c"
+             line="193">The corresponding GStreamer tag or NULL if none exists.</doc>
         <type name="utf8" c:type="const gchar*"/>
       </return-value>
       <parameters>
         <parameter name="type" transfer-ownership="none">
-          <doc xml:space="preserve">the type of ID3v2 user tag (e.g. "TXXX" or "UDIF")</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/tag/gstid3tag.c"
+               line="187">the type of ID3v2 user tag (e.g. "TXXX" or "UDIF")</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
         <parameter name="id3_user_tag" transfer-ownership="none">
-          <doc xml:space="preserve">ID3v2 user tag to convert to GStreamer tag</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/tag/gstid3tag.c"
+               line="188">ID3v2 user tag to convert to GStreamer tag</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
       </parameters>
     </function>
     <function name="tag_from_vorbis_tag"
               c:identifier="gst_tag_from_vorbis_tag">
-      <doc xml:space="preserve">Looks up the GStreamer tag for a vorbiscomment tag.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/gstvorbistag.c"
+           line="114">Looks up the GStreamer tag for a vorbiscomment tag.</doc>
+      <source-position filename="gst-libs/gst/tag/tag.h" line="467"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">The corresponding GStreamer tag or NULL if none exists.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/gstvorbistag.c"
+             line="120">The corresponding GStreamer tag or NULL if none exists.</doc>
         <type name="utf8" c:type="const gchar*"/>
       </return-value>
       <parameters>
         <parameter name="vorbis_tag" transfer-ownership="none">
-          <doc xml:space="preserve">vorbiscomment tag to convert to GStreamer tag</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/tag/gstvorbistag.c"
+               line="116">vorbiscomment tag to convert to GStreamer tag</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
       </parameters>
     </function>
     <function name="tag_get_id3v2_tag_size"
               c:identifier="gst_tag_get_id3v2_tag_size">
-      <doc xml:space="preserve">Determines size of an ID3v2 tag on buffer containing at least ID3v2 header,
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/id3v2.c"
+           line="85">Determines size of an ID3v2 tag on buffer containing at least ID3v2 header,
 i.e. at least #GST_TAG_ID3V2_HEADER_SIZE (10) bytes;</doc>
+      <source-position filename="gst-libs/gst/tag/tag.h" line="537"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">Size of tag, or 0 if header is invalid or too small.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/id3v2.c"
+             line="92">Size of tag, or 0 if header is invalid or too small.</doc>
         <type name="guint" c:type="guint"/>
       </return-value>
       <parameters>
         <parameter name="buffer" transfer-ownership="none">
-          <doc xml:space="preserve">buffer holding ID3v2 tag (or at least the start of one)</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/tag/id3v2.c"
+               line="87">buffer holding ID3v2 tag (or at least the start of one)</doc>
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </parameter>
       </parameters>
     </function>
+    <function-macro name="tag_get_language_code"
+                    c:identifier="gst_tag_get_language_code"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/tag.h"
+           line="616">Convenience macro wrapping gst_tag_get_language_code_iso_639_1().</doc>
+      <source-position filename="gst-libs/gst/tag/tag.h" line="622"/>
+      <parameters>
+        <parameter name="lang_code">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/tag/tag.h"
+               line="618">ISO-639 language code (e.g. "deu" or "ger" or "de")</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
     <function name="tag_get_language_code_iso_639_1"
               c:identifier="gst_tag_get_language_code_iso_639_1">
-      <doc xml:space="preserve">Returns two-letter ISO-639-1 language code given a three-letter ISO-639-2
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/lang.c"
+           line="338">Returns two-letter ISO-639-1 language code given a three-letter ISO-639-2
 language code or two-letter ISO-639-1 language code (both are accepted for
 convenience).
 
 Language codes are case-sensitive and expected to be lower case.</doc>
+      <source-position filename="gst-libs/gst/tag/tag.h" line="605"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">two-letter ISO-639-1 language code string that maps to @lang_code,
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/lang.c"
+             line="348">two-letter ISO-639-1 language code string that maps to @lang_code,
     or NULL if no mapping is known. The returned string must not be
     modified or freed.</doc>
         <type name="utf8" c:type="const gchar*"/>
       </return-value>
       <parameters>
         <parameter name="lang_code" transfer-ownership="none">
-          <doc xml:space="preserve">ISO-639 language code (e.g. "deu" or "ger" or "de")</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/tag/lang.c"
+               line="340">ISO-639 language code (e.g. "deu" or "ger" or "de")</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
       </parameters>
     </function>
     <function name="tag_get_language_code_iso_639_2B"
               c:identifier="gst_tag_get_language_code_iso_639_2B">
-      <doc xml:space="preserve">Returns three-letter ISO-639-2 "bibliographic" language code given a
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/lang.c"
+           line="448">Returns three-letter ISO-639-2 "bibliographic" language code given a
 two-letter ISO-639-1 language code or a three-letter ISO-639-2 language
 code (both are accepted for convenience).
 
 The "bibliographic" code is derived from the English name of the language
 (e.g. "ger" for German instead of "de" or "deu"). In most scenarios, the
-"terminological" codes are prefered.
+"terminological" codes are preferred.
 
 Language codes are case-sensitive and expected to be lower case.</doc>
+      <source-position filename="gst-libs/gst/tag/tag.h" line="608"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">three-letter ISO-639-2 language code string that maps to @lang_code,
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/lang.c"
+             line="462">three-letter ISO-639-2 language code string that maps to @lang_code,
     or NULL if no mapping is known. The returned string must not be
     modified or freed.</doc>
         <type name="utf8" c:type="const gchar*"/>
       </return-value>
       <parameters>
         <parameter name="lang_code" transfer-ownership="none">
-          <doc xml:space="preserve">ISO-639 language code (e.g. "deu" or "ger" or "de")</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/tag/lang.c"
+               line="450">ISO-639 language code (e.g. "deu" or "ger" or "de")</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
       </parameters>
     </function>
     <function name="tag_get_language_code_iso_639_2T"
               c:identifier="gst_tag_get_language_code_iso_639_2T">
-      <doc xml:space="preserve">Returns three-letter ISO-639-2 "terminological" language code given a
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/lang.c"
+           line="414">Returns three-letter ISO-639-2 "terminological" language code given a
 two-letter ISO-639-1 language code or a three-letter ISO-639-2 language
 code (both are accepted for convenience).
 
 The "terminological" code is derived from the local name of the language
 (e.g. "deu" for German instead of "ger"). In most scenarios, the
-"terminological" codes are prefered over the "bibliographic" ones.
+"terminological" codes are preferred over the "bibliographic" ones.
 
 Language codes are case-sensitive and expected to be lower case.</doc>
+      <source-position filename="gst-libs/gst/tag/tag.h" line="611"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">three-letter ISO-639-2 language code string that maps to @lang_code,
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/lang.c"
+             line="428">three-letter ISO-639-2 language code string that maps to @lang_code,
     or NULL if no mapping is known. The returned string must not be
     modified or freed.</doc>
         <type name="utf8" c:type="const gchar*"/>
       </return-value>
       <parameters>
         <parameter name="lang_code" transfer-ownership="none">
-          <doc xml:space="preserve">ISO-639 language code (e.g. "deu" or "ger" or "de")</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/tag/lang.c"
+               line="416">ISO-639 language code (e.g. "deu" or "ger" or "de")</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
       </parameters>
     </function>
     <function name="tag_get_language_codes"
               c:identifier="gst_tag_get_language_codes">
-      <doc xml:space="preserve">Returns a list of known language codes (in form of two-letter ISO-639-1
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/lang.c"
+           line="259">Returns a list of known language codes (in form of two-letter ISO-639-1
 codes). This is useful for UIs to build a list of available languages for
 tagging purposes (e.g. to tag an audio track appropriately in a video or
 audio editor).</doc>
+      <source-position filename="gst-libs/gst/tag/tag.h" line="599"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">NULL-terminated string array with two-letter
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/lang.c"
+             line="267">NULL-terminated string array with two-letter
     language codes. Free with g_strfreev() when no longer needed.</doc>
         <array c:type="gchar**">
           <type name="utf8"/>
@@ -1201,14 +1691,19 @@ audio editor).</doc>
     </function>
     <function name="tag_get_language_name"
               c:identifier="gst_tag_get_language_name">
-      <doc xml:space="preserve">Returns the name of the language given an ISO-639 language code as
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/lang.c"
+           line="304">Returns the name of the language given an ISO-639 language code as
 found in a GST_TAG_LANGUAGE_CODE tag. The name will be translated
 according to the current locale (if the library was built against the
 iso-codes package, otherwise the English name will be returned).
 
 Language codes are case-sensitive and expected to be lower case.</doc>
+      <source-position filename="gst-libs/gst/tag/tag.h" line="602"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">language name in UTF-8 format, or NULL if @language_code could
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/lang.c"
+             line="315">language name in UTF-8 format, or NULL if @language_code could
     not be mapped to a language name. The returned string must not be
     modified and does not need to freed; it will stay valid until the
     application is terminated.</doc>
@@ -1216,23 +1711,32 @@ Language codes are case-sensitive and expected to be lower case.</doc>
       </return-value>
       <parameters>
         <parameter name="language_code" transfer-ownership="none">
-          <doc xml:space="preserve">two or three-letter ISO-639 language code</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/tag/lang.c"
+               line="306">two or three-letter ISO-639 language code</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
       </parameters>
     </function>
     <function name="tag_get_license_description"
               c:identifier="gst_tag_get_license_description">
-      <doc xml:space="preserve">Get the description of a license, which is a translated description
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/licenses.c"
+           line="412">Get the description of a license, which is a translated description
 of the license's main features.</doc>
+      <source-position filename="gst-libs/gst/tag/tag.h" line="701"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">the description of the license, or NULL if the license is unknown
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/licenses.c"
+             line="420">the description of the license, or NULL if the license is unknown
    or a description is not available.</doc>
         <type name="utf8" c:type="const gchar*"/>
       </return-value>
       <parameters>
         <parameter name="license_ref" transfer-ownership="none">
-          <doc xml:space="preserve">a license reference string in form of a URI,
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/tag/licenses.c"
+               line="414">a license reference string in form of a URI,
     e.g. "http://creativecommons.org/licenses/by-nc-nd/2.0/"</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
@@ -1240,15 +1744,22 @@ of the license's main features.</doc>
     </function>
     <function name="tag_get_license_flags"
               c:identifier="gst_tag_get_license_flags">
-      <doc xml:space="preserve">Get the flags of a license, which describe most of the features of
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/licenses.c"
+           line="320">Get the flags of a license, which describe most of the features of
 a license in their most general form.</doc>
+      <source-position filename="gst-libs/gst/tag/tag.h" line="689"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">the flags of the license, or 0 if the license is unknown</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/licenses.c"
+             line="328">the flags of the license, or 0 if the license is unknown</doc>
         <type name="TagLicenseFlags" c:type="GstTagLicenseFlags"/>
       </return-value>
       <parameters>
         <parameter name="license_ref" transfer-ownership="none">
-          <doc xml:space="preserve">a license reference string in form of a URI,
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/tag/licenses.c"
+               line="322">a license reference string in form of a URI,
     e.g. "http://creativecommons.org/licenses/by-nc-nd/2.0/"</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
@@ -1256,21 +1767,28 @@ a license in their most general form.</doc>
     </function>
     <function name="tag_get_license_jurisdiction"
               c:identifier="gst_tag_get_license_jurisdiction">
-      <doc xml:space="preserve">Get the jurisdiction code of a license. This is usually a two-letter
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/licenses.c"
+           line="438">Get the jurisdiction code of a license. This is usually a two-letter
 ISO 3166-1 alpha-2 code, but there is also the special case of Scotland,
 for which no code exists and which is thus represented as "scotland".
 
 Known jurisdictions: ar, at, au, be, bg, br, ca, ch, cl, cn, co, de,
 dk, es, fi, fr, hr, hu, il, in, it, jp, kr, mk, mt, mx, my, nl, pe, pl,
 pt, scotland, se, si, tw, uk, us, za.</doc>
+      <source-position filename="gst-libs/gst/tag/tag.h" line="704"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">the jurisdiction code of the license, or NULL if the license is
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/licenses.c"
+             line="451">the jurisdiction code of the license, or NULL if the license is
    unknown or is not specific to a particular jurisdiction.</doc>
         <type name="utf8" c:type="const gchar*"/>
       </return-value>
       <parameters>
         <parameter name="license_ref" transfer-ownership="none">
-          <doc xml:space="preserve">a license reference string in form of a URI,
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/tag/licenses.c"
+               line="440">a license reference string in form of a URI,
     e.g. "http://creativecommons.org/licenses/by-nc-nd/2.0/"</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
@@ -1278,15 +1796,22 @@ pt, scotland, se, si, tw, uk, us, za.</doc>
     </function>
     <function name="tag_get_license_nick"
               c:identifier="gst_tag_get_license_nick">
-      <doc xml:space="preserve">Get the nick name of a license, which is a short (untranslated) string
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/licenses.c"
+           line="341">Get the nick name of a license, which is a short (untranslated) string
 such as e.g. "CC BY-NC-ND 2.0 UK".</doc>
+      <source-position filename="gst-libs/gst/tag/tag.h" line="692"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">the nick name of the license, or NULL if the license is unknown</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/licenses.c"
+             line="349">the nick name of the license, or NULL if the license is unknown</doc>
         <type name="utf8" c:type="const gchar*"/>
       </return-value>
       <parameters>
         <parameter name="license_ref" transfer-ownership="none">
-          <doc xml:space="preserve">a license reference string in form of a URI,
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/tag/licenses.c"
+               line="343">a license reference string in form of a URI,
     e.g. "http://creativecommons.org/licenses/by-nc-nd/2.0/"</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
@@ -1294,16 +1819,23 @@ such as e.g. "CC BY-NC-ND 2.0 UK".</doc>
     </function>
     <function name="tag_get_license_title"
               c:identifier="gst_tag_get_license_title">
-      <doc xml:space="preserve">Get the title of a license, which is a short translated description
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/licenses.c"
+           line="386">Get the title of a license, which is a short translated description
 of the license's features (generally not very pretty though).</doc>
+      <source-position filename="gst-libs/gst/tag/tag.h" line="695"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">the title of the license, or NULL if the license is unknown or
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/licenses.c"
+             line="394">the title of the license, or NULL if the license is unknown or
    no title is available.</doc>
         <type name="utf8" c:type="const gchar*"/>
       </return-value>
       <parameters>
         <parameter name="license_ref" transfer-ownership="none">
-          <doc xml:space="preserve">a license reference string in form of a URI,
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/tag/licenses.c"
+               line="388">a license reference string in form of a URI,
     e.g. "http://creativecommons.org/licenses/by-nc-nd/2.0/"</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
@@ -1311,27 +1843,39 @@ of the license's features (generally not very pretty though).</doc>
     </function>
     <function name="tag_get_license_version"
               c:identifier="gst_tag_get_license_version">
-      <doc xml:space="preserve">Get the version of a license.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/licenses.c"
+           line="466">Get the version of a license.</doc>
+      <source-position filename="gst-libs/gst/tag/tag.h" line="698"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">the version of the license, or NULL if the license is not known or
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/licenses.c"
+             line="473">the version of the license, or NULL if the license is not known or
    has no version</doc>
         <type name="utf8" c:type="const gchar*"/>
       </return-value>
       <parameters>
         <parameter name="license_ref" transfer-ownership="none">
-          <doc xml:space="preserve">a license reference string in form of a URI,
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/tag/licenses.c"
+               line="468">a license reference string in form of a URI,
     e.g. "http://creativecommons.org/licenses/by-nc-nd/2.0/"</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
       </parameters>
     </function>
     <function name="tag_get_licenses" c:identifier="gst_tag_get_licenses">
-      <doc xml:space="preserve">Returns a list of known license references (in form of URIs). This is
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/licenses.c"
+           line="197">Returns a list of known license references (in form of URIs). This is
 useful for UIs to build a list of available licenses for tagging purposes
 (e.g. to tag an audio track appropriately in a video or audio editor, or
 an image in a camera application).</doc>
+      <source-position filename="gst-libs/gst/tag/tag.h" line="686"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">NULL-terminated array of license strings. Free
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/licenses.c"
+             line="205">NULL-terminated array of license strings. Free
     with g_strfreev() when no longer needed.</doc>
         <array c:type="gchar**">
           <type name="utf8"/>
@@ -1340,29 +1884,43 @@ an image in a camera application).</doc>
     </function>
     <function name="tag_id3_genre_count"
               c:identifier="gst_tag_id3_genre_count">
-      <doc xml:space="preserve">Gets the number of ID3v1 genres that can be identified. Winamp genres are
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/gstid3tag.c"
+           line="311">Gets the number of ID3v1 genres that can be identified. Winamp genres are
 included.</doc>
+      <source-position filename="gst-libs/gst/tag/tag.h" line="509"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">the number of ID3v1 genres that can be identified</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/gstid3tag.c"
+             line="317">the number of ID3v1 genres that can be identified</doc>
         <type name="guint" c:type="guint"/>
       </return-value>
     </function>
     <function name="tag_id3_genre_get" c:identifier="gst_tag_id3_genre_get">
-      <doc xml:space="preserve">Gets the ID3v1 genre name for a given ID.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/gstid3tag.c"
+           line="325">Gets the ID3v1 genre name for a given ID.</doc>
+      <source-position filename="gst-libs/gst/tag/tag.h" line="512"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">the genre or NULL if no genre is associated with that ID.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/gstid3tag.c"
+             line="331">the genre or NULL if no genre is associated with that ID.</doc>
         <type name="utf8" c:type="const gchar*"/>
       </return-value>
       <parameters>
         <parameter name="id" transfer-ownership="none">
-          <doc xml:space="preserve">ID of genre to query</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/tag/gstid3tag.c"
+               line="327">ID of genre to query</doc>
           <type name="guint" c:type="const guint"/>
         </parameter>
       </parameters>
     </function>
     <function name="tag_image_data_to_image_sample"
               c:identifier="gst_tag_image_data_to_image_sample">
-      <doc xml:space="preserve">Helper function for tag-reading plugins to create a #GstSample suitable to
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/tags.c"
+           line="488">Helper function for tag-reading plugins to create a #GstSample suitable to
 add to a #GstTagList as an image tag (such as #GST_TAG_IMAGE or
 #GST_TAG_PREVIEW_IMAGE) from the encoded image data and an (optional) image
 type.
@@ -1377,30 +1935,39 @@ rather than the image itself.
 In GStreamer, image tags are #GstSample&lt;!-- --&gt;s containing the raw image
 data, with the sample caps describing the content type of the image
 (e.g. image/jpeg, image/png, text/uri-list). The sample info may contain
-an additional 'image-type' field of #GST_TYPE_TAG_IMAGE_TYPE to describe
+an additional 'image-type' field of #GstTagImageType to describe
 the type of image (front cover, back cover etc.). #GST_TAG_PREVIEW_IMAGE
 tags should not carry an image type, their type is already indicated via
 the special tag name.
 
 This function will do various checks and typefind the encoded image
 data (we can't trust the declared mime type).</doc>
+      <source-position filename="gst-libs/gst/tag/tag.h" line="586"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">a newly-allocated image sample for use in tag lists, or NULL</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/tags.c"
+             line="519">a newly-allocated image sample for use in tag lists, or NULL</doc>
         <type name="Gst.Sample" c:type="GstSample*"/>
       </return-value>
       <parameters>
         <parameter name="image_data" transfer-ownership="none">
-          <doc xml:space="preserve">the (encoded) image</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/tag/tags.c"
+               line="490">the (encoded) image</doc>
           <array length="1" zero-terminated="0" c:type="const guint8*">
             <type name="guint8" c:type="guint8"/>
           </array>
         </parameter>
         <parameter name="image_data_len" transfer-ownership="none">
-          <doc xml:space="preserve">the length of the encoded image data at @image_data</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/tag/tags.c"
+               line="491">the length of the encoded image data at @image_data</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
         <parameter name="image_type" transfer-ownership="none">
-          <doc xml:space="preserve">type of the image, or #GST_TAG_IMAGE_TYPE_UNDEFINED. Pass
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/tag/tags.c"
+               line="492">type of the image, or #GST_TAG_IMAGE_TYPE_UNDEFINED. Pass
     #GST_TAG_IMAGE_TYPE_NONE if no image type should be set at all (e.g.
     for preview images)</doc>
           <type name="TagImageType" c:type="GstTagImageType"/>
@@ -1409,30 +1976,43 @@ data (we can't trust the declared mime type).</doc>
     </function>
     <function name="tag_list_add_id3_image"
               c:identifier="gst_tag_list_add_id3_image">
-      <doc xml:space="preserve">Adds an image from an ID3 APIC frame (or similar, such as used in FLAC)
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/gstid3tag.c"
+           line="345">Adds an image from an ID3 APIC frame (or similar, such as used in FLAC)
 to the given tag list. Also see gst_tag_image_data_to_image_sample() for
 more information on image tags in GStreamer.</doc>
+      <source-position filename="gst-libs/gst/tag/tag.h" line="528"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE if the image was processed, otherwise %FALSE</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/gstid3tag.c"
+             line="357">%TRUE if the image was processed, otherwise %FALSE</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="tag_list" transfer-ownership="none">
-          <doc xml:space="preserve">a tag list</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/tag/gstid3tag.c"
+               line="347">a tag list</doc>
           <type name="Gst.TagList" c:type="GstTagList*"/>
         </parameter>
         <parameter name="image_data" transfer-ownership="none">
-          <doc xml:space="preserve">the (encoded) image</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/tag/gstid3tag.c"
+               line="348">the (encoded) image</doc>
           <array length="2" zero-terminated="0" c:type="const guint8*">
             <type name="guint8" c:type="guint8"/>
           </array>
         </parameter>
         <parameter name="image_data_len" transfer-ownership="none">
-          <doc xml:space="preserve">the length of the encoded image data at @image_data</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/tag/gstid3tag.c"
+               line="349">the length of the encoded image data at @image_data</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
         <parameter name="id3_picture_type" transfer-ownership="none">
-          <doc xml:space="preserve">picture type as per the ID3 (v2.4.0) specification for
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/tag/gstid3tag.c"
+               line="350">picture type as per the ID3 (v2.4.0) specification for
    the APIC frame (0 = unknown/other)</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
@@ -1440,87 +2020,125 @@ more information on image tags in GStreamer.</doc>
     </function>
     <function name="tag_list_from_exif_buffer"
               c:identifier="gst_tag_list_from_exif_buffer">
-      <doc xml:space="preserve">Parses the IFD and IFD tags data contained in the buffer and puts it
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/gstexiftag.c"
+           line="1941">Parses the IFD and IFD tags data contained in the buffer and puts it
 on a taglist. The base_offset is used to subtract from the offset in
 the tag entries and be able to get the offset relative to the buffer
 start</doc>
+      <source-position filename="gst-libs/gst/tag/tag.h" line="563"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">The parsed taglist</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/gstexiftag.c"
+             line="1952">The parsed taglist</doc>
         <type name="Gst.TagList" c:type="GstTagList*"/>
       </return-value>
       <parameters>
         <parameter name="buffer" transfer-ownership="none">
-          <doc xml:space="preserve">The exif buffer</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/tag/gstexiftag.c"
+               line="1943">The exif buffer</doc>
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </parameter>
         <parameter name="byte_order" transfer-ownership="none">
-          <doc xml:space="preserve">byte order of the data</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/tag/gstexiftag.c"
+               line="1944">byte order of the data</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
         <parameter name="base_offset" transfer-ownership="none">
-          <doc xml:space="preserve">Offset from the tiff header to this buffer</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/tag/gstexiftag.c"
+               line="1945">Offset from the tiff header to this buffer</doc>
           <type name="guint32" c:type="guint32"/>
         </parameter>
       </parameters>
     </function>
     <function name="tag_list_from_exif_buffer_with_tiff_header"
               c:identifier="gst_tag_list_from_exif_buffer_with_tiff_header">
-      <doc xml:space="preserve">Parses the exif tags starting with a tiff header structure.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/gstexiftag.c"
+           line="1977">Parses the exif tags starting with a tiff header structure.</doc>
+      <source-position filename="gst-libs/gst/tag/tag.h" line="568"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">The taglist</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/gstexiftag.c"
+             line="1983">The taglist</doc>
         <type name="Gst.TagList" c:type="GstTagList*"/>
       </return-value>
       <parameters>
         <parameter name="buffer" transfer-ownership="none">
-          <doc xml:space="preserve">The exif buffer</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/tag/gstexiftag.c"
+               line="1979">The exif buffer</doc>
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </parameter>
       </parameters>
     </function>
     <function name="tag_list_from_id3v2_tag"
               c:identifier="gst_tag_list_from_id3v2_tag">
-      <doc xml:space="preserve">Creates a new tag list that contains the information parsed out of a
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/id3v2.c"
+           line="179">Creates a new tag list that contains the information parsed out of a
 ID3 tag.</doc>
+      <source-position filename="gst-libs/gst/tag/tag.h" line="534"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">A new #GstTagList with all tags that could be extracted from the
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/id3v2.c"
+             line="186">A new #GstTagList with all tags that could be extracted from the
          given vorbiscomment buffer or NULL on error.</doc>
         <type name="Gst.TagList" c:type="GstTagList*"/>
       </return-value>
       <parameters>
         <parameter name="buffer" transfer-ownership="none">
-          <doc xml:space="preserve">buffer to convert</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/tag/id3v2.c"
+               line="181">buffer to convert</doc>
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </parameter>
       </parameters>
     </function>
     <function name="tag_list_from_vorbiscomment"
               c:identifier="gst_tag_list_from_vorbiscomment">
-      <doc xml:space="preserve">Creates a new tag list that contains the information parsed out of a
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/gstvorbistag.c"
+           line="408">Creates a new tag list that contains the information parsed out of a
 vorbiscomment packet.</doc>
+      <source-position filename="gst-libs/gst/tag/tag.h" line="484"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">A new #GstTagList with all tags that could be extracted from the
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/gstvorbistag.c"
+             line="420">A new #GstTagList with all tags that could be extracted from the
          given vorbiscomment buffer or NULL on error.</doc>
         <type name="Gst.TagList" c:type="GstTagList*"/>
       </return-value>
       <parameters>
         <parameter name="data" transfer-ownership="none">
-          <doc xml:space="preserve">data to convert</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/tag/gstvorbistag.c"
+               line="410">data to convert</doc>
           <array length="1" zero-terminated="0" c:type="const guint8*">
             <type name="guint8" c:type="guint8"/>
           </array>
         </parameter>
         <parameter name="size" transfer-ownership="none">
-          <doc xml:space="preserve">size of @data</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/tag/gstvorbistag.c"
+               line="411">size of @data</doc>
           <type name="gsize" c:type="gsize"/>
         </parameter>
         <parameter name="id_data" transfer-ownership="none">
-          <doc xml:space="preserve">identification data at start of stream</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/tag/gstvorbistag.c"
+               line="412">identification data at start of stream</doc>
           <array length="3" zero-terminated="0" c:type="const guint8*">
             <type name="guint8" c:type="guint8"/>
           </array>
         </parameter>
         <parameter name="id_data_length" transfer-ownership="none">
-          <doc xml:space="preserve">length of identification data</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/tag/gstvorbistag.c"
+               line="413">length of identification data</doc>
           <type name="guint" c:type="const guint"/>
         </parameter>
         <parameter name="vendor_string"
@@ -1529,7 +2147,9 @@ vorbiscomment packet.</doc>
                    transfer-ownership="full"
                    optional="1"
                    allow-none="1">
-          <doc xml:space="preserve">pointer to a string that should take the
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/tag/gstvorbistag.c"
+               line="414">pointer to a string that should take the
     vendor string of this vorbis comment or NULL if you don't need it.</doc>
           <type name="utf8" c:type="gchar**"/>
         </parameter>
@@ -1537,26 +2157,37 @@ vorbiscomment packet.</doc>
     </function>
     <function name="tag_list_from_vorbiscomment_buffer"
               c:identifier="gst_tag_list_from_vorbiscomment_buffer">
-      <doc xml:space="preserve">Creates a new tag list that contains the information parsed out of a
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/gstvorbistag.c"
+           line="505">Creates a new tag list that contains the information parsed out of a
 vorbiscomment packet.</doc>
+      <source-position filename="gst-libs/gst/tag/tag.h" line="491"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">A new #GstTagList with all tags that could be extracted from the
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/gstvorbistag.c"
+             line="516">A new #GstTagList with all tags that could be extracted from the
          given vorbiscomment buffer or NULL on error.</doc>
         <type name="Gst.TagList" c:type="GstTagList*"/>
       </return-value>
       <parameters>
         <parameter name="buffer" transfer-ownership="none">
-          <doc xml:space="preserve">buffer to convert</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/tag/gstvorbistag.c"
+               line="507">buffer to convert</doc>
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </parameter>
         <parameter name="id_data" transfer-ownership="none">
-          <doc xml:space="preserve">identification data at start of stream</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/tag/gstvorbistag.c"
+               line="508">identification data at start of stream</doc>
           <array length="2" zero-terminated="0" c:type="const guint8*">
             <type name="guint8" c:type="guint8"/>
           </array>
         </parameter>
         <parameter name="id_data_length" transfer-ownership="none">
-          <doc xml:space="preserve">length of identification data</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/tag/gstvorbistag.c"
+               line="509">length of identification data</doc>
           <type name="guint" c:type="const guint"/>
         </parameter>
         <parameter name="vendor_string"
@@ -1565,7 +2196,9 @@ vorbiscomment packet.</doc>
                    transfer-ownership="full"
                    optional="1"
                    allow-none="1">
-          <doc xml:space="preserve">pointer to a string that should take the
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/tag/gstvorbistag.c"
+               line="510">pointer to a string that should take the
     vendor string of this vorbis comment or NULL if you don't need it.</doc>
           <type name="utf8" c:type="gchar**"/>
         </parameter>
@@ -1573,29 +2206,43 @@ vorbiscomment packet.</doc>
     </function>
     <function name="tag_list_from_xmp_buffer"
               c:identifier="gst_tag_list_from_xmp_buffer">
-      <doc xml:space="preserve">Parse a xmp packet into a taglist.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/gstxmptag.c"
+           line="1170">Parse a xmp packet into a taglist.</doc>
+      <source-position filename="gst-libs/gst/tag/tag.h" line="542"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">new taglist or %NULL, free the list when done</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/gstxmptag.c"
+             line="1176">new taglist or %NULL, free the list when done</doc>
         <type name="Gst.TagList" c:type="GstTagList*"/>
       </return-value>
       <parameters>
         <parameter name="buffer" transfer-ownership="none">
-          <doc xml:space="preserve">buffer</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/tag/gstxmptag.c"
+               line="1172">buffer</doc>
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </parameter>
       </parameters>
     </function>
     <function name="tag_list_new_from_id3v1"
               c:identifier="gst_tag_list_new_from_id3v1">
-      <doc xml:space="preserve">Parses the data containing an ID3v1 tag and returns a #GstTagList from the
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/gstid3tag.c"
+           line="261">Parses the data containing an ID3v1 tag and returns a #GstTagList from the
 parsed data.</doc>
+      <source-position filename="gst-libs/gst/tag/tag.h" line="515"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">A new tag list or NULL if the data was not an ID3v1 tag.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/gstid3tag.c"
+             line="268">A new tag list or NULL if the data was not an ID3v1 tag.</doc>
         <type name="Gst.TagList" c:type="GstTagList*"/>
       </return-value>
       <parameters>
         <parameter name="data" transfer-ownership="none">
-          <doc xml:space="preserve">128 bytes of data containing the ID3v1 tag</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/tag/gstid3tag.c"
+               line="263">128 bytes of data containing the ID3v1 tag</doc>
           <array zero-terminated="0" c:type="const guint8*" fixed-size="128">
             <type name="guint8" c:type="guint8"/>
           </array>
@@ -1604,94 +2251,136 @@ parsed data.</doc>
     </function>
     <function name="tag_list_to_exif_buffer"
               c:identifier="gst_tag_list_to_exif_buffer">
-      <doc xml:space="preserve">Formats the tags in taglist on exif format. The resulting buffer contains
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/gstexiftag.c"
+           line="1858">Formats the tags in taglist on exif format. The resulting buffer contains
 the tags IFD and is followed by the data pointed by the tag entries.</doc>
+      <source-position filename="gst-libs/gst/tag/tag.h" line="555"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">A GstBuffer containing the tag entries followed by the tag data</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/gstexiftag.c"
+             line="1867">A GstBuffer containing the tag entries followed by the tag data</doc>
         <type name="Gst.Buffer" c:type="GstBuffer*"/>
       </return-value>
       <parameters>
         <parameter name="taglist" transfer-ownership="none">
-          <doc xml:space="preserve">The taglist</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/tag/gstexiftag.c"
+               line="1860">The taglist</doc>
           <type name="Gst.TagList" c:type="const GstTagList*"/>
         </parameter>
         <parameter name="byte_order" transfer-ownership="none">
-          <doc xml:space="preserve">byte order used in writing (G_LITTLE_ENDIAN or G_BIG_ENDIAN)</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/tag/gstexiftag.c"
+               line="1861">byte order used in writing (G_LITTLE_ENDIAN or G_BIG_ENDIAN)</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
         <parameter name="base_offset" transfer-ownership="none">
-          <doc xml:space="preserve">Offset from the tiff header first byte</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/tag/gstexiftag.c"
+               line="1862">Offset from the tiff header first byte</doc>
           <type name="guint32" c:type="guint32"/>
         </parameter>
       </parameters>
     </function>
     <function name="tag_list_to_exif_buffer_with_tiff_header"
               c:identifier="gst_tag_list_to_exif_buffer_with_tiff_header">
-      <doc xml:space="preserve">Formats the tags in taglist into exif structure, a tiff header
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/gstexiftag.c"
+           line="1876">Formats the tags in taglist into exif structure, a tiff header
 is put in the beginning of the buffer.</doc>
+      <source-position filename="gst-libs/gst/tag/tag.h" line="560"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">A GstBuffer containing the data</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/gstexiftag.c"
+             line="1883">A GstBuffer containing the data</doc>
         <type name="Gst.Buffer" c:type="GstBuffer*"/>
       </return-value>
       <parameters>
         <parameter name="taglist" transfer-ownership="none">
-          <doc xml:space="preserve">The taglist</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/tag/gstexiftag.c"
+               line="1878">The taglist</doc>
           <type name="Gst.TagList" c:type="const GstTagList*"/>
         </parameter>
       </parameters>
     </function>
     <function name="tag_list_to_vorbiscomment_buffer"
               c:identifier="gst_tag_list_to_vorbiscomment_buffer">
-      <doc xml:space="preserve">Creates a new vorbiscomment buffer from a tag list.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/gstvorbistag.c"
+           line="781">Creates a new vorbiscomment buffer from a tag list.</doc>
+      <source-position filename="gst-libs/gst/tag/tag.h" line="497"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">A new #GstBuffer containing a vorbiscomment buffer with all tags
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/gstvorbistag.c"
+             line="790">A new #GstBuffer containing a vorbiscomment buffer with all tags
          that could be converted from the given tag list.</doc>
         <type name="Gst.Buffer" c:type="GstBuffer*"/>
       </return-value>
       <parameters>
         <parameter name="list" transfer-ownership="none">
-          <doc xml:space="preserve">tag list to convert</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/tag/gstvorbistag.c"
+               line="783">tag list to convert</doc>
           <type name="Gst.TagList" c:type="const GstTagList*"/>
         </parameter>
         <parameter name="id_data" transfer-ownership="none">
-          <doc xml:space="preserve">identification data at start of stream</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/tag/gstvorbistag.c"
+               line="784">identification data at start of stream</doc>
           <array length="2" zero-terminated="0" c:type="const guint8*">
             <type name="guint8" c:type="guint8"/>
           </array>
         </parameter>
         <parameter name="id_data_length" transfer-ownership="none">
-          <doc xml:space="preserve">length of identification data, may be 0 if @id_data is NULL</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/tag/gstvorbistag.c"
+               line="785">length of identification data, may be 0 if @id_data is NULL</doc>
           <type name="guint" c:type="const guint"/>
         </parameter>
         <parameter name="vendor_string"
                    transfer-ownership="none"
                    nullable="1"
                    allow-none="1">
-          <doc xml:space="preserve">string that describes the vendor string or NULL</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/tag/gstvorbistag.c"
+               line="786">string that describes the vendor string or NULL</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
       </parameters>
     </function>
     <function name="tag_list_to_xmp_buffer"
               c:identifier="gst_tag_list_to_xmp_buffer">
-      <doc xml:space="preserve">Formats a taglist as a xmp packet using only the selected
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/gstxmptag.c"
+           line="1697">Formats a taglist as a xmp packet using only the selected
 schemas. An empty list (%NULL) means that all schemas should
 be used</doc>
+      <source-position filename="gst-libs/gst/tag/tag.h" line="545"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">new buffer or %NULL, unref the buffer when done</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/gstxmptag.c"
+             line="1708">new buffer or %NULL, unref the buffer when done</doc>
         <type name="Gst.Buffer" c:type="GstBuffer*"/>
       </return-value>
       <parameters>
         <parameter name="list" transfer-ownership="none">
-          <doc xml:space="preserve">tags</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/tag/gstxmptag.c"
+               line="1699">tags</doc>
           <type name="Gst.TagList" c:type="const GstTagList*"/>
         </parameter>
         <parameter name="read_only" transfer-ownership="none">
-          <doc xml:space="preserve">does the container forbid inplace editing</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/tag/gstxmptag.c"
+               line="1700">does the container forbid inplace editing</doc>
           <type name="gboolean" c:type="gboolean"/>
         </parameter>
         <parameter name="schemas" transfer-ownership="none">
-          <doc xml:space="preserve">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/tag/gstxmptag.c"
+               line="1701">
     %NULL terminated array of schemas to be used on serialization</doc>
           <array c:type="const gchar**">
             <type name="utf8" c:type="gchar*"/>
@@ -1701,20 +2390,27 @@ be used</doc>
     </function>
     <function name="tag_parse_extended_comment"
               c:identifier="gst_tag_parse_extended_comment">
-      <doc xml:space="preserve">Convenience function to parse a GST_TAG_EXTENDED_COMMENT string and
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/tags.c"
+           line="253">Convenience function to parse a GST_TAG_EXTENDED_COMMENT string and
 separate it into its components.
 
 If successful, @key, @lang and/or @value will be set to newly allocated
 strings that you need to free with g_free() when done. @key and @lang
 may also be set to NULL by this function if there is no key or no language
 code in the extended comment string.</doc>
+      <source-position filename="gst-libs/gst/tag/tag.h" line="574"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">TRUE if the string could be parsed, otherwise FALSE</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/tags.c"
+             line="271">TRUE if the string could be parsed, otherwise FALSE</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="ext_comment" transfer-ownership="none">
-          <doc xml:space="preserve">an extended comment string, see #GST_TAG_EXTENDED_COMMENT</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/tag/tags.c"
+               line="255">an extended comment string, see #GST_TAG_EXTENDED_COMMENT</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
         <parameter name="key"
@@ -1722,7 +2418,9 @@ code in the extended comment string.</doc>
                    caller-allocates="0"
                    transfer-ownership="full"
                    nullable="1">
-          <doc xml:space="preserve">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/tag/tags.c"
+               line="256">
     return location for the comment description key, or NULL</doc>
           <type name="utf8" c:type="gchar**"/>
         </parameter>
@@ -1731,7 +2429,9 @@ code in the extended comment string.</doc>
                    caller-allocates="0"
                    transfer-ownership="full"
                    nullable="1">
-          <doc xml:space="preserve">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/tag/tags.c"
+               line="258">
     return location for the comment ISO-639 language code, or NULL</doc>
           <type name="utf8" c:type="gchar**"/>
         </parameter>
@@ -1739,43 +2439,62 @@ code in the extended comment string.</doc>
                    direction="out"
                    caller-allocates="0"
                    transfer-ownership="full">
-          <doc xml:space="preserve">return location for the actual comment string, or NULL</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/tag/tags.c"
+               line="260">return location for the actual comment string, or NULL</doc>
           <type name="utf8" c:type="gchar**"/>
         </parameter>
         <parameter name="fail_if_no_key" transfer-ownership="none">
-          <doc xml:space="preserve">whether to fail if strings are not in key=value form</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/tag/tags.c"
+               line="261">whether to fail if strings are not in key=value form</doc>
           <type name="gboolean" c:type="gboolean"/>
         </parameter>
       </parameters>
     </function>
     <function name="tag_register_musicbrainz_tags"
               c:identifier="gst_tag_register_musicbrainz_tags">
-      <doc xml:space="preserve">Registers additional musicbrainz-specific tags with the GStreamer tag
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/tags.c"
+           line="224">Registers additional musicbrainz-specific tags with the GStreamer tag
 system. Plugins and applications that use these tags should call this
 function before using them. Can be called multiple times.</doc>
+      <source-position filename="gst-libs/gst/tag/tag.h" line="593"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
     </function>
     <function name="tag_to_id3_tag" c:identifier="gst_tag_to_id3_tag">
-      <doc xml:space="preserve">Looks up the ID3v2 tag for a GStreamer tag.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/gstid3tag.c"
+           line="219">Looks up the ID3v2 tag for a GStreamer tag.</doc>
+      <source-position filename="gst-libs/gst/tag/tag.h" line="525"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">The corresponding ID3v2 tag or NULL if none exists.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/gstid3tag.c"
+             line="225">The corresponding ID3v2 tag or NULL if none exists.</doc>
         <type name="utf8" c:type="const gchar*"/>
       </return-value>
       <parameters>
         <parameter name="gst_tag" transfer-ownership="none">
-          <doc xml:space="preserve">GStreamer tag to convert to vorbiscomment tag</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/tag/gstid3tag.c"
+               line="221">GStreamer tag to convert to vorbiscomment tag</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
       </parameters>
     </function>
     <function name="tag_to_vorbis_comments"
               c:identifier="gst_tag_to_vorbis_comments">
-      <doc xml:space="preserve">Creates a new tag list that contains the information parsed out of a
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/gstvorbistag.c"
+           line="644">Creates a new tag list that contains the information parsed out of a
 vorbiscomment packet.</doc>
+      <source-position filename="gst-libs/gst/tag/tag.h" line="478"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">A #GList of newly-allocated
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/gstvorbistag.c"
+             line="652">A #GList of newly-allocated
     key=value strings. Free with g_list_foreach (list, (GFunc) g_free, NULL)
     plus g_list_free (list)</doc>
         <type name="GLib.List" c:type="GList*">
@@ -1784,33 +2503,49 @@ vorbiscomment packet.</doc>
       </return-value>
       <parameters>
         <parameter name="list" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstTagList</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/tag/gstvorbistag.c"
+               line="646">a #GstTagList</doc>
           <type name="Gst.TagList" c:type="const GstTagList*"/>
         </parameter>
         <parameter name="tag" transfer-ownership="none">
-          <doc xml:space="preserve">a GStreamer tag identifier, such as #GST_TAG_ARTIST</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/tag/gstvorbistag.c"
+               line="647">a GStreamer tag identifier, such as #GST_TAG_ARTIST</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
       </parameters>
     </function>
     <function name="tag_to_vorbis_tag" c:identifier="gst_tag_to_vorbis_tag">
-      <doc xml:space="preserve">Looks up the vorbiscomment tag for a GStreamer tag.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/gstvorbistag.c"
+           line="143">Looks up the vorbiscomment tag for a GStreamer tag.</doc>
+      <source-position filename="gst-libs/gst/tag/tag.h" line="470"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">The corresponding vorbiscomment tag or NULL if none exists.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/gstvorbistag.c"
+             line="149">The corresponding vorbiscomment tag or NULL if none exists.</doc>
         <type name="utf8" c:type="const gchar*"/>
       </return-value>
       <parameters>
         <parameter name="gst_tag" transfer-ownership="none">
-          <doc xml:space="preserve">GStreamer tag to convert to vorbiscomment tag</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/tag/gstvorbistag.c"
+               line="145">GStreamer tag to convert to vorbiscomment tag</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
       </parameters>
     </function>
     <function name="tag_xmp_list_schemas"
               c:identifier="gst_tag_xmp_list_schemas">
-      <doc xml:space="preserve">Gets the list of supported schemas in the xmp lib</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/gstxmptag.c"
+           line="77">Gets the list of supported schemas in the xmp lib</doc>
+      <source-position filename="gst-libs/gst/tag/tag.h" line="550"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">a %NULL terminated array of strings with the
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/tag/gstxmptag.c"
+             line="82">a %NULL terminated array of strings with the
     schema names</doc>
         <array c:type="const gchar**">
           <type name="utf8"/>
@@ -1818,26 +2553,35 @@ vorbiscomment packet.</doc>
       </return-value>
     </function>
     <function name="vorbis_tag_add" c:identifier="gst_vorbis_tag_add">
-      <doc xml:space="preserve">Convenience function using gst_tag_from_vorbis_tag(), parsing
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/tag/gstvorbistag.c"
+           line="170">Convenience function using gst_tag_from_vorbis_tag(), parsing
 a vorbis comment string into the right type and adding it to the
 given taglist @list.
 
 Unknown vorbiscomment tags will be added to the tag list in form
 of a #GST_TAG_EXTENDED_COMMENT.</doc>
+      <source-position filename="gst-libs/gst/tag/tag.h" line="473"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="list" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstTagList</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/tag/gstvorbistag.c"
+               line="172">a #GstTagList</doc>
           <type name="Gst.TagList" c:type="GstTagList*"/>
         </parameter>
         <parameter name="tag" transfer-ownership="none">
-          <doc xml:space="preserve">a vorbiscomment tag string (key in key=value), must be valid UTF-8</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/tag/gstvorbistag.c"
+               line="173">a vorbiscomment tag string (key in key=value), must be valid UTF-8</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
         <parameter name="value" transfer-ownership="none">
-          <doc xml:space="preserve">a vorbiscomment value string (value in key=value), must be valid UTF-8</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/tag/gstvorbistag.c"
+               line="174">a vorbiscomment value string (value in key=value), must be valid UTF-8</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
       </parameters>
index 761bbcf..bc0825f 100644 (file)
@@ -18,114 +18,212 @@ and/or use gtk-doc annotations.  -->
     <constant name="BUFFER_POOL_OPTION_VIDEO_AFFINE_TRANSFORMATION_META"
               value="GstBufferPoolOptionVideoAffineTransformation"
               c:type="GST_BUFFER_POOL_OPTION_VIDEO_AFFINE_TRANSFORMATION_META">
+      <source-position filename="gst-libs/gst/video/gstvideoaffinetransformationmeta.h"
+                       line="37"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="BUFFER_POOL_OPTION_VIDEO_ALIGNMENT"
               value="GstBufferPoolOptionVideoAlignment"
               c:type="GST_BUFFER_POOL_OPTION_VIDEO_ALIGNMENT">
-      <doc xml:space="preserve">A bufferpool option to enable extra padding. When a bufferpool supports this
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/gstvideopool.h"
+           line="37">A bufferpool option to enable extra padding. When a bufferpool supports this
 option, gst_buffer_pool_config_set_video_alignment() can be called.
 
 When this option is enabled on the bufferpool,
 #GST_BUFFER_POOL_OPTION_VIDEO_META should also be enabled.</doc>
+      <source-position filename="gst-libs/gst/video/gstvideopool.h" line="46"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="BUFFER_POOL_OPTION_VIDEO_GL_TEXTURE_UPLOAD_META"
               value="GstBufferPoolOptionVideoGLTextureUploadMeta"
               c:type="GST_BUFFER_POOL_OPTION_VIDEO_GL_TEXTURE_UPLOAD_META"
               version="1.2.2">
-      <doc xml:space="preserve">An option that can be activated on a bufferpool to request gl texture upload
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/gstvideometa.h"
+           line="238">An option that can be activated on a bufferpool to request gl texture upload
 meta on buffers from the pool.
 
 When this option is enabled on the bufferpool,
 @GST_BUFFER_POOL_OPTION_VIDEO_META should also be enabled.</doc>
+      <source-position filename="gst-libs/gst/video/gstvideometa.h"
+                       line="249"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="BUFFER_POOL_OPTION_VIDEO_META"
               value="GstBufferPoolOptionVideoMeta"
               c:type="GST_BUFFER_POOL_OPTION_VIDEO_META">
-      <doc xml:space="preserve">An option that can be activated on bufferpool to request video metadata
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/gstvideopool.h"
+           line="29">An option that can be activated on bufferpool to request video metadata
 on buffers from the pool.</doc>
+      <source-position filename="gst-libs/gst/video/gstvideopool.h" line="35"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="CAPS_FEATURE_FORMAT_INTERLACED"
               value="format:Interlaced"
               c:type="GST_CAPS_FEATURE_FORMAT_INTERLACED"
               version="1.16.">
-      <doc xml:space="preserve">Name of the caps feature indicating that the stream is interlaced. Currently
-it is only used for video.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-info.h"
+           line="33">Name of the caps feature indicating that the stream is interlaced.
+
+Currently it is only used for video with 'interlace-mode=alternate'
+to ensure backwards compatibility for this new mode.
+In this mode each buffer carries a single field of interlaced video.
+@GST_VIDEO_BUFFER_FLAG_TOP_FIELD and @GST_VIDEO_BUFFER_FLAG_BOTTOM_FIELD
+indicate whether the buffer carries a top or bottom field. The order of
+buffers/fields in the stream and the timestamps on the buffers indicate the
+temporal order of the fields.
+Top and bottom fields are expected to alternate in this mode.
+The frame rate in the caps still signals the frame rate, so the notional field
+rate will be twice the frame rate from the caps
+(see @GST_VIDEO_INFO_FIELD_RATE_N).</doc>
+      <source-position filename="gst-libs/gst/video/video-info.h" line="52"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="CAPS_FEATURE_META_GST_VIDEO_AFFINE_TRANSFORMATION_META"
               value="meta:GstVideoAffineTransformation"
               c:type="GST_CAPS_FEATURE_META_GST_VIDEO_AFFINE_TRANSFORMATION_META">
+      <source-position filename="gst-libs/gst/video/gstvideoaffinetransformationmeta.h"
+                       line="36"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="CAPS_FEATURE_META_GST_VIDEO_GL_TEXTURE_UPLOAD_META"
               value="meta:GstVideoGLTextureUploadMeta"
               c:type="GST_CAPS_FEATURE_META_GST_VIDEO_GL_TEXTURE_UPLOAD_META">
+      <source-position filename="gst-libs/gst/video/gstvideometa.h"
+                       line="236"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="CAPS_FEATURE_META_GST_VIDEO_META"
               value="meta:GstVideoMeta"
               c:type="GST_CAPS_FEATURE_META_GST_VIDEO_META">
+      <source-position filename="gst-libs/gst/video/gstvideometa.h" line="34"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="CAPS_FEATURE_META_GST_VIDEO_OVERLAY_COMPOSITION"
               value="meta:GstVideoOverlayComposition"
               c:type="GST_CAPS_FEATURE_META_GST_VIDEO_OVERLAY_COMPOSITION">
+      <source-position filename="gst-libs/gst/video/video-overlay-composition.h"
+                       line="93"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
+    <function-macro name="COLOR_BALANCE"
+                    c:identifier="GST_COLOR_BALANCE"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/colorbalance.h" line="31"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="COLOR_BALANCE_CHANNEL"
+                    c:identifier="GST_COLOR_BALANCE_CHANNEL"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/colorbalancechannel.h"
+                       line="31"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="COLOR_BALANCE_CHANNEL_CLASS"
+                    c:identifier="GST_COLOR_BALANCE_CHANNEL_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/colorbalancechannel.h"
+                       line="34"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="COLOR_BALANCE_GET_INTERFACE"
+                    c:identifier="GST_COLOR_BALANCE_GET_INTERFACE"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/colorbalance.h" line="35"/>
+      <parameters>
+        <parameter name="inst">
+        </parameter>
+      </parameters>
+    </function-macro>
     <interface name="ColorBalance"
                c:symbol-prefix="color_balance"
                c:type="GstColorBalance"
                glib:type-name="GstColorBalance"
                glib:get-type="gst_color_balance_get_type"
                glib:type-struct="ColorBalanceInterface">
-      <doc xml:space="preserve">This interface is implemented by elements which can perform some color
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/colorbalance.c"
+           line="29">This interface is implemented by elements which can perform some color
 balance operation on video frames they process. For example, modifying
 the brightness, contrast, hue or saturation.
 
 Example elements are 'xvimagesink' and 'colorbalance'</doc>
+      <source-position filename="gst-libs/gst/video/colorbalance.h" line="91"/>
       <virtual-method name="get_balance_type" invoker="get_balance_type">
-        <doc xml:space="preserve">Get the #GstColorBalanceType of this implementation.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">A the #GstColorBalanceType.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/colorbalance.c"
+             line="195">Get the #GstColorBalanceType of this implementation.</doc>
+        <source-position filename="gst-libs/gst/video/colorbalance.h"
+                         line="82"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/colorbalance.c"
+               line="201">A the #GstColorBalanceType.</doc>
           <type name="ColorBalanceType" c:type="GstColorBalanceType"/>
         </return-value>
         <parameters>
           <instance-parameter name="balance" transfer-ownership="none">
-            <doc xml:space="preserve">The #GstColorBalance implementation</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/colorbalance.c"
+                 line="197">The #GstColorBalance implementation</doc>
             <type name="ColorBalance" c:type="GstColorBalance*"/>
           </instance-parameter>
         </parameters>
       </virtual-method>
       <virtual-method name="get_value" invoker="get_value">
-        <doc xml:space="preserve">Retrieve the current value of the indicated channel, between min_value
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/colorbalance.c"
+             line="164">Retrieve the current value of the indicated channel, between min_value
 and max_value.
 
 See Also: The #GstColorBalanceChannel.min_value and
         #GstColorBalanceChannel.max_value members of the
         #GstColorBalanceChannel object.</doc>
+        <source-position filename="gst-libs/gst/video/colorbalance.h"
+                         line="80"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The current value of the channel.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/colorbalance.c"
+               line="176">The current value of the channel.</doc>
           <type name="gint" c:type="gint"/>
         </return-value>
         <parameters>
           <instance-parameter name="balance" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstColorBalance instance</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/colorbalance.c"
+                 line="166">A #GstColorBalance instance</doc>
             <type name="ColorBalance" c:type="GstColorBalance*"/>
           </instance-parameter>
           <parameter name="channel" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstColorBalanceChannel instance</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/colorbalance.c"
+                 line="167">A #GstColorBalanceChannel instance</doc>
             <type name="ColorBalanceChannel" c:type="GstColorBalanceChannel*"/>
           </parameter>
         </parameters>
       </virtual-method>
       <virtual-method name="list_channels" invoker="list_channels">
-        <doc xml:space="preserve">Retrieve a list of the available channels.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">A
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/colorbalance.c"
+             line="113">Retrieve a list of the available channels.</doc>
+        <source-position filename="gst-libs/gst/video/colorbalance.h"
+                         line="75"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/colorbalance.c"
+               line="119">A
          GList containing pointers to #GstColorBalanceChannel
          objects. The list is owned by the #GstColorBalance
          instance and must not be freed.</doc>
@@ -135,100 +233,146 @@ See Also: The #GstColorBalanceChannel.min_value and
         </return-value>
         <parameters>
           <instance-parameter name="balance" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstColorBalance instance</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/colorbalance.c"
+                 line="115">A #GstColorBalance instance</doc>
             <type name="ColorBalance" c:type="GstColorBalance*"/>
           </instance-parameter>
         </parameters>
       </virtual-method>
       <virtual-method name="set_value" invoker="set_value">
-        <doc xml:space="preserve">Sets the current value of the channel to the passed value, which must
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/colorbalance.c"
+             line="140">Sets the current value of the channel to the passed value, which must
 be between min_value and max_value.
 
 See Also: The #GstColorBalanceChannel.min_value and
         #GstColorBalanceChannel.max_value members of the
         #GstColorBalanceChannel object.</doc>
+        <source-position filename="gst-libs/gst/video/colorbalance.h"
+                         line="77"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="balance" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstColorBalance instance</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/colorbalance.c"
+                 line="142">A #GstColorBalance instance</doc>
             <type name="ColorBalance" c:type="GstColorBalance*"/>
           </instance-parameter>
           <parameter name="channel" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstColorBalanceChannel instance</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/colorbalance.c"
+                 line="143">A #GstColorBalanceChannel instance</doc>
             <type name="ColorBalanceChannel" c:type="GstColorBalanceChannel*"/>
           </parameter>
           <parameter name="value" transfer-ownership="none">
-            <doc xml:space="preserve">The new value for the channel.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/colorbalance.c"
+                 line="144">The new value for the channel.</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
         </parameters>
       </virtual-method>
       <virtual-method name="value_changed" invoker="value_changed">
-        <doc xml:space="preserve">A helper function called by implementations of the GstColorBalance
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/colorbalance.c"
+             line="219">A helper function called by implementations of the GstColorBalance
 interface. It fires the #GstColorBalance::value-changed signal on the
 instance, and the #GstColorBalanceChannel::value-changed signal on the
 channel object.</doc>
+        <source-position filename="gst-libs/gst/video/colorbalance.h"
+                         line="85"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="balance" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstColorBalance instance</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/colorbalance.c"
+                 line="221">A #GstColorBalance instance</doc>
             <type name="ColorBalance" c:type="GstColorBalance*"/>
           </instance-parameter>
           <parameter name="channel" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstColorBalanceChannel whose value has changed</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/colorbalance.c"
+                 line="222">A #GstColorBalanceChannel whose value has changed</doc>
             <type name="ColorBalanceChannel" c:type="GstColorBalanceChannel*"/>
           </parameter>
           <parameter name="value" transfer-ownership="none">
-            <doc xml:space="preserve">The new value of the channel</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/colorbalance.c"
+                 line="223">The new value of the channel</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
         </parameters>
       </virtual-method>
       <method name="get_balance_type"
               c:identifier="gst_color_balance_get_balance_type">
-        <doc xml:space="preserve">Get the #GstColorBalanceType of this implementation.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">A the #GstColorBalanceType.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/colorbalance.c"
+             line="195">Get the #GstColorBalanceType of this implementation.</doc>
+        <source-position filename="gst-libs/gst/video/colorbalance.h"
+                         line="113"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/colorbalance.c"
+               line="201">A the #GstColorBalanceType.</doc>
           <type name="ColorBalanceType" c:type="GstColorBalanceType"/>
         </return-value>
         <parameters>
           <instance-parameter name="balance" transfer-ownership="none">
-            <doc xml:space="preserve">The #GstColorBalance implementation</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/colorbalance.c"
+                 line="197">The #GstColorBalance implementation</doc>
             <type name="ColorBalance" c:type="GstColorBalance*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_value" c:identifier="gst_color_balance_get_value">
-        <doc xml:space="preserve">Retrieve the current value of the indicated channel, between min_value
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/colorbalance.c"
+             line="164">Retrieve the current value of the indicated channel, between min_value
 and max_value.
 
 See Also: The #GstColorBalanceChannel.min_value and
         #GstColorBalanceChannel.max_value members of the
         #GstColorBalanceChannel object.</doc>
+        <source-position filename="gst-libs/gst/video/colorbalance.h"
+                         line="108"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The current value of the channel.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/colorbalance.c"
+               line="176">The current value of the channel.</doc>
           <type name="gint" c:type="gint"/>
         </return-value>
         <parameters>
           <instance-parameter name="balance" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstColorBalance instance</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/colorbalance.c"
+                 line="166">A #GstColorBalance instance</doc>
             <type name="ColorBalance" c:type="GstColorBalance*"/>
           </instance-parameter>
           <parameter name="channel" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstColorBalanceChannel instance</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/colorbalance.c"
+                 line="167">A #GstColorBalanceChannel instance</doc>
             <type name="ColorBalanceChannel" c:type="GstColorBalanceChannel*"/>
           </parameter>
         </parameters>
       </method>
       <method name="list_channels"
               c:identifier="gst_color_balance_list_channels">
-        <doc xml:space="preserve">Retrieve a list of the available channels.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">A
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/colorbalance.c"
+             line="113">Retrieve a list of the available channels.</doc>
+        <source-position filename="gst-libs/gst/video/colorbalance.h"
+                         line="100"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/colorbalance.c"
+               line="119">A
          GList containing pointers to #GstColorBalanceChannel
          objects. The list is owned by the #GstColorBalance
          instance and must not be freed.</doc>
@@ -238,72 +382,100 @@ See Also: The #GstColorBalanceChannel.min_value and
         </return-value>
         <parameters>
           <instance-parameter name="balance" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstColorBalance instance</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/colorbalance.c"
+                 line="115">A #GstColorBalance instance</doc>
             <type name="ColorBalance" c:type="GstColorBalance*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="set_value" c:identifier="gst_color_balance_set_value">
-        <doc xml:space="preserve">Sets the current value of the channel to the passed value, which must
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/colorbalance.c"
+             line="140">Sets the current value of the channel to the passed value, which must
 be between min_value and max_value.
 
 See Also: The #GstColorBalanceChannel.min_value and
         #GstColorBalanceChannel.max_value members of the
         #GstColorBalanceChannel object.</doc>
+        <source-position filename="gst-libs/gst/video/colorbalance.h"
+                         line="103"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="balance" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstColorBalance instance</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/colorbalance.c"
+                 line="142">A #GstColorBalance instance</doc>
             <type name="ColorBalance" c:type="GstColorBalance*"/>
           </instance-parameter>
           <parameter name="channel" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstColorBalanceChannel instance</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/colorbalance.c"
+                 line="143">A #GstColorBalanceChannel instance</doc>
             <type name="ColorBalanceChannel" c:type="GstColorBalanceChannel*"/>
           </parameter>
           <parameter name="value" transfer-ownership="none">
-            <doc xml:space="preserve">The new value for the channel.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/colorbalance.c"
+                 line="144">The new value for the channel.</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
         </parameters>
       </method>
       <method name="value_changed"
               c:identifier="gst_color_balance_value_changed">
-        <doc xml:space="preserve">A helper function called by implementations of the GstColorBalance
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/colorbalance.c"
+             line="219">A helper function called by implementations of the GstColorBalance
 interface. It fires the #GstColorBalance::value-changed signal on the
 instance, and the #GstColorBalanceChannel::value-changed signal on the
 channel object.</doc>
+        <source-position filename="gst-libs/gst/video/colorbalance.h"
+                         line="118"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="balance" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstColorBalance instance</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/colorbalance.c"
+                 line="221">A #GstColorBalance instance</doc>
             <type name="ColorBalance" c:type="GstColorBalance*"/>
           </instance-parameter>
           <parameter name="channel" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstColorBalanceChannel whose value has changed</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/colorbalance.c"
+                 line="222">A #GstColorBalanceChannel whose value has changed</doc>
             <type name="ColorBalanceChannel" c:type="GstColorBalanceChannel*"/>
           </parameter>
           <parameter name="value" transfer-ownership="none">
-            <doc xml:space="preserve">The new value of the channel</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/colorbalance.c"
+                 line="223">The new value of the channel</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
         </parameters>
       </method>
       <glib:signal name="value-changed" when="last">
-        <doc xml:space="preserve">Fired when the value of the indicated channel has changed.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/colorbalance.c"
+             line="88">Fired when the value of the indicated channel has changed.</doc>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <parameter name="channel" transfer-ownership="none">
-            <doc xml:space="preserve">The #GstColorBalanceChannel</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/colorbalance.c"
+                 line="91">The #GstColorBalanceChannel</doc>
             <type name="ColorBalanceChannel"/>
           </parameter>
           <parameter name="value" transfer-ownership="none">
-            <doc xml:space="preserve">The new value</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/colorbalance.c"
+                 line="92">The new value</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
         </parameters>
@@ -316,10 +488,16 @@ channel object.</doc>
            glib:type-name="GstColorBalanceChannel"
            glib:get-type="gst_color_balance_channel_get_type"
            glib:type-struct="ColorBalanceChannelClass">
-      <doc xml:space="preserve">The #GstColorBalanceChannel object represents a parameter
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/colorbalancechannel.c"
+           line="28">The #GstColorBalanceChannel object represents a parameter
 for modifying the color balance implemented by an element providing the
 #GstColorBalance interface. For example, Hue or Saturation.</doc>
+      <source-position filename="gst-libs/gst/video/colorbalancechannel.h"
+                       line="80"/>
       <virtual-method name="value_changed">
+        <source-position filename="gst-libs/gst/video/colorbalancechannel.h"
+                         line="75"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
@@ -336,30 +514,40 @@ for modifying the color balance implemented by an element providing the
         <type name="GObject.Object" c:type="GObject"/>
       </field>
       <field name="label">
-        <doc xml:space="preserve">A string containing a descriptive name for this channel</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/colorbalancechannel.h"
+             line="48">A string containing a descriptive name for this channel</doc>
         <type name="utf8" c:type="gchar*"/>
       </field>
       <field name="min_value">
-        <doc xml:space="preserve">The minimum valid value for this channel.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/colorbalancechannel.h"
+             line="49">The minimum valid value for this channel.</doc>
         <type name="gint" c:type="gint"/>
       </field>
       <field name="max_value">
-        <doc xml:space="preserve">The maximum valid value for this channel.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/colorbalancechannel.h"
+             line="50">The maximum valid value for this channel.</doc>
         <type name="gint" c:type="gint"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
       <glib:signal name="value-changed" when="last">
-        <doc xml:space="preserve">Fired when the value of the indicated channel has changed.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/colorbalancechannel.c"
+             line="89">Fired when the value of the indicated channel has changed.</doc>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <parameter name="value" transfer-ownership="none">
-            <doc xml:space="preserve">The new value</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/colorbalancechannel.c"
+                 line="92">The new value</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
         </parameters>
@@ -368,13 +556,21 @@ for modifying the color balance implemented by an element providing the
     <record name="ColorBalanceChannelClass"
             c:type="GstColorBalanceChannelClass"
             glib:is-gtype-struct-for="ColorBalanceChannel">
-      <doc xml:space="preserve">Color-balance channel class.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/colorbalancechannel.h"
+           line="64">Color-balance channel class.</doc>
+      <source-position filename="gst-libs/gst/video/colorbalancechannel.h"
+                       line="80"/>
       <field name="parent">
-        <doc xml:space="preserve">the parent class</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/colorbalancechannel.h"
+             line="66">the parent class</doc>
         <type name="GObject.ObjectClass" c:type="GObjectClass"/>
       </field>
       <field name="value_changed">
         <callback name="value_changed">
+          <source-position filename="gst-libs/gst/video/colorbalancechannel.h"
+                           line="75"/>
           <return-value transfer-ownership="none">
             <type name="none" c:type="void"/>
           </return-value>
@@ -390,7 +586,7 @@ for modifying the color balance implemented by an element providing the
         </callback>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -398,15 +594,24 @@ for modifying the color balance implemented by an element providing the
     <record name="ColorBalanceInterface"
             c:type="GstColorBalanceInterface"
             glib:is-gtype-struct-for="ColorBalance">
-      <doc xml:space="preserve">Color-balance interface.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/colorbalance.h"
+           line="60">Color-balance interface.</doc>
+      <source-position filename="gst-libs/gst/video/colorbalance.h" line="91"/>
       <field name="iface">
-        <doc xml:space="preserve">the parent interface</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/colorbalance.h"
+             line="62">the parent interface</doc>
         <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
       </field>
       <field name="list_channels">
         <callback name="list_channels">
+          <source-position filename="gst-libs/gst/video/colorbalance.h"
+                           line="75"/>
           <return-value transfer-ownership="none">
-            <doc xml:space="preserve">A
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/colorbalance.c"
+                 line="119">A
          GList containing pointers to #GstColorBalanceChannel
          objects. The list is owned by the #GstColorBalance
          instance and must not be freed.</doc>
@@ -416,7 +621,9 @@ for modifying the color balance implemented by an element providing the
           </return-value>
           <parameters>
             <parameter name="balance" transfer-ownership="none">
-              <doc xml:space="preserve">A #GstColorBalance instance</doc>
+              <doc xml:space="preserve"
+                   filename="gst-libs/gst/video/colorbalance.c"
+                   line="115">A #GstColorBalance instance</doc>
               <type name="ColorBalance" c:type="GstColorBalance*"/>
             </parameter>
           </parameters>
@@ -424,21 +631,29 @@ for modifying the color balance implemented by an element providing the
       </field>
       <field name="set_value">
         <callback name="set_value">
+          <source-position filename="gst-libs/gst/video/colorbalance.h"
+                           line="77"/>
           <return-value transfer-ownership="none">
             <type name="none" c:type="void"/>
           </return-value>
           <parameters>
             <parameter name="balance" transfer-ownership="none">
-              <doc xml:space="preserve">A #GstColorBalance instance</doc>
+              <doc xml:space="preserve"
+                   filename="gst-libs/gst/video/colorbalance.c"
+                   line="142">A #GstColorBalance instance</doc>
               <type name="ColorBalance" c:type="GstColorBalance*"/>
             </parameter>
             <parameter name="channel" transfer-ownership="none">
-              <doc xml:space="preserve">A #GstColorBalanceChannel instance</doc>
+              <doc xml:space="preserve"
+                   filename="gst-libs/gst/video/colorbalance.c"
+                   line="143">A #GstColorBalanceChannel instance</doc>
               <type name="ColorBalanceChannel"
                     c:type="GstColorBalanceChannel*"/>
             </parameter>
             <parameter name="value" transfer-ownership="none">
-              <doc xml:space="preserve">The new value for the channel.</doc>
+              <doc xml:space="preserve"
+                   filename="gst-libs/gst/video/colorbalance.c"
+                   line="144">The new value for the channel.</doc>
               <type name="gint" c:type="gint"/>
             </parameter>
           </parameters>
@@ -446,17 +661,25 @@ for modifying the color balance implemented by an element providing the
       </field>
       <field name="get_value">
         <callback name="get_value">
+          <source-position filename="gst-libs/gst/video/colorbalance.h"
+                           line="80"/>
           <return-value transfer-ownership="none">
-            <doc xml:space="preserve">The current value of the channel.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/colorbalance.c"
+                 line="176">The current value of the channel.</doc>
             <type name="gint" c:type="gint"/>
           </return-value>
           <parameters>
             <parameter name="balance" transfer-ownership="none">
-              <doc xml:space="preserve">A #GstColorBalance instance</doc>
+              <doc xml:space="preserve"
+                   filename="gst-libs/gst/video/colorbalance.c"
+                   line="166">A #GstColorBalance instance</doc>
               <type name="ColorBalance" c:type="GstColorBalance*"/>
             </parameter>
             <parameter name="channel" transfer-ownership="none">
-              <doc xml:space="preserve">A #GstColorBalanceChannel instance</doc>
+              <doc xml:space="preserve"
+                   filename="gst-libs/gst/video/colorbalance.c"
+                   line="167">A #GstColorBalanceChannel instance</doc>
               <type name="ColorBalanceChannel"
                     c:type="GstColorBalanceChannel*"/>
             </parameter>
@@ -465,13 +688,19 @@ for modifying the color balance implemented by an element providing the
       </field>
       <field name="get_balance_type">
         <callback name="get_balance_type">
+          <source-position filename="gst-libs/gst/video/colorbalance.h"
+                           line="82"/>
           <return-value transfer-ownership="none">
-            <doc xml:space="preserve">A the #GstColorBalanceType.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/colorbalance.c"
+                 line="201">A the #GstColorBalanceType.</doc>
             <type name="ColorBalanceType" c:type="GstColorBalanceType"/>
           </return-value>
           <parameters>
             <parameter name="balance" transfer-ownership="none">
-              <doc xml:space="preserve">The #GstColorBalance implementation</doc>
+              <doc xml:space="preserve"
+                   filename="gst-libs/gst/video/colorbalance.c"
+                   line="197">The #GstColorBalance implementation</doc>
               <type name="ColorBalance" c:type="GstColorBalance*"/>
             </parameter>
           </parameters>
@@ -479,28 +708,36 @@ for modifying the color balance implemented by an element providing the
       </field>
       <field name="value_changed">
         <callback name="value_changed">
+          <source-position filename="gst-libs/gst/video/colorbalance.h"
+                           line="85"/>
           <return-value transfer-ownership="none">
             <type name="none" c:type="void"/>
           </return-value>
           <parameters>
             <parameter name="balance" transfer-ownership="none">
-              <doc xml:space="preserve">A #GstColorBalance instance</doc>
+              <doc xml:space="preserve"
+                   filename="gst-libs/gst/video/colorbalance.c"
+                   line="221">A #GstColorBalance instance</doc>
               <type name="ColorBalance" c:type="GstColorBalance*"/>
             </parameter>
             <parameter name="channel" transfer-ownership="none">
-              <doc xml:space="preserve">A #GstColorBalanceChannel whose value has changed</doc>
+              <doc xml:space="preserve"
+                   filename="gst-libs/gst/video/colorbalance.c"
+                   line="222">A #GstColorBalanceChannel whose value has changed</doc>
               <type name="ColorBalanceChannel"
                     c:type="GstColorBalanceChannel*"/>
             </parameter>
             <parameter name="value" transfer-ownership="none">
-              <doc xml:space="preserve">The new value of the channel</doc>
+              <doc xml:space="preserve"
+                   filename="gst-libs/gst/video/colorbalance.c"
+                   line="223">The new value of the channel</doc>
               <type name="gint" c:type="gint"/>
             </parameter>
           </parameters>
         </callback>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -509,7 +746,9 @@ for modifying the color balance implemented by an element providing the
                  glib:type-name="GstColorBalanceType"
                  glib:get-type="gst_color_balance_type_get_type"
                  c:type="GstColorBalanceType">
-      <doc xml:space="preserve">An enumeration indicating whether an element implements color balancing
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/colorbalance.h"
+           line="42">An enumeration indicating whether an element implements color balancing
 operations in software or in dedicated hardware. In general, dedicated
 hardware implementations (such as those provided by xvimagesink) are
 preferred.</doc>
@@ -517,52 +756,322 @@ preferred.</doc>
               value="0"
               c:identifier="GST_COLOR_BALANCE_HARDWARE"
               glib:nick="hardware">
-        <doc xml:space="preserve">Color balance is implemented with dedicated
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/colorbalance.h"
+             line="44">Color balance is implemented with dedicated
         hardware.</doc>
       </member>
       <member name="software"
               value="1"
               c:identifier="GST_COLOR_BALANCE_SOFTWARE"
               glib:nick="software">
-        <doc xml:space="preserve">Color balance is implemented via software
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/colorbalance.h"
+             line="46">Color balance is implemented via software
         processing.</doc>
       </member>
     </enumeration>
+    <function-macro name="IS_COLOR_BALANCE"
+                    c:identifier="GST_IS_COLOR_BALANCE"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/colorbalance.h" line="33"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_COLOR_BALANCE_CHANNEL"
+                    c:identifier="GST_IS_COLOR_BALANCE_CHANNEL"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/colorbalancechannel.h"
+                       line="37"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_COLOR_BALANCE_CHANNEL_CLASS"
+                    c:identifier="GST_IS_COLOR_BALANCE_CHANNEL_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/colorbalancechannel.h"
+                       line="39"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_NAVIGATION"
+                    c:identifier="GST_IS_NAVIGATION"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/navigation.h" line="34"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_VIDEO_AGGREGATOR"
+                    c:identifier="GST_IS_VIDEO_AGGREGATOR"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/gstvideoaggregator.h"
+                       line="180"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_VIDEO_AGGREGATOR_CLASS"
+                    c:identifier="GST_IS_VIDEO_AGGREGATOR_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/gstvideoaggregator.h"
+                       line="182"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_VIDEO_AGGREGATOR_CONVERT_PAD"
+                    c:identifier="GST_IS_VIDEO_AGGREGATOR_CONVERT_PAD"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/gstvideoaggregator.h"
+                       line="123"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_VIDEO_AGGREGATOR_CONVERT_PAD_CLASS"
+                    c:identifier="GST_IS_VIDEO_AGGREGATOR_CONVERT_PAD_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/gstvideoaggregator.h"
+                       line="124"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_VIDEO_AGGREGATOR_PAD"
+                    c:identifier="GST_IS_VIDEO_AGGREGATOR_PAD"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/gstvideoaggregator.h"
+                       line="43"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_VIDEO_AGGREGATOR_PAD_CLASS"
+                    c:identifier="GST_IS_VIDEO_AGGREGATOR_PAD_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/gstvideoaggregator.h"
+                       line="45"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_VIDEO_BUFFER_POOL"
+                    c:identifier="GST_IS_VIDEO_BUFFER_POOL"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/gstvideopool.h" line="62"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_VIDEO_DECODER"
+                    c:identifier="GST_IS_VIDEO_DECODER"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                       line="40"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_VIDEO_DECODER_CLASS"
+                    c:identifier="GST_IS_VIDEO_DECODER_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                       line="42"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_VIDEO_DIRECTION"
+                    c:identifier="GST_IS_VIDEO_DIRECTION"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/videodirection.h"
+                       line="32"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_VIDEO_ENCODER"
+                    c:identifier="GST_IS_VIDEO_ENCODER"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/gstvideoencoder.h"
+                       line="39"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_VIDEO_ENCODER_CLASS"
+                    c:identifier="GST_IS_VIDEO_ENCODER_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/gstvideoencoder.h"
+                       line="41"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_VIDEO_FILTER"
+                    c:identifier="GST_IS_VIDEO_FILTER"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/gstvideofilter.h"
+                       line="39"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_VIDEO_FILTER_CLASS"
+                    c:identifier="GST_IS_VIDEO_FILTER_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/gstvideofilter.h"
+                       line="41"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_VIDEO_ORIENTATION"
+                    c:identifier="GST_IS_VIDEO_ORIENTATION"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/videoorientation.h"
+                       line="33"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_VIDEO_OVERLAY"
+                    c:identifier="GST_IS_VIDEO_OVERLAY"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/videooverlay.h" line="33"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_VIDEO_OVERLAY_COMPOSITION"
+                    c:identifier="GST_IS_VIDEO_OVERLAY_COMPOSITION"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-overlay-composition.h"
+                       line="197"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_VIDEO_OVERLAY_RECTANGLE"
+                    c:identifier="GST_IS_VIDEO_OVERLAY_RECTANGLE"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-overlay-composition.h"
+                       line="41"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_VIDEO_SINK"
+                    c:identifier="GST_IS_VIDEO_SINK"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/gstvideosink.h" line="37"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_VIDEO_SINK_CLASS"
+                    c:identifier="GST_IS_VIDEO_SINK_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/gstvideosink.h" line="39"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
     <constant name="META_TAG_VIDEO_COLORSPACE_STR"
               value="colorspace"
               c:type="GST_META_TAG_VIDEO_COLORSPACE_STR"
               version="1.2">
-      <doc xml:space="preserve">This metadata stays relevant as long as video colorspace is unchanged.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video.h"
+           line="117">This metadata stays relevant as long as video colorspace is unchanged.</doc>
+      <source-position filename="gst-libs/gst/video/video.h" line="124"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="META_TAG_VIDEO_ORIENTATION_STR"
               value="orientation"
               c:type="GST_META_TAG_VIDEO_ORIENTATION_STR"
               version="1.2">
-      <doc xml:space="preserve">This metadata stays relevant as long as video orientation is unchanged.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video.h"
+           line="101">This metadata stays relevant as long as video orientation is unchanged.</doc>
+      <source-position filename="gst-libs/gst/video/video.h" line="108"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="META_TAG_VIDEO_SIZE_STR"
               value="size"
               c:type="GST_META_TAG_VIDEO_SIZE_STR"
               version="1.2">
-      <doc xml:space="preserve">This metadata stays relevant as long as video size is unchanged.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video.h"
+           line="109">This metadata stays relevant as long as video size is unchanged.</doc>
+      <source-position filename="gst-libs/gst/video/video.h" line="116"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="META_TAG_VIDEO_STR"
               value="video"
               c:type="GST_META_TAG_VIDEO_STR"
               version="1.2">
-      <doc xml:space="preserve">This metadata is relevant for video streams.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video.h"
+           line="93">This metadata is relevant for video streams.</doc>
+      <source-position filename="gst-libs/gst/video/video.h" line="100"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
+    <function-macro name="NAVIGATION"
+                    c:identifier="GST_NAVIGATION"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/navigation.h" line="32"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="NAVIGATION_GET_INTERFACE"
+                    c:identifier="GST_NAVIGATION_GET_INTERFACE"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/navigation.h" line="36"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
     <interface name="Navigation"
                c:symbol-prefix="navigation"
                c:type="GstNavigation"
                glib:type-name="GstNavigation"
                glib:get-type="gst_navigation_get_type"
                glib:type-struct="NavigationInterface">
-      <doc xml:space="preserve">The Navigation interface is used for creating and injecting navigation related
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/navigation.c"
+           line="23">The Navigation interface is used for creating and injecting navigation related
 events such as mouse button presses, cursor motion and key presses. The associated
 library also provides methods for parsing received events, and for sending and
 receiving navigation related bus events. One main usecase is DVD menu navigation.
@@ -582,31 +1091,46 @@ The main parts of the API are:
 
 The GstNavigation message functions provide functions for creating and parsing
 custom bus messages for signaling GstNavigation changes.</doc>
+      <source-position filename="gst-libs/gst/video/navigation.h" line="55"/>
       <function name="event_get_type"
                 c:identifier="gst_navigation_event_get_type">
-        <doc xml:space="preserve">Inspect a #GstEvent and return the #GstNavigationEventType of the event, or
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/navigation.c"
+             line="706">Inspect a #GstEvent and return the #GstNavigationEventType of the event, or
 #GST_NAVIGATION_EVENT_INVALID if the event is not a #GstNavigation event.</doc>
+        <source-position filename="gst-libs/gst/video/navigation.h"
+                         line="282"/>
         <return-value transfer-ownership="none">
           <type name="NavigationEventType" c:type="GstNavigationEventType"/>
         </return-value>
         <parameters>
           <parameter name="event" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstEvent to inspect.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/navigation.c"
+                 line="708">A #GstEvent to inspect.</doc>
             <type name="Gst.Event" c:type="GstEvent*"/>
           </parameter>
         </parameters>
       </function>
       <function name="event_parse_command"
                 c:identifier="gst_navigation_event_parse_command">
-        <doc xml:space="preserve">Inspect a #GstNavigation command event and retrieve the enum value of the
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/navigation.c"
+             line="895">Inspect a #GstNavigation command event and retrieve the enum value of the
 associated command.</doc>
+        <source-position filename="gst-libs/gst/video/navigation.h"
+                         line="302"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">TRUE if the navigation command could be extracted, otherwise FALSE.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/navigation.c"
+               line="904">TRUE if the navigation command could be extracted, otherwise FALSE.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <parameter name="event" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstEvent to inspect.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/navigation.c"
+                 line="897">A #GstEvent to inspect.</doc>
             <type name="Gst.Event" c:type="GstEvent*"/>
           </parameter>
           <parameter name="command"
@@ -615,7 +1139,9 @@ associated command.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">Pointer to GstNavigationCommand to receive the
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/navigation.c"
+                 line="898">Pointer to GstNavigationCommand to receive the
     type of the navigation event.</doc>
             <type name="NavigationCommand" c:type="GstNavigationCommand*"/>
           </parameter>
@@ -623,12 +1149,16 @@ associated command.</doc>
       </function>
       <function name="event_parse_key_event"
                 c:identifier="gst_navigation_event_parse_key_event">
+        <source-position filename="gst-libs/gst/video/navigation.h"
+                         line="285"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <parameter name="event" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstEvent to inspect.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/navigation.c"
+                 line="750">A #GstEvent to inspect.</doc>
             <type name="Gst.Event" c:type="GstEvent*"/>
           </parameter>
           <parameter name="key"
@@ -637,7 +1167,9 @@ associated command.</doc>
                      transfer-ownership="none"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">A pointer to a location to receive
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/navigation.c"
+                 line="751">A pointer to a location to receive
     the string identifying the key press. The returned string is owned by the
     event, and valid only until the event is unreffed.</doc>
             <type name="utf8" c:type="const gchar**"/>
@@ -646,17 +1178,25 @@ associated command.</doc>
       </function>
       <function name="event_parse_mouse_button_event"
                 c:identifier="gst_navigation_event_parse_mouse_button_event">
-        <doc xml:space="preserve">Retrieve the details of either a #GstNavigation mouse button press event or
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/navigation.c"
+             line="775">Retrieve the details of either a #GstNavigation mouse button press event or
 a mouse button release event. Determine which type the event is using
 gst_navigation_event_get_type() to retrieve the #GstNavigationEventType.</doc>
+        <source-position filename="gst-libs/gst/video/navigation.h"
+                         line="289"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">TRUE if the button number and both coordinates could be extracted,
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/navigation.c"
+               line="789">TRUE if the button number and both coordinates could be extracted,
     otherwise FALSE.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <parameter name="event" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstEvent to inspect.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/navigation.c"
+                 line="777">A #GstEvent to inspect.</doc>
             <type name="Gst.Event" c:type="GstEvent*"/>
           </parameter>
           <parameter name="button"
@@ -665,7 +1205,9 @@ gst_navigation_event_get_type() to retrieve the #GstNavigationEventType.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">Pointer to a gint that will receive the button
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/navigation.c"
+                 line="778">Pointer to a gint that will receive the button
     number associated with the event.</doc>
             <type name="gint" c:type="gint*"/>
           </parameter>
@@ -675,7 +1217,9 @@ gst_navigation_event_get_type() to retrieve the #GstNavigationEventType.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">Pointer to a gdouble to receive the x coordinate of the
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/navigation.c"
+                 line="780">Pointer to a gdouble to receive the x coordinate of the
     mouse button event.</doc>
             <type name="gdouble" c:type="gdouble*"/>
           </parameter>
@@ -685,7 +1229,9 @@ gst_navigation_event_get_type() to retrieve the #GstNavigationEventType.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">Pointer to a gdouble to receive the y coordinate of the
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/navigation.c"
+                 line="782">Pointer to a gdouble to receive the y coordinate of the
     mouse button event.</doc>
             <type name="gdouble" c:type="gdouble*"/>
           </parameter>
@@ -693,15 +1239,71 @@ gst_navigation_event_get_type() to retrieve the #GstNavigationEventType.</doc>
       </function>
       <function name="event_parse_mouse_move_event"
                 c:identifier="gst_navigation_event_parse_mouse_move_event">
-        <doc xml:space="preserve">Inspect a #GstNavigation mouse movement event and extract the coordinates
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/navigation.c"
+             line="817">Inspect a #GstNavigation mouse movement event and extract the coordinates
+of the event.</doc>
+        <source-position filename="gst-libs/gst/video/navigation.h"
+                         line="293"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/navigation.c"
+               line="828">TRUE if both coordinates could be extracted, otherwise FALSE.</doc>
+          <type name="gboolean" c:type="gboolean"/>
+        </return-value>
+        <parameters>
+          <parameter name="event" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/navigation.c"
+                 line="819">A #GstEvent to inspect.</doc>
+            <type name="Gst.Event" c:type="GstEvent*"/>
+          </parameter>
+          <parameter name="x"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     optional="1"
+                     allow-none="1">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/navigation.c"
+                 line="820">Pointer to a gdouble to receive the x coordinate of the
+    mouse movement.</doc>
+            <type name="gdouble" c:type="gdouble*"/>
+          </parameter>
+          <parameter name="y"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     optional="1"
+                     allow-none="1">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/navigation.c"
+                 line="822">Pointer to a gdouble to receive the y coordinate of the
+    mouse movement.</doc>
+            <type name="gdouble" c:type="gdouble*"/>
+          </parameter>
+        </parameters>
+      </function>
+      <function name="event_parse_mouse_scroll_event"
+                c:identifier="gst_navigation_event_parse_mouse_scroll_event"
+                version="1.18">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/navigation.c"
+             line="851">Inspect a #GstNavigation mouse scroll event and extract the coordinates
 of the event.</doc>
+        <source-position filename="gst-libs/gst/video/navigation.h"
+                         line="297"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">TRUE if both coordinates could be extracted, otherwise FALSE.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/navigation.c"
+               line="866">TRUE if all coordinates could be extracted, otherwise FALSE.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <parameter name="event" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstEvent to inspect.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/navigation.c"
+                 line="853">A #GstEvent to inspect.</doc>
             <type name="Gst.Event" c:type="GstEvent*"/>
           </parameter>
           <parameter name="x"
@@ -710,7 +1312,9 @@ of the event.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">Pointer to a gdouble to receive the x coordinate of the
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/navigation.c"
+                 line="854">Pointer to a gdouble to receive the x coordinate of the
     mouse movement.</doc>
             <type name="gdouble" c:type="gdouble*"/>
           </parameter>
@@ -720,7 +1324,33 @@ of the event.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">Pointer to a gdouble to receive the y coordinate of the
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/navigation.c"
+                 line="856">Pointer to a gdouble to receive the y coordinate of the
+    mouse movement.</doc>
+            <type name="gdouble" c:type="gdouble*"/>
+          </parameter>
+          <parameter name="delta_x"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     optional="1"
+                     allow-none="1">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/navigation.c"
+                 line="858">Pointer to a gdouble to receive the delta_x coordinate of the
+    mouse movement.</doc>
+            <type name="gdouble" c:type="gdouble*"/>
+          </parameter>
+          <parameter name="delta_y"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     optional="1"
+                     allow-none="1">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/navigation.c"
+                 line="860">Pointer to a gdouble to receive the delta_y coordinate of the
     mouse movement.</doc>
             <type name="gdouble" c:type="gdouble*"/>
           </parameter>
@@ -728,10 +1358,16 @@ of the event.</doc>
       </function>
       <function name="message_get_type"
                 c:identifier="gst_navigation_message_get_type">
-        <doc xml:space="preserve">Check a bus message to see if it is a #GstNavigation event, and return
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/navigation.c"
+             line="467">Check a bus message to see if it is a #GstNavigation event, and return
 the #GstNavigationMessageType identifying the type of the message if so.</doc>
+        <source-position filename="gst-libs/gst/video/navigation.h"
+                         line="213"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The type of the #GstMessage, or
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/navigation.c"
+               line="474">The type of the #GstMessage, or
 #GST_NAVIGATION_MESSAGE_INVALID if the message is not a #GstNavigation
 notification.</doc>
           <type name="NavigationMessageType"
@@ -739,47 +1375,69 @@ notification.</doc>
         </return-value>
         <parameters>
           <parameter name="message" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstMessage to inspect.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/navigation.c"
+                 line="469">A #GstMessage to inspect.</doc>
             <type name="Gst.Message" c:type="GstMessage*"/>
           </parameter>
         </parameters>
       </function>
       <function name="message_new_angles_changed"
                 c:identifier="gst_navigation_message_new_angles_changed">
-        <doc xml:space="preserve">Creates a new #GstNavigation message with type
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/navigation.c"
+             line="639">Creates a new #GstNavigation message with type
 #GST_NAVIGATION_MESSAGE_ANGLES_CHANGED for notifying an application
 that the current angle, or current number of angles available in a
 multiangle video has changed.</doc>
+        <source-position filename="gst-libs/gst/video/navigation.h"
+                         line="227"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">The new #GstMessage.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/navigation.c"
+               line="650">The new #GstMessage.</doc>
           <type name="Gst.Message" c:type="GstMessage*"/>
         </return-value>
         <parameters>
           <parameter name="src" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstObject to set as source of the new message.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/navigation.c"
+                 line="641">A #GstObject to set as source of the new message.</doc>
             <type name="Gst.Object" c:type="GstObject*"/>
           </parameter>
           <parameter name="cur_angle" transfer-ownership="none">
-            <doc xml:space="preserve">The currently selected angle.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/navigation.c"
+                 line="642">The currently selected angle.</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="n_angles" transfer-ownership="none">
-            <doc xml:space="preserve">The number of viewing angles now available.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/navigation.c"
+                 line="643">The number of viewing angles now available.</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </function>
       <function name="message_new_commands_changed"
                 c:identifier="gst_navigation_message_new_commands_changed">
-        <doc xml:space="preserve">Creates a new #GstNavigation message with type
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/navigation.c"
+             line="616">Creates a new #GstNavigation message with type
 #GST_NAVIGATION_MESSAGE_COMMANDS_CHANGED</doc>
+        <source-position filename="gst-libs/gst/video/navigation.h"
+                         line="224"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">The new #GstMessage.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/navigation.c"
+               line="623">The new #GstMessage.</doc>
           <type name="Gst.Message" c:type="GstMessage*"/>
         </return-value>
         <parameters>
           <parameter name="src" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstObject to set as source of the new message.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/navigation.c"
+                 line="618">A #GstObject to set as source of the new message.</doc>
             <type name="Gst.Object" c:type="GstObject*"/>
           </parameter>
         </parameters>
@@ -787,38 +1445,58 @@ multiangle video has changed.</doc>
       <function name="message_new_event"
                 c:identifier="gst_navigation_message_new_event"
                 version="1.6">
-        <doc xml:space="preserve">Creates a new #GstNavigation message with type
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/navigation.c"
+             line="561">Creates a new #GstNavigation message with type
 #GST_NAVIGATION_MESSAGE_EVENT.</doc>
+        <source-position filename="gst-libs/gst/video/navigation.h"
+                         line="237"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">The new #GstMessage.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/navigation.c"
+               line="569">The new #GstMessage.</doc>
           <type name="Gst.Message" c:type="GstMessage*"/>
         </return-value>
         <parameters>
           <parameter name="src" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstObject to set as source of the new message.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/navigation.c"
+                 line="563">A #GstObject to set as source of the new message.</doc>
             <type name="Gst.Object" c:type="GstObject*"/>
           </parameter>
           <parameter name="event" transfer-ownership="none">
-            <doc xml:space="preserve">A navigation #GstEvent</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/navigation.c"
+                 line="564">A navigation #GstEvent</doc>
             <type name="Gst.Event" c:type="GstEvent*"/>
           </parameter>
         </parameters>
       </function>
       <function name="message_new_mouse_over"
                 c:identifier="gst_navigation_message_new_mouse_over">
-        <doc xml:space="preserve">Creates a new #GstNavigation message with type
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/navigation.c"
+             line="507">Creates a new #GstNavigation message with type
 #GST_NAVIGATION_MESSAGE_MOUSE_OVER.</doc>
+        <source-position filename="gst-libs/gst/video/navigation.h"
+                         line="216"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">The new #GstMessage.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/navigation.c"
+               line="516">The new #GstMessage.</doc>
           <type name="Gst.Message" c:type="GstMessage*"/>
         </return-value>
         <parameters>
           <parameter name="src" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstObject to set as source of the new message.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/navigation.c"
+                 line="509">A #GstObject to set as source of the new message.</doc>
             <type name="Gst.Object" c:type="GstObject*"/>
           </parameter>
           <parameter name="active" transfer-ownership="none">
-            <doc xml:space="preserve">%TRUE if the mouse has entered a clickable area of the display.
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/navigation.c"
+                 line="510">%TRUE if the mouse has entered a clickable area of the display.
 %FALSE if it over a non-clickable area.</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
@@ -826,15 +1504,23 @@ multiangle video has changed.</doc>
       </function>
       <function name="message_parse_angles_changed"
                 c:identifier="gst_navigation_message_parse_angles_changed">
-        <doc xml:space="preserve">Parse a #GstNavigation message of type GST_NAVIGATION_MESSAGE_ANGLES_CHANGED
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/navigation.c"
+             line="668">Parse a #GstNavigation message of type GST_NAVIGATION_MESSAGE_ANGLES_CHANGED
 and extract the @cur_angle and @n_angles parameters.</doc>
+        <source-position filename="gst-libs/gst/video/navigation.h"
+                         line="232"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the message could be successfully parsed. %FALSE if not.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/navigation.c"
+               line="679">%TRUE if the message could be successfully parsed. %FALSE if not.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <parameter name="message" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstMessage to inspect.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/navigation.c"
+                 line="670">A #GstMessage to inspect.</doc>
             <type name="Gst.Message" c:type="GstMessage*"/>
           </parameter>
           <parameter name="cur_angle"
@@ -843,7 +1529,9 @@ and extract the @cur_angle and @n_angles parameters.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">A pointer to a #guint to receive the new
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/navigation.c"
+                 line="671">A pointer to a #guint to receive the new
     current angle number, or NULL</doc>
             <type name="guint" c:type="guint*"/>
           </parameter>
@@ -853,7 +1541,9 @@ and extract the @cur_angle and @n_angles parameters.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">A pointer to a #guint to receive the new angle
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/navigation.c"
+                 line="673">A pointer to a #guint to receive the new angle
     count, or NULL.</doc>
             <type name="guint" c:type="guint*"/>
           </parameter>
@@ -862,16 +1552,24 @@ and extract the @cur_angle and @n_angles parameters.</doc>
       <function name="message_parse_event"
                 c:identifier="gst_navigation_message_parse_event"
                 version="1.6">
-        <doc xml:space="preserve">Parse a #GstNavigation message of type #GST_NAVIGATION_MESSAGE_EVENT
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/navigation.c"
+             line="587">Parse a #GstNavigation message of type #GST_NAVIGATION_MESSAGE_EVENT
 and extract contained #GstEvent. The caller must unref the @event when done
 with it.</doc>
+        <source-position filename="gst-libs/gst/video/navigation.h"
+                         line="241"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the message could be successfully parsed. %FALSE if not.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/navigation.c"
+               line="597">%TRUE if the message could be successfully parsed. %FALSE if not.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <parameter name="message" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstMessage to inspect.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/navigation.c"
+                 line="589">A #GstMessage to inspect.</doc>
             <type name="Gst.Message" c:type="GstMessage*"/>
           </parameter>
           <parameter name="event"
@@ -880,7 +1578,9 @@ with it.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">a pointer to a #GstEvent to receive
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/navigation.c"
+                 line="590">a pointer to a #GstEvent to receive
     the contained navigation event.</doc>
             <type name="Gst.Event" c:type="GstEvent**"/>
           </parameter>
@@ -888,16 +1588,24 @@ with it.</doc>
       </function>
       <function name="message_parse_mouse_over"
                 c:identifier="gst_navigation_message_parse_mouse_over">
-        <doc xml:space="preserve">Parse a #GstNavigation message of type #GST_NAVIGATION_MESSAGE_MOUSE_OVER
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/navigation.c"
+             line="533">Parse a #GstNavigation message of type #GST_NAVIGATION_MESSAGE_MOUSE_OVER
 and extract the active/inactive flag. If the mouse over event is marked
 active, it indicates that the mouse is over a clickable area.</doc>
+        <source-position filename="gst-libs/gst/video/navigation.h"
+                         line="220"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the message could be successfully parsed. %FALSE if not.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/navigation.c"
+               line="543">%TRUE if the message could be successfully parsed. %FALSE if not.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <parameter name="message" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstMessage to inspect.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/navigation.c"
+                 line="535">A #GstMessage to inspect.</doc>
             <type name="Gst.Message" c:type="GstMessage*"/>
           </parameter>
           <parameter name="active"
@@ -906,7 +1614,9 @@ active, it indicates that the mouse is over a clickable area.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">A pointer to a gboolean to receive the
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/navigation.c"
+                 line="536">A pointer to a gboolean to receive the
     active/inactive state, or NULL.</doc>
             <type name="gboolean" c:type="gboolean*"/>
           </parameter>
@@ -914,51 +1624,79 @@ active, it indicates that the mouse is over a clickable area.</doc>
       </function>
       <function name="query_get_type"
                 c:identifier="gst_navigation_query_get_type">
-        <doc xml:space="preserve">Inspect a #GstQuery and return the #GstNavigationQueryType associated with
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/navigation.c"
+             line="187">Inspect a #GstQuery and return the #GstNavigationQueryType associated with
 it if it is a #GstNavigation query.</doc>
+        <source-position filename="gst-libs/gst/video/navigation.h"
+                         line="154"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The #GstNavigationQueryType of the query, or
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/navigation.c"
+               line="194">The #GstNavigationQueryType of the query, or
 #GST_NAVIGATION_QUERY_INVALID</doc>
           <type name="NavigationQueryType" c:type="GstNavigationQueryType"/>
         </return-value>
         <parameters>
           <parameter name="query" transfer-ownership="none">
-            <doc xml:space="preserve">The query to inspect</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/navigation.c"
+                 line="189">The query to inspect</doc>
             <type name="Gst.Query" c:type="GstQuery*"/>
           </parameter>
         </parameters>
       </function>
       <function name="query_new_angles"
                 c:identifier="gst_navigation_query_new_angles">
-        <doc xml:space="preserve">Create a new #GstNavigation angles query. When executed, it will
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/navigation.c"
+             line="383">Create a new #GstNavigation angles query. When executed, it will
 query the pipeline for the set of currently available angles, which may be
 greater than one in a multiangle video.</doc>
+        <source-position filename="gst-libs/gst/video/navigation.h"
+                         line="175"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">The new query.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/navigation.c"
+               line="390">The new query.</doc>
           <type name="Gst.Query" c:type="GstQuery*"/>
         </return-value>
       </function>
       <function name="query_new_commands"
                 c:identifier="gst_navigation_query_new_commands">
-        <doc xml:space="preserve">Create a new #GstNavigation commands query. When executed, it will
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/navigation.c"
+             line="222">Create a new #GstNavigation commands query. When executed, it will
 query the pipeline for the set of currently available commands.</doc>
+        <source-position filename="gst-libs/gst/video/navigation.h"
+                         line="157"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">The new query.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/navigation.c"
+               line="228">The new query.</doc>
           <type name="Gst.Query" c:type="GstQuery*"/>
         </return-value>
       </function>
       <function name="query_parse_angles"
                 c:identifier="gst_navigation_query_parse_angles">
-        <doc xml:space="preserve">Parse the current angle number in the #GstNavigation angles @query into the
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/navigation.c"
+             line="426">Parse the current angle number in the #GstNavigation angles @query into the
 #guint pointed to by the @cur_angle variable, and the number of available
 angles into the #guint pointed to by the @n_angles variable.</doc>
+        <source-position filename="gst-libs/gst/video/navigation.h"
+                         line="182"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the query could be successfully parsed. %FALSE if not.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/navigation.c"
+               line="438">%TRUE if the query could be successfully parsed. %FALSE if not.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <parameter name="query" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstQuery</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/navigation.c"
+                 line="428">a #GstQuery</doc>
             <type name="Gst.Query" c:type="GstQuery*"/>
           </parameter>
           <parameter name="cur_angle"
@@ -967,7 +1705,9 @@ angles into the #guint pointed to by the @n_angles variable.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">Pointer to a #guint into which to store the
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/navigation.c"
+                 line="429">Pointer to a #guint into which to store the
     currently selected angle value from the query, or NULL</doc>
             <type name="guint" c:type="guint*"/>
           </parameter>
@@ -977,7 +1717,9 @@ angles into the #guint pointed to by the @n_angles variable.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">Pointer to a #guint into which to store the
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/navigation.c"
+                 line="431">Pointer to a #guint into which to store the
     number of angles value from the query, or NULL</doc>
             <type name="guint" c:type="guint*"/>
           </parameter>
@@ -985,14 +1727,22 @@ angles into the #guint pointed to by the @n_angles variable.</doc>
       </function>
       <function name="query_parse_commands_length"
                 c:identifier="gst_navigation_query_parse_commands_length">
-        <doc xml:space="preserve">Parse the number of commands in the #GstNavigation commands @query.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the query could be successfully parsed. %FALSE if not.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/navigation.c"
+             line="314">Parse the number of commands in the #GstNavigation commands @query.</doc>
+        <source-position filename="gst-libs/gst/video/navigation.h"
+                         line="167"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/navigation.c"
+               line="321">%TRUE if the query could be successfully parsed. %FALSE if not.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <parameter name="query" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstQuery</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/navigation.c"
+                 line="316">a #GstQuery</doc>
             <type name="Gst.Query" c:type="GstQuery*"/>
           </parameter>
           <parameter name="n_cmds"
@@ -1001,27 +1751,39 @@ angles into the #guint pointed to by the @n_angles variable.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">the number of commands in this query.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/navigation.c"
+                 line="317">the number of commands in this query.</doc>
             <type name="guint" c:type="guint*"/>
           </parameter>
         </parameters>
       </function>
       <function name="query_parse_commands_nth"
                 c:identifier="gst_navigation_query_parse_commands_nth">
-        <doc xml:space="preserve">Parse the #GstNavigation command query and retrieve the @nth command from
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/navigation.c"
+             line="344">Parse the #GstNavigation command query and retrieve the @nth command from
 it into @cmd. If the list contains less elements than @nth, @cmd will be
 set to #GST_NAVIGATION_COMMAND_INVALID.</doc>
+        <source-position filename="gst-libs/gst/video/navigation.h"
+                         line="171"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the query could be successfully parsed. %FALSE if not.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/navigation.c"
+               line="354">%TRUE if the query could be successfully parsed. %FALSE if not.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <parameter name="query" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstQuery</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/navigation.c"
+                 line="346">a #GstQuery</doc>
             <type name="Gst.Query" c:type="GstQuery*"/>
           </parameter>
           <parameter name="nth" transfer-ownership="none">
-            <doc xml:space="preserve">the nth command to retrieve.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/navigation.c"
+                 line="347">the nth command to retrieve.</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="cmd"
@@ -1030,28 +1792,40 @@ set to #GST_NAVIGATION_COMMAND_INVALID.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">a pointer to store the nth command into.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/navigation.c"
+                 line="348">a pointer to store the nth command into.</doc>
             <type name="NavigationCommand" c:type="GstNavigationCommand*"/>
           </parameter>
         </parameters>
       </function>
       <function name="query_set_angles"
                 c:identifier="gst_navigation_query_set_angles">
-        <doc xml:space="preserve">Set the #GstNavigation angles query result field in @query.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/navigation.c"
+             line="405">Set the #GstNavigation angles query result field in @query.</doc>
+        <source-position filename="gst-libs/gst/video/navigation.h"
+                         line="178"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <parameter name="query" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstQuery</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/navigation.c"
+                 line="407">a #GstQuery</doc>
             <type name="Gst.Query" c:type="GstQuery*"/>
           </parameter>
           <parameter name="cur_angle" transfer-ownership="none">
-            <doc xml:space="preserve">the current viewing angle to set.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/navigation.c"
+                 line="408">the current viewing angle to set.</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="n_angles" transfer-ownership="none">
-            <doc xml:space="preserve">the number of viewing angles to set.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/navigation.c"
+                 line="409">the number of viewing angles to set.</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
@@ -1059,44 +1833,64 @@ set to #GST_NAVIGATION_COMMAND_INVALID.</doc>
       <function name="query_set_commands"
                 c:identifier="gst_navigation_query_set_commands"
                 introspectable="0">
-        <doc xml:space="preserve">Set the #GstNavigation command query result fields in @query. The number
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/navigation.c"
+             line="254">Set the #GstNavigation command query result fields in @query. The number
 of commands passed must be equal to @n_commands.</doc>
+        <source-position filename="gst-libs/gst/video/navigation.h"
+                         line="160"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <parameter name="query" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstQuery</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/navigation.c"
+                 line="256">a #GstQuery</doc>
             <type name="Gst.Query" c:type="GstQuery*"/>
           </parameter>
           <parameter name="n_cmds" transfer-ownership="none">
-            <doc xml:space="preserve">the number of commands to set.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/navigation.c"
+                 line="257">the number of commands to set.</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="..." transfer-ownership="none">
-            <doc xml:space="preserve">A list of @GstNavigationCommand values, @n_cmds entries long.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/navigation.c"
+                 line="258">A list of @GstNavigationCommand values, @n_cmds entries long.</doc>
             <varargs/>
           </parameter>
         </parameters>
       </function>
       <function name="query_set_commandsv"
                 c:identifier="gst_navigation_query_set_commandsv">
-        <doc xml:space="preserve">Set the #GstNavigation command query result fields in @query. The number
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/navigation.c"
+             line="286">Set the #GstNavigation command query result fields in @query. The number
 of commands passed must be equal to @n_commands.</doc>
+        <source-position filename="gst-libs/gst/video/navigation.h"
+                         line="163"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <parameter name="query" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstQuery</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/navigation.c"
+                 line="288">a #GstQuery</doc>
             <type name="Gst.Query" c:type="GstQuery*"/>
           </parameter>
           <parameter name="n_cmds" transfer-ownership="none">
-            <doc xml:space="preserve">the number of commands to set.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/navigation.c"
+                 line="289">the number of commands to set.</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="cmds" transfer-ownership="none">
-            <doc xml:space="preserve">An array containing @n_cmds
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/navigation.c"
+                 line="290">An array containing @n_cmds
     @GstNavigationCommand values.</doc>
             <array length="1"
                    zero-terminated="0"
@@ -1107,6 +1901,7 @@ of commands passed must be equal to @n_commands.</doc>
         </parameters>
       </function>
       <virtual-method name="send_event" invoker="send_event">
+        <source-position filename="gst-libs/gst/video/navigation.h" line="54"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
@@ -1120,22 +1915,32 @@ of commands passed must be equal to @n_commands.</doc>
         </parameters>
       </virtual-method>
       <method name="send_command" c:identifier="gst_navigation_send_command">
-        <doc xml:space="preserve">Sends the indicated command to the navigation interface.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/navigation.c"
+             line="166">Sends the indicated command to the navigation interface.</doc>
+        <source-position filename="gst-libs/gst/video/navigation.h"
+                         line="324"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="navigation" transfer-ownership="none">
-            <doc xml:space="preserve">The navigation interface instance</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/navigation.c"
+                 line="168">The navigation interface instance</doc>
             <type name="Navigation" c:type="GstNavigation*"/>
           </instance-parameter>
           <parameter name="command" transfer-ownership="none">
-            <doc xml:space="preserve">The command to issue</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/navigation.c"
+                 line="169">The command to issue</doc>
             <type name="NavigationCommand" c:type="GstNavigationCommand"/>
           </parameter>
         </parameters>
       </method>
       <method name="send_event" c:identifier="gst_navigation_send_event">
+        <source-position filename="gst-libs/gst/video/navigation.h"
+                         line="308"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
@@ -1150,21 +1955,29 @@ of commands passed must be equal to @n_commands.</doc>
       </method>
       <method name="send_key_event"
               c:identifier="gst_navigation_send_key_event">
+        <source-position filename="gst-libs/gst/video/navigation.h"
+                         line="312"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="navigation" transfer-ownership="none">
-            <doc xml:space="preserve">The navigation interface instance</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/navigation.c"
+                 line="90">The navigation interface instance</doc>
             <type name="Navigation" c:type="GstNavigation*"/>
           </instance-parameter>
           <parameter name="event" transfer-ownership="none">
-            <doc xml:space="preserve">The type of the key event. Recognised values are "key-press" and
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/navigation.c"
+                 line="91">The type of the key event. Recognised values are "key-press" and
 "key-release"</doc>
             <type name="utf8" c:type="const char*"/>
           </parameter>
           <parameter name="key" transfer-ownership="none">
-            <doc xml:space="preserve">Character representation of the key. This is typically as produced
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/navigation.c"
+                 line="93">Character representation of the key. This is typically as produced
 by XKeysymToString.</doc>
             <type name="utf8" c:type="const char*"/>
           </parameter>
@@ -1172,34 +1985,95 @@ by XKeysymToString.</doc>
       </method>
       <method name="send_mouse_event"
               c:identifier="gst_navigation_send_mouse_event">
-        <doc xml:space="preserve">Sends a mouse event to the navigation interface. Mouse event coordinates
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/navigation.c"
+             line="108">Sends a mouse event to the navigation interface. Mouse event coordinates
 are sent relative to the display space of the related output area. This is
 usually the size in pixels of the window associated with the element
 implementing the #GstNavigation interface.</doc>
+        <source-position filename="gst-libs/gst/video/navigation.h"
+                         line="316"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="navigation" transfer-ownership="none">
-            <doc xml:space="preserve">The navigation interface instance</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/navigation.c"
+                 line="110">The navigation interface instance</doc>
             <type name="Navigation" c:type="GstNavigation*"/>
           </instance-parameter>
           <parameter name="event" transfer-ownership="none">
-            <doc xml:space="preserve">The type of mouse event, as a text string. Recognised values are
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/navigation.c"
+                 line="111">The type of mouse event, as a text string. Recognised values are
 "mouse-button-press", "mouse-button-release" and "mouse-move".</doc>
             <type name="utf8" c:type="const char*"/>
           </parameter>
           <parameter name="button" transfer-ownership="none">
-            <doc xml:space="preserve">The button number of the button being pressed or released. Pass 0
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/navigation.c"
+                 line="113">The button number of the button being pressed or released. Pass 0
 for mouse-move events.</doc>
             <type name="gint" c:type="int"/>
           </parameter>
           <parameter name="x" transfer-ownership="none">
-            <doc xml:space="preserve">The x coordinate of the mouse event.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/navigation.c"
+                 line="115">The x coordinate of the mouse event.</doc>
+            <type name="gdouble" c:type="double"/>
+          </parameter>
+          <parameter name="y" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/navigation.c"
+                 line="116">The y coordinate of the mouse event.</doc>
+            <type name="gdouble" c:type="double"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="send_mouse_scroll_event"
+              c:identifier="gst_navigation_send_mouse_scroll_event"
+              version="1.18">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/navigation.c"
+             line="138">Sends a mouse scroll event to the navigation interface. Mouse event coordinates
+are sent relative to the display space of the related output area. This is
+usually the size in pixels of the window associated with the element
+implementing the #GstNavigation interface.</doc>
+        <source-position filename="gst-libs/gst/video/navigation.h"
+                         line="320"/>
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="navigation" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/navigation.c"
+                 line="140">The navigation interface instance</doc>
+            <type name="Navigation" c:type="GstNavigation*"/>
+          </instance-parameter>
+          <parameter name="x" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/navigation.c"
+                 line="141">The x coordinate of the mouse event.</doc>
             <type name="gdouble" c:type="double"/>
           </parameter>
           <parameter name="y" transfer-ownership="none">
-            <doc xml:space="preserve">The y coordinate of the mouse event.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/navigation.c"
+                 line="142">The y coordinate of the mouse event.</doc>
+            <type name="gdouble" c:type="double"/>
+          </parameter>
+          <parameter name="delta_x" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/navigation.c"
+                 line="143">The delta_x coordinate of the mouse event.</doc>
+            <type name="gdouble" c:type="double"/>
+          </parameter>
+          <parameter name="delta_y" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/navigation.c"
+                 line="144">The delta_y coordinate of the mouse event.</doc>
             <type name="gdouble" c:type="double"/>
           </parameter>
         </parameters>
@@ -1209,7 +2083,9 @@ for mouse-move events.</doc>
                  glib:type-name="GstNavigationCommand"
                  glib:get-type="gst_navigation_command_get_type"
                  c:type="GstNavigationCommand">
-      <doc xml:space="preserve">A set of commands that may be issued to an element providing the
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/navigation.h"
+           line="62">A set of commands that may be issued to an element providing the
 #GstNavigation interface. The available commands can be queried via
 the gst_navigation_query_new_commands() query.
 
@@ -1225,104 +2101,134 @@ For convenience in handling DVD navigation, the MENU commands are aliased as:
               value="0"
               c:identifier="GST_NAVIGATION_COMMAND_INVALID"
               glib:nick="invalid">
-        <doc xml:space="preserve">An invalid command entry</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/navigation.h"
+             line="64">An invalid command entry</doc>
       </member>
       <member name="menu1"
               value="1"
               c:identifier="GST_NAVIGATION_COMMAND_MENU1"
               glib:nick="menu1">
-        <doc xml:space="preserve">Execute navigation menu command 1. For DVD,
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/navigation.h"
+             line="65">Execute navigation menu command 1. For DVD,
 this enters the DVD root menu, or exits back to the title from the menu.</doc>
       </member>
       <member name="menu2"
               value="2"
               c:identifier="GST_NAVIGATION_COMMAND_MENU2"
               glib:nick="menu2">
-        <doc xml:space="preserve">Execute navigation menu command 2. For DVD,
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/navigation.h"
+             line="67">Execute navigation menu command 2. For DVD,
 this jumps to the DVD title menu.</doc>
       </member>
       <member name="menu3"
               value="3"
               c:identifier="GST_NAVIGATION_COMMAND_MENU3"
               glib:nick="menu3">
-        <doc xml:space="preserve">Execute navigation menu command 3. For DVD,
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/navigation.h"
+             line="69">Execute navigation menu command 3. For DVD,
 this jumps into the DVD root menu.</doc>
       </member>
       <member name="menu4"
               value="4"
               c:identifier="GST_NAVIGATION_COMMAND_MENU4"
               glib:nick="menu4">
-        <doc xml:space="preserve">Execute navigation menu command 4. For DVD,
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/navigation.h"
+             line="71">Execute navigation menu command 4. For DVD,
 this jumps to the Subpicture menu.</doc>
       </member>
       <member name="menu5"
               value="5"
               c:identifier="GST_NAVIGATION_COMMAND_MENU5"
               glib:nick="menu5">
-        <doc xml:space="preserve">Execute navigation menu command 5. For DVD,
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/navigation.h"
+             line="73">Execute navigation menu command 5. For DVD,
 the jumps to the audio menu.</doc>
       </member>
       <member name="menu6"
               value="6"
               c:identifier="GST_NAVIGATION_COMMAND_MENU6"
               glib:nick="menu6">
-        <doc xml:space="preserve">Execute navigation menu command 6. For DVD,
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/navigation.h"
+             line="75">Execute navigation menu command 6. For DVD,
 this jumps to the angles menu.</doc>
       </member>
       <member name="menu7"
               value="7"
               c:identifier="GST_NAVIGATION_COMMAND_MENU7"
               glib:nick="menu7">
-        <doc xml:space="preserve">Execute navigation menu command 7. For DVD,
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/navigation.h"
+             line="77">Execute navigation menu command 7. For DVD,
 this jumps to the chapter menu.</doc>
       </member>
       <member name="left"
               value="20"
               c:identifier="GST_NAVIGATION_COMMAND_LEFT"
               glib:nick="left">
-        <doc xml:space="preserve">Select the next button to the left in a menu,
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/navigation.h"
+             line="79">Select the next button to the left in a menu,
 if such a button exists.</doc>
       </member>
       <member name="right"
               value="21"
               c:identifier="GST_NAVIGATION_COMMAND_RIGHT"
               glib:nick="right">
-        <doc xml:space="preserve">Select the next button to the right in a menu,
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/navigation.h"
+             line="81">Select the next button to the right in a menu,
 if such a button exists.</doc>
       </member>
       <member name="up"
               value="22"
               c:identifier="GST_NAVIGATION_COMMAND_UP"
               glib:nick="up">
-        <doc xml:space="preserve">Select the button above the current one in a
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/navigation.h"
+             line="83">Select the button above the current one in a
 menu, if such a button exists.</doc>
       </member>
       <member name="down"
               value="23"
               c:identifier="GST_NAVIGATION_COMMAND_DOWN"
               glib:nick="down">
-        <doc xml:space="preserve">Select the button below the current one in a
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/navigation.h"
+             line="85">Select the button below the current one in a
 menu, if such a button exists.</doc>
       </member>
       <member name="activate"
               value="24"
               c:identifier="GST_NAVIGATION_COMMAND_ACTIVATE"
               glib:nick="activate">
-        <doc xml:space="preserve">Activate (click) the currently selected
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/navigation.h"
+             line="87">Activate (click) the currently selected
 button in a menu, if such a button exists.</doc>
       </member>
       <member name="prev_angle"
               value="30"
               c:identifier="GST_NAVIGATION_COMMAND_PREV_ANGLE"
               glib:nick="prev-angle">
-        <doc xml:space="preserve">Switch to the previous angle in a
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/navigation.h"
+             line="89">Switch to the previous angle in a
 multiangle feature.</doc>
       </member>
       <member name="next_angle"
               value="31"
               c:identifier="GST_NAVIGATION_COMMAND_NEXT_ANGLE"
               glib:nick="next-angle">
-        <doc xml:space="preserve">Switch to the next angle in a multiangle
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/navigation.h"
+             line="91">Switch to the next angle in a multiangle
 feature.</doc>
       </member>
     </enumeration>
@@ -1330,34 +2236,44 @@ feature.</doc>
                  glib:type-name="GstNavigationEventType"
                  glib:get-type="gst_navigation_event_type_get_type"
                  c:type="GstNavigationEventType">
-      <doc xml:space="preserve">Enum values for the various events that an element implementing the
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/navigation.h"
+           line="244">Enum values for the various events that an element implementing the
 GstNavigation interface might send up the pipeline.</doc>
       <member name="invalid"
               value="0"
               c:identifier="GST_NAVIGATION_EVENT_INVALID"
               glib:nick="invalid">
-        <doc xml:space="preserve">Returned from
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/navigation.h"
+             line="246">Returned from
 gst_navigation_event_get_type() when the passed event is not a navigation event.</doc>
       </member>
       <member name="key_press"
               value="1"
               c:identifier="GST_NAVIGATION_EVENT_KEY_PRESS"
               glib:nick="key-press">
-        <doc xml:space="preserve">A key press event. Use
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/navigation.h"
+             line="248">A key press event. Use
 gst_navigation_event_parse_key_event() to extract the details from the event.</doc>
       </member>
       <member name="key_release"
               value="2"
               c:identifier="GST_NAVIGATION_EVENT_KEY_RELEASE"
               glib:nick="key-release">
-        <doc xml:space="preserve">A key release event. Use
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/navigation.h"
+             line="250">A key release event. Use
 gst_navigation_event_parse_key_event() to extract the details from the event.</doc>
       </member>
       <member name="mouse_button_press"
               value="3"
               c:identifier="GST_NAVIGATION_EVENT_MOUSE_BUTTON_PRESS"
               glib:nick="mouse-button-press">
-        <doc xml:space="preserve">A mouse button press event. Use
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/navigation.h"
+             line="252">A mouse button press event. Use
 gst_navigation_event_parse_mouse_button_event() to extract the details from the
 event.</doc>
       </member>
@@ -1365,7 +2281,9 @@ event.</doc>
               value="4"
               c:identifier="GST_NAVIGATION_EVENT_MOUSE_BUTTON_RELEASE"
               glib:nick="mouse-button-release">
-        <doc xml:space="preserve">A mouse button release event. Use
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/navigation.h"
+             line="255">A mouse button release event. Use
 gst_navigation_event_parse_mouse_button_event() to extract the details from the
 event.</doc>
       </member>
@@ -1373,7 +2291,9 @@ event.</doc>
               value="5"
               c:identifier="GST_NAVIGATION_EVENT_MOUSE_MOVE"
               glib:nick="mouse-move">
-        <doc xml:space="preserve">A mouse movement event. Use
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/navigation.h"
+             line="258">A mouse movement event. Use
 gst_navigation_event_parse_mouse_move_event() to extract the details from the
 event.</doc>
       </member>
@@ -1381,20 +2301,39 @@ event.</doc>
               value="6"
               c:identifier="GST_NAVIGATION_EVENT_COMMAND"
               glib:nick="command">
-        <doc xml:space="preserve">A navigation command event. Use
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/navigation.h"
+             line="261">A navigation command event. Use
 gst_navigation_event_parse_command() to extract the details from the event.</doc>
       </member>
+      <member name="mouse_scroll"
+              value="7"
+              c:identifier="GST_NAVIGATION_EVENT_MOUSE_SCROLL"
+              glib:nick="mouse-scroll">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/navigation.h"
+             line="263">A mouse scroll event. Use
+gst_navigation_event_parse_mouse_scroll_event() to extract the details from
+the event. (Since: 1.18)</doc>
+      </member>
     </enumeration>
     <record name="NavigationInterface"
             c:type="GstNavigationInterface"
             glib:is-gtype-struct-for="Navigation">
-      <doc xml:space="preserve">Navigation interface.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/navigation.h"
+           line="43">Navigation interface.</doc>
+      <source-position filename="gst-libs/gst/video/navigation.h" line="55"/>
       <field name="iface">
-        <doc xml:space="preserve">the parent interface</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/navigation.h"
+             line="45">the parent interface</doc>
         <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
       </field>
       <field name="send_event">
         <callback name="send_event">
+          <source-position filename="gst-libs/gst/video/navigation.h"
+                           line="54"/>
           <return-value transfer-ownership="none">
             <type name="none" c:type="void"/>
           </return-value>
@@ -1413,13 +2352,17 @@ gst_navigation_event_parse_command() to extract the details from the event.</doc
                  glib:type-name="GstNavigationMessageType"
                  glib:get-type="gst_navigation_message_type_get_type"
                  c:type="GstNavigationMessageType">
-      <doc xml:space="preserve">A set of notifications that may be received on the bus when navigation
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/navigation.h"
+           line="186">A set of notifications that may be received on the bus when navigation
 related status changes.</doc>
       <member name="invalid"
               value="0"
               c:identifier="GST_NAVIGATION_MESSAGE_INVALID"
               glib:nick="invalid">
-        <doc xml:space="preserve">Returned from
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/navigation.h"
+             line="188">Returned from
 gst_navigation_message_get_type() when the passed message is not a
 navigation message.</doc>
       </member>
@@ -1427,21 +2370,27 @@ navigation message.</doc>
               value="1"
               c:identifier="GST_NAVIGATION_MESSAGE_MOUSE_OVER"
               glib:nick="mouse-over">
-        <doc xml:space="preserve">Sent when the mouse moves over or leaves a
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/navigation.h"
+             line="191">Sent when the mouse moves over or leaves a
 clickable region of the output, such as a DVD menu button.</doc>
       </member>
       <member name="commands_changed"
               value="2"
               c:identifier="GST_NAVIGATION_MESSAGE_COMMANDS_CHANGED"
               glib:nick="commands-changed">
-        <doc xml:space="preserve">Sent when the set of available commands
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/navigation.h"
+             line="193">Sent when the set of available commands
 changes and should re-queried by interested applications.</doc>
       </member>
       <member name="angles_changed"
               value="3"
               c:identifier="GST_NAVIGATION_MESSAGE_ANGLES_CHANGED"
               glib:nick="angles-changed">
-        <doc xml:space="preserve">Sent when display angles in a multi-angle
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/navigation.h"
+             line="195">Sent when display angles in a multi-angle
 feature (such as a multiangle DVD) change - either angles have appeared or
 disappeared.</doc>
       </member>
@@ -1449,302 +2398,2498 @@ disappeared.</doc>
               value="4"
               c:identifier="GST_NAVIGATION_MESSAGE_EVENT"
               glib:nick="event">
-        <doc xml:space="preserve">Sent when a navigation event was not handled
-by any element in the pipeline (Since 1.6)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/navigation.h"
+             line="198">Sent when a navigation event was not handled
+by any element in the pipeline (Since: 1.6)</doc>
       </member>
     </enumeration>
     <enumeration name="NavigationQueryType"
                  glib:type-name="GstNavigationQueryType"
                  glib:get-type="gst_navigation_query_type_get_type"
                  c:type="GstNavigationQueryType">
-      <doc xml:space="preserve">Tyoes of navigation interface queries.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/navigation.h"
+           line="138">Types of navigation interface queries.</doc>
       <member name="invalid"
               value="0"
               c:identifier="GST_NAVIGATION_QUERY_INVALID"
               glib:nick="invalid">
-        <doc xml:space="preserve">invalid query</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/navigation.h"
+             line="140">invalid query</doc>
       </member>
       <member name="commands"
               value="1"
               c:identifier="GST_NAVIGATION_QUERY_COMMANDS"
               glib:nick="commands">
-        <doc xml:space="preserve">command query</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/navigation.h"
+             line="141">command query</doc>
       </member>
       <member name="angles"
               value="2"
               c:identifier="GST_NAVIGATION_QUERY_ANGLES"
               glib:nick="angles">
-        <doc xml:space="preserve">viewing angle query</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/navigation.h"
+             line="142">viewing angle query</doc>
       </member>
     </enumeration>
-    <constant name="VIDEO_COLORIMETRY_BT2020"
-              value="bt2020"
-              c:type="GST_VIDEO_COLORIMETRY_BT2020">
-      <type name="utf8" c:type="gchar*"/>
-    </constant>
-    <constant name="VIDEO_COLORIMETRY_BT601"
-              value="bt601"
-              c:type="GST_VIDEO_COLORIMETRY_BT601">
-      <type name="utf8" c:type="gchar*"/>
-    </constant>
-    <constant name="VIDEO_COLORIMETRY_BT709"
-              value="bt709"
-              c:type="GST_VIDEO_COLORIMETRY_BT709">
-      <type name="utf8" c:type="gchar*"/>
-    </constant>
-    <constant name="VIDEO_COLORIMETRY_SMPTE240M"
-              value="smpte240m"
-              c:type="GST_VIDEO_COLORIMETRY_SMPTE240M">
-      <type name="utf8" c:type="gchar*"/>
-    </constant>
-    <constant name="VIDEO_COLORIMETRY_SRGB"
-              value="sRGB"
-              c:type="GST_VIDEO_COLORIMETRY_SRGB">
-      <type name="utf8" c:type="gchar*"/>
-    </constant>
-    <constant name="VIDEO_COMP_A" value="3" c:type="GST_VIDEO_COMP_A">
-      <type name="gint" c:type="gint"/>
-    </constant>
-    <constant name="VIDEO_COMP_B" value="2" c:type="GST_VIDEO_COMP_B">
-      <type name="gint" c:type="gint"/>
-    </constant>
-    <constant name="VIDEO_COMP_G" value="1" c:type="GST_VIDEO_COMP_G">
-      <type name="gint" c:type="gint"/>
-    </constant>
-    <constant name="VIDEO_COMP_INDEX" value="0" c:type="GST_VIDEO_COMP_INDEX">
-      <type name="gint" c:type="gint"/>
-    </constant>
-    <constant name="VIDEO_COMP_PALETTE"
-              value="1"
-              c:type="GST_VIDEO_COMP_PALETTE">
-      <type name="gint" c:type="gint"/>
-    </constant>
-    <constant name="VIDEO_COMP_R" value="0" c:type="GST_VIDEO_COMP_R">
-      <type name="gint" c:type="gint"/>
-    </constant>
-    <constant name="VIDEO_COMP_U" value="1" c:type="GST_VIDEO_COMP_U">
-      <type name="gint" c:type="gint"/>
-    </constant>
-    <constant name="VIDEO_COMP_V" value="2" c:type="GST_VIDEO_COMP_V">
-      <type name="gint" c:type="gint"/>
-    </constant>
-    <constant name="VIDEO_COMP_Y" value="0" c:type="GST_VIDEO_COMP_Y">
-      <type name="gint" c:type="gint"/>
-    </constant>
-    <constant name="VIDEO_CONVERTER_OPT_ALPHA_MODE"
-              value="GstVideoConverter.alpha-mode"
-              c:type="GST_VIDEO_CONVERTER_OPT_ALPHA_MODE">
-      <doc xml:space="preserve">#GST_TYPE_VIDEO_ALPHA_MODE, the alpha mode to use.
-Default is #GST_VIDEO_ALPHA_MODE_COPY.</doc>
-      <type name="utf8" c:type="gchar*"/>
-    </constant>
-    <constant name="VIDEO_CONVERTER_OPT_ALPHA_VALUE"
-              value="GstVideoConverter.alpha-value"
-              c:type="GST_VIDEO_CONVERTER_OPT_ALPHA_VALUE">
-      <doc xml:space="preserve">#G_TYPE_DOUBLE, the alpha color value to use.
-Default to 1.0</doc>
-      <type name="utf8" c:type="gchar*"/>
-    </constant>
-    <constant name="VIDEO_CONVERTER_OPT_BORDER_ARGB"
-              value="GstVideoConverter.border-argb"
-              c:type="GST_VIDEO_CONVERTER_OPT_BORDER_ARGB">
-      <doc xml:space="preserve">#G_TYPE_UINT, the border color to use if #GST_VIDEO_CONVERTER_OPT_FILL_BORDER
-is set to %TRUE. The color is in ARGB format.
-Default 0xff000000</doc>
-      <type name="utf8" c:type="gchar*"/>
-    </constant>
-    <constant name="VIDEO_CONVERTER_OPT_CHROMA_MODE"
-              value="GstVideoConverter.chroma-mode"
-              c:type="GST_VIDEO_CONVERTER_OPT_CHROMA_MODE">
-      <doc xml:space="preserve">#GST_TYPE_VIDEO_CHROMA_MODE, set the chroma resample mode subsampled
-formats. Default is #GST_VIDEO_CHROMA_MODE_FULL.</doc>
-      <type name="utf8" c:type="gchar*"/>
-    </constant>
-    <constant name="VIDEO_CONVERTER_OPT_CHROMA_RESAMPLER_METHOD"
-              value="GstVideoConverter.chroma-resampler-method"
-              c:type="GST_VIDEO_CONVERTER_OPT_CHROMA_RESAMPLER_METHOD">
-      <doc xml:space="preserve">#GST_TYPE_VIDEO_RESAMPLER_METHOD, The resampler method to use for
-chroma resampling. Other options for the resampler can be used, see
-the #GstVideoResampler. Default is #GST_VIDEO_RESAMPLER_METHOD_LINEAR</doc>
-      <type name="utf8" c:type="gchar*"/>
-    </constant>
-    <constant name="VIDEO_CONVERTER_OPT_DEST_HEIGHT"
-              value="GstVideoConverter.dest-height"
-              c:type="GST_VIDEO_CONVERTER_OPT_DEST_HEIGHT">
-      <doc xml:space="preserve">#G_TYPE_INT, height in the destination frame, default destination height</doc>
-      <type name="utf8" c:type="gchar*"/>
-    </constant>
-    <constant name="VIDEO_CONVERTER_OPT_DEST_WIDTH"
+    <function-macro name="VIDEO_AGGREGATOR"
+                    c:identifier="GST_VIDEO_AGGREGATOR"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/gstvideoaggregator.h"
+                       line="175"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_AGGREGATOR_CAST"
+                    c:identifier="GST_VIDEO_AGGREGATOR_CAST"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/gstvideoaggregator.h"
+                       line="177"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_AGGREGATOR_CLASS"
+                    c:identifier="GST_VIDEO_AGGREGATOR_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/gstvideoaggregator.h"
+                       line="178"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_AGGREGATOR_CONVERT_PAD"
+                    c:identifier="GST_VIDEO_AGGREGATOR_CONVERT_PAD"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/gstvideoaggregator.h"
+                       line="120"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_AGGREGATOR_CONVERT_PAD_CLASS"
+                    c:identifier="GST_VIDEO_AGGREGATOR_CONVERT_PAD_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/gstvideoaggregator.h"
+                       line="121"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_AGGREGATOR_CONVERT_PAD_GET_CLASS"
+                    c:identifier="GST_VIDEO_AGGREGATOR_CONVERT_PAD_GET_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/gstvideoaggregator.h"
+                       line="122"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_AGGREGATOR_GET_CLASS"
+                    c:identifier="GST_VIDEO_AGGREGATOR_GET_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/gstvideoaggregator.h"
+                       line="184"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_AGGREGATOR_PAD"
+                    c:identifier="GST_VIDEO_AGGREGATOR_PAD"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/gstvideoaggregator.h"
+                       line="38"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_AGGREGATOR_PAD_CAST"
+                    c:identifier="GST_VIDEO_AGGREGATOR_PAD_CAST"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/gstvideoaggregator.h"
+                       line="40"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_AGGREGATOR_PAD_CLASS"
+                    c:identifier="GST_VIDEO_AGGREGATOR_PAD_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/gstvideoaggregator.h"
+                       line="41"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_AGGREGATOR_PAD_GET_CLASS"
+                    c:identifier="GST_VIDEO_AGGREGATOR_PAD_GET_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/gstvideoaggregator.h"
+                       line="47"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_ANCILLARY_DID16"
+                    c:identifier="GST_VIDEO_ANCILLARY_DID16"
+                    version="1.16"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-anc.h"
+           line="78">Returns the #GstVideoAncillaryDID16 of the ancillary data.</doc>
+      <source-position filename="gst-libs/gst/video/video-anc.h" line="88"/>
+      <parameters>
+        <parameter name="anc">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-anc.h"
+               line="80">a #GstVideoAncillary</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_BUFFER_IS_BOTTOM_FIELD"
+                    c:identifier="GST_VIDEO_BUFFER_IS_BOTTOM_FIELD"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-frame.h"
+           line="226">Check if GST_VIDEO_BUFFER_FLAG_BOTTOM_FIELD is set on @buf (Since: 1.18).</doc>
+      <source-position filename="gst-libs/gst/video/video-frame.h" line="232"/>
+      <parameters>
+        <parameter name="buf">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-frame.h"
+               line="228">a #GstBuffer</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_BUFFER_IS_TOP_FIELD"
+                    c:identifier="GST_VIDEO_BUFFER_IS_TOP_FIELD"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-frame.h"
+           line="218">Check if GST_VIDEO_BUFFER_FLAG_TOP_FIELD is set on @buf (Since: 1.18).</doc>
+      <source-position filename="gst-libs/gst/video/video-frame.h" line="224"/>
+      <parameters>
+        <parameter name="buf">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-frame.h"
+               line="220">a #GstBuffer</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_BUFFER_POOL"
+                    c:identifier="GST_VIDEO_BUFFER_POOL"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/gstvideopool.h" line="63"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_BUFFER_POOL_CAST"
+                    c:identifier="GST_VIDEO_BUFFER_POOL_CAST"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/gstvideopool.h" line="64"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_CAPS_MAKE"
+                    c:identifier="GST_VIDEO_CAPS_MAKE"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-format.h"
+           line="629">Generic caps string for video, for use in pad templates.</doc>
+      <source-position filename="gst-libs/gst/video/video-format.h"
+                       line="616"/>
+      <parameters>
+        <parameter name="format">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-format.h"
+               line="631">string format that describes the pixel layout, as string
+    (e.g. "I420", "RGB", "YV12", "YUY2", "AYUV", etc.)</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_CAPS_MAKE_WITH_FEATURES"
+                    c:identifier="GST_VIDEO_CAPS_MAKE_WITH_FEATURES"
+                    version="1.2"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-format.h"
+           line="643">Generic caps string for video, for use in pad templates.</doc>
+      <source-position filename="gst-libs/gst/video/video-format.h"
+                       line="634"/>
+      <parameters>
+        <parameter name="features">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-format.h"
+               line="647">Requires caps features as a string, e.g.
+    "memory:SystemMemory".</doc>
+        </parameter>
+        <parameter name="format">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-format.h"
+               line="645">string format that describes the pixel layout, as string
+    (e.g. "I420", "RGB", "YV12", "YUY2", "AYUV", etc.)</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_CODEC_FRAME_FLAGS"
+                    c:identifier="GST_VIDEO_CODEC_FRAME_FLAGS"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/gstvideoutils.h"
+           line="96">The entire set of flags for the @frame</doc>
+      <source-position filename="gst-libs/gst/video/gstvideoutils.h"
+                       line="100"/>
+      <parameters>
+        <parameter name="frame">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideoutils.h"
+               line="98">a #GstVideoCodecFrame</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_CODEC_FRAME_FLAG_IS_SET"
+                    c:identifier="GST_VIDEO_CODEC_FRAME_FLAG_IS_SET"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/gstvideoutils.h"
+           line="104">Checks whether the given @flag is set</doc>
+      <source-position filename="gst-libs/gst/video/gstvideoutils.h"
+                       line="109"/>
+      <parameters>
+        <parameter name="frame">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideoutils.h"
+               line="106">a #GstVideoCodecFrame</doc>
+        </parameter>
+        <parameter name="flag">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideoutils.h"
+               line="107">a flag to check for</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_CODEC_FRAME_FLAG_SET"
+                    c:identifier="GST_VIDEO_CODEC_FRAME_FLAG_SET"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/gstvideoutils.h"
+           line="113">This macro sets the given bits</doc>
+      <source-position filename="gst-libs/gst/video/gstvideoutils.h"
+                       line="118"/>
+      <parameters>
+        <parameter name="frame">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideoutils.h"
+               line="115">a #GstVideoCodecFrame</doc>
+        </parameter>
+        <parameter name="flag">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideoutils.h"
+               line="116">Flag to set, can be any number of bits in guint32.</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_CODEC_FRAME_FLAG_UNSET"
+                    c:identifier="GST_VIDEO_CODEC_FRAME_FLAG_UNSET"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/gstvideoutils.h"
+           line="122">This macro usets the given bits.</doc>
+      <source-position filename="gst-libs/gst/video/gstvideoutils.h"
+                       line="127"/>
+      <parameters>
+        <parameter name="frame">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideoutils.h"
+               line="124">a #GstVideoCodecFrame</doc>
+        </parameter>
+        <parameter name="flag">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideoutils.h"
+               line="125">Flag to unset</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_CODEC_FRAME_IS_DECODE_ONLY"
+                    c:identifier="GST_VIDEO_CODEC_FRAME_IS_DECODE_ONLY"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/gstvideoutils.h"
+           line="131">Tests if the buffer should only be decoded but not sent downstream.</doc>
+      <source-position filename="gst-libs/gst/video/gstvideoutils.h"
+                       line="135"/>
+      <parameters>
+        <parameter name="frame">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideoutils.h"
+               line="133">a #GstVideoCodecFrame</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_CODEC_FRAME_IS_FORCE_KEYFRAME"
+                    c:identifier="GST_VIDEO_CODEC_FRAME_IS_FORCE_KEYFRAME"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/gstvideoutils.h"
+           line="177">Tests if the frame must be encoded as a keyframe. Applies only to
+frames provided to encoders. Decoders can safely ignore this field.</doc>
+      <source-position filename="gst-libs/gst/video/gstvideoutils.h"
+                       line="182"/>
+      <parameters>
+        <parameter name="frame">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideoutils.h"
+               line="179">a #GstVideoCodecFrame</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_CODEC_FRAME_IS_FORCE_KEYFRAME_HEADERS"
+                    c:identifier="GST_VIDEO_CODEC_FRAME_IS_FORCE_KEYFRAME_HEADERS"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/gstvideoutils.h"
+           line="188">Tests if encoder should output stream headers before outputting the
+resulting encoded buffer for the given frame.
+
+Applies only to frames provided to encoders. Decoders can safely
+ignore this field.</doc>
+      <source-position filename="gst-libs/gst/video/gstvideoutils.h"
+                       line="196"/>
+      <parameters>
+        <parameter name="frame">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideoutils.h"
+               line="190">a #GstVideoCodecFrame</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_CODEC_FRAME_IS_SYNC_POINT"
+                    c:identifier="GST_VIDEO_CODEC_FRAME_IS_SYNC_POINT"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/gstvideoutils.h"
+           line="152">Tests if the frame is a synchronization point (like a keyframe).
+
+Decoder implementations can use this to detect keyframes.</doc>
+      <source-position filename="gst-libs/gst/video/gstvideoutils.h"
+                       line="158"/>
+      <parameters>
+        <parameter name="frame">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideoutils.h"
+               line="154">a #GstVideoCodecFrame</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_CODEC_FRAME_SET_DECODE_ONLY"
+                    c:identifier="GST_VIDEO_CODEC_FRAME_SET_DECODE_ONLY"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/gstvideoutils.h"
+           line="139">Sets the buffer to not be sent downstream.
+
+Decoder implementation can use this if they have frames that
+are not meant to be displayed.
+
+Encoder implementation can safely ignore this field.</doc>
+      <source-position filename="gst-libs/gst/video/gstvideoutils.h"
+                       line="148"/>
+      <parameters>
+        <parameter name="frame">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideoutils.h"
+               line="141">a #GstVideoCodecFrame</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_CODEC_FRAME_SET_FORCE_KEYFRAME"
+                    c:identifier="GST_VIDEO_CODEC_FRAME_SET_FORCE_KEYFRAME"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/gstvideoutils.h"
+                       line="183"/>
+      <parameters>
+        <parameter name="frame">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_CODEC_FRAME_SET_FORCE_KEYFRAME_HEADERS"
+                    c:identifier="GST_VIDEO_CODEC_FRAME_SET_FORCE_KEYFRAME_HEADERS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/gstvideoutils.h"
+                       line="197"/>
+      <parameters>
+        <parameter name="frame">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_CODEC_FRAME_SET_SYNC_POINT"
+                    c:identifier="GST_VIDEO_CODEC_FRAME_SET_SYNC_POINT"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/gstvideoutils.h"
+           line="162">Sets the frame to be a synchronization point (like a keyframe).
+
+Encoder implementations should set this accordingly.
+
+Decoder implementing parsing features should set this when they
+detect such a synchronization point.</doc>
+      <source-position filename="gst-libs/gst/video/gstvideoutils.h"
+                       line="171"/>
+      <parameters>
+        <parameter name="frame">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideoutils.h"
+               line="164">a #GstVideoCodecFrame</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_CODEC_FRAME_UNSET_FORCE_KEYFRAME"
+                    c:identifier="GST_VIDEO_CODEC_FRAME_UNSET_FORCE_KEYFRAME"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/gstvideoutils.h"
+                       line="184"/>
+      <parameters>
+        <parameter name="frame">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_CODEC_FRAME_UNSET_FORCE_KEYFRAME_HEADERS"
+                    c:identifier="GST_VIDEO_CODEC_FRAME_UNSET_FORCE_KEYFRAME_HEADERS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/gstvideoutils.h"
+                       line="198"/>
+      <parameters>
+        <parameter name="frame">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_CODEC_FRAME_UNSET_SYNC_POINT"
+                    c:identifier="GST_VIDEO_CODEC_FRAME_UNSET_SYNC_POINT"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/gstvideoutils.h"
+                       line="172"/>
+      <parameters>
+        <parameter name="frame">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <constant name="VIDEO_COLORIMETRY_BT2020"
+              value="bt2020"
+              c:type="GST_VIDEO_COLORIMETRY_BT2020">
+      <source-position filename="gst-libs/gst/video/video-color.h" line="220"/>
+      <type name="utf8" c:type="gchar*"/>
+    </constant>
+    <constant name="VIDEO_COLORIMETRY_BT2020_10"
+              value="bt2020-10"
+              c:type="GST_VIDEO_COLORIMETRY_BT2020_10">
+      <source-position filename="gst-libs/gst/video/video-color.h" line="221"/>
+      <type name="utf8" c:type="gchar*"/>
+    </constant>
+    <constant name="VIDEO_COLORIMETRY_BT2100_HLG"
+              value="bt2100-hlg"
+              c:type="GST_VIDEO_COLORIMETRY_BT2100_HLG">
+      <source-position filename="gst-libs/gst/video/video-color.h" line="223"/>
+      <type name="utf8" c:type="gchar*"/>
+    </constant>
+    <constant name="VIDEO_COLORIMETRY_BT2100_PQ"
+              value="bt2100-pq"
+              c:type="GST_VIDEO_COLORIMETRY_BT2100_PQ">
+      <source-position filename="gst-libs/gst/video/video-color.h" line="222"/>
+      <type name="utf8" c:type="gchar*"/>
+    </constant>
+    <constant name="VIDEO_COLORIMETRY_BT601"
+              value="bt601"
+              c:type="GST_VIDEO_COLORIMETRY_BT601">
+      <source-position filename="gst-libs/gst/video/video-color.h" line="216"/>
+      <type name="utf8" c:type="gchar*"/>
+    </constant>
+    <constant name="VIDEO_COLORIMETRY_BT709"
+              value="bt709"
+              c:type="GST_VIDEO_COLORIMETRY_BT709">
+      <source-position filename="gst-libs/gst/video/video-color.h" line="217"/>
+      <type name="utf8" c:type="gchar*"/>
+    </constant>
+    <constant name="VIDEO_COLORIMETRY_SMPTE240M"
+              value="smpte240m"
+              c:type="GST_VIDEO_COLORIMETRY_SMPTE240M">
+      <source-position filename="gst-libs/gst/video/video-color.h" line="218"/>
+      <type name="utf8" c:type="gchar*"/>
+    </constant>
+    <constant name="VIDEO_COLORIMETRY_SRGB"
+              value="sRGB"
+              c:type="GST_VIDEO_COLORIMETRY_SRGB">
+      <source-position filename="gst-libs/gst/video/video-color.h" line="219"/>
+      <type name="utf8" c:type="gchar*"/>
+    </constant>
+    <constant name="VIDEO_COMP_A" value="3" c:type="GST_VIDEO_COMP_A">
+      <source-position filename="gst-libs/gst/video/video-format.h"
+                       line="290"/>
+      <type name="gint" c:type="gint"/>
+    </constant>
+    <constant name="VIDEO_COMP_B" value="2" c:type="GST_VIDEO_COMP_B">
+      <source-position filename="gst-libs/gst/video/video-format.h"
+                       line="287"/>
+      <type name="gint" c:type="gint"/>
+    </constant>
+    <constant name="VIDEO_COMP_G" value="1" c:type="GST_VIDEO_COMP_G">
+      <source-position filename="gst-libs/gst/video/video-format.h"
+                       line="286"/>
+      <type name="gint" c:type="gint"/>
+    </constant>
+    <constant name="VIDEO_COMP_INDEX" value="0" c:type="GST_VIDEO_COMP_INDEX">
+      <source-position filename="gst-libs/gst/video/video-format.h"
+                       line="293"/>
+      <type name="gint" c:type="gint"/>
+    </constant>
+    <constant name="VIDEO_COMP_PALETTE"
+              value="1"
+              c:type="GST_VIDEO_COMP_PALETTE">
+      <source-position filename="gst-libs/gst/video/video-format.h"
+                       line="294"/>
+      <type name="gint" c:type="gint"/>
+    </constant>
+    <constant name="VIDEO_COMP_R" value="0" c:type="GST_VIDEO_COMP_R">
+      <source-position filename="gst-libs/gst/video/video-format.h"
+                       line="285"/>
+      <type name="gint" c:type="gint"/>
+    </constant>
+    <constant name="VIDEO_COMP_U" value="1" c:type="GST_VIDEO_COMP_U">
+      <source-position filename="gst-libs/gst/video/video-format.h"
+                       line="281"/>
+      <type name="gint" c:type="gint"/>
+    </constant>
+    <constant name="VIDEO_COMP_V" value="2" c:type="GST_VIDEO_COMP_V">
+      <source-position filename="gst-libs/gst/video/video-format.h"
+                       line="282"/>
+      <type name="gint" c:type="gint"/>
+    </constant>
+    <constant name="VIDEO_COMP_Y" value="0" c:type="GST_VIDEO_COMP_Y">
+      <source-position filename="gst-libs/gst/video/video-format.h"
+                       line="280"/>
+      <type name="gint" c:type="gint"/>
+    </constant>
+    <constant name="VIDEO_CONVERTER_OPT_ALPHA_MODE"
+              value="GstVideoConverter.alpha-mode"
+              c:type="GST_VIDEO_CONVERTER_OPT_ALPHA_MODE">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-converter.h"
+           line="156">#GstVideoAlphaMode, the alpha mode to use.
+Default is #GST_VIDEO_ALPHA_MODE_COPY.</doc>
+      <source-position filename="gst-libs/gst/video/video-converter.h"
+                       line="162"/>
+      <type name="utf8" c:type="gchar*"/>
+    </constant>
+    <constant name="VIDEO_CONVERTER_OPT_ALPHA_VALUE"
+              value="GstVideoConverter.alpha-value"
+              c:type="GST_VIDEO_CONVERTER_OPT_ALPHA_VALUE">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-converter.h"
+           line="128">#G_TYPE_DOUBLE, the alpha color value to use.
+Default to 1.0</doc>
+      <source-position filename="gst-libs/gst/video/video-converter.h"
+                       line="134"/>
+      <type name="utf8" c:type="gchar*"/>
+    </constant>
+    <constant name="VIDEO_CONVERTER_OPT_BORDER_ARGB"
+              value="GstVideoConverter.border-argb"
+              c:type="GST_VIDEO_CONVERTER_OPT_BORDER_ARGB">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-converter.h"
+           line="163">#G_TYPE_UINT, the border color to use if #GST_VIDEO_CONVERTER_OPT_FILL_BORDER
+is set to %TRUE. The color is in ARGB format.
+Default 0xff000000</doc>
+      <source-position filename="gst-libs/gst/video/video-converter.h"
+                       line="170"/>
+      <type name="utf8" c:type="gchar*"/>
+    </constant>
+    <constant name="VIDEO_CONVERTER_OPT_CHROMA_MODE"
+              value="GstVideoConverter.chroma-mode"
+              c:type="GST_VIDEO_CONVERTER_OPT_CHROMA_MODE">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-converter.h"
+           line="190">#GstVideoChromaMode, set the chroma resample mode subsampled
+formats. Default is #GST_VIDEO_CHROMA_MODE_FULL.</doc>
+      <source-position filename="gst-libs/gst/video/video-converter.h"
+                       line="196"/>
+      <type name="utf8" c:type="gchar*"/>
+    </constant>
+    <constant name="VIDEO_CONVERTER_OPT_CHROMA_RESAMPLER_METHOD"
+              value="GstVideoConverter.chroma-resampler-method"
+              c:type="GST_VIDEO_CONVERTER_OPT_CHROMA_RESAMPLER_METHOD">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-converter.h"
+           line="35">#GstVideoChromaMethod, The resampler method to use for
+chroma resampling. Other options for the resampler can be used, see
+the #GstVideoResampler. Default is #GST_VIDEO_RESAMPLER_METHOD_LINEAR</doc>
+      <source-position filename="gst-libs/gst/video/video-converter.h"
+                       line="42"/>
+      <type name="utf8" c:type="gchar*"/>
+    </constant>
+    <constant name="VIDEO_CONVERTER_OPT_DEST_HEIGHT"
+              value="GstVideoConverter.dest-height"
+              c:type="GST_VIDEO_CONVERTER_OPT_DEST_HEIGHT">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-converter.h"
+           line="112">#G_TYPE_INT, height in the destination frame, default destination height</doc>
+      <source-position filename="gst-libs/gst/video/video-converter.h"
+                       line="117"/>
+      <type name="utf8" c:type="gchar*"/>
+    </constant>
+    <constant name="VIDEO_CONVERTER_OPT_DEST_WIDTH"
               value="GstVideoConverter.dest-width"
               c:type="GST_VIDEO_CONVERTER_OPT_DEST_WIDTH">
-      <doc xml:space="preserve">#G_TYPE_INT, width in the destination frame, default destination width</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-converter.h"
+           line="106">#G_TYPE_INT, width in the destination frame, default destination width</doc>
+      <source-position filename="gst-libs/gst/video/video-converter.h"
+                       line="111"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="VIDEO_CONVERTER_OPT_DEST_X"
               value="GstVideoConverter.dest-x"
               c:type="GST_VIDEO_CONVERTER_OPT_DEST_X">
-      <doc xml:space="preserve">#G_TYPE_INT, x position in the destination frame, default 0</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-converter.h"
+           line="94">#G_TYPE_INT, x position in the destination frame, default 0</doc>
+      <source-position filename="gst-libs/gst/video/video-converter.h"
+                       line="99"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="VIDEO_CONVERTER_OPT_DEST_Y"
               value="GstVideoConverter.dest-y"
               c:type="GST_VIDEO_CONVERTER_OPT_DEST_Y">
-      <doc xml:space="preserve">#G_TYPE_INT, y position in the destination frame, default 0</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-converter.h"
+           line="100">#G_TYPE_INT, y position in the destination frame, default 0</doc>
+      <source-position filename="gst-libs/gst/video/video-converter.h"
+                       line="105"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="VIDEO_CONVERTER_OPT_DITHER_METHOD"
               value="GstVideoConverter.dither-method"
               c:type="GST_VIDEO_CONVERTER_OPT_DITHER_METHOD">
-      <doc xml:space="preserve">#GST_TYPE_VIDEO_DITHER_METHOD, The dither method to use when
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-converter.h"
+           line="51">#GstVideoDitherMethod, The dither method to use when
 changing bit depth.
 Default is #GST_VIDEO_DITHER_BAYER.</doc>
+      <source-position filename="gst-libs/gst/video/video-converter.h"
+                       line="58"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="VIDEO_CONVERTER_OPT_DITHER_QUANTIZATION"
               value="GstVideoConverter.dither-quantization"
               c:type="GST_VIDEO_CONVERTER_OPT_DITHER_QUANTIZATION">
-      <doc xml:space="preserve">#G_TYPE_UINT, The quantization amount to dither to. Components will be
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-converter.h"
+           line="60">#G_TYPE_UINT, The quantization amount to dither to. Components will be
 quantized to multiples of this value.
 Default is 1</doc>
+      <source-position filename="gst-libs/gst/video/video-converter.h"
+                       line="67"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="VIDEO_CONVERTER_OPT_FILL_BORDER"
               value="GstVideoConverter.fill-border"
               c:type="GST_VIDEO_CONVERTER_OPT_FILL_BORDER">
-      <doc xml:space="preserve">#G_TYPE_BOOLEAN, if the destination rectangle does not fill the complete
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-converter.h"
+           line="119">#G_TYPE_BOOLEAN, if the destination rectangle does not fill the complete
 destination image, render a border with
 #GST_VIDEO_CONVERTER_OPT_BORDER_ARGB. Otherwise the unusded pixels in the
 destination are untouched. Default %TRUE.</doc>
+      <source-position filename="gst-libs/gst/video/video-converter.h"
+                       line="127"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="VIDEO_CONVERTER_OPT_GAMMA_MODE"
               value="GstVideoConverter.gamma-mode"
               c:type="GST_VIDEO_CONVERTER_OPT_GAMMA_MODE">
-      <doc xml:space="preserve">#GST_TYPE_VIDEO_GAMMA_MODE, set the gamma mode.
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-converter.h"
+           line="237">#GstVideoGammaMode, set the gamma mode.
 Default is #GST_VIDEO_GAMMA_MODE_NONE.</doc>
+      <source-position filename="gst-libs/gst/video/video-converter.h"
+                       line="243"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="VIDEO_CONVERTER_OPT_MATRIX_MODE"
               value="GstVideoConverter.matrix-mode"
               c:type="GST_VIDEO_CONVERTER_OPT_MATRIX_MODE">
-      <doc xml:space="preserve">#GST_TYPE_VIDEO_MATRIX_MODE, set the color matrix conversion mode for
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-converter.h"
+           line="217">#GstVideoMatrixMode, set the color matrix conversion mode for
 converting between Y'PbPr and non-linear RGB (R'G'B').
 Default is #GST_VIDEO_MATRIX_MODE_FULL.</doc>
+      <source-position filename="gst-libs/gst/video/video-converter.h"
+                       line="224"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="VIDEO_CONVERTER_OPT_PRIMARIES_MODE"
               value="GstVideoConverter.primaries-mode"
               c:type="GST_VIDEO_CONVERTER_OPT_PRIMARIES_MODE">
-      <doc xml:space="preserve">#GST_TYPE_VIDEO_PRIMARIES_MODE, set the primaries conversion mode.
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-converter.h"
+           line="260">#GstVideoPrimariesMode, set the primaries conversion mode.
 Default is #GST_VIDEO_PRIMARIES_MODE_NONE.</doc>
+      <source-position filename="gst-libs/gst/video/video-converter.h"
+                       line="266"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="VIDEO_CONVERTER_OPT_RESAMPLER_METHOD"
               value="GstVideoConverter.resampler-method"
               c:type="GST_VIDEO_CONVERTER_OPT_RESAMPLER_METHOD">
-      <doc xml:space="preserve">#GST_TYPE_VIDEO_RESAMPLER_METHOD, The resampler method to use for
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-converter.h"
+           line="27">#GstVideoResamplerMethod, The resampler method to use for
 resampling. Other options for the resampler can be used, see
 the #GstVideoResampler. Default is #GST_VIDEO_RESAMPLER_METHOD_CUBIC</doc>
+      <source-position filename="gst-libs/gst/video/video-converter.h"
+                       line="34"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="VIDEO_CONVERTER_OPT_RESAMPLER_TAPS"
               value="GstVideoConverter.resampler-taps"
               c:type="GST_VIDEO_CONVERTER_OPT_RESAMPLER_TAPS">
-      <doc xml:space="preserve">#G_TYPE_UINT, The number of taps for the resampler.
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-converter.h"
+           line="43">#G_TYPE_UINT, The number of taps for the resampler.
 Default is 0: let the resampler choose a good value.</doc>
+      <source-position filename="gst-libs/gst/video/video-converter.h"
+                       line="49"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="VIDEO_CONVERTER_OPT_SRC_HEIGHT"
               value="GstVideoConverter.src-height"
               c:type="GST_VIDEO_CONVERTER_OPT_SRC_HEIGHT">
-      <doc xml:space="preserve">#G_TYPE_INT, source height to convert, default source height</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-converter.h"
+           line="87">#G_TYPE_INT, source height to convert, default source height</doc>
+      <source-position filename="gst-libs/gst/video/video-converter.h"
+                       line="92"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="VIDEO_CONVERTER_OPT_SRC_WIDTH"
               value="GstVideoConverter.src-width"
               c:type="GST_VIDEO_CONVERTER_OPT_SRC_WIDTH">
-      <doc xml:space="preserve">#G_TYPE_INT, source width to convert, default source width</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-converter.h"
+           line="81">#G_TYPE_INT, source width to convert, default source width</doc>
+      <source-position filename="gst-libs/gst/video/video-converter.h"
+                       line="86"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="VIDEO_CONVERTER_OPT_SRC_X"
               value="GstVideoConverter.src-x"
               c:type="GST_VIDEO_CONVERTER_OPT_SRC_X">
-      <doc xml:space="preserve">#G_TYPE_INT, source x position to start conversion, default 0</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-converter.h"
+           line="69">#G_TYPE_INT, source x position to start conversion, default 0</doc>
+      <source-position filename="gst-libs/gst/video/video-converter.h"
+                       line="74"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="VIDEO_CONVERTER_OPT_SRC_Y"
               value="GstVideoConverter.src-y"
               c:type="GST_VIDEO_CONVERTER_OPT_SRC_Y">
-      <doc xml:space="preserve">#G_TYPE_INT, source y position to start conversion, default 0</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-converter.h"
+           line="75">#G_TYPE_INT, source y position to start conversion, default 0</doc>
+      <source-position filename="gst-libs/gst/video/video-converter.h"
+                       line="80"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="VIDEO_CONVERTER_OPT_THREADS"
               value="GstVideoConverter.threads"
               c:type="GST_VIDEO_CONVERTER_OPT_THREADS">
-      <doc xml:space="preserve">#G_TYPE_UINT, maximum number of threads to use. Default 1, 0 for the number
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-converter.h"
+           line="268">#G_TYPE_UINT, maximum number of threads to use. Default 1, 0 for the number
 of cores.</doc>
+      <source-position filename="gst-libs/gst/video/video-converter.h"
+                       line="274"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
+    <function-macro name="VIDEO_DECODER"
+                    c:identifier="GST_VIDEO_DECODER"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                       line="34"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_DECODER_CAST"
+                    c:identifier="GST_VIDEO_DECODER_CAST"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                       line="44"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_DECODER_CLASS"
+                    c:identifier="GST_VIDEO_DECODER_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                       line="36"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_DECODER_ERROR"
+                    c:identifier="GST_VIDEO_DECODER_ERROR"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/gstvideodecoder.h"
+           line="128">Utility function that video decoder elements can use in case they encountered
+a data processing error that may be fatal for the current "data unit" but
+need not prevent subsequent decoding.  Such errors are counted and if there
+are too many, as configured in the context's max_errors, the pipeline will
+post an error message and the application will be requested to stop further
+media processing.  Otherwise, it is considered a "glitch" and only a warning
+is logged. In either case, @ret is set to the proper value to
+return to upstream/caller (indicating either GST_FLOW_ERROR or GST_FLOW_OK).</doc>
+      <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                       line="148"/>
+      <parameters>
+        <parameter name="el">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideodecoder.h"
+               line="130">the base video decoder element that generates the error</doc>
+        </parameter>
+        <parameter name="w">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideodecoder.h"
+               line="131">element defined weight of the error, added to error count</doc>
+        </parameter>
+        <parameter name="domain">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideodecoder.h"
+               line="132">like CORE, LIBRARY, RESOURCE or STREAM (see #gstreamer-GstGError)</doc>
+        </parameter>
+        <parameter name="code">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideodecoder.h"
+               line="133">error code defined for that domain (see #gstreamer-GstGError)</doc>
+        </parameter>
+        <parameter name="text">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideodecoder.h"
+               line="134">the message to display (format string and args enclosed in
+         parentheses)</doc>
+        </parameter>
+        <parameter name="debug">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideodecoder.h"
+               line="136">debugging information for the message (format string and args
+         enclosed in parentheses)</doc>
+        </parameter>
+        <parameter name="ret">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideodecoder.h"
+               line="138">variable to receive return value</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_DECODER_GET_CLASS"
+                    c:identifier="GST_VIDEO_DECODER_GET_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                       line="38"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_DECODER_INPUT_SEGMENT"
+                    c:identifier="GST_VIDEO_DECODER_INPUT_SEGMENT"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/gstvideodecoder.h"
+           line="82">Gives the segment of the element.</doc>
+      <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                       line="87"/>
+      <parameters>
+        <parameter name="obj">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideodecoder.h"
+               line="84">base decoder instance</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
     <constant name="VIDEO_DECODER_MAX_ERRORS"
               value="10"
               c:type="GST_VIDEO_DECODER_MAX_ERRORS">
-      <doc xml:space="preserve">Default maximum number of errors tolerated before signaling error.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/gstvideodecoder.h"
+           line="159">Default maximum number of errors tolerated before signaling error.</doc>
+      <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                       line="163"/>
       <type name="gint" c:type="gint"/>
     </constant>
+    <function-macro name="VIDEO_DECODER_OUTPUT_SEGMENT"
+                    c:identifier="GST_VIDEO_DECODER_OUTPUT_SEGMENT"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/gstvideodecoder.h"
+           line="90">Gives the segment of the element.</doc>
+      <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                       line="95"/>
+      <parameters>
+        <parameter name="obj">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideodecoder.h"
+               line="92">base decoder instance</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
     <constant name="VIDEO_DECODER_SINK_NAME"
               value="sink"
               c:type="GST_VIDEO_DECODER_SINK_NAME">
-      <doc xml:space="preserve">The name of the templates for the sink pad.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/gstvideodecoder.h"
+           line="47">The name of the templates for the sink pad.</doc>
+      <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                       line="51"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
+    <function-macro name="VIDEO_DECODER_SINK_PAD"
+                    c:identifier="GST_VIDEO_DECODER_SINK_PAD"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/gstvideodecoder.h"
+           line="68">Gives the pointer to the sink #GstPad object of the element.</doc>
+      <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                       line="73"/>
+      <parameters>
+        <parameter name="obj">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideodecoder.h"
+               line="70">a #GstVideoDecoder</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
     <constant name="VIDEO_DECODER_SRC_NAME"
               value="src"
               c:type="GST_VIDEO_DECODER_SRC_NAME">
-      <doc xml:space="preserve">The name of the templates for the source pad.</doc>
-      <type name="utf8" c:type="gchar*"/>
-    </constant>
-    <constant name="VIDEO_ENCODER_SINK_NAME"
-              value="sink"
-              c:type="GST_VIDEO_ENCODER_SINK_NAME">
-      <doc xml:space="preserve">The name of the templates for the sink pad.</doc>
-      <type name="utf8" c:type="gchar*"/>
-    </constant>
-    <constant name="VIDEO_ENCODER_SRC_NAME"
-              value="src"
-              c:type="GST_VIDEO_ENCODER_SRC_NAME">
-      <doc xml:space="preserve">The name of the templates for the source pad.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/gstvideodecoder.h"
+           line="53">The name of the templates for the source pad.</doc>
+      <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                       line="57"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
-    <constant name="VIDEO_FORMATS_ALL"
-              value="{ I420, YV12, YUY2, UYVY, AYUV, VUYA, RGBx, BGRx, xRGB, xBGR, RGBA, BGRA, ARGB, ABGR, RGB, BGR, Y41B, Y42B, YVYU, Y444, v210, v216, Y210, Y410, NV12, NV21, GRAY8, GRAY16_BE, GRAY16_LE, v308, RGB16, BGR16, RGB15, BGR15, UYVP, A420, RGB8P, YUV9, YVU9, IYU1, ARGB64, AYUV64, r210, I420_10BE, I420_10LE, I422_10BE, I422_10LE, Y444_10BE, Y444_10LE, GBR, GBR_10BE, GBR_10LE, NV16, NV24, NV12_64Z32, A420_10BE, A420_10LE, A422_10BE, A422_10LE, A444_10BE, A444_10LE, NV61, P010_10BE, P010_10LE, IYU2, VYUY, GBRA, GBRA_10BE, GBRA_10LE, BGR10A2_LE, GBR_12BE, GBR_12LE, GBRA_12BE, GBRA_12LE, I420_12BE, I420_12LE, I422_12BE, I422_12LE, Y444_12BE, Y444_12LE, GRAY10_LE32, NV12_10LE32, NV16_10LE32, NV12_10LE40 }"
-              c:type="GST_VIDEO_FORMATS_ALL">
-      <type name="utf8" c:type="gchar*"/>
-    </constant>
-    <constant name="VIDEO_FPS_RANGE"
-              value="(fraction) [ 0, max ]"
-              c:type="GST_VIDEO_FPS_RANGE">
-      <type name="utf8" c:type="gchar*"/>
-    </constant>
-    <constant name="VIDEO_MAX_COMPONENTS"
-              value="4"
-              c:type="GST_VIDEO_MAX_COMPONENTS">
-      <type name="gint" c:type="gint"/>
-    </constant>
-    <constant name="VIDEO_MAX_PLANES" value="4" c:type="GST_VIDEO_MAX_PLANES">
-      <type name="gint" c:type="gint"/>
+    <function-macro name="VIDEO_DECODER_SRC_PAD"
+                    c:identifier="GST_VIDEO_DECODER_SRC_PAD"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/gstvideodecoder.h"
+           line="60">Gives the pointer to the source #GstPad object of the element.</doc>
+      <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                       line="65"/>
+      <parameters>
+        <parameter name="obj">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideodecoder.h"
+               line="62">a #GstVideoDecoder</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_DECODER_STREAM_LOCK"
+                    c:identifier="GST_VIDEO_DECODER_STREAM_LOCK"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/gstvideodecoder.h"
+           line="98">Obtain a lock to protect the decoder function from concurrent access.</doc>
+      <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                       line="103"/>
+      <parameters>
+        <parameter name="decoder">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideodecoder.h"
+               line="100">video decoder instance</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_DECODER_STREAM_UNLOCK"
+                    c:identifier="GST_VIDEO_DECODER_STREAM_UNLOCK"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/gstvideodecoder.h"
+           line="106">Release the lock that protects the decoder function from concurrent access.</doc>
+      <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                       line="111"/>
+      <parameters>
+        <parameter name="decoder">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideodecoder.h"
+               line="108">video decoder instance</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_DEPRECATED_FOR"
+                    c:identifier="GST_VIDEO_DEPRECATED_FOR"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-prelude.h"
+                       line="35"/>
+      <parameters>
+        <parameter name="f">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_DIRECTION"
+                    c:identifier="GST_VIDEO_DIRECTION"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/videodirection.h"
+                       line="30"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_DIRECTION_GET_INTERFACE"
+                    c:identifier="GST_VIDEO_DIRECTION_GET_INTERFACE"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/videodirection.h"
+                       line="34"/>
+      <parameters>
+        <parameter name="inst">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_ENCODER"
+                    c:identifier="GST_VIDEO_ENCODER"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/gstvideoencoder.h"
+                       line="33"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_ENCODER_CAST"
+                    c:identifier="GST_VIDEO_ENCODER_CAST"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/gstvideoencoder.h"
+                       line="43"/>
+      <parameters>
+        <parameter name="enc">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_ENCODER_CLASS"
+                    c:identifier="GST_VIDEO_ENCODER_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/gstvideoencoder.h"
+                       line="35"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_ENCODER_GET_CLASS"
+                    c:identifier="GST_VIDEO_ENCODER_GET_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/gstvideoencoder.h"
+                       line="37"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_ENCODER_INPUT_SEGMENT"
+                    c:identifier="GST_VIDEO_ENCODER_INPUT_SEGMENT"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/gstvideoencoder.h"
+           line="94">Gives the segment of the element.</doc>
+      <source-position filename="gst-libs/gst/video/gstvideoencoder.h"
+                       line="99"/>
+      <parameters>
+        <parameter name="obj">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideoencoder.h"
+               line="96">base parse instance</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_ENCODER_OUTPUT_SEGMENT"
+                    c:identifier="GST_VIDEO_ENCODER_OUTPUT_SEGMENT"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/gstvideoencoder.h"
+           line="102">Gives the segment of the element.</doc>
+      <source-position filename="gst-libs/gst/video/gstvideoencoder.h"
+                       line="107"/>
+      <parameters>
+        <parameter name="obj">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideoencoder.h"
+               line="104">base parse instance</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <constant name="VIDEO_ENCODER_SINK_NAME"
+              value="sink"
+              c:type="GST_VIDEO_ENCODER_SINK_NAME">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/gstvideoencoder.h"
+           line="46">The name of the templates for the sink pad.</doc>
+      <source-position filename="gst-libs/gst/video/gstvideoencoder.h"
+                       line="50"/>
+      <type name="utf8" c:type="gchar*"/>
     </constant>
-    <constant name="VIDEO_OVERLAY_COMPOSITION_BLEND_FORMATS"
-              value="{ BGRx, RGBx, xRGB, xBGR, RGBA, BGRA, ARGB, ABGR, RGB, BGR, I420, YV12, AYUV, YUY2, UYVY, v308, Y41B, Y42B, Y444, NV12, NV21, A420, YUV9, YVU9, IYU1, GRAY8 }"
-              c:type="GST_VIDEO_OVERLAY_COMPOSITION_BLEND_FORMATS"
-              version="1.2">
-      <doc xml:space="preserve">Video formats supported by gst_video_overlay_composition_blend(), for
-use in overlay elements' pad template caps.</doc>
+    <function-macro name="VIDEO_ENCODER_SINK_PAD"
+                    c:identifier="GST_VIDEO_ENCODER_SINK_PAD"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/gstvideoencoder.h"
+           line="67">Gives the pointer to the sink #GstPad object of the element.</doc>
+      <source-position filename="gst-libs/gst/video/gstvideoencoder.h"
+                       line="72"/>
+      <parameters>
+        <parameter name="obj">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideoencoder.h"
+               line="69">a #GstVideoEncoder</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <constant name="VIDEO_ENCODER_SRC_NAME"
+              value="src"
+              c:type="GST_VIDEO_ENCODER_SRC_NAME">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/gstvideoencoder.h"
+           line="52">The name of the templates for the source pad.</doc>
+      <source-position filename="gst-libs/gst/video/gstvideoencoder.h"
+                       line="56"/>
+      <type name="utf8" c:type="gchar*"/>
+    </constant>
+    <function-macro name="VIDEO_ENCODER_SRC_PAD"
+                    c:identifier="GST_VIDEO_ENCODER_SRC_PAD"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/gstvideoencoder.h"
+           line="59">Gives the pointer to the source #GstPad object of the element.</doc>
+      <source-position filename="gst-libs/gst/video/gstvideoencoder.h"
+                       line="64"/>
+      <parameters>
+        <parameter name="obj">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideoencoder.h"
+               line="61">a #GstVideoEncoder</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_ENCODER_STREAM_LOCK"
+                    c:identifier="GST_VIDEO_ENCODER_STREAM_LOCK"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/gstvideoencoder.h"
+           line="110">Obtain a lock to protect the encoder function from concurrent access.</doc>
+      <source-position filename="gst-libs/gst/video/gstvideoencoder.h"
+                       line="115"/>
+      <parameters>
+        <parameter name="encoder">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideoencoder.h"
+               line="112">video encoder instance</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_ENCODER_STREAM_UNLOCK"
+                    c:identifier="GST_VIDEO_ENCODER_STREAM_UNLOCK"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/gstvideoencoder.h"
+           line="118">Release the lock that protects the encoder function from concurrent access.</doc>
+      <source-position filename="gst-libs/gst/video/gstvideoencoder.h"
+                       line="123"/>
+      <parameters>
+        <parameter name="encoder">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideoencoder.h"
+               line="120">video encoder instance</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_FILTER"
+                    c:identifier="GST_VIDEO_FILTER"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/gstvideofilter.h"
+                       line="33"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_FILTER_CAST"
+                    c:identifier="GST_VIDEO_FILTER_CAST"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/gstvideofilter.h"
+                       line="43"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_FILTER_CLASS"
+                    c:identifier="GST_VIDEO_FILTER_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/gstvideofilter.h"
+                       line="35"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_FILTER_GET_CLASS"
+                    c:identifier="GST_VIDEO_FILTER_GET_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/gstvideofilter.h"
+                       line="37"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <constant name="VIDEO_FORMATS_ALL"
+              value="{ AYUV64, ARGB64, GBRA_12BE, GBRA_12LE, Y412_BE, Y412_LE, A444_10BE, GBRA_10BE, A444_10LE, GBRA_10LE, A422_10BE, A422_10LE, A420_10BE, A420_10LE, Y410, RGB10A2_LE, BGR10A2_LE, GBRA, ABGR, VUYA, BGRA, AYUV, ARGB, RGBA, A420, Y444_16BE, Y444_16LE, v216, P016_BE, P016_LE, Y444_12BE, GBR_12BE, Y444_12LE, GBR_12LE, I422_12BE, I422_12LE, Y212_BE, Y212_LE, I420_12BE, I420_12LE, P012_BE, P012_LE, Y444_10BE, GBR_10BE, Y444_10LE, GBR_10LE, r210, I422_10BE, I422_10LE, NV16_10LE32, Y210, v210, UYVP, I420_10BE, I420_10LE, P010_10BE, P010_10LE, NV12_10LE32, NV12_10LE40, Y444, GBR, NV24, xBGR, BGRx, xRGB, RGBx, BGR, IYU2, v308, RGB, Y42B, NV61, NV16, VYUY, UYVY, YVYU, YUY2, I420, YV12, NV21, NV12, NV12_64Z32, Y41B, IYU1, YVU9, YUV9, RGB16, BGR16, RGB15, BGR15, RGB8P, GRAY16_BE, GRAY16_LE, GRAY10_LE32, GRAY8 }"
+              c:type="GST_VIDEO_FORMATS_ALL">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-format.h"
+           line="581">List of all video formats, for use in template caps strings.
+
+Formats are sorted by decreasing "quality", using these criteria by priority:
+  - number of components
+  - depth
+  - subsampling factor of the width
+  - subsampling factor of the height
+  - number of planes
+  - native endianness preferred
+  - pixel stride
+  - poffset
+  - prefer non-complex formats
+  - prefer YUV formats over RGB ones
+  - prefer I420 over YV12
+  - format name</doc>
+      <source-position filename="gst-libs/gst/video/video-format.h"
+                       line="601"/>
+      <type name="utf8" c:type="gchar*"/>
+    </constant>
+    <function-macro name="VIDEO_FORMAT_INFO_BITS"
+                    c:identifier="GST_VIDEO_FORMAT_INFO_BITS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-format.h"
+                       line="469"/>
+      <parameters>
+        <parameter name="info">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_FORMAT_INFO_DATA"
+                    c:identifier="GST_VIDEO_FORMAT_INFO_DATA"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-format.h"
+                       line="520"/>
+      <parameters>
+        <parameter name="info">
+        </parameter>
+        <parameter name="planes">
+        </parameter>
+        <parameter name="comp">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_FORMAT_INFO_DEPTH"
+                    c:identifier="GST_VIDEO_FORMAT_INFO_DEPTH"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-format.h"
+                       line="472"/>
+      <parameters>
+        <parameter name="info">
+        </parameter>
+        <parameter name="c">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_FORMAT_INFO_FLAGS"
+                    c:identifier="GST_VIDEO_FORMAT_INFO_FLAGS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-format.h"
+                       line="458"/>
+      <parameters>
+        <parameter name="info">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_FORMAT_INFO_FORMAT"
+                    c:identifier="GST_VIDEO_FORMAT_INFO_FORMAT"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-format.h"
+                       line="456"/>
+      <parameters>
+        <parameter name="info">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_FORMAT_INFO_HAS_ALPHA"
+                    c:identifier="GST_VIDEO_FORMAT_INFO_HAS_ALPHA"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-format.h"
+                       line="463"/>
+      <parameters>
+        <parameter name="info">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_FORMAT_INFO_HAS_PALETTE"
+                    c:identifier="GST_VIDEO_FORMAT_INFO_HAS_PALETTE"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-format.h"
+                       line="465"/>
+      <parameters>
+        <parameter name="info">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_FORMAT_INFO_H_SUB"
+                    c:identifier="GST_VIDEO_FORMAT_INFO_H_SUB"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-format.h"
+                       line="512"/>
+      <parameters>
+        <parameter name="info">
+        </parameter>
+        <parameter name="c">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_FORMAT_INFO_IS_COMPLEX"
+                    c:identifier="GST_VIDEO_FORMAT_INFO_IS_COMPLEX"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-format.h"
+                       line="466"/>
+      <parameters>
+        <parameter name="info">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_FORMAT_INFO_IS_GRAY"
+                    c:identifier="GST_VIDEO_FORMAT_INFO_IS_GRAY"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-format.h"
+                       line="462"/>
+      <parameters>
+        <parameter name="info">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_FORMAT_INFO_IS_LE"
+                    c:identifier="GST_VIDEO_FORMAT_INFO_IS_LE"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-format.h"
+                       line="464"/>
+      <parameters>
+        <parameter name="info">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_FORMAT_INFO_IS_RGB"
+                    c:identifier="GST_VIDEO_FORMAT_INFO_IS_RGB"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-format.h"
+                       line="461"/>
+      <parameters>
+        <parameter name="info">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_FORMAT_INFO_IS_TILED"
+                    c:identifier="GST_VIDEO_FORMAT_INFO_IS_TILED"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-format.h"
+                       line="467"/>
+      <parameters>
+        <parameter name="info">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_FORMAT_INFO_IS_YUV"
+                    c:identifier="GST_VIDEO_FORMAT_INFO_IS_YUV"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-format.h"
+                       line="460"/>
+      <parameters>
+        <parameter name="info">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_FORMAT_INFO_NAME"
+                    c:identifier="GST_VIDEO_FORMAT_INFO_NAME"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-format.h"
+                       line="457"/>
+      <parameters>
+        <parameter name="info">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_FORMAT_INFO_N_COMPONENTS"
+                    c:identifier="GST_VIDEO_FORMAT_INFO_N_COMPONENTS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-format.h"
+                       line="470"/>
+      <parameters>
+        <parameter name="info">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_FORMAT_INFO_N_PLANES"
+                    c:identifier="GST_VIDEO_FORMAT_INFO_N_PLANES"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-format.h"
+           line="488">Number of planes. This is the number of planes the pixel layout is
+organized in in memory. The number of planes can be less than the
+number of components (e.g. Y,U,V,A or R, G, B, A) when multiple
+components are packed into one plane.
+
+Examples: RGB/RGBx/RGBA: 1 plane, 3/3/4 components;
+I420: 3 planes, 3 components; NV21/NV12: 2 planes, 3 components.</doc>
+      <source-position filename="gst-libs/gst/video/video-format.h"
+                       line="500"/>
+      <parameters>
+        <parameter name="info">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-format.h"
+               line="490">a #GstVideoFormatInfo</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_FORMAT_INFO_OFFSET"
+                    c:identifier="GST_VIDEO_FORMAT_INFO_OFFSET"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-format.h"
+                       line="534"/>
+      <parameters>
+        <parameter name="info">
+        </parameter>
+        <parameter name="offsets">
+        </parameter>
+        <parameter name="comp">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_FORMAT_INFO_PLANE"
+                    c:identifier="GST_VIDEO_FORMAT_INFO_PLANE"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-format.h"
+           line="501">Plane number where the given component can be found. A plane may
+contain data for multiple components.</doc>
+      <source-position filename="gst-libs/gst/video/video-format.h"
+                       line="509"/>
+      <parameters>
+        <parameter name="info">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-format.h"
+               line="503">a #GstVideoFormatInfo</doc>
+        </parameter>
+        <parameter name="c">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-format.h"
+               line="504">the component index</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_FORMAT_INFO_POFFSET"
+                    c:identifier="GST_VIDEO_FORMAT_INFO_POFFSET"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-format.h"
+                       line="510"/>
+      <parameters>
+        <parameter name="info">
+        </parameter>
+        <parameter name="c">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_FORMAT_INFO_PSTRIDE"
+                    c:identifier="GST_VIDEO_FORMAT_INFO_PSTRIDE"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-format.h"
+           line="473">pixel stride for the given component. This is the amount of bytes to the
+pixel immediately to the right, so basically bytes from one pixel to the
+next. When bits &lt; 8, the stride is expressed in bits.
+
+Examples: for 24-bit RGB, the pixel stride would be 3 bytes, while it
+would be 4 bytes for RGBx or ARGB, and 8 bytes for ARGB64 or AYUV64.
+For planar formats such as I420 the pixel stride is usually 1. For
+YUY2 it would be 2 bytes.</doc>
+      <source-position filename="gst-libs/gst/video/video-format.h"
+                       line="487"/>
+      <parameters>
+        <parameter name="info">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-format.h"
+               line="475">a #GstVideoFormatInfo</doc>
+        </parameter>
+        <parameter name="c">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-format.h"
+               line="476">the component index</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_FORMAT_INFO_SCALE_HEIGHT"
+                    c:identifier="GST_VIDEO_FORMAT_INFO_SCALE_HEIGHT"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-format.h"
+                       line="518"/>
+      <parameters>
+        <parameter name="info">
+        </parameter>
+        <parameter name="c">
+        </parameter>
+        <parameter name="h">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_FORMAT_INFO_SCALE_WIDTH"
+                    c:identifier="GST_VIDEO_FORMAT_INFO_SCALE_WIDTH"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-format.h"
+                       line="517"/>
+      <parameters>
+        <parameter name="info">
+        </parameter>
+        <parameter name="c">
+        </parameter>
+        <parameter name="w">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_FORMAT_INFO_SHIFT"
+                    c:identifier="GST_VIDEO_FORMAT_INFO_SHIFT"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-format.h"
+                       line="471"/>
+      <parameters>
+        <parameter name="info">
+        </parameter>
+        <parameter name="c">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_FORMAT_INFO_STRIDE"
+                    c:identifier="GST_VIDEO_FORMAT_INFO_STRIDE"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-format.h"
+           line="522">Row stride in bytes, that is number of bytes from the first pixel component
+of a row to the first pixel component in the next row. This might include
+some row padding (memory not actually used for anything, to make sure the
+beginning of the next row is aligned in a particular way).</doc>
+      <source-position filename="gst-libs/gst/video/video-format.h"
+                       line="533"/>
+      <parameters>
+        <parameter name="info">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-format.h"
+               line="524">a #GstVideoFormatInfo</doc>
+        </parameter>
+        <parameter name="strides">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-format.h"
+               line="525">an array of strides</doc>
+        </parameter>
+        <parameter name="comp">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-format.h"
+               line="526">the component index</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_FORMAT_INFO_TILE_HS"
+                    c:identifier="GST_VIDEO_FORMAT_INFO_TILE_HS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-format.h"
+                       line="539"/>
+      <parameters>
+        <parameter name="info">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_FORMAT_INFO_TILE_MODE"
+                    c:identifier="GST_VIDEO_FORMAT_INFO_TILE_MODE"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-format.h"
+                       line="537"/>
+      <parameters>
+        <parameter name="info">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_FORMAT_INFO_TILE_WS"
+                    c:identifier="GST_VIDEO_FORMAT_INFO_TILE_WS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-format.h"
+                       line="538"/>
+      <parameters>
+        <parameter name="info">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_FORMAT_INFO_W_SUB"
+                    c:identifier="GST_VIDEO_FORMAT_INFO_W_SUB"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-format.h"
+                       line="511"/>
+      <parameters>
+        <parameter name="info">
+        </parameter>
+        <parameter name="c">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <constant name="VIDEO_FPS_RANGE"
+              value="(fraction) [ 0, max ]"
+              c:type="GST_VIDEO_FPS_RANGE">
+      <source-position filename="gst-libs/gst/video/video-format.h"
+                       line="571"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
+    <function-macro name="VIDEO_FRAME_COMP_DATA"
+                    c:identifier="GST_VIDEO_FRAME_COMP_DATA"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-frame.h" line="144"/>
+      <parameters>
+        <parameter name="f">
+        </parameter>
+        <parameter name="c">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_FRAME_COMP_DEPTH"
+                    c:identifier="GST_VIDEO_FRAME_COMP_DEPTH"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-frame.h" line="143"/>
+      <parameters>
+        <parameter name="f">
+        </parameter>
+        <parameter name="c">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_FRAME_COMP_HEIGHT"
+                    c:identifier="GST_VIDEO_FRAME_COMP_HEIGHT"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-frame.h" line="148"/>
+      <parameters>
+        <parameter name="f">
+        </parameter>
+        <parameter name="c">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_FRAME_COMP_OFFSET"
+                    c:identifier="GST_VIDEO_FRAME_COMP_OFFSET"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-frame.h" line="146"/>
+      <parameters>
+        <parameter name="f">
+        </parameter>
+        <parameter name="c">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_FRAME_COMP_PLANE"
+                    c:identifier="GST_VIDEO_FRAME_COMP_PLANE"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-frame.h" line="149"/>
+      <parameters>
+        <parameter name="f">
+        </parameter>
+        <parameter name="c">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_FRAME_COMP_POFFSET"
+                    c:identifier="GST_VIDEO_FRAME_COMP_POFFSET"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-frame.h" line="151"/>
+      <parameters>
+        <parameter name="f">
+        </parameter>
+        <parameter name="c">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_FRAME_COMP_PSTRIDE"
+                    c:identifier="GST_VIDEO_FRAME_COMP_PSTRIDE"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-frame.h" line="150"/>
+      <parameters>
+        <parameter name="f">
+        </parameter>
+        <parameter name="c">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_FRAME_COMP_STRIDE"
+                    c:identifier="GST_VIDEO_FRAME_COMP_STRIDE"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-frame.h" line="145"/>
+      <parameters>
+        <parameter name="f">
+        </parameter>
+        <parameter name="c">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_FRAME_COMP_WIDTH"
+                    c:identifier="GST_VIDEO_FRAME_COMP_WIDTH"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-frame.h" line="147"/>
+      <parameters>
+        <parameter name="f">
+        </parameter>
+        <parameter name="c">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_FRAME_FLAGS"
+                    c:identifier="GST_VIDEO_FRAME_FLAGS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-frame.h" line="121"/>
+      <parameters>
+        <parameter name="f">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_FRAME_FLAG_IS_SET"
+                    c:identifier="GST_VIDEO_FRAME_FLAG_IS_SET"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-frame.h" line="122"/>
+      <parameters>
+        <parameter name="f">
+        </parameter>
+        <parameter name="fl">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_FRAME_FORMAT"
+                    c:identifier="GST_VIDEO_FRAME_FORMAT"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-frame.h" line="115"/>
+      <parameters>
+        <parameter name="f">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_FRAME_HEIGHT"
+                    c:identifier="GST_VIDEO_FRAME_HEIGHT"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-frame.h" line="117"/>
+      <parameters>
+        <parameter name="f">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_FRAME_IS_BOTTOM_FIELD"
+                    c:identifier="GST_VIDEO_FRAME_IS_BOTTOM_FIELD"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-frame.h" line="133"/>
+      <parameters>
+        <parameter name="f">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_FRAME_IS_INTERLACED"
+                    c:identifier="GST_VIDEO_FRAME_IS_INTERLACED"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-frame.h" line="123"/>
+      <parameters>
+        <parameter name="f">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_FRAME_IS_ONEFIELD"
+                    c:identifier="GST_VIDEO_FRAME_IS_ONEFIELD"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-frame.h" line="126"/>
+      <parameters>
+        <parameter name="f">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_FRAME_IS_RFF"
+                    c:identifier="GST_VIDEO_FRAME_IS_RFF"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-frame.h" line="125"/>
+      <parameters>
+        <parameter name="f">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_FRAME_IS_TFF"
+                    c:identifier="GST_VIDEO_FRAME_IS_TFF"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-frame.h" line="124"/>
+      <parameters>
+        <parameter name="f">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_FRAME_IS_TOP_FIELD"
+                    c:identifier="GST_VIDEO_FRAME_IS_TOP_FIELD"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-frame.h" line="127"/>
+      <parameters>
+        <parameter name="f">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_FRAME_N_COMPONENTS"
+                    c:identifier="GST_VIDEO_FRAME_N_COMPONENTS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-frame.h" line="142"/>
+      <parameters>
+        <parameter name="f">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_FRAME_N_PLANES"
+                    c:identifier="GST_VIDEO_FRAME_N_PLANES"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-frame.h" line="136"/>
+      <parameters>
+        <parameter name="f">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_FRAME_PLANE_DATA"
+                    c:identifier="GST_VIDEO_FRAME_PLANE_DATA"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-frame.h" line="137"/>
+      <parameters>
+        <parameter name="f">
+        </parameter>
+        <parameter name="p">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_FRAME_PLANE_OFFSET"
+                    c:identifier="GST_VIDEO_FRAME_PLANE_OFFSET"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-frame.h" line="138"/>
+      <parameters>
+        <parameter name="f">
+        </parameter>
+        <parameter name="p">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_FRAME_PLANE_STRIDE"
+                    c:identifier="GST_VIDEO_FRAME_PLANE_STRIDE"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-frame.h" line="139"/>
+      <parameters>
+        <parameter name="f">
+        </parameter>
+        <parameter name="p">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_FRAME_SIZE"
+                    c:identifier="GST_VIDEO_FRAME_SIZE"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-frame.h" line="118"/>
+      <parameters>
+        <parameter name="f">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_FRAME_WIDTH"
+                    c:identifier="GST_VIDEO_FRAME_WIDTH"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-frame.h" line="116"/>
+      <parameters>
+        <parameter name="f">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_INFO_CHROMA_SITE"
+                    c:identifier="GST_VIDEO_INFO_CHROMA_SITE"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-info.h" line="385"/>
+      <parameters>
+        <parameter name="i">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_INFO_COLORIMETRY"
+                    c:identifier="GST_VIDEO_INFO_COLORIMETRY"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-info.h" line="384"/>
+      <parameters>
+        <parameter name="i">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_INFO_COMP_DATA"
+                    c:identifier="GST_VIDEO_INFO_COMP_DATA"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-info.h" line="418"/>
+      <parameters>
+        <parameter name="i">
+        </parameter>
+        <parameter name="d">
+        </parameter>
+        <parameter name="c">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_INFO_COMP_DEPTH"
+                    c:identifier="GST_VIDEO_INFO_COMP_DEPTH"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-info.h" line="417"/>
+      <parameters>
+        <parameter name="i">
+        </parameter>
+        <parameter name="c">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_INFO_COMP_HEIGHT"
+                    c:identifier="GST_VIDEO_INFO_COMP_HEIGHT"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-info.h" line="422"/>
+      <parameters>
+        <parameter name="i">
+        </parameter>
+        <parameter name="c">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_INFO_COMP_OFFSET"
+                    c:identifier="GST_VIDEO_INFO_COMP_OFFSET"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-info.h" line="419"/>
+      <parameters>
+        <parameter name="i">
+        </parameter>
+        <parameter name="c">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_INFO_COMP_PLANE"
+                    c:identifier="GST_VIDEO_INFO_COMP_PLANE"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-info.h" line="423"/>
+      <parameters>
+        <parameter name="i">
+        </parameter>
+        <parameter name="c">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_INFO_COMP_POFFSET"
+                    c:identifier="GST_VIDEO_INFO_COMP_POFFSET"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-info.h" line="425"/>
+      <parameters>
+        <parameter name="i">
+        </parameter>
+        <parameter name="c">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_INFO_COMP_PSTRIDE"
+                    c:identifier="GST_VIDEO_INFO_COMP_PSTRIDE"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-info.h" line="424"/>
+      <parameters>
+        <parameter name="i">
+        </parameter>
+        <parameter name="c">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_INFO_COMP_STRIDE"
+                    c:identifier="GST_VIDEO_INFO_COMP_STRIDE"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-info.h" line="420"/>
+      <parameters>
+        <parameter name="i">
+        </parameter>
+        <parameter name="c">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_INFO_COMP_WIDTH"
+                    c:identifier="GST_VIDEO_INFO_COMP_WIDTH"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-info.h" line="421"/>
+      <parameters>
+        <parameter name="i">
+        </parameter>
+        <parameter name="c">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_INFO_FIELD_HEIGHT"
+                    c:identifier="GST_VIDEO_INFO_FIELD_HEIGHT"
+                    version="1.16."
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-info.h"
+           line="365">The height of a field. It's the height of the full frame unless split-field
+(alternate) interlacing is in use.</doc>
+      <source-position filename="gst-libs/gst/video/video-info.h" line="373"/>
+      <parameters>
+        <parameter name="i">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_INFO_FIELD_ORDER"
+                    c:identifier="GST_VIDEO_INFO_FIELD_ORDER"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-info.h" line="361"/>
+      <parameters>
+        <parameter name="i">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_INFO_FIELD_RATE_N"
+                    c:identifier="GST_VIDEO_INFO_FIELD_RATE_N"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-info.h" line="379"/>
+      <parameters>
+        <parameter name="i">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_INFO_FLAGS"
+                    c:identifier="GST_VIDEO_INFO_FLAGS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-info.h" line="362"/>
+      <parameters>
+        <parameter name="i">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_INFO_FLAG_IS_SET"
+                    c:identifier="GST_VIDEO_INFO_FLAG_IS_SET"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-info.h" line="391"/>
+      <parameters>
+        <parameter name="i">
+        </parameter>
+        <parameter name="flag">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_INFO_FLAG_SET"
+                    c:identifier="GST_VIDEO_INFO_FLAG_SET"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-info.h" line="392"/>
+      <parameters>
+        <parameter name="i">
+        </parameter>
+        <parameter name="flag">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_INFO_FLAG_UNSET"
+                    c:identifier="GST_VIDEO_INFO_FLAG_UNSET"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-info.h" line="393"/>
+      <parameters>
+        <parameter name="i">
+        </parameter>
+        <parameter name="flag">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_INFO_FORMAT"
+                    c:identifier="GST_VIDEO_INFO_FORMAT"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-info.h" line="352"/>
+      <parameters>
+        <parameter name="i">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_INFO_FPS_D"
+                    c:identifier="GST_VIDEO_INFO_FPS_D"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-info.h" line="382"/>
+      <parameters>
+        <parameter name="i">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_INFO_FPS_N"
+                    c:identifier="GST_VIDEO_INFO_FPS_N"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-info.h" line="378"/>
+      <parameters>
+        <parameter name="i">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_INFO_HAS_ALPHA"
+                    c:identifier="GST_VIDEO_INFO_HAS_ALPHA"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-info.h" line="357"/>
+      <parameters>
+        <parameter name="i">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_INFO_HEIGHT"
+                    c:identifier="GST_VIDEO_INFO_HEIGHT"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-info.h" line="364"/>
+      <parameters>
+        <parameter name="i">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_INFO_INTERLACE_MODE"
+                    c:identifier="GST_VIDEO_INFO_INTERLACE_MODE"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-info.h" line="359"/>
+      <parameters>
+        <parameter name="i">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_INFO_IS_GRAY"
+                    c:identifier="GST_VIDEO_INFO_IS_GRAY"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-info.h" line="356"/>
+      <parameters>
+        <parameter name="i">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_INFO_IS_INTERLACED"
+                    c:identifier="GST_VIDEO_INFO_IS_INTERLACED"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-info.h" line="360"/>
+      <parameters>
+        <parameter name="i">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_INFO_IS_RGB"
+                    c:identifier="GST_VIDEO_INFO_IS_RGB"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-info.h" line="355"/>
+      <parameters>
+        <parameter name="i">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_INFO_IS_YUV"
+                    c:identifier="GST_VIDEO_INFO_IS_YUV"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-info.h" line="354"/>
+      <parameters>
+        <parameter name="i">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_INFO_MULTIVIEW_FLAGS"
+                    c:identifier="GST_VIDEO_INFO_MULTIVIEW_FLAGS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-info.h" line="388"/>
+      <parameters>
+        <parameter name="i">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_INFO_MULTIVIEW_MODE"
+                    c:identifier="GST_VIDEO_INFO_MULTIVIEW_MODE"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-info.h" line="387"/>
+      <parameters>
+        <parameter name="i">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_INFO_NAME"
+                    c:identifier="GST_VIDEO_INFO_NAME"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-info.h" line="353"/>
+      <parameters>
+        <parameter name="i">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_INFO_N_COMPONENTS"
+                    c:identifier="GST_VIDEO_INFO_N_COMPONENTS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-info.h" line="416"/>
+      <parameters>
+        <parameter name="i">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_INFO_N_PLANES"
+                    c:identifier="GST_VIDEO_INFO_N_PLANES"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-info.h" line="396"/>
+      <parameters>
+        <parameter name="i">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_INFO_PAR_D"
+                    c:identifier="GST_VIDEO_INFO_PAR_D"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-info.h" line="377"/>
+      <parameters>
+        <parameter name="i">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_INFO_PAR_N"
+                    c:identifier="GST_VIDEO_INFO_PAR_N"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-info.h" line="376"/>
+      <parameters>
+        <parameter name="i">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_INFO_PLANE_HEIGHT"
+                    c:identifier="GST_VIDEO_INFO_PLANE_HEIGHT"
+                    version="1.18"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-info.h"
+           line="399">The padded height in pixels of a plane (padded size divided by the plane stride).
+In case of GST_VIDEO_INTERLACE_MODE_ALTERNATE info, this macro returns the
+plane heights used to hold a single field, not the full frame.
+
+The size passed as third argument is the size of the pixel data and should
+not contain any extra metadata padding.
+
+It is not valid to use this macro with a TILED format.</doc>
+      <source-position filename="gst-libs/gst/video/video-info.h" line="413"/>
+      <parameters>
+        <parameter name="i">
+        </parameter>
+        <parameter name="p">
+        </parameter>
+        <parameter name="sizes">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_INFO_PLANE_OFFSET"
+                    c:identifier="GST_VIDEO_INFO_PLANE_OFFSET"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-info.h" line="397"/>
+      <parameters>
+        <parameter name="i">
+        </parameter>
+        <parameter name="p">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_INFO_PLANE_STRIDE"
+                    c:identifier="GST_VIDEO_INFO_PLANE_STRIDE"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-info.h" line="398"/>
+      <parameters>
+        <parameter name="i">
+        </parameter>
+        <parameter name="p">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_INFO_SIZE"
+                    c:identifier="GST_VIDEO_INFO_SIZE"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-info.h" line="374"/>
+      <parameters>
+        <parameter name="i">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_INFO_VIEWS"
+                    c:identifier="GST_VIDEO_INFO_VIEWS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-info.h" line="375"/>
+      <parameters>
+        <parameter name="i">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_INFO_WIDTH"
+                    c:identifier="GST_VIDEO_INFO_WIDTH"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-info.h" line="363"/>
+      <parameters>
+        <parameter name="i">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <constant name="VIDEO_MAX_COMPONENTS"
+              value="4"
+              c:type="GST_VIDEO_MAX_COMPONENTS">
+      <source-position filename="gst-libs/gst/video/video-format.h"
+                       line="239"/>
+      <type name="gint" c:type="gint"/>
+    </constant>
+    <constant name="VIDEO_MAX_PLANES" value="4" c:type="GST_VIDEO_MAX_PLANES">
+      <source-position filename="gst-libs/gst/video/video-format.h"
+                       line="238"/>
+      <type name="gint" c:type="gint"/>
+    </constant>
+    <function-macro name="VIDEO_META_TRANSFORM_IS_SCALE"
+                    c:identifier="GST_VIDEO_META_TRANSFORM_IS_SCALE"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/gstvideometa.h"
+                       line="175"/>
+      <parameters>
+        <parameter name="type">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_NE"
+                    c:identifier="GST_VIDEO_NE"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-format.h"
+                       line="574"/>
+      <parameters>
+        <parameter name="s">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_OE"
+                    c:identifier="GST_VIDEO_OE"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-format.h"
+                       line="575"/>
+      <parameters>
+        <parameter name="s">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_ORIENTATION"
+                    c:identifier="GST_VIDEO_ORIENTATION"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/videoorientation.h"
+                       line="31"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_ORIENTATION_GET_INTERFACE"
+                    c:identifier="GST_VIDEO_ORIENTATION_GET_INTERFACE"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/videoorientation.h"
+                       line="35"/>
+      <parameters>
+        <parameter name="inst">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_OVERLAY"
+                    c:identifier="GST_VIDEO_OVERLAY"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/videooverlay.h" line="31"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_OVERLAY_COMPOSITION"
+                    c:identifier="GST_VIDEO_OVERLAY_COMPOSITION"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-overlay-composition.h"
+                       line="195"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_OVERLAY_COMPOSITION_CAST"
+                    c:identifier="GST_VIDEO_OVERLAY_COMPOSITION_CAST"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-overlay-composition.h"
+                       line="193"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_OVERLAY_GET_INTERFACE"
+                    c:identifier="GST_VIDEO_OVERLAY_GET_INTERFACE"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/videooverlay.h" line="35"/>
+      <parameters>
+        <parameter name="inst">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_OVERLAY_RECTANGLE"
+                    c:identifier="GST_VIDEO_OVERLAY_RECTANGLE"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-overlay-composition.h"
+                       line="39"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_OVERLAY_RECTANGLE_CAST"
+                    c:identifier="GST_VIDEO_OVERLAY_RECTANGLE_CAST"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-overlay-composition.h"
+                       line="37"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
     <constant name="VIDEO_RESAMPLER_OPT_CUBIC_B"
               value="GstVideoResampler.cubic-b"
               c:type="GST_VIDEO_RESAMPLER_OPT_CUBIC_B">
-      <doc xml:space="preserve">G_TYPE_DOUBLE, B parameter of the cubic filter. The B
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-resampler.h"
+           line="52">G_TYPE_DOUBLE, B parameter of the cubic filter. The B
 parameter controls the bluriness. Values between 0.0 and
 2.0 are accepted. 1/3 is the default.
 
@@ -1759,83 +4904,535 @@ Robidoux
  Sharp            0.2620  0.3690
 Robidoux
  Soft             0.6796  0.1602</doc>
+      <source-position filename="gst-libs/gst/video/video-resampler.h"
+                       line="71"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="VIDEO_RESAMPLER_OPT_CUBIC_C"
               value="GstVideoResampler.cubic-c"
               c:type="GST_VIDEO_RESAMPLER_OPT_CUBIC_C">
-      <doc xml:space="preserve">G_TYPE_DOUBLE, C parameter of the cubic filter. The C
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-resampler.h"
+           line="72">G_TYPE_DOUBLE, C parameter of the cubic filter. The C
 parameter controls the Keys alpha value. Values between 0.0 and
 2.0 are accepted. 1/3 is the default.
 
 See #GST_VIDEO_RESAMPLER_OPT_CUBIC_B for some more common values</doc>
+      <source-position filename="gst-libs/gst/video/video-resampler.h"
+                       line="81"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="VIDEO_RESAMPLER_OPT_ENVELOPE"
               value="GstVideoResampler.envelope"
               c:type="GST_VIDEO_RESAMPLER_OPT_ENVELOPE">
-      <doc xml:space="preserve">G_TYPE_DOUBLE, specifies the size of filter envelope for
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-resampler.h"
+           line="83">G_TYPE_DOUBLE, specifies the size of filter envelope for
 @GST_VIDEO_RESAMPLER_METHOD_LANCZOS. values are clamped between
 1.0 and 5.0. 2.0 is the default.</doc>
+      <source-position filename="gst-libs/gst/video/video-resampler.h"
+                       line="90"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="VIDEO_RESAMPLER_OPT_MAX_TAPS"
               value="GstVideoResampler.max-taps"
               c:type="GST_VIDEO_RESAMPLER_OPT_MAX_TAPS">
-      <doc xml:space="preserve">G_TYPE_INT, limits the maximum number of taps to use.
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-resampler.h"
+           line="109">G_TYPE_INT, limits the maximum number of taps to use.
 16 is the default.</doc>
+      <source-position filename="gst-libs/gst/video/video-resampler.h"
+                       line="115"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="VIDEO_RESAMPLER_OPT_SHARPEN"
               value="GstVideoResampler.sharpen"
               c:type="GST_VIDEO_RESAMPLER_OPT_SHARPEN">
-      <doc xml:space="preserve">G_TYPE_DOUBLE, specifies sharpening of the filter for
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-resampler.h"
+           line="101">G_TYPE_DOUBLE, specifies sharpening of the filter for
 @GST_VIDEO_RESAMPLER_METHOD_LANCZOS. values are clamped between
 0.0 and 1.0. 0.0 is the default.</doc>
+      <source-position filename="gst-libs/gst/video/video-resampler.h"
+                       line="108"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="VIDEO_RESAMPLER_OPT_SHARPNESS"
               value="GstVideoResampler.sharpness"
               c:type="GST_VIDEO_RESAMPLER_OPT_SHARPNESS">
-      <doc xml:space="preserve">G_TYPE_DOUBLE, specifies sharpness of the filter for
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-resampler.h"
+           line="92">G_TYPE_DOUBLE, specifies sharpness of the filter for
 @GST_VIDEO_RESAMPLER_METHOD_LANCZOS. values are clamped between
 0.5 and 1.5. 1.0 is the default.</doc>
+      <source-position filename="gst-libs/gst/video/video-resampler.h"
+                       line="99"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
     <constant name="VIDEO_SCALER_OPT_DITHER_METHOD"
               value="GstVideoScaler.dither-method"
               c:type="GST_VIDEO_SCALER_OPT_DITHER_METHOD">
-      <doc xml:space="preserve">#GST_TYPE_VIDEO_DITHER_METHOD, The dither method to use for propagating
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-scaler.h"
+           line="31">#GstVideoDitherMethod, The dither method to use for propagating
 quatization errors.</doc>
+      <source-position filename="gst-libs/gst/video/video-scaler.h" line="37"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
+    <function-macro name="VIDEO_SINK"
+                    c:identifier="GST_VIDEO_SINK"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/gstvideosink.h" line="33"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_SINK_CAST"
+                    c:identifier="GST_VIDEO_SINK_CAST"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/gstvideosink.h"
+           line="44">Cast @obj to a #GstVideoSink without runtime type check.</doc>
+      <source-position filename="gst-libs/gst/video/gstvideosink.h" line="50"/>
+      <parameters>
+        <parameter name="obj">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideosink.h"
+               line="46">a #GstVideoSink or derived object</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_SINK_CLASS"
+                    c:identifier="GST_VIDEO_SINK_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/gstvideosink.h" line="35"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_SINK_GET_CLASS"
+                    c:identifier="GST_VIDEO_SINK_GET_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/gstvideosink.h" line="41"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_SINK_HEIGHT"
+                    c:identifier="GST_VIDEO_SINK_HEIGHT"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/gstvideosink.h" line="61"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_SINK_PAD"
+                    c:identifier="GST_VIDEO_SINK_PAD"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/gstvideosink.h"
+           line="52">Get the sink #GstPad of @obj.</doc>
+      <source-position filename="gst-libs/gst/video/gstvideosink.h" line="58"/>
+      <parameters>
+        <parameter name="obj">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideosink.h"
+               line="54">a #GstVideoSink</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_SINK_WIDTH"
+                    c:identifier="GST_VIDEO_SINK_WIDTH"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/gstvideosink.h" line="60"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
     <constant name="VIDEO_SIZE_RANGE"
               value="(int) [ 1, max ]"
               c:type="GST_VIDEO_SIZE_RANGE">
+      <source-position filename="gst-libs/gst/video/video-format.h"
+                       line="570"/>
       <type name="utf8" c:type="gchar*"/>
     </constant>
+    <function-macro name="VIDEO_SUB_SCALE"
+                    c:identifier="GST_VIDEO_SUB_SCALE"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-format.h"
+                       line="515"/>
+      <parameters>
+        <parameter name="scale">
+        </parameter>
+        <parameter name="val">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_TILE_MAKE_MODE"
+                    c:identifier="GST_VIDEO_TILE_MAKE_MODE"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-tile.h"
+           line="48">use this macro to create new tile modes.</doc>
+      <source-position filename="gst-libs/gst/video/video-tile.h" line="55"/>
+      <parameters>
+        <parameter name="num">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-tile.h"
+               line="50">the mode number to create</doc>
+        </parameter>
+        <parameter name="type">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-tile.h"
+               line="51">the tile mode type</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_TILE_MAKE_STRIDE"
+                    c:identifier="GST_VIDEO_TILE_MAKE_STRIDE"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-tile.h"
+           line="82">Encode the number of tile in X and Y into the stride.</doc>
+      <source-position filename="gst-libs/gst/video/video-tile.h" line="89"/>
+      <parameters>
+        <parameter name="x_tiles">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-tile.h"
+               line="84">number of tiles in X</doc>
+        </parameter>
+        <parameter name="y_tiles">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-tile.h"
+               line="85">number of tiles in Y</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_TILE_MODE_IS_INDEXED"
+                    c:identifier="GST_VIDEO_TILE_MODE_IS_INDEXED"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-tile.h"
+           line="66">Check if @mode is an indexed tile type</doc>
+      <source-position filename="gst-libs/gst/video/video-tile.h" line="72"/>
+      <parameters>
+        <parameter name="mode">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-tile.h"
+               line="68">a tile mode</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="VIDEO_TILE_MODE_TYPE"
+                    c:identifier="GST_VIDEO_TILE_MODE_TYPE"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-tile.h"
+           line="58">Get the tile mode type of @mode</doc>
+      <source-position filename="gst-libs/gst/video/video-tile.h" line="64"/>
+      <parameters>
+        <parameter name="mode">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-tile.h"
+               line="60">the tile mode</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
     <constant name="VIDEO_TILE_TYPE_MASK"
               value="65535"
               c:type="GST_VIDEO_TILE_TYPE_MASK">
+      <source-position filename="gst-libs/gst/video/video-tile.h" line="46"/>
       <type name="gint" c:type="gint"/>
     </constant>
     <constant name="VIDEO_TILE_TYPE_SHIFT"
               value="16"
               c:type="GST_VIDEO_TILE_TYPE_SHIFT">
+      <source-position filename="gst-libs/gst/video/video-tile.h" line="41"/>
       <type name="gint" c:type="gint"/>
     </constant>
+    <function-macro name="VIDEO_TILE_X_TILES"
+                    c:identifier="GST_VIDEO_TILE_X_TILES"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-tile.h"
+           line="92">Extract the number of tiles in X from the stride value.</doc>
+      <source-position filename="gst-libs/gst/video/video-tile.h" line="98"/>
+      <parameters>
+        <parameter name="stride">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-tile.h"
+               line="94">plane stride</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
     <constant name="VIDEO_TILE_X_TILES_MASK"
               value="65535"
               c:type="GST_VIDEO_TILE_X_TILES_MASK">
+      <source-position filename="gst-libs/gst/video/video-tile.h" line="80"/>
       <type name="gint" c:type="gint"/>
     </constant>
+    <function-macro name="VIDEO_TILE_Y_TILES"
+                    c:identifier="GST_VIDEO_TILE_Y_TILES"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-tile.h"
+           line="100">Extract the number of tiles in Y from the stride value.</doc>
+      <source-position filename="gst-libs/gst/video/video-tile.h" line="106"/>
+      <parameters>
+        <parameter name="stride">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-tile.h"
+               line="102">plane stride</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
     <constant name="VIDEO_TILE_Y_TILES_SHIFT"
               value="16"
               c:type="GST_VIDEO_TILE_Y_TILES_SHIFT">
+      <source-position filename="gst-libs/gst/video/video-tile.h" line="75"/>
       <type name="gint" c:type="gint"/>
     </constant>
+    <record name="VideoAFDMeta" c:type="GstVideoAFDMeta" version="1.18">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-anc.h"
+           line="210">Active Format Description (AFD)
+
+For details, see Table 6.14 Active Format in:
+
+ATSC Digital Television Standard:
+Part 4 â€“ MPEG-2 Video System Characteristics
+
+https://www.atsc.org/wp-content/uploads/2015/03/a_53-Part-4-2009.pdf
+
+and Active Format Description in Complete list of AFD codes
+
+https://en.wikipedia.org/wiki/Active_Format_Description#Complete_list_of_AFD_codes
+
+and SMPTE ST2016-1</doc>
+      <source-position filename="gst-libs/gst/video/video-anc.h" line="240"/>
+      <field name="meta" writable="1">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-anc.h"
+             line="212">parent #GstMeta</doc>
+        <type name="Gst.Meta" c:type="GstMeta"/>
+      </field>
+      <field name="field" writable="1">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-anc.h"
+             line="213">0 for progressive or field 1 and 1 for field 2</doc>
+        <type name="guint8" c:type="guint8"/>
+      </field>
+      <field name="spec" writable="1">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-anc.h"
+             line="214">#GstVideoAFDSpec that applies to @afd</doc>
+        <type name="VideoAFDSpec" c:type="GstVideoAFDSpec"/>
+      </field>
+      <field name="afd" writable="1">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-anc.h"
+             line="215">#GstVideoAFDValue AFD value</doc>
+        <type name="VideoAFDValue" c:type="GstVideoAFDValue"/>
+      </field>
+      <function name="get_info" c:identifier="gst_video_afd_meta_get_info">
+        <source-position filename="gst-libs/gst/video/video-anc.h" line="245"/>
+        <return-value transfer-ownership="none">
+          <type name="Gst.MetaInfo" c:type="const GstMetaInfo*"/>
+        </return-value>
+      </function>
+    </record>
+    <enumeration name="VideoAFDSpec"
+                 version="1.18"
+                 glib:type-name="GstVideoAFDSpec"
+                 glib:get-type="gst_video_afd_spec_get_type"
+                 c:type="GstVideoAFDSpec">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-anc.h"
+           line="186">Enumeration of the different standards that may apply to AFD data:
+
+0) ETSI/DVB:
+https://www.etsi.org/deliver/etsi_ts/101100_101199/101154/02.01.01_60/ts_101154v020101p.pdf
+
+1) ATSC A/53:
+https://www.atsc.org/wp-content/uploads/2015/03/a_53-Part-4-2009.pdf
+
+2) SMPTE ST2016-1:</doc>
+      <member name="dvb_etsi"
+              value="0"
+              c:identifier="GST_VIDEO_AFD_SPEC_DVB_ETSI"
+              glib:nick="dvb-etsi">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-anc.h"
+             line="188">AFD value is from DVB/ETSI standard</doc>
+      </member>
+      <member name="atsc_a53"
+              value="1"
+              c:identifier="GST_VIDEO_AFD_SPEC_ATSC_A53"
+              glib:nick="atsc-a53">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-anc.h"
+             line="189">AFD value is from ATSC A/53 standard</doc>
+      </member>
+      <member name="smpte_st2016_1"
+              value="2"
+              c:identifier="GST_VIDEO_AFD_SPEC_SMPTE_ST2016_1"
+              glib:nick="smpte-st2016-1">
+      </member>
+    </enumeration>
+    <enumeration name="VideoAFDValue"
+                 version="1.18"
+                 glib:type-name="GstVideoAFDValue"
+                 glib:get-type="gst_video_afd_value_get_type"
+                 c:type="GstVideoAFDValue">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-anc.h"
+           line="106">Enumeration of the various values for Active Format Description (AFD)
+
+AFD should be included in video user data whenever the rectangular
+picture area containing useful information does not extend to the full height or width of the coded
+frame. AFD data may also be included in user data when the rectangular picture area containing
+useful information extends to the full height and width of the coded frame.
+
+For details, see Table 6.14 Active Format in:
+
+ATSC Digital Television Standard:
+Part 4 â€“ MPEG-2 Video System Characteristics
+
+https://www.atsc.org/wp-content/uploads/2015/03/a_53-Part-4-2009.pdf
+
+and Active Format Description in Complete list of AFD codes
+
+https://en.wikipedia.org/wiki/Active_Format_Description#Complete_list_of_AFD_codes
+
+and SMPTE ST2016-1
+
+Notes:
+
+1) AFD 0 is undefined for ATSC and SMPTE ST2016-1, indicating that AFD data is not available:
+If Bar Data is not present, AFD '0000' indicates that exact information
+is not available and the active image should be assumed to be the same as the coded frame. AFD '0000'.
+AFD '0000' accompanied by Bar Data signals that the active image’s aspect ratio is narrower than 16:9,
+but is not 4:3 or 14:9. As the exact aspect ratio cannot be conveyed by AFD alone, wherever possible,
+AFD â€˜0000’ should be accompanied by Bar Data to define the exact vertical or horizontal extent
+of the active image.
+2) AFD 0 is reserved for DVB/ETSI
+3) values 1, 5, 6, 7, and 12 are reserved for both ATSC and DVB/ETSI
+4) values 2 and 3 are not recommended for ATSC, but are valid for DVB/ETSI</doc>
+      <member name="unavailable"
+              value="0"
+              c:identifier="GST_VIDEO_AFD_UNAVAILABLE"
+              glib:nick="unavailable">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-anc.h"
+             line="108">Unavailable (see note 0 below).</doc>
+      </member>
+      <member name="16_9_top_aligned"
+              value="2"
+              c:identifier="GST_VIDEO_AFD_16_9_TOP_ALIGNED"
+              glib:nick="16-9-top-aligned">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-anc.h"
+             line="109">For 4:3 coded frame, letterbox 16:9 image,
+     at top of the coded frame. For 16:9 coded frame, full frame 16:9 image,
+     the same as the coded frame.</doc>
+      </member>
+      <member name="14_9_top_aligned"
+              value="3"
+              c:identifier="GST_VIDEO_AFD_14_9_TOP_ALIGNED"
+              glib:nick="14-9-top-aligned">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-anc.h"
+             line="112">For 4:3 coded frame, letterbox 14:9 image,
+     at top of the coded frame. For 16:9 coded frame, pillarbox 14:9 image,
+     horizontally centered in the coded frame.</doc>
+      </member>
+      <member name="greater_than_16_9"
+              value="4"
+              c:identifier="GST_VIDEO_AFD_GREATER_THAN_16_9"
+              glib:nick="greater-than-16-9">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-anc.h"
+             line="115">For 4:3 coded frame, letterbox image with an aspect ratio
+     greater than 16:9, vertically centered in the coded frame. For 16:9 coded frame,
+     letterbox image with an aspect ratio greater than 16:9.</doc>
+      </member>
+      <member name="4_3_full_16_9_full"
+              value="8"
+              c:identifier="GST_VIDEO_AFD_4_3_FULL_16_9_FULL"
+              glib:nick="4-3-full-16-9-full">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-anc.h"
+             line="118">For 4:3 coded frame, full frame 4:3 image,
+     the same as the coded frame. For 16:9 coded frame, full frame 16:9 image, the same as
+     the coded frame.</doc>
+      </member>
+      <member name="4_3_full_4_3_pillar"
+              value="9"
+              c:identifier="GST_VIDEO_AFD_4_3_FULL_4_3_PILLAR"
+              glib:nick="4-3-full-4-3-pillar">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-anc.h"
+             line="121">For 4:3 coded frame, full frame 4:3 image, the same as
+     the coded frame. For 16:9 coded frame, pillarbox 4:3 image, horizontally centered in the
+     coded frame.</doc>
+      </member>
+      <member name="16_9_letter_16_9_full"
+              value="10"
+              c:identifier="GST_VIDEO_AFD_16_9_LETTER_16_9_FULL"
+              glib:nick="16-9-letter-16-9-full">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-anc.h"
+             line="124">For 4:3 coded frame, letterbox 16:9 image, vertically centered in
+     the coded frame with all image areas protected. For 16:9 coded frame, full frame 16:9 image,
+     with all image areas protected.</doc>
+      </member>
+      <member name="14_9_letter_14_9_pillar"
+              value="11"
+              c:identifier="GST_VIDEO_AFD_14_9_LETTER_14_9_PILLAR"
+              glib:nick="14-9-letter-14-9-pillar">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-anc.h"
+             line="127">For 4:3 coded frame, letterbox 14:9 image, vertically centered in
+     the coded frame. For 16:9 coded frame, pillarbox 14:9 image, horizontally centered in the
+     coded frame.</doc>
+      </member>
+      <member name="4_3_full_14_9_center"
+              value="13"
+              c:identifier="GST_VIDEO_AFD_4_3_FULL_14_9_CENTER"
+              glib:nick="4-3-full-14-9-center">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-anc.h"
+             line="130">For 4:3 coded frame, full frame 4:3 image, with alternative 14:9
+     center. For 16:9 coded frame, pillarbox 4:3 image, with alternative 14:9 center.</doc>
+      </member>
+      <member name="16_9_letter_14_9_center"
+              value="14"
+              c:identifier="GST_VIDEO_AFD_16_9_LETTER_14_9_CENTER"
+              glib:nick="16-9-letter-14-9-center">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-anc.h"
+             line="132">For 4:3 coded frame, letterbox 16:9 image, with alternative 14:9
+     center. For 16:9 coded frame, full frame 16:9 image, with alternative 14:9 center.</doc>
+      </member>
+      <member name="16_9_letter_4_3_center"
+              value="15"
+              c:identifier="GST_VIDEO_AFD_16_9_LETTER_4_3_CENTER"
+              glib:nick="16-9-letter-4-3-center">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-anc.h"
+             line="134">For 4:3 coded frame, letterbox 16:9 image, with alternative 4:3
+     center. For 16:9 coded frame, full frame 16:9 image, with alternative 4:3 center.</doc>
+      </member>
+    </enumeration>
     <callback name="VideoAffineTransformationGetMatrix"
               c:type="GstVideoAffineTransformationGetMatrix">
+      <source-position filename="gst-libs/gst/video/gstvideoaffinetransformationmeta.h"
+                       line="34"/>
       <return-value transfer-ownership="none">
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
@@ -1852,7 +5449,9 @@ quatization errors.</doc>
     <record name="VideoAffineTransformationMeta"
             c:type="GstVideoAffineTransformationMeta"
             version="1.8">
-      <doc xml:space="preserve">Extra buffer metadata for performing an affine transformation using a 4x4
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/gstvideoaffinetransformationmeta.h"
+           line="39">Extra buffer metadata for performing an affine transformation using a 4x4
 matrix. The transformation matrix can be composed with
 gst_video_affine_transformation_meta_apply_matrix().
 
@@ -1862,38 +5461,56 @@ are assumed to have an origin at (0.5, 0.5, 0.5) in a left-handed coordinate
 system with the x-axis moving horizontally (positive values to the right),
 the y-axis moving vertically (positive values up the screen) and the z-axis
 perpendicular to the screen (positive values into the screen).</doc>
+      <source-position filename="gst-libs/gst/video/gstvideoaffinetransformationmeta.h"
+                       line="62"/>
       <field name="meta" writable="1">
-        <doc xml:space="preserve">parent #GstMeta</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideoaffinetransformationmeta.h"
+             line="41">parent #GstMeta</doc>
         <type name="Gst.Meta" c:type="GstMeta"/>
       </field>
       <field name="matrix" writable="1">
-        <doc xml:space="preserve">the column-major 4x4 transformation matrix</doc>
-        <array zero-terminated="0" c:type="gfloat" fixed-size="16">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideoaffinetransformationmeta.h"
+             line="42">the column-major 4x4 transformation matrix</doc>
+        <array zero-terminated="0" fixed-size="16">
           <type name="gfloat" c:type="gfloat"/>
         </array>
       </field>
       <method name="apply_matrix"
               c:identifier="gst_video_affine_transformation_meta_apply_matrix"
               version="1.8">
-        <doc xml:space="preserve">Apply a transformation using the given 4x4 transformation matrix.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideoaffinetransformationmeta.c"
+             line="138">Apply a transformation using the given 4x4 transformation matrix.
 Performs the multiplication, meta-&gt;matrix X matrix.</doc>
+        <source-position filename="gst-libs/gst/video/gstvideoaffinetransformationmeta.h"
+                         line="76"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="meta" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoAffineTransformationMeta</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideoaffinetransformationmeta.c"
+                 line="140">a #GstVideoAffineTransformationMeta</doc>
             <type name="VideoAffineTransformationMeta"
                   c:type="GstVideoAffineTransformationMeta*"/>
           </instance-parameter>
           <parameter name="matrix" transfer-ownership="none">
-            <doc xml:space="preserve">a 4x4 transformation matrix to be applied</doc>
-            <type name="gfloat" c:type="const gfloat*"/>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideoaffinetransformationmeta.c"
+                 line="141">a 4x4 transformation matrix to be applied</doc>
+            <array zero-terminated="0" c:type="const gfloat*" fixed-size="16">
+              <type name="gfloat" c:type="gfloat"/>
+            </array>
           </parameter>
         </parameters>
       </method>
       <function name="get_info"
                 c:identifier="gst_video_affine_transformation_meta_get_info">
+        <source-position filename="gst-libs/gst/video/gstvideoaffinetransformationmeta.h"
+                         line="68"/>
         <return-value transfer-ownership="none">
           <type name="Gst.MetaInfo" c:type="const GstMetaInfo*"/>
         </return-value>
@@ -1902,12 +5519,15 @@ Performs the multiplication, meta-&gt;matrix X matrix.</doc>
     <class name="VideoAggregator"
            c:symbol-prefix="video_aggregator"
            c:type="GstVideoAggregator"
+           version="1.16"
            parent="GstBase.Aggregator"
            abstract="1"
            glib:type-name="GstVideoAggregator"
            glib:get-type="gst_video_aggregator_get_type"
            glib:type-struct="VideoAggregatorClass">
-      <doc xml:space="preserve">VideoAggregator can accept AYUV, ARGB and BGRA video streams. For each of the requested
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/gstvideoaggregator.c"
+           line="21">VideoAggregator can accept AYUV, ARGB and BGRA video streams. For each of the requested
 sink pads it will compare the incoming geometry and framerate to define the
 output parameters. Indeed output video frames will have the geometry of the
 biggest incoming video stream and the framerate of the fastest incoming one.
@@ -1916,7 +5536,11 @@ VideoAggregator will do colorspace conversion.
 
 Zorder for each input stream can be configured on the
 #GstVideoAggregatorPad.</doc>
+      <source-position filename="gst-libs/gst/video/gstvideoaggregator.h"
+                       line="245"/>
       <virtual-method name="aggregate_frames">
+        <source-position filename="gst-libs/gst/video/gstvideoaggregator.h"
+                         line="234"/>
         <return-value transfer-ownership="none">
           <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
@@ -1930,6 +5554,8 @@ Zorder for each input stream can be configured on the
         </parameters>
       </virtual-method>
       <virtual-method name="create_output_buffer">
+        <source-position filename="gst-libs/gst/video/gstvideoaggregator.h"
+                         line="236"/>
         <return-value transfer-ownership="none">
           <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
@@ -1943,6 +5569,8 @@ Zorder for each input stream can be configured on the
         </parameters>
       </virtual-method>
       <virtual-method name="find_best_format">
+        <source-position filename="gst-libs/gst/video/gstvideoaggregator.h"
+                         line="238"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
@@ -1962,6 +5590,8 @@ Zorder for each input stream can be configured on the
         </parameters>
       </virtual-method>
       <virtual-method name="update_caps">
+        <source-position filename="gst-libs/gst/video/gstvideoaggregator.h"
+                         line="232"/>
         <return-value transfer-ownership="full">
           <type name="Gst.Caps" c:type="GstCaps*"/>
         </return-value>
@@ -1978,7 +5608,9 @@ Zorder for each input stream can be configured on the
         <type name="GstBase.Aggregator" c:type="GstAggregator"/>
       </field>
       <field name="info">
-        <doc xml:space="preserve">The #GstVideoInfo representing the currently set
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideoaggregator.h"
+             line="189">The #GstVideoInfo representing the currently set
 srcpad caps.</doc>
         <type name="VideoInfo" c:type="GstVideoInfo"/>
       </field>
@@ -1987,19 +5619,24 @@ srcpad caps.</doc>
               c:type="GstVideoAggregatorPrivate*"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="20">
+        <array zero-terminated="0" fixed-size="20">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
     </class>
     <record name="VideoAggregatorClass"
             c:type="GstVideoAggregatorClass"
-            glib:is-gtype-struct-for="VideoAggregator">
+            glib:is-gtype-struct-for="VideoAggregator"
+            version="1.16">
+      <source-position filename="gst-libs/gst/video/gstvideoaggregator.h"
+                       line="245"/>
       <field name="parent_class" readable="0" private="1">
         <type name="GstBase.AggregatorClass" c:type="GstAggregatorClass"/>
       </field>
       <field name="update_caps">
         <callback name="update_caps">
+          <source-position filename="gst-libs/gst/video/gstvideoaggregator.h"
+                           line="232"/>
           <return-value transfer-ownership="full">
             <type name="Gst.Caps" c:type="GstCaps*"/>
           </return-value>
@@ -2015,6 +5652,8 @@ srcpad caps.</doc>
       </field>
       <field name="aggregate_frames">
         <callback name="aggregate_frames">
+          <source-position filename="gst-libs/gst/video/gstvideoaggregator.h"
+                           line="234"/>
           <return-value transfer-ownership="none">
             <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
           </return-value>
@@ -2030,6 +5669,8 @@ srcpad caps.</doc>
       </field>
       <field name="create_output_buffer">
         <callback name="create_output_buffer">
+          <source-position filename="gst-libs/gst/video/gstvideoaggregator.h"
+                           line="236"/>
           <return-value transfer-ownership="none">
             <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
           </return-value>
@@ -2045,6 +5686,8 @@ srcpad caps.</doc>
       </field>
       <field name="find_best_format">
         <callback name="find_best_format">
+          <source-position filename="gst-libs/gst/video/gstvideoaggregator.h"
+                           line="238"/>
           <return-value transfer-ownership="none">
             <type name="none" c:type="void"/>
           </return-value>
@@ -2065,7 +5708,7 @@ srcpad caps.</doc>
         </callback>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="20">
+        <array zero-terminated="0" fixed-size="20">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -2073,14 +5716,21 @@ srcpad caps.</doc>
     <class name="VideoAggregatorConvertPad"
            c:symbol-prefix="video_aggregator_convert_pad"
            c:type="GstVideoAggregatorConvertPad"
+           version="1.16"
            parent="VideoAggregatorPad"
            glib:type-name="GstVideoAggregatorConvertPad"
            glib:get-type="gst_video_aggregator_convert_pad_get_type"
            glib:type-struct="VideoAggregatorConvertPadClass">
-      <doc xml:space="preserve">An implementation of GstPad that can be used with #GstVideoAggregator.
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/gstvideoaggregator.h"
+           line="130">An implementation of GstPad that can be used with #GstVideoAggregator.
 
 See #GstVideoAggregator for more details.</doc>
+      <source-position filename="gst-libs/gst/video/gstvideoaggregator.h"
+                       line="162"/>
       <virtual-method name="create_conversion_info">
+        <source-position filename="gst-libs/gst/video/gstvideoaggregator.h"
+                         line="158"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
@@ -2099,14 +5749,20 @@ See #GstVideoAggregator for more details.</doc>
       </virtual-method>
       <method name="update_conversion_info"
               c:identifier="gst_video_aggregator_convert_pad_update_conversion_info">
-        <doc xml:space="preserve">Requests the pad to check and update the converter before the next usage to
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideoaggregator.c"
+             line="667">Requests the pad to check and update the converter before the next usage to
 update for any changes that have happened.</doc>
+        <source-position filename="gst-libs/gst/video/gstvideoaggregator.h"
+                         line="168"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoAggregatorPad</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideoaggregator.c"
+                 line="669">a #GstVideoAggregatorPad</doc>
             <type name="VideoAggregatorConvertPad"
                   c:type="GstVideoAggregatorConvertPad*"/>
           </instance-parameter>
@@ -2123,20 +5779,25 @@ update for any changes that have happened.</doc>
               c:type="GstVideoAggregatorConvertPadPrivate*"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
     </class>
     <record name="VideoAggregatorConvertPadClass"
             c:type="GstVideoAggregatorConvertPadClass"
-            glib:is-gtype-struct-for="VideoAggregatorConvertPad">
+            glib:is-gtype-struct-for="VideoAggregatorConvertPad"
+            version="1.16">
+      <source-position filename="gst-libs/gst/video/gstvideoaggregator.h"
+                       line="162"/>
       <field name="parent_class">
         <type name="VideoAggregatorPadClass"
               c:type="GstVideoAggregatorPadClass"/>
       </field>
       <field name="create_conversion_info">
         <callback name="create_conversion_info">
+          <source-position filename="gst-libs/gst/video/gstvideoaggregator.h"
+                           line="158"/>
           <return-value transfer-ownership="none">
             <type name="none" c:type="void"/>
           </return-value>
@@ -2155,7 +5816,7 @@ update for any changes that have happened.</doc>
         </callback>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -2163,15 +5824,22 @@ update for any changes that have happened.</doc>
     <record name="VideoAggregatorConvertPadPrivate"
             c:type="GstVideoAggregatorConvertPadPrivate"
             disguised="1">
+      <source-position filename="gst-libs/gst/video/gstvideoaggregator.h"
+                       line="128"/>
     </record>
     <class name="VideoAggregatorPad"
            c:symbol-prefix="video_aggregator_pad"
            c:type="GstVideoAggregatorPad"
+           version="1.16"
            parent="GstBase.AggregatorPad"
            glib:type-name="GstVideoAggregatorPad"
            glib:get-type="gst_video_aggregator_pad_get_type"
            glib:type-struct="VideoAggregatorPadClass">
+      <source-position filename="gst-libs/gst/video/gstvideoaggregator.h"
+                       line="98"/>
       <virtual-method name="clean_frame">
+        <source-position filename="gst-libs/gst/video/gstvideoaggregator.h"
+                         line="93"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
@@ -2188,6 +5856,8 @@ update for any changes that have happened.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="prepare_frame">
+        <source-position filename="gst-libs/gst/video/gstvideoaggregator.h"
+                         line="88"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -2207,6 +5877,8 @@ update for any changes that have happened.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="update_conversion_info">
+        <source-position filename="gst-libs/gst/video/gstvideoaggregator.h"
+                         line="86"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
@@ -2218,81 +5890,118 @@ update for any changes that have happened.</doc>
       </virtual-method>
       <method name="get_current_buffer"
               c:identifier="gst_video_aggregator_pad_get_current_buffer">
-        <doc xml:space="preserve">Returns the currently queued buffer that is going to be used
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideoaggregator.c"
+             line="303">Returns the currently queued buffer that is going to be used
 for the current output frame.
 
-This must only be called from the aggregate_frames() virtual method,
-or from the prepare_frame() virtual method of the aggregator pads.
+This must only be called from the #GstVideoAggregatorClass::aggregate_frames virtual method,
+or from the #GstVideoAggregatorPadClass::prepare_frame virtual method of the aggregator pads.
 
-The return value is only valid until aggregate_frames() or prepare_frames()
+The return value is only valid until #GstVideoAggregatorClass::aggregate_frames or #GstVideoAggregatorPadClass::prepare_frame
 returns.</doc>
+        <source-position filename="gst-libs/gst/video/gstvideoaggregator.h"
+                         line="107"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The currently queued buffer</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideoaggregator.c"
+               line="316">The currently queued buffer</doc>
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoAggregatorPad</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideoaggregator.c"
+                 line="305">a #GstVideoAggregatorPad</doc>
             <type name="VideoAggregatorPad" c:type="GstVideoAggregatorPad*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_prepared_frame"
               c:identifier="gst_video_aggregator_pad_get_prepared_frame">
-        <doc xml:space="preserve">Returns the currently prepared video frame that has to be aggregated into
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideoaggregator.c"
+             line="326">Returns the currently prepared video frame that has to be aggregated into
 the current output frame.
 
-This must only be called from the aggregate_frames() virtual method,
-or from the prepare_frame() virtual method of the aggregator pads.
+This must only be called from the #GstVideoAggregatorClass::aggregate_frames virtual method,
+or from the #GstVideoAggregatorPadClass::prepare_frame virtual method of the aggregator pads.
 
-The return value is only valid until aggregate_frames() or prepare_frames()
+The return value is only valid until #GstVideoAggregatorClass::aggregate_frames or #GstVideoAggregatorPadClass::prepare_frame
 returns.</doc>
+        <source-position filename="gst-libs/gst/video/gstvideoaggregator.h"
+                         line="110"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The currently prepared video frame</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideoaggregator.c"
+               line="339">The currently prepared video frame</doc>
           <type name="VideoFrame" c:type="GstVideoFrame*"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoAggregatorPad</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideoaggregator.c"
+                 line="328">a #GstVideoAggregatorPad</doc>
             <type name="VideoAggregatorPad" c:type="GstVideoAggregatorPad*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="has_current_buffer"
               c:identifier="gst_video_aggregator_pad_has_current_buffer">
-        <doc xml:space="preserve">Checks if the pad currently has a buffer queued that is going to be used
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideoaggregator.c"
+             line="283">Checks if the pad currently has a buffer queued that is going to be used
 for the current output frame.
 
-This must only be called from the aggregate_frames() virtual method,
-or from the prepare_frame() virtual method of the aggregator pads.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the pad has currently a buffer queued</doc>
+This must only be called from the #GstVideoAggregatorClass::aggregate_frames virtual method,
+or from the #GstVideoAggregatorPadClass::prepare_frame virtual method of the aggregator pads.</doc>
+        <source-position filename="gst-libs/gst/video/gstvideoaggregator.h"
+                         line="104"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideoaggregator.c"
+               line="293">%TRUE if the pad has currently a buffer queued</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoAggregatorPad</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideoaggregator.c"
+                 line="285">a #GstVideoAggregatorPad</doc>
             <type name="VideoAggregatorPad" c:type="GstVideoAggregatorPad*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="set_needs_alpha"
               c:identifier="gst_video_aggregator_pad_set_needs_alpha">
-        <doc xml:space="preserve">Allows selecting that this pad requires an output format with alpha</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideoaggregator.c"
+             line="349">Allows selecting that this pad requires an output format with alpha</doc>
+        <source-position filename="gst-libs/gst/video/gstvideoaggregator.h"
+                         line="113"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="pad" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoAggregatorPad</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideoaggregator.c"
+                 line="351">a #GstVideoAggregatorPad</doc>
             <type name="VideoAggregatorPad" c:type="GstVideoAggregatorPad*"/>
           </instance-parameter>
           <parameter name="needs_alpha" transfer-ownership="none">
-            <doc xml:space="preserve">%TRUE if this pad requires alpha output</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideoaggregator.c"
+                 line="352">%TRUE if this pad requires alpha output</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </method>
+      <property name="max-last-buffer-repeat"
+                writable="1"
+                transfer-ownership="none">
+        <type name="guint64" c:type="guint64"/>
+      </property>
       <property name="repeat-after-eos" writable="1" transfer-ownership="none">
         <type name="gboolean" c:type="gboolean"/>
       </property>
@@ -2303,7 +6012,9 @@ or from the prepare_frame() virtual method of the aggregator pads.</doc>
         <type name="GstBase.AggregatorPad" c:type="GstAggregatorPad"/>
       </field>
       <field name="info">
-        <doc xml:space="preserve">The #GstVideoInfo currently set on the pad</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideoaggregator.h"
+             line="56">The #GstVideoInfo currently set on the pad</doc>
         <type name="VideoInfo" c:type="GstVideoInfo"/>
       </field>
       <field name="priv" readable="0" private="1">
@@ -2311,20 +6022,25 @@ or from the prepare_frame() virtual method of the aggregator pads.</doc>
               c:type="GstVideoAggregatorPadPrivate*"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
     </class>
     <record name="VideoAggregatorPadClass"
             c:type="GstVideoAggregatorPadClass"
-            glib:is-gtype-struct-for="VideoAggregatorPad">
+            glib:is-gtype-struct-for="VideoAggregatorPad"
+            version="1.16">
+      <source-position filename="gst-libs/gst/video/gstvideoaggregator.h"
+                       line="98"/>
       <field name="parent_class">
         <type name="GstBase.AggregatorPadClass"
               c:type="GstAggregatorPadClass"/>
       </field>
       <field name="update_conversion_info">
         <callback name="update_conversion_info">
+          <source-position filename="gst-libs/gst/video/gstvideoaggregator.h"
+                           line="86"/>
           <return-value transfer-ownership="none">
             <type name="none" c:type="void"/>
           </return-value>
@@ -2337,6 +6053,8 @@ or from the prepare_frame() virtual method of the aggregator pads.</doc>
       </field>
       <field name="prepare_frame">
         <callback name="prepare_frame">
+          <source-position filename="gst-libs/gst/video/gstvideoaggregator.h"
+                           line="88"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -2358,6 +6076,8 @@ or from the prepare_frame() virtual method of the aggregator pads.</doc>
       </field>
       <field name="clean_frame">
         <callback name="clean_frame">
+          <source-position filename="gst-libs/gst/video/gstvideoaggregator.h"
+                           line="93"/>
           <return-value transfer-ownership="none">
             <type name="none" c:type="void"/>
           </return-value>
@@ -2375,7 +6095,7 @@ or from the prepare_frame() virtual method of the aggregator pads.</doc>
         </callback>
       </field>
       <field name="_gst_reserved">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="20">
+        <array zero-terminated="0" fixed-size="20">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -2383,45 +6103,67 @@ or from the prepare_frame() virtual method of the aggregator pads.</doc>
     <record name="VideoAggregatorPadPrivate"
             c:type="GstVideoAggregatorPadPrivate"
             disguised="1">
+      <source-position filename="gst-libs/gst/video/gstvideoaggregator.h"
+                       line="52"/>
     </record>
     <record name="VideoAggregatorPrivate"
             c:type="GstVideoAggregatorPrivate"
             disguised="1">
+      <source-position filename="gst-libs/gst/video/gstvideoaggregator.h"
+                       line="31"/>
     </record>
     <record name="VideoAlignment" c:type="GstVideoAlignment">
-      <doc xml:space="preserve">Extra alignment parameters for the memory of video buffers. This
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video.h"
+           line="41">Extra alignment parameters for the memory of video buffers. This
 structure is usually used to configure the bufferpool if it supports the
 #GST_BUFFER_POOL_OPTION_VIDEO_ALIGNMENT.</doc>
+      <source-position filename="gst-libs/gst/video/video.h" line="60"/>
       <field name="padding_top" writable="1">
-        <doc xml:space="preserve">extra pixels on the top</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video.h"
+             line="45">extra pixels on the top</doc>
         <type name="guint" c:type="guint"/>
       </field>
       <field name="padding_bottom" writable="1">
-        <doc xml:space="preserve">extra pixels on the bottom</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video.h"
+             line="46">extra pixels on the bottom</doc>
         <type name="guint" c:type="guint"/>
       </field>
       <field name="padding_left" writable="1">
-        <doc xml:space="preserve">extra pixels on the left side</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video.h"
+             line="43">extra pixels on the left side</doc>
         <type name="guint" c:type="guint"/>
       </field>
       <field name="padding_right" writable="1">
-        <doc xml:space="preserve">extra pixels on the right side</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video.h"
+             line="44">extra pixels on the right side</doc>
         <type name="guint" c:type="guint"/>
       </field>
       <field name="stride_align" writable="1">
-        <doc xml:space="preserve">array with extra alignment requirements for the strides</doc>
-        <array zero-terminated="0" c:type="guint" fixed-size="4">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video.h"
+             line="47">array with extra alignment requirements for the strides</doc>
+        <array zero-terminated="0" fixed-size="4">
           <type name="guint" c:type="guint"/>
         </array>
       </field>
       <method name="reset" c:identifier="gst_video_alignment_reset">
-        <doc xml:space="preserve">Set @align to its default values with no padding and no alignment.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video.c"
+             line="187">Set @align to its default values with no padding and no alignment.</doc>
+        <source-position filename="gst-libs/gst/video/video.h" line="127"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="align" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoAlignment</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video.c"
+                 line="189">a #GstVideoAlignment</doc>
             <type name="VideoAlignment" c:type="GstVideoAlignment*"/>
           </instance-parameter>
         </parameters>
@@ -2432,12 +6174,16 @@ structure is usually used to configure the bufferpool if it supports the
                  glib:type-name="GstVideoAlphaMode"
                  glib:get-type="gst_video_alpha_mode_get_type"
                  c:type="GstVideoAlphaMode">
-      <doc xml:space="preserve">Different alpha modes.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-converter.h"
+           line="135">Different alpha modes.</doc>
       <member name="copy"
               value="0"
               c:identifier="GST_VIDEO_ALPHA_MODE_COPY"
               glib:nick="copy">
-        <doc xml:space="preserve">When input and output have alpha, it will be copied.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-converter.h"
+             line="137">When input and output have alpha, it will be copied.
         When the input has no alpha, alpha will be set to
         #GST_VIDEO_CONVERTER_OPT_ALPHA_VALUE</doc>
       </member>
@@ -2445,51 +6191,67 @@ structure is usually used to configure the bufferpool if it supports the
               value="1"
               c:identifier="GST_VIDEO_ALPHA_MODE_SET"
               glib:nick="set">
-        <doc xml:space="preserve">set all alpha to
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-converter.h"
+             line="140">set all alpha to
    #GST_VIDEO_CONVERTER_OPT_ALPHA_VALUE</doc>
       </member>
       <member name="mult"
               value="2"
               c:identifier="GST_VIDEO_ALPHA_MODE_MULT"
               glib:nick="mult">
-        <doc xml:space="preserve">multiply all alpha with
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-converter.h"
+             line="142">multiply all alpha with
         #GST_VIDEO_CONVERTER_OPT_ALPHA_VALUE.
         When the input format has no alpha but the output format has, the
         alpha value will be set to #GST_VIDEO_CONVERTER_OPT_ALPHA_VALUE</doc>
       </member>
     </enumeration>
     <record name="VideoAncillary" c:type="GstVideoAncillary" version="1.16">
-      <doc xml:space="preserve">Video Ancillary data, according to SMPTE-291M specification.
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-anc.h"
+           line="31">Video Ancillary data, according to SMPTE-291M specification.
 
 Note that the contents of the data are always stored as 8bit data (i.e. do not contain
 the parity check bits).</doc>
+      <source-position filename="gst-libs/gst/video/video-anc.h" line="56"/>
       <field name="DID" writable="1">
-        <doc xml:space="preserve">The Data Identifier</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-anc.h"
+             line="33">The Data Identifier</doc>
         <type name="guint8" c:type="guint8"/>
       </field>
       <field name="SDID_block_number" writable="1">
-        <doc xml:space="preserve">The Secondary Data Identifier (if type 2) or the Data
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-anc.h"
+             line="34">The Secondary Data Identifier (if type 2) or the Data
                     Block Number (if type 1)</doc>
         <type name="guint8" c:type="guint8"/>
       </field>
       <field name="data_count" writable="1">
-        <doc xml:space="preserve">The amount of data (in bytes) in @data (max 255 bytes)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-anc.h"
+             line="36">The amount of data (in bytes) in @data (max 255 bytes)</doc>
         <type name="guint8" c:type="guint8"/>
       </field>
       <field name="data" writable="1">
-        <doc xml:space="preserve">The user data content of the Ancillary packet.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-anc.h"
+             line="37">The user data content of the Ancillary packet.
    Does not contain the ADF, DID, SDID nor CS.</doc>
-        <array length="2" zero-terminated="0" c:type="guint8">
+        <array length="2" zero-terminated="0">
           <type name="guint8" c:type="guint8"/>
         </array>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
     </record>
     <enumeration name="VideoAncillaryDID"
+                 version="1.16"
                  glib:type-name="GstVideoAncillaryDID"
                  glib:get-type="gst_video_ancillary_did_get_type"
                  c:type="GstVideoAncillaryDID">
@@ -2559,34 +6321,111 @@ the parity check bits).</doc>
                  glib:type-name="GstVideoAncillaryDID16"
                  glib:get-type="gst_video_ancillary_di_d16_get_type"
                  c:type="GstVideoAncillaryDID16">
-      <doc xml:space="preserve">Some know types of Ancillary Data identifiers.</doc>
-      <member name="708"
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-anc.h"
+           line="90">Some know types of Ancillary Data identifiers.</doc>
+      <member name="s334_eia_708"
               value="24833"
               c:identifier="GST_VIDEO_ANCILLARY_DID16_S334_EIA_708"
-              glib:nick="708">
-        <doc xml:space="preserve">CEA 708 Ancillary data according to SMPTE 334</doc>
+              glib:nick="s334-eia-708">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-anc.h"
+             line="92">CEA 708 Ancillary data according to SMPTE 334</doc>
       </member>
-      <member name="608"
+      <member name="s334_eia_608"
               value="24834"
               c:identifier="GST_VIDEO_ANCILLARY_DID16_S334_EIA_608"
-              glib:nick="608">
-        <doc xml:space="preserve">CEA 608 Ancillary data according to SMPTE 334</doc>
+              glib:nick="s334-eia-608">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-anc.h"
+             line="93">CEA 608 Ancillary data according to SMPTE 334</doc>
+      </member>
+      <member name="s2016_3_afd_bar"
+              value="16645"
+              c:identifier="GST_VIDEO_ANCILLARY_DID16_S2016_3_AFD_BAR"
+              glib:nick="s2016-3-afd-bar">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-anc.h"
+             line="94">AFD/Bar Ancillary data according to SMPTE 2016-3 (Since: 1.18)</doc>
       </member>
     </enumeration>
+    <record name="VideoBarMeta" c:type="GstVideoBarMeta" version="1.18">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-anc.h"
+           line="270">Bar data should be included in video user data
+whenever the rectangular picture area containing useful information
+does not extend to the full height or width of the coded frame
+and AFD alone is insufficient to describe the extent of the image.
+
+Note: either vertical or horizontal bars are specified, but not both.
+
+For more details, see:
+
+https://www.atsc.org/wp-content/uploads/2015/03/a_53-Part-4-2009.pdf
+
+and SMPTE ST2016-1</doc>
+      <source-position filename="gst-libs/gst/video/video-anc.h" line="306"/>
+      <field name="meta" writable="1">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-anc.h"
+             line="272">parent #GstMeta</doc>
+        <type name="Gst.Meta" c:type="GstMeta"/>
+      </field>
+      <field name="field" writable="1">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-anc.h"
+             line="273">0 for progressive or field 1 and 1 for field 2</doc>
+        <type name="guint8" c:type="guint8"/>
+      </field>
+      <field name="is_letterbox" writable="1">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-anc.h"
+             line="274">if true then bar data specifies letterbox, otherwise pillarbox</doc>
+        <type name="gboolean" c:type="gboolean"/>
+      </field>
+      <field name="bar_data1" writable="1">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-anc.h"
+             line="275">If @is_letterbox is true, then the value specifies the
+     last line of a horizontal letterbox bar area at top of reconstructed frame.
+     Otherwise, it specifies the last horizontal luminance sample of a vertical pillarbox
+     bar area at the left side of the reconstructed frame</doc>
+        <type name="guint" c:type="guint"/>
+      </field>
+      <field name="bar_data2" writable="1">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-anc.h"
+             line="279">If @is_letterbox is true, then the value specifies the
+     first line of a horizontal letterbox bar area at bottom of reconstructed frame.
+     Otherwise, it specifies the first horizontal
+     luminance sample of a vertical pillarbox bar area at the right side of the reconstructed frame.</doc>
+        <type name="guint" c:type="guint"/>
+      </field>
+      <function name="get_info" c:identifier="gst_video_bar_meta_get_info">
+        <source-position filename="gst-libs/gst/video/video-anc.h" line="311"/>
+        <return-value transfer-ownership="none">
+          <type name="Gst.MetaInfo" c:type="const GstMetaInfo*"/>
+        </return-value>
+      </function>
+    </record>
     <bitfield name="VideoBufferFlags"
               glib:type-name="GstVideoBufferFlags"
               glib:get-type="gst_video_buffer_flags_get_type"
               c:type="GstVideoBufferFlags">
-      <doc xml:space="preserve">Additional video buffer flags. These flags can potentially be used on any
-buffers carrying video data - even encoded data.
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-frame.h"
+           line="155">Additional video buffer flags. These flags can potentially be used on any
+buffers carrying closed caption data, or video data - even encoded data.
 
-Note that these are only valid for #GstCaps of type: video/...
+Note that these are only valid for #GstCaps of type: video/... and caption/...
 They can conflict with other extended buffer flags.</doc>
       <member name="interlaced"
               value="1048576"
               c:identifier="GST_VIDEO_BUFFER_FLAG_INTERLACED"
               glib:nick="interlaced">
-        <doc xml:space="preserve">If the #GstBuffer is interlaced. In mixed
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-frame.h"
+             line="157">If the #GstBuffer is interlaced. In mixed
                                     interlace-mode, this flags specifies if the frame is
                                     interlaced or progressive.</doc>
       </member>
@@ -2594,7 +6433,9 @@ They can conflict with other extended buffer flags.</doc>
               value="2097152"
               c:identifier="GST_VIDEO_BUFFER_FLAG_TFF"
               glib:nick="tff">
-        <doc xml:space="preserve">If the #GstBuffer is interlaced, then the first field
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-frame.h"
+             line="160">If the #GstBuffer is interlaced, then the first field
                                     in the video frame is the top field.  If unset, the
                                     bottom field is first.</doc>
       </member>
@@ -2602,7 +6443,9 @@ They can conflict with other extended buffer flags.</doc>
               value="4194304"
               c:identifier="GST_VIDEO_BUFFER_FLAG_RFF"
               glib:nick="rff">
-        <doc xml:space="preserve">If the #GstBuffer is interlaced, then the first field
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-frame.h"
+             line="163">If the #GstBuffer is interlaced, then the first field
                                     (as defined by the %GST_VIDEO_BUFFER_FLAG_TFF flag setting)
                                     is repeated.</doc>
       </member>
@@ -2610,7 +6453,9 @@ They can conflict with other extended buffer flags.</doc>
               value="8388608"
               c:identifier="GST_VIDEO_BUFFER_FLAG_ONEFIELD"
               glib:nick="onefield">
-        <doc xml:space="preserve">If the #GstBuffer is interlaced, then only the
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-frame.h"
+             line="166">If the #GstBuffer is interlaced, then only the
                                     first field (as defined by the %GST_VIDEO_BUFFER_FLAG_TFF
                                     flag setting) is to be displayed (Since: 1.16).</doc>
       </member>
@@ -2618,18 +6463,22 @@ They can conflict with other extended buffer flags.</doc>
               value="16777216"
               c:identifier="GST_VIDEO_BUFFER_FLAG_MULTIPLE_VIEW"
               glib:nick="multiple-view">
-        <doc xml:space="preserve">The #GstBuffer contains one or more specific views,
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-frame.h"
+             line="169">The #GstBuffer contains one or more specific views,
                                     such as left or right eye view. This flags is set on
                                     any buffer that contains non-mono content - even for
                                     streams that contain only a single viewpoint. In mixed
-                                    mono / non-mono streams, the absense of the flag marks
+                                    mono / non-mono streams, the absence of the flag marks
                                     mono buffers.</doc>
       </member>
       <member name="first_in_bundle"
               value="33554432"
               c:identifier="GST_VIDEO_BUFFER_FLAG_FIRST_IN_BUNDLE"
               glib:nick="first-in-bundle">
-        <doc xml:space="preserve">When conveying stereo/multiview content with
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-frame.h"
+             line="175">When conveying stereo/multiview content with
                                     frame-by-frame methods, this flag marks the first buffer
                                      in a bundle of frames that belong together.</doc>
       </member>
@@ -2637,15 +6486,20 @@ They can conflict with other extended buffer flags.</doc>
               value="10485760"
               c:identifier="GST_VIDEO_BUFFER_FLAG_TOP_FIELD"
               glib:nick="top-field">
-        <doc xml:space="preserve">The video frame has the top field only. This is the
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-frame.h"
+             line="178">The video frame has the top field only. This is the
                                     same as GST_VIDEO_BUFFER_FLAG_TFF |
-                                    GST_VIDEO_BUFFER_FLAG_ONEFIELD (Since: 1.16).</doc>
+                                    GST_VIDEO_BUFFER_FLAG_ONEFIELD (Since: 1.16).
+                                    Use GST_VIDEO_BUFFER_IS_TOP_FIELD() to check for this flag.</doc>
       </member>
       <member name="onefield"
               value="8388608"
               c:identifier="GST_VIDEO_BUFFER_FLAG_ONEFIELD"
               glib:nick="onefield">
-        <doc xml:space="preserve">If the #GstBuffer is interlaced, then only the
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-frame.h"
+             line="166">If the #GstBuffer is interlaced, then only the
                                     first field (as defined by the %GST_VIDEO_BUFFER_FLAG_TFF
                                     flag setting) is to be displayed (Since: 1.16).</doc>
       </member>
@@ -2653,15 +6507,29 @@ They can conflict with other extended buffer flags.</doc>
               value="8388608"
               c:identifier="GST_VIDEO_BUFFER_FLAG_BOTTOM_FIELD"
               glib:nick="bottom-field">
-        <doc xml:space="preserve">The video frame has the bottom field only. This is
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-frame.h"
+             line="182">The video frame has the bottom field only. This is
                                     the same as GST_VIDEO_BUFFER_FLAG_ONEFIELD
-                                    (GST_VIDEO_BUFFER_FLAG_TFF flag unset) (Since: 1.16).</doc>
+                                    (GST_VIDEO_BUFFER_FLAG_TFF flag unset) (Since: 1.16).
+                                    Use GST_VIDEO_BUFFER_IS_BOTTOM_FIELD() to check for this flag.</doc>
+      </member>
+      <member name="marker"
+              value="512"
+              c:identifier="GST_VIDEO_BUFFER_FLAG_MARKER"
+              glib:nick="marker">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-frame.h"
+             line="186">The #GstBuffer contains the end of a video field or frame
+                                    boundary such as the last subframe or packet (Since: 1.18).</doc>
       </member>
       <member name="last"
               value="268435456"
               c:identifier="GST_VIDEO_BUFFER_FLAG_LAST"
               glib:nick="last">
-        <doc xml:space="preserve">Offset to define more flags</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-frame.h"
+             line="188">Offset to define more flags</doc>
       </member>
     </bitfield>
     <class name="VideoBufferPool"
@@ -2671,11 +6539,18 @@ They can conflict with other extended buffer flags.</doc>
            glib:type-name="GstVideoBufferPool"
            glib:get-type="gst_video_buffer_pool_get_type"
            glib:type-struct="VideoBufferPoolClass">
+      <source-position filename="gst-libs/gst/video/gstvideopool.h" line="76"/>
       <constructor name="new" c:identifier="gst_video_buffer_pool_new">
-        <doc xml:space="preserve">Create a new bufferpool that can allocate video frames. This bufferpool
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideopool.c"
+             line="274">Create a new bufferpool that can allocate video frames. This bufferpool
 supports all the video bufferpool options.</doc>
+        <source-position filename="gst-libs/gst/video/gstvideopool.h"
+                         line="82"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new #GstBufferPool to allocate video frames</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideopool.c"
+               line="280">a new #GstBufferPool to allocate video frames</doc>
           <type name="Gst.BufferPool" c:type="GstBufferPool*"/>
         </return-value>
       </constructor>
@@ -2690,6 +6565,7 @@ supports all the video bufferpool options.</doc>
     <record name="VideoBufferPoolClass"
             c:type="GstVideoBufferPoolClass"
             glib:is-gtype-struct-for="VideoBufferPool">
+      <source-position filename="gst-libs/gst/video/gstvideopool.h" line="76"/>
       <field name="parent_class">
         <type name="Gst.BufferPoolClass" c:type="GstBufferPoolClass"/>
       </field>
@@ -2697,30 +6573,43 @@ supports all the video bufferpool options.</doc>
     <record name="VideoBufferPoolPrivate"
             c:type="GstVideoBufferPoolPrivate"
             disguised="1">
+      <source-position filename="gst-libs/gst/video/gstvideopool.h" line="59"/>
     </record>
     <record name="VideoCaptionMeta"
             c:type="GstVideoCaptionMeta"
             version="1.16">
-      <doc xml:space="preserve">Extra buffer metadata providing Closed Caption.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-anc.h"
+           line="387">Extra buffer metadata providing Closed Caption.</doc>
+      <source-position filename="gst-libs/gst/video/video-anc.h" line="404"/>
       <field name="meta" writable="1">
-        <doc xml:space="preserve">parent #GstMeta</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-anc.h"
+             line="389">parent #GstMeta</doc>
         <type name="Gst.Meta" c:type="GstMeta"/>
       </field>
       <field name="caption_type" writable="1">
-        <doc xml:space="preserve">The type of Closed Caption contained in the meta.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-anc.h"
+             line="390">The type of Closed Caption contained in the meta.</doc>
         <type name="VideoCaptionType" c:type="GstVideoCaptionType"/>
       </field>
       <field name="data" writable="1">
-        <doc xml:space="preserve">The Closed Caption data.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-anc.h"
+             line="391">The Closed Caption data.</doc>
         <array length="3" zero-terminated="0" c:type="guint8*">
           <type name="guint8" c:type="guint8"/>
         </array>
       </field>
       <field name="size" writable="1">
-        <doc xml:space="preserve">The size in bytes of @data</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-anc.h"
+             line="392">The size in bytes of @data</doc>
         <type name="gsize" c:type="gsize"/>
       </field>
       <function name="get_info" c:identifier="gst_video_caption_meta_get_info">
+        <source-position filename="gst-libs/gst/video/video-anc.h" line="411"/>
         <return-value transfer-ownership="none">
           <type name="Gst.MetaInfo" c:type="const GstMetaInfo*"/>
         </return-value>
@@ -2731,18 +6620,24 @@ supports all the video bufferpool options.</doc>
                  glib:type-name="GstVideoCaptionType"
                  glib:get-type="gst_video_caption_type_get_type"
                  c:type="GstVideoCaptionType">
-      <doc xml:space="preserve">The various known types of Closed Caption (CC).</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-anc.h"
+           line="342">The various known types of Closed Caption (CC).</doc>
       <member name="unknown"
               value="0"
               c:identifier="GST_VIDEO_CAPTION_TYPE_UNKNOWN"
               glib:nick="unknown">
-        <doc xml:space="preserve">Unknown type of CC</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-anc.h"
+             line="344">Unknown type of CC</doc>
       </member>
       <member name="cea608_raw"
               value="1"
               c:identifier="GST_VIDEO_CAPTION_TYPE_CEA608_RAW"
               glib:nick="cea608-raw">
-        <doc xml:space="preserve">CEA-608 as byte pairs. Note that
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-anc.h"
+             line="345">CEA-608 as byte pairs. Note that
      this format is not recommended since is does not specify to
      which field the caption comes from and therefore assumes
      it comes from the first field (and that there is no information
@@ -2754,7 +6649,9 @@ supports all the video bufferpool options.</doc>
               value="2"
               c:identifier="GST_VIDEO_CAPTION_TYPE_CEA608_S334_1A"
               glib:nick="cea608-s334-1a">
-        <doc xml:space="preserve">CEA-608 as byte triplets as defined
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-anc.h"
+             line="352">CEA-608 as byte triplets as defined
      in SMPTE S334-1 Annex A. The second and third byte of the byte triplet
      is the raw CEA608 data, the first byte is a bitfield: The top/7th bit is
      0 for the second field, 1 for the first field, bit 6 and 5 are 0 and
@@ -2767,7 +6664,9 @@ supports all the video bufferpool options.</doc>
               value="3"
               c:identifier="GST_VIDEO_CAPTION_TYPE_CEA708_RAW"
               glib:nick="cea708-raw">
-        <doc xml:space="preserve">CEA-708 as cc_data byte triplets. They
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-anc.h"
+             line="360">CEA-708 as cc_data byte triplets. They
      can also contain 608-in-708 and the first byte of each triplet has to
      be inspected for detecting the type.</doc>
       </member>
@@ -2775,22 +6674,31 @@ supports all the video bufferpool options.</doc>
               value="4"
               c:identifier="GST_VIDEO_CAPTION_TYPE_CEA708_CDP"
               glib:nick="cea708-cdp">
-        <doc xml:space="preserve">CEA-708 (and optionally CEA-608) in
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-anc.h"
+             line="363">CEA-708 (and optionally CEA-608) in
      a CDP (Caption Distribution Packet) defined by SMPTE S-334-2.
      Contains the whole CDP (starting with 0x9669).</doc>
       </member>
       <function name="from_caps"
                 c:identifier="gst_video_caption_type_from_caps"
                 version="1.16">
-        <doc xml:space="preserve">Parses fixed Closed Caption #GstCaps and returns the corresponding caption
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-anc.c"
+             line="1051">Parses fixed Closed Caption #GstCaps and returns the corresponding caption
 type, or %GST_VIDEO_CAPTION_TYPE_UNKNOWN.</doc>
+        <source-position filename="gst-libs/gst/video/video-anc.h" line="381"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">#GstVideoCaptionType.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-anc.c"
+               line="1058">#GstVideoCaptionType.</doc>
           <type name="VideoCaptionType" c:type="GstVideoCaptionType"/>
         </return-value>
         <parameters>
           <parameter name="caps" transfer-ownership="none">
-            <doc xml:space="preserve">Fixed #GstCaps to parse</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-anc.c"
+                 line="1053">Fixed #GstCaps to parse</doc>
             <type name="Gst.Caps" c:type="const GstCaps*"/>
           </parameter>
         </parameters>
@@ -2798,14 +6706,21 @@ type, or %GST_VIDEO_CAPTION_TYPE_UNKNOWN.</doc>
       <function name="to_caps"
                 c:identifier="gst_video_caption_type_to_caps"
                 version="1.16">
-        <doc xml:space="preserve">Creates new caps corresponding to @type.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-anc.c"
+             line="1091">Creates new caps corresponding to @type.</doc>
+        <source-position filename="gst-libs/gst/video/video-anc.h" line="385"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">new #GstCaps</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-anc.c"
+               line="1097">new #GstCaps</doc>
           <type name="Gst.Caps" c:type="GstCaps*"/>
         </return-value>
         <parameters>
           <parameter name="type" transfer-ownership="none">
-            <doc xml:space="preserve">#GstVideoCaptionType</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-anc.c"
+                 line="1093">#GstVideoCaptionType</doc>
             <type name="VideoCaptionType" c:type="GstVideoCaptionType"/>
           </parameter>
         </parameters>
@@ -2815,37 +6730,49 @@ type, or %GST_VIDEO_CAPTION_TYPE_UNKNOWN.</doc>
               glib:type-name="GstVideoChromaFlags"
               glib:get-type="gst_video_chroma_flags_get_type"
               c:type="GstVideoChromaFlags">
-      <doc xml:space="preserve">Extra flags that influence the result from gst_video_chroma_resample_new().</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-chroma.h"
+           line="75">Extra flags that influence the result from gst_video_chroma_resample_new().</doc>
       <member name="none"
               value="0"
               c:identifier="GST_VIDEO_CHROMA_FLAG_NONE"
               glib:nick="none">
-        <doc xml:space="preserve">no flags</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-chroma.h"
+             line="77">no flags</doc>
       </member>
       <member name="interlaced"
               value="1"
               c:identifier="GST_VIDEO_CHROMA_FLAG_INTERLACED"
               glib:nick="interlaced">
-        <doc xml:space="preserve">the input is interlaced</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-chroma.h"
+             line="78">the input is interlaced</doc>
       </member>
     </bitfield>
     <enumeration name="VideoChromaMethod"
                  glib:type-name="GstVideoChromaMethod"
                  glib:get-type="gst_video_chroma_method_get_type"
                  c:type="GstVideoChromaMethod">
-      <doc xml:space="preserve">Different subsampling and upsampling methods</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-chroma.h"
+           line="61">Different subsampling and upsampling methods</doc>
       <member name="nearest"
               value="0"
               c:identifier="GST_VIDEO_CHROMA_METHOD_NEAREST"
               glib:nick="nearest">
-        <doc xml:space="preserve">Duplicates the chroma samples when
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-chroma.h"
+             line="63">Duplicates the chroma samples when
    upsampling and drops when subsampling</doc>
       </member>
       <member name="linear"
               value="1"
               c:identifier="GST_VIDEO_CHROMA_METHOD_LINEAR"
               glib:nick="linear">
-        <doc xml:space="preserve">Uses linear interpolation to reconstruct
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-chroma.h"
+             line="65">Uses linear interpolation to reconstruct
    missing chroma and averaging to subsample</doc>
       </member>
     </enumeration>
@@ -2854,90 +6781,127 @@ type, or %GST_VIDEO_CAPTION_TYPE_UNKNOWN.</doc>
                  glib:type-name="GstVideoChromaMode"
                  glib:get-type="gst_video_chroma_mode_get_type"
                  c:type="GstVideoChromaMode">
-      <doc xml:space="preserve">Different chroma downsampling and upsampling modes</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-converter.h"
+           line="172">Different chroma downsampling and upsampling modes</doc>
       <member name="full"
               value="0"
               c:identifier="GST_VIDEO_CHROMA_MODE_FULL"
               glib:nick="full">
-        <doc xml:space="preserve">do full chroma up and down sampling</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-converter.h"
+             line="174">do full chroma up and down sampling</doc>
       </member>
       <member name="upsample_only"
               value="1"
               c:identifier="GST_VIDEO_CHROMA_MODE_UPSAMPLE_ONLY"
               glib:nick="upsample-only">
-        <doc xml:space="preserve">only perform chroma upsampling</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-converter.h"
+             line="175">only perform chroma upsampling</doc>
       </member>
       <member name="downsample_only"
               value="2"
               c:identifier="GST_VIDEO_CHROMA_MODE_DOWNSAMPLE_ONLY"
               glib:nick="downsample-only">
-        <doc xml:space="preserve">only perform chroma downsampling</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-converter.h"
+             line="176">only perform chroma downsampling</doc>
       </member>
       <member name="none"
               value="3"
               c:identifier="GST_VIDEO_CHROMA_MODE_NONE"
               glib:nick="none">
-        <doc xml:space="preserve">disable chroma resampling</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-converter.h"
+             line="177">disable chroma resampling</doc>
       </member>
     </enumeration>
     <record name="VideoChromaResample"
             c:type="GstVideoChromaResample"
             disguised="1">
+      <source-position filename="gst-libs/gst/video/video-chroma.h" line="87"/>
       <method name=""
               c:identifier="gst_video_chroma_resample"
               moved-to="video_chroma_resample">
-        <doc xml:space="preserve">Perform resampling of @width chroma pixels in @lines.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-chroma.c"
+             line="1040">Perform resampling of @width chroma pixels in @lines.</doc>
+        <source-position filename="gst-libs/gst/video/video-chroma.h"
+                         line="107"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="resample" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoChromaResample</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-chroma.c"
+                 line="1042">a #GstVideoChromaResample</doc>
             <type name="VideoChromaResample" c:type="GstVideoChromaResample*"/>
           </instance-parameter>
           <parameter name="lines"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">pixel lines</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-chroma.c"
+                 line="1043">pixel lines</doc>
             <type name="gpointer" c:type="gpointer*"/>
           </parameter>
           <parameter name="width" transfer-ownership="none">
-            <doc xml:space="preserve">the number of pixels on one line</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-chroma.c"
+                 line="1044">the number of pixels on one line</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
         </parameters>
       </method>
       <method name="free" c:identifier="gst_video_chroma_resample_free">
-        <doc xml:space="preserve">Free @resample</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-chroma.c"
+             line="1026">Free @resample</doc>
+        <source-position filename="gst-libs/gst/video/video-chroma.h"
+                         line="100"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="resample" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoChromaResample</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-chroma.c"
+                 line="1028">a #GstVideoChromaResample</doc>
             <type name="VideoChromaResample" c:type="GstVideoChromaResample*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_info"
               c:identifier="gst_video_chroma_resample_get_info">
-        <doc xml:space="preserve">The resampler must be fed @n_lines at a time. The first line should be
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-chroma.c"
+             line="1005">The resampler must be fed @n_lines at a time. The first line should be
 at @offset.</doc>
+        <source-position filename="gst-libs/gst/video/video-chroma.h"
+                         line="103"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="resample" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoChromaResample</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-chroma.c"
+                 line="1007">a #GstVideoChromaResample</doc>
             <type name="VideoChromaResample" c:type="GstVideoChromaResample*"/>
           </instance-parameter>
           <parameter name="n_lines" transfer-ownership="none">
-            <doc xml:space="preserve">the number of input lines</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-chroma.c"
+                 line="1008">the number of input lines</doc>
             <type name="guint" c:type="guint*"/>
           </parameter>
           <parameter name="offset" transfer-ownership="none">
-            <doc xml:space="preserve">the first line</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-chroma.c"
+                 line="1009">the first line</doc>
             <type name="gint" c:type="gint*"/>
           </parameter>
         </parameters>
@@ -2945,37 +6909,55 @@ at @offset.</doc>
       <function name="new"
                 c:identifier="gst_video_chroma_resample_new"
                 introspectable="0">
-        <doc xml:space="preserve">Create a new resampler object for the given parameters. When @h_factor or
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-chroma.c"
+             line="929">Create a new resampler object for the given parameters. When @h_factor or
 @v_factor is &gt; 0, upsampling will be used, otherwise subsampling is
 performed.</doc>
+        <source-position filename="gst-libs/gst/video/video-chroma.h"
+                         line="93"/>
         <return-value>
-          <doc xml:space="preserve">a new #GstVideoChromaResample that should be freed with
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-chroma.c"
+               line="942">a new #GstVideoChromaResample that should be freed with
     gst_video_chroma_resample_free() after usage.</doc>
           <type name="VideoChromaResample" c:type="GstVideoChromaResample*"/>
         </return-value>
         <parameters>
           <parameter name="method" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoChromaMethod</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-chroma.c"
+                 line="931">a #GstVideoChromaMethod</doc>
             <type name="VideoChromaMethod" c:type="GstVideoChromaMethod"/>
           </parameter>
           <parameter name="site" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoChromaSite</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-chroma.c"
+                 line="932">a #GstVideoChromaSite</doc>
             <type name="VideoChromaSite" c:type="GstVideoChromaSite"/>
           </parameter>
           <parameter name="flags" transfer-ownership="none">
-            <doc xml:space="preserve">#GstVideoChromaFlags</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-chroma.c"
+                 line="933">#GstVideoChromaFlags</doc>
             <type name="VideoChromaFlags" c:type="GstVideoChromaFlags"/>
           </parameter>
           <parameter name="format" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstVideoFormat</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-chroma.c"
+                 line="934">the #GstVideoFormat</doc>
             <type name="VideoFormat" c:type="GstVideoFormat"/>
           </parameter>
           <parameter name="h_factor" transfer-ownership="none">
-            <doc xml:space="preserve">horizontal resampling factor</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-chroma.c"
+                 line="935">horizontal resampling factor</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="v_factor" transfer-ownership="none">
-            <doc xml:space="preserve">vertical resampling factor</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-chroma.c"
+                 line="936">vertical resampling factor</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
         </parameters>
@@ -2985,60 +6967,80 @@ performed.</doc>
               glib:type-name="GstVideoChromaSite"
               glib:get-type="gst_video_chroma_site_get_type"
               c:type="GstVideoChromaSite">
-      <doc xml:space="preserve">Various Chroma sitings.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-chroma.h"
+           line="28">Various Chroma sitings.</doc>
       <member name="unknown"
               value="0"
               c:identifier="GST_VIDEO_CHROMA_SITE_UNKNOWN"
               glib:nick="unknown">
-        <doc xml:space="preserve">unknown cositing</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-chroma.h"
+             line="30">unknown cositing</doc>
       </member>
       <member name="none"
               value="1"
               c:identifier="GST_VIDEO_CHROMA_SITE_NONE"
               glib:nick="none">
-        <doc xml:space="preserve">no cositing</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-chroma.h"
+             line="31">no cositing</doc>
       </member>
       <member name="h_cosited"
               value="2"
               c:identifier="GST_VIDEO_CHROMA_SITE_H_COSITED"
               glib:nick="h-cosited">
-        <doc xml:space="preserve">chroma is horizontally cosited</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-chroma.h"
+             line="32">chroma is horizontally cosited</doc>
       </member>
       <member name="v_cosited"
               value="4"
               c:identifier="GST_VIDEO_CHROMA_SITE_V_COSITED"
               glib:nick="v-cosited">
-        <doc xml:space="preserve">chroma is vertically cosited</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-chroma.h"
+             line="33">chroma is vertically cosited</doc>
       </member>
       <member name="alt_line"
               value="8"
               c:identifier="GST_VIDEO_CHROMA_SITE_ALT_LINE"
               glib:nick="alt-line">
-        <doc xml:space="preserve">choma samples are sited on alternate lines</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-chroma.h"
+             line="34">choma samples are sited on alternate lines</doc>
       </member>
       <member name="cosited"
               value="6"
               c:identifier="GST_VIDEO_CHROMA_SITE_COSITED"
               glib:nick="cosited">
-        <doc xml:space="preserve">chroma samples cosited with luma samples</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-chroma.h"
+             line="35">chroma samples cosited with luma samples</doc>
       </member>
       <member name="jpeg"
               value="1"
               c:identifier="GST_VIDEO_CHROMA_SITE_JPEG"
               glib:nick="jpeg">
-        <doc xml:space="preserve">jpeg style cositing, also for mpeg1 and mjpeg</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-chroma.h"
+             line="36">jpeg style cositing, also for mpeg1 and mjpeg</doc>
       </member>
       <member name="mpeg2"
               value="2"
               c:identifier="GST_VIDEO_CHROMA_SITE_MPEG2"
               glib:nick="mpeg2">
-        <doc xml:space="preserve">mpeg2 style cositing</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-chroma.h"
+             line="37">mpeg2 style cositing</doc>
       </member>
       <member name="dv"
               value="14"
               c:identifier="GST_VIDEO_CHROMA_SITE_DV"
               glib:nick="dv">
-        <doc xml:space="preserve">DV style cositing</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-chroma.h"
+             line="38">DV style cositing</doc>
       </member>
     </bitfield>
     <record name="VideoCodecFrame"
@@ -3046,8 +7048,12 @@ performed.</doc>
             glib:type-name="GstVideoCodecFrame"
             glib:get-type="gst_video_codec_frame_get_type"
             c:symbol-prefix="video_codec_frame">
-      <doc xml:space="preserve">A #GstVideoCodecFrame represents a video frame both in raw and
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/gstvideoutils.h"
+           line="202">A #GstVideoCodecFrame represents a video frame both in raw and
 encoded form.</doc>
+      <source-position filename="gst-libs/gst/video/gstvideoutils.h"
+                       line="269"/>
       <field name="ref_count" readable="0" private="1">
         <type name="gint" c:type="gint"/>
       </field>
@@ -3055,7 +7061,9 @@ encoded form.</doc>
         <type name="guint32" c:type="guint32"/>
       </field>
       <field name="system_frame_number" writable="1">
-        <doc xml:space="preserve">Unique identifier for the frame. Use this if you need
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideoutils.h"
+             line="207">Unique identifier for the frame. Use this if you need
       to get hold of the frame later (like when data is being decoded).
       Typical usage in decoders is to set this on the opaque value provided
       to the library and get back the frame using gst_video_decoder_get_frame()</doc>
@@ -3068,29 +7076,41 @@ encoded form.</doc>
         <type name="guint32" c:type="guint32"/>
       </field>
       <field name="dts" writable="1">
-        <doc xml:space="preserve">Decoding timestamp</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideoutils.h"
+             line="205">Decoding timestamp</doc>
         <type name="Gst.ClockTime" c:type="GstClockTime"/>
       </field>
       <field name="pts" writable="1">
-        <doc xml:space="preserve">Presentation timestamp</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideoutils.h"
+             line="204">Presentation timestamp</doc>
         <type name="Gst.ClockTime" c:type="GstClockTime"/>
       </field>
       <field name="duration" writable="1">
-        <doc xml:space="preserve">Duration of the frame</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideoutils.h"
+             line="206">Duration of the frame</doc>
         <type name="Gst.ClockTime" c:type="GstClockTime"/>
       </field>
       <field name="distance_from_sync" writable="1">
-        <doc xml:space="preserve">Distance in frames from the last synchronization point.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideoutils.h"
+             line="211">Distance in frames from the last synchronization point.</doc>
         <type name="gint" c:type="int"/>
       </field>
       <field name="input_buffer" writable="1">
-        <doc xml:space="preserve">the input #GstBuffer that created this frame. The buffer is owned
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideoutils.h"
+             line="212">the input #GstBuffer that created this frame. The buffer is owned
           by the frame and references to the frame instead of the buffer should
           be kept.</doc>
         <type name="Gst.Buffer" c:type="GstBuffer*"/>
       </field>
       <field name="output_buffer" writable="1">
-        <doc xml:space="preserve">the output #GstBuffer. Implementations should set this either
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideoutils.h"
+             line="215">the output #GstBuffer. Implementations should set this either
           directly, or by using the
           @gst_video_decoder_allocate_output_frame() or
           @gst_video_decoder_allocate_output_buffer() methods. The buffer is
@@ -3099,7 +7119,9 @@ encoded form.</doc>
         <type name="Gst.Buffer" c:type="GstBuffer*"/>
       </field>
       <field name="deadline" writable="1">
-        <doc xml:space="preserve">Running time when the frame will be used.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideoutils.h"
+             line="221">Running time when the frame will be used.</doc>
         <type name="Gst.ClockTime" c:type="GstClockTime"/>
       </field>
       <field name="events" readable="0" private="1">
@@ -3114,114 +7136,165 @@ encoded form.</doc>
         <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
       </field>
       <union name="abidata" c:type="abidata">
+        <source-position filename="gst-libs/gst/video/gstvideoutils.h"
+                         line="268"/>
         <record name="ABI" c:type="ABI">
+          <source-position filename="gst-libs/gst/video/gstvideoutils.h"
+                           line="266"/>
           <field name="ts" writable="1">
             <type name="Gst.ClockTime" c:type="GstClockTime"/>
           </field>
           <field name="ts2" writable="1">
             <type name="Gst.ClockTime" c:type="GstClockTime"/>
           </field>
+          <field name="num_subframes" writable="1">
+            <type name="guint" c:type="guint"/>
+          </field>
         </record>
         <field name="padding" writable="1">
-          <array zero-terminated="0" c:type="gpointer" fixed-size="20">
+          <array zero-terminated="0" fixed-size="20">
             <type name="gpointer" c:type="gpointer"/>
           </array>
         </field>
       </union>
       <method name="get_user_data"
               c:identifier="gst_video_codec_frame_get_user_data">
-        <doc xml:space="preserve">Gets private data set on the frame by the subclass via
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideoutils.c"
+             line="87">Gets private data set on the frame by the subclass via
 gst_video_codec_frame_set_user_data() previously.</doc>
+        <source-position filename="gst-libs/gst/video/gstvideoutils.h"
+                         line="300"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">The previously set user_data</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideoutils.c"
+               line="94">The previously set user_data</doc>
           <type name="gpointer" c:type="gpointer"/>
         </return-value>
         <parameters>
           <instance-parameter name="frame" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoCodecFrame</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideoutils.c"
+                 line="89">a #GstVideoCodecFrame</doc>
             <type name="VideoCodecFrame" c:type="GstVideoCodecFrame*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="ref" c:identifier="gst_video_codec_frame_ref">
-        <doc xml:space="preserve">Increases the refcount of the given frame by one.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideoutils.c"
+             line="102">Increases the refcount of the given frame by one.</doc>
+        <source-position filename="gst-libs/gst/video/gstvideoutils.h"
+                         line="289"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">@buf</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideoutils.c"
+               line="108">@buf</doc>
           <type name="VideoCodecFrame" c:type="GstVideoCodecFrame*"/>
         </return-value>
         <parameters>
           <instance-parameter name="frame" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoCodecFrame</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideoutils.c"
+                 line="104">a #GstVideoCodecFrame</doc>
             <type name="VideoCodecFrame" c:type="GstVideoCodecFrame*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="set_user_data"
               c:identifier="gst_video_codec_frame_set_user_data">
-        <doc xml:space="preserve">Sets @user_data on the frame and the #GDestroyNotify that will be called when
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideoutils.c"
+             line="64">Sets @user_data on the frame and the #GDestroyNotify that will be called when
 the frame is freed. Allows to attach private data by the subclass to frames.
 
 If a @user_data was previously set, then the previous set @notify will be called
 before the @user_data is replaced.</doc>
+        <source-position filename="gst-libs/gst/video/gstvideoutils.h"
+                         line="295"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="frame" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoCodecFrame</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideoutils.c"
+                 line="66">a #GstVideoCodecFrame</doc>
             <type name="VideoCodecFrame" c:type="GstVideoCodecFrame*"/>
           </instance-parameter>
           <parameter name="user_data"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">private data</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideoutils.c"
+                 line="67">private data</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
           <parameter name="notify"
                      transfer-ownership="none"
                      scope="async"
                      closure="0">
-            <doc xml:space="preserve">a #GDestroyNotify</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideoutils.c"
+                 line="68">a #GDestroyNotify</doc>
             <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
           </parameter>
         </parameters>
       </method>
       <method name="unref" c:identifier="gst_video_codec_frame_unref">
-        <doc xml:space="preserve">Decreases the refcount of the frame. If the refcount reaches 0, the frame
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideoutils.c"
+             line="122">Decreases the refcount of the frame. If the refcount reaches 0, the frame
 will be freed.</doc>
+        <source-position filename="gst-libs/gst/video/gstvideoutils.h"
+                         line="292"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="frame" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoCodecFrame</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideoutils.c"
+                 line="124">a #GstVideoCodecFrame</doc>
             <type name="VideoCodecFrame" c:type="GstVideoCodecFrame*"/>
           </instance-parameter>
         </parameters>
       </method>
     </record>
     <bitfield name="VideoCodecFrameFlags" c:type="GstVideoCodecFrameFlags">
-      <doc xml:space="preserve">Flags for #GstVideoCodecFrame</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/gstvideoutils.h"
+           line="79">Flags for #GstVideoCodecFrame</doc>
+      <source-position filename="gst-libs/gst/video/gstvideoutils.h"
+                       line="94"/>
       <member name="decode_only"
               value="1"
               c:identifier="GST_VIDEO_CODEC_FRAME_FLAG_DECODE_ONLY">
-        <doc xml:space="preserve">is the frame only meant to be decoded</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideoutils.h"
+             line="81">is the frame only meant to be decoded</doc>
       </member>
       <member name="sync_point"
               value="2"
               c:identifier="GST_VIDEO_CODEC_FRAME_FLAG_SYNC_POINT">
-        <doc xml:space="preserve">is the frame a synchronization point (keyframe)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideoutils.h"
+             line="82">is the frame a synchronization point (keyframe)</doc>
       </member>
       <member name="force_keyframe"
               value="4"
               c:identifier="GST_VIDEO_CODEC_FRAME_FLAG_FORCE_KEYFRAME">
-        <doc xml:space="preserve">should the output frame be made a keyframe</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideoutils.h"
+             line="83">should the output frame be made a keyframe</doc>
       </member>
       <member name="force_keyframe_headers"
               value="8"
               c:identifier="GST_VIDEO_CODEC_FRAME_FLAG_FORCE_KEYFRAME_HEADERS">
-        <doc xml:space="preserve">should the encoder output stream headers</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideoutils.h"
+             line="84">should the encoder output stream headers</doc>
       </member>
     </bitfield>
     <record name="VideoCodecState"
@@ -3229,7 +7302,9 @@ will be freed.</doc>
             glib:type-name="GstVideoCodecState"
             glib:get-type="gst_video_codec_state_get_type"
             c:symbol-prefix="video_codec_state">
-      <doc xml:space="preserve">Structure representing the state of an incoming or outgoing video
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/gstvideoutils.h"
+           line="42">Structure representing the state of an incoming or outgoing video
 stream for encoders and decoders.
 
 Decoders and encoders will receive such a state through their
@@ -3238,54 +7313,78 @@ respective @set_format vmethods.
 Decoders and encoders can set the downstream state, by using the
 @gst_video_decoder_set_output_state() or
 @gst_video_encoder_set_output_state() methods.</doc>
+      <source-position filename="gst-libs/gst/video/gstvideoutils.h"
+                       line="77"/>
       <field name="ref_count" readable="0" private="1">
         <type name="gint" c:type="gint"/>
       </field>
       <field name="info" writable="1">
-        <doc xml:space="preserve">The #GstVideoInfo describing the stream</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideoutils.h"
+             line="44">The #GstVideoInfo describing the stream</doc>
         <type name="VideoInfo" c:type="GstVideoInfo"/>
       </field>
       <field name="caps" writable="1">
-        <doc xml:space="preserve">The #GstCaps used in the caps negotiation of the pad.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideoutils.h"
+             line="45">The #GstCaps used in the caps negotiation of the pad.</doc>
         <type name="Gst.Caps" c:type="GstCaps*"/>
       </field>
       <field name="codec_data" writable="1">
-        <doc xml:space="preserve">a #GstBuffer corresponding to the
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideoutils.h"
+             line="46">a #GstBuffer corresponding to the
     'codec_data' field of a stream, or NULL.</doc>
         <type name="Gst.Buffer" c:type="GstBuffer*"/>
       </field>
       <field name="allocation_caps" writable="1">
-        <doc xml:space="preserve">The #GstCaps for allocation query and pool
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideoutils.h"
+             line="48">The #GstCaps for allocation query and pool
     negotiation. Since: 1.10</doc>
         <type name="Gst.Caps" c:type="GstCaps*"/>
       </field>
       <field name="padding" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="19">
+        <array zero-terminated="0" fixed-size="19">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
       <method name="ref" c:identifier="gst_video_codec_state_ref">
-        <doc xml:space="preserve">Increases the refcount of the given state by one.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideoutils.c"
+             line="143">Increases the refcount of the given state by one.</doc>
+        <source-position filename="gst-libs/gst/video/gstvideoutils.h"
+                         line="277"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">@buf</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideoutils.c"
+               line="149">@buf</doc>
           <type name="VideoCodecState" c:type="GstVideoCodecState*"/>
         </return-value>
         <parameters>
           <instance-parameter name="state" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoCodecState</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideoutils.c"
+                 line="145">a #GstVideoCodecState</doc>
             <type name="VideoCodecState" c:type="GstVideoCodecState*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="unref" c:identifier="gst_video_codec_state_unref">
-        <doc xml:space="preserve">Decreases the refcount of the state. If the refcount reaches 0, the state
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideoutils.c"
+             line="177">Decreases the refcount of the state. If the refcount reaches 0, the state
 will be freed.</doc>
+        <source-position filename="gst-libs/gst/video/gstvideoutils.h"
+                         line="280"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="state" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoCodecState</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideoutils.c"
+                 line="179">a #GstVideoCodecState</doc>
             <type name="VideoCodecState" c:type="GstVideoCodecState*"/>
           </instance-parameter>
         </parameters>
@@ -3295,54 +7394,99 @@ will be freed.</doc>
                  glib:type-name="GstVideoColorMatrix"
                  glib:get-type="gst_video_color_matrix_get_type"
                  c:type="GstVideoColorMatrix">
-      <doc xml:space="preserve">The color matrix is used to convert between Y'PbPr and
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-color.h"
+           line="45">The color matrix is used to convert between Y'PbPr and
 non-linear RGB (R'G'B')</doc>
       <member name="unknown"
               value="0"
               c:identifier="GST_VIDEO_COLOR_MATRIX_UNKNOWN"
               glib:nick="unknown">
-        <doc xml:space="preserve">unknown matrix</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-color.h"
+             line="47">unknown matrix</doc>
       </member>
       <member name="rgb"
               value="1"
               c:identifier="GST_VIDEO_COLOR_MATRIX_RGB"
               glib:nick="rgb">
-        <doc xml:space="preserve">identity matrix</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-color.h"
+             line="48">identity matrix</doc>
       </member>
       <member name="fcc"
               value="2"
               c:identifier="GST_VIDEO_COLOR_MATRIX_FCC"
               glib:nick="fcc">
-        <doc xml:space="preserve">FCC color matrix</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-color.h"
+             line="49">FCC color matrix</doc>
       </member>
       <member name="bt709"
               value="3"
               c:identifier="GST_VIDEO_COLOR_MATRIX_BT709"
               glib:nick="bt709">
-        <doc xml:space="preserve">ITU-R BT.709 color matrix</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-color.h"
+             line="50">ITU-R BT.709 color matrix</doc>
       </member>
       <member name="bt601"
               value="4"
               c:identifier="GST_VIDEO_COLOR_MATRIX_BT601"
               glib:nick="bt601">
-        <doc xml:space="preserve">ITU-R BT.601 color matrix</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-color.h"
+             line="51">ITU-R BT.601 color matrix</doc>
       </member>
       <member name="smpte240m"
               value="5"
               c:identifier="GST_VIDEO_COLOR_MATRIX_SMPTE240M"
               glib:nick="smpte240m">
-        <doc xml:space="preserve">SMPTE 240M color matrix</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-color.h"
+             line="52">SMPTE 240M color matrix</doc>
       </member>
       <member name="bt2020"
               value="6"
               c:identifier="GST_VIDEO_COLOR_MATRIX_BT2020"
               glib:nick="bt2020">
-        <doc xml:space="preserve">ITU-R BT.2020 color matrix. Since: 1.6</doc>
-      </member>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-color.h"
+             line="53">ITU-R BT.2020 color matrix. Since: 1.6</doc>
+      </member>
+      <function name="from_iso"
+                c:identifier="gst_video_color_matrix_from_iso"
+                version="1.18">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-color.c"
+             line="765">Converts the @value to the #GstVideoColorMatrix
+The matrix coefficients (MatrixCoefficients) value is
+defined by "ISO/IEC 23001-8 Section 7.3 Table 4"
+and "ITU-T H.273 Table 4".
+"H.264 Table E-5" and "H.265 Table E.5" share the identical values.</doc>
+        <source-position filename="gst-libs/gst/video/video-color.h"
+                         line="260"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-color.c"
+               line="775">the matched #GstVideoColorMatrix</doc>
+          <type name="VideoColorMatrix" c:type="GstVideoColorMatrix"/>
+        </return-value>
+        <parameters>
+          <parameter name="value" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-color.c"
+                 line="767">a ITU-T H.273 matrix coefficients value</doc>
+            <type name="guint" c:type="guint"/>
+          </parameter>
+        </parameters>
+      </function>
       <function name="get_Kr_Kb"
                 c:identifier="gst_video_color_matrix_get_Kr_Kb"
                 version="1.6">
-        <doc xml:space="preserve">Get the coefficients used to convert between Y'PbPr and R'G'B' using @matrix.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-color.c"
+             line="322">Get the coefficients used to convert between Y'PbPr and R'G'B' using @matrix.
 
 When:
 
@@ -3366,129 +7510,253 @@ and the other way around:
   G' = Y' - Cb*2*(1-Kb)*Kb/(1-Kr-Kb) - Cr*2*(1-Kr)*Kr/(1-Kr-Kb)
   B' = Y' + Cb*2*(1-Kb)
 ]|</doc>
+        <source-position filename="gst-libs/gst/video/video-color.h"
+                         line="69"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">TRUE if @matrix was a YUV color format and @Kr and @Kb contain valid
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-color.c"
+               line="353">TRUE if @matrix was a YUV color format and @Kr and @Kb contain valid
    values.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <parameter name="matrix" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoColorMatrix</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-color.c"
+                 line="324">a #GstVideoColorMatrix</doc>
             <type name="VideoColorMatrix" c:type="GstVideoColorMatrix"/>
           </parameter>
           <parameter name="Kr"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">result red channel coefficient</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-color.c"
+                 line="325">result red channel coefficient</doc>
             <type name="gdouble" c:type="gdouble*"/>
           </parameter>
           <parameter name="Kb"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">result blue channel coefficient</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-color.c"
+                 line="326">result blue channel coefficient</doc>
             <type name="gdouble" c:type="gdouble*"/>
           </parameter>
         </parameters>
       </function>
+      <function name="to_iso"
+                c:identifier="gst_video_color_matrix_to_iso"
+                version="1.18">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-color.c"
+             line="634">Converts #GstVideoColorMatrix to the "matrix coefficients"
+(MatrixCoefficients) value defined by "ISO/IEC 23001-8 Section 7.3 Table 4"
+and "ITU-T H.273 Table 4".
+"H.264 Table E-5" and "H.265 Table E.5" share the identical values.</doc>
+        <source-position filename="gst-libs/gst/video/video-color.h"
+                         line="251"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-color.c"
+               line="643">The value of ISO/IEC 23001-8 matrix coefficients.</doc>
+          <type name="guint" c:type="guint"/>
+        </return-value>
+        <parameters>
+          <parameter name="matrix" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-color.c"
+                 line="636">a #GstVideoColorMatrix</doc>
+            <type name="VideoColorMatrix" c:type="GstVideoColorMatrix"/>
+          </parameter>
+        </parameters>
+      </function>
     </enumeration>
     <enumeration name="VideoColorPrimaries"
                  glib:type-name="GstVideoColorPrimaries"
                  glib:get-type="gst_video_color_primaries_get_type"
                  c:type="GstVideoColorPrimaries">
-      <doc xml:space="preserve">The color primaries define the how to transform linear RGB values to and from
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-color.h"
+           line="132">The color primaries define the how to transform linear RGB values to and from
 the CIE XYZ colorspace.</doc>
       <member name="unknown"
               value="0"
               c:identifier="GST_VIDEO_COLOR_PRIMARIES_UNKNOWN"
               glib:nick="unknown">
-        <doc xml:space="preserve">unknown color primaries</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-color.h"
+             line="134">unknown color primaries</doc>
       </member>
       <member name="bt709"
               value="1"
               c:identifier="GST_VIDEO_COLOR_PRIMARIES_BT709"
               glib:nick="bt709">
-        <doc xml:space="preserve">BT709 primaries</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-color.h"
+             line="135">BT709 primaries</doc>
       </member>
       <member name="bt470m"
               value="2"
               c:identifier="GST_VIDEO_COLOR_PRIMARIES_BT470M"
               glib:nick="bt470m">
-        <doc xml:space="preserve">BT470M primaries</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-color.h"
+             line="136">BT470M primaries</doc>
       </member>
       <member name="bt470bg"
               value="3"
               c:identifier="GST_VIDEO_COLOR_PRIMARIES_BT470BG"
               glib:nick="bt470bg">
-        <doc xml:space="preserve">BT470BG primaries</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-color.h"
+             line="137">BT470BG primaries</doc>
       </member>
       <member name="smpte170m"
               value="4"
               c:identifier="GST_VIDEO_COLOR_PRIMARIES_SMPTE170M"
               glib:nick="smpte170m">
-        <doc xml:space="preserve">SMPTE170M primaries</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-color.h"
+             line="138">SMPTE170M primaries</doc>
       </member>
       <member name="smpte240m"
               value="5"
               c:identifier="GST_VIDEO_COLOR_PRIMARIES_SMPTE240M"
               glib:nick="smpte240m">
-        <doc xml:space="preserve">SMPTE240M primaries</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-color.h"
+             line="139">SMPTE240M primaries</doc>
       </member>
       <member name="film"
               value="6"
               c:identifier="GST_VIDEO_COLOR_PRIMARIES_FILM"
               glib:nick="film">
-        <doc xml:space="preserve">Generic film</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-color.h"
+             line="140">Generic film</doc>
       </member>
       <member name="bt2020"
               value="7"
               c:identifier="GST_VIDEO_COLOR_PRIMARIES_BT2020"
               glib:nick="bt2020">
-        <doc xml:space="preserve">BT2020 primaries. Since: 1.6</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-color.h"
+             line="141">BT2020 primaries. Since: 1.6</doc>
       </member>
       <member name="adobergb"
               value="8"
               c:identifier="GST_VIDEO_COLOR_PRIMARIES_ADOBERGB"
               glib:nick="adobergb">
-        <doc xml:space="preserve">Adobe RGB primaries. Since: 1.8</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-color.h"
+             line="142">Adobe RGB primaries. Since: 1.8</doc>
       </member>
       <member name="smptest428"
               value="9"
               c:identifier="GST_VIDEO_COLOR_PRIMARIES_SMPTEST428"
               glib:nick="smptest428">
-        <doc xml:space="preserve">SMPTE ST 428 primaries. Since: 1.16</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-color.h"
+             line="143">SMPTE ST 428 primaries. Since: 1.16</doc>
       </member>
       <member name="smpterp431"
               value="10"
               c:identifier="GST_VIDEO_COLOR_PRIMARIES_SMPTERP431"
               glib:nick="smpterp431">
-        <doc xml:space="preserve">SMPTE RP 431 primaries. Since: 1.16</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-color.h"
+             line="144">SMPTE RP 431 primaries. Since: 1.16</doc>
       </member>
       <member name="smpteeg432"
               value="11"
               c:identifier="GST_VIDEO_COLOR_PRIMARIES_SMPTEEG432"
               glib:nick="smpteeg432">
-        <doc xml:space="preserve">SMPTE EG 432 primaries. Since: 1.16</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-color.h"
+             line="145">SMPTE EG 432 primaries. Since: 1.16</doc>
       </member>
       <member name="ebu3213"
               value="12"
               c:identifier="GST_VIDEO_COLOR_PRIMARIES_EBU3213"
               glib:nick="ebu3213">
-        <doc xml:space="preserve">EBU 3213 primaries. Since: 1.16</doc>
-      </member>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-color.h"
+             line="146">EBU 3213 primaries. Since: 1.16</doc>
+      </member>
+      <function name="from_iso"
+                c:identifier="gst_video_color_primaries_from_iso"
+                version="1.18">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-color.c"
+             line="851">Converts the @value to the #GstVideoColorPrimaries
+The colour primaries (ColourPrimaries) value is
+defined by "ISO/IEC 23001-8 Section 7.1 Table 2" and "ITU-T H.273 Table 2".
+"H.264 Table E-3" and "H.265 Table E.3" share the identical values.</doc>
+        <source-position filename="gst-libs/gst/video/video-color.h"
+                         line="266"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-color.c"
+               line="860">the matched #GstVideoColorPrimaries</doc>
+          <type name="VideoColorPrimaries" c:type="GstVideoColorPrimaries"/>
+        </return-value>
+        <parameters>
+          <parameter name="value" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-color.c"
+                 line="853">a ITU-T H.273 colour primaries value</doc>
+            <type name="guint" c:type="guint"/>
+          </parameter>
+        </parameters>
+      </function>
       <function name="get_info"
                 c:identifier="gst_video_color_primaries_get_info"
                 version="1.6">
-        <doc xml:space="preserve">Get information about the chromaticity coordinates of @primaries.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstVideoColorPrimariesInfo for @primaries.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-color.c"
+             line="303">Get information about the chromaticity coordinates of @primaries.</doc>
+        <source-position filename="gst-libs/gst/video/video-color.h"
+                         line="195"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-color.c"
+               line="309">a #GstVideoColorPrimariesInfo for @primaries.</doc>
           <type name="VideoColorPrimariesInfo"
                 c:type="const GstVideoColorPrimariesInfo*"/>
         </return-value>
         <parameters>
           <parameter name="primaries" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoColorPrimaries</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-color.c"
+                 line="305">a #GstVideoColorPrimaries</doc>
+            <type name="VideoColorPrimaries" c:type="GstVideoColorPrimaries"/>
+          </parameter>
+        </parameters>
+      </function>
+      <function name="to_iso"
+                c:identifier="gst_video_color_primaries_to_iso"
+                version="1.18">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-color.c"
+             line="719">Converts #GstVideoColorPrimaries to the "colour primaries" (ColourPrimaries)
+value defined by "ISO/IEC 23001-8 Section 7.1 Table 2"
+and "ITU-T H.273 Table 2".
+"H.264 Table E-3" and "H.265 Table E.3" share the identical values.</doc>
+        <source-position filename="gst-libs/gst/video/video-color.h"
+                         line="257"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-color.c"
+               line="728">The value of ISO/IEC 23001-8 colour primaries.</doc>
+          <type name="guint" c:type="guint"/>
+        </return-value>
+        <parameters>
+          <parameter name="primaries" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-color.c"
+                 line="721">a #GstVideoColorPrimaries</doc>
             <type name="VideoColorPrimaries" c:type="GstVideoColorPrimaries"/>
           </parameter>
         </parameters>
@@ -3497,43 +7765,64 @@ the CIE XYZ colorspace.</doc>
     <record name="VideoColorPrimariesInfo"
             c:type="GstVideoColorPrimariesInfo"
             version="1.6">
-      <doc xml:space="preserve">Structure describing the chromaticity coordinates of an RGB system. These
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-color.h"
+           line="167">Structure describing the chromaticity coordinates of an RGB system. These
 values can be used to construct a matrix to transform RGB to and from the
 XYZ colorspace.</doc>
+      <source-position filename="gst-libs/gst/video/video-color.h" line="191"/>
       <field name="primaries" writable="1">
-        <doc xml:space="preserve">a #GstVideoColorPrimaries</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-color.h"
+             line="169">a #GstVideoColorPrimaries</doc>
         <type name="VideoColorPrimaries" c:type="GstVideoColorPrimaries"/>
       </field>
       <field name="Wx" writable="1">
-        <doc xml:space="preserve">reference white x coordinate</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-color.h"
+             line="170">reference white x coordinate</doc>
         <type name="gdouble" c:type="gdouble"/>
       </field>
       <field name="Wy" writable="1">
-        <doc xml:space="preserve">reference white y coordinate</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-color.h"
+             line="171">reference white y coordinate</doc>
         <type name="gdouble" c:type="gdouble"/>
       </field>
       <field name="Rx" writable="1">
-        <doc xml:space="preserve">red x coordinate</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-color.h"
+             line="172">red x coordinate</doc>
         <type name="gdouble" c:type="gdouble"/>
       </field>
       <field name="Ry" writable="1">
-        <doc xml:space="preserve">red y coordinate</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-color.h"
+             line="173">red y coordinate</doc>
         <type name="gdouble" c:type="gdouble"/>
       </field>
       <field name="Gx" writable="1">
-        <doc xml:space="preserve">green x coordinate</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-color.h"
+             line="174">green x coordinate</doc>
         <type name="gdouble" c:type="gdouble"/>
       </field>
       <field name="Gy" writable="1">
-        <doc xml:space="preserve">green y coordinate</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-color.h"
+             line="175">green y coordinate</doc>
         <type name="gdouble" c:type="gdouble"/>
       </field>
       <field name="Bx" writable="1">
-        <doc xml:space="preserve">blue x coordinate</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-color.h"
+             line="176">blue x coordinate</doc>
         <type name="gdouble" c:type="gdouble"/>
       </field>
       <field name="By" writable="1">
-        <doc xml:space="preserve">blue y coordinate</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-color.h"
+             line="177">blue y coordinate</doc>
         <type name="gdouble" c:type="gdouble"/>
       </field>
     </record>
@@ -3541,52 +7830,70 @@ XYZ colorspace.</doc>
                  glib:type-name="GstVideoColorRange"
                  glib:get-type="gst_video_color_range_get_type"
                  c:type="GstVideoColorRange">
-      <doc xml:space="preserve">Possible color range values. These constants are defined for 8 bit color
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-color.h"
+           line="29">Possible color range values. These constants are defined for 8 bit color
 values and can be scaled for other bit depths.</doc>
       <member name="unknown"
               value="0"
               c:identifier="GST_VIDEO_COLOR_RANGE_UNKNOWN"
               glib:nick="unknown">
-        <doc xml:space="preserve">unknown range</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-color.h"
+             line="31">unknown range</doc>
       </member>
       <member name="0_255"
               value="1"
               c:identifier="GST_VIDEO_COLOR_RANGE_0_255"
               glib:nick="0-255">
-        <doc xml:space="preserve">[0..255] for 8 bit components</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-color.h"
+             line="32">[0..255] for 8 bit components</doc>
       </member>
       <member name="16_235"
               value="2"
               c:identifier="GST_VIDEO_COLOR_RANGE_16_235"
               glib:nick="16-235">
-        <doc xml:space="preserve">[16..235] for 8 bit components. Chroma has
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-color.h"
+             line="33">[16..235] for 8 bit components. Chroma has
                 [16..240] range.</doc>
       </member>
       <function name="offsets" c:identifier="gst_video_color_range_offsets">
-        <doc xml:space="preserve">Compute the offset and scale values for each component of @info. For each
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-color.c"
+             line="188">Compute the offset and scale values for each component of @info. For each
 component, (c[i] - offset[i]) / scale[i] will scale the component c[i] to the
 range [0.0 .. 1.0].
 
 The reverse operation (c[i] * scale[i]) + offset[i] can be used to convert
 the component values in range [0.0 .. 1.0] back to their representation in
 @info and @range.</doc>
+        <source-position filename="gst-libs/gst/video/video-color.h"
+                         line="240"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <parameter name="range" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoColorRange</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-color.c"
+                 line="190">a #GstVideoColorRange</doc>
             <type name="VideoColorRange" c:type="GstVideoColorRange"/>
           </parameter>
           <parameter name="info" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoFormatInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-color.c"
+                 line="191">a #GstVideoFormatInfo</doc>
             <type name="VideoFormatInfo" c:type="const GstVideoFormatInfo*"/>
           </parameter>
           <parameter name="offset"
                      direction="out"
                      caller-allocates="1"
                      transfer-ownership="none">
-            <doc xml:space="preserve">output offsets</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-color.c"
+                 line="192">output offsets</doc>
             <array zero-terminated="0" c:type="gint*" fixed-size="4">
               <type name="gint" c:type="gint"/>
             </array>
@@ -3595,7 +7902,9 @@ the component values in range [0.0 .. 1.0] back to their representation in
                      direction="out"
                      caller-allocates="1"
                      transfer-ownership="none">
-            <doc xml:space="preserve">output scale</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-color.c"
+                 line="193">output scale</doc>
             <array zero-terminated="0" c:type="gint*" fixed-size="4">
               <type name="gint" c:type="gint"/>
             </array>
@@ -3604,98 +7913,307 @@ the component values in range [0.0 .. 1.0] back to their representation in
       </function>
     </enumeration>
     <record name="VideoColorimetry" c:type="GstVideoColorimetry">
-      <doc xml:space="preserve">Structure describing the color info.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-color.h"
+           line="197">Structure describing the color info.</doc>
+      <source-position filename="gst-libs/gst/video/video-color.h" line="213"/>
       <field name="range" writable="1">
-        <doc xml:space="preserve">the color range. This is the valid range for the samples.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-color.h"
+             line="199">the color range. This is the valid range for the samples.
         It is used to convert the samples to Y'PbPr values.</doc>
         <type name="VideoColorRange" c:type="GstVideoColorRange"/>
       </field>
       <field name="matrix" writable="1">
-        <doc xml:space="preserve">the color matrix. Used to convert between Y'PbPr and
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-color.h"
+             line="201">the color matrix. Used to convert between Y'PbPr and
          non-linear RGB (R'G'B')</doc>
         <type name="VideoColorMatrix" c:type="GstVideoColorMatrix"/>
       </field>
       <field name="transfer" writable="1">
-        <doc xml:space="preserve">the transfer function. used to convert between R'G'B' and RGB</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-color.h"
+             line="203">the transfer function. used to convert between R'G'B' and RGB</doc>
         <type name="VideoTransferFunction" c:type="GstVideoTransferFunction"/>
       </field>
       <field name="primaries" writable="1">
-        <doc xml:space="preserve">color primaries. used to convert between R'G'B' and CIE XYZ</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-color.h"
+             line="204">color primaries. used to convert between R'G'B' and CIE XYZ</doc>
         <type name="VideoColorPrimaries" c:type="GstVideoColorPrimaries"/>
       </field>
       <method name="from_string"
               c:identifier="gst_video_colorimetry_from_string">
-        <doc xml:space="preserve">Parse the colorimetry string and update @cinfo with the parsed
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-color.c"
+             line="102">Parse the colorimetry string and update @cinfo with the parsed
 values.</doc>
+        <source-position filename="gst-libs/gst/video/video-color.h"
+                         line="229"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if @color points to valid colorimetry info.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-color.c"
+               line="110">%TRUE if @color points to valid colorimetry info.</doc>
+          <type name="gboolean" c:type="gboolean"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="cinfo" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-color.c"
+                 line="104">a #GstVideoColorimetry</doc>
+            <type name="VideoColorimetry" c:type="GstVideoColorimetry*"/>
+          </instance-parameter>
+          <parameter name="color" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-color.c"
+                 line="105">a colorimetry string</doc>
+            <type name="utf8" c:type="const gchar*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="is_equal"
+              c:identifier="gst_video_colorimetry_is_equal"
+              version="1.6">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-color.c"
+             line="251">Compare the 2 colorimetry sets for equality</doc>
+        <source-position filename="gst-libs/gst/video/video-color.h"
+                         line="235"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-color.c"
+               line="258">%TRUE if @cinfo and @other are equal.</doc>
+          <type name="gboolean" c:type="gboolean"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="cinfo" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-color.c"
+                 line="253">a #GstVideoColorimetry</doc>
+            <type name="VideoColorimetry" c:type="const GstVideoColorimetry*"/>
+          </instance-parameter>
+          <parameter name="other" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-color.c"
+                 line="254">another #GstVideoColorimetry</doc>
+            <type name="VideoColorimetry" c:type="const GstVideoColorimetry*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="matches" c:identifier="gst_video_colorimetry_matches">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-color.c"
+             line="165">Check if the colorimetry information in @info matches that of the
+string @color.</doc>
+        <source-position filename="gst-libs/gst/video/video-color.h"
+                         line="226"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-color.c"
+               line="173">%TRUE if @color conveys the same colorimetry info as the color
+information in @info.</doc>
+          <type name="gboolean" c:type="gboolean"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="cinfo" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-color.c"
+                 line="167">a #GstVideoInfo</doc>
+            <type name="VideoColorimetry" c:type="const GstVideoColorimetry*"/>
+          </instance-parameter>
+          <parameter name="color" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-color.c"
+                 line="168">a colorimetry string</doc>
+            <type name="utf8" c:type="const gchar*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="to_string" c:identifier="gst_video_colorimetry_to_string">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-color.c"
+             line="139">Make a string representation of @cinfo.</doc>
+        <source-position filename="gst-libs/gst/video/video-color.h"
+                         line="232"/>
+        <return-value transfer-ownership="full" nullable="1">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-color.c"
+               line="145">a string representation of @cinfo
+or %NULL if all the entries of @cinfo are unknown values.</doc>
+          <type name="utf8" c:type="gchar*"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="cinfo" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-color.c"
+                 line="141">a #GstVideoColorimetry</doc>
+            <type name="VideoColorimetry" c:type="const GstVideoColorimetry*"/>
+          </instance-parameter>
+        </parameters>
+      </method>
+    </record>
+    <record name="VideoContentLightLevel"
+            c:type="GstVideoContentLightLevel"
+            version="1.18">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-hdr.h"
+           line="98">Content light level information specified in CEA-861.3, Appendix A.</doc>
+      <source-position filename="gst-libs/gst/video/video-hdr.h" line="116"/>
+      <field name="max_content_light_level" writable="1">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-hdr.h"
+             line="100">the maximum content light level
+  (abbreviated to MaxCLL) in candelas per square meter (cd/m^2 and nit)</doc>
+        <type name="guint16" c:type="guint16"/>
+      </field>
+      <field name="max_frame_average_light_level" writable="1">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-hdr.h"
+             line="102">the maximum frame average light level
+  (abbreviated to MaxFLL) in candelas per square meter (cd/m^2 and nit)</doc>
+        <type name="guint16" c:type="guint16"/>
+      </field>
+      <field name="_gst_reserved" readable="0" private="1">
+        <array zero-terminated="0" fixed-size="4">
+          <type name="gpointer" c:type="gpointer"/>
+        </array>
+      </field>
+      <method name="add_to_caps"
+              c:identifier="gst_video_content_light_level_add_to_caps"
+              version="1.18">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-hdr.c"
+             line="384">Parse @caps and update @linfo</doc>
+        <source-position filename="gst-libs/gst/video/video-hdr.h" line="133"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-hdr.c"
+               line="391">%TRUE if @linfo was successfully set to @caps</doc>
+          <type name="gboolean" c:type="gboolean"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="linfo" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-hdr.c"
+                 line="386">a #GstVideoContentLightLevel</doc>
+            <type name="VideoContentLightLevel"
+                  c:type="const GstVideoContentLightLevel*"/>
+          </instance-parameter>
+          <parameter name="caps" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-hdr.c"
+                 line="387">a #GstCaps</doc>
+            <type name="Gst.Caps" c:type="GstCaps*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="from_caps"
+              c:identifier="gst_video_content_light_level_from_caps"
+              version="1.18">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-hdr.c"
+             line="355">Parse @caps and update @linfo</doc>
+        <source-position filename="gst-libs/gst/video/video-hdr.h" line="129"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-hdr.c"
+               line="362">if @caps has #GstVideoContentLightLevel and could be parsed</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
-          <instance-parameter name="cinfo" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoColorimetry</doc>
-            <type name="VideoColorimetry" c:type="GstVideoColorimetry*"/>
+          <instance-parameter name="linfo" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-hdr.c"
+                 line="357">a #GstVideoContentLightLevel</doc>
+            <type name="VideoContentLightLevel"
+                  c:type="GstVideoContentLightLevel*"/>
           </instance-parameter>
-          <parameter name="color" transfer-ownership="none">
-            <doc xml:space="preserve">a colorimetry string</doc>
-            <type name="utf8" c:type="const gchar*"/>
+          <parameter name="caps" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-hdr.c"
+                 line="358">a #GstCaps</doc>
+            <type name="Gst.Caps" c:type="const GstCaps*"/>
           </parameter>
         </parameters>
       </method>
-      <method name="is_equal"
-              c:identifier="gst_video_colorimetry_is_equal"
-              version="1.6">
-        <doc xml:space="preserve">Compare the 2 colorimetry sets for equality</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if @cinfo and @other are equal.</doc>
+      <method name="from_string"
+              c:identifier="gst_video_content_light_level_from_string"
+              version="1.18">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-hdr.c"
+             line="287">Parse the value of content-light-level caps field and update @minfo
+with the parsed values.</doc>
+        <source-position filename="gst-libs/gst/video/video-hdr.h" line="122"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-hdr.c"
+               line="295">%TRUE if @linfo points to valid #GstVideoContentLightLevel.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
-          <instance-parameter name="cinfo" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoColorimetry</doc>
-            <type name="VideoColorimetry" c:type="const GstVideoColorimetry*"/>
+          <instance-parameter name="linfo" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-hdr.c"
+                 line="289">a #GstVideoContentLightLevel</doc>
+            <type name="VideoContentLightLevel"
+                  c:type="GstVideoContentLightLevel*"/>
           </instance-parameter>
-          <parameter name="other" transfer-ownership="none">
-            <doc xml:space="preserve">another #GstVideoColorimetry</doc>
-            <type name="VideoColorimetry" c:type="const GstVideoColorimetry*"/>
+          <parameter name="level" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-hdr.c"
+                 line="290">a content-light-level string from caps</doc>
+            <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </method>
-      <method name="matches" c:identifier="gst_video_colorimetry_matches">
-        <doc xml:space="preserve">Check if the colorimetry information in @info matches that of the
-string @color.</doc>
+      <method name="init"
+              c:identifier="gst_video_content_light_level_init"
+              version="1.18">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-hdr.c"
+             line="271">Initialize @linfo</doc>
+        <source-position filename="gst-libs/gst/video/video-hdr.h" line="119"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if @color conveys the same colorimetry info as the color
-information in @info.</doc>
-          <type name="gboolean" c:type="gboolean"/>
+          <type name="none" c:type="void"/>
         </return-value>
         <parameters>
-          <instance-parameter name="cinfo" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoInfo</doc>
-            <type name="VideoColorimetry" c:type="const GstVideoColorimetry*"/>
+          <instance-parameter name="linfo" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-hdr.c"
+                 line="273">a #GstVideoContentLightLevel</doc>
+            <type name="VideoContentLightLevel"
+                  c:type="GstVideoContentLightLevel*"/>
           </instance-parameter>
-          <parameter name="color" transfer-ownership="none">
-            <doc xml:space="preserve">a colorimetry string</doc>
-            <type name="utf8" c:type="const gchar*"/>
-          </parameter>
         </parameters>
       </method>
-      <method name="to_string" c:identifier="gst_video_colorimetry_to_string">
-        <doc xml:space="preserve">Make a string representation of @cinfo.</doc>
+      <method name="to_string"
+              c:identifier="gst_video_content_light_level_to_string"
+              version="1.18">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-hdr.c"
+             line="335">Convert @linfo to its string representation.</doc>
+        <source-position filename="gst-libs/gst/video/video-hdr.h" line="126"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a string representation of @cinfo.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-hdr.c"
+               line="341">a string representation of @linfo.</doc>
           <type name="utf8" c:type="gchar*"/>
         </return-value>
         <parameters>
-          <instance-parameter name="cinfo" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoColorimetry</doc>
-            <type name="VideoColorimetry" c:type="const GstVideoColorimetry*"/>
+          <instance-parameter name="linfo" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-hdr.c"
+                 line="337">a #GstVideoContentLightLevel</doc>
+            <type name="VideoContentLightLevel"
+                  c:type="const GstVideoContentLightLevel*"/>
           </instance-parameter>
         </parameters>
       </method>
     </record>
     <callback name="VideoConvertSampleCallback"
               c:type="GstVideoConvertSampleCallback">
+      <source-position filename="gst-libs/gst/video/video.h" line="148"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
@@ -3716,24 +8234,36 @@ information in @info.</doc>
       </parameters>
     </callback>
     <record name="VideoConverter" c:type="GstVideoConverter" disguised="1">
+      <source-position filename="gst-libs/gst/video/video-converter.h"
+                       line="276"/>
       <method name="frame"
               c:identifier="gst_video_converter_frame"
               version="1.6">
-        <doc xml:space="preserve">Convert the pixels of @src into @dest using @convert.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-converter.c"
+             line="2689">Convert the pixels of @src into @dest using @convert.</doc>
+        <source-position filename="gst-libs/gst/video/video-converter.h"
+                         line="293"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="convert" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoConverter</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-converter.c"
+                 line="2691">a #GstVideoConverter</doc>
             <type name="VideoConverter" c:type="GstVideoConverter*"/>
           </instance-parameter>
           <parameter name="src" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoFrame</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-converter.c"
+                 line="2693">a #GstVideoFrame</doc>
             <type name="VideoFrame" c:type="const GstVideoFrame*"/>
           </parameter>
           <parameter name="dest" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoFrame</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-converter.c"
+                 line="2692">a #GstVideoFrame</doc>
             <type name="VideoFrame" c:type="GstVideoFrame*"/>
           </parameter>
         </parameters>
@@ -3741,27 +8271,41 @@ information in @info.</doc>
       <method name="free"
               c:identifier="gst_video_converter_free"
               version="1.6">
-        <doc xml:space="preserve">Free @convert</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-converter.c"
+             line="2523">Free @convert</doc>
+        <source-position filename="gst-libs/gst/video/video-converter.h"
+                         line="284"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="convert" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoConverter</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-converter.c"
+                 line="2525">a #GstVideoConverter</doc>
             <type name="VideoConverter" c:type="GstVideoConverter*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_config" c:identifier="gst_video_converter_get_config">
-        <doc xml:space="preserve">Get the current configuration of @convert.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstStructure that remains valid for as long as @convert is valid
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-converter.c"
+             line="2672">Get the current configuration of @convert.</doc>
+        <source-position filename="gst-libs/gst/video/video-converter.h"
+                         line="290"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-converter.c"
+               line="2678">a #GstStructure that remains valid for as long as @convert is valid
   or until gst_video_converter_set_config() is called.</doc>
           <type name="Gst.Structure" c:type="const GstStructure*"/>
         </return-value>
         <parameters>
           <instance-parameter name="convert" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoConverter</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-converter.c"
+                 line="2674">a #GstVideoConverter</doc>
             <type name="VideoConverter" c:type="GstVideoConverter*"/>
           </instance-parameter>
         </parameters>
@@ -3769,25 +8313,35 @@ information in @info.</doc>
       <method name="set_config"
               c:identifier="gst_video_converter_set_config"
               version="1.6">
-        <doc xml:space="preserve">Set @config as extra configuraion for @convert.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-converter.c"
+             line="2641">Set @config as extra configuration for @convert.
 
 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_video_converter_get_config().
 
-Look at the #GST_VIDEO_CONVERTER_OPT_* fields to check valid configuration
+Look at the `GST_VIDEO_CONVERTER_OPT_*` fields to check valid configuration
 option and values.</doc>
+        <source-position filename="gst-libs/gst/video/video-converter.h"
+                         line="287"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE when @config could be set.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-converter.c"
+               line="2655">%TRUE when @config could be set.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="convert" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoConverter</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-converter.c"
+                 line="2643">a #GstVideoConverter</doc>
             <type name="VideoConverter" c:type="GstVideoConverter*"/>
           </instance-parameter>
           <parameter name="config" transfer-ownership="full">
-            <doc xml:space="preserve">a #GstStructure</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-converter.c"
+                 line="2644">a #GstStructure</doc>
             <type name="Gst.Structure" c:type="GstStructure*"/>
           </parameter>
         </parameters>
@@ -3796,51 +8350,79 @@ option and values.</doc>
                 c:identifier="gst_video_converter_new"
                 version="1.6"
                 introspectable="0">
-        <doc xml:space="preserve">Create a new converter object to convert between @in_info and @out_info
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-converter.c"
+             line="2275">Create a new converter object to convert between @in_info and @out_info
 with @config.</doc>
+        <source-position filename="gst-libs/gst/video/video-converter.h"
+                         line="279"/>
         <return-value>
-          <doc xml:space="preserve">a #GstVideoConverter or %NULL if conversion is not possible.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-converter.c"
+               line="2284">a #GstVideoConverter or %NULL if conversion is not possible.</doc>
           <type name="VideoConverter" c:type="GstVideoConverter*"/>
         </return-value>
         <parameters>
           <parameter name="in_info" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-converter.c"
+                 line="2277">a #GstVideoInfo</doc>
             <type name="VideoInfo" c:type="GstVideoInfo*"/>
           </parameter>
           <parameter name="out_info" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-converter.c"
+                 line="2278">a #GstVideoInfo</doc>
             <type name="VideoInfo" c:type="GstVideoInfo*"/>
           </parameter>
           <parameter name="config" transfer-ownership="full">
-            <doc xml:space="preserve">a #GstStructure with configuration options</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-converter.c"
+                 line="2279">a #GstStructure with configuration options</doc>
             <type name="Gst.Structure" c:type="GstStructure*"/>
           </parameter>
         </parameters>
       </function>
     </record>
     <record name="VideoCropMeta" c:type="GstVideoCropMeta">
-      <doc xml:space="preserve">Extra buffer metadata describing image cropping.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/gstvideometa.h"
+           line="138">Extra buffer metadata describing image cropping.</doc>
+      <source-position filename="gst-libs/gst/video/gstvideometa.h"
+                       line="155"/>
       <field name="meta" writable="1">
-        <doc xml:space="preserve">parent #GstMeta</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideometa.h"
+             line="140">parent #GstMeta</doc>
         <type name="Gst.Meta" c:type="GstMeta"/>
       </field>
       <field name="x" writable="1">
-        <doc xml:space="preserve">the horizontal offset</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideometa.h"
+             line="141">the horizontal offset</doc>
         <type name="guint" c:type="guint"/>
       </field>
       <field name="y" writable="1">
-        <doc xml:space="preserve">the vertical offset</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideometa.h"
+             line="142">the vertical offset</doc>
         <type name="guint" c:type="guint"/>
       </field>
       <field name="width" writable="1">
-        <doc xml:space="preserve">the cropped width</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideometa.h"
+             line="143">the cropped width</doc>
         <type name="guint" c:type="guint"/>
       </field>
       <field name="height" writable="1">
-        <doc xml:space="preserve">the cropped height</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideometa.h"
+             line="144">the cropped height</doc>
         <type name="guint" c:type="guint"/>
       </field>
       <function name="get_info" c:identifier="gst_video_crop_meta_get_info">
+        <source-position filename="gst-libs/gst/video/gstvideometa.h"
+                         line="161"/>
         <return-value transfer-ownership="none">
           <type name="Gst.MetaInfo" c:type="const GstMetaInfo*"/>
         </return-value>
@@ -3854,7 +8436,9 @@ with @config.</doc>
            glib:type-name="GstVideoDecoder"
            glib:get-type="gst_video_decoder_get_type"
            glib:type-struct="VideoDecoderClass">
-      <doc xml:space="preserve">This base class is for video decoders turning encoded data into raw video
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/gstvideodecoder.c"
+           line="25">This base class is for video decoders turning encoded data into raw video
 frames.
 
 The GstVideoDecoder base class and derived subclasses should cooperate as
@@ -3878,20 +8462,20 @@ follows:
 
 ## Data processing
 
-    * The base class gathers input data, and optionally allows subclass
-      to parse this into subsequently manageable chunks, typically
-      corresponding to and referred to as 'frames'.
+  * The base class gathers input data, and optionally allows subclass
+    to parse this into subsequently manageable chunks, typically
+    corresponding to and referred to as 'frames'.
 
-    * Each input frame is provided in turn to the subclass' @handle_frame
-      callback.
-      The ownership of the frame is given to the @handle_frame callback.
+  * Each input frame is provided in turn to the subclass' @handle_frame
+    callback.
+    The ownership of the frame is given to the @handle_frame callback.
 
-    * If codec processing results in decoded data, the subclass should call
-      @gst_video_decoder_finish_frame to have decoded data pushed.
-      downstream. Otherwise, the subclass must call
-      @gst_video_decoder_drop_frame, to allow the base class to do timestamp
-      and offset tracking, and possibly to requeue the frame for a later
-      attempt in the case of reverse playback.
+  * If codec processing results in decoded data, the subclass should call
+    @gst_video_decoder_finish_frame to have decoded data pushed.
+    downstream. Otherwise, the subclass must call
+    @gst_video_decoder_drop_frame, to allow the base class to do timestamp
+    and offset tracking, and possibly to requeue the frame for a later
+    attempt in the case of reverse playback.
 
 ## Shutdown phase
 
@@ -3917,7 +8501,7 @@ follows:
 
 The subclass is responsible for providing pad template caps for
 source and sink pads. The pads need to be named "sink" and "src". It also
-needs to provide information about the ouptput caps, when they are known.
+needs to provide information about the output caps, when they are known.
 This may be when the base class calls the subclass' @set_format function,
 though it might be during decoding, before calling
 @gst_video_decoder_finish_frame. This is done via
@@ -3957,7 +8541,11 @@ The bare minimum that a functional subclass needs to implement is:
 
   * Accept data in @handle_frame and provide decoded results to
      @gst_video_decoder_finish_frame, or call @gst_video_decoder_drop_frame.</doc>
+      <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                       line="342"/>
       <virtual-method name="close">
+        <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                         line="289"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -3968,6 +8556,8 @@ The bare minimum that a functional subclass needs to implement is:
         </parameters>
       </virtual-method>
       <virtual-method name="decide_allocation">
+        <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                         line="319"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -3981,6 +8571,8 @@ The bare minimum that a functional subclass needs to implement is:
         </parameters>
       </virtual-method>
       <virtual-method name="drain">
+        <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                         line="334"/>
         <return-value transfer-ownership="none">
           <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
@@ -3991,6 +8583,8 @@ The bare minimum that a functional subclass needs to implement is:
         </parameters>
       </virtual-method>
       <virtual-method name="finish">
+        <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                         line="306"/>
         <return-value transfer-ownership="none">
           <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
@@ -4001,6 +8595,8 @@ The bare minimum that a functional subclass needs to implement is:
         </parameters>
       </virtual-method>
       <virtual-method name="flush">
+        <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                         line="323"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -4011,6 +8607,8 @@ The bare minimum that a functional subclass needs to implement is:
         </parameters>
       </virtual-method>
       <virtual-method name="getcaps">
+        <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                         line="331"/>
         <return-value transfer-ownership="full">
           <type name="Gst.Caps" c:type="GstCaps*"/>
         </return-value>
@@ -4024,6 +8622,8 @@ The bare minimum that a functional subclass needs to implement is:
         </parameters>
       </virtual-method>
       <virtual-method name="handle_frame">
+        <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                         line="308"/>
         <return-value transfer-ownership="none">
           <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
@@ -4037,21 +8637,31 @@ The bare minimum that a functional subclass needs to implement is:
         </parameters>
       </virtual-method>
       <virtual-method name="negotiate" invoker="negotiate">
-        <doc xml:space="preserve">Negotiate with downstream elements to currently configured #GstVideoCodecState.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideodecoder.c"
+             line="4041">Negotiate with downstream elements to currently configured #GstVideoCodecState.
 Unmark GST_PAD_FLAG_NEED_RECONFIGURE in any case. But mark it again if
 negotiate fails.</doc>
+        <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                         line="317"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the negotiation succeeded, else %FALSE.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideodecoder.c"
+               line="4049">%TRUE if the negotiation succeeded, else %FALSE.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="decoder" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoDecoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideodecoder.c"
+                 line="4043">a #GstVideoDecoder</doc>
             <type name="VideoDecoder" c:type="GstVideoDecoder*"/>
           </instance-parameter>
         </parameters>
       </virtual-method>
       <virtual-method name="open">
+        <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                         line="287"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -4062,6 +8672,8 @@ negotiate fails.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="parse">
+        <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                         line="295"/>
         <return-value transfer-ownership="none">
           <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
@@ -4081,6 +8693,8 @@ negotiate fails.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="propose_allocation">
+        <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                         line="321"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -4094,6 +8708,8 @@ negotiate fails.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="reset">
+        <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                         line="303"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -4107,6 +8723,8 @@ negotiate fails.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="set_format">
+        <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                         line="300"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -4120,6 +8738,8 @@ negotiate fails.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="sink_event">
+        <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                         line="311"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -4133,6 +8753,8 @@ negotiate fails.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="sink_query">
+        <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                         line="325"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -4146,6 +8768,8 @@ negotiate fails.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="src_event">
+        <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                         line="314"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -4159,6 +8783,8 @@ negotiate fails.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="src_query">
+        <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                         line="328"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -4172,6 +8798,8 @@ negotiate fails.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="start">
+        <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                         line="291"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -4182,6 +8810,8 @@ negotiate fails.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="stop">
+        <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                         line="293"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -4192,6 +8822,8 @@ negotiate fails.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="transform_meta">
+        <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                         line="336"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -4209,59 +8841,85 @@ negotiate fails.</doc>
       </virtual-method>
       <method name="add_to_frame"
               c:identifier="gst_video_decoder_add_to_frame">
-        <doc xml:space="preserve">Removes next @n_bytes of input data and adds it to currently parsed frame.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideodecoder.c"
+             line="3322">Removes next @n_bytes of input data and adds it to currently parsed frame.</doc>
+        <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                         line="410"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="decoder" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoDecoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideodecoder.c"
+                 line="3324">a #GstVideoDecoder</doc>
             <type name="VideoDecoder" c:type="GstVideoDecoder*"/>
           </instance-parameter>
           <parameter name="n_bytes" transfer-ownership="none">
-            <doc xml:space="preserve">the number of bytes to add</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideodecoder.c"
+                 line="3325">the number of bytes to add</doc>
             <type name="gint" c:type="int"/>
           </parameter>
         </parameters>
       </method>
       <method name="allocate_output_buffer"
               c:identifier="gst_video_decoder_allocate_output_buffer">
-        <doc xml:space="preserve">Helper function that allocates a buffer to hold a video frame for @decoder's
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideodecoder.c"
+             line="4073">Helper function that allocates a buffer to hold a video frame for @decoder's
 current #GstVideoCodecState.
 
 You should use gst_video_decoder_allocate_output_frame() instead of this
 function, if possible at all.</doc>
+        <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                         line="420"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">allocated buffer, or NULL if no buffer could be
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideodecoder.c"
+               line="4083">allocated buffer, or NULL if no buffer could be
     allocated (e.g. when downstream is flushing or shutting down)</doc>
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </return-value>
         <parameters>
           <instance-parameter name="decoder" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoDecoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideodecoder.c"
+                 line="4075">a #GstVideoDecoder</doc>
             <type name="VideoDecoder" c:type="GstVideoDecoder*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="allocate_output_frame"
               c:identifier="gst_video_decoder_allocate_output_frame">
-        <doc xml:space="preserve">Helper function that allocates a buffer to hold a video frame for @decoder's
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideodecoder.c"
+             line="4139">Helper function that allocates a buffer to hold a video frame for @decoder's
 current #GstVideoCodecState.  Subclass should already have configured video
 state and set src pad caps.
 
 The buffer allocated here is owned by the frame and you should only
 keep references to the frame, not the buffer.</doc>
+        <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                         line="428"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%GST_FLOW_OK if an output buffer could be allocated</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideodecoder.c"
+               line="4151">%GST_FLOW_OK if an output buffer could be allocated</doc>
           <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
         <parameters>
           <instance-parameter name="decoder" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoDecoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideodecoder.c"
+                 line="4141">a #GstVideoDecoder</doc>
             <type name="VideoDecoder" c:type="GstVideoDecoder*"/>
           </instance-parameter>
           <parameter name="frame" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoCodecFrame</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideodecoder.c"
+                 line="4142">a #GstVideoCodecFrame</doc>
             <type name="VideoCodecFrame" c:type="GstVideoCodecFrame*"/>
           </parameter>
         </parameters>
@@ -4269,50 +8927,74 @@ keep references to the frame, not the buffer.</doc>
       <method name="allocate_output_frame_with_params"
               c:identifier="gst_video_decoder_allocate_output_frame_with_params"
               version="1.12">
-        <doc xml:space="preserve">Same as #gst_video_decoder_allocate_output_frame except it allows passing
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideodecoder.c"
+             line="4161">Same as #gst_video_decoder_allocate_output_frame except it allows passing
 #GstBufferPoolAcquireParams to the sub call gst_buffer_pool_acquire_buffer.</doc>
+        <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                         line="423"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%GST_FLOW_OK if an output buffer could be allocated</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideodecoder.c"
+               line="4170">%GST_FLOW_OK if an output buffer could be allocated</doc>
           <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
         <parameters>
           <instance-parameter name="decoder" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoDecoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideodecoder.c"
+                 line="4163">a #GstVideoDecoder</doc>
             <type name="VideoDecoder" c:type="GstVideoDecoder*"/>
           </instance-parameter>
           <parameter name="frame" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoCodecFrame</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideodecoder.c"
+                 line="4164">a #GstVideoCodecFrame</doc>
             <type name="VideoCodecFrame" c:type="GstVideoCodecFrame*"/>
           </parameter>
           <parameter name="params" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBufferPoolAcquireParams</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideodecoder.c"
+                 line="4165">a #GstBufferPoolAcquireParams</doc>
             <type name="Gst.BufferPoolAcquireParams"
                   c:type="GstBufferPoolAcquireParams*"/>
           </parameter>
         </parameters>
       </method>
       <method name="drop_frame" c:identifier="gst_video_decoder_drop_frame">
-        <doc xml:space="preserve">Similar to gst_video_decoder_finish_frame(), but drops @frame in any
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideodecoder.c"
+             line="2966">Similar to gst_video_decoder_finish_frame(), but drops @frame in any
 case and posts a QoS message with the frame's details on the bus.
 In any case, the frame is considered finished and released.</doc>
+        <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                         line="459"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstFlowReturn, usually GST_FLOW_OK.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideodecoder.c"
+               line="2975">a #GstFlowReturn, usually GST_FLOW_OK.</doc>
           <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
         <parameters>
           <instance-parameter name="dec" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoDecoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideodecoder.c"
+                 line="2968">a #GstVideoDecoder</doc>
             <type name="VideoDecoder" c:type="GstVideoDecoder*"/>
           </instance-parameter>
           <parameter name="frame" transfer-ownership="full">
-            <doc xml:space="preserve">the #GstVideoCodecFrame to drop</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideodecoder.c"
+                 line="2969">the #GstVideoCodecFrame to drop</doc>
             <type name="VideoCodecFrame" c:type="GstVideoCodecFrame*"/>
           </parameter>
         </parameters>
       </method>
       <method name="finish_frame"
               c:identifier="gst_video_decoder_finish_frame">
-        <doc xml:space="preserve">@frame should have a valid decoded data buffer, whose metadata fields
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideodecoder.c"
+             line="3055">@frame should have a valid decoded data buffer, whose metadata fields
 are then appropriately set according to frame data and pushed downstream.
 If no output data is provided, @frame is considered skipped.
 In any case, the frame is considered finished and released.
@@ -4320,33 +9002,47 @@ In any case, the frame is considered finished and released.
 After calling this function the output buffer of the frame is to be
 considered read-only. This function will also change the metadata
 of the buffer.</doc>
+        <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                         line="455"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstFlowReturn resulting from sending data downstream</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideodecoder.c"
+               line="3069">a #GstFlowReturn resulting from sending data downstream</doc>
           <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
         <parameters>
           <instance-parameter name="decoder" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoDecoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideodecoder.c"
+                 line="3057">a #GstVideoDecoder</doc>
             <type name="VideoDecoder" c:type="GstVideoDecoder*"/>
           </instance-parameter>
           <parameter name="frame" transfer-ownership="full">
-            <doc xml:space="preserve">a decoded #GstVideoCodecFrame</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideodecoder.c"
+                 line="3058">a decoded #GstVideoCodecFrame</doc>
             <type name="VideoCodecFrame" c:type="GstVideoCodecFrame*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_allocator"
               c:identifier="gst_video_decoder_get_allocator">
-        <doc xml:space="preserve">Lets #GstVideoDecoder sub-classes to know the memory @allocator
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideodecoder.c"
+             line="4550">Lets #GstVideoDecoder sub-classes to know the memory @allocator
 used by the base class and its @params.
 
 Unref the @allocator after use it.</doc>
+        <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                         line="388"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="decoder" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoDecoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideodecoder.c"
+                 line="4552">a #GstVideoDecoder</doc>
             <type name="VideoDecoder" c:type="GstVideoDecoder*"/>
           </instance-parameter>
           <parameter name="allocator"
@@ -4355,7 +9051,9 @@ Unref the @allocator after use it.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">the #GstAllocator
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideodecoder.c"
+                 line="4553">the #GstAllocator
 used</doc>
             <type name="Gst.Allocator" c:type="GstAllocator**"/>
           </parameter>
@@ -4365,7 +9063,9 @@ used</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">the
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideodecoder.c"
+                 line="4555">the
 #GstAllocationParams of @allocator</doc>
             <type name="Gst.AllocationParams" c:type="GstAllocationParams*"/>
           </parameter>
@@ -4373,72 +9073,108 @@ used</doc>
       </method>
       <method name="get_buffer_pool"
               c:identifier="gst_video_decoder_get_buffer_pool">
+        <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                         line="393"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the instance of the #GstBufferPool used
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideodecoder.c"
+               line="4536">the instance of the #GstBufferPool used
 by the decoder; free it after use it</doc>
           <type name="Gst.BufferPool" c:type="GstBufferPool*"/>
         </return-value>
         <parameters>
           <instance-parameter name="decoder" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoDecoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideodecoder.c"
+                 line="4534">a #GstVideoDecoder</doc>
             <type name="VideoDecoder" c:type="GstVideoDecoder*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_estimate_rate"
               c:identifier="gst_video_decoder_get_estimate_rate">
+        <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                         line="361"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">currently configured byte to time conversion setting</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideodecoder.c"
+               line="4431">currently configured byte to time conversion setting</doc>
           <type name="gint" c:type="gint"/>
         </return-value>
         <parameters>
           <instance-parameter name="dec" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoDecoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideodecoder.c"
+                 line="4429">a #GstVideoDecoder</doc>
             <type name="VideoDecoder" c:type="GstVideoDecoder*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_frame" c:identifier="gst_video_decoder_get_frame">
-        <doc xml:space="preserve">Get a pending unfinished #GstVideoCodecFrame</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideodecoder.c"
+             line="3667">Get a pending unfinished #GstVideoCodecFrame</doc>
+        <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                         line="398"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">pending unfinished #GstVideoCodecFrame identified by @frame_number.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideodecoder.c"
+               line="3674">pending unfinished #GstVideoCodecFrame identified by @frame_number.</doc>
           <type name="VideoCodecFrame" c:type="GstVideoCodecFrame*"/>
         </return-value>
         <parameters>
           <instance-parameter name="decoder" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoDecoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideodecoder.c"
+                 line="3669">a #GstVideoDecoder</doc>
             <type name="VideoDecoder" c:type="GstVideoDecoder*"/>
           </instance-parameter>
           <parameter name="frame_number" transfer-ownership="none">
-            <doc xml:space="preserve">system_frame_number of a frame</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideodecoder.c"
+                 line="3670">system_frame_number of a frame</doc>
             <type name="gint" c:type="int"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_frames" c:identifier="gst_video_decoder_get_frames">
-        <doc xml:space="preserve">Get all pending unfinished #GstVideoCodecFrame</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideodecoder.c"
+             line="3698">Get all pending unfinished #GstVideoCodecFrame</doc>
+        <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                         line="405"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">pending unfinished #GstVideoCodecFrame.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideodecoder.c"
+               line="3704">pending unfinished #GstVideoCodecFrame.</doc>
           <type name="GLib.List" c:type="GList*">
             <type name="VideoCodecFrame"/>
           </type>
         </return-value>
         <parameters>
           <instance-parameter name="decoder" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoDecoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideodecoder.c"
+                 line="3700">a #GstVideoDecoder</doc>
             <type name="VideoDecoder" c:type="GstVideoDecoder*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_latency" c:identifier="gst_video_decoder_get_latency">
-        <doc xml:space="preserve">Query the configured decoder latency. Results will be returned via
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideodecoder.c"
+             line="4467">Query the configured decoder latency. Results will be returned via
 @min_latency and @max_latency.</doc>
+        <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                         line="383"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="decoder" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoDecoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideodecoder.c"
+                 line="4469">a #GstVideoDecoder</doc>
             <type name="VideoDecoder" c:type="GstVideoDecoder*"/>
           </instance-parameter>
           <parameter name="min_latency"
@@ -4447,7 +9183,9 @@ by the decoder; free it after use it</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">address of variable in which to store the
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideodecoder.c"
+                 line="4470">address of variable in which to store the
     configured minimum latency, or %NULL</doc>
             <type name="Gst.ClockTime" c:type="GstClockTime*"/>
           </parameter>
@@ -4457,7 +9195,9 @@ by the decoder; free it after use it</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">address of variable in which to store the
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideodecoder.c"
+                 line="4472">address of variable in which to store the
     configured mximum latency, or %NULL</doc>
             <type name="Gst.ClockTime" c:type="GstClockTime*"/>
           </parameter>
@@ -4465,34 +9205,50 @@ by the decoder; free it after use it</doc>
       </method>
       <method name="get_max_decode_time"
               c:identifier="gst_video_decoder_get_max_decode_time">
-        <doc xml:space="preserve">Determines maximum possible decoding time for @frame that will
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideodecoder.c"
+             line="4221">Determines maximum possible decoding time for @frame that will
 allow it to decode and arrive in time (as determined by QoS events).
 In particular, a negative result means decoding in time is no longer possible
 and should therefore occur as soon/skippy as possible.</doc>
+        <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                         line="448"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">max decoding time.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideodecoder.c"
+               line="4231">max decoding time.</doc>
           <type name="Gst.ClockTimeDiff" c:type="GstClockTimeDiff"/>
         </return-value>
         <parameters>
           <instance-parameter name="decoder" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoDecoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideodecoder.c"
+                 line="4223">a #GstVideoDecoder</doc>
             <type name="VideoDecoder" c:type="GstVideoDecoder*"/>
           </instance-parameter>
           <parameter name="frame" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoCodecFrame</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideodecoder.c"
+                 line="4224">a #GstVideoCodecFrame</doc>
             <type name="VideoCodecFrame" c:type="GstVideoCodecFrame*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_max_errors"
               c:identifier="gst_video_decoder_get_max_errors">
+        <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                         line="368"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">currently configured decoder tolerated error count.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideodecoder.c"
+               line="4328">currently configured decoder tolerated error count.</doc>
           <type name="gint" c:type="gint"/>
         </return-value>
         <parameters>
           <instance-parameter name="dec" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoDecoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideodecoder.c"
+                 line="4326">a #GstVideoDecoder</doc>
             <type name="VideoDecoder" c:type="GstVideoDecoder*"/>
           </instance-parameter>
         </parameters>
@@ -4500,57 +9256,89 @@ and should therefore occur as soon/skippy as possible.</doc>
       <method name="get_needs_format"
               c:identifier="gst_video_decoder_get_needs_format"
               version="1.4">
-        <doc xml:space="preserve">Queries decoder required format handling.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if required format handling is enabled.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideodecoder.c"
+             line="4360">Queries decoder required format handling.</doc>
+        <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                         line="375"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideodecoder.c"
+               line="4366">%TRUE if required format handling is enabled.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="dec" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoDecoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideodecoder.c"
+                 line="4362">a #GstVideoDecoder</doc>
             <type name="VideoDecoder" c:type="GstVideoDecoder*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_oldest_frame"
               c:identifier="gst_video_decoder_get_oldest_frame">
-        <doc xml:space="preserve">Get the oldest pending unfinished #GstVideoCodecFrame</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideodecoder.c"
+             line="3646">Get the oldest pending unfinished #GstVideoCodecFrame</doc>
+        <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                         line="402"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">oldest pending unfinished #GstVideoCodecFrame.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideodecoder.c"
+               line="3652">oldest pending unfinished #GstVideoCodecFrame.</doc>
           <type name="VideoCodecFrame" c:type="GstVideoCodecFrame*"/>
         </return-value>
         <parameters>
           <instance-parameter name="decoder" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoDecoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideodecoder.c"
+                 line="3648">a #GstVideoDecoder</doc>
             <type name="VideoDecoder" c:type="GstVideoDecoder*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_output_state"
               c:identifier="gst_video_decoder_get_output_state">
-        <doc xml:space="preserve">Get the #GstVideoCodecState currently describing the output stream.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideodecoder.c"
+             line="3535">Get the #GstVideoCodecState currently describing the output stream.</doc>
+        <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                         line="442"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">#GstVideoCodecState describing format of video data.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideodecoder.c"
+               line="3541">#GstVideoCodecState describing format of video data.</doc>
           <type name="VideoCodecState" c:type="GstVideoCodecState*"/>
         </return-value>
         <parameters>
           <instance-parameter name="decoder" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoDecoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideodecoder.c"
+                 line="3537">a #GstVideoDecoder</doc>
             <type name="VideoDecoder" c:type="GstVideoDecoder*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_packetized"
               c:identifier="gst_video_decoder_get_packetized">
-        <doc xml:space="preserve">Queries whether input data is considered packetized or not by the
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideodecoder.c"
+             line="4397">Queries whether input data is considered packetized or not by the
 base class.</doc>
+        <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                         line="354"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">TRUE if input data is considered packetized.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideodecoder.c"
+               line="4404">TRUE if input data is considered packetized.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="decoder" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoDecoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideodecoder.c"
+                 line="4399">a #GstVideoDecoder</doc>
             <type name="VideoDecoder" c:type="GstVideoDecoder*"/>
           </instance-parameter>
         </parameters>
@@ -4558,15 +9346,23 @@ base class.</doc>
       <method name="get_pending_frame_size"
               c:identifier="gst_video_decoder_get_pending_frame_size"
               version="1.4">
-        <doc xml:space="preserve">Returns the number of bytes previously added to the current frame
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideodecoder.c"
+             line="3351">Returns the number of bytes previously added to the current frame
 by calling gst_video_decoder_add_to_frame().</doc>
+        <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                         line="417"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The number of bytes pending for the current frame</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideodecoder.c"
+               line="3358">The number of bytes pending for the current frame</doc>
           <type name="gsize" c:type="gsize"/>
         </return-value>
         <parameters>
           <instance-parameter name="decoder" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoDecoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideodecoder.c"
+                 line="3353">a #GstVideoDecoder</doc>
             <type name="VideoDecoder" c:type="GstVideoDecoder*"/>
           </instance-parameter>
         </parameters>
@@ -4574,34 +9370,50 @@ by calling gst_video_decoder_add_to_frame().</doc>
       <method name="get_qos_proportion"
               c:identifier="gst_video_decoder_get_qos_proportion"
               version="1.0.3">
+        <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                         line="452"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The current QoS proportion.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideodecoder.c"
+               line="4263">The current QoS proportion.</doc>
           <type name="gdouble" c:type="gdouble"/>
         </return-value>
         <parameters>
           <instance-parameter name="decoder" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoDecoder
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideodecoder.c"
+                 line="4260">a #GstVideoDecoder
     current QoS proportion, or %NULL</doc>
             <type name="VideoDecoder" c:type="GstVideoDecoder*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="have_frame" c:identifier="gst_video_decoder_have_frame">
-        <doc xml:space="preserve">Gathers all data collected for currently parsed frame, gathers corresponding
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideodecoder.c"
+             line="3401">Gathers all data collected for currently parsed frame, gathers corresponding
 metadata and passes it along for further processing, i.e. @handle_frame.</doc>
+        <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                         line="414"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstFlowReturn</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideodecoder.c"
+               line="3408">a #GstFlowReturn</doc>
           <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
         <parameters>
           <instance-parameter name="decoder" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoDecoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideodecoder.c"
+                 line="3403">a #GstVideoDecoder</doc>
             <type name="VideoDecoder" c:type="GstVideoDecoder*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="merge_tags" c:identifier="gst_video_decoder_merge_tags">
-        <doc xml:space="preserve">Sets the audio decoder tags and how they should be merged with any
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideodecoder.c"
+             line="4490">Sets the audio decoder tags and how they should be merged with any
 upstream stream tags. This will override any tags previously-set
 with gst_audio_decoder_merge_tags().
 
@@ -4609,39 +9421,55 @@ Note that this is provided for convenience, and the subclass is
 not required to use this and can still do tag handling on its own.
 
 MT safe.</doc>
+        <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                         line="467"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="decoder" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoDecoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideodecoder.c"
+                 line="4492">a #GstVideoDecoder</doc>
             <type name="VideoDecoder" c:type="GstVideoDecoder*"/>
           </instance-parameter>
           <parameter name="tags"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">a #GstTagList to merge, or NULL to unset
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideodecoder.c"
+                 line="4493">a #GstTagList to merge, or NULL to unset
     previously-set tags</doc>
             <type name="Gst.TagList" c:type="const GstTagList*"/>
           </parameter>
           <parameter name="mode" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstTagMergeMode to use, usually #GST_TAG_MERGE_REPLACE</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideodecoder.c"
+                 line="4495">the #GstTagMergeMode to use, usually #GST_TAG_MERGE_REPLACE</doc>
             <type name="Gst.TagMergeMode" c:type="GstTagMergeMode"/>
           </parameter>
         </parameters>
       </method>
       <method name="negotiate" c:identifier="gst_video_decoder_negotiate">
-        <doc xml:space="preserve">Negotiate with downstream elements to currently configured #GstVideoCodecState.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideodecoder.c"
+             line="4041">Negotiate with downstream elements to currently configured #GstVideoCodecState.
 Unmark GST_PAD_FLAG_NEED_RECONFIGURE in any case. But mark it again if
 negotiate fails.</doc>
+        <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                         line="445"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the negotiation succeeded, else %FALSE.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideodecoder.c"
+               line="4049">%TRUE if the negotiation succeeded, else %FALSE.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="decoder" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoDecoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideodecoder.c"
+                 line="4043">a #GstVideoDecoder</doc>
             <type name="VideoDecoder" c:type="GstVideoDecoder*"/>
           </instance-parameter>
         </parameters>
@@ -4649,30 +9477,42 @@ negotiate fails.</doc>
       <method name="proxy_getcaps"
               c:identifier="gst_video_decoder_proxy_getcaps"
               version="1.6">
-        <doc xml:space="preserve">Returns caps that express @caps (or sink template caps if @caps == NULL)
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideodecoder.c"
+             line="1817">Returns caps that express @caps (or sink template caps if @caps == NULL)
 restricted to resolution/format/... combinations supported by downstream
 elements.</doc>
+        <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                         line="472"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a #GstCaps owned by caller</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideodecoder.c"
+               line="1827">a #GstCaps owned by caller</doc>
           <type name="Gst.Caps" c:type="GstCaps*"/>
         </return-value>
         <parameters>
           <instance-parameter name="decoder" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoDecoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideodecoder.c"
+                 line="1819">a #GstVideoDecoder</doc>
             <type name="VideoDecoder" c:type="GstVideoDecoder*"/>
           </instance-parameter>
           <parameter name="caps"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">initial caps</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideodecoder.c"
+                 line="1820">initial caps</doc>
             <type name="Gst.Caps" c:type="GstCaps*"/>
           </parameter>
           <parameter name="filter"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">filter caps</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideodecoder.c"
+                 line="1821">filter caps</doc>
             <type name="Gst.Caps" c:type="GstCaps*"/>
           </parameter>
         </parameters>
@@ -4680,36 +9520,52 @@ elements.</doc>
       <method name="release_frame"
               c:identifier="gst_video_decoder_release_frame"
               version="1.2.2">
-        <doc xml:space="preserve">Similar to gst_video_decoder_drop_frame(), but simply releases @frame
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideodecoder.c"
+             line="2899">Similar to gst_video_decoder_drop_frame(), but simply releases @frame
 without any processing other than removing it from list of pending frames,
 after which it is considered finished and released.</doc>
+        <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                         line="463"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="dec" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoDecoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideodecoder.c"
+                 line="2901">a #GstVideoDecoder</doc>
             <type name="VideoDecoder" c:type="GstVideoDecoder*"/>
           </instance-parameter>
           <parameter name="frame" transfer-ownership="full">
-            <doc xml:space="preserve">the #GstVideoCodecFrame to release</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideodecoder.c"
+                 line="2902">the #GstVideoCodecFrame to release</doc>
             <type name="VideoCodecFrame" c:type="GstVideoCodecFrame*"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_estimate_rate"
               c:identifier="gst_video_decoder_set_estimate_rate">
-        <doc xml:space="preserve">Allows baseclass to perform byte to time estimated conversion.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideodecoder.c"
+             line="4412">Allows baseclass to perform byte to time estimated conversion.</doc>
+        <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                         line="357"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="dec" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoDecoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideodecoder.c"
+                 line="4414">a #GstVideoDecoder</doc>
             <type name="VideoDecoder" c:type="GstVideoDecoder*"/>
           </instance-parameter>
           <parameter name="enabled" transfer-ownership="none">
-            <doc xml:space="preserve">whether to enable byte to time conversion</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideodecoder.c"
+                 line="4415">whether to enable byte to time conversion</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
@@ -4717,82 +9573,118 @@ after which it is considered finished and released.</doc>
       <method name="set_interlaced_output_state"
               c:identifier="gst_video_decoder_set_interlaced_output_state"
               version="1.16.">
-        <doc xml:space="preserve">Same as #gst_video_decoder_set_output_state() but also allows you to also set
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideodecoder.c"
+             line="3590">Same as #gst_video_decoder_set_output_state() but also allows you to also set
 the interlacing mode.</doc>
+        <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                         line="437"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the newly configured output state.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideodecoder.c"
+               line="3602">the newly configured output state.</doc>
           <type name="VideoCodecState" c:type="GstVideoCodecState*"/>
         </return-value>
         <parameters>
           <instance-parameter name="decoder" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoDecoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideodecoder.c"
+                 line="3592">a #GstVideoDecoder</doc>
             <type name="VideoDecoder" c:type="GstVideoDecoder*"/>
           </instance-parameter>
           <parameter name="fmt" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoFormat</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideodecoder.c"
+                 line="3593">a #GstVideoFormat</doc>
             <type name="VideoFormat" c:type="GstVideoFormat"/>
           </parameter>
           <parameter name="mode" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstVideoInterlaceMode</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideodecoder.c"
+                 line="3596">A #GstVideoInterlaceMode</doc>
             <type name="VideoInterlaceMode" c:type="GstVideoInterlaceMode"/>
           </parameter>
           <parameter name="width" transfer-ownership="none">
-            <doc xml:space="preserve">The width in pixels</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideodecoder.c"
+                 line="3594">The width in pixels</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="height" transfer-ownership="none">
-            <doc xml:space="preserve">The height in pixels</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideodecoder.c"
+                 line="3595">The height in pixels</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="reference"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">An optional reference #GstVideoCodecState</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideodecoder.c"
+                 line="3597">An optional reference #GstVideoCodecState</doc>
             <type name="VideoCodecState" c:type="GstVideoCodecState*"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_latency" c:identifier="gst_video_decoder_set_latency">
-        <doc xml:space="preserve">Lets #GstVideoDecoder sub-classes tell the baseclass what the decoder
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideodecoder.c"
+             line="4441">Lets #GstVideoDecoder sub-classes tell the baseclass what the decoder
 latency is. Will also post a LATENCY message on the bus so the pipeline
 can reconfigure its global latency.</doc>
+        <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                         line="378"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="decoder" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoDecoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideodecoder.c"
+                 line="4443">a #GstVideoDecoder</doc>
             <type name="VideoDecoder" c:type="GstVideoDecoder*"/>
           </instance-parameter>
           <parameter name="min_latency" transfer-ownership="none">
-            <doc xml:space="preserve">minimum latency</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideodecoder.c"
+                 line="4444">minimum latency</doc>
             <type name="Gst.ClockTime" c:type="GstClockTime"/>
           </parameter>
           <parameter name="max_latency" transfer-ownership="none">
-            <doc xml:space="preserve">maximum latency</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideodecoder.c"
+                 line="4445">maximum latency</doc>
             <type name="Gst.ClockTime" c:type="GstClockTime"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_max_errors"
               c:identifier="gst_video_decoder_set_max_errors">
-        <doc xml:space="preserve">Sets numbers of tolerated decoder errors, where a tolerated one is then only
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideodecoder.c"
+             line="4304">Sets numbers of tolerated decoder errors, where a tolerated one is then only
 warned about, but more than tolerated will lead to fatal error.  You can set
 -1 for never returning fatal errors. Default is set to
 GST_VIDEO_DECODER_MAX_ERRORS.
 
 The '-1' option was added in 1.4</doc>
+        <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                         line="364"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="dec" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoDecoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideodecoder.c"
+                 line="4306">a #GstVideoDecoder</doc>
             <type name="VideoDecoder" c:type="GstVideoDecoder*"/>
           </instance-parameter>
           <parameter name="num" transfer-ownership="none">
-            <doc xml:space="preserve">max tolerated errors</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideodecoder.c"
+                 line="4307">max tolerated errors</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
         </parameters>
@@ -4800,29 +9692,39 @@ The '-1' option was added in 1.4</doc>
       <method name="set_needs_format"
               c:identifier="gst_video_decoder_set_needs_format"
               version="1.4">
-        <doc xml:space="preserve">Configures decoder format needs.  If enabled, subclass needs to be
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideodecoder.c"
+             line="4338">Configures decoder format needs.  If enabled, subclass needs to be
 negotiated with format caps before it can process any data.  It will then
 never be handed any data before it has been configured.
 Otherwise, it might be handed data without having been configured and
 is then expected being able to do so either by default
 or based on the input data.</doc>
+        <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                         line="371"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="dec" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoDecoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideodecoder.c"
+                 line="4340">a #GstVideoDecoder</doc>
             <type name="VideoDecoder" c:type="GstVideoDecoder*"/>
           </instance-parameter>
           <parameter name="enabled" transfer-ownership="none">
-            <doc xml:space="preserve">new state</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideodecoder.c"
+                 line="4341">new state</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_output_state"
               c:identifier="gst_video_decoder_set_output_state">
-        <doc xml:space="preserve">Creates a new #GstVideoCodecState with the specified @fmt, @width and @height
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideodecoder.c"
+             line="3556">Creates a new #GstVideoCodecState with the specified @fmt, @width and @height
 as the output state for the decoder.
 Any previously set output state on @decoder will be replaced by the newly
 created one.
@@ -4836,50 +9738,72 @@ pixel-aspect-ratio or framerate) it can do so on the returned #GstVideoCodecStat
 
 The new output state will only take effect (set on pads and buffers) starting
 from the next call to #gst_video_decoder_finish_frame().</doc>
+        <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                         line="432"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the newly configured output state.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideodecoder.c"
+               line="3579">the newly configured output state.</doc>
           <type name="VideoCodecState" c:type="GstVideoCodecState*"/>
         </return-value>
         <parameters>
           <instance-parameter name="decoder" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoDecoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideodecoder.c"
+                 line="3558">a #GstVideoDecoder</doc>
             <type name="VideoDecoder" c:type="GstVideoDecoder*"/>
           </instance-parameter>
           <parameter name="fmt" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoFormat</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideodecoder.c"
+                 line="3559">a #GstVideoFormat</doc>
             <type name="VideoFormat" c:type="GstVideoFormat"/>
           </parameter>
           <parameter name="width" transfer-ownership="none">
-            <doc xml:space="preserve">The width in pixels</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideodecoder.c"
+                 line="3560">The width in pixels</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="height" transfer-ownership="none">
-            <doc xml:space="preserve">The height in pixels</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideodecoder.c"
+                 line="3561">The height in pixels</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="reference"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">An optional reference #GstVideoCodecState</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideodecoder.c"
+                 line="3562">An optional reference #GstVideoCodecState</doc>
             <type name="VideoCodecState" c:type="GstVideoCodecState*"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_packetized"
               c:identifier="gst_video_decoder_set_packetized">
-        <doc xml:space="preserve">Allows baseclass to consider input data as packetized or not. If the
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideodecoder.c"
+             line="4382">Allows baseclass to consider input data as packetized or not. If the
 input is packetized, then the @parse method will not be called.</doc>
+        <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                         line="350"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="decoder" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoDecoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideodecoder.c"
+                 line="4384">a #GstVideoDecoder</doc>
             <type name="VideoDecoder" c:type="GstVideoDecoder*"/>
           </instance-parameter>
           <parameter name="packetized" transfer-ownership="none">
-            <doc xml:space="preserve">whether the input data should be considered as packetized.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideodecoder.c"
+                 line="4385">whether the input data should be considered as packetized.</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
@@ -4887,26 +9811,46 @@ input is packetized, then the @parse method will not be called.</doc>
       <method name="set_use_default_pad_acceptcaps"
               c:identifier="gst_video_decoder_set_use_default_pad_acceptcaps"
               version="1.6">
-        <doc xml:space="preserve">Lets #GstVideoDecoder sub-classes decide if they want the sink pad
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideodecoder.c"
+             line="4577">Lets #GstVideoDecoder sub-classes decide if they want the sink pad
 to use the default pad query handler to reply to accept-caps queries.
 
 By setting this to true it is possible to further customize the default
 handler with %GST_PAD_SET_ACCEPT_INTERSECT and
 %GST_PAD_SET_ACCEPT_TEMPLATE</doc>
+        <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                         line="477"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="decoder" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoDecoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideodecoder.c"
+                 line="4579">a #GstVideoDecoder</doc>
             <type name="VideoDecoder" c:type="GstVideoDecoder*"/>
           </instance-parameter>
           <parameter name="use" transfer-ownership="none">
-            <doc xml:space="preserve">if the default pad accept-caps query handling should be used</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideodecoder.c"
+                 line="4580">if the default pad accept-caps query handling should be used</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </method>
+      <property name="qos"
+                version="1.18"
+                writable="1"
+                transfer-ownership="none">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideodecoder.c"
+             line="562">If set to %TRUE the decoder will handle QoS events received
+from downstream elements.
+This includes dropping output frames which are detected as late
+using the metrics reported by those events.</doc>
+        <type name="gboolean" c:type="gboolean"/>
+      </property>
       <field name="element" readable="0" private="1">
         <type name="Gst.Element" c:type="GstElement"/>
       </field>
@@ -4929,7 +9873,7 @@ handler with %GST_PAD_SET_ACCEPT_INTERSECT and
         <type name="VideoDecoderPrivate" c:type="GstVideoDecoderPrivate*"/>
       </field>
       <field name="padding" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="20">
+        <array zero-terminated="0" fixed-size="20">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -4937,15 +9881,21 @@ handler with %GST_PAD_SET_ACCEPT_INTERSECT and
     <record name="VideoDecoderClass"
             c:type="GstVideoDecoderClass"
             glib:is-gtype-struct-for="VideoDecoder">
-      <doc xml:space="preserve">Subclasses can override any of the available virtual methods or not, as
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/gstvideodecoder.h"
+           line="196">Subclasses can override any of the available virtual methods or not, as
 needed. At minimum @handle_frame needs to be overridden, and @set_format
 and likely as well.  If non-packetized input is supported or expected,
 @parse needs to be overridden as well.</doc>
+      <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                       line="342"/>
       <field name="element_class" readable="0" private="1">
         <type name="Gst.ElementClass" c:type="GstElementClass"/>
       </field>
       <field name="open">
         <callback name="open">
+          <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                           line="287"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -4958,6 +9908,8 @@ and likely as well.  If non-packetized input is supported or expected,
       </field>
       <field name="close">
         <callback name="close">
+          <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                           line="289"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -4970,6 +9922,8 @@ and likely as well.  If non-packetized input is supported or expected,
       </field>
       <field name="start">
         <callback name="start">
+          <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                           line="291"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -4982,6 +9936,8 @@ and likely as well.  If non-packetized input is supported or expected,
       </field>
       <field name="stop">
         <callback name="stop">
+          <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                           line="293"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -4994,6 +9950,8 @@ and likely as well.  If non-packetized input is supported or expected,
       </field>
       <field name="parse">
         <callback name="parse">
+          <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                           line="295"/>
           <return-value transfer-ownership="none">
             <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
           </return-value>
@@ -5015,6 +9973,8 @@ and likely as well.  If non-packetized input is supported or expected,
       </field>
       <field name="set_format">
         <callback name="set_format">
+          <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                           line="300"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -5030,6 +9990,8 @@ and likely as well.  If non-packetized input is supported or expected,
       </field>
       <field name="reset">
         <callback name="reset">
+          <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                           line="303"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -5045,6 +10007,8 @@ and likely as well.  If non-packetized input is supported or expected,
       </field>
       <field name="finish">
         <callback name="finish">
+          <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                           line="306"/>
           <return-value transfer-ownership="none">
             <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
           </return-value>
@@ -5057,6 +10021,8 @@ and likely as well.  If non-packetized input is supported or expected,
       </field>
       <field name="handle_frame">
         <callback name="handle_frame">
+          <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                           line="308"/>
           <return-value transfer-ownership="none">
             <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
           </return-value>
@@ -5072,6 +10038,8 @@ and likely as well.  If non-packetized input is supported or expected,
       </field>
       <field name="sink_event">
         <callback name="sink_event">
+          <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                           line="311"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -5087,6 +10055,8 @@ and likely as well.  If non-packetized input is supported or expected,
       </field>
       <field name="src_event">
         <callback name="src_event">
+          <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                           line="314"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -5102,13 +10072,19 @@ and likely as well.  If non-packetized input is supported or expected,
       </field>
       <field name="negotiate">
         <callback name="negotiate">
+          <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                           line="317"/>
           <return-value transfer-ownership="none">
-            <doc xml:space="preserve">%TRUE if the negotiation succeeded, else %FALSE.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideodecoder.c"
+                 line="4049">%TRUE if the negotiation succeeded, else %FALSE.</doc>
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
           <parameters>
             <parameter name="decoder" transfer-ownership="none">
-              <doc xml:space="preserve">a #GstVideoDecoder</doc>
+              <doc xml:space="preserve"
+                   filename="gst-libs/gst/video/gstvideodecoder.c"
+                   line="4043">a #GstVideoDecoder</doc>
               <type name="VideoDecoder" c:type="GstVideoDecoder*"/>
             </parameter>
           </parameters>
@@ -5116,6 +10092,8 @@ and likely as well.  If non-packetized input is supported or expected,
       </field>
       <field name="decide_allocation">
         <callback name="decide_allocation">
+          <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                           line="319"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -5131,6 +10109,8 @@ and likely as well.  If non-packetized input is supported or expected,
       </field>
       <field name="propose_allocation">
         <callback name="propose_allocation">
+          <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                           line="321"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -5146,6 +10126,8 @@ and likely as well.  If non-packetized input is supported or expected,
       </field>
       <field name="flush">
         <callback name="flush">
+          <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                           line="323"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -5158,6 +10140,8 @@ and likely as well.  If non-packetized input is supported or expected,
       </field>
       <field name="sink_query">
         <callback name="sink_query">
+          <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                           line="325"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -5173,6 +10157,8 @@ and likely as well.  If non-packetized input is supported or expected,
       </field>
       <field name="src_query">
         <callback name="src_query">
+          <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                           line="328"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -5188,6 +10174,8 @@ and likely as well.  If non-packetized input is supported or expected,
       </field>
       <field name="getcaps">
         <callback name="getcaps">
+          <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                           line="331"/>
           <return-value transfer-ownership="full">
             <type name="Gst.Caps" c:type="GstCaps*"/>
           </return-value>
@@ -5203,6 +10191,8 @@ and likely as well.  If non-packetized input is supported or expected,
       </field>
       <field name="drain">
         <callback name="drain">
+          <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                           line="334"/>
           <return-value transfer-ownership="none">
             <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
           </return-value>
@@ -5215,6 +10205,8 @@ and likely as well.  If non-packetized input is supported or expected,
       </field>
       <field name="transform_meta">
         <callback name="transform_meta">
+          <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                           line="336"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -5232,7 +10224,7 @@ and likely as well.  If non-packetized input is supported or expected,
         </callback>
       </field>
       <field name="padding" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="14">
+        <array zero-terminated="0" fixed-size="14">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -5240,6 +10232,8 @@ and likely as well.  If non-packetized input is supported or expected,
     <record name="VideoDecoderPrivate"
             c:type="GstVideoDecoderPrivate"
             disguised="1">
+      <source-position filename="gst-libs/gst/video/gstvideodecoder.h"
+                       line="116"/>
     </record>
     <interface name="VideoDirection"
                c:symbol-prefix="video_direction"
@@ -5248,8 +10242,12 @@ and likely as well.  If non-packetized input is supported or expected,
                glib:type-name="GstVideoDirection"
                glib:get-type="gst_video_direction_get_type"
                glib:type-struct="VideoDirectionInterface">
-      <doc xml:space="preserve">The interface allows unified access to control flipping and rotation
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/videodirection.c"
+           line="30">The interface allows unified access to control flipping and rotation
 operations of video-sources or operators.</doc>
+      <source-position filename="gst-libs/gst/video/videodirection.h"
+                       line="58"/>
       <property name="video-direction"
                 writable="1"
                 construct="1"
@@ -5261,56 +10259,85 @@ operations of video-sources or operators.</doc>
             c:type="GstVideoDirectionInterface"
             glib:is-gtype-struct-for="VideoDirection"
             version="1.10">
-      <doc xml:space="preserve">#GstVideoDirectionInterface interface.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/videodirection.h"
+           line="47">#GstVideoDirectionInterface interface.</doc>
+      <source-position filename="gst-libs/gst/video/videodirection.h"
+                       line="58"/>
       <field name="iface">
-        <doc xml:space="preserve">parent interface type.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/videodirection.h"
+             line="49">parent interface type.</doc>
         <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
       </field>
     </record>
     <record name="VideoDither" c:type="GstVideoDither" disguised="1">
-      <doc xml:space="preserve">GstVideoDither provides implementations of several dithering algorithms
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-dither.c"
+           line="28">GstVideoDither provides implementations of several dithering algorithms
 that can be applied to lines of video pixels to quantize and dither them.</doc>
+      <source-position filename="gst-libs/gst/video/video-dither.h" line="60"/>
       <method name="free" c:identifier="gst_video_dither_free">
-        <doc xml:space="preserve">Free @dither</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-dither.c"
+             line="461">Free @dither</doc>
+        <source-position filename="gst-libs/gst/video/video-dither.h"
+                         line="73"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="dither" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoDither</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-dither.c"
+                 line="463">a #GstVideoDither</doc>
             <type name="VideoDither" c:type="GstVideoDither*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="line" c:identifier="gst_video_dither_line">
-        <doc xml:space="preserve">Dither @width pixels starting from offset @x in @line using @dither.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-dither.c"
+             line="476">Dither @width pixels starting from offset @x in @line using @dither.
 
 @y is the line number of @line in the output image.</doc>
+        <source-position filename="gst-libs/gst/video/video-dither.h"
+                         line="76"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="dither" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoDither</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-dither.c"
+                 line="478">a #GstVideoDither</doc>
             <type name="VideoDither" c:type="GstVideoDither*"/>
           </instance-parameter>
           <parameter name="line"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">pointer to the pixels of the line</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-dither.c"
+                 line="479">pointer to the pixels of the line</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
           <parameter name="x" transfer-ownership="none">
-            <doc xml:space="preserve">x coordinate</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-dither.c"
+                 line="480">x coordinate</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="y" transfer-ownership="none">
-            <doc xml:space="preserve">y coordinate</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-dither.c"
+                 line="481">y coordinate</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="width" transfer-ownership="none">
-            <doc xml:space="preserve">the width</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-dither.c"
+                 line="482">the width</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
@@ -5318,36 +10345,52 @@ that can be applied to lines of video pixels to quantize and dither them.</doc>
       <function name="new"
                 c:identifier="gst_video_dither_new"
                 introspectable="0">
-        <doc xml:space="preserve">Make a new dither object for dithering lines of @format using the
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-dither.c"
+             line="357">Make a new dither object for dithering lines of @format using the
 algorithm described by @method.
 
 Each component will be quantized to a multiple of @quantizer. Better
-performance is achived when @quantizer is a power of 2.
+performance is achieved when @quantizer is a power of 2.
 
 @width is the width of the lines that this ditherer will handle.</doc>
+        <source-position filename="gst-libs/gst/video/video-dither.h"
+                         line="66"/>
         <return-value>
-          <doc xml:space="preserve">a new #GstVideoDither</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-dither.c"
+               line="373">a new #GstVideoDither</doc>
           <type name="VideoDither" c:type="GstVideoDither*"/>
         </return-value>
         <parameters>
           <parameter name="method" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoDitherMethod</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-dither.c"
+                 line="359">a #GstVideoDitherMethod</doc>
             <type name="VideoDitherMethod" c:type="GstVideoDitherMethod"/>
           </parameter>
           <parameter name="flags" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoDitherFlags</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-dither.c"
+                 line="360">a #GstVideoDitherFlags</doc>
             <type name="VideoDitherFlags" c:type="GstVideoDitherFlags"/>
           </parameter>
           <parameter name="format" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoFormat</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-dither.c"
+                 line="361">a #GstVideoFormat</doc>
             <type name="VideoFormat" c:type="GstVideoFormat"/>
           </parameter>
           <parameter name="quantizer" transfer-ownership="none">
-            <doc xml:space="preserve">quantizer</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-dither.c"
+                 line="362">quantizer</doc>
             <type name="guint" c:type="guint*"/>
           </parameter>
           <parameter name="width" transfer-ownership="none">
-            <doc xml:space="preserve">the width of the lines</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-dither.c"
+                 line="363">the width of the lines</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
@@ -5357,60 +10400,80 @@ performance is achived when @quantizer is a power of 2.
               glib:type-name="GstVideoDitherFlags"
               glib:get-type="gst_video_dither_flags_get_type"
               c:type="GstVideoDitherFlags">
-      <doc xml:space="preserve">Extra flags that influence the result from gst_video_chroma_resample_new().</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-dither.h"
+           line="46">Extra flags that influence the result from gst_video_chroma_resample_new().</doc>
       <member name="none"
               value="0"
               c:identifier="GST_VIDEO_DITHER_FLAG_NONE"
               glib:nick="none">
-        <doc xml:space="preserve">no flags</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-dither.h"
+             line="48">no flags</doc>
       </member>
       <member name="interlaced"
               value="1"
               c:identifier="GST_VIDEO_DITHER_FLAG_INTERLACED"
               glib:nick="interlaced">
-        <doc xml:space="preserve">the input is interlaced</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-dither.h"
+             line="49">the input is interlaced</doc>
       </member>
       <member name="quantize"
               value="2"
               c:identifier="GST_VIDEO_DITHER_FLAG_QUANTIZE"
               glib:nick="quantize">
-        <doc xml:space="preserve">quantize values in addition to adding dither.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-dither.h"
+             line="50">quantize values in addition to adding dither.</doc>
       </member>
     </bitfield>
     <enumeration name="VideoDitherMethod"
                  glib:type-name="GstVideoDitherMethod"
                  glib:get-type="gst_video_dither_method_get_type"
                  c:type="GstVideoDitherMethod">
-      <doc xml:space="preserve">Different dithering methods to use.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-dither.h"
+           line="28">Different dithering methods to use.</doc>
       <member name="none"
               value="0"
               c:identifier="GST_VIDEO_DITHER_NONE"
               glib:nick="none">
-        <doc xml:space="preserve">no dithering</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-dither.h"
+             line="30">no dithering</doc>
       </member>
       <member name="verterr"
               value="1"
               c:identifier="GST_VIDEO_DITHER_VERTERR"
               glib:nick="verterr">
-        <doc xml:space="preserve">propagate rounding errors downwards</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-dither.h"
+             line="31">propagate rounding errors downwards</doc>
       </member>
       <member name="floyd_steinberg"
               value="2"
               c:identifier="GST_VIDEO_DITHER_FLOYD_STEINBERG"
               glib:nick="floyd-steinberg">
-        <doc xml:space="preserve">Dither with floyd-steinberg error diffusion</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-dither.h"
+             line="32">Dither with floyd-steinberg error diffusion</doc>
       </member>
       <member name="sierra_lite"
               value="3"
               c:identifier="GST_VIDEO_DITHER_SIERRA_LITE"
               glib:nick="sierra-lite">
-        <doc xml:space="preserve">Dither with Sierra Lite error diffusion</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-dither.h"
+             line="33">Dither with Sierra Lite error diffusion</doc>
       </member>
       <member name="bayer"
               value="4"
               c:identifier="GST_VIDEO_DITHER_BAYER"
               glib:nick="bayer">
-        <doc xml:space="preserve">ordered dither using a bayer pattern</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-dither.h"
+             line="34">ordered dither using a bayer pattern</doc>
       </member>
     </enumeration>
     <class name="VideoEncoder"
@@ -5421,7 +10484,9 @@ performance is achived when @quantizer is a power of 2.
            glib:type-name="GstVideoEncoder"
            glib:get-type="gst_video_encoder_get_type"
            glib:type-struct="VideoEncoderClass">
-      <doc xml:space="preserve">This base class is for video encoders turning raw video into
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/gstvideoencoder.c"
+           line="25">This base class is for video encoders turning raw video into
 encoded video data.
 
 GstVideoEncoder and subclass should cooperate as follows.
@@ -5479,8 +10544,12 @@ performance of the downstream elements. If enabled, subclasses can
 use gst_video_encoder_get_max_encode_time() to check if input frames
 are already late and drop them right away to give a chance to the
 pipeline to catch up.</doc>
+      <source-position filename="gst-libs/gst/video/gstvideoencoder.h"
+                       line="300"/>
       <implements name="Gst.Preset"/>
       <virtual-method name="close">
+        <source-position filename="gst-libs/gst/video/gstvideoencoder.h"
+                         line="251"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -5491,6 +10560,8 @@ pipeline to catch up.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="decide_allocation">
+        <source-position filename="gst-libs/gst/video/gstvideoencoder.h"
+                         line="282"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -5504,6 +10575,8 @@ pipeline to catch up.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="finish">
+        <source-position filename="gst-libs/gst/video/gstvideoencoder.h"
+                         line="266"/>
         <return-value transfer-ownership="none">
           <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
@@ -5514,6 +10587,8 @@ pipeline to catch up.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="flush">
+        <source-position filename="gst-libs/gst/video/gstvideoencoder.h"
+                         line="286"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -5524,6 +10599,8 @@ pipeline to catch up.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="getcaps">
+        <source-position filename="gst-libs/gst/video/gstvideoencoder.h"
+                         line="271"/>
         <return-value transfer-ownership="full">
           <type name="Gst.Caps" c:type="GstCaps*"/>
         </return-value>
@@ -5537,6 +10614,8 @@ pipeline to catch up.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="handle_frame">
+        <source-position filename="gst-libs/gst/video/gstvideoencoder.h"
+                         line="260"/>
         <return-value transfer-ownership="none">
           <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
@@ -5550,21 +10629,31 @@ pipeline to catch up.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="negotiate" invoker="negotiate">
-        <doc xml:space="preserve">Negotiate with downstream elements to currently configured #GstVideoCodecState.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideoencoder.c"
+             line="1986">Negotiate with downstream elements to currently configured #GstVideoCodecState.
 Unmark GST_PAD_FLAG_NEED_RECONFIGURE in any case. But mark it again if
 negotiate fails.</doc>
+        <source-position filename="gst-libs/gst/video/gstvideoencoder.h"
+                         line="280"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the negotiation succeeded, else %FALSE.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideoencoder.c"
+               line="1994">%TRUE if the negotiation succeeded, else %FALSE.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="encoder" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoEncoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideoencoder.c"
+                 line="1988">a #GstVideoEncoder</doc>
             <type name="VideoEncoder" c:type="GstVideoEncoder*"/>
           </instance-parameter>
         </parameters>
       </virtual-method>
       <virtual-method name="open">
+        <source-position filename="gst-libs/gst/video/gstvideoencoder.h"
+                         line="249"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -5575,6 +10664,8 @@ negotiate fails.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="pre_push">
+        <source-position filename="gst-libs/gst/video/gstvideoencoder.h"
+                         line="268"/>
         <return-value transfer-ownership="none">
           <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
@@ -5588,6 +10679,8 @@ negotiate fails.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="propose_allocation">
+        <source-position filename="gst-libs/gst/video/gstvideoencoder.h"
+                         line="284"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -5601,6 +10694,8 @@ negotiate fails.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="reset">
+        <source-position filename="gst-libs/gst/video/gstvideoencoder.h"
+                         line="263"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -5614,6 +10709,8 @@ negotiate fails.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="set_format">
+        <source-position filename="gst-libs/gst/video/gstvideoencoder.h"
+                         line="257"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -5627,6 +10724,8 @@ negotiate fails.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="sink_event">
+        <source-position filename="gst-libs/gst/video/gstvideoencoder.h"
+                         line="274"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -5640,6 +10739,8 @@ negotiate fails.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="sink_query">
+        <source-position filename="gst-libs/gst/video/gstvideoencoder.h"
+                         line="288"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -5653,6 +10754,8 @@ negotiate fails.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="src_event">
+        <source-position filename="gst-libs/gst/video/gstvideoencoder.h"
+                         line="277"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -5666,6 +10769,8 @@ negotiate fails.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="src_query">
+        <source-position filename="gst-libs/gst/video/gstvideoencoder.h"
+                         line="291"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -5679,6 +10784,8 @@ negotiate fails.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="start">
+        <source-position filename="gst-libs/gst/video/gstvideoencoder.h"
+                         line="253"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -5689,6 +10796,8 @@ negotiate fails.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="stop">
+        <source-position filename="gst-libs/gst/video/gstvideoencoder.h"
+                         line="255"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -5699,6 +10808,8 @@ negotiate fails.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="transform_meta">
+        <source-position filename="gst-libs/gst/video/gstvideoencoder.h"
+                         line="294"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -5716,53 +10827,77 @@ negotiate fails.</doc>
       </virtual-method>
       <method name="allocate_output_buffer"
               c:identifier="gst_video_encoder_allocate_output_buffer">
-        <doc xml:space="preserve">Helper function that allocates a buffer to hold an encoded video frame
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideoencoder.c"
+             line="2019">Helper function that allocates a buffer to hold an encoded video frame
 for @encoder's current #GstVideoCodecState.</doc>
+        <source-position filename="gst-libs/gst/video/gstvideoencoder.h"
+                         line="327"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">allocated buffer</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideoencoder.c"
+               line="2027">allocated buffer</doc>
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </return-value>
         <parameters>
           <instance-parameter name="encoder" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoEncoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideoencoder.c"
+                 line="2021">a #GstVideoEncoder</doc>
             <type name="VideoEncoder" c:type="GstVideoEncoder*"/>
           </instance-parameter>
           <parameter name="size" transfer-ownership="none">
-            <doc xml:space="preserve">size of the buffer</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideoencoder.c"
+                 line="2022">size of the buffer</doc>
             <type name="gsize" c:type="gsize"/>
           </parameter>
         </parameters>
       </method>
       <method name="allocate_output_frame"
               c:identifier="gst_video_encoder_allocate_output_frame">
-        <doc xml:space="preserve">Helper function that allocates a buffer to hold an encoded video frame for @encoder's
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideoencoder.c"
+             line="2070">Helper function that allocates a buffer to hold an encoded video frame for @encoder's
 current #GstVideoCodecState.  Subclass should already have configured video
 state and set src pad caps.
 
 The buffer allocated here is owned by the frame and you should only
 keep references to the frame, not the buffer.</doc>
+        <source-position filename="gst-libs/gst/video/gstvideoencoder.h"
+                         line="331"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%GST_FLOW_OK if an output buffer could be allocated</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideoencoder.c"
+               line="2083">%GST_FLOW_OK if an output buffer could be allocated</doc>
           <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
         <parameters>
           <instance-parameter name="encoder" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoEncoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideoencoder.c"
+                 line="2072">a #GstVideoEncoder</doc>
             <type name="VideoEncoder" c:type="GstVideoEncoder*"/>
           </instance-parameter>
           <parameter name="frame" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoCodecFrame</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideoencoder.c"
+                 line="2073">a #GstVideoCodecFrame</doc>
             <type name="VideoCodecFrame" c:type="GstVideoCodecFrame*"/>
           </parameter>
           <parameter name="size" transfer-ownership="none">
-            <doc xml:space="preserve">size of the buffer</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideoencoder.c"
+                 line="2074">size of the buffer</doc>
             <type name="gsize" c:type="gsize"/>
           </parameter>
         </parameters>
       </method>
       <method name="finish_frame"
               c:identifier="gst_video_encoder_finish_frame">
-        <doc xml:space="preserve">@frame must have a valid encoded data buffer, whose metadata fields
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideoencoder.c"
+             line="2459">@frame must have a valid encoded data buffer, whose metadata fields
 are then appropriately set according to frame data or no buffer at
 all if the frame should be dropped.
 It is subsequently pushed downstream or provided to @pre_push.
@@ -5771,33 +10906,84 @@ In any case, the frame is considered finished and released.
 After calling this function the output buffer of the frame is to be
 considered read-only. This function will also change the metadata
 of the buffer.</doc>
+        <source-position filename="gst-libs/gst/video/gstvideoencoder.h"
+                         line="336"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstFlowReturn resulting from sending data downstream</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideoencoder.c"
+               line="2474">a #GstFlowReturn resulting from sending data downstream</doc>
           <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
         <parameters>
           <instance-parameter name="encoder" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoEncoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideoencoder.c"
+                 line="2461">a #GstVideoEncoder</doc>
             <type name="VideoEncoder" c:type="GstVideoEncoder*"/>
           </instance-parameter>
           <parameter name="frame" transfer-ownership="full">
-            <doc xml:space="preserve">an encoded #GstVideoCodecFrame</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideoencoder.c"
+                 line="2462">an encoded #GstVideoCodecFrame</doc>
+            <type name="VideoCodecFrame" c:type="GstVideoCodecFrame*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="finish_subframe"
+              c:identifier="gst_video_encoder_finish_subframe"
+              version="1.18">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideoencoder.c"
+             line="2611">If multiple subframes are produced for one input frame then use this method
+for each subframe, except for the last one. Before calling this function,
+you need to fill frame-&gt;output_buffer with the encoded buffer to push.
+
+You must call #gst_video_encoder_finish_frame() for the last sub-frame
+to tell the encoder that the frame has been fully encoded.
+
+This function will change the metadata of @frame and frame-&gt;output_buffer
+will be pushed downstream.</doc>
+        <source-position filename="gst-libs/gst/video/gstvideoencoder.h"
+                         line="340"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideoencoder.c"
+               line="2626">a #GstFlowReturn resulting from pushing the buffer downstream.</doc>
+          <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="encoder" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideoencoder.c"
+                 line="2613">a #GstVideoEncoder</doc>
+            <type name="VideoEncoder" c:type="GstVideoEncoder*"/>
+          </instance-parameter>
+          <parameter name="frame" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideoencoder.c"
+                 line="2614">a #GstVideoCodecFrame being encoded</doc>
             <type name="VideoCodecFrame" c:type="GstVideoCodecFrame*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_allocator"
               c:identifier="gst_video_encoder_get_allocator">
-        <doc xml:space="preserve">Lets #GstVideoEncoder sub-classes to know the memory @allocator
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideoencoder.c"
+             line="2980">Lets #GstVideoEncoder sub-classes to know the memory @allocator
 used by the base class and its @params.
 
 Unref the @allocator after use it.</doc>
+        <source-position filename="gst-libs/gst/video/gstvideoencoder.h"
+                         line="368"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="encoder" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoEncoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideoencoder.c"
+                 line="2982">a #GstVideoEncoder</doc>
             <type name="VideoEncoder" c:type="GstVideoEncoder*"/>
           </instance-parameter>
           <parameter name="allocator"
@@ -5806,7 +10992,9 @@ Unref the @allocator after use it.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">the #GstAllocator
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideoencoder.c"
+                 line="2983">the #GstAllocator
 used</doc>
             <type name="Gst.Allocator" c:type="GstAllocator**"/>
           </parameter>
@@ -5816,53 +11004,79 @@ used</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">the
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideoencoder.c"
+                 line="2985">the
 #GstAllocationParams of @allocator</doc>
             <type name="Gst.AllocationParams" c:type="GstAllocationParams*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_frame" c:identifier="gst_video_encoder_get_frame">
-        <doc xml:space="preserve">Get a pending unfinished #GstVideoCodecFrame</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideoencoder.c"
+             line="2884">Get a pending unfinished #GstVideoCodecFrame</doc>
+        <source-position filename="gst-libs/gst/video/gstvideoencoder.h"
+                         line="317"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">pending unfinished #GstVideoCodecFrame identified by @frame_number.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideoencoder.c"
+               line="2891">pending unfinished #GstVideoCodecFrame identified by @frame_number.</doc>
           <type name="VideoCodecFrame" c:type="GstVideoCodecFrame*"/>
         </return-value>
         <parameters>
           <instance-parameter name="encoder" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoEncoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideoencoder.c"
+                 line="2886">a #GstVideoEncoder</doc>
             <type name="VideoEncoder" c:type="GstVideoEncoder*"/>
           </instance-parameter>
           <parameter name="frame_number" transfer-ownership="none">
-            <doc xml:space="preserve">system_frame_number of a frame</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideoencoder.c"
+                 line="2887">system_frame_number of a frame</doc>
             <type name="gint" c:type="int"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_frames" c:identifier="gst_video_encoder_get_frames">
-        <doc xml:space="preserve">Get all pending unfinished #GstVideoCodecFrame</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideoencoder.c"
+             line="2915">Get all pending unfinished #GstVideoCodecFrame</doc>
+        <source-position filename="gst-libs/gst/video/gstvideoencoder.h"
+                         line="324"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">pending unfinished #GstVideoCodecFrame.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideoencoder.c"
+               line="2921">pending unfinished #GstVideoCodecFrame.</doc>
           <type name="GLib.List" c:type="GList*">
             <type name="VideoCodecFrame"/>
           </type>
         </return-value>
         <parameters>
           <instance-parameter name="encoder" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoEncoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideoencoder.c"
+                 line="2917">a #GstVideoEncoder</doc>
             <type name="VideoEncoder" c:type="GstVideoEncoder*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_latency" c:identifier="gst_video_encoder_get_latency">
-        <doc xml:space="preserve">Query the configured encoding latency. Results will be returned via
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideoencoder.c"
+             line="2840">Query the configured encoding latency. Results will be returned via
 @min_latency and @max_latency.</doc>
+        <source-position filename="gst-libs/gst/video/gstvideoencoder.h"
+                         line="354"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="encoder" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoEncoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideoencoder.c"
+                 line="2842">a #GstVideoEncoder</doc>
             <type name="VideoEncoder" c:type="GstVideoEncoder*"/>
           </instance-parameter>
           <parameter name="min_latency"
@@ -5871,7 +11085,9 @@ used</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">address of variable in which to store the
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideoencoder.c"
+                 line="2843">address of variable in which to store the
     configured minimum latency, or %NULL</doc>
             <type name="Gst.ClockTime" c:type="GstClockTime*"/>
           </parameter>
@@ -5881,7 +11097,9 @@ used</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">address of variable in which to store the
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideoencoder.c"
+                 line="2845">address of variable in which to store the
     configured maximum latency, or %NULL</doc>
             <type name="Gst.ClockTime" c:type="GstClockTime*"/>
           </parameter>
@@ -5890,52 +11108,102 @@ used</doc>
       <method name="get_max_encode_time"
               c:identifier="gst_video_encoder_get_max_encode_time"
               version="1.14">
-        <doc xml:space="preserve">Determines maximum possible encoding time for @frame that will
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideoencoder.c"
+             line="3027">Determines maximum possible encoding time for @frame that will
 allow it to encode and arrive in time (as determined by QoS events).
 In particular, a negative result means encoding in time is no longer possible
 and should therefore occur as soon/skippy as possible.
 
 If no QoS events have been received from downstream, or if
 #GstVideoEncoder:qos is disabled this function returns #G_MAXINT64.</doc>
+        <source-position filename="gst-libs/gst/video/gstvideoencoder.h"
+                         line="382"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">max decoding time.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideoencoder.c"
+               line="3040">max decoding time.</doc>
           <type name="Gst.ClockTimeDiff" c:type="GstClockTimeDiff"/>
         </return-value>
         <parameters>
           <instance-parameter name="encoder" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoEncoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideoencoder.c"
+                 line="3029">a #GstVideoEncoder</doc>
             <type name="VideoEncoder" c:type="GstVideoEncoder*"/>
           </instance-parameter>
           <parameter name="frame" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoCodecFrame</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideoencoder.c"
+                 line="3030">a #GstVideoCodecFrame</doc>
             <type name="VideoCodecFrame" c:type="GstVideoCodecFrame*"/>
           </parameter>
         </parameters>
       </method>
+      <method name="get_min_force_key_unit_interval"
+              c:identifier="gst_video_encoder_get_min_force_key_unit_interval"
+              version="1.18">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideoencoder.c"
+             line="3131">Returns the minimum force-keyunit interval, see gst_video_encoder_set_min_force_key_unit_interval()
+for more details.</doc>
+        <source-position filename="gst-libs/gst/video/gstvideoencoder.h"
+                         line="388"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideoencoder.c"
+               line="3138">the minimum force-keyunit interval</doc>
+          <type name="Gst.ClockTime" c:type="GstClockTime"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="encoder" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideoencoder.c"
+                 line="3133">the encoder</doc>
+            <type name="VideoEncoder" c:type="GstVideoEncoder*"/>
+          </instance-parameter>
+        </parameters>
+      </method>
       <method name="get_oldest_frame"
               c:identifier="gst_video_encoder_get_oldest_frame">
-        <doc xml:space="preserve">Get the oldest unfinished pending #GstVideoCodecFrame</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideoencoder.c"
+             line="2863">Get the oldest unfinished pending #GstVideoCodecFrame</doc>
+        <source-position filename="gst-libs/gst/video/gstvideoencoder.h"
+                         line="321"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">oldest unfinished pending #GstVideoCodecFrame</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideoencoder.c"
+               line="2869">oldest unfinished pending #GstVideoCodecFrame</doc>
           <type name="VideoCodecFrame" c:type="GstVideoCodecFrame*"/>
         </return-value>
         <parameters>
           <instance-parameter name="encoder" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoEncoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideoencoder.c"
+                 line="2865">a #GstVideoEncoder</doc>
             <type name="VideoEncoder" c:type="GstVideoEncoder*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_output_state"
               c:identifier="gst_video_encoder_get_output_state">
-        <doc xml:space="preserve">Get the current #GstVideoCodecState</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideoencoder.c"
+             line="2737">Get the current #GstVideoCodecState</doc>
+        <source-position filename="gst-libs/gst/video/gstvideoencoder.h"
+                         line="306"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">#GstVideoCodecState describing format of video data.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideoencoder.c"
+               line="2743">#GstVideoCodecState describing format of video data.</doc>
           <type name="VideoCodecState" c:type="GstVideoCodecState*"/>
         </return-value>
         <parameters>
           <instance-parameter name="encoder" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoEncoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideoencoder.c"
+                 line="2739">a #GstVideoEncoder</doc>
             <type name="VideoEncoder" c:type="GstVideoEncoder*"/>
           </instance-parameter>
         </parameters>
@@ -5943,21 +11211,31 @@ If no QoS events have been received from downstream, or if
       <method name="is_qos_enabled"
               c:identifier="gst_video_encoder_is_qos_enabled"
               version="1.14">
-        <doc xml:space="preserve">Checks if @encoder is currently configured to handle Quality-of-Service
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideoencoder.c"
+             line="3087">Checks if @encoder is currently configured to handle Quality-of-Service
 events from downstream.</doc>
+        <source-position filename="gst-libs/gst/video/gstvideoencoder.h"
+                         line="379"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the encoder is configured to perform Quality-of-Service.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideoencoder.c"
+               line="3094">%TRUE if the encoder is configured to perform Quality-of-Service.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="encoder" transfer-ownership="none">
-            <doc xml:space="preserve">the encoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideoencoder.c"
+                 line="3089">the encoder</doc>
             <type name="VideoEncoder" c:type="GstVideoEncoder*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="merge_tags" c:identifier="gst_video_encoder_merge_tags">
-        <doc xml:space="preserve">Sets the video encoder tags and how they should be merged with any
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideoencoder.c"
+             line="2937">Sets the video encoder tags and how they should be merged with any
 upstream stream tags. This will override any tags previously-set
 with gst_video_encoder_merge_tags().
 
@@ -5965,85 +11243,121 @@ Note that this is provided for convenience, and the subclass is
 not required to use this and can still do tag handling on its own.
 
 MT safe.</doc>
+        <source-position filename="gst-libs/gst/video/gstvideoencoder.h"
+                         line="363"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="encoder" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoEncoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideoencoder.c"
+                 line="2939">a #GstVideoEncoder</doc>
             <type name="VideoEncoder" c:type="GstVideoEncoder*"/>
           </instance-parameter>
           <parameter name="tags"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">a #GstTagList to merge, or NULL to unset
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideoencoder.c"
+                 line="2940">a #GstTagList to merge, or NULL to unset
     previously-set tags</doc>
             <type name="Gst.TagList" c:type="const GstTagList*"/>
           </parameter>
           <parameter name="mode" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstTagMergeMode to use, usually #GST_TAG_MERGE_REPLACE</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideoencoder.c"
+                 line="2942">the #GstTagMergeMode to use, usually #GST_TAG_MERGE_REPLACE</doc>
             <type name="Gst.TagMergeMode" c:type="GstTagMergeMode"/>
           </parameter>
         </parameters>
       </method>
       <method name="negotiate" c:identifier="gst_video_encoder_negotiate">
-        <doc xml:space="preserve">Negotiate with downstream elements to currently configured #GstVideoCodecState.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideoencoder.c"
+             line="1986">Negotiate with downstream elements to currently configured #GstVideoCodecState.
 Unmark GST_PAD_FLAG_NEED_RECONFIGURE in any case. But mark it again if
 negotiate fails.</doc>
+        <source-position filename="gst-libs/gst/video/gstvideoencoder.h"
+                         line="314"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the negotiation succeeded, else %FALSE.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideoencoder.c"
+               line="1994">%TRUE if the negotiation succeeded, else %FALSE.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="encoder" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoEncoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideoencoder.c"
+                 line="1988">a #GstVideoEncoder</doc>
             <type name="VideoEncoder" c:type="GstVideoEncoder*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="proxy_getcaps"
               c:identifier="gst_video_encoder_proxy_getcaps">
-        <doc xml:space="preserve">Returns caps that express @caps (or sink template caps if @caps == NULL)
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideoencoder.c"
+             line="769">Returns caps that express @caps (or sink template caps if @caps == NULL)
 restricted to resolution/format/... combinations supported by downstream
 elements (e.g. muxers).</doc>
+        <source-position filename="gst-libs/gst/video/gstvideoencoder.h"
+                         line="344"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a #GstCaps owned by caller</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideoencoder.c"
+               line="779">a #GstCaps owned by caller</doc>
           <type name="Gst.Caps" c:type="GstCaps*"/>
         </return-value>
         <parameters>
           <instance-parameter name="enc" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoEncoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideoencoder.c"
+                 line="771">a #GstVideoEncoder</doc>
             <type name="VideoEncoder" c:type="GstVideoEncoder*"/>
           </instance-parameter>
           <parameter name="caps"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">initial caps</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideoencoder.c"
+                 line="772">initial caps</doc>
             <type name="Gst.Caps" c:type="GstCaps*"/>
           </parameter>
           <parameter name="filter"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">filter caps</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideoencoder.c"
+                 line="773">filter caps</doc>
             <type name="Gst.Caps" c:type="GstCaps*"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_headers" c:identifier="gst_video_encoder_set_headers">
-        <doc xml:space="preserve">Set the codec headers to be sent downstream whenever requested.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideoencoder.c"
+             line="609">Set the codec headers to be sent downstream whenever requested.</doc>
+        <source-position filename="gst-libs/gst/video/gstvideoencoder.h"
+                         line="359"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="encoder" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoEncoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideoencoder.c"
+                 line="611">a #GstVideoEncoder</doc>
             <type name="VideoEncoder" c:type="GstVideoEncoder*"/>
           </instance-parameter>
           <parameter name="headers" transfer-ownership="full">
-            <doc xml:space="preserve">a list of #GstBuffer containing the codec header</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideoencoder.c"
+                 line="612">a list of #GstBuffer containing the codec header</doc>
             <type name="GLib.List" c:type="GList*">
               <type name="Gst.Buffer"/>
             </type>
@@ -6051,49 +11365,97 @@ elements (e.g. muxers).</doc>
         </parameters>
       </method>
       <method name="set_latency" c:identifier="gst_video_encoder_set_latency">
-        <doc xml:space="preserve">Informs baseclass of encoding latency.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideoencoder.c"
+             line="2816">Informs baseclass of encoding latency.</doc>
+        <source-position filename="gst-libs/gst/video/gstvideoencoder.h"
+                         line="349"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="encoder" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoEncoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideoencoder.c"
+                 line="2818">a #GstVideoEncoder</doc>
             <type name="VideoEncoder" c:type="GstVideoEncoder*"/>
           </instance-parameter>
           <parameter name="min_latency" transfer-ownership="none">
-            <doc xml:space="preserve">minimum latency</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideoencoder.c"
+                 line="2819">minimum latency</doc>
             <type name="Gst.ClockTime" c:type="GstClockTime"/>
           </parameter>
           <parameter name="max_latency" transfer-ownership="none">
-            <doc xml:space="preserve">maximum latency</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideoencoder.c"
+                 line="2820">maximum latency</doc>
+            <type name="Gst.ClockTime" c:type="GstClockTime"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="set_min_force_key_unit_interval"
+              c:identifier="gst_video_encoder_set_min_force_key_unit_interval"
+              version="1.18">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideoencoder.c"
+             line="3109">Sets the minimum interval for requesting keyframes based on force-keyunit
+events. Setting this to 0 will allow to handle every event, setting this to
+%GST_CLOCK_TIME_NONE causes force-keyunit events to be ignored.</doc>
+        <source-position filename="gst-libs/gst/video/gstvideoencoder.h"
+                         line="385"/>
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="encoder" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideoencoder.c"
+                 line="3111">the encoder</doc>
+            <type name="VideoEncoder" c:type="GstVideoEncoder*"/>
+          </instance-parameter>
+          <parameter name="interval" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideoencoder.c"
+                 line="3112">minimum interval</doc>
             <type name="Gst.ClockTime" c:type="GstClockTime"/>
           </parameter>
         </parameters>
       </method>
-      <method name="set_min_pts" c:identifier="gst_video_encoder_set_min_pts">
-        <doc xml:space="preserve">Request minimal value for PTS passed to handle_frame.
+      <method name="set_min_pts"
+              c:identifier="gst_video_encoder_set_min_pts"
+              version="1.6">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideoencoder.c"
+             line="3007">Request minimal value for PTS passed to handle_frame.
 
 For streams with reordered frames this can be used to ensure that there
-is enough time to accomodate first DTS, which may be less than first PTS
-
-Since 1.6</doc>
+is enough time to accommodate first DTS, which may be less than first PTS</doc>
+        <source-position filename="gst-libs/gst/video/gstvideoencoder.h"
+                         line="373"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="encoder" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoEncoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideoencoder.c"
+                 line="3009">a #GstVideoEncoder</doc>
             <type name="VideoEncoder" c:type="GstVideoEncoder*"/>
           </instance-parameter>
           <parameter name="min_pts" transfer-ownership="none">
-            <doc xml:space="preserve">minimal PTS that will be passed to handle_frame</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideoencoder.c"
+                 line="3010">minimal PTS that will be passed to handle_frame</doc>
             <type name="Gst.ClockTime" c:type="GstClockTime"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_output_state"
               c:identifier="gst_video_encoder_set_output_state">
-        <doc xml:space="preserve">Creates a new #GstVideoCodecState with the specified caps as the output state
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideoencoder.c"
+             line="2757">Creates a new #GstVideoCodecState with the specified caps as the output state
 for the encoder.
 Any previously set output state on @encoder will be replaced by the newly
 created one.
@@ -6111,24 +11473,34 @@ pixel-aspect-ratio or framerate) it can do so on the returned #GstVideoCodecStat
 
 The new output state will only take effect (set on pads and buffers) starting
 from the next call to #gst_video_encoder_finish_frame().</doc>
+        <source-position filename="gst-libs/gst/video/gstvideoencoder.h"
+                         line="309"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the newly configured output state.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideoencoder.c"
+               line="2782">the newly configured output state.</doc>
           <type name="VideoCodecState" c:type="GstVideoCodecState*"/>
         </return-value>
         <parameters>
           <instance-parameter name="encoder" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoEncoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideoencoder.c"
+                 line="2759">a #GstVideoEncoder</doc>
             <type name="VideoEncoder" c:type="GstVideoEncoder*"/>
           </instance-parameter>
           <parameter name="caps" transfer-ownership="full">
-            <doc xml:space="preserve">the #GstCaps to use for the output</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideoencoder.c"
+                 line="2760">the #GstCaps to use for the output</doc>
             <type name="Gst.Caps" c:type="GstCaps*"/>
           </parameter>
           <parameter name="reference"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">An optional reference @GstVideoCodecState</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideoencoder.c"
+                 line="2761">An optional reference @GstVideoCodecState</doc>
             <type name="VideoCodecState" c:type="GstVideoCodecState*"/>
           </parameter>
         </parameters>
@@ -6136,21 +11508,39 @@ from the next call to #gst_video_encoder_finish_frame().</doc>
       <method name="set_qos_enabled"
               c:identifier="gst_video_encoder_set_qos_enabled"
               version="1.14">
-        <doc xml:space="preserve">Configures @encoder to handle Quality-of-Service events from downstream.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideoencoder.c"
+             line="3071">Configures @encoder to handle Quality-of-Service events from downstream.</doc>
+        <source-position filename="gst-libs/gst/video/gstvideoencoder.h"
+                         line="376"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="encoder" transfer-ownership="none">
-            <doc xml:space="preserve">the encoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideoencoder.c"
+                 line="3073">the encoder</doc>
             <type name="VideoEncoder" c:type="GstVideoEncoder*"/>
           </instance-parameter>
           <parameter name="enabled" transfer-ownership="none">
-            <doc xml:space="preserve">the new qos value.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideoencoder.c"
+                 line="3074">the new qos value.</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </method>
+      <property name="min-force-key-unit-interval"
+                version="1.18"
+                writable="1"
+                transfer-ownership="none">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideoencoder.c"
+             line="406">Minimum interval between force-keyunit requests in nanoseconds. See
+gst_video_encoder_set_min_force_key_unit_interval() for more details.</doc>
+        <type name="guint64" c:type="guint64"/>
+      </property>
       <property name="qos" writable="1" transfer-ownership="none">
         <type name="gboolean" c:type="gboolean"/>
       </property>
@@ -6176,7 +11566,7 @@ from the next call to #gst_video_encoder_finish_frame().</doc>
         <type name="VideoEncoderPrivate" c:type="GstVideoEncoderPrivate*"/>
       </field>
       <field name="padding" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="20">
+        <array zero-terminated="0" fixed-size="20">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -6184,14 +11574,20 @@ from the next call to #gst_video_encoder_finish_frame().</doc>
     <record name="VideoEncoderClass"
             c:type="GstVideoEncoderClass"
             glib:is-gtype-struct-for="VideoEncoder">
-      <doc xml:space="preserve">Subclasses can override any of the available virtual methods or not, as
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/gstvideoencoder.h"
+           line="159">Subclasses can override any of the available virtual methods or not, as
 needed. At minimum @handle_frame needs to be overridden, and @set_format
 and @get_caps are likely needed as well.</doc>
+      <source-position filename="gst-libs/gst/video/gstvideoencoder.h"
+                       line="300"/>
       <field name="element_class" readable="0" private="1">
         <type name="Gst.ElementClass" c:type="GstElementClass"/>
       </field>
       <field name="open">
         <callback name="open">
+          <source-position filename="gst-libs/gst/video/gstvideoencoder.h"
+                           line="249"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -6204,6 +11600,8 @@ and @get_caps are likely needed as well.</doc>
       </field>
       <field name="close">
         <callback name="close">
+          <source-position filename="gst-libs/gst/video/gstvideoencoder.h"
+                           line="251"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -6216,6 +11614,8 @@ and @get_caps are likely needed as well.</doc>
       </field>
       <field name="start">
         <callback name="start">
+          <source-position filename="gst-libs/gst/video/gstvideoencoder.h"
+                           line="253"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -6228,6 +11628,8 @@ and @get_caps are likely needed as well.</doc>
       </field>
       <field name="stop">
         <callback name="stop">
+          <source-position filename="gst-libs/gst/video/gstvideoencoder.h"
+                           line="255"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -6240,6 +11642,8 @@ and @get_caps are likely needed as well.</doc>
       </field>
       <field name="set_format">
         <callback name="set_format">
+          <source-position filename="gst-libs/gst/video/gstvideoencoder.h"
+                           line="257"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -6255,6 +11659,8 @@ and @get_caps are likely needed as well.</doc>
       </field>
       <field name="handle_frame">
         <callback name="handle_frame">
+          <source-position filename="gst-libs/gst/video/gstvideoencoder.h"
+                           line="260"/>
           <return-value transfer-ownership="none">
             <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
           </return-value>
@@ -6270,6 +11676,8 @@ and @get_caps are likely needed as well.</doc>
       </field>
       <field name="reset">
         <callback name="reset">
+          <source-position filename="gst-libs/gst/video/gstvideoencoder.h"
+                           line="263"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -6285,6 +11693,8 @@ and @get_caps are likely needed as well.</doc>
       </field>
       <field name="finish">
         <callback name="finish">
+          <source-position filename="gst-libs/gst/video/gstvideoencoder.h"
+                           line="266"/>
           <return-value transfer-ownership="none">
             <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
           </return-value>
@@ -6297,6 +11707,8 @@ and @get_caps are likely needed as well.</doc>
       </field>
       <field name="pre_push">
         <callback name="pre_push">
+          <source-position filename="gst-libs/gst/video/gstvideoencoder.h"
+                           line="268"/>
           <return-value transfer-ownership="none">
             <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
           </return-value>
@@ -6312,6 +11724,8 @@ and @get_caps are likely needed as well.</doc>
       </field>
       <field name="getcaps">
         <callback name="getcaps">
+          <source-position filename="gst-libs/gst/video/gstvideoencoder.h"
+                           line="271"/>
           <return-value transfer-ownership="full">
             <type name="Gst.Caps" c:type="GstCaps*"/>
           </return-value>
@@ -6327,6 +11741,8 @@ and @get_caps are likely needed as well.</doc>
       </field>
       <field name="sink_event">
         <callback name="sink_event">
+          <source-position filename="gst-libs/gst/video/gstvideoencoder.h"
+                           line="274"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -6342,6 +11758,8 @@ and @get_caps are likely needed as well.</doc>
       </field>
       <field name="src_event">
         <callback name="src_event">
+          <source-position filename="gst-libs/gst/video/gstvideoencoder.h"
+                           line="277"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -6357,13 +11775,19 @@ and @get_caps are likely needed as well.</doc>
       </field>
       <field name="negotiate">
         <callback name="negotiate">
+          <source-position filename="gst-libs/gst/video/gstvideoencoder.h"
+                           line="280"/>
           <return-value transfer-ownership="none">
-            <doc xml:space="preserve">%TRUE if the negotiation succeeded, else %FALSE.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideoencoder.c"
+                 line="1994">%TRUE if the negotiation succeeded, else %FALSE.</doc>
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
           <parameters>
             <parameter name="encoder" transfer-ownership="none">
-              <doc xml:space="preserve">a #GstVideoEncoder</doc>
+              <doc xml:space="preserve"
+                   filename="gst-libs/gst/video/gstvideoencoder.c"
+                   line="1988">a #GstVideoEncoder</doc>
               <type name="VideoEncoder" c:type="GstVideoEncoder*"/>
             </parameter>
           </parameters>
@@ -6371,6 +11795,8 @@ and @get_caps are likely needed as well.</doc>
       </field>
       <field name="decide_allocation">
         <callback name="decide_allocation">
+          <source-position filename="gst-libs/gst/video/gstvideoencoder.h"
+                           line="282"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -6386,6 +11812,8 @@ and @get_caps are likely needed as well.</doc>
       </field>
       <field name="propose_allocation">
         <callback name="propose_allocation">
+          <source-position filename="gst-libs/gst/video/gstvideoencoder.h"
+                           line="284"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -6401,6 +11829,8 @@ and @get_caps are likely needed as well.</doc>
       </field>
       <field name="flush">
         <callback name="flush">
+          <source-position filename="gst-libs/gst/video/gstvideoencoder.h"
+                           line="286"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -6413,6 +11843,8 @@ and @get_caps are likely needed as well.</doc>
       </field>
       <field name="sink_query">
         <callback name="sink_query">
+          <source-position filename="gst-libs/gst/video/gstvideoencoder.h"
+                           line="288"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -6428,6 +11860,8 @@ and @get_caps are likely needed as well.</doc>
       </field>
       <field name="src_query">
         <callback name="src_query">
+          <source-position filename="gst-libs/gst/video/gstvideoencoder.h"
+                           line="291"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -6443,6 +11877,8 @@ and @get_caps are likely needed as well.</doc>
       </field>
       <field name="transform_meta">
         <callback name="transform_meta">
+          <source-position filename="gst-libs/gst/video/gstvideoencoder.h"
+                           line="294"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -6460,7 +11896,7 @@ and @get_caps are likely needed as well.</doc>
         </callback>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="16">
+        <array zero-terminated="0" fixed-size="16">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -6468,13 +11904,17 @@ and @get_caps are likely needed as well.</doc>
     <record name="VideoEncoderPrivate"
             c:type="GstVideoEncoderPrivate"
             disguised="1">
+      <source-position filename="gst-libs/gst/video/gstvideoencoder.h"
+                       line="127"/>
     </record>
     <enumeration name="VideoFieldOrder"
                  version="1.12"
                  glib:type-name="GstVideoFieldOrder"
                  glib:get-type="gst_video_field_order_get_type"
                  c:type="GstVideoFieldOrder">
-      <doc xml:space="preserve">Field order of interlaced content. This is only valid for
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-info.h"
+           line="260">Field order of interlaced content. This is only valid for
 interlace-mode=interleaved and not interlace-mode=mixed. In the case of
 mixed or GST_VIDEO_FIELD_ORDER_UNKOWN, the field order is signalled via
 buffer flags.</doc>
@@ -6482,34 +11922,48 @@ buffer flags.</doc>
               value="0"
               c:identifier="GST_VIDEO_FIELD_ORDER_UNKNOWN"
               glib:nick="unknown">
-        <doc xml:space="preserve">unknown field order for interlaced content.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-info.h"
+             line="262">unknown field order for interlaced content.
     The actual field order is signalled via buffer flags.</doc>
       </member>
       <member name="top_field_first"
               value="1"
               c:identifier="GST_VIDEO_FIELD_ORDER_TOP_FIELD_FIRST"
               glib:nick="top-field-first">
-        <doc xml:space="preserve">top field is first</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-info.h"
+             line="264">top field is first</doc>
       </member>
       <member name="bottom_field_first"
               value="2"
               c:identifier="GST_VIDEO_FIELD_ORDER_BOTTOM_FIELD_FIRST"
               glib:nick="bottom-field-first">
-        <doc xml:space="preserve">bottom field is first</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-info.h"
+             line="265">bottom field is first</doc>
       </member>
       <function name="from_string"
                 c:identifier="gst_video_field_order_from_string"
                 version="1.12">
-        <doc xml:space="preserve">Convert @order to a #GstVideoFieldOrder</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the #GstVideoFieldOrder of @order or
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-info.c"
+             line="363">Convert @order to a #GstVideoFieldOrder</doc>
+        <source-position filename="gst-libs/gst/video/video-info.h"
+                         line="284"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-info.c"
+               line="369">the #GstVideoFieldOrder of @order or
    #GST_VIDEO_FIELD_ORDER_UNKNOWN when @order is not a valid
    string representation for a #GstVideoFieldOrder.</doc>
           <type name="VideoFieldOrder" c:type="GstVideoFieldOrder"/>
         </return-value>
         <parameters>
           <parameter name="order" transfer-ownership="none">
-            <doc xml:space="preserve">a field order</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-info.c"
+                 line="365">a field order</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
@@ -6517,14 +11971,22 @@ buffer flags.</doc>
       <function name="to_string"
                 c:identifier="gst_video_field_order_to_string"
                 version="1.12">
-        <doc xml:space="preserve">Convert @order to its string representation.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">@order as a string or NULL if @order in invalid.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-info.c"
+             line="344">Convert @order to its string representation.</doc>
+        <source-position filename="gst-libs/gst/video/video-info.h"
+                         line="281"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-info.c"
+               line="350">@order as a string or NULL if @order in invalid.</doc>
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
         <parameters>
           <parameter name="order" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoFieldOrder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-info.c"
+                 line="346">a #GstVideoFieldOrder</doc>
             <type name="VideoFieldOrder" c:type="GstVideoFieldOrder"/>
           </parameter>
         </parameters>
@@ -6538,11 +12000,17 @@ buffer flags.</doc>
            glib:type-name="GstVideoFilter"
            glib:get-type="gst_video_filter_get_type"
            glib:type-struct="VideoFilterClass">
-      <doc xml:space="preserve">Provides useful functions and a base class for video filters.
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/gstvideofilter.c"
+           line="21">Provides useful functions and a base class for video filters.
 
 The videofilter will by default enable QoS on the parent GstBaseTransform
 to implement frame dropping.</doc>
+      <source-position filename="gst-libs/gst/video/gstvideofilter.h"
+                       line="80"/>
       <virtual-method name="set_info">
+        <source-position filename="gst-libs/gst/video/gstvideofilter.h"
+                         line="69"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -6565,6 +12033,8 @@ to implement frame dropping.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="transform_frame">
+        <source-position filename="gst-libs/gst/video/gstvideofilter.h"
+                         line="74"/>
         <return-value transfer-ownership="none">
           <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
@@ -6581,6 +12051,8 @@ to implement frame dropping.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="transform_frame_ip">
+        <source-position filename="gst-libs/gst/video/gstvideofilter.h"
+                         line="76"/>
         <return-value transfer-ownership="none">
           <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
@@ -6606,7 +12078,7 @@ to implement frame dropping.</doc>
         <type name="VideoInfo" c:type="GstVideoInfo"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -6614,14 +12086,22 @@ to implement frame dropping.</doc>
     <record name="VideoFilterClass"
             c:type="GstVideoFilterClass"
             glib:is-gtype-struct-for="VideoFilter">
-      <doc xml:space="preserve">The video filter class structure.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/gstvideofilter.h"
+           line="57">The video filter class structure.</doc>
+      <source-position filename="gst-libs/gst/video/gstvideofilter.h"
+                       line="80"/>
       <field name="parent_class">
-        <doc xml:space="preserve">the parent class structure</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideofilter.h"
+             line="59">the parent class structure</doc>
         <type name="GstBase.BaseTransformClass"
               c:type="GstBaseTransformClass"/>
       </field>
       <field name="set_info">
         <callback name="set_info">
+          <source-position filename="gst-libs/gst/video/gstvideofilter.h"
+                           line="69"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -6646,6 +12126,8 @@ to implement frame dropping.</doc>
       </field>
       <field name="transform_frame">
         <callback name="transform_frame">
+          <source-position filename="gst-libs/gst/video/gstvideofilter.h"
+                           line="74"/>
           <return-value transfer-ownership="none">
             <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
           </return-value>
@@ -6664,6 +12146,8 @@ to implement frame dropping.</doc>
       </field>
       <field name="transform_frame_ip">
         <callback name="transform_frame_ip">
+          <source-position filename="gst-libs/gst/video/gstvideofilter.h"
+                           line="76"/>
           <return-value transfer-ownership="none">
             <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
           </return-value>
@@ -6678,7 +12162,7 @@ to implement frame dropping.</doc>
         </callback>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -6687,25 +12171,33 @@ to implement frame dropping.</doc>
               glib:type-name="GstVideoFlags"
               glib:get-type="gst_video_flags_get_type"
               c:type="GstVideoFlags">
-      <doc xml:space="preserve">Extra video flags</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-info.h"
+           line="244">Extra video flags</doc>
       <member name="none"
               value="0"
               c:identifier="GST_VIDEO_FLAG_NONE"
               glib:nick="none">
-        <doc xml:space="preserve">no flags</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-info.h"
+             line="246">no flags</doc>
       </member>
       <member name="variable_fps"
               value="1"
               c:identifier="GST_VIDEO_FLAG_VARIABLE_FPS"
               glib:nick="variable-fps">
-        <doc xml:space="preserve">a variable fps is selected, fps_n and fps_d
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-info.h"
+             line="247">a variable fps is selected, fps_n and fps_d
     denote the maximum fps of the video</doc>
       </member>
       <member name="premultiplied_alpha"
               value="2"
               c:identifier="GST_VIDEO_FLAG_PREMULTIPLIED_ALPHA"
               glib:nick="premultiplied-alpha">
-        <doc xml:space="preserve">Each color has been scaled by the alpha
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-info.h"
+             line="249">Each color has been scaled by the alpha
     value.</doc>
       </member>
     </bitfield>
@@ -6713,21 +12205,27 @@ to implement frame dropping.</doc>
                  glib:type-name="GstVideoFormat"
                  glib:get-type="gst_video_format_get_type"
                  c:type="GstVideoFormat">
-      <doc xml:space="preserve">Enum value describing the most common video formats.
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-format.h"
+           line="30">Enum value describing the most common video formats.
 
-See the [GStreamer raw video format design document](https://gstreamer.freedesktop.org/documentation/design/mediatype-video-raw.html#formats)
+See the [GStreamer raw video format design document](https://gstreamer.freedesktop.org/documentation/additional/design/mediatype-video-raw.html#formats)
 for details about the layout and packing of these formats in memory.</doc>
       <member name="unknown"
               value="0"
               c:identifier="GST_VIDEO_FORMAT_UNKNOWN"
               glib:nick="unknown">
-        <doc xml:space="preserve">Unknown or unset video format id</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="32">Unknown or unset video format id</doc>
       </member>
       <member name="encoded"
               value="1"
               c:identifier="GST_VIDEO_FORMAT_ENCODED"
               glib:nick="encoded">
-        <doc xml:space="preserve">Encoded video format. Only ever use that in caps for
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="33">Encoded video format. Only ever use that in caps for
                            special video formats in combination with non-system
                            memory GstCapsFeatures where it does not make sense
                            to specify a real video format.</doc>
@@ -6736,583 +12234,883 @@ for details about the layout and packing of these formats in memory.</doc>
               value="2"
               c:identifier="GST_VIDEO_FORMAT_I420"
               glib:nick="i420">
-        <doc xml:space="preserve">planar 4:2:0 YUV</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="37">planar 4:2:0 YUV</doc>
       </member>
       <member name="yv12"
               value="3"
               c:identifier="GST_VIDEO_FORMAT_YV12"
               glib:nick="yv12">
-        <doc xml:space="preserve">planar 4:2:0 YVU (like I420 but UV planes swapped)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="38">planar 4:2:0 YVU (like I420 but UV planes swapped)</doc>
       </member>
       <member name="yuy2"
               value="4"
               c:identifier="GST_VIDEO_FORMAT_YUY2"
               glib:nick="yuy2">
-        <doc xml:space="preserve">packed 4:2:2 YUV (Y0-U0-Y1-V0 Y2-U2-Y3-V2 Y4 ...)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="39">packed 4:2:2 YUV (Y0-U0-Y1-V0 Y2-U2-Y3-V2 Y4 ...)</doc>
       </member>
       <member name="uyvy"
               value="5"
               c:identifier="GST_VIDEO_FORMAT_UYVY"
               glib:nick="uyvy">
-        <doc xml:space="preserve">packed 4:2:2 YUV (U0-Y0-V0-Y1 U2-Y2-V2-Y3 U4 ...)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="40">packed 4:2:2 YUV (U0-Y0-V0-Y1 U2-Y2-V2-Y3 U4 ...)</doc>
       </member>
       <member name="ayuv"
               value="6"
               c:identifier="GST_VIDEO_FORMAT_AYUV"
               glib:nick="ayuv">
-        <doc xml:space="preserve">packed 4:4:4 YUV with alpha channel (A0-Y0-U0-V0 ...)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="42">packed 4:4:4 YUV with alpha channel (A0-Y0-U0-V0 ...)</doc>
       </member>
       <member name="rgbx"
               value="7"
               c:identifier="GST_VIDEO_FORMAT_RGBx"
               glib:nick="rgbx">
-        <doc xml:space="preserve">sparse rgb packed into 32 bit, space last</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="43">sparse rgb packed into 32 bit, space last</doc>
       </member>
       <member name="bgrx"
               value="8"
               c:identifier="GST_VIDEO_FORMAT_BGRx"
               glib:nick="bgrx">
-        <doc xml:space="preserve">sparse reverse rgb packed into 32 bit, space last</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="44">sparse reverse rgb packed into 32 bit, space last</doc>
       </member>
       <member name="xrgb"
               value="9"
               c:identifier="GST_VIDEO_FORMAT_xRGB"
               glib:nick="xrgb">
-        <doc xml:space="preserve">sparse rgb packed into 32 bit, space first</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="45">sparse rgb packed into 32 bit, space first</doc>
       </member>
       <member name="xbgr"
               value="10"
               c:identifier="GST_VIDEO_FORMAT_xBGR"
               glib:nick="xbgr">
-        <doc xml:space="preserve">sparse reverse rgb packed into 32 bit, space first</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="46">sparse reverse rgb packed into 32 bit, space first</doc>
       </member>
       <member name="rgba"
               value="11"
               c:identifier="GST_VIDEO_FORMAT_RGBA"
               glib:nick="rgba">
-        <doc xml:space="preserve">rgb with alpha channel last</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="47">rgb with alpha channel last</doc>
       </member>
       <member name="bgra"
               value="12"
               c:identifier="GST_VIDEO_FORMAT_BGRA"
               glib:nick="bgra">
-        <doc xml:space="preserve">reverse rgb with alpha channel last</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="48">reverse rgb with alpha channel last</doc>
       </member>
       <member name="argb"
               value="13"
               c:identifier="GST_VIDEO_FORMAT_ARGB"
               glib:nick="argb">
-        <doc xml:space="preserve">rgb with alpha channel first</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="49">rgb with alpha channel first</doc>
       </member>
       <member name="abgr"
               value="14"
               c:identifier="GST_VIDEO_FORMAT_ABGR"
               glib:nick="abgr">
-        <doc xml:space="preserve">reverse rgb with alpha channel first</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="50">reverse rgb with alpha channel first</doc>
       </member>
       <member name="rgb"
               value="15"
               c:identifier="GST_VIDEO_FORMAT_RGB"
               glib:nick="rgb">
-        <doc xml:space="preserve">RGB packed into 24 bits without padding (`R-G-B-R-G-B`)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="51">RGB packed into 24 bits without padding (`R-G-B-R-G-B`)</doc>
       </member>
       <member name="bgr"
               value="16"
               c:identifier="GST_VIDEO_FORMAT_BGR"
               glib:nick="bgr">
-        <doc xml:space="preserve">reverse RGB packed into 24 bits without padding (`B-G-R-B-G-R`)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="52">reverse RGB packed into 24 bits without padding (`B-G-R-B-G-R`)</doc>
       </member>
       <member name="y41b"
               value="17"
               c:identifier="GST_VIDEO_FORMAT_Y41B"
               glib:nick="y41b">
-        <doc xml:space="preserve">planar 4:1:1 YUV</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="53">planar 4:1:1 YUV</doc>
       </member>
       <member name="y42b"
               value="18"
               c:identifier="GST_VIDEO_FORMAT_Y42B"
               glib:nick="y42b">
-        <doc xml:space="preserve">planar 4:2:2 YUV</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="54">planar 4:2:2 YUV</doc>
       </member>
       <member name="yvyu"
               value="19"
               c:identifier="GST_VIDEO_FORMAT_YVYU"
               glib:nick="yvyu">
-        <doc xml:space="preserve">packed 4:2:2 YUV (Y0-V0-Y1-U0 Y2-V2-Y3-U2 Y4 ...)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="55">packed 4:2:2 YUV (Y0-V0-Y1-U0 Y2-V2-Y3-U2 Y4 ...)</doc>
       </member>
       <member name="y444"
               value="20"
               c:identifier="GST_VIDEO_FORMAT_Y444"
               glib:nick="y444">
-        <doc xml:space="preserve">planar 4:4:4 YUV</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="56">planar 4:4:4 YUV</doc>
       </member>
       <member name="v210"
               value="21"
               c:identifier="GST_VIDEO_FORMAT_v210"
               glib:nick="v210">
-        <doc xml:space="preserve">packed 4:2:2 10-bit YUV, complex format</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="57">packed 4:2:2 10-bit YUV, complex format</doc>
       </member>
       <member name="v216"
               value="22"
               c:identifier="GST_VIDEO_FORMAT_v216"
               glib:nick="v216">
-        <doc xml:space="preserve">packed 4:2:2 16-bit YUV, Y0-U0-Y1-V1 order</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="58">packed 4:2:2 16-bit YUV, Y0-U0-Y1-V1 order</doc>
       </member>
       <member name="nv12"
               value="23"
               c:identifier="GST_VIDEO_FORMAT_NV12"
               glib:nick="nv12">
-        <doc xml:space="preserve">planar 4:2:0 YUV with interleaved UV plane</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="59">planar 4:2:0 YUV with interleaved UV plane</doc>
       </member>
       <member name="nv21"
               value="24"
               c:identifier="GST_VIDEO_FORMAT_NV21"
               glib:nick="nv21">
-        <doc xml:space="preserve">planar 4:2:0 YUV with interleaved VU plane</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="60">planar 4:2:0 YUV with interleaved VU plane</doc>
       </member>
       <member name="gray8"
               value="25"
               c:identifier="GST_VIDEO_FORMAT_GRAY8"
               glib:nick="gray8">
-        <doc xml:space="preserve">8-bit grayscale</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="62">8-bit grayscale</doc>
       </member>
       <member name="gray16_be"
               value="26"
               c:identifier="GST_VIDEO_FORMAT_GRAY16_BE"
               glib:nick="gray16-be">
-        <doc xml:space="preserve">16-bit grayscale, most significant byte first</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="64">16-bit grayscale, most significant byte first</doc>
       </member>
       <member name="gray16_le"
               value="27"
               c:identifier="GST_VIDEO_FORMAT_GRAY16_LE"
               glib:nick="gray16-le">
-        <doc xml:space="preserve">16-bit grayscale, least significant byte first</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="65">16-bit grayscale, least significant byte first</doc>
       </member>
       <member name="v308"
               value="28"
               c:identifier="GST_VIDEO_FORMAT_v308"
               glib:nick="v308">
-        <doc xml:space="preserve">packed 4:4:4 YUV (Y-U-V ...)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="66">packed 4:4:4 YUV (Y-U-V ...)</doc>
       </member>
       <member name="rgb16"
               value="29"
               c:identifier="GST_VIDEO_FORMAT_RGB16"
               glib:nick="rgb16">
-        <doc xml:space="preserve">rgb 5-6-5 bits per component</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="68">rgb 5-6-5 bits per component</doc>
       </member>
       <member name="bgr16"
               value="30"
               c:identifier="GST_VIDEO_FORMAT_BGR16"
               glib:nick="bgr16">
-        <doc xml:space="preserve">reverse rgb 5-6-5 bits per component</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="69">reverse rgb 5-6-5 bits per component</doc>
       </member>
       <member name="rgb15"
               value="31"
               c:identifier="GST_VIDEO_FORMAT_RGB15"
               glib:nick="rgb15">
-        <doc xml:space="preserve">rgb 5-5-5 bits per component</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="70">rgb 5-5-5 bits per component</doc>
       </member>
       <member name="bgr15"
               value="32"
               c:identifier="GST_VIDEO_FORMAT_BGR15"
               glib:nick="bgr15">
-        <doc xml:space="preserve">reverse rgb 5-5-5 bits per component</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="71">reverse rgb 5-5-5 bits per component</doc>
       </member>
       <member name="uyvp"
               value="33"
               c:identifier="GST_VIDEO_FORMAT_UYVP"
               glib:nick="uyvp">
-        <doc xml:space="preserve">packed 10-bit 4:2:2 YUV (U0-Y0-V0-Y1 U2-Y2-V2-Y3 U4 ...)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="72">packed 10-bit 4:2:2 YUV (U0-Y0-V0-Y1 U2-Y2-V2-Y3 U4 ...)</doc>
       </member>
       <member name="a420"
               value="34"
               c:identifier="GST_VIDEO_FORMAT_A420"
               glib:nick="a420">
-        <doc xml:space="preserve">planar 4:4:2:0 AYUV</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="73">planar 4:4:2:0 AYUV</doc>
       </member>
       <member name="rgb8p"
               value="35"
               c:identifier="GST_VIDEO_FORMAT_RGB8P"
               glib:nick="rgb8p">
-        <doc xml:space="preserve">8-bit paletted RGB</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="74">8-bit paletted RGB</doc>
       </member>
       <member name="yuv9"
               value="36"
               c:identifier="GST_VIDEO_FORMAT_YUV9"
               glib:nick="yuv9">
-        <doc xml:space="preserve">planar 4:1:0 YUV</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="75">planar 4:1:0 YUV</doc>
       </member>
       <member name="yvu9"
               value="37"
               c:identifier="GST_VIDEO_FORMAT_YVU9"
               glib:nick="yvu9">
-        <doc xml:space="preserve">planar 4:1:0 YUV (like YUV9 but UV planes swapped)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="76">planar 4:1:0 YUV (like YUV9 but UV planes swapped)</doc>
       </member>
       <member name="iyu1"
               value="38"
               c:identifier="GST_VIDEO_FORMAT_IYU1"
               glib:nick="iyu1">
-        <doc xml:space="preserve">packed 4:1:1 YUV (Cb-Y0-Y1-Cr-Y2-Y3 ...)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="77">packed 4:1:1 YUV (Cb-Y0-Y1-Cr-Y2-Y3 ...)</doc>
       </member>
       <member name="argb64"
               value="39"
               c:identifier="GST_VIDEO_FORMAT_ARGB64"
               glib:nick="argb64">
-        <doc xml:space="preserve">rgb with alpha channel first, 16 bits per channel</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="78">rgb with alpha channel first, 16 bits per channel</doc>
       </member>
       <member name="ayuv64"
               value="40"
               c:identifier="GST_VIDEO_FORMAT_AYUV64"
               glib:nick="ayuv64">
-        <doc xml:space="preserve">packed 4:4:4 YUV with alpha channel, 16 bits per channel (A0-Y0-U0-V0 ...)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="79">packed 4:4:4 YUV with alpha channel, 16 bits per channel (A0-Y0-U0-V0 ...)</doc>
       </member>
       <member name="r210"
               value="41"
               c:identifier="GST_VIDEO_FORMAT_r210"
               glib:nick="r210">
-        <doc xml:space="preserve">packed 4:4:4 RGB, 10 bits per channel</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="80">packed 4:4:4 RGB, 10 bits per channel</doc>
       </member>
       <member name="i420_10be"
               value="42"
               c:identifier="GST_VIDEO_FORMAT_I420_10BE"
               glib:nick="i420-10be">
-        <doc xml:space="preserve">planar 4:2:0 YUV, 10 bits per channel</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="81">planar 4:2:0 YUV, 10 bits per channel</doc>
       </member>
       <member name="i420_10le"
               value="43"
               c:identifier="GST_VIDEO_FORMAT_I420_10LE"
               glib:nick="i420-10le">
-        <doc xml:space="preserve">planar 4:2:0 YUV, 10 bits per channel</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="82">planar 4:2:0 YUV, 10 bits per channel</doc>
       </member>
       <member name="i422_10be"
               value="44"
               c:identifier="GST_VIDEO_FORMAT_I422_10BE"
               glib:nick="i422-10be">
-        <doc xml:space="preserve">planar 4:2:2 YUV, 10 bits per channel</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="83">planar 4:2:2 YUV, 10 bits per channel</doc>
       </member>
       <member name="i422_10le"
               value="45"
               c:identifier="GST_VIDEO_FORMAT_I422_10LE"
               glib:nick="i422-10le">
-        <doc xml:space="preserve">planar 4:2:2 YUV, 10 bits per channel</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="84">planar 4:2:2 YUV, 10 bits per channel</doc>
       </member>
       <member name="y444_10be"
               value="46"
               c:identifier="GST_VIDEO_FORMAT_Y444_10BE"
               glib:nick="y444-10be">
-        <doc xml:space="preserve">planar 4:4:4 YUV, 10 bits per channel (Since: 1.2)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="85">planar 4:4:4 YUV, 10 bits per channel (Since: 1.2)</doc>
       </member>
       <member name="y444_10le"
               value="47"
               c:identifier="GST_VIDEO_FORMAT_Y444_10LE"
               glib:nick="y444-10le">
-        <doc xml:space="preserve">planar 4:4:4 YUV, 10 bits per channel (Since: 1.2)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="86">planar 4:4:4 YUV, 10 bits per channel (Since: 1.2)</doc>
       </member>
       <member name="gbr"
               value="48"
               c:identifier="GST_VIDEO_FORMAT_GBR"
               glib:nick="gbr">
-        <doc xml:space="preserve">planar 4:4:4 RGB, 8 bits per channel (Since: 1.2)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="87">planar 4:4:4 RGB, 8 bits per channel (Since: 1.2)</doc>
       </member>
       <member name="gbr_10be"
               value="49"
               c:identifier="GST_VIDEO_FORMAT_GBR_10BE"
               glib:nick="gbr-10be">
-        <doc xml:space="preserve">planar 4:4:4 RGB, 10 bits per channel (Since: 1.2)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="88">planar 4:4:4 RGB, 10 bits per channel (Since: 1.2)</doc>
       </member>
       <member name="gbr_10le"
               value="50"
               c:identifier="GST_VIDEO_FORMAT_GBR_10LE"
               glib:nick="gbr-10le">
-        <doc xml:space="preserve">planar 4:4:4 RGB, 10 bits per channel (Since: 1.2)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="89">planar 4:4:4 RGB, 10 bits per channel (Since: 1.2)</doc>
       </member>
       <member name="nv16"
               value="51"
               c:identifier="GST_VIDEO_FORMAT_NV16"
               glib:nick="nv16">
-        <doc xml:space="preserve">planar 4:2:2 YUV with interleaved UV plane (Since: 1.2)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="90">planar 4:2:2 YUV with interleaved UV plane (Since: 1.2)</doc>
       </member>
       <member name="nv24"
               value="52"
               c:identifier="GST_VIDEO_FORMAT_NV24"
               glib:nick="nv24">
-        <doc xml:space="preserve">planar 4:4:4 YUV with interleaved UV plane (Since: 1.2)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="92">planar 4:4:4 YUV with interleaved UV plane (Since: 1.2)</doc>
       </member>
       <member name="nv12_64z32"
               value="53"
               c:identifier="GST_VIDEO_FORMAT_NV12_64Z32"
               glib:nick="nv12-64z32">
-        <doc xml:space="preserve">NV12 with 64x32 tiling in zigzag pattern (Since: 1.4)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="93">NV12 with 64x32 tiling in zigzag pattern (Since: 1.4)</doc>
       </member>
       <member name="a420_10be"
               value="54"
               c:identifier="GST_VIDEO_FORMAT_A420_10BE"
               glib:nick="a420-10be">
-        <doc xml:space="preserve">planar 4:4:2:0 YUV, 10 bits per channel (Since: 1.6)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="94">planar 4:4:2:0 YUV, 10 bits per channel (Since: 1.6)</doc>
       </member>
       <member name="a420_10le"
               value="55"
               c:identifier="GST_VIDEO_FORMAT_A420_10LE"
               glib:nick="a420-10le">
-        <doc xml:space="preserve">planar 4:4:2:0 YUV, 10 bits per channel (Since: 1.6)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="95">planar 4:4:2:0 YUV, 10 bits per channel (Since: 1.6)</doc>
       </member>
       <member name="a422_10be"
               value="56"
               c:identifier="GST_VIDEO_FORMAT_A422_10BE"
               glib:nick="a422-10be">
-        <doc xml:space="preserve">planar 4:4:2:2 YUV, 10 bits per channel (Since: 1.6)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="96">planar 4:4:2:2 YUV, 10 bits per channel (Since: 1.6)</doc>
       </member>
       <member name="a422_10le"
               value="57"
               c:identifier="GST_VIDEO_FORMAT_A422_10LE"
               glib:nick="a422-10le">
-        <doc xml:space="preserve">planar 4:4:2:2 YUV, 10 bits per channel (Since: 1.6)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="97">planar 4:4:2:2 YUV, 10 bits per channel (Since: 1.6)</doc>
       </member>
       <member name="a444_10be"
               value="58"
               c:identifier="GST_VIDEO_FORMAT_A444_10BE"
               glib:nick="a444-10be">
-        <doc xml:space="preserve">planar 4:4:4:4 YUV, 10 bits per channel (Since: 1.6)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="98">planar 4:4:4:4 YUV, 10 bits per channel (Since: 1.6)</doc>
       </member>
       <member name="a444_10le"
               value="59"
               c:identifier="GST_VIDEO_FORMAT_A444_10LE"
               glib:nick="a444-10le">
-        <doc xml:space="preserve">planar 4:4:4:4 YUV, 10 bits per channel (Since: 1.6)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="99">planar 4:4:4:4 YUV, 10 bits per channel (Since: 1.6)</doc>
       </member>
       <member name="nv61"
               value="60"
               c:identifier="GST_VIDEO_FORMAT_NV61"
               glib:nick="nv61">
-        <doc xml:space="preserve">planar 4:2:2 YUV with interleaved VU plane (Since: 1.6)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="100">planar 4:2:2 YUV with interleaved VU plane (Since: 1.6)</doc>
       </member>
       <member name="p010_10be"
               value="61"
               c:identifier="GST_VIDEO_FORMAT_P010_10BE"
               glib:nick="p010-10be">
-        <doc xml:space="preserve">planar 4:2:0 YUV with interleaved UV plane, 10 bits per channel (Since: 1.10)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="101">planar 4:2:0 YUV with interleaved UV plane, 10 bits per channel (Since: 1.10)</doc>
       </member>
       <member name="p010_10le"
               value="62"
               c:identifier="GST_VIDEO_FORMAT_P010_10LE"
               glib:nick="p010-10le">
-        <doc xml:space="preserve">planar 4:2:0 YUV with interleaved UV plane, 10 bits per channel (Since: 1.10)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="102">planar 4:2:0 YUV with interleaved UV plane, 10 bits per channel (Since: 1.10)</doc>
       </member>
       <member name="iyu2"
               value="63"
               c:identifier="GST_VIDEO_FORMAT_IYU2"
               glib:nick="iyu2">
-        <doc xml:space="preserve">packed 4:4:4 YUV (U-Y-V ...) (Since 1.10)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="67">packed 4:4:4 YUV (U-Y-V ...) (Since: 1.10)</doc>
       </member>
       <member name="vyuy"
               value="64"
               c:identifier="GST_VIDEO_FORMAT_VYUY"
               glib:nick="vyuy">
-        <doc xml:space="preserve">packed 4:2:2 YUV (V0-Y0-U0-Y1 V2-Y2-U2-Y3 V4 ...)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="41">packed 4:2:2 YUV (V0-Y0-U0-Y1 V2-Y2-U2-Y3 V4 ...)</doc>
       </member>
       <member name="gbra"
               value="65"
               c:identifier="GST_VIDEO_FORMAT_GBRA"
               glib:nick="gbra">
-        <doc xml:space="preserve">planar 4:4:4:4 ARGB, 8 bits per channel (Since: 1.12)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="103">planar 4:4:4:4 ARGB, 8 bits per channel (Since: 1.12)</doc>
       </member>
       <member name="gbra_10be"
               value="66"
               c:identifier="GST_VIDEO_FORMAT_GBRA_10BE"
               glib:nick="gbra-10be">
-        <doc xml:space="preserve">planar 4:4:4:4 ARGB, 10 bits per channel (Since: 1.12)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="104">planar 4:4:4:4 ARGB, 10 bits per channel (Since: 1.12)</doc>
       </member>
       <member name="gbra_10le"
               value="67"
               c:identifier="GST_VIDEO_FORMAT_GBRA_10LE"
               glib:nick="gbra-10le">
-        <doc xml:space="preserve">planar 4:4:4:4 ARGB, 10 bits per channel (Since: 1.12)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="105">planar 4:4:4:4 ARGB, 10 bits per channel (Since: 1.12)</doc>
       </member>
       <member name="gbr_12be"
               value="68"
               c:identifier="GST_VIDEO_FORMAT_GBR_12BE"
               glib:nick="gbr-12be">
-        <doc xml:space="preserve">planar 4:4:4 RGB, 12 bits per channel (Since: 1.12)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="106">planar 4:4:4 RGB, 12 bits per channel (Since: 1.12)</doc>
       </member>
       <member name="gbr_12le"
               value="69"
               c:identifier="GST_VIDEO_FORMAT_GBR_12LE"
               glib:nick="gbr-12le">
-        <doc xml:space="preserve">planar 4:4:4 RGB, 12 bits per channel (Since: 1.12)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="107">planar 4:4:4 RGB, 12 bits per channel (Since: 1.12)</doc>
       </member>
       <member name="gbra_12be"
               value="70"
               c:identifier="GST_VIDEO_FORMAT_GBRA_12BE"
               glib:nick="gbra-12be">
-        <doc xml:space="preserve">planar 4:4:4:4 ARGB, 12 bits per channel (Since: 1.12)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="108">planar 4:4:4:4 ARGB, 12 bits per channel (Since: 1.12)</doc>
       </member>
       <member name="gbra_12le"
               value="71"
               c:identifier="GST_VIDEO_FORMAT_GBRA_12LE"
               glib:nick="gbra-12le">
-        <doc xml:space="preserve">planar 4:4:4:4 ARGB, 12 bits per channel (Since: 1.12)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="109">planar 4:4:4:4 ARGB, 12 bits per channel (Since: 1.12)</doc>
       </member>
       <member name="i420_12be"
               value="72"
               c:identifier="GST_VIDEO_FORMAT_I420_12BE"
               glib:nick="i420-12be">
-        <doc xml:space="preserve">planar 4:2:0 YUV, 12 bits per channel (Since: 1.12)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="110">planar 4:2:0 YUV, 12 bits per channel (Since: 1.12)</doc>
       </member>
       <member name="i420_12le"
               value="73"
               c:identifier="GST_VIDEO_FORMAT_I420_12LE"
               glib:nick="i420-12le">
-        <doc xml:space="preserve">planar 4:2:0 YUV, 12 bits per channel (Since: 1.12)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="111">planar 4:2:0 YUV, 12 bits per channel (Since: 1.12)</doc>
       </member>
       <member name="i422_12be"
               value="74"
               c:identifier="GST_VIDEO_FORMAT_I422_12BE"
               glib:nick="i422-12be">
-        <doc xml:space="preserve">planar 4:2:2 YUV, 12 bits per channel (Since: 1.12)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="112">planar 4:2:2 YUV, 12 bits per channel (Since: 1.12)</doc>
       </member>
       <member name="i422_12le"
               value="75"
               c:identifier="GST_VIDEO_FORMAT_I422_12LE"
               glib:nick="i422-12le">
-        <doc xml:space="preserve">planar 4:2:2 YUV, 12 bits per channel (Since: 1.12)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="113">planar 4:2:2 YUV, 12 bits per channel (Since: 1.12)</doc>
       </member>
       <member name="y444_12be"
               value="76"
               c:identifier="GST_VIDEO_FORMAT_Y444_12BE"
               glib:nick="y444-12be">
-        <doc xml:space="preserve">planar 4:4:4 YUV, 12 bits per channel (Since: 1.12)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="114">planar 4:4:4 YUV, 12 bits per channel (Since: 1.12)</doc>
       </member>
       <member name="y444_12le"
               value="77"
               c:identifier="GST_VIDEO_FORMAT_Y444_12LE"
               glib:nick="y444-12le">
-        <doc xml:space="preserve">planar 4:4:4 YUV, 12 bits per channel (Since: 1.12)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="115">planar 4:4:4 YUV, 12 bits per channel (Since: 1.12)</doc>
       </member>
       <member name="gray10_le32"
               value="78"
               c:identifier="GST_VIDEO_FORMAT_GRAY10_LE32"
               glib:nick="gray10-le32">
-        <doc xml:space="preserve">10-bit grayscale, packed into 32bit words (2 bits padding) (Since: 1.14)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="63">10-bit grayscale, packed into 32bit words (2 bits padding) (Since: 1.14)</doc>
       </member>
       <member name="nv12_10le32"
               value="79"
               c:identifier="GST_VIDEO_FORMAT_NV12_10LE32"
               glib:nick="nv12-10le32">
-        <doc xml:space="preserve">10-bit variant of @GST_VIDEO_FORMAT_NV12, packed into 32bit words (MSB 2 bits padding) (Since: 1.14)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="61">10-bit variant of @GST_VIDEO_FORMAT_NV12, packed into 32bit words (MSB 2 bits padding) (Since: 1.14)</doc>
       </member>
       <member name="nv16_10le32"
               value="80"
               c:identifier="GST_VIDEO_FORMAT_NV16_10LE32"
               glib:nick="nv16-10le32">
-        <doc xml:space="preserve">10-bit variant of @GST_VIDEO_FORMAT_NV16, packed into 32bit words (MSB 2 bits padding) (Since: 1.14)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="91">10-bit variant of @GST_VIDEO_FORMAT_NV16, packed into 32bit words (MSB 2 bits padding) (Since: 1.14)</doc>
       </member>
       <member name="nv12_10le40"
               value="81"
               c:identifier="GST_VIDEO_FORMAT_NV12_10LE40"
               glib:nick="nv12-10le40">
-        <doc xml:space="preserve">Fully packed variant of NV12_10LE32 (Since: 1.16)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="116">Fully packed variant of NV12_10LE32 (Since: 1.16)</doc>
       </member>
       <member name="y210"
               value="82"
               c:identifier="GST_VIDEO_FORMAT_Y210"
               glib:nick="y210">
-        <doc xml:space="preserve">packed 4:2:2 YUV, 10 bits per channel (Since: 1.16)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="117">packed 4:2:2 YUV, 10 bits per channel (Since: 1.16)</doc>
       </member>
       <member name="y410"
               value="83"
               c:identifier="GST_VIDEO_FORMAT_Y410"
               glib:nick="y410">
-        <doc xml:space="preserve">packed 4:4:4 YUV, 10 bits per channel(A-V-Y-U...) (Since: 1.16)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="118">packed 4:4:4 YUV, 10 bits per channel(A-V-Y-U...) (Since: 1.16)</doc>
       </member>
       <member name="vuya"
               value="84"
               c:identifier="GST_VIDEO_FORMAT_VUYA"
               glib:nick="vuya">
-        <doc xml:space="preserve">packed 4:4:4 YUV with alpha channel (V0-U0-Y0-A0...) (Since: 1.16)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="119">packed 4:4:4 YUV with alpha channel (V0-U0-Y0-A0...) (Since: 1.16)</doc>
       </member>
       <member name="bgr10a2_le"
               value="85"
               c:identifier="GST_VIDEO_FORMAT_BGR10A2_LE"
               glib:nick="bgr10a2-le">
-        <doc xml:space="preserve">packed 4:4:4 RGB with alpha channel(B-G-R-A), 10 bits for R/G/B channel and MSB 2 bits for alpha channel (Since: 1.16)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="120">packed 4:4:4 RGB with alpha channel(B-G-R-A), 10 bits for R/G/B channel and MSB 2 bits for alpha channel (Since: 1.16)</doc>
+      </member>
+      <member name="rgb10a2_le"
+              value="86"
+              c:identifier="GST_VIDEO_FORMAT_RGB10A2_LE"
+              glib:nick="rgb10a2-le">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="121">packed 4:4:4 RGB with alpha channel(R-G-B-A), 10 bits for R/G/B channel and MSB 2 bits for alpha channel (Since: 1.18)</doc>
+      </member>
+      <member name="y444_16be"
+              value="87"
+              c:identifier="GST_VIDEO_FORMAT_Y444_16BE"
+              glib:nick="y444-16be">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="122">planar 4:4:4 YUV, 16 bits per channel (Since: 1.18)</doc>
+      </member>
+      <member name="y444_16le"
+              value="88"
+              c:identifier="GST_VIDEO_FORMAT_Y444_16LE"
+              glib:nick="y444-16le">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="123">planar 4:4:4 YUV, 16 bits per channel (Since: 1.18)</doc>
+      </member>
+      <member name="p016_be"
+              value="89"
+              c:identifier="GST_VIDEO_FORMAT_P016_BE"
+              glib:nick="p016-be">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="124">planar 4:2:0 YUV with interleaved UV plane, 16 bits per channel (Since: 1.18)</doc>
+      </member>
+      <member name="p016_le"
+              value="90"
+              c:identifier="GST_VIDEO_FORMAT_P016_LE"
+              glib:nick="p016-le">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="125">planar 4:2:0 YUV with interleaved UV plane, 16 bits per channel (Since: 1.18)</doc>
+      </member>
+      <member name="p012_be"
+              value="91"
+              c:identifier="GST_VIDEO_FORMAT_P012_BE"
+              glib:nick="p012-be">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="126">planar 4:2:0 YUV with interleaved UV plane, 12 bits per channel (Since: 1.18)</doc>
+      </member>
+      <member name="p012_le"
+              value="92"
+              c:identifier="GST_VIDEO_FORMAT_P012_LE"
+              glib:nick="p012-le">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="127">planar 4:2:0 YUV with interleaved UV plane, 12 bits per channel (Since: 1.18)</doc>
+      </member>
+      <member name="y212_be"
+              value="93"
+              c:identifier="GST_VIDEO_FORMAT_Y212_BE"
+              glib:nick="y212-be">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="128">packed 4:2:2 YUV, 12 bits per channel (Y-U-Y-V) (Since: 1.18)</doc>
+      </member>
+      <member name="y212_le"
+              value="94"
+              c:identifier="GST_VIDEO_FORMAT_Y212_LE"
+              glib:nick="y212-le">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="129">packed 4:2:2 YUV, 12 bits per channel (Y-U-Y-V) (Since: 1.18)</doc>
+      </member>
+      <member name="y412_be"
+              value="95"
+              c:identifier="GST_VIDEO_FORMAT_Y412_BE"
+              glib:nick="y412-be">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="130">packed 4:4:4:4 YUV, 12 bits per channel(U-Y-V-A...) (Since: 1.18)</doc>
+      </member>
+      <member name="y412_le"
+              value="96"
+              c:identifier="GST_VIDEO_FORMAT_Y412_LE"
+              glib:nick="y412-le">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="131">packed 4:4:4:4 YUV, 12 bits per channel(U-Y-V-A...) (Since: 1.18)</doc>
       </member>
       <function name="from_fourcc" c:identifier="gst_video_format_from_fourcc">
-        <doc xml:space="preserve">Converts a FOURCC value into the corresponding #GstVideoFormat.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.c"
+             line="6804">Converts a FOURCC value into the corresponding #GstVideoFormat.
 If the FOURCC cannot be represented by #GstVideoFormat,
 #GST_VIDEO_FORMAT_UNKNOWN is returned.</doc>
+        <source-position filename="gst-libs/gst/video/video-format.h"
+                         line="552"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the #GstVideoFormat describing the FOURCC value</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-format.c"
+               line="6812">the #GstVideoFormat describing the FOURCC value</doc>
           <type name="VideoFormat" c:type="GstVideoFormat"/>
         </return-value>
         <parameters>
           <parameter name="fourcc" transfer-ownership="none">
-            <doc xml:space="preserve">a FOURCC value representing raw YUV video</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-format.c"
+                 line="6806">a FOURCC value representing raw YUV video</doc>
             <type name="guint32" c:type="guint32"/>
           </parameter>
         </parameters>
       </function>
       <function name="from_masks" c:identifier="gst_video_format_from_masks">
-        <doc xml:space="preserve">Find the #GstVideoFormat for the given parameters.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstVideoFormat or GST_VIDEO_FORMAT_UNKNOWN when the parameters to
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.c"
+             line="6730">Find the #GstVideoFormat for the given parameters.</doc>
+        <source-position filename="gst-libs/gst/video/video-format.h"
+                         line="547"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-format.c"
+               line="6743">a #GstVideoFormat or GST_VIDEO_FORMAT_UNKNOWN when the parameters to
 not specify a known format.</doc>
           <type name="VideoFormat" c:type="GstVideoFormat"/>
         </return-value>
         <parameters>
           <parameter name="depth" transfer-ownership="none">
-            <doc xml:space="preserve">the amount of bits used for a pixel</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-format.c"
+                 line="6732">the amount of bits used for a pixel</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="bpp" transfer-ownership="none">
-            <doc xml:space="preserve">the amount of bits used to store a pixel. This value is bigger than
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-format.c"
+                 line="6733">the amount of bits used to store a pixel. This value is bigger than
   @depth</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="endianness" transfer-ownership="none">
-            <doc xml:space="preserve">the endianness of the masks, #G_LITTLE_ENDIAN or #G_BIG_ENDIAN</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-format.c"
+                 line="6735">the endianness of the masks, #G_LITTLE_ENDIAN or #G_BIG_ENDIAN</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="red_mask" transfer-ownership="none">
-            <doc xml:space="preserve">the red mask</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-format.c"
+                 line="6736">the red mask</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="green_mask" transfer-ownership="none">
-            <doc xml:space="preserve">the green mask</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-format.c"
+                 line="6737">the green mask</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="blue_mask" transfer-ownership="none">
-            <doc xml:space="preserve">the blue mask</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-format.c"
+                 line="6738">the blue mask</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="alpha_mask" transfer-ownership="none">
-            <doc xml:space="preserve">the alpha mask, or 0 if no alpha mask</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-format.c"
+                 line="6739">the alpha mask, or 0 if no alpha mask</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </function>
       <function name="from_string" c:identifier="gst_video_format_from_string">
-        <doc xml:space="preserve">Convert the @format string to its #GstVideoFormat.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the #GstVideoFormat for @format or GST_VIDEO_FORMAT_UNKNOWN when the
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.c"
+             line="6896">Convert the @format string to its #GstVideoFormat.</doc>
+        <source-position filename="gst-libs/gst/video/video-format.h"
+                         line="555"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-format.c"
+               line="6902">the #GstVideoFormat for @format or GST_VIDEO_FORMAT_UNKNOWN when the
 string is not a known format.</doc>
           <type name="VideoFormat" c:type="GstVideoFormat"/>
         </return-value>
         <parameters>
           <parameter name="format" transfer-ownership="none">
-            <doc xml:space="preserve">a format string</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-format.c"
+                 line="6898">a format string</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </function>
       <function name="get_info" c:identifier="gst_video_format_get_info">
-        <doc xml:space="preserve">Get the #GstVideoFormatInfo for @format</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The #GstVideoFormatInfo for @format.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.c"
+             line="6961">Get the #GstVideoFormatInfo for @format</doc>
+        <source-position filename="gst-libs/gst/video/video-format.h"
+                         line="565"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-format.c"
+               line="6967">The #GstVideoFormatInfo for @format.</doc>
           <type name="VideoFormatInfo" c:type="const GstVideoFormatInfo*"/>
         </return-value>
         <parameters>
           <parameter name="format" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoFormat</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-format.c"
+                 line="6963">a #GstVideoFormat</doc>
             <type name="VideoFormat" c:type="GstVideoFormat"/>
           </parameter>
         </parameters>
@@ -7320,52 +13118,78 @@ string is not a known format.</doc>
       <function name="get_palette"
                 c:identifier="gst_video_format_get_palette"
                 version="1.2">
-        <doc xml:space="preserve">Get the default palette of @format. This the palette used in the pack
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.c"
+             line="6977">Get the default palette of @format. This the palette used in the pack
 function for paletted formats.</doc>
+        <source-position filename="gst-libs/gst/video/video-format.h"
+                         line="568"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">the default palette of @format or %NULL when
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-format.c"
+               line="6985">the default palette of @format or %NULL when
 @format does not have a palette.</doc>
           <type name="gpointer" c:type="gconstpointer"/>
         </return-value>
         <parameters>
           <parameter name="format" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoFormat</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-format.c"
+                 line="6979">a #GstVideoFormat</doc>
             <type name="VideoFormat" c:type="GstVideoFormat"/>
           </parameter>
           <parameter name="size"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">size of the palette in bytes</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-format.c"
+                 line="6980">size of the palette in bytes</doc>
             <type name="gsize" c:type="gsize*"/>
           </parameter>
         </parameters>
       </function>
       <function name="to_fourcc" c:identifier="gst_video_format_to_fourcc">
-        <doc xml:space="preserve">Converts a #GstVideoFormat value into the corresponding FOURCC.  Only
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.c"
+             line="6920">Converts a #GstVideoFormat value into the corresponding FOURCC.  Only
 a few YUV formats have corresponding FOURCC values.  If @format has
 no corresponding FOURCC value, 0 is returned.</doc>
+        <source-position filename="gst-libs/gst/video/video-format.h"
+                         line="558"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the FOURCC corresponding to @format</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-format.c"
+               line="6928">the FOURCC corresponding to @format</doc>
           <type name="guint32" c:type="guint32"/>
         </return-value>
         <parameters>
           <parameter name="format" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoFormat video format</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-format.c"
+                 line="6922">a #GstVideoFormat video format</doc>
             <type name="VideoFormat" c:type="GstVideoFormat"/>
           </parameter>
         </parameters>
       </function>
       <function name="to_string" c:identifier="gst_video_format_to_string">
-        <doc xml:space="preserve">Returns a string containing a descriptive name for
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.c"
+             line="6941">Returns a string containing a descriptive name for
 the #GstVideoFormat if there is one, or NULL otherwise.</doc>
+        <source-position filename="gst-libs/gst/video/video-format.h"
+                         line="561"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the name corresponding to @format</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-format.c"
+               line="6948">the name corresponding to @format</doc>
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
         <parameters>
           <parameter name="format" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoFormat video format</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-format.c"
+                 line="6943">a #GstVideoFormat video format</doc>
             <type name="VideoFormat" c:type="GstVideoFormat"/>
           </parameter>
         </parameters>
@@ -7375,191 +13199,296 @@ the #GstVideoFormat if there is one, or NULL otherwise.</doc>
               glib:type-name="GstVideoFormatFlags"
               glib:get-type="gst_video_format_flags_get_type"
               c:type="GstVideoFormatFlags">
-      <doc xml:space="preserve">The different video flags that a format info can have.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-format.h"
+           line="243">The different video flags that a format info can have.</doc>
       <member name="yuv"
               value="1"
               c:identifier="GST_VIDEO_FORMAT_FLAG_YUV"
               glib:nick="yuv">
-        <doc xml:space="preserve">The video format is YUV, components are numbered
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="245">The video format is YUV, components are numbered
   0=Y, 1=U, 2=V.</doc>
       </member>
       <member name="rgb"
               value="2"
               c:identifier="GST_VIDEO_FORMAT_FLAG_RGB"
               glib:nick="rgb">
-        <doc xml:space="preserve">The video format is RGB, components are numbered
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="247">The video format is RGB, components are numbered
   0=R, 1=G, 2=B.</doc>
       </member>
       <member name="gray"
               value="4"
               c:identifier="GST_VIDEO_FORMAT_FLAG_GRAY"
               glib:nick="gray">
-        <doc xml:space="preserve">The video is gray, there is one gray component
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="249">The video is gray, there is one gray component
   with index 0.</doc>
       </member>
       <member name="alpha"
               value="8"
               c:identifier="GST_VIDEO_FORMAT_FLAG_ALPHA"
               glib:nick="alpha">
-        <doc xml:space="preserve">The video format has an alpha components with
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="251">The video format has an alpha components with
   the number 3.</doc>
       </member>
       <member name="le"
               value="16"
               c:identifier="GST_VIDEO_FORMAT_FLAG_LE"
               glib:nick="le">
-        <doc xml:space="preserve">The video format has data stored in little
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="253">The video format has data stored in little
   endianness.</doc>
       </member>
       <member name="palette"
               value="32"
               c:identifier="GST_VIDEO_FORMAT_FLAG_PALETTE"
               glib:nick="palette">
-        <doc xml:space="preserve">The video format has a palette. The palette
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="255">The video format has a palette. The palette
   is stored in the second plane and indexes are stored in the first plane.</doc>
       </member>
       <member name="complex"
               value="64"
               c:identifier="GST_VIDEO_FORMAT_FLAG_COMPLEX"
               glib:nick="complex">
-        <doc xml:space="preserve">The video format has a complex layout that
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="257">The video format has a complex layout that
   can't be described with the usual information in the #GstVideoFormatInfo.</doc>
       </member>
       <member name="unpack"
               value="128"
               c:identifier="GST_VIDEO_FORMAT_FLAG_UNPACK"
               glib:nick="unpack">
-        <doc xml:space="preserve">This format can be used in a
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="259">This format can be used in a
   #GstVideoFormatUnpack and #GstVideoFormatPack function.</doc>
       </member>
       <member name="tiled"
               value="256"
               c:identifier="GST_VIDEO_FORMAT_FLAG_TILED"
               glib:nick="tiled">
-        <doc xml:space="preserve">The format is tiled, there is tiling information
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="261">The format is tiled, there is tiling information
   in the last plane.</doc>
       </member>
     </bitfield>
     <record name="VideoFormatInfo" c:type="GstVideoFormatInfo">
-      <doc xml:space="preserve">Information for a video format.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-format.h"
+           line="389">Information for a video format.</doc>
+      <source-position filename="gst-libs/gst/video/video-format.h"
+                       line="454"/>
       <field name="format" writable="1">
-        <doc xml:space="preserve">#GstVideoFormat</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="391">#GstVideoFormat</doc>
         <type name="VideoFormat" c:type="GstVideoFormat"/>
       </field>
       <field name="name" writable="1">
-        <doc xml:space="preserve">string representation of the format</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="392">string representation of the format</doc>
         <type name="utf8" c:type="const gchar*"/>
       </field>
       <field name="description" writable="1">
-        <doc xml:space="preserve">use readable description of the format</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="393">use readable description of the format</doc>
         <type name="utf8" c:type="const gchar*"/>
       </field>
       <field name="flags" writable="1">
-        <doc xml:space="preserve">#GstVideoFormatFlags</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="394">#GstVideoFormatFlags</doc>
         <type name="VideoFormatFlags" c:type="GstVideoFormatFlags"/>
       </field>
       <field name="bits" writable="1">
-        <doc xml:space="preserve">The number of bits used to pack data items. This can be less than 8
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="395">The number of bits used to pack data items. This can be less than 8
    when multiple pixels are stored in a byte. for values &gt; 8 multiple bytes
    should be read according to the endianness flag before applying the shift
    and mask.</doc>
         <type name="guint" c:type="guint"/>
       </field>
       <field name="n_components" writable="1">
-        <doc xml:space="preserve">the number of components in the video format.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="399">the number of components in the video format.</doc>
         <type name="guint" c:type="guint"/>
       </field>
       <field name="shift" writable="1">
-        <doc xml:space="preserve">the number of bits to shift away to get the component data</doc>
-        <array zero-terminated="0" c:type="guint" fixed-size="4">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="400">the number of bits to shift away to get the component data</doc>
+        <array zero-terminated="0" fixed-size="4">
           <type name="guint" c:type="guint"/>
         </array>
       </field>
       <field name="depth" writable="1">
-        <doc xml:space="preserve">the depth in bits for each component</doc>
-        <array zero-terminated="0" c:type="guint" fixed-size="4">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="401">the depth in bits for each component</doc>
+        <array zero-terminated="0" fixed-size="4">
           <type name="guint" c:type="guint"/>
         </array>
       </field>
       <field name="pixel_stride" writable="1">
-        <doc xml:space="preserve">the pixel stride of each component. This is the amount of
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="402">the pixel stride of each component. This is the amount of
    bytes to the pixel immediately to the right. When bits &lt; 8, the stride is
    expressed in bits. For 24-bit RGB, this would be 3 bytes, for example,
    while it would be 4 bytes for RGBx or ARGB.</doc>
-        <array zero-terminated="0" c:type="gint" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gint" c:type="gint"/>
         </array>
       </field>
       <field name="n_planes" writable="1">
-        <doc xml:space="preserve">the number of planes for this format. The number of planes can be
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="406">the number of planes for this format. The number of planes can be
    less than the amount of components when multiple components are packed into
    one plane.</doc>
         <type name="guint" c:type="guint"/>
       </field>
       <field name="plane" writable="1">
-        <doc xml:space="preserve">the plane number where a component can be found</doc>
-        <array zero-terminated="0" c:type="guint" fixed-size="4">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="409">the plane number where a component can be found</doc>
+        <array zero-terminated="0" fixed-size="4">
           <type name="guint" c:type="guint"/>
         </array>
       </field>
       <field name="poffset" writable="1">
-        <doc xml:space="preserve">the offset in the plane where the first pixel of the components
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="410">the offset in the plane where the first pixel of the components
    can be found.</doc>
-        <array zero-terminated="0" c:type="guint" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="guint" c:type="guint"/>
         </array>
       </field>
       <field name="w_sub" writable="1">
-        <doc xml:space="preserve">subsampling factor of the width for the component. Use
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="412">subsampling factor of the width for the component. Use
     GST_VIDEO_SUB_SCALE to scale a width.</doc>
-        <array zero-terminated="0" c:type="guint" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="guint" c:type="guint"/>
         </array>
       </field>
       <field name="h_sub" writable="1">
-        <doc xml:space="preserve">subsampling factor of the height for the component. Use
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="414">subsampling factor of the height for the component. Use
     GST_VIDEO_SUB_SCALE to scale a height.</doc>
-        <array zero-terminated="0" c:type="guint" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="guint" c:type="guint"/>
         </array>
       </field>
       <field name="unpack_format" writable="1">
-        <doc xml:space="preserve">the format of the unpacked pixels. This format must have the
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="416">the format of the unpacked pixels. This format must have the
     #GST_VIDEO_FORMAT_FLAG_UNPACK flag set.</doc>
         <type name="VideoFormat" c:type="GstVideoFormat"/>
       </field>
       <field name="unpack_func" writable="1">
-        <doc xml:space="preserve">an unpack function for this format</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="418">an unpack function for this format</doc>
         <type name="VideoFormatUnpack" c:type="GstVideoFormatUnpack"/>
       </field>
       <field name="pack_lines" writable="1">
-        <doc xml:space="preserve">the amount of lines that will be packed</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="419">the amount of lines that will be packed</doc>
         <type name="gint" c:type="gint"/>
       </field>
       <field name="pack_func" writable="1">
-        <doc xml:space="preserve">an pack function for this format</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="420">an pack function for this format</doc>
         <type name="VideoFormatPack" c:type="GstVideoFormatPack"/>
       </field>
       <field name="tile_mode" writable="1">
-        <doc xml:space="preserve">The tiling mode</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="421">The tiling mode</doc>
         <type name="VideoTileMode" c:type="GstVideoTileMode"/>
       </field>
       <field name="tile_ws" writable="1">
-        <doc xml:space="preserve">The width of a tile, in bytes, represented as a shift</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="422">The width of a tile, in bytes, represented as a shift</doc>
         <type name="guint" c:type="guint"/>
       </field>
       <field name="tile_hs" writable="1">
-        <doc xml:space="preserve">The height of a tile, in bytes, represented as a shift</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="423">The height of a tile, in bytes, represented as a shift</doc>
         <type name="guint" c:type="guint"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
+      <method name="component"
+              c:identifier="gst_video_format_info_component"
+              version="1.18">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.c"
+             line="7005">Fill @components with the number of all the components packed in plane @p
+for the format @info. A value of -1 in @components indicates that no more
+components are packed in the plane.</doc>
+        <source-position filename="gst-libs/gst/video/video-format.h"
+                         line="542"/>
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="info" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-format.c"
+                 line="7007">#GstVideoFormatInfo</doc>
+            <type name="VideoFormatInfo" c:type="const GstVideoFormatInfo*"/>
+          </instance-parameter>
+          <parameter name="plane" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-format.c"
+                 line="7008">a plane number</doc>
+            <type name="guint" c:type="guint"/>
+          </parameter>
+          <parameter name="components"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-format.c"
+                 line="7009">array used to store component numbers</doc>
+            <type name="gint" c:type="gint*"/>
+          </parameter>
+        </parameters>
+      </method>
     </record>
     <callback name="VideoFormatPack" c:type="GstVideoFormatPack">
-      <doc xml:space="preserve">Packs @width pixels from @src to the given planes and strides in the
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-format.h"
+           line="349">Packs @width pixels from @src to the given planes and strides in the
 format @info. The pixels from source have each component interleaved
 and will be packed into the planes in @data.
 
@@ -7575,56 +13504,78 @@ Because this function does not have a x coordinate, it is not possible to
 pack pixels starting from an unaligned position. For tiled images this
 means that packing should start from a tile coordinate. For subsampled
 formats this means that a complete pixel needs to be packed.</doc>
+      <source-position filename="gst-libs/gst/video/video-format.h"
+                       line="381"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="info" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstVideoFormatInfo</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-format.h"
+               line="351">a #GstVideoFormatInfo</doc>
           <type name="VideoFormatInfo" c:type="const GstVideoFormatInfo*"/>
         </parameter>
         <parameter name="flags" transfer-ownership="none">
-          <doc xml:space="preserve">flags to control the packing</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-format.h"
+               line="352">flags to control the packing</doc>
           <type name="VideoPackFlags" c:type="GstVideoPackFlags"/>
         </parameter>
         <parameter name="src"
                    transfer-ownership="none"
                    nullable="1"
                    allow-none="1">
-          <doc xml:space="preserve">a source array</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-format.h"
+               line="353">a source array</doc>
           <type name="gpointer" c:type="const gpointer"/>
         </parameter>
         <parameter name="sstride" transfer-ownership="none">
-          <doc xml:space="preserve">the source array stride</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-format.h"
+               line="354">the source array stride</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
         <parameter name="data"
                    transfer-ownership="none"
                    nullable="1"
                    allow-none="1">
-          <doc xml:space="preserve">pointers to the destination data planes</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-format.h"
+               line="355">pointers to the destination data planes</doc>
           <type name="gpointer" c:type="gpointer*"/>
         </parameter>
         <parameter name="stride" transfer-ownership="none">
-          <doc xml:space="preserve">strides of the destination planes</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-format.h"
+               line="356">strides of the destination planes</doc>
           <type name="gint" c:type="const gint*"/>
         </parameter>
         <parameter name="chroma_site" transfer-ownership="none">
-          <doc xml:space="preserve">the chroma siting of the target when subsampled (not used)</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-format.h"
+               line="357">the chroma siting of the target when subsampled (not used)</doc>
           <type name="VideoChromaSite" c:type="GstVideoChromaSite"/>
         </parameter>
         <parameter name="y" transfer-ownership="none">
-          <doc xml:space="preserve">the y position in the image to pack to</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-format.h"
+               line="358">the y position in the image to pack to</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
         <parameter name="width" transfer-ownership="none">
-          <doc xml:space="preserve">the amount of pixels to pack.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-format.h"
+               line="359">the amount of pixels to pack.</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
       </parameters>
     </callback>
     <callback name="VideoFormatUnpack" c:type="GstVideoFormatUnpack">
-      <doc xml:space="preserve">Unpacks @width pixels from the given planes and strides containing data of
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-format.h"
+           line="319">Unpacks @width pixels from the given planes and strides containing data of
 format @info. The pixels will be unpacked into @dest with each component
 interleaved as per @info's unpack_format, which will usually be one of
 #GST_VIDEO_FORMAT_ARGB, #GST_VIDEO_FORMAT_AYUV, #GST_VIDEO_FORMAT_ARGB64 or
@@ -7637,130 +13588,192 @@ the same as the pixel stride for plane 0 for the above formats.
 For subsampled formats, the components will be duplicated in the destination
 array. Reconstruction of the missing components can be performed in a
 separate step after unpacking.</doc>
+      <source-position filename="gst-libs/gst/video/video-format.h"
+                       line="344"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="info" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstVideoFormatInfo</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-format.h"
+               line="321">a #GstVideoFormatInfo</doc>
           <type name="VideoFormatInfo" c:type="const GstVideoFormatInfo*"/>
         </parameter>
         <parameter name="flags" transfer-ownership="none">
-          <doc xml:space="preserve">flags to control the unpacking</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-format.h"
+               line="322">flags to control the unpacking</doc>
           <type name="VideoPackFlags" c:type="GstVideoPackFlags"/>
         </parameter>
         <parameter name="dest"
                    transfer-ownership="none"
                    nullable="1"
                    allow-none="1">
-          <doc xml:space="preserve">a destination array</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-format.h"
+               line="323">a destination array</doc>
           <type name="gpointer" c:type="gpointer"/>
         </parameter>
         <parameter name="data"
                    transfer-ownership="none"
                    nullable="1"
                    allow-none="1">
-          <doc xml:space="preserve">pointers to the data planes</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-format.h"
+               line="324">pointers to the data planes</doc>
           <type name="gpointer" c:type="const gpointer*"/>
         </parameter>
         <parameter name="stride" transfer-ownership="none">
-          <doc xml:space="preserve">strides of the planes</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-format.h"
+               line="325">strides of the planes</doc>
           <type name="gint" c:type="const gint*"/>
         </parameter>
         <parameter name="x" transfer-ownership="none">
-          <doc xml:space="preserve">the x position in the image to start from</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-format.h"
+               line="326">the x position in the image to start from</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
         <parameter name="y" transfer-ownership="none">
-          <doc xml:space="preserve">the y position in the image to start from</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-format.h"
+               line="327">the y position in the image to start from</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
         <parameter name="width" transfer-ownership="none">
-          <doc xml:space="preserve">the amount of pixels to unpack.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-format.h"
+               line="328">the amount of pixels to unpack.</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
       </parameters>
     </callback>
     <record name="VideoFrame" c:type="GstVideoFrame">
-      <doc xml:space="preserve">A video frame obtained from gst_video_frame_map()</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-frame.h"
+           line="68">A video frame obtained from gst_video_frame_map()</doc>
+      <source-position filename="gst-libs/gst/video/video-frame.h" line="94"/>
       <field name="info" writable="1">
-        <doc xml:space="preserve">the #GstVideoInfo</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-frame.h"
+             line="70">the #GstVideoInfo</doc>
         <type name="VideoInfo" c:type="GstVideoInfo"/>
       </field>
       <field name="flags" writable="1">
-        <doc xml:space="preserve">#GstVideoFrameFlags for the frame</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-frame.h"
+             line="71">#GstVideoFrameFlags for the frame</doc>
         <type name="VideoFrameFlags" c:type="GstVideoFrameFlags"/>
       </field>
       <field name="buffer" writable="1">
-        <doc xml:space="preserve">the mapped buffer</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-frame.h"
+             line="72">the mapped buffer</doc>
         <type name="Gst.Buffer" c:type="GstBuffer*"/>
       </field>
       <field name="meta" writable="1">
-        <doc xml:space="preserve">pointer to metadata if any</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-frame.h"
+             line="73">pointer to metadata if any</doc>
         <type name="gpointer" c:type="gpointer"/>
       </field>
       <field name="id" writable="1">
-        <doc xml:space="preserve">id of the mapped frame. the id can for example be used to
-  indentify the frame in case of multiview video.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-frame.h"
+             line="74">id of the mapped frame. the id can for example be used to
+  identify the frame in case of multiview video.</doc>
         <type name="gint" c:type="gint"/>
       </field>
       <field name="data" writable="1">
-        <doc xml:space="preserve">pointers to the plane data</doc>
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-frame.h"
+             line="76">pointers to the plane data</doc>
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
       <field name="map" writable="1">
-        <doc xml:space="preserve">mappings of the planes</doc>
-        <array zero-terminated="0" c:type="GstMapInfo" fixed-size="4">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-frame.h"
+             line="77">mappings of the planes</doc>
+        <array zero-terminated="0" fixed-size="4">
           <type name="Gst.MapInfo" c:type="GstMapInfo"/>
         </array>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
       <method name="copy" c:identifier="gst_video_frame_copy">
-        <doc xml:space="preserve">Copy the contents from @src to @dest.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">TRUE if the contents could be copied.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-frame.c"
+             line="394">Copy the contents from @src to @dest.</doc>
+        <source-position filename="gst-libs/gst/video/video-frame.h"
+                         line="108"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-frame.c"
+               line="401">TRUE if the contents could be copied.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="dest" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoFrame</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-frame.c"
+                 line="396">a #GstVideoFrame</doc>
             <type name="VideoFrame" c:type="GstVideoFrame*"/>
           </instance-parameter>
           <parameter name="src" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoFrame</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-frame.c"
+                 line="397">a #GstVideoFrame</doc>
             <type name="VideoFrame" c:type="const GstVideoFrame*"/>
           </parameter>
         </parameters>
       </method>
       <method name="copy_plane" c:identifier="gst_video_frame_copy_plane">
-        <doc xml:space="preserve">Copy the plane with index @plane from @src to @dest.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">TRUE if the contents could be copied.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-frame.c"
+             line="281">Copy the plane with index @plane from @src to @dest.
+
+Note: Since: 1.18, @dest dimensions are allowed to be
+smaller than @src dimensions.</doc>
+        <source-position filename="gst-libs/gst/video/video-frame.h"
+                         line="111"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-frame.c"
+               line="292">TRUE if the contents could be copied.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="dest" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoFrame</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-frame.c"
+                 line="283">a #GstVideoFrame</doc>
             <type name="VideoFrame" c:type="GstVideoFrame*"/>
           </instance-parameter>
           <parameter name="src" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoFrame</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-frame.c"
+                 line="284">a #GstVideoFrame</doc>
             <type name="VideoFrame" c:type="const GstVideoFrame*"/>
           </parameter>
           <parameter name="plane" transfer-ownership="none">
-            <doc xml:space="preserve">a plane</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-frame.c"
+                 line="285">a plane</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="map" c:identifier="gst_video_frame_map">
-        <doc xml:space="preserve">Use @info and @buffer to fill in the values of @frame. @frame is usually
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-frame.c"
+             line="189">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
@@ -7803,31 +13816,45 @@ 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.</doc>
+        <source-position filename="gst-libs/gst/video/video-frame.h"
+                         line="97"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE on success.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-frame.c"
+               line="240">%TRUE on success.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="frame" transfer-ownership="none">
-            <doc xml:space="preserve">pointer to #GstVideoFrame</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-frame.c"
+                 line="191">pointer to #GstVideoFrame</doc>
             <type name="VideoFrame" c:type="GstVideoFrame*"/>
           </instance-parameter>
           <parameter name="info" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-frame.c"
+                 line="192">a #GstVideoInfo</doc>
             <type name="VideoInfo" c:type="GstVideoInfo*"/>
           </parameter>
           <parameter name="buffer" transfer-ownership="none">
-            <doc xml:space="preserve">the buffer to map</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-frame.c"
+                 line="193">the buffer to map</doc>
             <type name="Gst.Buffer" c:type="GstBuffer*"/>
           </parameter>
           <parameter name="flags" transfer-ownership="none">
-            <doc xml:space="preserve">#GstMapFlags</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-frame.c"
+                 line="194">#GstMapFlags</doc>
             <type name="Gst.MapFlags" c:type="GstMapFlags"/>
           </parameter>
         </parameters>
       </method>
       <method name="map_id" c:identifier="gst_video_frame_map_id">
-        <doc xml:space="preserve">Use @info and @buffer to fill in the values of @frame with the video frame
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-frame.c"
+             line="50">Use @info and @buffer to fill in the values of @frame with the video frame
 information of frame @id.
 
 When @id is -1, the default frame is mapped. When @id != -1, this function
@@ -7835,41 +13862,61 @@ will return %FALSE when there is no GstVideoMeta with that id.
 
 All video planes of @buffer will be mapped and the pointers will be set in
 @frame-&gt;data.</doc>
+        <source-position filename="gst-libs/gst/video/video-frame.h"
+                         line="101"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE on success.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-frame.c"
+               line="67">%TRUE on success.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="frame" transfer-ownership="none">
-            <doc xml:space="preserve">pointer to #GstVideoFrame</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-frame.c"
+                 line="52">pointer to #GstVideoFrame</doc>
             <type name="VideoFrame" c:type="GstVideoFrame*"/>
           </instance-parameter>
           <parameter name="info" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-frame.c"
+                 line="53">a #GstVideoInfo</doc>
             <type name="VideoInfo" c:type="GstVideoInfo*"/>
           </parameter>
           <parameter name="buffer" transfer-ownership="none">
-            <doc xml:space="preserve">the buffer to map</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-frame.c"
+                 line="54">the buffer to map</doc>
             <type name="Gst.Buffer" c:type="GstBuffer*"/>
           </parameter>
           <parameter name="id" transfer-ownership="none">
-            <doc xml:space="preserve">the frame id to map</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-frame.c"
+                 line="55">the frame id to map</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="flags" transfer-ownership="none">
-            <doc xml:space="preserve">#GstMapFlags</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-frame.c"
+                 line="56">#GstMapFlags</doc>
             <type name="Gst.MapFlags" c:type="GstMapFlags"/>
           </parameter>
         </parameters>
       </method>
       <method name="unmap" c:identifier="gst_video_frame_unmap">
-        <doc xml:space="preserve">Unmap the memory previously mapped with gst_video_frame_map.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-frame.c"
+             line="249">Unmap the memory previously mapped with gst_video_frame_map.</doc>
+        <source-position filename="gst-libs/gst/video/video-frame.h"
+                         line="105"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="frame" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoFrame</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-frame.c"
+                 line="251">a #GstVideoFrame</doc>
             <type name="VideoFrame" c:type="GstVideoFrame*"/>
           </instance-parameter>
         </parameters>
@@ -7879,18 +13926,24 @@ All video planes of @buffer will be mapped and the pointers will be set in
               glib:type-name="GstVideoFrameFlags"
               glib:get-type="gst_video_frame_flags_get_type"
               c:type="GstVideoFrameFlags">
-      <doc xml:space="preserve">Extra video frame flags</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-frame.h"
+           line="29">Extra video frame flags</doc>
       <member name="none"
               value="0"
               c:identifier="GST_VIDEO_FRAME_FLAG_NONE"
               glib:nick="none">
-        <doc xml:space="preserve">no flags</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-frame.h"
+             line="31">no flags</doc>
       </member>
       <member name="interlaced"
               value="1"
               c:identifier="GST_VIDEO_FRAME_FLAG_INTERLACED"
               glib:nick="interlaced">
-        <doc xml:space="preserve">The video frame is interlaced. In mixed
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-frame.h"
+             line="32">The video frame is interlaced. In mixed
           interlace-mode, this flag specifies if the frame is interlaced or
           progressive.</doc>
       </member>
@@ -7898,39 +13951,51 @@ All video planes of @buffer will be mapped and the pointers will be set in
               value="2"
               c:identifier="GST_VIDEO_FRAME_FLAG_TFF"
               glib:nick="tff">
-        <doc xml:space="preserve">The video frame has the top field first</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-frame.h"
+             line="35">The video frame has the top field first</doc>
       </member>
       <member name="rff"
               value="4"
               c:identifier="GST_VIDEO_FRAME_FLAG_RFF"
               glib:nick="rff">
-        <doc xml:space="preserve">The video frame has the repeat flag</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-frame.h"
+             line="36">The video frame has the repeat flag</doc>
       </member>
       <member name="onefield"
               value="8"
               c:identifier="GST_VIDEO_FRAME_FLAG_ONEFIELD"
               glib:nick="onefield">
-        <doc xml:space="preserve">The video frame has one field</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-frame.h"
+             line="37">The video frame has one field</doc>
       </member>
       <member name="multiple_view"
               value="16"
               c:identifier="GST_VIDEO_FRAME_FLAG_MULTIPLE_VIEW"
               glib:nick="multiple-view">
-        <doc xml:space="preserve">The video contains one or
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-frame.h"
+             line="38">The video contains one or
     more non-mono views</doc>
       </member>
       <member name="first_in_bundle"
               value="32"
               c:identifier="GST_VIDEO_FRAME_FLAG_FIRST_IN_BUNDLE"
               glib:nick="first-in-bundle">
-        <doc xml:space="preserve">The video frame is the first
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-frame.h"
+             line="40">The video frame is the first
     in a set of corresponding views provided as sequential frames.</doc>
       </member>
       <member name="top_field"
               value="10"
               c:identifier="GST_VIDEO_FRAME_FLAG_TOP_FIELD"
               glib:nick="top-field">
-        <doc xml:space="preserve">The video frame has the top field only. This
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-frame.h"
+             line="42">The video frame has the top field only. This
     is the same as GST_VIDEO_FRAME_FLAG_TFF | GST_VIDEO_FRAME_FLAG_ONEFIELD
     (Since: 1.16).</doc>
       </member>
@@ -7938,13 +14003,17 @@ All video planes of @buffer will be mapped and the pointers will be set in
               value="8"
               c:identifier="GST_VIDEO_FRAME_FLAG_ONEFIELD"
               glib:nick="onefield">
-        <doc xml:space="preserve">The video frame has one field</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-frame.h"
+             line="37">The video frame has one field</doc>
       </member>
       <member name="bottom_field"
               value="8"
               c:identifier="GST_VIDEO_FRAME_FLAG_BOTTOM_FIELD"
               glib:nick="bottom-field">
-        <doc xml:space="preserve">The video frame has the bottom field
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-frame.h"
+             line="45">The video frame has the bottom field
     only. This is the same as GST_VIDEO_FRAME_FLAG_ONEFIELD
     (GST_VIDEO_FRAME_FLAG_TFF flag unset) (Since: 1.16).</doc>
       </member>
@@ -7954,12 +14023,16 @@ All video planes of @buffer will be mapped and the pointers will be set in
               glib:type-name="GstVideoFrameMapFlags"
               glib:get-type="gst_video_frame_map_flags_get_type"
               c:type="GstVideoFrameMapFlags">
-      <doc xml:space="preserve">Additional mapping flags for gst_video_frame_map().</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-frame.h"
+           line="234">Additional mapping flags for gst_video_frame_map().</doc>
       <member name="no_ref"
               value="65536"
               c:identifier="GST_VIDEO_FRAME_MAP_FLAG_NO_REF"
               glib:nick="no-ref">
-        <doc xml:space="preserve">Don't take another reference of the buffer and store it in
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-frame.h"
+             line="236">Don't take another reference of the buffer and store it in
                                    the GstVideoFrame. This makes sure that the buffer stays
                                    writable while the frame is mapped, but requires that the
                                    buffer reference stays valid until the frame is unmapped again.</doc>
@@ -7968,68 +14041,102 @@ All video planes of @buffer will be mapped and the pointers will be set in
               value="16777216"
               c:identifier="GST_VIDEO_FRAME_MAP_FLAG_LAST"
               glib:nick="last">
-        <doc xml:space="preserve">Offset to define more flags</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-frame.h"
+             line="240">Offset to define more flags</doc>
       </member>
     </bitfield>
     <enumeration name="VideoGLTextureOrientation"
                  c:type="GstVideoGLTextureOrientation">
-      <doc xml:space="preserve">The orientation of the GL texture.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/gstvideometa.h"
+           line="213">The orientation of the GL texture.</doc>
+      <source-position filename="gst-libs/gst/video/gstvideometa.h"
+                       line="228"/>
       <member name="normal_y_normal"
               value="0"
               c:identifier="GST_VIDEO_GL_TEXTURE_ORIENTATION_X_NORMAL_Y_NORMAL">
-        <doc xml:space="preserve">Top line first in memory, left row first</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideometa.h"
+             line="215">Top line first in memory, left row first</doc>
       </member>
       <member name="normal_y_flip"
               value="1"
               c:identifier="GST_VIDEO_GL_TEXTURE_ORIENTATION_X_NORMAL_Y_FLIP">
-        <doc xml:space="preserve">Bottom line first in memory, left row first</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideometa.h"
+             line="216">Bottom line first in memory, left row first</doc>
       </member>
       <member name="flip_y_normal"
               value="2"
               c:identifier="GST_VIDEO_GL_TEXTURE_ORIENTATION_X_FLIP_Y_NORMAL">
-        <doc xml:space="preserve">Top line first in memory, right row first</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideometa.h"
+             line="217">Top line first in memory, right row first</doc>
       </member>
       <member name="flip_y_flip"
               value="3"
               c:identifier="GST_VIDEO_GL_TEXTURE_ORIENTATION_X_FLIP_Y_FLIP">
-        <doc xml:space="preserve">Bottom line first in memory, right row first</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideometa.h"
+             line="218">Bottom line first in memory, right row first</doc>
       </member>
     </enumeration>
     <enumeration name="VideoGLTextureType" c:type="GstVideoGLTextureType">
-      <doc xml:space="preserve">The GL texture type.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/gstvideometa.h"
+           line="190">The GL texture type.</doc>
+      <source-position filename="gst-libs/gst/video/gstvideometa.h"
+                       line="211"/>
       <member name="luminance"
               value="0"
               c:identifier="GST_VIDEO_GL_TEXTURE_TYPE_LUMINANCE">
-        <doc xml:space="preserve">Luminance texture, GL_LUMINANCE</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideometa.h"
+             line="192">Luminance texture, GL_LUMINANCE</doc>
       </member>
       <member name="luminance_alpha"
               value="1"
               c:identifier="GST_VIDEO_GL_TEXTURE_TYPE_LUMINANCE_ALPHA">
-        <doc xml:space="preserve">Luminance-alpha texture, GL_LUMINANCE_ALPHA</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideometa.h"
+             line="193">Luminance-alpha texture, GL_LUMINANCE_ALPHA</doc>
       </member>
       <member name="rgb16"
               value="2"
               c:identifier="GST_VIDEO_GL_TEXTURE_TYPE_RGB16">
-        <doc xml:space="preserve">RGB 565 texture, GL_RGB</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideometa.h"
+             line="194">RGB 565 texture, GL_RGB</doc>
       </member>
       <member name="rgb"
               value="3"
               c:identifier="GST_VIDEO_GL_TEXTURE_TYPE_RGB">
-        <doc xml:space="preserve">RGB texture, GL_RGB</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideometa.h"
+             line="195">RGB texture, GL_RGB</doc>
       </member>
       <member name="rgba"
               value="4"
               c:identifier="GST_VIDEO_GL_TEXTURE_TYPE_RGBA">
-        <doc xml:space="preserve">RGBA texture, GL_RGBA</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideometa.h"
+             line="196">RGBA texture, GL_RGBA</doc>
       </member>
       <member name="r" value="5" c:identifier="GST_VIDEO_GL_TEXTURE_TYPE_R">
-        <doc xml:space="preserve">R texture, GL_RED_EXT</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideometa.h"
+             line="197">R texture, GL_RED_EXT</doc>
       </member>
       <member name="rg" value="6" c:identifier="GST_VIDEO_GL_TEXTURE_TYPE_RG">
-        <doc xml:space="preserve">RG texture, GL_RG_EXT</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideometa.h"
+             line="198">RG texture, GL_RG_EXT</doc>
       </member>
     </enumeration>
     <callback name="VideoGLTextureUpload" c:type="GstVideoGLTextureUpload">
+      <source-position filename="gst-libs/gst/video/gstvideometa.h"
+                       line="234"/>
       <return-value transfer-ownership="none">
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
@@ -8045,28 +14152,38 @@ All video planes of @buffer will be mapped and the pointers will be set in
     </callback>
     <record name="VideoGLTextureUploadMeta"
             c:type="GstVideoGLTextureUploadMeta">
-      <doc xml:space="preserve">Extra buffer metadata for uploading a buffer to an OpenGL texture
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/gstvideometa.h"
+           line="251">Extra buffer metadata for uploading a buffer to an OpenGL texture
 ID. The caller of gst_video_gl_texture_upload_meta_upload() must
 have OpenGL set up and call this from a thread where it is valid
 to upload something to an OpenGL texture.</doc>
+      <source-position filename="gst-libs/gst/video/gstvideometa.h"
+                       line="278"/>
       <field name="meta" writable="1">
-        <doc xml:space="preserve">parent #GstMeta</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideometa.h"
+             line="253">parent #GstMeta</doc>
         <type name="Gst.Meta" c:type="GstMeta"/>
       </field>
       <field name="texture_orientation" writable="1">
-        <doc xml:space="preserve">Orientation of the textures</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideometa.h"
+             line="254">Orientation of the textures</doc>
         <type name="VideoGLTextureOrientation"
               c:type="GstVideoGLTextureOrientation"/>
       </field>
       <field name="n_textures" writable="1">
-        <doc xml:space="preserve">Number of textures that are generated</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideometa.h"
+             line="255">Number of textures that are generated</doc>
         <type name="guint" c:type="guint"/>
       </field>
       <field name="texture_type" writable="1">
-        <doc xml:space="preserve">Type of each texture</doc>
-        <array zero-terminated="0"
-               c:type="GstVideoGLTextureType"
-               fixed-size="4">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideometa.h"
+             line="256">Type of each texture</doc>
+        <array zero-terminated="0" fixed-size="4">
           <type name="VideoGLTextureType" c:type="GstVideoGLTextureType"/>
         </array>
       </field>
@@ -8087,25 +14204,37 @@ to upload something to an OpenGL texture.</doc>
       </field>
       <method name="upload"
               c:identifier="gst_video_gl_texture_upload_meta_upload">
-        <doc xml:space="preserve">Uploads the buffer which owns the meta to a specific texture ID.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if uploading succeeded, %FALSE otherwise.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideometa.c"
+             line="786">Uploads the buffer which owns the meta to a specific texture ID.</doc>
+        <source-position filename="gst-libs/gst/video/gstvideometa.h"
+                         line="300"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideometa.c"
+               line="793">%TRUE if uploading succeeded, %FALSE otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="meta" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoGLTextureUploadMeta</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideometa.c"
+                 line="788">a #GstVideoGLTextureUploadMeta</doc>
             <type name="VideoGLTextureUploadMeta"
                   c:type="GstVideoGLTextureUploadMeta*"/>
           </instance-parameter>
           <parameter name="texture_id" transfer-ownership="none">
-            <doc xml:space="preserve">the texture IDs to upload to</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideometa.c"
+                 line="789">the texture IDs to upload to</doc>
             <type name="guint" c:type="guint*"/>
           </parameter>
         </parameters>
       </method>
       <function name="get_info"
                 c:identifier="gst_video_gl_texture_upload_meta_get_info">
+        <source-position filename="gst-libs/gst/video/gstvideometa.h"
+                         line="284"/>
         <return-value transfer-ownership="none">
           <type name="Gst.MetaInfo" c:type="const GstMetaInfo*"/>
         </return-value>
@@ -8120,13 +14249,17 @@ to upload something to an OpenGL texture.</doc>
               value="0"
               c:identifier="GST_VIDEO_GAMMA_MODE_NONE"
               glib:nick="none">
-        <doc xml:space="preserve">disable gamma handling</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-converter.h"
+             line="227">disable gamma handling</doc>
       </member>
       <member name="remap"
               value="1"
               c:identifier="GST_VIDEO_GAMMA_MODE_REMAP"
               glib:nick="remap">
-        <doc xml:space="preserve">convert between input and output gamma
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-converter.h"
+             line="228">convert between input and output gamma
 Different gamma conversion modes</doc>
       </member>
     </enumeration>
@@ -8135,78 +14268,115 @@ Different gamma conversion modes</doc>
             glib:type-name="GstVideoInfo"
             glib:get-type="gst_video_info_get_type"
             c:symbol-prefix="video_info">
-      <doc xml:space="preserve">Information describing image properties. This information can be filled
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-info.h"
+           line="286">Information describing image properties. This information can be filled
 in from GstCaps with gst_video_info_from_caps(). The information is also used
 to store the specific video info when mapping a video frame with
 gst_video_frame_map().
 
 Use the provided macros to access the info in this structure.</doc>
+      <source-position filename="gst-libs/gst/video/video-info.h" line="345"/>
       <field name="finfo" writable="1">
-        <doc xml:space="preserve">the format info of the video</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-info.h"
+             line="288">the format info of the video</doc>
         <type name="VideoFormatInfo" c:type="const GstVideoFormatInfo*"/>
       </field>
       <field name="interlace_mode" writable="1">
-        <doc xml:space="preserve">the interlace mode</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-info.h"
+             line="289">the interlace mode</doc>
         <type name="VideoInterlaceMode" c:type="GstVideoInterlaceMode"/>
       </field>
       <field name="flags" writable="1">
-        <doc xml:space="preserve">additional video flags</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-info.h"
+             line="290">additional video flags</doc>
         <type name="VideoFlags" c:type="GstVideoFlags"/>
       </field>
       <field name="width" writable="1">
-        <doc xml:space="preserve">the width of the video</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-info.h"
+             line="291">the width of the video</doc>
         <type name="gint" c:type="gint"/>
       </field>
       <field name="height" writable="1">
-        <doc xml:space="preserve">the height of the video</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-info.h"
+             line="292">the height of the video</doc>
         <type name="gint" c:type="gint"/>
       </field>
       <field name="size" writable="1">
-        <doc xml:space="preserve">the default size of one frame</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-info.h"
+             line="294">the default size of one frame</doc>
         <type name="gsize" c:type="gsize"/>
       </field>
       <field name="views" writable="1">
-        <doc xml:space="preserve">the number of views for multiview video</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-info.h"
+             line="293">the number of views for multiview video</doc>
         <type name="gint" c:type="gint"/>
       </field>
       <field name="chroma_site" writable="1">
-        <doc xml:space="preserve">a #GstVideoChromaSite.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-info.h"
+             line="295">a #GstVideoChromaSite.</doc>
         <type name="VideoChromaSite" c:type="GstVideoChromaSite"/>
       </field>
       <field name="colorimetry" writable="1">
-        <doc xml:space="preserve">the colorimetry info</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-info.h"
+             line="296">the colorimetry info</doc>
         <type name="VideoColorimetry" c:type="GstVideoColorimetry"/>
       </field>
       <field name="par_n" writable="1">
-        <doc xml:space="preserve">the pixel-aspect-ratio numerator</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-info.h"
+             line="297">the pixel-aspect-ratio numerator</doc>
         <type name="gint" c:type="gint"/>
       </field>
       <field name="par_d" writable="1">
-        <doc xml:space="preserve">the pixel-aspect-ratio demnominator</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-info.h"
+             line="298">the pixel-aspect-ratio denominator</doc>
         <type name="gint" c:type="gint"/>
       </field>
       <field name="fps_n" writable="1">
-        <doc xml:space="preserve">the framerate numerator</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-info.h"
+             line="299">the framerate numerator</doc>
         <type name="gint" c:type="gint"/>
       </field>
       <field name="fps_d" writable="1">
-        <doc xml:space="preserve">the framerate demnominator</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-info.h"
+             line="300">the framerate denominator</doc>
         <type name="gint" c:type="gint"/>
       </field>
       <field name="offset" writable="1">
-        <doc xml:space="preserve">offsets of the planes</doc>
-        <array zero-terminated="0" c:type="gsize" fixed-size="4">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-info.h"
+             line="301">offsets of the planes</doc>
+        <array zero-terminated="0" fixed-size="4">
           <type name="gsize" c:type="gsize"/>
         </array>
       </field>
       <field name="stride" writable="1">
-        <doc xml:space="preserve">strides of the planes</doc>
-        <array zero-terminated="0" c:type="gint" fixed-size="4">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-info.h"
+             line="302">strides of the planes</doc>
+        <array zero-terminated="0" fixed-size="4">
           <type name="gint" c:type="gint"/>
         </array>
       </field>
       <union name="ABI" c:type="ABI">
+        <source-position filename="gst-libs/gst/video/video-info.h"
+                         line="344"/>
         <record name="abi" c:type="abi">
+          <source-position filename="gst-libs/gst/video/video-info.h"
+                           line="341"/>
           <field name="multiview_mode" writable="1">
             <type name="VideoMultiviewMode" c:type="GstVideoMultiviewMode"/>
           </field>
@@ -8218,174 +14388,306 @@ Use the provided macros to access the info in this structure.</doc>
           </field>
         </record>
         <field name="_gst_reserved" readable="0" private="1">
-          <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+          <array zero-terminated="0" fixed-size="4">
             <type name="gpointer" c:type="gpointer"/>
           </array>
         </field>
       </union>
       <constructor name="new" c:identifier="gst_video_info_new" version="1.6">
-        <doc xml:space="preserve">Allocate a new #GstVideoInfo that is also initialized with
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-info.c"
+             line="94">Allocate a new #GstVideoInfo that is also initialized with
 gst_video_info_init().</doc>
+        <source-position filename="gst-libs/gst/video/video-info.h"
+                         line="428"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new #GstVideoInfo. free with gst_video_info_free().</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-info.c"
+               line="100">a new #GstVideoInfo. free with gst_video_info_free().</doc>
           <type name="VideoInfo" c:type="GstVideoInfo*"/>
         </return-value>
       </constructor>
       <method name="align" c:identifier="gst_video_info_align">
-        <doc xml:space="preserve">Adjust the offset and stride fields in @info so that the padding and
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-info.c"
+             line="1413">Adjust the offset and stride fields in @info so that the padding and
 stride alignment in @align is respected.
 
 Extra padding will be added to the right side when stride alignment padding
 is required and @align will be updated with the new padding values.</doc>
+        <source-position filename="gst-libs/gst/video/video-info.h"
+                         line="471"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%FALSE if alignment could not be applied, e.g. because the
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-info.c"
+               line="1424">%FALSE if alignment could not be applied, e.g. because the
   size of a frame can't be represented as a 32 bit integer (Since: 1.12)</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="info" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-info.c"
+                 line="1415">a #GstVideoInfo</doc>
+            <type name="VideoInfo" c:type="GstVideoInfo*"/>
+          </instance-parameter>
+          <parameter name="align" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-info.c"
+                 line="1416">alignment parameters</doc>
+            <type name="VideoAlignment" c:type="GstVideoAlignment*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="align_full"
+              c:identifier="gst_video_info_align_full"
+              version="1.18">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-info.c"
+             line="1293">This variant of gst_video_info_align() provides the updated size, in bytes,
+of each video plane after the alignment, including all horizontal and vertical
+paddings.
+
+In case of GST_VIDEO_INTERLACE_MODE_ALTERNATE info, the returned sizes are the
+ones used to hold a single field, not the full frame.</doc>
+        <source-position filename="gst-libs/gst/video/video-info.h"
+                         line="474"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-info.c"
+               line="1306">%FALSE if alignment could not be applied, e.g. because the
+  size of a frame can't be represented as a 32 bit integer</doc>
+          <type name="gboolean" c:type="gboolean"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="info" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-info.c"
+                 line="1295">a #GstVideoInfo</doc>
             <type name="VideoInfo" c:type="GstVideoInfo*"/>
           </instance-parameter>
           <parameter name="align" transfer-ownership="none">
-            <doc xml:space="preserve">alignment parameters</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-info.c"
+                 line="1296">alignment parameters</doc>
             <type name="VideoAlignment" c:type="GstVideoAlignment*"/>
           </parameter>
+          <parameter name="plane_size"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full"
+                     optional="1"
+                     allow-none="1">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-info.c"
+                 line="1297">array used to store the plane sizes</doc>
+            <type name="gsize" c:type="gsize*"/>
+          </parameter>
         </parameters>
       </method>
       <method name="convert" c:identifier="gst_video_info_convert">
-        <doc xml:space="preserve">Converts among various #GstFormat types.  This function handles
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-info.c"
+             line="1167">Converts among various #GstFormat types.  This function handles
 GST_FORMAT_BYTES, GST_FORMAT_TIME, and GST_FORMAT_DEFAULT.  For
 raw video, GST_FORMAT_DEFAULT corresponds to video frames.  This
 function can be used to handle pad queries of the type GST_QUERY_CONVERT.</doc>
+        <source-position filename="gst-libs/gst/video/video-info.h"
+                         line="458"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">TRUE if the conversion was successful.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-info.c"
+               line="1180">TRUE if the conversion was successful.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="info" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-info.c"
+                 line="1169">a #GstVideoInfo</doc>
             <type name="VideoInfo" c:type="GstVideoInfo*"/>
           </instance-parameter>
           <parameter name="src_format" transfer-ownership="none">
-            <doc xml:space="preserve">#GstFormat of the @src_value</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-info.c"
+                 line="1170">#GstFormat of the @src_value</doc>
             <type name="Gst.Format" c:type="GstFormat"/>
           </parameter>
           <parameter name="src_value" transfer-ownership="none">
-            <doc xml:space="preserve">value to convert</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-info.c"
+                 line="1171">value to convert</doc>
             <type name="gint64" c:type="gint64"/>
           </parameter>
           <parameter name="dest_format" transfer-ownership="none">
-            <doc xml:space="preserve">#GstFormat of the @dest_value</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-info.c"
+                 line="1172">#GstFormat of the @dest_value</doc>
             <type name="Gst.Format" c:type="GstFormat"/>
           </parameter>
           <parameter name="dest_value"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">pointer to destination value</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-info.c"
+                 line="1173">pointer to destination value</doc>
             <type name="gint64" c:type="gint64*"/>
           </parameter>
         </parameters>
       </method>
       <method name="copy" c:identifier="gst_video_info_copy" version="1.6">
-        <doc xml:space="preserve">Copy a GstVideoInfo structure.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-info.c"
+             line="60">Copy a GstVideoInfo structure.</doc>
+        <source-position filename="gst-libs/gst/video/video-info.h"
+                         line="434"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new #GstVideoInfo. free with gst_video_info_free.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-info.c"
+               line="66">a new #GstVideoInfo. free with gst_video_info_free.</doc>
           <type name="VideoInfo" c:type="GstVideoInfo*"/>
         </return-value>
         <parameters>
           <instance-parameter name="info" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-info.c"
+                 line="62">a #GstVideoInfo</doc>
             <type name="VideoInfo" c:type="const GstVideoInfo*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="free" c:identifier="gst_video_info_free" version="1.6">
-        <doc xml:space="preserve">Free a GstVideoInfo structure previously allocated with gst_video_info_new()
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-info.c"
+             line="76">Free a GstVideoInfo structure previously allocated with gst_video_info_new()
 or gst_video_info_copy().</doc>
+        <source-position filename="gst-libs/gst/video/video-info.h"
+                         line="437"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="info" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-info.c"
+                 line="78">a #GstVideoInfo</doc>
             <type name="VideoInfo" c:type="GstVideoInfo*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="from_caps" c:identifier="gst_video_info_from_caps">
-        <doc xml:space="preserve">Parse @caps and update @info.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">TRUE if @caps could be parsed</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-info.c"
+             line="386">Parse @caps and update @info.</doc>
+        <source-position filename="gst-libs/gst/video/video-info.h"
+                         line="452"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-info.c"
+               line="393">TRUE if @caps could be parsed</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="info" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-info.c"
+                 line="388">a #GstVideoInfo</doc>
             <type name="VideoInfo" c:type="GstVideoInfo*"/>
           </instance-parameter>
           <parameter name="caps" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstCaps</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-info.c"
+                 line="389">a #GstCaps</doc>
             <type name="Gst.Caps" c:type="const GstCaps*"/>
           </parameter>
         </parameters>
       </method>
       <method name="init" c:identifier="gst_video_info_init">
-        <doc xml:space="preserve">Initialize @info with default values.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-info.c"
+             line="118">Initialize @info with default values.</doc>
+        <source-position filename="gst-libs/gst/video/video-info.h"
+                         line="431"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="info" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-info.c"
+                 line="120">a #GstVideoInfo</doc>
             <type name="VideoInfo" c:type="GstVideoInfo*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="is_equal" c:identifier="gst_video_info_is_equal">
-        <doc xml:space="preserve">Compares two #GstVideoInfo and returns whether they are equal or not</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if @info and @other are equal, else %FALSE.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-info.c"
+             line="576">Compares two #GstVideoInfo and returns whether they are equal or not</doc>
+        <source-position filename="gst-libs/gst/video/video-info.h"
+                         line="465"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-info.c"
+               line="583">%TRUE if @info and @other are equal, else %FALSE.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="info" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-info.c"
+                 line="578">a #GstVideoInfo</doc>
             <type name="VideoInfo" c:type="const GstVideoInfo*"/>
           </instance-parameter>
           <parameter name="other" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-info.c"
+                 line="579">a #GstVideoInfo</doc>
             <type name="VideoInfo" c:type="const GstVideoInfo*"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_format" c:identifier="gst_video_info_set_format">
-        <doc xml:space="preserve">Set the default info for a video frame of @format and @width and @height.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-info.c"
+             line="234">Set the default info for a video frame of @format and @width and @height.
 
 Note: This initializes @info first, no values are preserved. This function
 does not set the offsets correctly for interlaced vertically
 subsampled formats.</doc>
+        <source-position filename="gst-libs/gst/video/video-info.h"
+                         line="440"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%FALSE if the returned video info is invalid, e.g. because the
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-info.c"
+               line="247">%FALSE if the returned video info is invalid, e.g. because the
   size of a frame can't be represented as a 32 bit integer (Since: 1.12)</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="info" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-info.c"
+                 line="236">a #GstVideoInfo</doc>
             <type name="VideoInfo" c:type="GstVideoInfo*"/>
           </instance-parameter>
           <parameter name="format" transfer-ownership="none">
-            <doc xml:space="preserve">the format</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-info.c"
+                 line="237">the format</doc>
             <type name="VideoFormat" c:type="GstVideoFormat"/>
           </parameter>
           <parameter name="width" transfer-ownership="none">
-            <doc xml:space="preserve">a width</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-info.c"
+                 line="238">a width</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="height" transfer-ownership="none">
-            <doc xml:space="preserve">a height</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-info.c"
+                 line="239">a height</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
@@ -8393,45 +14695,69 @@ subsampled formats.</doc>
       <method name="set_interlaced_format"
               c:identifier="gst_video_info_set_interlaced_format"
               version="1.16">
-        <doc xml:space="preserve">Same as #gst_video_info_set_format but also allowing to set the interlaced
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-info.c"
+             line="260">Same as #gst_video_info_set_format but also allowing to set the interlaced
 mode.</doc>
+        <source-position filename="gst-libs/gst/video/video-info.h"
+                         line="444"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%FALSE if the returned video info is invalid, e.g. because the
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-info.c"
+               line="271">%FALSE if the returned video info is invalid, e.g. because the
   size of a frame can't be represented as a 32 bit integer.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="info" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-info.c"
+                 line="262">a #GstVideoInfo</doc>
             <type name="VideoInfo" c:type="GstVideoInfo*"/>
           </instance-parameter>
           <parameter name="format" transfer-ownership="none">
-            <doc xml:space="preserve">the format</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-info.c"
+                 line="263">the format</doc>
             <type name="VideoFormat" c:type="GstVideoFormat"/>
           </parameter>
           <parameter name="mode" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoInterlaceMode</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-info.c"
+                 line="264">a #GstVideoInterlaceMode</doc>
             <type name="VideoInterlaceMode" c:type="GstVideoInterlaceMode"/>
           </parameter>
           <parameter name="width" transfer-ownership="none">
-            <doc xml:space="preserve">a width</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-info.c"
+                 line="265">a width</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="height" transfer-ownership="none">
-            <doc xml:space="preserve">a height</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-info.c"
+                 line="266">a height</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="to_caps" c:identifier="gst_video_info_to_caps">
-        <doc xml:space="preserve">Convert the values of @info into a #GstCaps.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-info.c"
+             line="635">Convert the values of @info into a #GstCaps.</doc>
+        <source-position filename="gst-libs/gst/video/video-info.h"
+                         line="455"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new #GstCaps containing the info of @info.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-info.c"
+               line="641">a new #GstCaps containing the info of @info.</doc>
           <type name="Gst.Caps" c:type="GstCaps*"/>
         </return-value>
         <parameters>
           <instance-parameter name="info" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-info.c"
+                 line="637">a #GstVideoInfo</doc>
             <type name="VideoInfo" c:type="GstVideoInfo*"/>
           </instance-parameter>
         </parameters>
@@ -8441,33 +14767,43 @@ mode.</doc>
                  glib:type-name="GstVideoInterlaceMode"
                  glib:get-type="gst_video_interlace_mode_get_type"
                  c:type="GstVideoInterlaceMode">
-      <doc xml:space="preserve">The possible values of the #GstVideoInterlaceMode describing the interlace
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-info.h"
+           line="54">The possible values of the #GstVideoInterlaceMode describing the interlace
 mode of the stream.</doc>
       <member name="progressive"
               value="0"
               c:identifier="GST_VIDEO_INTERLACE_MODE_PROGRESSIVE"
               glib:nick="progressive">
-        <doc xml:space="preserve">all frames are progressive</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-info.h"
+             line="56">all frames are progressive</doc>
       </member>
       <member name="interleaved"
               value="1"
               c:identifier="GST_VIDEO_INTERLACE_MODE_INTERLEAVED"
               glib:nick="interleaved">
-        <doc xml:space="preserve">2 fields are interleaved in one video
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-info.h"
+             line="57">2 fields are interleaved in one video
     frame. Extra buffer flags describe the field order.</doc>
       </member>
       <member name="mixed"
               value="2"
               c:identifier="GST_VIDEO_INTERLACE_MODE_MIXED"
               glib:nick="mixed">
-        <doc xml:space="preserve">frames contains both interlaced and
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-info.h"
+             line="59">frames contains both interlaced and
     progressive video, the buffer flags describe the frame and fields.</doc>
       </member>
       <member name="fields"
               value="3"
               c:identifier="GST_VIDEO_INTERLACE_MODE_FIELDS"
               glib:nick="fields">
-        <doc xml:space="preserve">2 fields are stored in one buffer, use the
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-info.h"
+             line="61">2 fields are stored in one buffer, use the
     frame ID to get access to the required field. For multiview (the
     'views' property &gt; 1) the fields of view N can be found at frame ID
     (N * 2) and (N * 2) + 1.
@@ -8479,7 +14815,9 @@ mode of the stream.</doc>
               value="4"
               c:identifier="GST_VIDEO_INTERLACE_MODE_ALTERNATE"
               glib:nick="alternate">
-        <doc xml:space="preserve">1 field is stored in one buffer,
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-info.h"
+             line="68">1 field is stored in one buffer,
     @GST_VIDEO_BUFFER_FLAG_TF or @GST_VIDEO_BUFFER_FLAG_BF indicates if
     the buffer is carrying the top or bottom field, respectively. The top and
     bottom buffers are expected to alternate in the pipeline, with this mode
@@ -8488,16 +14826,23 @@ mode of the stream.</doc>
       <function name="from_string"
                 c:identifier="gst_video_interlace_mode_from_string"
                 version="1.6">
-        <doc xml:space="preserve">Convert @mode to a #GstVideoInterlaceMode</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the #GstVideoInterlaceMode of @mode or
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-info.c"
+             line="315">Convert @mode to a #GstVideoInterlaceMode</doc>
+        <source-position filename="gst-libs/gst/video/video-info.h" line="89"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-info.c"
+               line="321">the #GstVideoInterlaceMode of @mode or
    #GST_VIDEO_INTERLACE_MODE_PROGRESSIVE when @mode is not a valid
    string representation for a #GstVideoInterlaceMode.</doc>
           <type name="VideoInterlaceMode" c:type="GstVideoInterlaceMode"/>
         </return-value>
         <parameters>
           <parameter name="mode" transfer-ownership="none">
-            <doc xml:space="preserve">a mode</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-info.c"
+                 line="317">a mode</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
@@ -8505,102 +14850,390 @@ mode of the stream.</doc>
       <function name="to_string"
                 c:identifier="gst_video_interlace_mode_to_string"
                 version="1.6">
-        <doc xml:space="preserve">Convert @mode to its string representation.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">@mode as a string or NULL if @mode in invalid.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-info.c"
+             line="296">Convert @mode to its string representation.</doc>
+        <source-position filename="gst-libs/gst/video/video-info.h" line="86"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-info.c"
+               line="302">@mode as a string or NULL if @mode in invalid.</doc>
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
         <parameters>
           <parameter name="mode" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoInterlaceMode</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-info.c"
+                 line="298">a #GstVideoInterlaceMode</doc>
             <type name="VideoInterlaceMode" c:type="GstVideoInterlaceMode"/>
           </parameter>
         </parameters>
       </function>
     </enumeration>
+    <record name="VideoMasteringDisplayInfo"
+            c:type="GstVideoMasteringDisplayInfo"
+            version="1.18">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-hdr.h"
+           line="48">Mastering display color volume information defined by SMPTE ST 2086
+(a.k.a static HDR metadata).</doc>
+      <source-position filename="gst-libs/gst/video/video-hdr.h" line="74"/>
+      <field name="display_primaries" writable="1">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-hdr.h"
+             line="50">the xy coordinates of primaries in the CIE 1931 color space.
+  the index 0 contains red, 1 is for green and 2 is for blue.
+  each value is normalized to 50000 (meaning that in unit of 0.00002)</doc>
+        <array zero-terminated="0" fixed-size="3">
+          <type name="VideoMasteringDisplayInfoCoordinates"
+                c:type="GstVideoMasteringDisplayInfoCoordinates"/>
+        </array>
+      </field>
+      <field name="white_point" writable="1">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-hdr.h"
+             line="53">the xy coordinates of white point in the CIE 1931 color space.
+  each value is normalized to 50000 (meaning that in unit of 0.00002)</doc>
+        <type name="VideoMasteringDisplayInfoCoordinates"
+              c:type="GstVideoMasteringDisplayInfoCoordinates"/>
+      </field>
+      <field name="max_display_mastering_luminance" writable="1">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-hdr.h"
+             line="55">the maximum value of display luminance
+  in unit of 0.0001 candelas per square metre (cd/m^2 and nit)</doc>
+        <type name="guint32" c:type="guint32"/>
+      </field>
+      <field name="min_display_mastering_luminance" writable="1">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-hdr.h"
+             line="57">the minimum value of display luminance
+  in unit of 0.0001 candelas per square metre (cd/m^2 and nit)</doc>
+        <type name="guint32" c:type="guint32"/>
+      </field>
+      <field name="_gst_reserved" readable="0" private="1">
+        <array zero-terminated="0" fixed-size="4">
+          <type name="gpointer" c:type="gpointer"/>
+        </array>
+      </field>
+      <method name="add_to_caps"
+              c:identifier="gst_video_mastering_display_info_add_to_caps"
+              version="1.18">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-hdr.c"
+             line="240">Set string representation of @minfo to @caps</doc>
+        <source-position filename="gst-libs/gst/video/video-hdr.h" line="95"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-hdr.c"
+               line="247">%TRUE if @minfo was successfully set to @caps</doc>
+          <type name="gboolean" c:type="gboolean"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="minfo" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-hdr.c"
+                 line="242">a #GstVideoMasteringDisplayInfo</doc>
+            <type name="VideoMasteringDisplayInfo"
+                  c:type="const GstVideoMasteringDisplayInfo*"/>
+          </instance-parameter>
+          <parameter name="caps" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-hdr.c"
+                 line="243">a #GstCaps</doc>
+            <type name="Gst.Caps" c:type="GstCaps*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="from_caps"
+              c:identifier="gst_video_mastering_display_info_from_caps"
+              version="1.18">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-hdr.c"
+             line="210">Parse @caps and update @minfo</doc>
+        <source-position filename="gst-libs/gst/video/video-hdr.h" line="91"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-hdr.c"
+               line="217">%TRUE if @caps has #GstVideoMasteringDisplayInfo and could be parsed</doc>
+          <type name="gboolean" c:type="gboolean"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="minfo" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-hdr.c"
+                 line="212">a #GstVideoMasteringDisplayInfo</doc>
+            <type name="VideoMasteringDisplayInfo"
+                  c:type="GstVideoMasteringDisplayInfo*"/>
+          </instance-parameter>
+          <parameter name="caps" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-hdr.c"
+                 line="213">a #GstCaps</doc>
+            <type name="Gst.Caps" c:type="const GstCaps*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="init"
+              c:identifier="gst_video_mastering_display_info_init"
+              version="1.18">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-hdr.c"
+             line="62">Initialize @minfo</doc>
+        <source-position filename="gst-libs/gst/video/video-hdr.h" line="77"/>
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="minfo" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-hdr.c"
+                 line="64">a #GstVideoMasteringDisplayInfo</doc>
+            <type name="VideoMasteringDisplayInfo"
+                  c:type="GstVideoMasteringDisplayInfo*"/>
+          </instance-parameter>
+        </parameters>
+      </method>
+      <method name="is_equal"
+              c:identifier="gst_video_mastering_display_info_is_equal"
+              version="1.18">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-hdr.c"
+             line="173">Checks equality between @minfo and @other.</doc>
+        <source-position filename="gst-libs/gst/video/video-hdr.h" line="87"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-hdr.c"
+               line="180">%TRUE if @minfo and @other are equal.</doc>
+          <type name="gboolean" c:type="gboolean"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="minfo" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-hdr.c"
+                 line="175">a #GstVideoMasteringDisplayInfo</doc>
+            <type name="VideoMasteringDisplayInfo"
+                  c:type="const GstVideoMasteringDisplayInfo*"/>
+          </instance-parameter>
+          <parameter name="other" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-hdr.c"
+                 line="176">a #GstVideoMasteringDisplayInfo</doc>
+            <type name="VideoMasteringDisplayInfo"
+                  c:type="const GstVideoMasteringDisplayInfo*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="to_string"
+              c:identifier="gst_video_mastering_display_info_to_string"
+              version="1.18">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-hdr.c"
+             line="154">Convert @minfo to its string representation</doc>
+        <source-position filename="gst-libs/gst/video/video-hdr.h" line="84"/>
+        <return-value transfer-ownership="full">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-hdr.c"
+               line="160">a string representation of @minfo</doc>
+          <type name="utf8" c:type="gchar*"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="minfo" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-hdr.c"
+                 line="156">a #GstVideoMasteringDisplayInfo</doc>
+            <type name="VideoMasteringDisplayInfo"
+                  c:type="const GstVideoMasteringDisplayInfo*"/>
+          </instance-parameter>
+        </parameters>
+      </method>
+      <function name="from_string"
+                c:identifier="gst_video_mastering_display_info_from_string"
+                version="1.18">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-hdr.c"
+             line="78">Extract #GstVideoMasteringDisplayInfo from @mastering</doc>
+        <source-position filename="gst-libs/gst/video/video-hdr.h" line="80"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-hdr.c"
+               line="85">%TRUE if @minfo was filled with @mastering</doc>
+          <type name="gboolean" c:type="gboolean"/>
+        </return-value>
+        <parameters>
+          <parameter name="minfo"
+                     direction="out"
+                     caller-allocates="1"
+                     transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-hdr.c"
+                 line="80">a #GstVideoMasteringDisplayInfo</doc>
+            <type name="VideoMasteringDisplayInfo"
+                  c:type="GstVideoMasteringDisplayInfo*"/>
+          </parameter>
+          <parameter name="mastering" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-hdr.c"
+                 line="81">a #GstStructure representing #GstVideoMasteringDisplayInfo</doc>
+            <type name="utf8" c:type="const gchar*"/>
+          </parameter>
+        </parameters>
+      </function>
+    </record>
+    <record name="VideoMasteringDisplayInfoCoordinates"
+            c:type="GstVideoMasteringDisplayInfoCoordinates"
+            version="1.18">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-hdr.h"
+           line="32">Used to represent display_primaries and white_point of
+#GstVideoMasteringDisplayInfo struct. See #GstVideoMasteringDisplayInfo</doc>
+      <source-position filename="gst-libs/gst/video/video-hdr.h" line="46"/>
+      <field name="x" writable="1">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-hdr.h"
+             line="34">the x coordinate of CIE 1931 color space in unit of 0.00002.</doc>
+        <type name="guint16" c:type="guint16"/>
+      </field>
+      <field name="y" writable="1">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-hdr.h"
+             line="35">the y coordinate of CIE 1931 color space in unit of 0.00002.</doc>
+        <type name="guint16" c:type="guint16"/>
+      </field>
+    </record>
     <enumeration name="VideoMatrixMode"
                  version="1.6"
                  glib:type-name="GstVideoMatrixMode"
                  glib:get-type="gst_video_matrix_mode_get_type"
                  c:type="GstVideoMatrixMode">
-      <doc xml:space="preserve">Different color matrix conversion modes</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-converter.h"
+           line="198">Different color matrix conversion modes</doc>
       <member name="full"
               value="0"
               c:identifier="GST_VIDEO_MATRIX_MODE_FULL"
               glib:nick="full">
-        <doc xml:space="preserve">do conversion between color matrices</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-converter.h"
+             line="200">do conversion between color matrices</doc>
       </member>
       <member name="input_only"
               value="1"
               c:identifier="GST_VIDEO_MATRIX_MODE_INPUT_ONLY"
               glib:nick="input-only">
-        <doc xml:space="preserve">use the input color matrix to convert
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-converter.h"
+             line="201">use the input color matrix to convert
   to and from R'G'B</doc>
       </member>
       <member name="output_only"
               value="2"
               c:identifier="GST_VIDEO_MATRIX_MODE_OUTPUT_ONLY"
               glib:nick="output-only">
-        <doc xml:space="preserve">use the output color matrix to convert
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-converter.h"
+             line="203">use the output color matrix to convert
   to and from R'G'B</doc>
       </member>
       <member name="none"
               value="3"
               c:identifier="GST_VIDEO_MATRIX_MODE_NONE"
               glib:nick="none">
-        <doc xml:space="preserve">disable color matrix conversion.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-converter.h"
+             line="205">disable color matrix conversion.</doc>
       </member>
     </enumeration>
     <record name="VideoMeta" c:type="GstVideoMeta">
-      <doc xml:space="preserve">Extra buffer metadata describing image properties</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/gstvideometa.h"
+           line="40">Extra buffer metadata describing image properties
+
+This meta can also be used by downstream elements to specifiy their
+buffer layout requirements for upstream. Upstream should try to
+fit those requirements, if possible, in order to prevent buffer copies.
+
+This is done by passing a custom #GstStructure to
+gst_query_add_allocation_meta() when handling the ALLOCATION query.
+This structure should be named 'video-meta' and can have the following
+fields:
+- padding-top (uint): extra pixels on the top
+- padding-bottom (uint): extra pixels on the bottom
+- padding-left (uint): extra pixels on the left side
+- padding-right (uint): extra pixels on the right side
+The padding fields have the same semantic as #GstVideoMeta.alignment
+and so represent the paddings requested on produced video buffers.</doc>
+      <source-position filename="gst-libs/gst/video/gstvideometa.h" line="98"/>
       <field name="meta" writable="1">
-        <doc xml:space="preserve">parent #GstMeta</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideometa.h"
+             line="42">parent #GstMeta</doc>
         <type name="Gst.Meta" c:type="GstMeta"/>
       </field>
       <field name="buffer" writable="1">
-        <doc xml:space="preserve">the buffer this metadata belongs to</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideometa.h"
+             line="43">the buffer this metadata belongs to</doc>
         <type name="Gst.Buffer" c:type="GstBuffer*"/>
       </field>
       <field name="flags" writable="1">
-        <doc xml:space="preserve">additional video flags</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideometa.h"
+             line="44">additional video flags</doc>
         <type name="VideoFrameFlags" c:type="GstVideoFrameFlags"/>
       </field>
       <field name="format" writable="1">
-        <doc xml:space="preserve">the video format</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideometa.h"
+             line="45">the video format</doc>
         <type name="VideoFormat" c:type="GstVideoFormat"/>
       </field>
       <field name="id" writable="1">
-        <doc xml:space="preserve">identifier of the frame</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideometa.h"
+             line="46">identifier of the frame</doc>
         <type name="gint" c:type="gint"/>
       </field>
       <field name="width" writable="1">
-        <doc xml:space="preserve">the video width</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideometa.h"
+             line="47">the video width</doc>
         <type name="guint" c:type="guint"/>
       </field>
       <field name="height" writable="1">
-        <doc xml:space="preserve">the video height</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideometa.h"
+             line="48">the video height</doc>
         <type name="guint" c:type="guint"/>
       </field>
       <field name="n_planes" writable="1">
-        <doc xml:space="preserve">the number of planes in the image</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideometa.h"
+             line="49">the number of planes in the image</doc>
         <type name="guint" c:type="guint"/>
       </field>
       <field name="offset" writable="1">
-        <doc xml:space="preserve">array of offsets for the planes. This field might not always be
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideometa.h"
+             line="50">array of offsets for the planes. This field might not always be
          valid, it is used by the default implementation of @map.</doc>
-        <array zero-terminated="0" c:type="gsize" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gsize" c:type="gsize"/>
         </array>
       </field>
       <field name="stride" writable="1">
-        <doc xml:space="preserve">array of strides for the planes. This field might not always be
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideometa.h"
+             line="52">array of strides for the planes. This field might not always be
          valid, it is used by the default implementation of @map.</doc>
-        <array zero-terminated="0" c:type="gint" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gint" c:type="gint"/>
         </array>
       </field>
       <field name="map">
         <callback name="map">
+          <source-position filename="gst-libs/gst/video/gstvideometa.h"
+                           line="93"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -8628,6 +15261,8 @@ mode of the stream.</doc>
       </field>
       <field name="unmap">
         <callback name="unmap">
+          <source-position filename="gst-libs/gst/video/gstvideometa.h"
+                           line="95"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -8644,24 +15279,116 @@ mode of the stream.</doc>
           </parameters>
         </callback>
       </field>
+      <field name="alignment" writable="1">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideometa.h"
+             line="56">the paddings and alignment constraints of the video buffer.
+It is up to the caller of `gst_buffer_add_video_meta_full()` to set it
+using gst_video_meta_set_alignment(), if they did not it defaults
+to no padding and no alignment. Since: 1.18</doc>
+        <type name="VideoAlignment" c:type="GstVideoAlignment"/>
+      </field>
+      <method name="get_plane_height"
+              c:identifier="gst_video_meta_get_plane_height"
+              version="1.18">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideometa.c"
+             line="483">Compute the padded height of each plane from @meta (padded size
+divided by stride).
+
+It is not valid to call this function with a meta associated to a
+TILED video format.</doc>
+        <source-position filename="gst-libs/gst/video/gstvideometa.h"
+                         line="136"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideometa.c"
+               line="494">%TRUE if @meta's alignment is valid and @plane_height has been
+updated, %FALSE otherwise</doc>
+          <type name="gboolean" c:type="gboolean"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="meta" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideometa.c"
+                 line="485">a #GstVideoMeta</doc>
+            <type name="VideoMeta" c:type="GstVideoMeta*"/>
+          </instance-parameter>
+          <parameter name="plane_height"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideometa.c"
+                 line="486">array used to store the plane height</doc>
+            <type name="guint" c:type="guint*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="get_plane_size"
+              c:identifier="gst_video_meta_get_plane_size"
+              version="1.18">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideometa.c"
+             line="460">Compute the size, in bytes, of each video plane described in @meta including
+any padding and alignment constraint defined in @meta-&gt;alignment.</doc>
+        <source-position filename="gst-libs/gst/video/gstvideometa.h"
+                         line="133"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideometa.c"
+               line="468">%TRUE if @meta's alignment is valid and @plane_size has been
+updated, %FALSE otherwise</doc>
+          <type name="gboolean" c:type="gboolean"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="meta" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideometa.c"
+                 line="462">a #GstVideoMeta</doc>
+            <type name="VideoMeta" c:type="GstVideoMeta*"/>
+          </instance-parameter>
+          <parameter name="plane_size"
+                     direction="out"
+                     caller-allocates="0"
+                     transfer-ownership="full">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideometa.c"
+                 line="463">array used to store the plane sizes</doc>
+            <type name="gsize" c:type="gsize*"/>
+          </parameter>
+        </parameters>
+      </method>
       <method name="map" c:identifier="gst_video_meta_map">
-        <doc xml:space="preserve">Map the video plane with index @plane in @meta and return a pointer to the
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideometa.c"
+             line="345">Map the video plane with index @plane in @meta and return a pointer to the
 first byte of the plane and the stride of the plane.</doc>
+        <source-position filename="gst-libs/gst/video/gstvideometa.h"
+                         line="123"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">TRUE if the map operation was successful.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideometa.c"
+               line="357">TRUE if the map operation was successful.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="meta" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoMeta</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideometa.c"
+                 line="347">a #GstVideoMeta</doc>
             <type name="VideoMeta" c:type="GstVideoMeta*"/>
           </instance-parameter>
           <parameter name="plane" transfer-ownership="none">
-            <doc xml:space="preserve">a plane</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideometa.c"
+                 line="348">a plane</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="info" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstMapInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideometa.c"
+                 line="349">a #GstMapInfo</doc>
             <type name="Gst.MapInfo" c:type="GstMapInfo*"/>
           </parameter>
           <parameter name="data"
@@ -8669,65 +15396,130 @@ first byte of the plane and the stride of the plane.</doc>
                      caller-allocates="0"
                      transfer-ownership="full"
                      nullable="1">
-            <doc xml:space="preserve">the data of @plane</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideometa.c"
+                 line="350">the data of @plane</doc>
             <type name="gpointer" c:type="gpointer*"/>
           </parameter>
           <parameter name="stride"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">the stride of @plane</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideometa.c"
+                 line="351">the stride of @plane</doc>
             <type name="gint" c:type="gint*"/>
           </parameter>
           <parameter name="flags" transfer-ownership="none">
-            <doc xml:space="preserve">@GstMapFlags</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideometa.c"
+                 line="352">@GstMapFlags</doc>
             <type name="Gst.MapFlags" c:type="GstMapFlags"/>
           </parameter>
         </parameters>
       </method>
+      <method name="set_alignment"
+              c:identifier="gst_video_meta_set_alignment"
+              version="1.18">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideometa.c"
+             line="424">Set the alignment of @meta to @alignment. This function checks that
+the paddings defined in @alignment are compatible with the strides
+defined in @meta and will fail to update if they are not.</doc>
+        <source-position filename="gst-libs/gst/video/gstvideometa.h"
+                         line="130"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideometa.c"
+               line="433">%TRUE if @alignment's meta has been updated, %FALSE if not</doc>
+          <type name="gboolean" c:type="gboolean"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="meta" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideometa.c"
+                 line="426">a #GstVideoMeta</doc>
+            <type name="VideoMeta" c:type="GstVideoMeta*"/>
+          </instance-parameter>
+          <parameter name="alignment" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideometa.c"
+                 line="427">a #GstVideoAlignment</doc>
+            <type name="VideoAlignment" c:type="GstVideoAlignment"/>
+          </parameter>
+        </parameters>
+      </method>
       <method name="unmap" c:identifier="gst_video_meta_unmap">
-        <doc xml:space="preserve">Unmap a previously mapped plane with gst_video_meta_map().</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">TRUE if the memory was successfully unmapped.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideometa.c"
+             line="376">Unmap a previously mapped plane with gst_video_meta_map().</doc>
+        <source-position filename="gst-libs/gst/video/gstvideometa.h"
+                         line="127"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideometa.c"
+               line="384">TRUE if the memory was successfully unmapped.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="meta" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoMeta</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideometa.c"
+                 line="378">a #GstVideoMeta</doc>
             <type name="VideoMeta" c:type="GstVideoMeta*"/>
           </instance-parameter>
           <parameter name="plane" transfer-ownership="none">
-            <doc xml:space="preserve">a plane</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideometa.c"
+                 line="379">a plane</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="info" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstMapInfo</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideometa.c"
+                 line="380">a #GstMapInfo</doc>
             <type name="Gst.MapInfo" c:type="GstMapInfo*"/>
           </parameter>
         </parameters>
       </method>
       <function name="get_info" c:identifier="gst_video_meta_get_info">
+        <source-position filename="gst-libs/gst/video/gstvideometa.h"
+                         line="104"/>
         <return-value transfer-ownership="none">
           <type name="Gst.MetaInfo" c:type="const GstMetaInfo*"/>
         </return-value>
       </function>
     </record>
     <record name="VideoMetaTransform" c:type="GstVideoMetaTransform">
-      <doc xml:space="preserve">Extra data passed to a video transform #GstMetaTransformFunction such as:
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/gstvideometa.h"
+           line="177">Extra data passed to a video transform #GstMetaTransformFunction such as:
 "gst-video-scale".</doc>
+      <source-position filename="gst-libs/gst/video/gstvideometa.h"
+                       line="188"/>
       <field name="in_info" writable="1">
-        <doc xml:space="preserve">the input #GstVideoInfo</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideometa.h"
+             line="179">the input #GstVideoInfo</doc>
         <type name="VideoInfo" c:type="GstVideoInfo*"/>
       </field>
       <field name="out_info" writable="1">
-        <doc xml:space="preserve">the output #GstVideoInfo</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideometa.h"
+             line="180">the output #GstVideoInfo</doc>
         <type name="VideoInfo" c:type="GstVideoInfo*"/>
       </field>
       <function name="scale_get_quark"
                 c:identifier="gst_video_meta_transform_scale_get_quark">
-        <doc xml:space="preserve">Get the #GQuark for the "gst-video-scale" metadata transform operation.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GQuark</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideometa.c"
+             line="619">Get the #GQuark for the "gst-video-scale" metadata transform operation.</doc>
+        <source-position filename="gst-libs/gst/video/gstvideometa.h"
+                         line="169"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideometa.c"
+               line="624">a #GQuark</doc>
           <type name="GLib.Quark" c:type="GQuark"/>
         </return-value>
       </function>
@@ -8736,55 +15528,71 @@ first byte of the plane and the stride of the plane.</doc>
               glib:type-name="GstVideoMultiviewFlags"
               glib:get-type="gst_video_multiview_flags_get_type"
               c:type="GstVideoMultiviewFlags">
-      <doc xml:space="preserve">GstVideoMultiviewFlags are used to indicate extra properties of a
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-info.h"
+           line="202">GstVideoMultiviewFlags are used to indicate extra properties of a
 stereo/multiview stream beyond the frame layout and buffer mapping
 that is conveyed in the #GstVideoMultiviewMode.</doc>
       <member name="none"
               value="0"
               c:identifier="GST_VIDEO_MULTIVIEW_FLAGS_NONE"
               glib:nick="none">
-        <doc xml:space="preserve">No flags</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-info.h"
+             line="204">No flags</doc>
       </member>
       <member name="right_view_first"
               value="1"
               c:identifier="GST_VIDEO_MULTIVIEW_FLAGS_RIGHT_VIEW_FIRST"
               glib:nick="right-view-first">
-        <doc xml:space="preserve">For stereo streams, the
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-info.h"
+             line="205">For stereo streams, the
     normal arrangement of left and right views is reversed.</doc>
       </member>
       <member name="left_flipped"
               value="2"
               c:identifier="GST_VIDEO_MULTIVIEW_FLAGS_LEFT_FLIPPED"
               glib:nick="left-flipped">
-        <doc xml:space="preserve">The left view is vertically
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-info.h"
+             line="207">The left view is vertically
     mirrored.</doc>
       </member>
       <member name="left_flopped"
               value="4"
               c:identifier="GST_VIDEO_MULTIVIEW_FLAGS_LEFT_FLOPPED"
               glib:nick="left-flopped">
-        <doc xml:space="preserve">The left view is horizontally
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-info.h"
+             line="209">The left view is horizontally
     mirrored.</doc>
       </member>
       <member name="right_flipped"
               value="8"
               c:identifier="GST_VIDEO_MULTIVIEW_FLAGS_RIGHT_FLIPPED"
               glib:nick="right-flipped">
-        <doc xml:space="preserve">The right view is
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-info.h"
+             line="211">The right view is
     vertically mirrored.</doc>
       </member>
       <member name="right_flopped"
               value="16"
               c:identifier="GST_VIDEO_MULTIVIEW_FLAGS_RIGHT_FLOPPED"
               glib:nick="right-flopped">
-        <doc xml:space="preserve">The right view is
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-info.h"
+             line="213">The right view is
     horizontally mirrored.</doc>
       </member>
       <member name="half_aspect"
               value="16384"
               c:identifier="GST_VIDEO_MULTIVIEW_FLAGS_HALF_ASPECT"
               glib:nick="half-aspect">
-        <doc xml:space="preserve">For frame-packed
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-info.h"
+             line="215">For frame-packed
     multiview modes, indicates that the individual
     views have been encoded with half the true width or height
     and should be scaled back up for display. This flag
@@ -8798,7 +15606,9 @@ that is conveyed in the #GstVideoMultiviewMode.</doc>
               value="32768"
               c:identifier="GST_VIDEO_MULTIVIEW_FLAGS_MIXED_MONO"
               glib:nick="mixed-mono">
-        <doc xml:space="preserve">The video stream contains both
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-info.h"
+             line="224">The video stream contains both
     mono and multiview portions, signalled on each buffer by the
     absence or presence of the @GST_VIDEO_BUFFER_FLAG_MULTIPLE_VIEW
     buffer flag.</doc>
@@ -8810,12 +15620,17 @@ that is conveyed in the #GstVideoMultiviewMode.</doc>
            glib:type-name="GstVideoMultiviewFlagsSet"
            glib:get-type="gst_video_multiview_flagset_get_type"
            glib:fundamental="1">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-multiview.h"
+           line="28">See #GstVideoMultiviewFlags.</doc>
     </class>
     <enumeration name="VideoMultiviewFramePacking"
                  glib:type-name="GstVideoMultiviewFramePacking"
                  glib:get-type="gst_video_multiview_frame_packing_get_type"
                  c:type="GstVideoMultiviewFramePacking">
-      <doc xml:space="preserve">#GstVideoMultiviewFramePacking represents the subset of #GstVideoMultiviewMode
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-info.h"
+           line="153">#GstVideoMultiviewFramePacking represents the subset of #GstVideoMultiviewMode
 values that can be applied to any video frame without needing extra metadata.
 It can be used by elements that provide a property to override the
 multiview interpretation of a video stream when the video doesn't contain
@@ -8828,39 +15643,51 @@ equivalent to and have the same value as the matching #GstVideoMultiviewMode.</d
               value="-1"
               c:identifier="GST_VIDEO_MULTIVIEW_FRAME_PACKING_NONE"
               glib:nick="none">
-        <doc xml:space="preserve">A special value indicating
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-info.h"
+             line="155">A special value indicating
 no frame packing info.</doc>
       </member>
       <member name="mono"
               value="0"
               c:identifier="GST_VIDEO_MULTIVIEW_FRAME_PACKING_MONO"
               glib:nick="mono">
-        <doc xml:space="preserve">All frames are monoscopic.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-info.h"
+             line="157">All frames are monoscopic.</doc>
       </member>
       <member name="left"
               value="1"
               c:identifier="GST_VIDEO_MULTIVIEW_FRAME_PACKING_LEFT"
               glib:nick="left">
-        <doc xml:space="preserve">All frames represent a left-eye view.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-info.h"
+             line="158">All frames represent a left-eye view.</doc>
       </member>
       <member name="right"
               value="2"
               c:identifier="GST_VIDEO_MULTIVIEW_FRAME_PACKING_RIGHT"
               glib:nick="right">
-        <doc xml:space="preserve">All frames represent a right-eye view.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-info.h"
+             line="159">All frames represent a right-eye view.</doc>
       </member>
       <member name="side_by_side"
               value="3"
               c:identifier="GST_VIDEO_MULTIVIEW_FRAME_PACKING_SIDE_BY_SIDE"
               glib:nick="side-by-side">
-        <doc xml:space="preserve">Left and right eye views are
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-info.h"
+             line="160">Left and right eye views are
 provided in the left and right half of the frame respectively.</doc>
       </member>
       <member name="side_by_side_quincunx"
               value="4"
               c:identifier="GST_VIDEO_MULTIVIEW_FRAME_PACKING_SIDE_BY_SIDE_QUINCUNX"
               glib:nick="side-by-side-quincunx">
-        <doc xml:space="preserve">Left and right eye
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-info.h"
+             line="162">Left and right eye
 views are provided in the left and right half of the frame, but
 have been sampled using quincunx method, with half-pixel offset
 between the 2 views.</doc>
@@ -8869,28 +15696,36 @@ between the 2 views.</doc>
               value="5"
               c:identifier="GST_VIDEO_MULTIVIEW_FRAME_PACKING_COLUMN_INTERLEAVED"
               glib:nick="column-interleaved">
-        <doc xml:space="preserve">Alternating vertical
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-info.h"
+             line="166">Alternating vertical
 columns of pixels represent the left and right eye view respectively.</doc>
       </member>
       <member name="row_interleaved"
               value="6"
               c:identifier="GST_VIDEO_MULTIVIEW_FRAME_PACKING_ROW_INTERLEAVED"
               glib:nick="row-interleaved">
-        <doc xml:space="preserve">Alternating horizontal
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-info.h"
+             line="168">Alternating horizontal
 rows of pixels represent the left and right eye view respectively.</doc>
       </member>
       <member name="top_bottom"
               value="7"
               c:identifier="GST_VIDEO_MULTIVIEW_FRAME_PACKING_TOP_BOTTOM"
               glib:nick="top-bottom">
-        <doc xml:space="preserve">The top half of the frame
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-info.h"
+             line="170">The top half of the frame
 contains the left eye, and the bottom half the right eye.</doc>
       </member>
       <member name="checkerboard"
               value="8"
               c:identifier="GST_VIDEO_MULTIVIEW_FRAME_PACKING_CHECKERBOARD"
               glib:nick="checkerboard">
-        <doc xml:space="preserve">Pixels are arranged with
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-info.h"
+             line="172">Pixels are arranged with
 alternating pixels representing left and right eye views in a
 checkerboard fashion.</doc>
       </member>
@@ -8899,14 +15734,18 @@ checkerboard fashion.</doc>
                  glib:type-name="GstVideoMultiviewMode"
                  glib:get-type="gst_video_multiview_mode_get_type"
                  c:type="GstVideoMultiviewMode">
-      <doc xml:space="preserve">All possible stereoscopic 3D and multiview representations.
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-info.h"
+           line="91">All possible stereoscopic 3D and multiview representations.
 In conjunction with #GstVideoMultiviewFlags, describes how
 multiview content is being transported in the stream.</doc>
       <member name="none"
               value="-1"
               c:identifier="GST_VIDEO_MULTIVIEW_MODE_NONE"
               glib:nick="none">
-        <doc xml:space="preserve">A special value indicating
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-info.h"
+             line="93">A special value indicating
 no multiview information. Used in GstVideoInfo and other places to
 indicate that no specific multiview handling has been requested or
 provided. This value is never carried on caps.</doc>
@@ -8915,32 +15754,42 @@ provided. This value is never carried on caps.</doc>
               value="0"
               c:identifier="GST_VIDEO_MULTIVIEW_MODE_MONO"
               glib:nick="mono">
-        <doc xml:space="preserve">All frames are monoscopic.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-info.h"
+             line="97">All frames are monoscopic.</doc>
       </member>
       <member name="left"
               value="1"
               c:identifier="GST_VIDEO_MULTIVIEW_MODE_LEFT"
               glib:nick="left">
-        <doc xml:space="preserve">All frames represent a left-eye view.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-info.h"
+             line="98">All frames represent a left-eye view.</doc>
       </member>
       <member name="right"
               value="2"
               c:identifier="GST_VIDEO_MULTIVIEW_MODE_RIGHT"
               glib:nick="right">
-        <doc xml:space="preserve">All frames represent a right-eye view.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-info.h"
+             line="99">All frames represent a right-eye view.</doc>
       </member>
       <member name="side_by_side"
               value="3"
               c:identifier="GST_VIDEO_MULTIVIEW_MODE_SIDE_BY_SIDE"
               glib:nick="side-by-side">
-        <doc xml:space="preserve">Left and right eye views are
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-info.h"
+             line="100">Left and right eye views are
 provided in the left and right half of the frame respectively.</doc>
       </member>
       <member name="side_by_side_quincunx"
               value="4"
               c:identifier="GST_VIDEO_MULTIVIEW_MODE_SIDE_BY_SIDE_QUINCUNX"
               glib:nick="side-by-side-quincunx">
-        <doc xml:space="preserve">Left and right eye
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-info.h"
+             line="102">Left and right eye
 views are provided in the left and right half of the frame, but
 have been sampled using quincunx method, with half-pixel offset
 between the 2 views.</doc>
@@ -8949,28 +15798,36 @@ between the 2 views.</doc>
               value="5"
               c:identifier="GST_VIDEO_MULTIVIEW_MODE_COLUMN_INTERLEAVED"
               glib:nick="column-interleaved">
-        <doc xml:space="preserve">Alternating vertical
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-info.h"
+             line="106">Alternating vertical
 columns of pixels represent the left and right eye view respectively.</doc>
       </member>
       <member name="row_interleaved"
               value="6"
               c:identifier="GST_VIDEO_MULTIVIEW_MODE_ROW_INTERLEAVED"
               glib:nick="row-interleaved">
-        <doc xml:space="preserve">Alternating horizontal
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-info.h"
+             line="108">Alternating horizontal
 rows of pixels represent the left and right eye view respectively.</doc>
       </member>
       <member name="top_bottom"
               value="7"
               c:identifier="GST_VIDEO_MULTIVIEW_MODE_TOP_BOTTOM"
               glib:nick="top-bottom">
-        <doc xml:space="preserve">The top half of the frame
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-info.h"
+             line="110">The top half of the frame
 contains the left eye, and the bottom half the right eye.</doc>
       </member>
       <member name="checkerboard"
               value="8"
               c:identifier="GST_VIDEO_MULTIVIEW_MODE_CHECKERBOARD"
               glib:nick="checkerboard">
-        <doc xml:space="preserve">Pixels are arranged with
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-info.h"
+             line="112">Pixels are arranged with
 alternating pixels representing left and right eye views in a
 checkerboard fashion.</doc>
       </member>
@@ -8978,33 +15835,43 @@ checkerboard fashion.</doc>
               value="32"
               c:identifier="GST_VIDEO_MULTIVIEW_MODE_FRAME_BY_FRAME"
               glib:nick="frame-by-frame">
-        <doc xml:space="preserve">Left and right eye views
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-info.h"
+             line="115">Left and right eye views
 are provided in separate frames alternately.</doc>
       </member>
       <member name="multiview_frame_by_frame"
               value="33"
               c:identifier="GST_VIDEO_MULTIVIEW_MODE_MULTIVIEW_FRAME_BY_FRAME"
               glib:nick="multiview-frame-by-frame">
-        <doc xml:space="preserve">Multiple
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-info.h"
+             line="117">Multiple
 independent views are provided in separate frames in sequence.
 This method only applies to raw video buffers at the moment.
-Specific view identification is via the #GstVideoMultiviewMeta
+Specific view identification is via the `GstVideoMultiviewMeta`
 and #GstVideoMeta(s) on raw video buffers.</doc>
       </member>
       <member name="separated"
               value="34"
               c:identifier="GST_VIDEO_MULTIVIEW_MODE_SEPARATED"
               glib:nick="separated">
-        <doc xml:space="preserve">Multiple views are
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-info.h"
+             line="122">Multiple views are
 provided as separate #GstMemory framebuffers attached to each
-#GstBuffer, described by the #GstVideoMultiviewMeta
+#GstBuffer, described by the `GstVideoMultiviewMeta`
 and #GstVideoMeta(s)</doc>
       </member>
       <function name="from_caps_string"
                 c:identifier="gst_video_multiview_mode_from_caps_string"
                 version="1.6">
+        <source-position filename="gst-libs/gst/video/video-multiview.h"
+                         line="41"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The #GstVideoMultiviewMode value
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-multiview.c"
+               line="93">The #GstVideoMultiviewMode value
 
 Given a string from a caps multiview-mode field,
 output the corresponding #GstVideoMultiviewMode
@@ -9013,7 +15880,9 @@ or #GST_VIDEO_MULTIVIEW_MODE_NONE</doc>
         </return-value>
         <parameters>
           <parameter name="caps_mview_mode" transfer-ownership="none">
-            <doc xml:space="preserve">multiview-mode field string from caps</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-multiview.c"
+                 line="91">multiview-mode field string from caps</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
@@ -9021,8 +15890,12 @@ or #GST_VIDEO_MULTIVIEW_MODE_NONE</doc>
       <function name="to_caps_string"
                 c:identifier="gst_video_multiview_mode_to_caps_string"
                 version="1.6">
+        <source-position filename="gst-libs/gst/video/video-multiview.h"
+                         line="38"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">The caps string representation of the mode, or NULL if invalid.
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-multiview.c"
+               line="68">The caps string representation of the mode, or NULL if invalid.
 
 Given a #GstVideoMultiviewMode returns the multiview-mode caps string
 for insertion into a caps structure</doc>
@@ -9030,7 +15903,9 @@ for insertion into a caps structure</doc>
         </return-value>
         <parameters>
           <parameter name="mview_mode" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstVideoMultiviewMode value</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-multiview.c"
+                 line="66">A #GstVideoMultiviewMode value</doc>
             <type name="VideoMultiviewMode" c:type="GstVideoMultiviewMode"/>
           </parameter>
         </parameters>
@@ -9042,320 +15917,484 @@ for insertion into a caps structure</doc>
                glib:type-name="GstVideoOrientation"
                glib:get-type="gst_video_orientation_get_type"
                glib:type-struct="VideoOrientationInterface">
-      <doc xml:space="preserve">The interface allows unified access to control flipping and autocenter
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/videoorientation.c"
+           line="30">The interface allows unified access to control flipping and autocenter
 operation of video-sources or operators.</doc>
+      <source-position filename="gst-libs/gst/video/videoorientation.h"
+                       line="78"/>
       <virtual-method name="get_hcenter" invoker="get_hcenter">
-        <doc xml:space="preserve">Get the horizontal centering offset from the given object.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE in case the element supports centering</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/videoorientation.c"
+             line="104">Get the horizontal centering offset from the given object.</doc>
+        <source-position filename="gst-libs/gst/video/videoorientation.h"
+                         line="71"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/videoorientation.c"
+               line="110">%TRUE in case the element supports centering</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="video_orientation"
                               transfer-ownership="none">
-            <doc xml:space="preserve">#GstVideoOrientation interface of a #GstElement</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/videoorientation.c"
+                 line="106">#GstVideoOrientation interface of a #GstElement</doc>
             <type name="VideoOrientation" c:type="GstVideoOrientation*"/>
           </instance-parameter>
           <parameter name="center"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">return location for the result</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/videoorientation.c"
+                 line="107">return location for the result</doc>
             <type name="gint" c:type="gint*"/>
           </parameter>
         </parameters>
       </virtual-method>
       <virtual-method name="get_hflip" invoker="get_hflip">
-        <doc xml:space="preserve">Get the horizontal flipping state (%TRUE for flipped) from the given object.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE in case the element supports flipping</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/videoorientation.c"
+             line="62">Get the horizontal flipping state (%TRUE for flipped) from the given object.</doc>
+        <source-position filename="gst-libs/gst/video/videoorientation.h"
+                         line="69"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/videoorientation.c"
+               line="68">%TRUE in case the element supports flipping</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="video_orientation"
                               transfer-ownership="none">
-            <doc xml:space="preserve">#GstVideoOrientation interface of a #GstElement</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/videoorientation.c"
+                 line="64">#GstVideoOrientation interface of a #GstElement</doc>
             <type name="VideoOrientation" c:type="GstVideoOrientation*"/>
           </instance-parameter>
           <parameter name="flip"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">return location for the result</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/videoorientation.c"
+                 line="65">return location for the result</doc>
             <type name="gboolean" c:type="gboolean*"/>
           </parameter>
         </parameters>
       </virtual-method>
       <virtual-method name="get_vcenter" invoker="get_vcenter">
-        <doc xml:space="preserve">Get the vertical centering offset from the given object.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE in case the element supports centering</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/videoorientation.c"
+             line="125">Get the vertical centering offset from the given object.</doc>
+        <source-position filename="gst-libs/gst/video/videoorientation.h"
+                         line="72"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/videoorientation.c"
+               line="131">%TRUE in case the element supports centering</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="video_orientation"
                               transfer-ownership="none">
-            <doc xml:space="preserve">#GstVideoOrientation interface of a #GstElement</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/videoorientation.c"
+                 line="127">#GstVideoOrientation interface of a #GstElement</doc>
             <type name="VideoOrientation" c:type="GstVideoOrientation*"/>
           </instance-parameter>
           <parameter name="center"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">return location for the result</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/videoorientation.c"
+                 line="128">return location for the result</doc>
             <type name="gint" c:type="gint*"/>
           </parameter>
         </parameters>
       </virtual-method>
       <virtual-method name="get_vflip" invoker="get_vflip">
-        <doc xml:space="preserve">Get the vertical flipping state (%TRUE for flipped) from the given object.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE in case the element supports flipping</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/videoorientation.c"
+             line="83">Get the vertical flipping state (%TRUE for flipped) from the given object.</doc>
+        <source-position filename="gst-libs/gst/video/videoorientation.h"
+                         line="70"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/videoorientation.c"
+               line="89">%TRUE in case the element supports flipping</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="video_orientation"
                               transfer-ownership="none">
-            <doc xml:space="preserve">#GstVideoOrientation interface of a #GstElement</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/videoorientation.c"
+                 line="85">#GstVideoOrientation interface of a #GstElement</doc>
             <type name="VideoOrientation" c:type="GstVideoOrientation*"/>
           </instance-parameter>
           <parameter name="flip"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">return location for the result</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/videoorientation.c"
+                 line="86">return location for the result</doc>
             <type name="gboolean" c:type="gboolean*"/>
           </parameter>
         </parameters>
       </virtual-method>
       <virtual-method name="set_hcenter" invoker="set_hcenter">
-        <doc xml:space="preserve">Set the horizontal centering offset for the given object.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE in case the element supports centering</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/videoorientation.c"
+             line="188">Set the horizontal centering offset for the given object.</doc>
+        <source-position filename="gst-libs/gst/video/videoorientation.h"
+                         line="76"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/videoorientation.c"
+               line="194">%TRUE in case the element supports centering</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="video_orientation"
                               transfer-ownership="none">
-            <doc xml:space="preserve">#GstVideoOrientation interface of a #GstElement</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/videoorientation.c"
+                 line="190">#GstVideoOrientation interface of a #GstElement</doc>
             <type name="VideoOrientation" c:type="GstVideoOrientation*"/>
           </instance-parameter>
           <parameter name="center" transfer-ownership="none">
-            <doc xml:space="preserve">centering offset</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/videoorientation.c"
+                 line="191">centering offset</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
         </parameters>
       </virtual-method>
       <virtual-method name="set_hflip" invoker="set_hflip">
-        <doc xml:space="preserve">Set the horizontal flipping state (%TRUE for flipped) for the given object.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE in case the element supports flipping</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/videoorientation.c"
+             line="146">Set the horizontal flipping state (%TRUE for flipped) for the given object.</doc>
+        <source-position filename="gst-libs/gst/video/videoorientation.h"
+                         line="74"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/videoorientation.c"
+               line="152">%TRUE in case the element supports flipping</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="video_orientation"
                               transfer-ownership="none">
-            <doc xml:space="preserve">#GstVideoOrientation interface of a #GstElement</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/videoorientation.c"
+                 line="148">#GstVideoOrientation interface of a #GstElement</doc>
             <type name="VideoOrientation" c:type="GstVideoOrientation*"/>
           </instance-parameter>
           <parameter name="flip" transfer-ownership="none">
-            <doc xml:space="preserve">use flipping</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/videoorientation.c"
+                 line="149">use flipping</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </virtual-method>
       <virtual-method name="set_vcenter" invoker="set_vcenter">
-        <doc xml:space="preserve">Set the vertical centering offset for the given object.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE in case the element supports centering</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/videoorientation.c"
+             line="209">Set the vertical centering offset for the given object.</doc>
+        <source-position filename="gst-libs/gst/video/videoorientation.h"
+                         line="77"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/videoorientation.c"
+               line="215">%TRUE in case the element supports centering</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="video_orientation"
                               transfer-ownership="none">
-            <doc xml:space="preserve">#GstVideoOrientation interface of a #GstElement</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/videoorientation.c"
+                 line="211">#GstVideoOrientation interface of a #GstElement</doc>
             <type name="VideoOrientation" c:type="GstVideoOrientation*"/>
           </instance-parameter>
           <parameter name="center" transfer-ownership="none">
-            <doc xml:space="preserve">centering offset</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/videoorientation.c"
+                 line="212">centering offset</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
         </parameters>
       </virtual-method>
       <virtual-method name="set_vflip" invoker="set_vflip">
-        <doc xml:space="preserve">Set the vertical flipping state (%TRUE for flipped) for the given object.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE in case the element supports flipping</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/videoorientation.c"
+             line="167">Set the vertical flipping state (%TRUE for flipped) for the given object.</doc>
+        <source-position filename="gst-libs/gst/video/videoorientation.h"
+                         line="75"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/videoorientation.c"
+               line="173">%TRUE in case the element supports flipping</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="video_orientation"
                               transfer-ownership="none">
-            <doc xml:space="preserve">#GstVideoOrientation interface of a #GstElement</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/videoorientation.c"
+                 line="169">#GstVideoOrientation interface of a #GstElement</doc>
             <type name="VideoOrientation" c:type="GstVideoOrientation*"/>
           </instance-parameter>
           <parameter name="flip" transfer-ownership="none">
-            <doc xml:space="preserve">use flipping</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/videoorientation.c"
+                 line="170">use flipping</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </virtual-method>
       <method name="get_hcenter"
               c:identifier="gst_video_orientation_get_hcenter">
-        <doc xml:space="preserve">Get the horizontal centering offset from the given object.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE in case the element supports centering</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/videoorientation.c"
+             line="104">Get the horizontal centering offset from the given object.</doc>
+        <source-position filename="gst-libs/gst/video/videoorientation.h"
+                         line="92"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/videoorientation.c"
+               line="110">%TRUE in case the element supports centering</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="video_orientation"
                               transfer-ownership="none">
-            <doc xml:space="preserve">#GstVideoOrientation interface of a #GstElement</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/videoorientation.c"
+                 line="106">#GstVideoOrientation interface of a #GstElement</doc>
             <type name="VideoOrientation" c:type="GstVideoOrientation*"/>
           </instance-parameter>
           <parameter name="center"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">return location for the result</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/videoorientation.c"
+                 line="107">return location for the result</doc>
             <type name="gint" c:type="gint*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_hflip" c:identifier="gst_video_orientation_get_hflip">
-        <doc xml:space="preserve">Get the horizontal flipping state (%TRUE for flipped) from the given object.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE in case the element supports flipping</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/videoorientation.c"
+             line="62">Get the horizontal flipping state (%TRUE for flipped) from the given object.</doc>
+        <source-position filename="gst-libs/gst/video/videoorientation.h"
+                         line="86"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/videoorientation.c"
+               line="68">%TRUE in case the element supports flipping</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="video_orientation"
                               transfer-ownership="none">
-            <doc xml:space="preserve">#GstVideoOrientation interface of a #GstElement</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/videoorientation.c"
+                 line="64">#GstVideoOrientation interface of a #GstElement</doc>
             <type name="VideoOrientation" c:type="GstVideoOrientation*"/>
           </instance-parameter>
           <parameter name="flip"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">return location for the result</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/videoorientation.c"
+                 line="65">return location for the result</doc>
             <type name="gboolean" c:type="gboolean*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_vcenter"
               c:identifier="gst_video_orientation_get_vcenter">
-        <doc xml:space="preserve">Get the vertical centering offset from the given object.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE in case the element supports centering</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/videoorientation.c"
+             line="125">Get the vertical centering offset from the given object.</doc>
+        <source-position filename="gst-libs/gst/video/videoorientation.h"
+                         line="95"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/videoorientation.c"
+               line="131">%TRUE in case the element supports centering</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="video_orientation"
                               transfer-ownership="none">
-            <doc xml:space="preserve">#GstVideoOrientation interface of a #GstElement</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/videoorientation.c"
+                 line="127">#GstVideoOrientation interface of a #GstElement</doc>
             <type name="VideoOrientation" c:type="GstVideoOrientation*"/>
           </instance-parameter>
           <parameter name="center"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">return location for the result</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/videoorientation.c"
+                 line="128">return location for the result</doc>
             <type name="gint" c:type="gint*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_vflip" c:identifier="gst_video_orientation_get_vflip">
-        <doc xml:space="preserve">Get the vertical flipping state (%TRUE for flipped) from the given object.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE in case the element supports flipping</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/videoorientation.c"
+             line="83">Get the vertical flipping state (%TRUE for flipped) from the given object.</doc>
+        <source-position filename="gst-libs/gst/video/videoorientation.h"
+                         line="89"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/videoorientation.c"
+               line="89">%TRUE in case the element supports flipping</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="video_orientation"
                               transfer-ownership="none">
-            <doc xml:space="preserve">#GstVideoOrientation interface of a #GstElement</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/videoorientation.c"
+                 line="85">#GstVideoOrientation interface of a #GstElement</doc>
             <type name="VideoOrientation" c:type="GstVideoOrientation*"/>
           </instance-parameter>
           <parameter name="flip"
                      direction="out"
                      caller-allocates="0"
                      transfer-ownership="full">
-            <doc xml:space="preserve">return location for the result</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/videoorientation.c"
+                 line="86">return location for the result</doc>
             <type name="gboolean" c:type="gboolean*"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_hcenter"
               c:identifier="gst_video_orientation_set_hcenter">
-        <doc xml:space="preserve">Set the horizontal centering offset for the given object.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE in case the element supports centering</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/videoorientation.c"
+             line="188">Set the horizontal centering offset for the given object.</doc>
+        <source-position filename="gst-libs/gst/video/videoorientation.h"
+                         line="104"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/videoorientation.c"
+               line="194">%TRUE in case the element supports centering</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="video_orientation"
                               transfer-ownership="none">
-            <doc xml:space="preserve">#GstVideoOrientation interface of a #GstElement</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/videoorientation.c"
+                 line="190">#GstVideoOrientation interface of a #GstElement</doc>
             <type name="VideoOrientation" c:type="GstVideoOrientation*"/>
           </instance-parameter>
           <parameter name="center" transfer-ownership="none">
-            <doc xml:space="preserve">centering offset</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/videoorientation.c"
+                 line="191">centering offset</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_hflip" c:identifier="gst_video_orientation_set_hflip">
-        <doc xml:space="preserve">Set the horizontal flipping state (%TRUE for flipped) for the given object.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE in case the element supports flipping</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/videoorientation.c"
+             line="146">Set the horizontal flipping state (%TRUE for flipped) for the given object.</doc>
+        <source-position filename="gst-libs/gst/video/videoorientation.h"
+                         line="98"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/videoorientation.c"
+               line="152">%TRUE in case the element supports flipping</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="video_orientation"
                               transfer-ownership="none">
-            <doc xml:space="preserve">#GstVideoOrientation interface of a #GstElement</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/videoorientation.c"
+                 line="148">#GstVideoOrientation interface of a #GstElement</doc>
             <type name="VideoOrientation" c:type="GstVideoOrientation*"/>
           </instance-parameter>
           <parameter name="flip" transfer-ownership="none">
-            <doc xml:space="preserve">use flipping</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/videoorientation.c"
+                 line="149">use flipping</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_vcenter"
               c:identifier="gst_video_orientation_set_vcenter">
-        <doc xml:space="preserve">Set the vertical centering offset for the given object.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE in case the element supports centering</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/videoorientation.c"
+             line="209">Set the vertical centering offset for the given object.</doc>
+        <source-position filename="gst-libs/gst/video/videoorientation.h"
+                         line="107"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/videoorientation.c"
+               line="215">%TRUE in case the element supports centering</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="video_orientation"
                               transfer-ownership="none">
-            <doc xml:space="preserve">#GstVideoOrientation interface of a #GstElement</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/videoorientation.c"
+                 line="211">#GstVideoOrientation interface of a #GstElement</doc>
             <type name="VideoOrientation" c:type="GstVideoOrientation*"/>
           </instance-parameter>
           <parameter name="center" transfer-ownership="none">
-            <doc xml:space="preserve">centering offset</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/videoorientation.c"
+                 line="212">centering offset</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_vflip" c:identifier="gst_video_orientation_set_vflip">
-        <doc xml:space="preserve">Set the vertical flipping state (%TRUE for flipped) for the given object.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE in case the element supports flipping</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/videoorientation.c"
+             line="167">Set the vertical flipping state (%TRUE for flipped) for the given object.</doc>
+        <source-position filename="gst-libs/gst/video/videoorientation.h"
+                         line="101"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/videoorientation.c"
+               line="173">%TRUE in case the element supports flipping</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="video_orientation"
                               transfer-ownership="none">
-            <doc xml:space="preserve">#GstVideoOrientation interface of a #GstElement</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/videoorientation.c"
+                 line="169">#GstVideoOrientation interface of a #GstElement</doc>
             <type name="VideoOrientation" c:type="GstVideoOrientation*"/>
           </instance-parameter>
           <parameter name="flip" transfer-ownership="none">
-            <doc xml:space="preserve">use flipping</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/videoorientation.c"
+                 line="170">use flipping</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
@@ -9364,27 +16403,41 @@ operation of video-sources or operators.</doc>
     <record name="VideoOrientationInterface"
             c:type="GstVideoOrientationInterface"
             glib:is-gtype-struct-for="VideoOrientation">
-      <doc xml:space="preserve">#GstVideoOrientationInterface interface.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/videoorientation.h"
+           line="47">#GstVideoOrientationInterface interface.</doc>
+      <source-position filename="gst-libs/gst/video/videoorientation.h"
+                       line="78"/>
       <field name="iface">
-        <doc xml:space="preserve">parent interface type.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/videoorientation.h"
+             line="49">parent interface type.</doc>
         <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
       </field>
       <field name="get_hflip">
         <callback name="get_hflip">
+          <source-position filename="gst-libs/gst/video/videoorientation.h"
+                           line="69"/>
           <return-value transfer-ownership="none">
-            <doc xml:space="preserve">%TRUE in case the element supports flipping</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/videoorientation.c"
+                 line="68">%TRUE in case the element supports flipping</doc>
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
           <parameters>
             <parameter name="video_orientation" transfer-ownership="none">
-              <doc xml:space="preserve">#GstVideoOrientation interface of a #GstElement</doc>
+              <doc xml:space="preserve"
+                   filename="gst-libs/gst/video/videoorientation.c"
+                   line="64">#GstVideoOrientation interface of a #GstElement</doc>
               <type name="VideoOrientation" c:type="GstVideoOrientation*"/>
             </parameter>
             <parameter name="flip"
                        direction="out"
                        caller-allocates="0"
                        transfer-ownership="full">
-              <doc xml:space="preserve">return location for the result</doc>
+              <doc xml:space="preserve"
+                   filename="gst-libs/gst/video/videoorientation.c"
+                   line="65">return location for the result</doc>
               <type name="gboolean" c:type="gboolean*"/>
             </parameter>
           </parameters>
@@ -9392,20 +16445,28 @@ operation of video-sources or operators.</doc>
       </field>
       <field name="get_vflip">
         <callback name="get_vflip">
+          <source-position filename="gst-libs/gst/video/videoorientation.h"
+                           line="70"/>
           <return-value transfer-ownership="none">
-            <doc xml:space="preserve">%TRUE in case the element supports flipping</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/videoorientation.c"
+                 line="89">%TRUE in case the element supports flipping</doc>
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
           <parameters>
             <parameter name="video_orientation" transfer-ownership="none">
-              <doc xml:space="preserve">#GstVideoOrientation interface of a #GstElement</doc>
+              <doc xml:space="preserve"
+                   filename="gst-libs/gst/video/videoorientation.c"
+                   line="85">#GstVideoOrientation interface of a #GstElement</doc>
               <type name="VideoOrientation" c:type="GstVideoOrientation*"/>
             </parameter>
             <parameter name="flip"
                        direction="out"
                        caller-allocates="0"
                        transfer-ownership="full">
-              <doc xml:space="preserve">return location for the result</doc>
+              <doc xml:space="preserve"
+                   filename="gst-libs/gst/video/videoorientation.c"
+                   line="86">return location for the result</doc>
               <type name="gboolean" c:type="gboolean*"/>
             </parameter>
           </parameters>
@@ -9413,20 +16474,28 @@ operation of video-sources or operators.</doc>
       </field>
       <field name="get_hcenter">
         <callback name="get_hcenter">
+          <source-position filename="gst-libs/gst/video/videoorientation.h"
+                           line="71"/>
           <return-value transfer-ownership="none">
-            <doc xml:space="preserve">%TRUE in case the element supports centering</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/videoorientation.c"
+                 line="110">%TRUE in case the element supports centering</doc>
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
           <parameters>
             <parameter name="video_orientation" transfer-ownership="none">
-              <doc xml:space="preserve">#GstVideoOrientation interface of a #GstElement</doc>
+              <doc xml:space="preserve"
+                   filename="gst-libs/gst/video/videoorientation.c"
+                   line="106">#GstVideoOrientation interface of a #GstElement</doc>
               <type name="VideoOrientation" c:type="GstVideoOrientation*"/>
             </parameter>
             <parameter name="center"
                        direction="out"
                        caller-allocates="0"
                        transfer-ownership="full">
-              <doc xml:space="preserve">return location for the result</doc>
+              <doc xml:space="preserve"
+                   filename="gst-libs/gst/video/videoorientation.c"
+                   line="107">return location for the result</doc>
               <type name="gint" c:type="gint*"/>
             </parameter>
           </parameters>
@@ -9434,20 +16503,28 @@ operation of video-sources or operators.</doc>
       </field>
       <field name="get_vcenter">
         <callback name="get_vcenter">
+          <source-position filename="gst-libs/gst/video/videoorientation.h"
+                           line="72"/>
           <return-value transfer-ownership="none">
-            <doc xml:space="preserve">%TRUE in case the element supports centering</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/videoorientation.c"
+                 line="131">%TRUE in case the element supports centering</doc>
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
           <parameters>
             <parameter name="video_orientation" transfer-ownership="none">
-              <doc xml:space="preserve">#GstVideoOrientation interface of a #GstElement</doc>
+              <doc xml:space="preserve"
+                   filename="gst-libs/gst/video/videoorientation.c"
+                   line="127">#GstVideoOrientation interface of a #GstElement</doc>
               <type name="VideoOrientation" c:type="GstVideoOrientation*"/>
             </parameter>
             <parameter name="center"
                        direction="out"
                        caller-allocates="0"
                        transfer-ownership="full">
-              <doc xml:space="preserve">return location for the result</doc>
+              <doc xml:space="preserve"
+                   filename="gst-libs/gst/video/videoorientation.c"
+                   line="128">return location for the result</doc>
               <type name="gint" c:type="gint*"/>
             </parameter>
           </parameters>
@@ -9455,17 +16532,25 @@ operation of video-sources or operators.</doc>
       </field>
       <field name="set_hflip">
         <callback name="set_hflip">
+          <source-position filename="gst-libs/gst/video/videoorientation.h"
+                           line="74"/>
           <return-value transfer-ownership="none">
-            <doc xml:space="preserve">%TRUE in case the element supports flipping</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/videoorientation.c"
+                 line="152">%TRUE in case the element supports flipping</doc>
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
           <parameters>
             <parameter name="video_orientation" transfer-ownership="none">
-              <doc xml:space="preserve">#GstVideoOrientation interface of a #GstElement</doc>
+              <doc xml:space="preserve"
+                   filename="gst-libs/gst/video/videoorientation.c"
+                   line="148">#GstVideoOrientation interface of a #GstElement</doc>
               <type name="VideoOrientation" c:type="GstVideoOrientation*"/>
             </parameter>
             <parameter name="flip" transfer-ownership="none">
-              <doc xml:space="preserve">use flipping</doc>
+              <doc xml:space="preserve"
+                   filename="gst-libs/gst/video/videoorientation.c"
+                   line="149">use flipping</doc>
               <type name="gboolean" c:type="gboolean"/>
             </parameter>
           </parameters>
@@ -9473,17 +16558,25 @@ operation of video-sources or operators.</doc>
       </field>
       <field name="set_vflip">
         <callback name="set_vflip">
+          <source-position filename="gst-libs/gst/video/videoorientation.h"
+                           line="75"/>
           <return-value transfer-ownership="none">
-            <doc xml:space="preserve">%TRUE in case the element supports flipping</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/videoorientation.c"
+                 line="173">%TRUE in case the element supports flipping</doc>
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
           <parameters>
             <parameter name="video_orientation" transfer-ownership="none">
-              <doc xml:space="preserve">#GstVideoOrientation interface of a #GstElement</doc>
+              <doc xml:space="preserve"
+                   filename="gst-libs/gst/video/videoorientation.c"
+                   line="169">#GstVideoOrientation interface of a #GstElement</doc>
               <type name="VideoOrientation" c:type="GstVideoOrientation*"/>
             </parameter>
             <parameter name="flip" transfer-ownership="none">
-              <doc xml:space="preserve">use flipping</doc>
+              <doc xml:space="preserve"
+                   filename="gst-libs/gst/video/videoorientation.c"
+                   line="170">use flipping</doc>
               <type name="gboolean" c:type="gboolean"/>
             </parameter>
           </parameters>
@@ -9491,17 +16584,25 @@ operation of video-sources or operators.</doc>
       </field>
       <field name="set_hcenter">
         <callback name="set_hcenter">
+          <source-position filename="gst-libs/gst/video/videoorientation.h"
+                           line="76"/>
           <return-value transfer-ownership="none">
-            <doc xml:space="preserve">%TRUE in case the element supports centering</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/videoorientation.c"
+                 line="194">%TRUE in case the element supports centering</doc>
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
           <parameters>
             <parameter name="video_orientation" transfer-ownership="none">
-              <doc xml:space="preserve">#GstVideoOrientation interface of a #GstElement</doc>
+              <doc xml:space="preserve"
+                   filename="gst-libs/gst/video/videoorientation.c"
+                   line="190">#GstVideoOrientation interface of a #GstElement</doc>
               <type name="VideoOrientation" c:type="GstVideoOrientation*"/>
             </parameter>
             <parameter name="center" transfer-ownership="none">
-              <doc xml:space="preserve">centering offset</doc>
+              <doc xml:space="preserve"
+                   filename="gst-libs/gst/video/videoorientation.c"
+                   line="191">centering offset</doc>
               <type name="gint" c:type="gint"/>
             </parameter>
           </parameters>
@@ -9509,17 +16610,25 @@ operation of video-sources or operators.</doc>
       </field>
       <field name="set_vcenter">
         <callback name="set_vcenter">
+          <source-position filename="gst-libs/gst/video/videoorientation.h"
+                           line="77"/>
           <return-value transfer-ownership="none">
-            <doc xml:space="preserve">%TRUE in case the element supports centering</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/videoorientation.c"
+                 line="215">%TRUE in case the element supports centering</doc>
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
           <parameters>
             <parameter name="video_orientation" transfer-ownership="none">
-              <doc xml:space="preserve">#GstVideoOrientation interface of a #GstElement</doc>
+              <doc xml:space="preserve"
+                   filename="gst-libs/gst/video/videoorientation.c"
+                   line="211">#GstVideoOrientation interface of a #GstElement</doc>
               <type name="VideoOrientation" c:type="GstVideoOrientation*"/>
             </parameter>
             <parameter name="center" transfer-ownership="none">
-              <doc xml:space="preserve">centering offset</doc>
+              <doc xml:space="preserve"
+                   filename="gst-libs/gst/video/videoorientation.c"
+                   line="212">centering offset</doc>
               <type name="gint" c:type="gint"/>
             </parameter>
           </parameters>
@@ -9531,66 +16640,88 @@ operation of video-sources or operators.</doc>
                  glib:type-name="GstVideoOrientationMethod"
                  glib:get-type="gst_video_orientation_method_get_type"
                  c:type="GstVideoOrientationMethod">
-      <doc xml:space="preserve">The different video orientation methods.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video.h"
+           line="62">The different video orientation methods.</doc>
       <member name="identity"
               value="0"
               c:identifier="GST_VIDEO_ORIENTATION_IDENTITY"
               glib:nick="identity">
-        <doc xml:space="preserve">Identity (no rotation)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video.h"
+             line="64">Identity (no rotation)</doc>
       </member>
       <member name="90r"
               value="1"
               c:identifier="GST_VIDEO_ORIENTATION_90R"
               glib:nick="90r">
-        <doc xml:space="preserve">Rotate clockwise 90 degrees</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video.h"
+             line="65">Rotate clockwise 90 degrees</doc>
       </member>
       <member name="180"
               value="2"
               c:identifier="GST_VIDEO_ORIENTATION_180"
               glib:nick="180">
-        <doc xml:space="preserve">Rotate 180 degrees</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video.h"
+             line="66">Rotate 180 degrees</doc>
       </member>
       <member name="90l"
               value="3"
               c:identifier="GST_VIDEO_ORIENTATION_90L"
               glib:nick="90l">
-        <doc xml:space="preserve">Rotate counter-clockwise 90 degrees</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video.h"
+             line="67">Rotate counter-clockwise 90 degrees</doc>
       </member>
       <member name="horiz"
               value="4"
               c:identifier="GST_VIDEO_ORIENTATION_HORIZ"
               glib:nick="horiz">
-        <doc xml:space="preserve">Flip horizontally</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video.h"
+             line="68">Flip horizontally</doc>
       </member>
       <member name="vert"
               value="5"
               c:identifier="GST_VIDEO_ORIENTATION_VERT"
               glib:nick="vert">
-        <doc xml:space="preserve">Flip vertically</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video.h"
+             line="69">Flip vertically</doc>
       </member>
       <member name="ul_lr"
               value="6"
               c:identifier="GST_VIDEO_ORIENTATION_UL_LR"
               glib:nick="ul-lr">
-        <doc xml:space="preserve">Flip across upper left/lower right diagonal</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video.h"
+             line="70">Flip across upper left/lower right diagonal</doc>
       </member>
       <member name="ur_ll"
               value="7"
               c:identifier="GST_VIDEO_ORIENTATION_UR_LL"
               glib:nick="ur-ll">
-        <doc xml:space="preserve">Flip across upper right/lower left diagonal</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video.h"
+             line="71">Flip across upper right/lower left diagonal</doc>
       </member>
       <member name="auto"
               value="8"
               c:identifier="GST_VIDEO_ORIENTATION_AUTO"
               glib:nick="auto">
-        <doc xml:space="preserve">Select flip method based on image-orientation tag</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video.h"
+             line="72">Select flip method based on image-orientation tag</doc>
       </member>
       <member name="custom"
               value="9"
               c:identifier="GST_VIDEO_ORIENTATION_CUSTOM"
               glib:nick="custom">
-        <doc xml:space="preserve">Current status depends on plugin internal setup</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video.h"
+             line="73">Current status depends on plugin internal setup</doc>
       </member>
     </enumeration>
     <interface name="VideoOverlay"
@@ -9599,7 +16730,9 @@ operation of video-sources or operators.</doc>
                glib:type-name="GstVideoOverlay"
                glib:get-type="gst_video_overlay_get_type"
                glib:type-struct="VideoOverlayInterface">
-      <doc xml:space="preserve">The #GstVideoOverlay interface is used for 2 main purposes :
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/videooverlay.c"
+           line="20">The #GstVideoOverlay interface is used for 2 main purposes :
 
 * To get a grab on the Window where the video sink element is going to render.
   This is achieved by either being informed about the Window identifier that
@@ -9660,7 +16793,7 @@ main (int argc, char **argv)
 ## Two basic usage scenarios
 
 There are two basic usage scenarios: in the simplest case, the application
-uses #playbin or #plasink or knows exactly what particular element is used
+uses #playbin or #playsink or knows exactly what particular element is used
 for video output, which is usually the case when the application creates
 the videosink to use (e.g. #xvimagesink, #ximagesink, etc.) itself; in this
 case, the application can just create the videosink element, create and
@@ -9693,10 +16826,10 @@ prepare-window-handle message is handled, because most GUI toolkits and
 windowing systems are not thread-safe at all and a lot of care would be
 required to co-ordinate the toolkit and window system calls of the
 different threads (Gtk+ users please note: prior to Gtk+ 2.18
-GDK_WINDOW_XID() was just a simple structure access, so generally fine to do
+`GDK_WINDOW_XID` was just a simple structure access, so generally fine to do
 within the bus sync handler; this macro was changed to a function call in
 Gtk+ 2.18 and later, which is likely to cause problems when called from a
-sync handler; see below for a better approach without GDK_WINDOW_XID()
+sync handler; see below for a better approach without `GDK_WINDOW_XID`
 used in the callback).
 
 ## GstVideoOverlay and Gtk+
@@ -9803,13 +16936,13 @@ main (int argc, char **argv)
 ## GstVideoOverlay and Qt
 
 |[
-#include &amp;lt;glib.h&amp;gt;
-#include &amp;lt;gst/gst.h&amp;gt;
-#include &amp;lt;gst/video/videooverlay.h&amp;gt;
+#include &lt;glib.h&gt;;
+#include &lt;gst/gst.h&gt;;
+#include &lt;gst/video/videooverlay.h&gt;;
 
-#include &amp;lt;QApplication&amp;gt;
-#include &amp;lt;QTimer&amp;gt;
-#include &amp;lt;QWidget&amp;gt;
+#include &lt;QApplication&gt;;
+#include &lt;QTimer&gt;;
+#include &lt;QWidget&gt;;
 
 int main(int argc, char *argv[])
 {
@@ -9857,93 +16990,130 @@ int main(int argc, char *argv[])
   return ret;
 }
 ]|</doc>
+      <source-position filename="gst-libs/gst/video/videooverlay.h" line="70"/>
       <function name="install_properties"
-                c:identifier="gst_video_overlay_install_properties">
-        <doc xml:space="preserve">This helper shall be used by classes implementing the #GstVideoOverlay
+                c:identifier="gst_video_overlay_install_properties"
+                version="1.14">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/videooverlay.c"
+             line="518">This helper shall be used by classes implementing the #GstVideoOverlay
 interface that want the render rectangle to be controllable using
 properties. This helper will install "render-rectangle" property into the
-class.
-
-Since 1.14</doc>
+class.</doc>
+        <source-position filename="gst-libs/gst/video/videooverlay.h"
+                         line="108"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <parameter name="oclass" transfer-ownership="none">
-            <doc xml:space="preserve">The class on which the properties will be installed</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/videooverlay.c"
+                 line="520">The class on which the properties will be installed</doc>
             <type name="GObject.ObjectClass" c:type="GObjectClass*"/>
           </parameter>
           <parameter name="last_prop_id" transfer-ownership="none">
-            <doc xml:space="preserve">The first free property ID to use</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/videooverlay.c"
+                 line="521">The first free property ID to use</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
         </parameters>
       </function>
       <function name="set_property"
-                c:identifier="gst_video_overlay_set_property">
-        <doc xml:space="preserve">This helper shall be used by classes implementing the #GstVideoOverlay
+                c:identifier="gst_video_overlay_set_property"
+                version="1.14">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/videooverlay.c"
+             line="542">This helper shall be used by classes implementing the #GstVideoOverlay
 interface that want the render rectangle to be controllable using
 properties. This helper will parse and set the render rectangle calling
 gst_video_overlay_set_render_rectangle().</doc>
+        <source-position filename="gst-libs/gst/video/videooverlay.h"
+                         line="112"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the @property_id matches the GstVideoOverlay property
-
-Since 1.14</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/videooverlay.c"
+               line="554">%TRUE if the @property_id matches the GstVideoOverlay property</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <parameter name="object" transfer-ownership="none">
-            <doc xml:space="preserve">The instance on which the property is set</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/videooverlay.c"
+                 line="544">The instance on which the property is set</doc>
             <type name="GObject.Object" c:type="GObject*"/>
           </parameter>
           <parameter name="last_prop_id" transfer-ownership="none">
-            <doc xml:space="preserve">The highest property ID.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/videooverlay.c"
+                 line="545">The highest property ID.</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="property_id" transfer-ownership="none">
-            <doc xml:space="preserve">The property ID</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/videooverlay.c"
+                 line="546">The property ID</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="value" transfer-ownership="none">
-            <doc xml:space="preserve">The #GValue to be set</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/videooverlay.c"
+                 line="547">The #GValue to be set</doc>
             <type name="GObject.Value" c:type="const GValue*"/>
           </parameter>
         </parameters>
       </function>
       <virtual-method name="expose" invoker="expose">
-        <doc xml:space="preserve">Tell an overlay that it has been exposed. This will redraw the current frame
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/videooverlay.c"
+             line="407">Tell an overlay that it has been exposed. This will redraw the current frame
 in the drawable even if the pipeline is PAUSED.</doc>
+        <source-position filename="gst-libs/gst/video/videooverlay.h"
+                         line="61"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="overlay" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoOverlay to expose.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/videooverlay.c"
+                 line="409">a #GstVideoOverlay to expose.</doc>
             <type name="VideoOverlay" c:type="GstVideoOverlay*"/>
           </instance-parameter>
         </parameters>
       </virtual-method>
       <virtual-method name="handle_events" invoker="handle_events">
-        <doc xml:space="preserve">Tell an overlay that it should handle events from the window system. These
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/videooverlay.c"
+             line="429">Tell an overlay that it should handle events from the window system. These
 events are forwarded upstream as navigation events. In some window system,
 events are not propagated in the window hierarchy if a client is listening
 for them. This method allows you to disable events handling completely
 from the #GstVideoOverlay.</doc>
+        <source-position filename="gst-libs/gst/video/videooverlay.h"
+                         line="63"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="overlay" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoOverlay to expose.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/videooverlay.c"
+                 line="431">a #GstVideoOverlay to expose.</doc>
             <type name="VideoOverlay" c:type="GstVideoOverlay*"/>
           </instance-parameter>
           <parameter name="handle_events" transfer-ownership="none">
-            <doc xml:space="preserve">a #gboolean indicating if events should be handled or not.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/videooverlay.c"
+                 line="432">a #gboolean indicating if events should be handled or not.</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </virtual-method>
       <virtual-method name="set_render_rectangle">
+        <source-position filename="gst-libs/gst/video/videooverlay.h"
+                         line="65"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
@@ -9966,98 +17136,136 @@ from the #GstVideoOverlay.</doc>
         </parameters>
       </virtual-method>
       <virtual-method name="set_window_handle" invoker="set_window_handle">
-        <doc xml:space="preserve">This will call the video overlay's set_window_handle method. You
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/videooverlay.c"
+             line="330">This will call the video overlay's set_window_handle method. You
 should use this method to tell to an overlay to display video output to a
 specific window (e.g. an XWindow on X11). Passing 0 as the  @handle will
 tell the overlay to stop using that window and create an internal one.</doc>
+        <source-position filename="gst-libs/gst/video/videooverlay.h"
+                         line="69"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="overlay" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoOverlay to set the window on.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/videooverlay.c"
+                 line="332">a #GstVideoOverlay to set the window on.</doc>
             <type name="VideoOverlay" c:type="GstVideoOverlay*"/>
           </instance-parameter>
           <parameter name="handle" transfer-ownership="none">
-            <doc xml:space="preserve">a handle referencing the window.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/videooverlay.c"
+                 line="333">a handle referencing the window.</doc>
             <type name="guintptr" c:type="guintptr"/>
           </parameter>
         </parameters>
       </virtual-method>
       <method name="expose" c:identifier="gst_video_overlay_expose">
-        <doc xml:space="preserve">Tell an overlay that it has been exposed. This will redraw the current frame
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/videooverlay.c"
+             line="407">Tell an overlay that it has been exposed. This will redraw the current frame
 in the drawable even if the pipeline is PAUSED.</doc>
+        <source-position filename="gst-libs/gst/video/videooverlay.h"
+                         line="85"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="overlay" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoOverlay to expose.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/videooverlay.c"
+                 line="409">a #GstVideoOverlay to expose.</doc>
             <type name="VideoOverlay" c:type="GstVideoOverlay*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="got_window_handle"
               c:identifier="gst_video_overlay_got_window_handle">
-        <doc xml:space="preserve">This will post a "have-window-handle" element message on the bus.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/videooverlay.c"
+             line="355">This will post a "have-window-handle" element message on the bus.
 
 This function should only be used by video overlay plugin developers.</doc>
+        <source-position filename="gst-libs/gst/video/videooverlay.h"
+                         line="98"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="overlay" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoOverlay which got a window</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/videooverlay.c"
+                 line="357">a #GstVideoOverlay which got a window</doc>
             <type name="VideoOverlay" c:type="GstVideoOverlay*"/>
           </instance-parameter>
           <parameter name="handle" transfer-ownership="none">
-            <doc xml:space="preserve">a platform-specific handle referencing the window</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/videooverlay.c"
+                 line="358">a platform-specific handle referencing the window</doc>
             <type name="guintptr" c:type="guintptr"/>
           </parameter>
         </parameters>
       </method>
       <method name="handle_events"
               c:identifier="gst_video_overlay_handle_events">
-        <doc xml:space="preserve">Tell an overlay that it should handle events from the window system. These
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/videooverlay.c"
+             line="429">Tell an overlay that it should handle events from the window system. These
 events are forwarded upstream as navigation events. In some window system,
 events are not propagated in the window hierarchy if a client is listening
 for them. This method allows you to disable events handling completely
 from the #GstVideoOverlay.</doc>
+        <source-position filename="gst-libs/gst/video/videooverlay.h"
+                         line="88"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="overlay" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoOverlay to expose.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/videooverlay.c"
+                 line="431">a #GstVideoOverlay to expose.</doc>
             <type name="VideoOverlay" c:type="GstVideoOverlay*"/>
           </instance-parameter>
           <parameter name="handle_events" transfer-ownership="none">
-            <doc xml:space="preserve">a #gboolean indicating if events should be handled or not.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/videooverlay.c"
+                 line="432">a #gboolean indicating if events should be handled or not.</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </method>
       <method name="prepare_window_handle"
               c:identifier="gst_video_overlay_prepare_window_handle">
-        <doc xml:space="preserve">This will post a "prepare-window-handle" element message on the bus
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/videooverlay.c"
+             line="381">This will post a "prepare-window-handle" element message on the bus
 to give applications an opportunity to call
 gst_video_overlay_set_window_handle() before a plugin creates its own
 window.
 
 This function should only be used by video overlay plugin developers.</doc>
+        <source-position filename="gst-libs/gst/video/videooverlay.h"
+                         line="102"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="overlay" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoOverlay which does not yet have an Window handle set</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/videooverlay.c"
+                 line="383">a #GstVideoOverlay which does not yet have an Window handle set</doc>
             <type name="VideoOverlay" c:type="GstVideoOverlay*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="set_render_rectangle"
               c:identifier="gst_video_overlay_set_render_rectangle">
-        <doc xml:space="preserve">Configure a subregion as a video target within the window set by
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/videooverlay.c"
+             line="456">Configure a subregion as a video target within the window set by
 gst_video_overlay_set_window_handle(). If this is not used or not supported
 the video will fill the area of the window set as the overlay to 100%.
 By specifying the rectangle, the video can be overlayed to a specific region
@@ -10067,49 +17275,71 @@ the @width and @height parameters.
 
 This method is needed for non fullscreen video overlay in UI toolkits that
 do not support subwindows.</doc>
+        <source-position filename="gst-libs/gst/video/videooverlay.h"
+                         line="78"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%FALSE if not supported by the sink.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/videooverlay.c"
+               line="475">%FALSE if not supported by the sink.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="overlay" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoOverlay</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/videooverlay.c"
+                 line="458">a #GstVideoOverlay</doc>
             <type name="VideoOverlay" c:type="GstVideoOverlay*"/>
           </instance-parameter>
           <parameter name="x" transfer-ownership="none">
-            <doc xml:space="preserve">the horizontal offset of the render area inside the window</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/videooverlay.c"
+                 line="459">the horizontal offset of the render area inside the window</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="y" transfer-ownership="none">
-            <doc xml:space="preserve">the vertical offset of the render area inside the window</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/videooverlay.c"
+                 line="460">the vertical offset of the render area inside the window</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="width" transfer-ownership="none">
-            <doc xml:space="preserve">the width of the render area inside the window</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/videooverlay.c"
+                 line="461">the width of the render area inside the window</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="height" transfer-ownership="none">
-            <doc xml:space="preserve">the height of the render area inside the window</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/videooverlay.c"
+                 line="462">the height of the render area inside the window</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_window_handle"
               c:identifier="gst_video_overlay_set_window_handle">
-        <doc xml:space="preserve">This will call the video overlay's set_window_handle method. You
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/videooverlay.c"
+             line="330">This will call the video overlay's set_window_handle method. You
 should use this method to tell to an overlay to display video output to a
 specific window (e.g. an XWindow on X11). Passing 0 as the  @handle will
 tell the overlay to stop using that window and create an internal one.</doc>
+        <source-position filename="gst-libs/gst/video/videooverlay.h"
+                         line="92"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="overlay" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoOverlay to set the window on.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/videooverlay.c"
+                 line="332">a #GstVideoOverlay to set the window on.</doc>
             <type name="VideoOverlay" c:type="GstVideoOverlay*"/>
           </instance-parameter>
           <parameter name="handle" transfer-ownership="none">
-            <doc xml:space="preserve">a handle referencing the window.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/videooverlay.c"
+                 line="333">a handle referencing the window.</doc>
             <type name="guintptr" c:type="guintptr"/>
           </parameter>
         </parameters>
@@ -10120,7 +17350,9 @@ tell the overlay to stop using that window and create an internal one.</doc>
             glib:type-name="GstVideoOverlayComposition"
             glib:get-type="gst_video_overlay_composition_get_type"
             c:symbol-prefix="video_overlay_composition">
-      <doc xml:space="preserve">Functions to create and handle overlay compositions on video buffers.
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-overlay-composition.c"
+           line="22">Functions to create and handle overlay compositions on video buffers.
 
 An overlay composition describes one or more overlay rectangles to be
 blended on top of a video buffer.
@@ -10142,18 +17374,28 @@ have been put into a #GstVideoOverlayComposition object anyway) - for raw
 video the overlay can just use the blending function to blend the data
 on top of the video, and for surface buffers it can just attach them to
 the buffer and let the sink render the overlays.</doc>
+      <source-position filename="gst-libs/gst/video/video-overlay-composition.h"
+                       line="202"/>
       <constructor name="new" c:identifier="gst_video_overlay_composition_new">
-        <doc xml:space="preserve">Creates a new video overlay composition object to hold one or more
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-overlay-composition.c"
+             line="328">Creates a new video overlay composition object to hold one or more
 overlay rectangles.</doc>
+        <source-position filename="gst-libs/gst/video/video-overlay-composition.h"
+                         line="245"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new #GstVideoOverlayComposition. Unref with
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-overlay-composition.c"
+               line="336">a new #GstVideoOverlayComposition. Unref with
     gst_video_overlay_composition_unref() when no longer needed.</doc>
           <type name="VideoOverlayComposition"
                 c:type="GstVideoOverlayComposition*"/>
         </return-value>
         <parameters>
           <parameter name="rectangle" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoOverlayRectangle to add to the
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-overlay-composition.c"
+                 line="330">a #GstVideoOverlayRectangle to add to the
     composition</doc>
             <type name="VideoOverlayRectangle"
                   c:type="GstVideoOverlayRectangle*"/>
@@ -10162,19 +17404,27 @@ overlay rectangles.</doc>
       </constructor>
       <method name="add_rectangle"
               c:identifier="gst_video_overlay_composition_add_rectangle">
-        <doc xml:space="preserve">Adds an overlay rectangle to an existing overlay composition object. This
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-overlay-composition.c"
+             line="374">Adds an overlay rectangle to an existing overlay composition object. This
 must be done right after creating the overlay composition.</doc>
+        <source-position filename="gst-libs/gst/video/video-overlay-composition.h"
+                         line="248"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="comp" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoOverlayComposition</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-overlay-composition.c"
+                 line="376">a #GstVideoOverlayComposition</doc>
             <type name="VideoOverlayComposition"
                   c:type="GstVideoOverlayComposition*"/>
           </instance-parameter>
           <parameter name="rectangle" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoOverlayRectangle to add to the
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-overlay-composition.c"
+                 line="377">a #GstVideoOverlayRectangle to add to the
     composition</doc>
             <type name="VideoOverlayRectangle"
                   c:type="GstVideoOverlayRectangle*"/>
@@ -10182,43 +17432,59 @@ must be done right after creating the overlay composition.</doc>
         </parameters>
       </method>
       <method name="blend" c:identifier="gst_video_overlay_composition_blend">
-        <doc xml:space="preserve">Blends the overlay rectangles in @comp on top of the raw video data
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-overlay-composition.c"
+             line="455">Blends the overlay rectangles in @comp on top of the raw video data
 contained in @video_buf. The data in @video_buf must be writable and
 mapped appropriately.
 
 Since @video_buf data is read and will be modified, it ought be
 mapped with flag GST_MAP_READWRITE.</doc>
+        <source-position filename="gst-libs/gst/video/video-overlay-composition.h"
+                         line="263"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="comp" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoOverlayComposition</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-overlay-composition.c"
+                 line="457">a #GstVideoOverlayComposition</doc>
             <type name="VideoOverlayComposition"
                   c:type="GstVideoOverlayComposition*"/>
           </instance-parameter>
           <parameter name="video_buf" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoFrame containing raw video data in a
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-overlay-composition.c"
+                 line="458">a #GstVideoFrame containing raw video data in a
             supported format. It should be mapped using GST_MAP_READWRITE</doc>
             <type name="VideoFrame" c:type="GstVideoFrame*"/>
           </parameter>
         </parameters>
       </method>
       <method name="copy" c:identifier="gst_video_overlay_composition_copy">
-        <doc xml:space="preserve">Makes a copy of @comp and all contained rectangles, so that it is possible
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-overlay-composition.c"
+             line="532">Makes a copy of @comp and all contained rectangles, so that it is possible
 to modify the composition and contained rectangles (e.g. add additional
 rectangles or change the render co-ordinates or render dimension). The
 actual overlay pixel data buffers contained in the rectangles are not
 copied.</doc>
+        <source-position filename="gst-libs/gst/video/video-overlay-composition.h"
+                         line="239"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new #GstVideoOverlayComposition equivalent
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-overlay-composition.c"
+               line="542">a new #GstVideoOverlayComposition equivalent
     to @comp.</doc>
           <type name="VideoOverlayComposition"
                 c:type="GstVideoOverlayComposition*"/>
         </return-value>
         <parameters>
           <instance-parameter name="comp" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoOverlayComposition to copy</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-overlay-composition.c"
+                 line="534">a #GstVideoOverlayComposition to copy</doc>
             <type name="VideoOverlayComposition"
                   c:type="GstVideoOverlayComposition*"/>
           </instance-parameter>
@@ -10226,9 +17492,15 @@ copied.</doc>
       </method>
       <method name="get_rectangle"
               c:identifier="gst_video_overlay_composition_get_rectangle">
-        <doc xml:space="preserve">Returns the @n-th #GstVideoOverlayRectangle contained in @comp.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the @n-th rectangle, or NULL if @n is out of
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-overlay-composition.c"
+             line="424">Returns the @n-th #GstVideoOverlayRectangle contained in @comp.</doc>
+        <source-position filename="gst-libs/gst/video/video-overlay-composition.h"
+                         line="255"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-overlay-composition.c"
+               line="431">the @n-th rectangle, or NULL if @n is out of
     bounds. Will not return a new reference, the caller will need to
     obtain her own reference using gst_video_overlay_rectangle_ref()
     if needed.</doc>
@@ -10237,29 +17509,41 @@ copied.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="comp" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoOverlayComposition</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-overlay-composition.c"
+                 line="426">a #GstVideoOverlayComposition</doc>
             <type name="VideoOverlayComposition"
                   c:type="GstVideoOverlayComposition*"/>
           </instance-parameter>
           <parameter name="n" transfer-ownership="none">
-            <doc xml:space="preserve">number of the rectangle to get</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-overlay-composition.c"
+                 line="427">number of the rectangle to get</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_seqnum"
               c:identifier="gst_video_overlay_composition_get_seqnum">
-        <doc xml:space="preserve">Returns the sequence number of this composition. Sequence numbers are
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-overlay-composition.c"
+             line="609">Returns the sequence number of this composition. Sequence numbers are
 monotonically increasing and unique for overlay compositions and rectangles
 (meaning there will never be a rectangle with the same sequence number as
 a composition).</doc>
+        <source-position filename="gst-libs/gst/video/video-overlay-composition.h"
+                         line="258"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the sequence number of @comp</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-overlay-composition.c"
+               line="618">the sequence number of @comp</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="comp" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoOverlayComposition</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-overlay-composition.c"
+                 line="611">a #GstVideoOverlayComposition</doc>
             <type name="VideoOverlayComposition"
                   c:type="GstVideoOverlayComposition*"/>
           </instance-parameter>
@@ -10267,20 +17551,28 @@ a composition).</doc>
       </method>
       <method name="make_writable"
               c:identifier="gst_video_overlay_composition_make_writable">
-        <doc xml:space="preserve">Takes ownership of @comp and returns a version of @comp that is writable
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-overlay-composition.c"
+             line="570">Takes ownership of @comp and returns a version of @comp that is writable
 (i.e. can be modified). Will either return @comp right away, or create a
 new writable copy of @comp and unref @comp itself. All the contained
 rectangles will also be copied, but the actual overlay pixel data buffers
 contained in the rectangles are not copied.</doc>
+        <source-position filename="gst-libs/gst/video/video-overlay-composition.h"
+                         line="242"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a writable #GstVideoOverlayComposition
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-overlay-composition.c"
+               line="580">a writable #GstVideoOverlayComposition
     equivalent to @comp.</doc>
           <type name="VideoOverlayComposition"
                 c:type="GstVideoOverlayComposition*"/>
         </return-value>
         <parameters>
           <instance-parameter name="comp" transfer-ownership="full">
-            <doc xml:space="preserve">a #GstVideoOverlayComposition to copy</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-overlay-composition.c"
+                 line="572">a #GstVideoOverlayComposition to copy</doc>
             <type name="VideoOverlayComposition"
                   c:type="GstVideoOverlayComposition*"/>
           </instance-parameter>
@@ -10288,14 +17580,22 @@ contained in the rectangles are not copied.</doc>
       </method>
       <method name="n_rectangles"
               c:identifier="gst_video_overlay_composition_n_rectangles">
-        <doc xml:space="preserve">Returns the number of #GstVideoOverlayRectangle&lt;!-- --&gt;s contained in @comp.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the number of rectangles</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-overlay-composition.c"
+             line="408">Returns the number of #GstVideoOverlayRectangle&lt;!-- --&gt;s contained in @comp.</doc>
+        <source-position filename="gst-libs/gst/video/video-overlay-composition.h"
+                         line="252"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-overlay-composition.c"
+               line="414">the number of rectangles</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="comp" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoOverlayComposition</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-overlay-composition.c"
+                 line="410">a #GstVideoOverlayComposition</doc>
             <type name="VideoOverlayComposition"
                   c:type="GstVideoOverlayComposition*"/>
           </instance-parameter>
@@ -10304,18 +17604,28 @@ contained in the rectangles are not copied.</doc>
     </record>
     <record name="VideoOverlayCompositionMeta"
             c:type="GstVideoOverlayCompositionMeta">
-      <doc xml:space="preserve">Extra buffer metadata describing image overlay data.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-overlay-composition.h"
+           line="275">Extra buffer metadata describing image overlay data.</doc>
+      <source-position filename="gst-libs/gst/video/video-overlay-composition.h"
+                       line="287"/>
       <field name="meta" writable="1">
-        <doc xml:space="preserve">parent #GstMeta</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-overlay-composition.h"
+             line="277">parent #GstMeta</doc>
         <type name="Gst.Meta" c:type="GstMeta"/>
       </field>
       <field name="overlay" writable="1">
-        <doc xml:space="preserve">the attached #GstVideoOverlayComposition</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-overlay-composition.h"
+             line="278">the attached #GstVideoOverlayComposition</doc>
         <type name="VideoOverlayComposition"
               c:type="GstVideoOverlayComposition*"/>
       </field>
       <function name="get_info"
                 c:identifier="gst_video_overlay_composition_meta_get_info">
+        <source-position filename="gst-libs/gst/video/video-overlay-composition.h"
+                         line="293"/>
         <return-value transfer-ownership="none">
           <type name="Gst.MetaInfo" c:type="const GstMetaInfo*"/>
         </return-value>
@@ -10325,42 +17635,59 @@ contained in the rectangles are not copied.</doc>
               glib:type-name="GstVideoOverlayFormatFlags"
               glib:get-type="gst_video_overlay_format_flags_get_type"
               c:type="GstVideoOverlayFormatFlags">
-      <doc xml:space="preserve">Overlay format flags.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-overlay-composition.h"
+           line="80">Overlay format flags.</doc>
       <member name="none"
               value="0"
               c:identifier="GST_VIDEO_OVERLAY_FORMAT_FLAG_NONE"
               glib:nick="none">
-        <doc xml:space="preserve">no flags</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-overlay-composition.h"
+             line="82">no flags</doc>
       </member>
       <member name="premultiplied_alpha"
               value="1"
               c:identifier="GST_VIDEO_OVERLAY_FORMAT_FLAG_PREMULTIPLIED_ALPHA"
               glib:nick="premultiplied-alpha">
-        <doc xml:space="preserve">RGB are premultiplied by A/255.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-overlay-composition.h"
+             line="83">RGB are premultiplied by A/255.</doc>
       </member>
       <member name="global_alpha"
               value="2"
               c:identifier="GST_VIDEO_OVERLAY_FORMAT_FLAG_GLOBAL_ALPHA"
               glib:nick="global-alpha">
-        <doc xml:space="preserve">a global-alpha value != 1 is set.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-overlay-composition.h"
+             line="84">a global-alpha value != 1 is set.</doc>
       </member>
     </bitfield>
     <record name="VideoOverlayInterface"
             c:type="GstVideoOverlayInterface"
             glib:is-gtype-struct-for="VideoOverlay">
-      <doc xml:space="preserve">#GstVideoOverlay interface</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/videooverlay.h"
+           line="47">#GstVideoOverlay interface</doc>
+      <source-position filename="gst-libs/gst/video/videooverlay.h" line="70"/>
       <field name="iface">
-        <doc xml:space="preserve">parent interface type.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/videooverlay.h"
+             line="49">parent interface type.</doc>
         <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
       </field>
       <field name="expose">
         <callback name="expose">
+          <source-position filename="gst-libs/gst/video/videooverlay.h"
+                           line="61"/>
           <return-value transfer-ownership="none">
             <type name="none" c:type="void"/>
           </return-value>
           <parameters>
             <parameter name="overlay" transfer-ownership="none">
-              <doc xml:space="preserve">a #GstVideoOverlay to expose.</doc>
+              <doc xml:space="preserve"
+                   filename="gst-libs/gst/video/videooverlay.c"
+                   line="409">a #GstVideoOverlay to expose.</doc>
               <type name="VideoOverlay" c:type="GstVideoOverlay*"/>
             </parameter>
           </parameters>
@@ -10368,16 +17695,22 @@ contained in the rectangles are not copied.</doc>
       </field>
       <field name="handle_events">
         <callback name="handle_events">
+          <source-position filename="gst-libs/gst/video/videooverlay.h"
+                           line="63"/>
           <return-value transfer-ownership="none">
             <type name="none" c:type="void"/>
           </return-value>
           <parameters>
             <parameter name="overlay" transfer-ownership="none">
-              <doc xml:space="preserve">a #GstVideoOverlay to expose.</doc>
+              <doc xml:space="preserve"
+                   filename="gst-libs/gst/video/videooverlay.c"
+                   line="431">a #GstVideoOverlay to expose.</doc>
               <type name="VideoOverlay" c:type="GstVideoOverlay*"/>
             </parameter>
             <parameter name="handle_events" transfer-ownership="none">
-              <doc xml:space="preserve">a #gboolean indicating if events should be handled or not.</doc>
+              <doc xml:space="preserve"
+                   filename="gst-libs/gst/video/videooverlay.c"
+                   line="432">a #gboolean indicating if events should be handled or not.</doc>
               <type name="gboolean" c:type="gboolean"/>
             </parameter>
           </parameters>
@@ -10385,6 +17718,8 @@ contained in the rectangles are not copied.</doc>
       </field>
       <field name="set_render_rectangle">
         <callback name="set_render_rectangle">
+          <source-position filename="gst-libs/gst/video/videooverlay.h"
+                           line="65"/>
           <return-value transfer-ownership="none">
             <type name="none" c:type="void"/>
           </return-value>
@@ -10409,16 +17744,22 @@ contained in the rectangles are not copied.</doc>
       </field>
       <field name="set_window_handle">
         <callback name="set_window_handle">
+          <source-position filename="gst-libs/gst/video/videooverlay.h"
+                           line="69"/>
           <return-value transfer-ownership="none">
             <type name="none" c:type="void"/>
           </return-value>
           <parameters>
             <parameter name="overlay" transfer-ownership="none">
-              <doc xml:space="preserve">a #GstVideoOverlay to set the window on.</doc>
+              <doc xml:space="preserve"
+                   filename="gst-libs/gst/video/videooverlay.c"
+                   line="332">a #GstVideoOverlay to set the window on.</doc>
               <type name="VideoOverlay" c:type="GstVideoOverlay*"/>
             </parameter>
             <parameter name="handle" transfer-ownership="none">
-              <doc xml:space="preserve">a handle referencing the window.</doc>
+              <doc xml:space="preserve"
+                   filename="gst-libs/gst/video/videooverlay.c"
+                   line="333">a handle referencing the window.</doc>
               <type name="guintptr" c:type="guintptr"/>
             </parameter>
           </parameters>
@@ -10430,11 +17771,17 @@ contained in the rectangles are not copied.</doc>
             glib:type-name="GstVideoOverlayRectangle"
             glib:get-type="gst_video_overlay_rectangle_get_type"
             c:symbol-prefix="video_overlay_rectangle">
-      <doc xml:space="preserve">An opaque video overlay rectangle object. A rectangle contains a single
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-overlay-composition.h"
+           line="30">An opaque video overlay rectangle object. A rectangle contains a single
 overlay rectangle which can be added to a composition.</doc>
+      <source-position filename="gst-libs/gst/video/video-overlay-composition.h"
+                       line="45"/>
       <constructor name="new_raw"
                    c:identifier="gst_video_overlay_rectangle_new_raw">
-        <doc xml:space="preserve">Creates a new video overlay rectangle with ARGB or AYUV pixel data.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-overlay-composition.c"
+             line="674">Creates a new video overlay rectangle with ARGB or AYUV pixel data.
 The layout in case of ARGB of the components in memory is B-G-R-A
 on little-endian platforms
 (corresponding to #GST_VIDEO_FORMAT_BGRA) and A-R-G-B on big-endian
@@ -10445,56 +17792,80 @@ component value. Unless specified in the flags, the RGB values are
 non-premultiplied. This is the format that is used by most hardware,
 and also many rendering libraries such as Cairo, for example.
 The pixel data buffer must have #GstVideoMeta set.</doc>
+        <source-position filename="gst-libs/gst/video/video-overlay-composition.h"
+                         line="128"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new #GstVideoOverlayRectangle. Unref with
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-overlay-composition.c"
+               line="697">a new #GstVideoOverlayRectangle. Unref with
     gst_video_overlay_rectangle_unref() when no longer needed.</doc>
           <type name="VideoOverlayRectangle"
                 c:type="GstVideoOverlayRectangle*"/>
         </return-value>
         <parameters>
           <parameter name="pixels" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstBuffer pointing to the pixel memory</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-overlay-composition.c"
+                 line="676">a #GstBuffer pointing to the pixel memory</doc>
             <type name="Gst.Buffer" c:type="GstBuffer*"/>
           </parameter>
           <parameter name="render_x" transfer-ownership="none">
-            <doc xml:space="preserve">the X co-ordinate on the video where the top-left corner of this
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-overlay-composition.c"
+                 line="677">the X co-ordinate on the video where the top-left corner of this
     overlay rectangle should be rendered to</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="render_y" transfer-ownership="none">
-            <doc xml:space="preserve">the Y co-ordinate on the video where the top-left corner of this
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-overlay-composition.c"
+                 line="679">the Y co-ordinate on the video where the top-left corner of this
     overlay rectangle should be rendered to</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="render_width" transfer-ownership="none">
-            <doc xml:space="preserve">the render width of this rectangle on the video</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-overlay-composition.c"
+                 line="681">the render width of this rectangle on the video</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="render_height" transfer-ownership="none">
-            <doc xml:space="preserve">the render height of this rectangle on the video</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-overlay-composition.c"
+                 line="682">the render height of this rectangle on the video</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="flags" transfer-ownership="none">
-            <doc xml:space="preserve">flags</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-overlay-composition.c"
+                 line="683">flags</doc>
             <type name="VideoOverlayFormatFlags"
                   c:type="GstVideoOverlayFormatFlags"/>
           </parameter>
         </parameters>
       </constructor>
       <method name="copy" c:identifier="gst_video_overlay_rectangle_copy">
-        <doc xml:space="preserve">Makes a copy of @rectangle, so that it is possible to modify it
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-overlay-composition.c"
+             line="1587">Makes a copy of @rectangle, so that it is possible to modify it
 (e.g. to change the render co-ordinates or render dimension). The
 actual overlay pixel data buffers contained in the rectangle are not
 copied.</doc>
+        <source-position filename="gst-libs/gst/video/video-overlay-composition.h"
+                         line="134"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new #GstVideoOverlayRectangle equivalent
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-overlay-composition.c"
+               line="1596">a new #GstVideoOverlayRectangle equivalent
     to @rectangle.</doc>
           <type name="VideoOverlayRectangle"
                 c:type="GstVideoOverlayRectangle*"/>
         </return-value>
         <parameters>
           <instance-parameter name="rectangle" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoOverlayRectangle to copy</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-overlay-composition.c"
+                 line="1589">a #GstVideoOverlayRectangle to copy</doc>
             <type name="VideoOverlayRectangle"
                   c:type="GstVideoOverlayRectangle*"/>
           </instance-parameter>
@@ -10502,19 +17873,27 @@ copied.</doc>
       </method>
       <method name="get_flags"
               c:identifier="gst_video_overlay_rectangle_get_flags">
-        <doc xml:space="preserve">Retrieves the flags associated with a #GstVideoOverlayRectangle.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-overlay-composition.c"
+             line="1512">Retrieves the flags associated with a #GstVideoOverlayRectangle.
 This is useful if the caller can handle both premultiplied alpha and
 non premultiplied alpha, for example. By knowing whether the rectangle
 uses premultiplied or not, it can request the pixel data in the format
 it is stored in, to avoid unnecessary conversion.</doc>
+        <source-position filename="gst-libs/gst/video/video-overlay-composition.h"
+                         line="178"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the #GstVideoOverlayFormatFlags associated with the rectangle.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-overlay-composition.c"
+               line="1522">the #GstVideoOverlayFormatFlags associated with the rectangle.</doc>
           <type name="VideoOverlayFormatFlags"
                 c:type="GstVideoOverlayFormatFlags"/>
         </return-value>
         <parameters>
           <instance-parameter name="rectangle" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoOverlayRectangle</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-overlay-composition.c"
+                 line="1514">a #GstVideoOverlayRectangle</doc>
             <type name="VideoOverlayRectangle"
                   c:type="GstVideoOverlayRectangle*"/>
           </instance-parameter>
@@ -10522,14 +17901,22 @@ it is stored in, to avoid unnecessary conversion.</doc>
       </method>
       <method name="get_global_alpha"
               c:identifier="gst_video_overlay_rectangle_get_global_alpha">
-        <doc xml:space="preserve">Retrieves the global-alpha value associated with a #GstVideoOverlayRectangle.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the global-alpha value associated with the rectangle.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-overlay-composition.c"
+             line="1533">Retrieves the global-alpha value associated with a #GstVideoOverlayRectangle.</doc>
+        <source-position filename="gst-libs/gst/video/video-overlay-composition.h"
+                         line="181"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-overlay-composition.c"
+               line="1539">the global-alpha value associated with the rectangle.</doc>
           <type name="gfloat" c:type="gfloat"/>
         </return-value>
         <parameters>
           <instance-parameter name="rectangle" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoOverlayRectangle</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-overlay-composition.c"
+                 line="1535">a #GstVideoOverlayRectangle</doc>
             <type name="VideoOverlayRectangle"
                   c:type="GstVideoOverlayRectangle*"/>
           </instance-parameter>
@@ -10537,8 +17924,12 @@ it is stored in, to avoid unnecessary conversion.</doc>
       </method>
       <method name="get_pixels_argb"
               c:identifier="gst_video_overlay_rectangle_get_pixels_argb">
+        <source-position filename="gst-libs/gst/video/video-overlay-composition.h"
+                         line="158"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstBuffer holding the ARGB pixel data with
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-overlay-composition.c"
+               line="1391">a #GstBuffer holding the ARGB pixel data with
    width and height of the render dimensions as per
    gst_video_overlay_rectangle_get_render_rectangle(). This function does
    not return a reference, the caller should obtain a reference of her own
@@ -10547,12 +17938,16 @@ it is stored in, to avoid unnecessary conversion.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="rectangle" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoOverlayRectangle</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-overlay-composition.c"
+                 line="1384">a #GstVideoOverlayRectangle</doc>
             <type name="VideoOverlayRectangle"
                   c:type="GstVideoOverlayRectangle*"/>
           </instance-parameter>
           <parameter name="flags" transfer-ownership="none">
-            <doc xml:space="preserve">flags
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-overlay-composition.c"
+                 line="1385">flags
    If a global_alpha value != 1 is set for the rectangle, the caller
    should set the #GST_VIDEO_OVERLAY_FORMAT_FLAG_GLOBAL_ALPHA flag
    if he wants to apply global-alpha himself. If the flag is not set
@@ -10564,8 +17959,12 @@ it is stored in, to avoid unnecessary conversion.</doc>
       </method>
       <method name="get_pixels_ayuv"
               c:identifier="gst_video_overlay_rectangle_get_pixels_ayuv">
+        <source-position filename="gst-libs/gst/video/video-overlay-composition.h"
+                         line="162"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstBuffer holding the AYUV pixel data with
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-overlay-composition.c"
+               line="1414">a #GstBuffer holding the AYUV pixel data with
    width and height of the render dimensions as per
    gst_video_overlay_rectangle_get_render_rectangle(). This function does
    not return a reference, the caller should obtain a reference of her own
@@ -10574,12 +17973,16 @@ it is stored in, to avoid unnecessary conversion.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="rectangle" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoOverlayRectangle</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-overlay-composition.c"
+                 line="1407">a #GstVideoOverlayRectangle</doc>
             <type name="VideoOverlayRectangle"
                   c:type="GstVideoOverlayRectangle*"/>
           </instance-parameter>
           <parameter name="flags" transfer-ownership="none">
-            <doc xml:space="preserve">flags
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-overlay-composition.c"
+                 line="1408">flags
    If a global_alpha value != 1 is set for the rectangle, the caller
    should set the #GST_VIDEO_OVERLAY_FORMAT_FLAG_GLOBAL_ALPHA flag
    if he wants to apply global-alpha himself. If the flag is not set
@@ -10591,8 +17994,12 @@ it is stored in, to avoid unnecessary conversion.</doc>
       </method>
       <method name="get_pixels_raw"
               c:identifier="gst_video_overlay_rectangle_get_pixels_raw">
+        <source-position filename="gst-libs/gst/video/video-overlay-composition.h"
+                         line="154"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstBuffer holding the pixel data with
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-overlay-composition.c"
+               line="1367">a #GstBuffer holding the pixel data with
    format as originally provided and specified in video meta with
    width and height of the render dimensions as per
    gst_video_overlay_rectangle_get_render_rectangle(). This function does
@@ -10602,12 +18009,16 @@ it is stored in, to avoid unnecessary conversion.</doc>
         </return-value>
         <parameters>
           <instance-parameter name="rectangle" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoOverlayRectangle</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-overlay-composition.c"
+                 line="1360">a #GstVideoOverlayRectangle</doc>
             <type name="VideoOverlayRectangle"
                   c:type="GstVideoOverlayRectangle*"/>
           </instance-parameter>
           <parameter name="flags" transfer-ownership="none">
-            <doc xml:space="preserve">flags
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-overlay-composition.c"
+                 line="1361">flags
    If a global_alpha value != 1 is set for the rectangle, the caller
    should set the #GST_VIDEO_OVERLAY_FORMAT_FLAG_GLOBAL_ALPHA flag
    if he wants to apply global-alpha himself. If the flag is not set
@@ -10619,24 +18030,34 @@ it is stored in, to avoid unnecessary conversion.</doc>
       </method>
       <method name="get_pixels_unscaled_argb"
               c:identifier="gst_video_overlay_rectangle_get_pixels_unscaled_argb">
-        <doc xml:space="preserve">Retrieves the pixel data as it is. This is useful if the caller can
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-overlay-composition.c"
+             line="1456">Retrieves the pixel data as it is. This is useful if the caller can
 do the scaling itself when handling the overlaying. The rectangle will
 need to be scaled to the render dimensions, which can be retrieved using
 gst_video_overlay_rectangle_get_render_rectangle().</doc>
+        <source-position filename="gst-libs/gst/video/video-overlay-composition.h"
+                         line="170"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstBuffer holding the ARGB pixel data with
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-overlay-composition.c"
+               line="1470">a #GstBuffer holding the ARGB pixel data with
    #GstVideoMeta set. This function does not return a reference, the caller
    should obtain a reference of her own with gst_buffer_ref() if needed.</doc>
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </return-value>
         <parameters>
           <instance-parameter name="rectangle" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoOverlayRectangle</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-overlay-composition.c"
+                 line="1458">a #GstVideoOverlayRectangle</doc>
             <type name="VideoOverlayRectangle"
                   c:type="GstVideoOverlayRectangle*"/>
           </instance-parameter>
           <parameter name="flags" transfer-ownership="none">
-            <doc xml:space="preserve">flags.
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-overlay-composition.c"
+                 line="1459">flags.
    If a global_alpha value != 1 is set for the rectangle, the caller
    should set the #GST_VIDEO_OVERLAY_FORMAT_FLAG_GLOBAL_ALPHA flag
    if he wants to apply global-alpha himself. If the flag is not set
@@ -10648,24 +18069,34 @@ gst_video_overlay_rectangle_get_render_rectangle().</doc>
       </method>
       <method name="get_pixels_unscaled_ayuv"
               c:identifier="gst_video_overlay_rectangle_get_pixels_unscaled_ayuv">
-        <doc xml:space="preserve">Retrieves the pixel data as it is. This is useful if the caller can
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-overlay-composition.c"
+             line="1484">Retrieves the pixel data as it is. This is useful if the caller can
 do the scaling itself when handling the overlaying. The rectangle will
 need to be scaled to the render dimensions, which can be retrieved using
 gst_video_overlay_rectangle_get_render_rectangle().</doc>
+        <source-position filename="gst-libs/gst/video/video-overlay-composition.h"
+                         line="174"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstBuffer holding the AYUV pixel data with
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-overlay-composition.c"
+               line="1498">a #GstBuffer holding the AYUV pixel data with
    #GstVideoMeta set. This function does not return a reference, the caller
    should obtain a reference of her own with gst_buffer_ref() if needed.</doc>
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </return-value>
         <parameters>
           <instance-parameter name="rectangle" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoOverlayRectangle</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-overlay-composition.c"
+                 line="1486">a #GstVideoOverlayRectangle</doc>
             <type name="VideoOverlayRectangle"
                   c:type="GstVideoOverlayRectangle*"/>
           </instance-parameter>
           <parameter name="flags" transfer-ownership="none">
-            <doc xml:space="preserve">flags.
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-overlay-composition.c"
+                 line="1487">flags.
    If a global_alpha value != 1 is set for the rectangle, the caller
    should set the #GST_VIDEO_OVERLAY_FORMAT_FLAG_GLOBAL_ALPHA flag
    if he wants to apply global-alpha himself. If the flag is not set
@@ -10677,24 +18108,34 @@ gst_video_overlay_rectangle_get_render_rectangle().</doc>
       </method>
       <method name="get_pixels_unscaled_raw"
               c:identifier="gst_video_overlay_rectangle_get_pixels_unscaled_raw">
-        <doc xml:space="preserve">Retrieves the pixel data as it is. This is useful if the caller can
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-overlay-composition.c"
+             line="1428">Retrieves the pixel data as it is. This is useful if the caller can
 do the scaling itself when handling the overlaying. The rectangle will
 need to be scaled to the render dimensions, which can be retrieved using
 gst_video_overlay_rectangle_get_render_rectangle().</doc>
+        <source-position filename="gst-libs/gst/video/video-overlay-composition.h"
+                         line="166"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">a #GstBuffer holding the pixel data with
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-overlay-composition.c"
+               line="1442">a #GstBuffer holding the pixel data with
    #GstVideoMeta set. This function does not return a reference, the caller
    should obtain a reference of her own with gst_buffer_ref() if needed.</doc>
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </return-value>
         <parameters>
           <instance-parameter name="rectangle" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoOverlayRectangle</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-overlay-composition.c"
+                 line="1430">a #GstVideoOverlayRectangle</doc>
             <type name="VideoOverlayRectangle"
                   c:type="GstVideoOverlayRectangle*"/>
           </instance-parameter>
           <parameter name="flags" transfer-ownership="none">
-            <doc xml:space="preserve">flags.
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-overlay-composition.c"
+                 line="1431">flags.
    If a global_alpha value != 1 is set for the rectangle, the caller
    should set the #GST_VIDEO_OVERLAY_FORMAT_FLAG_GLOBAL_ALPHA flag
    if he wants to apply global-alpha himself. If the flag is not set
@@ -10706,15 +18147,23 @@ gst_video_overlay_rectangle_get_render_rectangle().</doc>
       </method>
       <method name="get_render_rectangle"
               c:identifier="gst_video_overlay_rectangle_get_render_rectangle">
-        <doc xml:space="preserve">Retrieves the render position and render dimension of the overlay
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-overlay-composition.c"
+             line="774">Retrieves the render position and render dimension of the overlay
 rectangle on the video.</doc>
+        <source-position filename="gst-libs/gst/video/video-overlay-composition.h"
+                         line="147"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">TRUE if valid render dimensions were retrieved.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-overlay-composition.c"
+               line="785">TRUE if valid render dimensions were retrieved.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="rectangle" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoOverlayRectangle</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-overlay-composition.c"
+                 line="776">a #GstVideoOverlayRectangle</doc>
             <type name="VideoOverlayRectangle"
                   c:type="GstVideoOverlayRectangle*"/>
           </instance-parameter>
@@ -10724,7 +18173,9 @@ rectangle on the video.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">address where to store the X render offset</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-overlay-composition.c"
+                 line="777">address where to store the X render offset</doc>
             <type name="gint" c:type="gint*"/>
           </parameter>
           <parameter name="render_y"
@@ -10733,7 +18184,9 @@ rectangle on the video.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">address where to store the Y render offset</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-overlay-composition.c"
+                 line="778">address where to store the Y render offset</doc>
             <type name="gint" c:type="gint*"/>
           </parameter>
           <parameter name="render_width"
@@ -10742,7 +18195,9 @@ rectangle on the video.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">address where to store the render width</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-overlay-composition.c"
+                 line="779">address where to store the render width</doc>
             <type name="guint" c:type="guint*"/>
           </parameter>
           <parameter name="render_height"
@@ -10751,14 +18206,18 @@ rectangle on the video.</doc>
                      transfer-ownership="full"
                      optional="1"
                      allow-none="1">
-            <doc xml:space="preserve">address where to store the render height</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-overlay-composition.c"
+                 line="780">address where to store the render height</doc>
             <type name="guint" c:type="guint*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_seqnum"
               c:identifier="gst_video_overlay_rectangle_get_seqnum">
-        <doc xml:space="preserve">Returns the sequence number of this rectangle. Sequence numbers are
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-overlay-composition.c"
+             line="1616">Returns the sequence number of this rectangle. Sequence numbers are
 monotonically increasing and unique for overlay compositions and rectangles
 (meaning there will never be a rectangle with the same sequence number as
 a composition).
@@ -10769,16 +18228,22 @@ gst_video_overlay_rectangle_set_global_alpha(), automatically update
 the per rectangle sequence number, which is misleading for renderers/
 consumers, that handle global-alpha themselves. For them  the
 pixel-data returned by gst_video_overlay_rectangle_get_pixels_*()
-wont be different for different global-alpha values. In this case a
+won't be different for different global-alpha values. In this case a
 renderer could also use the GstBuffer pointers as a hint for changed
 pixel-data.</doc>
+        <source-position filename="gst-libs/gst/video/video-overlay-composition.h"
+                         line="137"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the sequence number of @rectangle</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-overlay-composition.c"
+               line="1635">the sequence number of @rectangle</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="rectangle" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoOverlayRectangle</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-overlay-composition.c"
+                 line="1618">a #GstVideoOverlayRectangle</doc>
             <type name="VideoOverlayRectangle"
                   c:type="GstVideoOverlayRectangle*"/>
           </instance-parameter>
@@ -10786,7 +18251,9 @@ pixel-data.</doc>
       </method>
       <method name="set_global_alpha"
               c:identifier="gst_video_overlay_rectangle_set_global_alpha">
-        <doc xml:space="preserve">Sets the global alpha value associated with a #GstVideoOverlayRectangle. Per-
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-overlay-composition.c"
+             line="1550">Sets the global alpha value associated with a #GstVideoOverlayRectangle. Per-
 pixel alpha values are multiplied with this value. Valid
 values: 0 &lt;= global_alpha &lt;= 1; 1 to deactivate.
 
@@ -10794,24 +18261,32 @@ values: 0 &lt;= global_alpha &lt;= 1; 1 to deactivate.
 make the rectangles inside a #GstVideoOverlayComposition writable using
 gst_video_overlay_composition_make_writable() or
 gst_video_overlay_composition_copy().</doc>
+        <source-position filename="gst-libs/gst/video/video-overlay-composition.h"
+                         line="184"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="rectangle" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoOverlayRectangle</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-overlay-composition.c"
+                 line="1552">a #GstVideoOverlayRectangle</doc>
             <type name="VideoOverlayRectangle"
                   c:type="GstVideoOverlayRectangle*"/>
           </instance-parameter>
           <parameter name="global_alpha" transfer-ownership="none">
-            <doc xml:space="preserve">Global alpha value (0 to 1.0)</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-overlay-composition.c"
+                 line="1553">Global alpha value (0 to 1.0)</doc>
             <type name="gfloat" c:type="gfloat"/>
           </parameter>
         </parameters>
       </method>
       <method name="set_render_rectangle"
               c:identifier="gst_video_overlay_rectangle_set_render_rectangle">
-        <doc xml:space="preserve">Sets the render position and dimensions of the rectangle on the video.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-overlay-composition.c"
+             line="806">Sets the render position and dimensions of the rectangle on the video.
 This function is mainly for elements that modify the size of the video
 in some way (e.g. through scaling or cropping) and need to adjust the
 details of any overlays to match the operation that changed the size.
@@ -10820,29 +18295,41 @@ details of any overlays to match the operation that changed the size.
 make the rectangles inside a #GstVideoOverlayComposition writable using
 gst_video_overlay_composition_make_writable() or
 gst_video_overlay_composition_copy().</doc>
+        <source-position filename="gst-libs/gst/video/video-overlay-composition.h"
+                         line="140"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="rectangle" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoOverlayRectangle</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-overlay-composition.c"
+                 line="808">a #GstVideoOverlayRectangle</doc>
             <type name="VideoOverlayRectangle"
                   c:type="GstVideoOverlayRectangle*"/>
           </instance-parameter>
           <parameter name="render_x" transfer-ownership="none">
-            <doc xml:space="preserve">render X position of rectangle on video</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-overlay-composition.c"
+                 line="809">render X position of rectangle on video</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="render_y" transfer-ownership="none">
-            <doc xml:space="preserve">render Y position of rectangle on video</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-overlay-composition.c"
+                 line="810">render Y position of rectangle on video</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="render_width" transfer-ownership="none">
-            <doc xml:space="preserve">render width of rectangle</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-overlay-composition.c"
+                 line="811">render width of rectangle</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="render_height" transfer-ownership="none">
-            <doc xml:space="preserve">render height of rectangle</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-overlay-composition.c"
+                 line="812">render height of rectangle</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
@@ -10852,20 +18339,26 @@ gst_video_overlay_composition_copy().</doc>
               glib:type-name="GstVideoPackFlags"
               glib:get-type="gst_video_pack_flags_get_type"
               c:type="GstVideoPackFlags">
-      <doc xml:space="preserve">The different flags that can be used when packing and unpacking.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-format.h"
+           line="298">The different flags that can be used when packing and unpacking.</doc>
       <member name="none"
               value="0"
               c:identifier="GST_VIDEO_PACK_FLAG_NONE"
               glib:nick="none">
-        <doc xml:space="preserve">No flag</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="300">No flag</doc>
       </member>
       <member name="truncate_range"
               value="1"
               c:identifier="GST_VIDEO_PACK_FLAG_TRUNCATE_RANGE"
               glib:nick="truncate-range">
-        <doc xml:space="preserve">When the source has a smaller depth
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="301">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
+  to 0. This is likely slightly 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.</doc>
       </member>
@@ -10873,9 +18366,11 @@ gst_video_overlay_composition_copy().</doc>
               value="2"
               c:identifier="GST_VIDEO_PACK_FLAG_INTERLACED"
               glib:nick="interlaced">
-        <doc xml:space="preserve">The source is interlaced. The unpacked
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.h"
+             line="306">The source is interlaced. The unpacked
   format will be interlaced as well with each line containing
-  information from alternating fields. (Since 1.2)</doc>
+  information from alternating fields. (Since: 1.2)</doc>
       </member>
     </bitfield>
     <enumeration name="VideoPrimariesMode"
@@ -10883,83 +18378,124 @@ gst_video_overlay_composition_copy().</doc>
                  glib:type-name="GstVideoPrimariesMode"
                  glib:get-type="gst_video_primaries_mode_get_type"
                  c:type="GstVideoPrimariesMode">
-      <doc xml:space="preserve">Different primaries conversion modes</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-converter.h"
+           line="244">Different primaries conversion modes</doc>
       <member name="none"
               value="0"
               c:identifier="GST_VIDEO_PRIMARIES_MODE_NONE"
               glib:nick="none">
-        <doc xml:space="preserve">disable conversion between primaries</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-converter.h"
+             line="246">disable conversion between primaries</doc>
       </member>
       <member name="merge_only"
               value="1"
               c:identifier="GST_VIDEO_PRIMARIES_MODE_MERGE_ONLY"
               glib:nick="merge-only">
-        <doc xml:space="preserve">do conversion between primaries only
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-converter.h"
+             line="247">do conversion between primaries only
   when it can be merged with color matrix conversion.</doc>
       </member>
       <member name="fast"
               value="2"
               c:identifier="GST_VIDEO_PRIMARIES_MODE_FAST"
               glib:nick="fast">
-        <doc xml:space="preserve">fast conversion between primaries</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-converter.h"
+             line="249">fast conversion between primaries</doc>
       </member>
     </enumeration>
     <record name="VideoRectangle" c:type="GstVideoRectangle">
-      <doc xml:space="preserve">Helper structure representing a rectangular area.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/gstvideosink.h"
+           line="68">Helper structure representing a rectangular area.</doc>
+      <source-position filename="gst-libs/gst/video/gstvideosink.h" line="82"/>
       <field name="x" writable="1">
-        <doc xml:space="preserve">X coordinate of rectangle's top-left point</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideosink.h"
+             line="70">X coordinate of rectangle's top-left point</doc>
         <type name="gint" c:type="gint"/>
       </field>
       <field name="y" writable="1">
-        <doc xml:space="preserve">Y coordinate of rectangle's top-left point</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideosink.h"
+             line="71">Y coordinate of rectangle's top-left point</doc>
         <type name="gint" c:type="gint"/>
       </field>
       <field name="w" writable="1">
-        <doc xml:space="preserve">width of the rectangle</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideosink.h"
+             line="72">width of the rectangle</doc>
         <type name="gint" c:type="gint"/>
       </field>
       <field name="h" writable="1">
-        <doc xml:space="preserve">height of the rectangle</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideosink.h"
+             line="73">height of the rectangle</doc>
         <type name="gint" c:type="gint"/>
       </field>
     </record>
     <record name="VideoRegionOfInterestMeta"
             c:type="GstVideoRegionOfInterestMeta">
-      <doc xml:space="preserve">Extra buffer metadata describing an image region of interest</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/gstvideometa.h"
+           line="304">Extra buffer metadata describing an image region of interest</doc>
+      <source-position filename="gst-libs/gst/video/gstvideometa.h"
+                       line="331"/>
       <field name="meta" writable="1">
-        <doc xml:space="preserve">parent #GstMeta</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideometa.h"
+             line="306">parent #GstMeta</doc>
         <type name="Gst.Meta" c:type="GstMeta"/>
       </field>
       <field name="roi_type" writable="1">
-        <doc xml:space="preserve">GQuark describing the semantic of the Roi (f.i. a face, a pedestrian)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideometa.h"
+             line="307">GQuark describing the semantic of the Roi (f.i. a face, a pedestrian)</doc>
         <type name="GLib.Quark" c:type="GQuark"/>
       </field>
       <field name="id" writable="1">
-        <doc xml:space="preserve">identifier of this particular ROI</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideometa.h"
+             line="308">identifier of this particular ROI</doc>
         <type name="gint" c:type="gint"/>
       </field>
       <field name="parent_id" writable="1">
-        <doc xml:space="preserve">identifier of its parent ROI, used f.i. for ROI hierarchisation.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideometa.h"
+             line="309">identifier of its parent ROI, used f.i. for ROI hierarchisation.</doc>
         <type name="gint" c:type="gint"/>
       </field>
       <field name="x" writable="1">
-        <doc xml:space="preserve">x component of upper-left corner</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideometa.h"
+             line="310">x component of upper-left corner</doc>
         <type name="guint" c:type="guint"/>
       </field>
       <field name="y" writable="1">
-        <doc xml:space="preserve">y component of upper-left corner</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideometa.h"
+             line="311">y component of upper-left corner</doc>
         <type name="guint" c:type="guint"/>
       </field>
       <field name="w" writable="1">
-        <doc xml:space="preserve">bounding box width</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideometa.h"
+             line="312">bounding box width</doc>
         <type name="guint" c:type="guint"/>
       </field>
       <field name="h" writable="1">
-        <doc xml:space="preserve">bounding box height</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideometa.h"
+             line="313">bounding box height</doc>
         <type name="guint" c:type="guint"/>
       </field>
       <field name="params" writable="1">
-        <doc xml:space="preserve">list of #GstStructure containing element-specific params for downstream, see gst_video_region_of_interest_meta_add_params(). (Since: 1.14)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideometa.h"
+             line="314">list of #GstStructure containing element-specific params for downstream, see gst_video_region_of_interest_meta_add_params(). (Since: 1.14)</doc>
         <type name="GLib.List" c:type="GList*">
           <type name="gpointer" c:type="gpointer"/>
         </type>
@@ -10967,7 +18503,9 @@ gst_video_overlay_composition_copy().</doc>
       <method name="add_param"
               c:identifier="gst_video_region_of_interest_meta_add_param"
               version="1.14">
-        <doc xml:space="preserve">Attach element-specific parameters to @meta meant to be used by downstream
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideometa.c"
+             line="1003">Attach element-specific parameters to @meta meant to be used by downstream
 elements which may handle this ROI.
 The name of @s is used to identify the element these parameters are meant for.
 
@@ -10976,17 +18514,23 @@ For example, a structure named "roi/x264enc" could be used to give the
 QP offsets this encoder should use when encoding the region described in @meta.
 Multiple parameters can be defined for the same meta so different encoders
 can be supported by cross platform applications).</doc>
+        <source-position filename="gst-libs/gst/video/gstvideometa.h"
+                         line="362"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="meta" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoRegionOfInterestMeta</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideometa.c"
+                 line="1005">a #GstVideoRegionOfInterestMeta</doc>
             <type name="VideoRegionOfInterestMeta"
                   c:type="GstVideoRegionOfInterestMeta*"/>
           </instance-parameter>
           <parameter name="s" transfer-ownership="full">
-            <doc xml:space="preserve">a #GstStructure</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideometa.c"
+                 line="1006">a #GstStructure</doc>
             <type name="Gst.Structure" c:type="GstStructure*"/>
           </parameter>
         </parameters>
@@ -10994,88 +18538,128 @@ can be supported by cross platform applications).</doc>
       <method name="get_param"
               c:identifier="gst_video_region_of_interest_meta_get_param"
               version="1.14">
-        <doc xml:space="preserve">Retrieve the parameter for @meta having @name as structure name,
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideometa.c"
+             line="1030">Retrieve the parameter for @meta having @name as structure name,
 or %NULL if there is none.</doc>
         <doc-version xml:space="preserve">
 See also: gst_video_region_of_interest_meta_add_param()</doc-version>
+        <source-position filename="gst-libs/gst/video/gstvideometa.h"
+                         line="366"/>
         <return-value transfer-ownership="none" nullable="1">
-          <doc xml:space="preserve">a #GstStructure</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideometa.c"
+               line="1038">a #GstStructure</doc>
           <type name="Gst.Structure" c:type="GstStructure*"/>
         </return-value>
         <parameters>
           <instance-parameter name="meta" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoRegionOfInterestMeta</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideometa.c"
+                 line="1032">a #GstVideoRegionOfInterestMeta</doc>
             <type name="VideoRegionOfInterestMeta"
                   c:type="GstVideoRegionOfInterestMeta*"/>
           </instance-parameter>
           <parameter name="name" transfer-ownership="none">
-            <doc xml:space="preserve">a name.</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideometa.c"
+                 line="1033">a name.</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
       </method>
       <function name="get_info"
                 c:identifier="gst_video_region_of_interest_meta_get_info">
+        <source-position filename="gst-libs/gst/video/gstvideometa.h"
+                         line="337"/>
         <return-value transfer-ownership="none">
           <type name="Gst.MetaInfo" c:type="const GstMetaInfo*"/>
         </return-value>
       </function>
     </record>
     <record name="VideoResampler" c:type="GstVideoResampler" version="1.6">
-      <doc xml:space="preserve">#GstVideoResampler is a structure which holds the information
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-resampler.c"
+           line="52">#GstVideoResampler is a structure which holds the information
 required to perform various kinds of resampling filtering.</doc>
+      <source-position filename="gst-libs/gst/video/video-resampler.h"
+                       line="161"/>
       <field name="in_size" writable="1">
-        <doc xml:space="preserve">the input size</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-resampler.h"
+             line="135">the input size</doc>
         <type name="gint" c:type="gint"/>
       </field>
       <field name="out_size" writable="1">
-        <doc xml:space="preserve">the output size</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-resampler.h"
+             line="136">the output size</doc>
         <type name="gint" c:type="gint"/>
       </field>
       <field name="max_taps" writable="1">
-        <doc xml:space="preserve">the maximum number of taps</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-resampler.h"
+             line="137">the maximum number of taps</doc>
         <type name="guint" c:type="guint"/>
       </field>
       <field name="n_phases" writable="1">
-        <doc xml:space="preserve">the number of phases</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-resampler.h"
+             line="138">the number of phases</doc>
         <type name="guint" c:type="guint"/>
       </field>
       <field name="offset" writable="1">
-        <doc xml:space="preserve">array with the source offset for each output element</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-resampler.h"
+             line="139">array with the source offset for each output element</doc>
         <type name="guint32" c:type="guint32*"/>
       </field>
       <field name="phase" writable="1">
-        <doc xml:space="preserve">array with the phase to use for each output element</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-resampler.h"
+             line="140">array with the phase to use for each output element</doc>
         <type name="guint32" c:type="guint32*"/>
       </field>
       <field name="n_taps" writable="1">
-        <doc xml:space="preserve">array with new number of taps for each phase</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-resampler.h"
+             line="141">array with new number of taps for each phase</doc>
         <type name="guint32" c:type="guint32*"/>
       </field>
       <field name="taps" writable="1">
-        <doc xml:space="preserve">the taps for all phases</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-resampler.h"
+             line="142">the taps for all phases</doc>
         <type name="gdouble" c:type="gdouble*"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
       <method name="clear"
               c:identifier="gst_video_resampler_clear"
               version="1.6">
-        <doc xml:space="preserve">Clear a previously initialized #GstVideoResampler @resampler.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-resampler.c"
+             line="431">Clear a previously initialized #GstVideoResampler @resampler.</doc>
+        <source-position filename="gst-libs/gst/video/video-resampler.h"
+                         line="174"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="resampler" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoResampler</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-resampler.c"
+                 line="433">a #GstVideoResampler</doc>
             <type name="VideoResampler" c:type="GstVideoResampler*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="init" c:identifier="gst_video_resampler_init">
+        <source-position filename="gst-libs/gst/video/video-resampler.h"
+                         line="165"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -11116,20 +18700,26 @@ required to perform various kinds of resampling filtering.</doc>
               glib:type-name="GstVideoResamplerFlags"
               glib:get-type="gst_video_resampler_flags_get_type"
               c:type="GstVideoResamplerFlags">
-      <doc xml:space="preserve">Different resampler flags.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-resampler.h"
+           line="117">Different resampler flags.</doc>
       <member name="none"
               value="0"
               c:identifier="GST_VIDEO_RESAMPLER_FLAG_NONE"
               glib:nick="none">
-        <doc xml:space="preserve">no flags</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-resampler.h"
+             line="119">no flags</doc>
       </member>
       <member name="half_taps"
               value="1"
               c:identifier="GST_VIDEO_RESAMPLER_FLAG_HALF_TAPS"
               glib:nick="half-taps">
-        <doc xml:space="preserve">when no taps are given, half the
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-resampler.h"
+             line="120">when no taps are given, half the
              number of calculated taps. This can be used when making scalers
-             for the different fields of an interlaced picture. Since 1.10</doc>
+             for the different fields of an interlaced picture. Since: 1.10</doc>
       </member>
     </bitfield>
     <enumeration name="VideoResamplerMethod"
@@ -11137,45 +18727,62 @@ required to perform various kinds of resampling filtering.</doc>
                  glib:type-name="GstVideoResamplerMethod"
                  glib:get-type="gst_video_resampler_method_get_type"
                  c:type="GstVideoResamplerMethod">
-      <doc xml:space="preserve">Different subsampling and upsampling methods</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-resampler.h"
+           line="30">Different subsampling and upsampling methods</doc>
       <member name="nearest"
               value="0"
               c:identifier="GST_VIDEO_RESAMPLER_METHOD_NEAREST"
               glib:nick="nearest">
-        <doc xml:space="preserve">Duplicates the samples when
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-resampler.h"
+             line="32">Duplicates the samples when
    upsampling and drops when downsampling</doc>
       </member>
       <member name="linear"
               value="1"
               c:identifier="GST_VIDEO_RESAMPLER_METHOD_LINEAR"
               glib:nick="linear">
-        <doc xml:space="preserve">Uses linear interpolation to reconstruct
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-resampler.h"
+             line="34">Uses linear interpolation to reconstruct
    missing samples and averaging to downsample</doc>
       </member>
       <member name="cubic"
               value="2"
               c:identifier="GST_VIDEO_RESAMPLER_METHOD_CUBIC"
               glib:nick="cubic">
-        <doc xml:space="preserve">Uses cubic interpolation</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-resampler.h"
+             line="36">Uses cubic interpolation</doc>
       </member>
       <member name="sinc"
               value="3"
               c:identifier="GST_VIDEO_RESAMPLER_METHOD_SINC"
               glib:nick="sinc">
-        <doc xml:space="preserve">Uses sinc interpolation</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-resampler.h"
+             line="37">Uses sinc interpolation</doc>
       </member>
       <member name="lanczos"
               value="4"
               c:identifier="GST_VIDEO_RESAMPLER_METHOD_LANCZOS"
               glib:nick="lanczos">
-        <doc xml:space="preserve">Uses lanczos interpolation</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-resampler.h"
+             line="38">Uses lanczos interpolation</doc>
       </member>
     </enumeration>
     <record name="VideoScaler" c:type="GstVideoScaler" disguised="1">
-      <doc xml:space="preserve">#GstVideoScaler is a utility object for rescaling and resampling
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-scaler.c"
+           line="28">#GstVideoScaler is a utility object for rescaling and resampling
 video frames using various interpolation / sampling methods.</doc>
+      <source-position filename="gst-libs/gst/video/video-scaler.h" line="51"/>
       <method name="2d" c:identifier="gst_video_scaler_2d">
-        <doc xml:space="preserve">Scale a rectangle of pixels in @src with @src_stride to @dest with
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-scaler.c"
+             line="1419">Scale a rectangle of pixels in @src with @src_stride to @dest with
 @dest_stride using the horizontal scaler @hscaler and the vertical
 scaler @vscale.
 
@@ -11183,58 +18790,82 @@ One or both of @hscale and @vscale can be NULL to only perform scaling in
 one dimension or do a copy without scaling.
 
 @x and @y are the coordinates in the destination image to process.</doc>
+        <source-position filename="gst-libs/gst/video/video-scaler.h"
+                         line="91"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="hscale" transfer-ownership="none">
-            <doc xml:space="preserve">a horzontal #GstVideoScaler</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-scaler.c"
+                 line="1421">a horizontal #GstVideoScaler</doc>
             <type name="VideoScaler" c:type="GstVideoScaler*"/>
           </instance-parameter>
           <parameter name="vscale" transfer-ownership="none">
-            <doc xml:space="preserve">a vertical #GstVideoScaler</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-scaler.c"
+                 line="1422">a vertical #GstVideoScaler</doc>
             <type name="VideoScaler" c:type="GstVideoScaler*"/>
           </parameter>
           <parameter name="format" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoFormat for @srcs and @dest</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-scaler.c"
+                 line="1423">a #GstVideoFormat for @srcs and @dest</doc>
             <type name="VideoFormat" c:type="GstVideoFormat"/>
           </parameter>
           <parameter name="src"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">source pixels</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-scaler.c"
+                 line="1424">source pixels</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
           <parameter name="src_stride" transfer-ownership="none">
-            <doc xml:space="preserve">source pixels stride</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-scaler.c"
+                 line="1425">source pixels stride</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="dest"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">destination pixels</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-scaler.c"
+                 line="1426">destination pixels</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
           <parameter name="dest_stride" transfer-ownership="none">
-            <doc xml:space="preserve">destination pixels stride</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-scaler.c"
+                 line="1427">destination pixels stride</doc>
             <type name="gint" c:type="gint"/>
           </parameter>
           <parameter name="x" transfer-ownership="none">
-            <doc xml:space="preserve">the horizontal destination offset</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-scaler.c"
+                 line="1428">the horizontal destination offset</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="y" transfer-ownership="none">
-            <doc xml:space="preserve">the vertical destination offset</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-scaler.c"
+                 line="1429">the vertical destination offset</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="width" transfer-ownership="none">
-            <doc xml:space="preserve">the number of output pixels to scale</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-scaler.c"
+                 line="1430">the number of output pixels to scale</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="height" transfer-ownership="none">
-            <doc xml:space="preserve">the number of output lines to scale</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-scaler.c"
+                 line="1431">the number of output lines to scale</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
@@ -11243,160 +18874,233 @@ one dimension or do a copy without scaling.
               c:identifier="gst_video_scaler_combine_packed_YUV"
               version="1.6"
               introspectable="0">
-        <doc xml:space="preserve">Combine a scaler for Y and UV into one scaler for the packed @format.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-scaler.c"
+             line="1121">Combine a scaler for Y and UV into one scaler for the packed @format.</doc>
+        <source-position filename="gst-libs/gst/video/video-scaler.h"
+                         line="85"/>
         <return-value>
-          <doc xml:space="preserve">a new horizontal videoscaler for @format.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-scaler.c"
+               line="1130">a new horizontal videoscaler for @format.</doc>
           <type name="VideoScaler" c:type="GstVideoScaler*"/>
         </return-value>
         <parameters>
           <instance-parameter name="y_scale" transfer-ownership="none">
-            <doc xml:space="preserve">a scaler for the Y component</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-scaler.c"
+                 line="1123">a scaler for the Y component</doc>
             <type name="VideoScaler" c:type="GstVideoScaler*"/>
           </instance-parameter>
           <parameter name="uv_scale" transfer-ownership="none">
-            <doc xml:space="preserve">a scaler for the U and V components</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-scaler.c"
+                 line="1124">a scaler for the U and V components</doc>
             <type name="VideoScaler" c:type="GstVideoScaler*"/>
           </parameter>
           <parameter name="in_format" transfer-ownership="none">
-            <doc xml:space="preserve">the input video format</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-scaler.c"
+                 line="1125">the input video format</doc>
             <type name="VideoFormat" c:type="GstVideoFormat"/>
           </parameter>
           <parameter name="out_format" transfer-ownership="none">
-            <doc xml:space="preserve">the output video format</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-scaler.c"
+                 line="1126">the output video format</doc>
             <type name="VideoFormat" c:type="GstVideoFormat"/>
           </parameter>
         </parameters>
       </method>
       <method name="free" c:identifier="gst_video_scaler_free">
-        <doc xml:space="preserve">Free a previously allocated #GstVideoScaler @scale.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-scaler.c"
+             line="265">Free a previously allocated #GstVideoScaler @scale.</doc>
+        <source-position filename="gst-libs/gst/video/video-scaler.h"
+                         line="61"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="scale" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoScaler</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-scaler.c"
+                 line="267">a #GstVideoScaler</doc>
             <type name="VideoScaler" c:type="GstVideoScaler*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="get_coeff" c:identifier="gst_video_scaler_get_coeff">
-        <doc xml:space="preserve">For a given pixel at @out_offset, get the first required input pixel at
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-scaler.c"
+             line="301">For a given pixel at @out_offset, get the first required input pixel at
 @in_offset and the @n_taps filter coefficients.
 
 Note that for interlaced content, @in_offset needs to be incremented with
 2 to get the next input line.</doc>
+        <source-position filename="gst-libs/gst/video/video-scaler.h"
+                         line="67"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">an array of @n_tap gdouble values with filter coefficients.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-scaler.c"
+               line="314">an array of @n_tap gdouble values with filter coefficients.</doc>
           <type name="gdouble" c:type="const gdouble*"/>
         </return-value>
         <parameters>
           <instance-parameter name="scale" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoScaler</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-scaler.c"
+                 line="303">a #GstVideoScaler</doc>
             <type name="VideoScaler" c:type="GstVideoScaler*"/>
           </instance-parameter>
           <parameter name="out_offset" transfer-ownership="none">
-            <doc xml:space="preserve">an output offset</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-scaler.c"
+                 line="304">an output offset</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="in_offset" transfer-ownership="none">
-            <doc xml:space="preserve">result input offset</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-scaler.c"
+                 line="305">result input offset</doc>
             <type name="guint" c:type="guint*"/>
           </parameter>
           <parameter name="n_taps" transfer-ownership="none">
-            <doc xml:space="preserve">result n_taps</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-scaler.c"
+                 line="306">result n_taps</doc>
             <type name="guint" c:type="guint*"/>
           </parameter>
         </parameters>
       </method>
       <method name="get_max_taps" c:identifier="gst_video_scaler_get_max_taps">
-        <doc xml:space="preserve">Get the maximum number of taps for @scale.</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the maximum number of taps</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-scaler.c"
+             line="285">Get the maximum number of taps for @scale.</doc>
+        <source-position filename="gst-libs/gst/video/video-scaler.h"
+                         line="64"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-scaler.c"
+               line="291">the maximum number of taps</doc>
           <type name="guint" c:type="guint"/>
         </return-value>
         <parameters>
           <instance-parameter name="scale" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoScaler</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-scaler.c"
+                 line="287">a #GstVideoScaler</doc>
             <type name="VideoScaler" c:type="GstVideoScaler*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="horizontal" c:identifier="gst_video_scaler_horizontal">
-        <doc xml:space="preserve">Horizontally scale the pixels in @src to @dest, starting from @dest_offset
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-scaler.c"
+             line="1336">Horizontally scale the pixels in @src to @dest, starting from @dest_offset
 for @width samples.</doc>
+        <source-position filename="gst-libs/gst/video/video-scaler.h"
+                         line="73"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="scale" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoScaler</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-scaler.c"
+                 line="1338">a #GstVideoScaler</doc>
             <type name="VideoScaler" c:type="GstVideoScaler*"/>
           </instance-parameter>
           <parameter name="format" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoFormat for @src and @dest</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-scaler.c"
+                 line="1339">a #GstVideoFormat for @src and @dest</doc>
             <type name="VideoFormat" c:type="GstVideoFormat"/>
           </parameter>
           <parameter name="src"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">source pixels</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-scaler.c"
+                 line="1340">source pixels</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
           <parameter name="dest"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">destination pixels</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-scaler.c"
+                 line="1341">destination pixels</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
           <parameter name="dest_offset" transfer-ownership="none">
-            <doc xml:space="preserve">the horizontal destination offset</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-scaler.c"
+                 line="1342">the horizontal destination offset</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="width" transfer-ownership="none">
-            <doc xml:space="preserve">the number of pixels to scale</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-scaler.c"
+                 line="1343">the number of pixels to scale</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="vertical" c:identifier="gst_video_scaler_vertical">
-        <doc xml:space="preserve">Vertically combine @width pixels in the lines in @src_lines to @dest.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-scaler.c"
+             line="1376">Vertically combine @width pixels in the lines in @src_lines to @dest.
 @dest is the location of the target line at @dest_offset and
-@srcs are the input lines for @dest_offset, as obtained with
-gst_video_scaler_get_info().</doc>
+@srcs are the input lines for @dest_offset.</doc>
+        <source-position filename="gst-libs/gst/video/video-scaler.h"
+                         line="79"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="scale" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoScaler</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-scaler.c"
+                 line="1378">a #GstVideoScaler</doc>
             <type name="VideoScaler" c:type="GstVideoScaler*"/>
           </instance-parameter>
           <parameter name="format" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoFormat for @srcs and @dest</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-scaler.c"
+                 line="1379">a #GstVideoFormat for @srcs and @dest</doc>
             <type name="VideoFormat" c:type="GstVideoFormat"/>
           </parameter>
           <parameter name="src_lines"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">source pixels lines</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-scaler.c"
+                 line="1380">source pixels lines</doc>
             <type name="gpointer" c:type="gpointer*"/>
           </parameter>
           <parameter name="dest"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">destination pixels</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-scaler.c"
+                 line="1381">destination pixels</doc>
             <type name="gpointer" c:type="gpointer"/>
           </parameter>
           <parameter name="dest_offset" transfer-ownership="none">
-            <doc xml:space="preserve">the vertical destination offset</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-scaler.c"
+                 line="1382">the vertical destination offset</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="width" transfer-ownership="none">
-            <doc xml:space="preserve">the number of pixels to scale</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-scaler.c"
+                 line="1383">the number of pixels to scale</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
@@ -11404,43 +19108,61 @@ gst_video_scaler_get_info().</doc>
       <function name="new"
                 c:identifier="gst_video_scaler_new"
                 introspectable="0">
-        <doc xml:space="preserve">Make a new @method video scaler. @in_size source lines/pixels will
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-scaler.c"
+             line="195">Make a new @method video scaler. @in_size source lines/pixels will
 be scaled to @out_size destination lines/pixels.
 
 @n_taps specifies the amount of pixels to use from the source for one output
 pixel. If n_taps is 0, this function chooses a good value automatically based
 on the @method and @in_size/@out_size.</doc>
+        <source-position filename="gst-libs/gst/video/video-scaler.h"
+                         line="54"/>
         <return-value>
-          <doc xml:space="preserve">a #GstVideoScaler</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-scaler.c"
+               line="211">a #GstVideoScaler</doc>
           <type name="VideoScaler" c:type="GstVideoScaler*"/>
         </return-value>
         <parameters>
           <parameter name="method" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoResamplerMethod</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-scaler.c"
+                 line="197">a #GstVideoResamplerMethod</doc>
             <type name="VideoResamplerMethod"
                   c:type="GstVideoResamplerMethod"/>
           </parameter>
           <parameter name="flags" transfer-ownership="none">
-            <doc xml:space="preserve">#GstVideoScalerFlags</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-scaler.c"
+                 line="198">#GstVideoScalerFlags</doc>
             <type name="VideoScalerFlags" c:type="GstVideoScalerFlags"/>
           </parameter>
           <parameter name="n_taps" transfer-ownership="none">
-            <doc xml:space="preserve">number of taps to use</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-scaler.c"
+                 line="199">number of taps to use</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="in_size" transfer-ownership="none">
-            <doc xml:space="preserve">number of source elements</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-scaler.c"
+                 line="200">number of source elements</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="out_size" transfer-ownership="none">
-            <doc xml:space="preserve">number of destination elements</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-scaler.c"
+                 line="201">number of destination elements</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="options"
                      transfer-ownership="none"
                      nullable="1"
                      allow-none="1">
-            <doc xml:space="preserve">extra options</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-scaler.c"
+                 line="202">extra options</doc>
             <type name="Gst.Structure" c:type="GstStructure*"/>
           </parameter>
         </parameters>
@@ -11450,18 +19172,24 @@ on the @method and @in_size/@out_size.</doc>
               glib:type-name="GstVideoScalerFlags"
               glib:get-type="gst_video_scaler_flags_get_type"
               c:type="GstVideoScalerFlags">
-      <doc xml:space="preserve">Different scale flags.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-scaler.h"
+           line="39">Different scale flags.</doc>
       <member name="none"
               value="0"
               c:identifier="GST_VIDEO_SCALER_FLAG_NONE"
               glib:nick="none">
-        <doc xml:space="preserve">no flags</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-scaler.h"
+             line="41">no flags</doc>
       </member>
       <member name="interlaced"
               value="1"
               c:identifier="GST_VIDEO_SCALER_FLAG_INTERLACED"
               glib:nick="interlaced">
-        <doc xml:space="preserve">Set up a scaler for interlaced content</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-scaler.h"
+             line="42">Set up a scaler for interlaced content</doc>
       </member>
     </bitfield>
     <class name="VideoSink"
@@ -11471,38 +19199,56 @@ on the @method and @in_size/@out_size.</doc>
            glib:type-name="GstVideoSink"
            glib:get-type="gst_video_sink_get_type"
            glib:type-struct="VideoSinkClass">
-      <doc xml:space="preserve">Provides useful functions and a base class for video sinks.
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/gstvideosink.c"
+           line="21">Provides useful functions and a base class for video sinks.
 
 GstVideoSink will configure the default base sink to drop frames that
 arrive later than 20ms as this is considered the default threshold for
 observing out-of-sync frames.</doc>
+      <source-position filename="gst-libs/gst/video/gstvideosink.h"
+                       line="122"/>
       <function name="center_rect" c:identifier="gst_video_sink_center_rect">
-        <doc xml:space="preserve">Takes @src rectangle and position it at the center of @dst rectangle with or
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideosink.c"
+             line="86">Takes @src rectangle and position it at the center of @dst rectangle with or
 without @scaling. It handles clipping if the @src rectangle is bigger than
 the @dst one and @scaling is set to FALSE.</doc>
+        <source-position filename="gst-libs/gst/video/gstvideosink.h"
+                         line="128"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <parameter name="src" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstVideoRectangle describing the source area</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideosink.c"
+                 line="88">the #GstVideoRectangle describing the source area</doc>
             <type name="VideoRectangle" c:type="GstVideoRectangle"/>
           </parameter>
           <parameter name="dst" transfer-ownership="none">
-            <doc xml:space="preserve">the #GstVideoRectangle describing the destination area</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideosink.c"
+                 line="89">the #GstVideoRectangle describing the destination area</doc>
             <type name="VideoRectangle" c:type="GstVideoRectangle"/>
           </parameter>
           <parameter name="result" transfer-ownership="none">
-            <doc xml:space="preserve">a pointer to a #GstVideoRectangle which will receive the result area</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideosink.c"
+                 line="90">a pointer to a #GstVideoRectangle which will receive the result area</doc>
             <type name="VideoRectangle" c:type="GstVideoRectangle*"/>
           </parameter>
           <parameter name="scaling" transfer-ownership="none">
-            <doc xml:space="preserve">a #gboolean indicating if scaling should be applied or not</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideosink.c"
+                 line="91">a #gboolean indicating if scaling should be applied or not</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
         </parameters>
       </function>
       <virtual-method name="show_frame">
+        <source-position filename="gst-libs/gst/video/gstvideosink.h"
+                         line="118"/>
         <return-value transfer-ownership="none">
           <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
         </return-value>
@@ -11519,7 +19265,9 @@ the @dst one and @scaling is set to FALSE.</doc>
                 writable="1"
                 construct="1"
                 transfer-ownership="none">
-        <doc xml:space="preserve">Whether to show video frames during preroll. If set to %FALSE, video
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideosink.c"
+             line="164">Whether to show video frames during preroll. If set to %FALSE, video
 frames will only be rendered in PLAYING state.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </property>
@@ -11527,18 +19275,22 @@ frames will only be rendered in PLAYING state.</doc>
         <type name="GstBase.BaseSink" c:type="GstBaseSink"/>
       </field>
       <field name="width">
-        <doc xml:space="preserve">video width (derived class needs to set this)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideosink.h"
+             line="87">video width (derived class needs to set this)</doc>
         <type name="gint" c:type="gint"/>
       </field>
       <field name="height">
-        <doc xml:space="preserve">video height (derived class needs to set this)</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideosink.h"
+             line="86">video height (derived class needs to set this)</doc>
         <type name="gint" c:type="gint"/>
       </field>
       <field name="priv" readable="0" private="1">
         <type name="VideoSinkPrivate" c:type="GstVideoSinkPrivate*"/>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -11546,14 +19298,22 @@ frames will only be rendered in PLAYING state.</doc>
     <record name="VideoSinkClass"
             c:type="GstVideoSinkClass"
             glib:is-gtype-struct-for="VideoSink">
-      <doc xml:space="preserve">The video sink class structure. Derived classes should override the
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/gstvideosink.h"
+           line="104">The video sink class structure. Derived classes should override the
 @show_frame virtual function.</doc>
+      <source-position filename="gst-libs/gst/video/gstvideosink.h"
+                       line="122"/>
       <field name="parent_class">
-        <doc xml:space="preserve">the parent class structure</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideosink.h"
+             line="106">the parent class structure</doc>
         <type name="GstBase.BaseSinkClass" c:type="GstBaseSinkClass"/>
       </field>
       <field name="show_frame">
         <callback name="show_frame">
+          <source-position filename="gst-libs/gst/video/gstvideosink.h"
+                           line="118"/>
           <return-value transfer-ownership="none">
             <type name="Gst.FlowReturn" c:type="GstFlowReturn"/>
           </return-value>
@@ -11568,29 +19328,36 @@ frames will only be rendered in PLAYING state.</doc>
         </callback>
       </field>
       <field name="_gst_reserved" readable="0" private="1">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
     </record>
     <record name="VideoSinkPrivate" c:type="GstVideoSinkPrivate" disguised="1">
+      <source-position filename="gst-libs/gst/video/gstvideosink.h" line="66"/>
     </record>
     <enumeration name="VideoTileMode"
                  glib:type-name="GstVideoTileMode"
                  glib:get-type="gst_video_tile_mode_get_type"
                  c:type="GstVideoTileMode">
-      <doc xml:space="preserve">Enum value describing the available tiling modes.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-tile.h"
+           line="108">Enum value describing the available tiling modes.</doc>
       <member name="unknown"
               value="0"
               c:identifier="GST_VIDEO_TILE_MODE_UNKNOWN"
               glib:nick="unknown">
-        <doc xml:space="preserve">Unknown or unset tile mode</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-tile.h"
+             line="110">Unknown or unset tile mode</doc>
       </member>
       <member name="zflipz_2x2"
               value="65536"
               c:identifier="GST_VIDEO_TILE_MODE_ZFLIPZ_2X2"
               glib:nick="zflipz-2x2">
-        <doc xml:space="preserve">Every four adjacent blocks - two
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-tile.h"
+             line="111">Every four adjacent blocks - two
    horizontally and two vertically are grouped together and are located
    in memory in Z or flipped Z order. In case of odd rows, the last row
    of blocks is arranged in linear order.</doc>
@@ -11600,12 +19367,16 @@ frames will only be rendered in PLAYING state.</doc>
                  glib:type-name="GstVideoTileType"
                  glib:get-type="gst_video_tile_type_get_type"
                  c:type="GstVideoTileType">
-      <doc xml:space="preserve">Enum value describing the most common tiling types.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-tile.h"
+           line="28">Enum value describing the most common tiling types.</doc>
       <member name="indexed"
               value="0"
               c:identifier="GST_VIDEO_TILE_TYPE_INDEXED"
               glib:nick="indexed">
-        <doc xml:space="preserve">Tiles are indexed. Use
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-tile.h"
+             line="30">Tiles are indexed. Use
   gst_video_tile_get_index () to retrieve the tile at the requested
   coordinates.</doc>
       </member>
@@ -11616,7 +19387,9 @@ frames will only be rendered in PLAYING state.</doc>
             glib:type-name="GstVideoTimeCode"
             glib:get-type="gst_video_time_code_get_type"
             c:symbol-prefix="video_time_code">
-      <doc xml:space="preserve">@field_count must be 0 for progressive video and 1 or 2 for interlaced.
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/gstvideotimecode.h"
+           line="75">@field_count must be 0 for progressive video and 1 or 2 for interlaced.
 
 A representation of a SMPTE time code.
 
@@ -11624,76 +19397,114 @@ A representation of a SMPTE time code.
 @minutes and @seconds must be positive and less than 60.
 @frames must be less than or equal to @config.fps_n / @config.fps_d
 These values are *NOT* automatically normalized.</doc>
+      <source-position filename="gst-libs/gst/video/gstvideotimecode.h"
+                       line="103"/>
       <field name="config" writable="1">
-        <doc xml:space="preserve">the corresponding #GstVideoTimeCodeConfig</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideotimecode.h"
+             line="82">the corresponding #GstVideoTimeCodeConfig</doc>
         <type name="VideoTimeCodeConfig" c:type="GstVideoTimeCodeConfig"/>
       </field>
       <field name="hours" writable="1">
-        <doc xml:space="preserve">the hours field of #GstVideoTimeCode</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideotimecode.h"
+             line="77">the hours field of #GstVideoTimeCode</doc>
         <type name="guint" c:type="guint"/>
       </field>
       <field name="minutes" writable="1">
-        <doc xml:space="preserve">the minutes field of #GstVideoTimeCode</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideotimecode.h"
+             line="78">the minutes field of #GstVideoTimeCode</doc>
         <type name="guint" c:type="guint"/>
       </field>
       <field name="seconds" writable="1">
-        <doc xml:space="preserve">the seconds field of #GstVideoTimeCode</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideotimecode.h"
+             line="79">the seconds field of #GstVideoTimeCode</doc>
         <type name="guint" c:type="guint"/>
       </field>
       <field name="frames" writable="1">
-        <doc xml:space="preserve">the frames field of #GstVideoTimeCode</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideotimecode.h"
+             line="80">the frames field of #GstVideoTimeCode</doc>
         <type name="guint" c:type="guint"/>
       </field>
       <field name="field_count" writable="1">
-        <doc xml:space="preserve">Interlaced video field count</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideotimecode.h"
+             line="81">Interlaced video field count</doc>
         <type name="guint" c:type="guint"/>
       </field>
       <constructor name="new"
                    c:identifier="gst_video_time_code_new"
                    version="1.10">
-        <doc xml:space="preserve">@field_count is 0 for progressive, 1 or 2 for interlaced.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideotimecode.c"
+             line="588">@field_count is 0 for progressive, 1 or 2 for interlaced.
 @latest_daiy_jam reference is stolen from caller.</doc>
+        <source-position filename="gst-libs/gst/video/gstvideotimecode.h"
+                         line="131"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new #GstVideoTimeCode with the given values.
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideotimecode.c"
+               line="603">a new #GstVideoTimeCode with the given values.
 The values are not checked for being in a valid range. To see if your
 timecode actually has valid content, use gst_video_time_code_is_valid().</doc>
           <type name="VideoTimeCode" c:type="GstVideoTimeCode*"/>
         </return-value>
         <parameters>
           <parameter name="fps_n" transfer-ownership="none">
-            <doc xml:space="preserve">Numerator of the frame rate</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideotimecode.c"
+                 line="590">Numerator of the frame rate</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="fps_d" transfer-ownership="none">
-            <doc xml:space="preserve">Denominator of the frame rate</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideotimecode.c"
+                 line="591">Denominator of the frame rate</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="latest_daily_jam" transfer-ownership="none">
-            <doc xml:space="preserve">The latest daily jam of the #GstVideoTimeCode</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideotimecode.c"
+                 line="592">The latest daily jam of the #GstVideoTimeCode</doc>
             <type name="GLib.DateTime" c:type="GDateTime*"/>
           </parameter>
           <parameter name="flags" transfer-ownership="none">
-            <doc xml:space="preserve">#GstVideoTimeCodeFlags</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideotimecode.c"
+                 line="593">#GstVideoTimeCodeFlags</doc>
             <type name="VideoTimeCodeFlags" c:type="GstVideoTimeCodeFlags"/>
           </parameter>
           <parameter name="hours" transfer-ownership="none">
-            <doc xml:space="preserve">the hours field of #GstVideoTimeCode</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideotimecode.c"
+                 line="594">the hours field of #GstVideoTimeCode</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="minutes" transfer-ownership="none">
-            <doc xml:space="preserve">the minutes field of #GstVideoTimeCode</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideotimecode.c"
+                 line="595">the minutes field of #GstVideoTimeCode</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="seconds" transfer-ownership="none">
-            <doc xml:space="preserve">the seconds field of #GstVideoTimeCode</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideotimecode.c"
+                 line="596">the seconds field of #GstVideoTimeCode</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="frames" transfer-ownership="none">
-            <doc xml:space="preserve">the frames field of #GstVideoTimeCode</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideotimecode.c"
+                 line="597">the frames field of #GstVideoTimeCode</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="field_count" transfer-ownership="none">
-            <doc xml:space="preserve">Interlaced video field count</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideotimecode.c"
+                 line="598">Interlaced video field count</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
@@ -11701,43 +19512,63 @@ timecode actually has valid content, use gst_video_time_code_is_valid().</doc>
       <constructor name="new_empty"
                    c:identifier="gst_video_time_code_new_empty"
                    version="1.10">
+        <source-position filename="gst-libs/gst/video/gstvideotimecode.h"
+                         line="142"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new empty, invalid #GstVideoTimeCode</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideotimecode.c"
+               line="625">a new empty, invalid #GstVideoTimeCode</doc>
           <type name="VideoTimeCode" c:type="GstVideoTimeCode*"/>
         </return-value>
       </constructor>
       <constructor name="new_from_date_time"
                    c:identifier="gst_video_time_code_new_from_date_time"
                    version="1.12">
-        <doc xml:space="preserve">The resulting config-&gt;latest_daily_jam is set to
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideotimecode.c"
+             line="721">The resulting config-&gt;latest_daily_jam is set to
 midnight, and timecode is set to the given time.
 
 This might return a completely invalid timecode, use
 gst_video_time_code_new_from_date_time_full() to ensure
 that you would get %NULL instead in that case.</doc>
+        <source-position filename="gst-libs/gst/video/gstvideotimecode.h"
+                         line="148"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the #GstVideoTimeCode representation of @dt.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideotimecode.c"
+               line="736">the #GstVideoTimeCode representation of @dt.</doc>
           <type name="VideoTimeCode" c:type="GstVideoTimeCode*"/>
         </return-value>
         <parameters>
           <parameter name="fps_n" transfer-ownership="none">
-            <doc xml:space="preserve">Numerator of the frame rate</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideotimecode.c"
+                 line="723">Numerator of the frame rate</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="fps_d" transfer-ownership="none">
-            <doc xml:space="preserve">Denominator of the frame rate</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideotimecode.c"
+                 line="724">Denominator of the frame rate</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="dt" transfer-ownership="none">
-            <doc xml:space="preserve">#GDateTime to convert</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideotimecode.c"
+                 line="725">#GDateTime to convert</doc>
             <type name="GLib.DateTime" c:type="GDateTime*"/>
           </parameter>
           <parameter name="flags" transfer-ownership="none">
-            <doc xml:space="preserve">#GstVideoTimeCodeFlags</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideotimecode.c"
+                 line="726">#GstVideoTimeCodeFlags</doc>
             <type name="VideoTimeCodeFlags" c:type="GstVideoTimeCodeFlags"/>
           </parameter>
           <parameter name="field_count" transfer-ownership="none">
-            <doc xml:space="preserve">Interlaced video field count</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideotimecode.c"
+                 line="727">Interlaced video field count</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
@@ -11745,32 +19576,48 @@ that you would get %NULL instead in that case.</doc>
       <constructor name="new_from_date_time_full"
                    c:identifier="gst_video_time_code_new_from_date_time_full"
                    version="1.16">
-        <doc xml:space="preserve">The resulting config-&gt;latest_daily_jam is set to
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideotimecode.c"
+             line="751">The resulting config-&gt;latest_daily_jam is set to
 midnight, and timecode is set to the given time.</doc>
+        <source-position filename="gst-libs/gst/video/gstvideotimecode.h"
+                         line="155"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the #GstVideoTimeCode representation of @dt, or %NULL if
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideotimecode.c"
+               line="762">the #GstVideoTimeCode representation of @dt, or %NULL if
   no valid timecode could be created.</doc>
           <type name="VideoTimeCode" c:type="GstVideoTimeCode*"/>
         </return-value>
         <parameters>
           <parameter name="fps_n" transfer-ownership="none">
-            <doc xml:space="preserve">Numerator of the frame rate</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideotimecode.c"
+                 line="753">Numerator of the frame rate</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="fps_d" transfer-ownership="none">
-            <doc xml:space="preserve">Denominator of the frame rate</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideotimecode.c"
+                 line="754">Denominator of the frame rate</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="dt" transfer-ownership="none">
-            <doc xml:space="preserve">#GDateTime to convert</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideotimecode.c"
+                 line="755">#GDateTime to convert</doc>
             <type name="GLib.DateTime" c:type="GDateTime*"/>
           </parameter>
           <parameter name="flags" transfer-ownership="none">
-            <doc xml:space="preserve">#GstVideoTimeCodeFlags</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideotimecode.c"
+                 line="756">#GstVideoTimeCodeFlags</doc>
             <type name="VideoTimeCodeFlags" c:type="GstVideoTimeCodeFlags"/>
           </parameter>
           <parameter name="field_count" transfer-ownership="none">
-            <doc xml:space="preserve">Interlaced video field count</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideotimecode.c"
+                 line="757">Interlaced video field count</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
@@ -11778,14 +19625,20 @@ midnight, and timecode is set to the given time.</doc>
       <constructor name="new_from_string"
                    c:identifier="gst_video_time_code_new_from_string"
                    version="1.12">
+        <source-position filename="gst-libs/gst/video/gstvideotimecode.h"
+                         line="145"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">a new #GstVideoTimeCode from the given string or %NULL
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideotimecode.c"
+               line="683">a new #GstVideoTimeCode from the given string or %NULL
   if the string could not be passed.</doc>
           <type name="VideoTimeCode" c:type="GstVideoTimeCode*"/>
         </return-value>
         <parameters>
           <parameter name="tc_str" transfer-ownership="none">
-            <doc xml:space="preserve">The string that represents the #GstVideoTimeCode</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideotimecode.c"
+                 line="681">The string that represents the #GstVideoTimeCode</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
@@ -11793,18 +19646,26 @@ midnight, and timecode is set to the given time.</doc>
       <method name="add_frames"
               c:identifier="gst_video_time_code_add_frames"
               version="1.10">
-        <doc xml:space="preserve">Adds or subtracts @frames amount of frames to @tc. tc needs to
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideotimecode.c"
+             line="390">Adds or subtracts @frames amount of frames to @tc. tc needs to
 contain valid data, as verified by gst_video_time_code_is_valid().</doc>
+        <source-position filename="gst-libs/gst/video/gstvideotimecode.h"
+                         line="208"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="tc" transfer-ownership="none">
-            <doc xml:space="preserve">a valid #GstVideoTimeCode</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideotimecode.c"
+                 line="392">a valid #GstVideoTimeCode</doc>
             <type name="VideoTimeCode" c:type="GstVideoTimeCode*"/>
           </instance-parameter>
           <parameter name="frames" transfer-ownership="none">
-            <doc xml:space="preserve">How many frames to add or subtract</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideotimecode.c"
+                 line="393">How many frames to add or subtract</doc>
             <type name="gint64" c:type="gint64"/>
           </parameter>
         </parameters>
@@ -11812,26 +19673,36 @@ contain valid data, as verified by gst_video_time_code_is_valid().</doc>
       <method name="add_interval"
               c:identifier="gst_video_time_code_add_interval"
               version="1.12">
-        <doc xml:space="preserve">This makes a component-wise addition of @tc_inter to @tc. For example,
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideotimecode.c"
+             line="880">This makes a component-wise addition of @tc_inter to @tc. For example,
 adding ("01:02:03:04", "00:01:00:00") will return "01:03:03:04".
 When it comes to drop-frame timecodes,
 adding ("00:00:00;00", "00:01:00:00") will return "00:01:00;02"
 because of drop-frame oddities. However,
 adding ("00:09:00;02", "00:01:00:00") will return "00:10:00;00"
 because this time we can have an exact minute.</doc>
+        <source-position filename="gst-libs/gst/video/gstvideotimecode.h"
+                         line="224"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">A new #GstVideoTimeCode with @tc_inter added or %NULL
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideotimecode.c"
+               line="897">A new #GstVideoTimeCode with @tc_inter added or %NULL
   if the interval can't be added.</doc>
           <type name="VideoTimeCode" c:type="GstVideoTimeCode*"/>
         </return-value>
         <parameters>
           <instance-parameter name="tc" transfer-ownership="none">
-            <doc xml:space="preserve">The #GstVideoTimeCode where the diff should be added. This
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideotimecode.c"
+                 line="882">The #GstVideoTimeCode where the diff should be added. This
 must contain valid timecode values.</doc>
             <type name="VideoTimeCode" c:type="const GstVideoTimeCode*"/>
           </instance-parameter>
           <parameter name="tc_inter" transfer-ownership="none">
-            <doc xml:space="preserve">The #GstVideoTimeCodeInterval to add to @tc.
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideotimecode.c"
+                 line="884">The #GstVideoTimeCodeInterval to add to @tc.
 The interval must contain valid values, except that for drop-frame
 timecode, it may also contain timecodes which would normally
 be dropped. These are then corrected to the next reasonable timecode.</doc>
@@ -11843,14 +19714,20 @@ be dropped. These are then corrected to the next reasonable timecode.</doc>
       <method name="clear"
               c:identifier="gst_video_time_code_clear"
               version="1.10">
-        <doc xml:space="preserve">Initializes @tc with empty/zero/NULL values and frees any memory
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideotimecode.c"
+             line="822">Initializes @tc with empty/zero/NULL values and frees any memory
 it might currently use.</doc>
+        <source-position filename="gst-libs/gst/video/gstvideotimecode.h"
+                         line="195"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="tc" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoTimeCode</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideotimecode.c"
+                 line="824">a #GstVideoTimeCode</doc>
             <type name="VideoTimeCode" c:type="GstVideoTimeCode*"/>
           </instance-parameter>
         </parameters>
@@ -11858,20 +19735,30 @@ it might currently use.</doc>
       <method name="compare"
               c:identifier="gst_video_time_code_compare"
               version="1.10">
-        <doc xml:space="preserve">Compares @tc1 and @tc2. If both have latest daily jam information, it is
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideotimecode.c"
+             line="503">Compares @tc1 and @tc2. If both have latest daily jam information, it is
 taken into account. Otherwise, it is assumed that the daily jam of both
 @tc1 and @tc2 was at the same time. Both time codes must be valid.</doc>
+        <source-position filename="gst-libs/gst/video/gstvideotimecode.h"
+                         line="201"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">1 if @tc1 is after @tc2, -1 if @tc1 is before @tc2, 0 otherwise.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideotimecode.c"
+               line="512">1 if @tc1 is after @tc2, -1 if @tc1 is before @tc2, 0 otherwise.</doc>
           <type name="gint" c:type="gint"/>
         </return-value>
         <parameters>
           <instance-parameter name="tc1" transfer-ownership="none">
-            <doc xml:space="preserve">a valid #GstVideoTimeCode</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideotimecode.c"
+                 line="505">a valid #GstVideoTimeCode</doc>
             <type name="VideoTimeCode" c:type="const GstVideoTimeCode*"/>
           </instance-parameter>
           <parameter name="tc2" transfer-ownership="none">
-            <doc xml:space="preserve">another valid #GstVideoTimeCode</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideotimecode.c"
+                 line="506">another valid #GstVideoTimeCode</doc>
             <type name="VideoTimeCode" c:type="const GstVideoTimeCode*"/>
           </parameter>
         </parameters>
@@ -11879,13 +19766,19 @@ taken into account. Otherwise, it is assumed that the daily jam of both
       <method name="copy"
               c:identifier="gst_video_time_code_copy"
               version="1.10">
+        <source-position filename="gst-libs/gst/video/gstvideotimecode.h"
+                         line="165"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new #GstVideoTimeCode with the same values as @tc.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideotimecode.c"
+               line="851">a new #GstVideoTimeCode with the same values as @tc.</doc>
           <type name="VideoTimeCode" c:type="GstVideoTimeCode*"/>
         </return-value>
         <parameters>
           <instance-parameter name="tc" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoTimeCode</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideotimecode.c"
+                 line="849">a #GstVideoTimeCode</doc>
             <type name="VideoTimeCode" c:type="const GstVideoTimeCode*"/>
           </instance-parameter>
         </parameters>
@@ -11893,13 +19786,19 @@ taken into account. Otherwise, it is assumed that the daily jam of both
       <method name="frames_since_daily_jam"
               c:identifier="gst_video_time_code_frames_since_daily_jam"
               version="1.10">
+        <source-position filename="gst-libs/gst/video/gstvideotimecode.h"
+                         line="221"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">how many frames have passed since the daily jam of @tc.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideotimecode.c"
+               line="329">how many frames have passed since the daily jam of @tc.</doc>
           <type name="guint64" c:type="guint64"/>
         </return-value>
         <parameters>
           <instance-parameter name="tc" transfer-ownership="none">
-            <doc xml:space="preserve">a valid #GstVideoTimeCode</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideotimecode.c"
+                 line="327">a valid #GstVideoTimeCode</doc>
             <type name="VideoTimeCode" c:type="const GstVideoTimeCode*"/>
           </instance-parameter>
         </parameters>
@@ -11907,13 +19806,19 @@ taken into account. Otherwise, it is assumed that the daily jam of both
       <method name="free"
               c:identifier="gst_video_time_code_free"
               version="1.10">
-        <doc xml:space="preserve">Frees @tc.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideotimecode.c"
+             line="863">Frees @tc.</doc>
+        <source-position filename="gst-libs/gst/video/gstvideotimecode.h"
+                         line="162"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="tc" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoTimeCode</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideotimecode.c"
+                 line="865">a #GstVideoTimeCode</doc>
             <type name="VideoTimeCode" c:type="GstVideoTimeCode*"/>
           </instance-parameter>
         </parameters>
@@ -11921,13 +19826,19 @@ taken into account. Otherwise, it is assumed that the daily jam of both
       <method name="increment_frame"
               c:identifier="gst_video_time_code_increment_frame"
               version="1.10">
-        <doc xml:space="preserve">Adds one frame to @tc.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideotimecode.c"
+             line="376">Adds one frame to @tc.</doc>
+        <source-position filename="gst-libs/gst/video/gstvideotimecode.h"
+                         line="205"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="tc" transfer-ownership="none">
-            <doc xml:space="preserve">a valid #GstVideoTimeCode</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideotimecode.c"
+                 line="378">a valid #GstVideoTimeCode</doc>
             <type name="VideoTimeCode" c:type="GstVideoTimeCode*"/>
           </instance-parameter>
         </parameters>
@@ -11935,54 +19846,81 @@ taken into account. Otherwise, it is assumed that the daily jam of both
       <method name="init"
               c:identifier="gst_video_time_code_init"
               version="1.10">
-        <doc xml:space="preserve">@field_count is 0 for progressive, 1 or 2 for interlaced.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideotimecode.c"
+             line="781">@field_count is 0 for progressive, 1 or 2 for interlaced.
 @latest_daiy_jam reference is stolen from caller.
 
 Initializes @tc with the given values.
 The values are not checked for being in a valid range. To see if your
 timecode actually has valid content, use gst_video_time_code_is_valid().</doc>
+        <source-position filename="gst-libs/gst/video/gstvideotimecode.h"
+                         line="168"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="tc" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoTimeCode</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideotimecode.c"
+                 line="783">a #GstVideoTimeCode</doc>
             <type name="VideoTimeCode" c:type="GstVideoTimeCode*"/>
           </instance-parameter>
           <parameter name="fps_n" transfer-ownership="none">
-            <doc xml:space="preserve">Numerator of the frame rate</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideotimecode.c"
+                 line="784">Numerator of the frame rate</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="fps_d" transfer-ownership="none">
-            <doc xml:space="preserve">Denominator of the frame rate</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideotimecode.c"
+                 line="785">Denominator of the frame rate</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
-          <parameter name="latest_daily_jam" transfer-ownership="none">
-            <doc xml:space="preserve">The latest daily jam of the #GstVideoTimeCode</doc>
+          <parameter name="latest_daily_jam"
+                     transfer-ownership="none"
+                     nullable="1"
+                     allow-none="1">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideotimecode.c"
+                 line="786">The latest daily jam of the #GstVideoTimeCode</doc>
             <type name="GLib.DateTime" c:type="GDateTime*"/>
           </parameter>
           <parameter name="flags" transfer-ownership="none">
-            <doc xml:space="preserve">#GstVideoTimeCodeFlags</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideotimecode.c"
+                 line="787">#GstVideoTimeCodeFlags</doc>
             <type name="VideoTimeCodeFlags" c:type="GstVideoTimeCodeFlags"/>
           </parameter>
           <parameter name="hours" transfer-ownership="none">
-            <doc xml:space="preserve">the hours field of #GstVideoTimeCode</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideotimecode.c"
+                 line="788">the hours field of #GstVideoTimeCode</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="minutes" transfer-ownership="none">
-            <doc xml:space="preserve">the minutes field of #GstVideoTimeCode</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideotimecode.c"
+                 line="789">the minutes field of #GstVideoTimeCode</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="seconds" transfer-ownership="none">
-            <doc xml:space="preserve">the seconds field of #GstVideoTimeCode</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideotimecode.c"
+                 line="790">the seconds field of #GstVideoTimeCode</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="frames" transfer-ownership="none">
-            <doc xml:space="preserve">the frames field of #GstVideoTimeCode</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideotimecode.c"
+                 line="791">the frames field of #GstVideoTimeCode</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="field_count" transfer-ownership="none">
-            <doc xml:space="preserve">Interlaced video field count</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideotimecode.c"
+                 line="792">Interlaced video field count</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
@@ -11990,37 +19928,53 @@ timecode actually has valid content, use gst_video_time_code_is_valid().</doc>
       <method name="init_from_date_time"
               c:identifier="gst_video_time_code_init_from_date_time"
               version="1.12">
-        <doc xml:space="preserve">The resulting config-&gt;latest_daily_jam is set to midnight, and timecode is
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideotimecode.c"
+             line="210">The resulting config-&gt;latest_daily_jam is set to midnight, and timecode is
 set to the given time.
 
 Will assert on invalid parameters, use gst_video_time_code_init_from_date_time_full()
 for being able to handle invalid parameters.</doc>
+        <source-position filename="gst-libs/gst/video/gstvideotimecode.h"
+                         line="180"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="tc" transfer-ownership="none">
-            <doc xml:space="preserve">an uninitialized #GstVideoTimeCode</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideotimecode.c"
+                 line="212">an uninitialized #GstVideoTimeCode</doc>
             <type name="VideoTimeCode" c:type="GstVideoTimeCode*"/>
           </instance-parameter>
           <parameter name="fps_n" transfer-ownership="none">
-            <doc xml:space="preserve">Numerator of the frame rate</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideotimecode.c"
+                 line="213">Numerator of the frame rate</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="fps_d" transfer-ownership="none">
-            <doc xml:space="preserve">Denominator of the frame rate</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideotimecode.c"
+                 line="214">Denominator of the frame rate</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="dt" transfer-ownership="none">
-            <doc xml:space="preserve">#GDateTime to convert</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideotimecode.c"
+                 line="215">#GDateTime to convert</doc>
             <type name="GLib.DateTime" c:type="GDateTime*"/>
           </parameter>
           <parameter name="flags" transfer-ownership="none">
-            <doc xml:space="preserve">#GstVideoTimeCodeFlags</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideotimecode.c"
+                 line="216">#GstVideoTimeCodeFlags</doc>
             <type name="VideoTimeCodeFlags" c:type="GstVideoTimeCodeFlags"/>
           </parameter>
           <parameter name="field_count" transfer-ownership="none">
-            <doc xml:space="preserve">Interlaced video field count</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideotimecode.c"
+                 line="217">Interlaced video field count</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
@@ -12028,35 +19982,53 @@ for being able to handle invalid parameters.</doc>
       <method name="init_from_date_time_full"
               c:identifier="gst_video_time_code_init_from_date_time_full"
               version="1.16">
-        <doc xml:space="preserve">The resulting config-&gt;latest_daily_jam is set to
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideotimecode.c"
+             line="237">The resulting config-&gt;latest_daily_jam is set to
 midnight, and timecode is set to the given time.</doc>
+        <source-position filename="gst-libs/gst/video/gstvideotimecode.h"
+                         line="187"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if @tc could be correctly initialized to a valid timecode</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideotimecode.c"
+               line="249">%TRUE if @tc could be correctly initialized to a valid timecode</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="tc" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoTimeCode</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideotimecode.c"
+                 line="239">a #GstVideoTimeCode</doc>
             <type name="VideoTimeCode" c:type="GstVideoTimeCode*"/>
           </instance-parameter>
           <parameter name="fps_n" transfer-ownership="none">
-            <doc xml:space="preserve">Numerator of the frame rate</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideotimecode.c"
+                 line="240">Numerator of the frame rate</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="fps_d" transfer-ownership="none">
-            <doc xml:space="preserve">Denominator of the frame rate</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideotimecode.c"
+                 line="241">Denominator of the frame rate</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="dt" transfer-ownership="none">
-            <doc xml:space="preserve">#GDateTime to convert</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideotimecode.c"
+                 line="242">#GDateTime to convert</doc>
             <type name="GLib.DateTime" c:type="GDateTime*"/>
           </parameter>
           <parameter name="flags" transfer-ownership="none">
-            <doc xml:space="preserve">#GstVideoTimeCodeFlags</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideotimecode.c"
+                 line="243">#GstVideoTimeCodeFlags</doc>
             <type name="VideoTimeCodeFlags" c:type="GstVideoTimeCodeFlags"/>
           </parameter>
           <parameter name="field_count" transfer-ownership="none">
-            <doc xml:space="preserve">Interlaced video field count</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideotimecode.c"
+                 line="244">Interlaced video field count</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
@@ -12064,14 +20036,20 @@ midnight, and timecode is set to the given time.</doc>
       <method name="is_valid"
               c:identifier="gst_video_time_code_is_valid"
               version="1.10">
+        <source-position filename="gst-libs/gst/video/gstvideotimecode.h"
+                         line="198"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">whether @tc is a valid timecode (supported frame rate,
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideotimecode.c"
+               line="60">whether @tc is a valid timecode (supported frame rate,
 hours/minutes/seconds/frames not overflowing)</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="tc" transfer-ownership="none">
-            <doc xml:space="preserve">#GstVideoTimeCode to check</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideotimecode.c"
+                 line="58">#GstVideoTimeCode to check</doc>
             <type name="VideoTimeCode" c:type="const GstVideoTimeCode*"/>
           </instance-parameter>
         </parameters>
@@ -12079,13 +20057,19 @@ hours/minutes/seconds/frames not overflowing)</doc>
       <method name="nsec_since_daily_jam"
               c:identifier="gst_video_time_code_nsec_since_daily_jam"
               version="1.10">
+        <source-position filename="gst-libs/gst/video/gstvideotimecode.h"
+                         line="218"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">how many nsec have passed since the daily jam of @tc.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideotimecode.c"
+               line="306">how many nsec have passed since the daily jam of @tc.</doc>
           <type name="guint64" c:type="guint64"/>
         </return-value>
         <parameters>
           <instance-parameter name="tc" transfer-ownership="none">
-            <doc xml:space="preserve">a valid #GstVideoTimeCode</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideotimecode.c"
+                 line="304">a valid #GstVideoTimeCode</doc>
             <type name="VideoTimeCode" c:type="const GstVideoTimeCode*"/>
           </instance-parameter>
         </parameters>
@@ -12093,15 +20077,23 @@ hours/minutes/seconds/frames not overflowing)</doc>
       <method name="to_date_time"
               c:identifier="gst_video_time_code_to_date_time"
               version="1.10">
-        <doc xml:space="preserve">The @tc.config-&gt;latest_daily_jam is required to be non-NULL.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideotimecode.c"
+             line="158">The @tc.config-&gt;latest_daily_jam is required to be non-NULL.</doc>
+        <source-position filename="gst-libs/gst/video/gstvideotimecode.h"
+                         line="215"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">the #GDateTime representation of @tc or %NULL if @tc
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideotimecode.c"
+               line="164">the #GDateTime representation of @tc or %NULL if @tc
   has no daily jam.</doc>
           <type name="GLib.DateTime" c:type="GDateTime*"/>
         </return-value>
         <parameters>
           <instance-parameter name="tc" transfer-ownership="none">
-            <doc xml:space="preserve">A valid #GstVideoTimeCode to convert</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideotimecode.c"
+                 line="160">A valid #GstVideoTimeCode to convert</doc>
             <type name="VideoTimeCode" c:type="const GstVideoTimeCode*"/>
           </instance-parameter>
         </parameters>
@@ -12109,8 +20101,12 @@ hours/minutes/seconds/frames not overflowing)</doc>
       <method name="to_string"
               c:identifier="gst_video_time_code_to_string"
               version="1.10">
+        <source-position filename="gst-libs/gst/video/gstvideotimecode.h"
+                         line="212"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">the SMPTE ST 2059-1:2015 string representation of @tc. That will
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideotimecode.c"
+               line="120">the SMPTE ST 2059-1:2015 string representation of @tc. That will
 take the form hh:mm:ss:ff. The last separator (between seconds and frames)
 may vary:
 
@@ -12124,7 +20120,9 @@ interlaced field 2
         </return-value>
         <parameters>
           <instance-parameter name="tc" transfer-ownership="none">
-            <doc xml:space="preserve">A #GstVideoTimeCode to convert</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideotimecode.c"
+                 line="118">A #GstVideoTimeCode to convert</doc>
             <type name="VideoTimeCode" c:type="const GstVideoTimeCode*"/>
           </instance-parameter>
         </parameters>
@@ -12133,46 +20131,71 @@ interlaced field 2
     <record name="VideoTimeCodeConfig"
             c:type="GstVideoTimeCodeConfig"
             version="1.10">
-      <doc xml:space="preserve">Supported frame rates: 30000/1001, 60000/1001 (both with and without drop
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/gstvideotimecode.h"
+           line="54">Supported frame rates: 30000/1001, 60000/1001 (both with and without drop
 frame), and integer frame rates e.g. 25/1, 30/1, 50/1, 60/1.
 
 The configuration of the time code.</doc>
+      <source-position filename="gst-libs/gst/video/gstvideotimecode.h"
+                       line="73"/>
       <field name="fps_n" writable="1">
-        <doc xml:space="preserve">Numerator of the frame rate</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideotimecode.h"
+             line="56">Numerator of the frame rate</doc>
         <type name="guint" c:type="guint"/>
       </field>
       <field name="fps_d" writable="1">
-        <doc xml:space="preserve">Denominator of the frame rate</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideotimecode.h"
+             line="57">Denominator of the frame rate</doc>
         <type name="guint" c:type="guint"/>
       </field>
       <field name="flags" writable="1">
-        <doc xml:space="preserve">the corresponding #GstVideoTimeCodeFlags</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideotimecode.h"
+             line="58">the corresponding #GstVideoTimeCodeFlags</doc>
         <type name="VideoTimeCodeFlags" c:type="GstVideoTimeCodeFlags"/>
       </field>
       <field name="latest_daily_jam" writable="1">
-        <doc xml:space="preserve">The latest daily jam information, if present, or NULL</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideotimecode.h"
+             line="59">The latest daily jam information, if present, or NULL</doc>
         <type name="GLib.DateTime" c:type="GDateTime*"/>
       </field>
     </record>
     <bitfield name="VideoTimeCodeFlags"
               version="1.10"
+              glib:type-name="GstVideoTimeCodeFlags"
+              glib:get-type="gst_video_time_code_flags_get_type"
               c:type="GstVideoTimeCodeFlags">
-      <doc xml:space="preserve">Flags related to the time code information.
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/gstvideotimecode.h"
+           line="32">Flags related to the time code information.
 For drop frame, only 30000/1001 and 60000/1001 frame rates are supported.</doc>
       <member name="none"
               value="0"
-              c:identifier="GST_VIDEO_TIME_CODE_FLAGS_NONE">
-        <doc xml:space="preserve">No flags</doc>
+              c:identifier="GST_VIDEO_TIME_CODE_FLAGS_NONE"
+              glib:nick="none">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideotimecode.h"
+             line="34">No flags</doc>
       </member>
       <member name="drop_frame"
               value="1"
-              c:identifier="GST_VIDEO_TIME_CODE_FLAGS_DROP_FRAME">
-        <doc xml:space="preserve">Whether we have drop frame rate</doc>
+              c:identifier="GST_VIDEO_TIME_CODE_FLAGS_DROP_FRAME"
+              glib:nick="drop-frame">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideotimecode.h"
+             line="35">Whether we have drop frame rate</doc>
       </member>
       <member name="interlaced"
               value="2"
-              c:identifier="GST_VIDEO_TIME_CODE_FLAGS_INTERLACED">
-        <doc xml:space="preserve">Whether we have interlaced video</doc>
+              c:identifier="GST_VIDEO_TIME_CODE_FLAGS_INTERLACED"
+              glib:nick="interlaced">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideotimecode.h"
+             line="36">Whether we have interlaced video</doc>
       </member>
     </bitfield>
     <record name="VideoTimeCodeInterval"
@@ -12181,47 +20204,71 @@ For drop frame, only 30000/1001 and 60000/1001 frame rates are supported.</doc>
             glib:type-name="GstVideoTimeCodeInterval"
             glib:get-type="gst_video_time_code_interval_get_type"
             c:symbol-prefix="video_time_code_interval">
-      <doc xml:space="preserve">A representation of a difference between two #GstVideoTimeCode instances.
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/gstvideotimecode.h"
+           line="105">A representation of a difference between two #GstVideoTimeCode instances.
 Will not necessarily correspond to a real timecode (e.g. 00:00:10;00)</doc>
+      <source-position filename="gst-libs/gst/video/gstvideotimecode.h"
+                       line="122"/>
       <field name="hours" writable="1">
-        <doc xml:space="preserve">the hours field of #GstVideoTimeCodeInterval</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideotimecode.h"
+             line="107">the hours field of #GstVideoTimeCodeInterval</doc>
         <type name="guint" c:type="guint"/>
       </field>
       <field name="minutes" writable="1">
-        <doc xml:space="preserve">the minutes field of #GstVideoTimeCodeInterval</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideotimecode.h"
+             line="108">the minutes field of #GstVideoTimeCodeInterval</doc>
         <type name="guint" c:type="guint"/>
       </field>
       <field name="seconds" writable="1">
-        <doc xml:space="preserve">the seconds field of #GstVideoTimeCodeInterval</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideotimecode.h"
+             line="109">the seconds field of #GstVideoTimeCodeInterval</doc>
         <type name="guint" c:type="guint"/>
       </field>
       <field name="frames" writable="1">
-        <doc xml:space="preserve">the frames field of #GstVideoTimeCodeInterval</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideotimecode.h"
+             line="110">the frames field of #GstVideoTimeCodeInterval</doc>
         <type name="guint" c:type="guint"/>
       </field>
       <constructor name="new"
                    c:identifier="gst_video_time_code_interval_new"
                    version="1.12">
+        <source-position filename="gst-libs/gst/video/gstvideotimecode.h"
+                         line="231"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new #GstVideoTimeCodeInterval with the given values.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideotimecode.c"
+               line="967">a new #GstVideoTimeCodeInterval with the given values.</doc>
           <type name="VideoTimeCodeInterval"
                 c:type="GstVideoTimeCodeInterval*"/>
         </return-value>
         <parameters>
           <parameter name="hours" transfer-ownership="none">
-            <doc xml:space="preserve">the hours field of #GstVideoTimeCodeInterval</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideotimecode.c"
+                 line="962">the hours field of #GstVideoTimeCodeInterval</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="minutes" transfer-ownership="none">
-            <doc xml:space="preserve">the minutes field of #GstVideoTimeCodeInterval</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideotimecode.c"
+                 line="963">the minutes field of #GstVideoTimeCodeInterval</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="seconds" transfer-ownership="none">
-            <doc xml:space="preserve">the seconds field of #GstVideoTimeCodeInterval</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideotimecode.c"
+                 line="964">the seconds field of #GstVideoTimeCodeInterval</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="frames" transfer-ownership="none">
-            <doc xml:space="preserve">the frames field of #GstVideoTimeCodeInterval</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideotimecode.c"
+                 line="965">the frames field of #GstVideoTimeCodeInterval</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
@@ -12229,16 +20276,24 @@ Will not necessarily correspond to a real timecode (e.g. 00:00:10;00)</doc>
       <constructor name="new_from_string"
                    c:identifier="gst_video_time_code_interval_new_from_string"
                    version="1.12">
-        <doc xml:space="preserve">@tc_inter_str must only have ":" as separators.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideotimecode.c"
+             line="982">@tc_inter_str must only have ":" as separators.</doc>
+        <source-position filename="gst-libs/gst/video/gstvideotimecode.h"
+                         line="237"/>
         <return-value transfer-ownership="full" nullable="1">
-          <doc xml:space="preserve">a new #GstVideoTimeCodeInterval from the given string
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideotimecode.c"
+               line="988">a new #GstVideoTimeCodeInterval from the given string
   or %NULL if the string could not be passed.</doc>
           <type name="VideoTimeCodeInterval"
                 c:type="GstVideoTimeCodeInterval*"/>
         </return-value>
         <parameters>
           <parameter name="tc_inter_str" transfer-ownership="none">
-            <doc xml:space="preserve">The string that represents the #GstVideoTimeCodeInterval</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideotimecode.c"
+                 line="984">The string that represents the #GstVideoTimeCodeInterval</doc>
             <type name="utf8" c:type="const gchar*"/>
           </parameter>
         </parameters>
@@ -12246,13 +20301,19 @@ Will not necessarily correspond to a real timecode (e.g. 00:00:10;00)</doc>
       <method name="clear"
               c:identifier="gst_video_time_code_interval_clear"
               version="1.12">
-        <doc xml:space="preserve">Initializes @tc with empty/zero/NULL values.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideotimecode.c"
+             line="1044">Initializes @tc with empty/zero/NULL values.</doc>
+        <source-position filename="gst-libs/gst/video/gstvideotimecode.h"
+                         line="253"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="tc" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoTimeCodeInterval</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideotimecode.c"
+                 line="1046">a #GstVideoTimeCodeInterval</doc>
             <type name="VideoTimeCodeInterval"
                   c:type="GstVideoTimeCodeInterval*"/>
           </instance-parameter>
@@ -12261,14 +20322,20 @@ Will not necessarily correspond to a real timecode (e.g. 00:00:10;00)</doc>
       <method name="copy"
               c:identifier="gst_video_time_code_interval_copy"
               version="1.12">
+        <source-position filename="gst-libs/gst/video/gstvideotimecode.h"
+                         line="243"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new #GstVideoTimeCodeInterval with the same values as @tc.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideotimecode.c"
+               line="1065">a new #GstVideoTimeCodeInterval with the same values as @tc.</doc>
           <type name="VideoTimeCodeInterval"
                 c:type="GstVideoTimeCodeInterval*"/>
         </return-value>
         <parameters>
           <instance-parameter name="tc" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoTimeCodeInterval</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideotimecode.c"
+                 line="1063">a #GstVideoTimeCodeInterval</doc>
             <type name="VideoTimeCodeInterval"
                   c:type="const GstVideoTimeCodeInterval*"/>
           </instance-parameter>
@@ -12277,13 +20344,19 @@ Will not necessarily correspond to a real timecode (e.g. 00:00:10;00)</doc>
       <method name="free"
               c:identifier="gst_video_time_code_interval_free"
               version="1.12">
-        <doc xml:space="preserve">Frees @tc.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideotimecode.c"
+             line="1076">Frees @tc.</doc>
+        <source-position filename="gst-libs/gst/video/gstvideotimecode.h"
+                         line="240"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="tc" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoTimeCodeInterval</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideotimecode.c"
+                 line="1078">a #GstVideoTimeCodeInterval</doc>
             <type name="VideoTimeCodeInterval"
                   c:type="GstVideoTimeCodeInterval*"/>
           </instance-parameter>
@@ -12292,30 +20365,44 @@ Will not necessarily correspond to a real timecode (e.g. 00:00:10;00)</doc>
       <method name="init"
               c:identifier="gst_video_time_code_interval_init"
               version="1.12">
-        <doc xml:space="preserve">Initializes @tc with the given values.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideotimecode.c"
+             line="1022">Initializes @tc with the given values.</doc>
+        <source-position filename="gst-libs/gst/video/gstvideotimecode.h"
+                         line="246"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="tc" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoTimeCodeInterval</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideotimecode.c"
+                 line="1024">a #GstVideoTimeCodeInterval</doc>
             <type name="VideoTimeCodeInterval"
                   c:type="GstVideoTimeCodeInterval*"/>
           </instance-parameter>
           <parameter name="hours" transfer-ownership="none">
-            <doc xml:space="preserve">the hours field of #GstVideoTimeCodeInterval</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideotimecode.c"
+                 line="1025">the hours field of #GstVideoTimeCodeInterval</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="minutes" transfer-ownership="none">
-            <doc xml:space="preserve">the minutes field of #GstVideoTimeCodeInterval</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideotimecode.c"
+                 line="1026">the minutes field of #GstVideoTimeCodeInterval</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="seconds" transfer-ownership="none">
-            <doc xml:space="preserve">the seconds field of #GstVideoTimeCodeInterval</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideotimecode.c"
+                 line="1027">the seconds field of #GstVideoTimeCodeInterval</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
           <parameter name="frames" transfer-ownership="none">
-            <doc xml:space="preserve">the frames field of #GstVideoTimeCodeInterval</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/gstvideotimecode.c"
+                 line="1028">the frames field of #GstVideoTimeCodeInterval</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
@@ -12324,20 +20411,30 @@ Will not necessarily correspond to a real timecode (e.g. 00:00:10;00)</doc>
     <record name="VideoTimeCodeMeta"
             c:type="GstVideoTimeCodeMeta"
             version="1.10">
-      <doc xml:space="preserve">Extra buffer metadata describing the GstVideoTimeCode of the frame.
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/gstvideometa.h"
+           line="369">Extra buffer metadata describing the GstVideoTimeCode of the frame.
 
 Each frame is assumed to have its own timecode, i.e. they are not
 automatically incremented/interpolated.</doc>
+      <source-position filename="gst-libs/gst/video/gstvideometa.h"
+                       line="385"/>
       <field name="meta" writable="1">
-        <doc xml:space="preserve">parent #GstMeta</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideometa.h"
+             line="371">parent #GstMeta</doc>
         <type name="Gst.Meta" c:type="GstMeta"/>
       </field>
       <field name="tc" writable="1">
-        <doc xml:space="preserve">the GstVideoTimeCode to attach</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideometa.h"
+             line="372">the GstVideoTimeCode to attach</doc>
         <type name="VideoTimeCode" c:type="GstVideoTimeCode"/>
       </field>
       <function name="get_info"
                 c:identifier="gst_video_time_code_meta_get_info">
+        <source-position filename="gst-libs/gst/video/gstvideometa.h"
+                         line="392"/>
         <return-value transfer-ownership="none">
           <type name="Gst.MetaInfo" c:type="const GstMetaInfo*"/>
         </return-value>
@@ -12347,84 +20444,110 @@ automatically incremented/interpolated.</doc>
                  glib:type-name="GstVideoTransferFunction"
                  glib:get-type="gst_video_transfer_function_get_type"
                  c:type="GstVideoTransferFunction">
-      <doc xml:space="preserve">The video transfer function defines the formula for converting between
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-color.h"
+           line="71">The video transfer function defines the formula for converting between
 non-linear RGB (R'G'B') and linear RGB</doc>
       <member name="unknown"
               value="0"
               c:identifier="GST_VIDEO_TRANSFER_UNKNOWN"
               glib:nick="unknown">
-        <doc xml:space="preserve">unknown transfer function</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-color.h"
+             line="73">unknown transfer function</doc>
       </member>
       <member name="gamma10"
               value="1"
               c:identifier="GST_VIDEO_TRANSFER_GAMMA10"
               glib:nick="gamma10">
-        <doc xml:space="preserve">linear RGB, gamma 1.0 curve</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-color.h"
+             line="74">linear RGB, gamma 1.0 curve</doc>
       </member>
       <member name="gamma18"
               value="2"
               c:identifier="GST_VIDEO_TRANSFER_GAMMA18"
               glib:nick="gamma18">
-        <doc xml:space="preserve">Gamma 1.8 curve</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-color.h"
+             line="75">Gamma 1.8 curve</doc>
       </member>
       <member name="gamma20"
               value="3"
               c:identifier="GST_VIDEO_TRANSFER_GAMMA20"
               glib:nick="gamma20">
-        <doc xml:space="preserve">Gamma 2.0 curve</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-color.h"
+             line="76">Gamma 2.0 curve</doc>
       </member>
       <member name="gamma22"
               value="4"
               c:identifier="GST_VIDEO_TRANSFER_GAMMA22"
               glib:nick="gamma22">
-        <doc xml:space="preserve">Gamma 2.2 curve</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-color.h"
+             line="77">Gamma 2.2 curve</doc>
       </member>
       <member name="bt709"
               value="5"
               c:identifier="GST_VIDEO_TRANSFER_BT709"
               glib:nick="bt709">
-        <doc xml:space="preserve">Gamma 2.2 curve with a linear segment in the lower
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-color.h"
+             line="78">Gamma 2.2 curve with a linear segment in the lower
                           range</doc>
       </member>
       <member name="smpte240m"
               value="6"
               c:identifier="GST_VIDEO_TRANSFER_SMPTE240M"
               glib:nick="smpte240m">
-        <doc xml:space="preserve">Gamma 2.2 curve with a linear segment in the
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-color.h"
+             line="80">Gamma 2.2 curve with a linear segment in the
                               lower range</doc>
       </member>
       <member name="srgb"
               value="7"
               c:identifier="GST_VIDEO_TRANSFER_SRGB"
               glib:nick="srgb">
-        <doc xml:space="preserve">Gamma 2.4 curve with a linear segment in the lower
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-color.h"
+             line="82">Gamma 2.4 curve with a linear segment in the lower
                          range</doc>
       </member>
       <member name="gamma28"
               value="8"
               c:identifier="GST_VIDEO_TRANSFER_GAMMA28"
               glib:nick="gamma28">
-        <doc xml:space="preserve">Gamma 2.8 curve</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-color.h"
+             line="84">Gamma 2.8 curve</doc>
       </member>
       <member name="log100"
               value="9"
               c:identifier="GST_VIDEO_TRANSFER_LOG100"
               glib:nick="log100">
-        <doc xml:space="preserve">Logarithmic transfer characteristic
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-color.h"
+             line="85">Logarithmic transfer characteristic
                             100:1 range</doc>
       </member>
       <member name="log316"
               value="10"
               c:identifier="GST_VIDEO_TRANSFER_LOG316"
               glib:nick="log316">
-        <doc xml:space="preserve">Logarithmic transfer characteristic
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-color.h"
+             line="87">Logarithmic transfer characteristic
                             316.22777:1 range</doc>
       </member>
       <member name="bt2020_12"
               value="11"
               c:identifier="GST_VIDEO_TRANSFER_BT2020_12"
               glib:nick="bt2020-12">
-        <doc xml:space="preserve">Gamma 2.2 curve with a linear segment in the lower
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-color.h"
+             line="89">Gamma 2.2 curve with a linear segment in the lower
                                range. Used for BT.2020 with 12 bits per
                                component. Since: 1.6</doc>
       </member>
@@ -12432,7 +20555,40 @@ non-linear RGB (R'G'B') and linear RGB</doc>
               value="12"
               c:identifier="GST_VIDEO_TRANSFER_ADOBERGB"
               glib:nick="adobergb">
-        <doc xml:space="preserve">Gamma 2.19921875. Since: 1.8</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-color.h"
+             line="92">Gamma 2.19921875. Since: 1.8</doc>
+      </member>
+      <member name="bt2020_10"
+              value="13"
+              c:identifier="GST_VIDEO_TRANSFER_BT2020_10"
+              glib:nick="bt2020-10">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-color.h"
+             line="93">Rec. ITU-R BT.2020-2 with 10 bits per component.
+                               (functionally the same as the values
+                               GST_VIDEO_TRANSFER_BT709 and GST_VIDEO_TRANSFER_BT2020_12).
+                               Since: 1.18</doc>
+      </member>
+      <member name="smpte2084"
+              value="14"
+              c:identifier="GST_VIDEO_TRANSFER_SMPTE2084"
+              glib:nick="smpte2084">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-color.h"
+             line="97">SMPTE ST 2084 for 10, 12, 14, and 16-bit systems.
+                               Known as perceptual quantization (PQ)
+                               Since: 1.18</doc>
+      </member>
+      <member name="arib_std_b67"
+              value="15"
+              c:identifier="GST_VIDEO_TRANSFER_ARIB_STD_B67"
+              glib:nick="arib-std-b67">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-color.h"
+             line="100">Association of Radio Industries and Businesses (ARIB)
+                                  STD-B67 and Rec. ITU-R BT.2100-1 hybrid loggamma (HLG) system
+                                  Since: 1.18</doc>
       </member>
     </enumeration>
     <record name="VideoVBIEncoder"
@@ -12441,24 +20597,36 @@ non-linear RGB (R'G'B') and linear RGB</doc>
             glib:type-name="GstVideoVBIEncoder"
             glib:get-type="gst_video_vbi_encoder_get_type"
             c:symbol-prefix="video_vbi_encoder">
-      <doc xml:space="preserve">An encoder for writing ancillary data to the
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-anc.h"
+           line="480">An encoder for writing ancillary data to the
 Vertical Blanking Interval lines of component signals.</doc>
+      <source-position filename="gst-libs/gst/video/video-anc.h" line="489"/>
       <constructor name="new"
                    c:identifier="gst_video_vbi_encoder_new"
                    version="1.16">
-        <doc xml:space="preserve">Create a new #GstVideoVBIEncoder for the specified @format and @pixel_width.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-anc.c"
+             line="612">Create a new #GstVideoVBIEncoder for the specified @format and @pixel_width.</doc>
+        <source-position filename="gst-libs/gst/video/video-anc.h" line="495"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">The new #GstVideoVBIEncoder or %NULL if the @format and/or @pixel_width
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-anc.c"
+               line="621">The new #GstVideoVBIEncoder or %NULL if the @format and/or @pixel_width
 is not supported.</doc>
           <type name="VideoVBIEncoder" c:type="GstVideoVBIEncoder*"/>
         </return-value>
         <parameters>
           <parameter name="format" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoFormat</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-anc.c"
+                 line="614">a #GstVideoFormat</doc>
             <type name="VideoFormat" c:type="GstVideoFormat"/>
           </parameter>
           <parameter name="pixel_width" transfer-ownership="none">
-            <doc xml:space="preserve">The width in pixel to use</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-anc.c"
+                 line="615">The width in pixel to use</doc>
             <type name="guint32" c:type="guint32"/>
           </parameter>
         </parameters>
@@ -12466,47 +20634,65 @@ is not supported.</doc>
       <method name="add_ancillary"
               c:identifier="gst_video_vbi_encoder_add_ancillary"
               version="1.16">
-        <doc xml:space="preserve">Stores Video Ancillary data, according to SMPTE-291M specification.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-anc.c"
+             line="696">Stores Video Ancillary data, according to SMPTE-291M specification.
 
 Note that the contents of the data are always read as 8bit data (i.e. do not contain
 the parity check bits).</doc>
+        <source-position filename="gst-libs/gst/video/video-anc.h" line="504"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if enough space was left in the current line, %FALSE
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-anc.c"
+               line="714">%TRUE if enough space was left in the current line, %FALSE
          otherwise.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
         <parameters>
           <instance-parameter name="encoder" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoVBIEncoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-anc.c"
+                 line="698">a #GstVideoVBIEncoder</doc>
             <type name="VideoVBIEncoder" c:type="GstVideoVBIEncoder*"/>
           </instance-parameter>
           <parameter name="composite" transfer-ownership="none">
-            <doc xml:space="preserve">%TRUE if composite ADF should be created, component otherwise</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-anc.c"
+                 line="699">%TRUE if composite ADF should be created, component otherwise</doc>
             <type name="gboolean" c:type="gboolean"/>
           </parameter>
           <parameter name="DID" transfer-ownership="none">
-            <doc xml:space="preserve">The Data Identifier</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-anc.c"
+                 line="700">The Data Identifier</doc>
             <type name="guint8" c:type="guint8"/>
           </parameter>
           <parameter name="SDID_block_number" transfer-ownership="none">
-            <doc xml:space="preserve">The Secondary Data Identifier (if type 2) or the Data
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-anc.c"
+                 line="701">The Secondary Data Identifier (if type 2) or the Data
                     Block Number (if type 1)</doc>
             <type name="guint8" c:type="guint8"/>
           </parameter>
           <parameter name="data" transfer-ownership="none">
-            <doc xml:space="preserve">The user data content of the Ancillary packet.
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-anc.c"
+                 line="704">The user data content of the Ancillary packet.
    Does not contain the ADF, DID, SDID nor CS.</doc>
             <array length="4" zero-terminated="0" c:type="const guint8*">
               <type name="guint8" c:type="guint8"/>
             </array>
           </parameter>
           <parameter name="data_count" transfer-ownership="none">
-            <doc xml:space="preserve">The amount of data (in bytes) in @data (max 255 bytes)</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-anc.c"
+                 line="703">The amount of data (in bytes) in @data (max 255 bytes)</doc>
             <type name="guint" c:type="guint"/>
           </parameter>
         </parameters>
       </method>
       <method name="copy" c:identifier="gst_video_vbi_encoder_copy">
+        <source-position filename="gst-libs/gst/video/video-anc.h" line="498"/>
         <return-value transfer-ownership="full">
           <type name="VideoVBIEncoder" c:type="GstVideoVBIEncoder*"/>
         </return-value>
@@ -12519,19 +20705,25 @@ the parity check bits).</doc>
       <method name="free"
               c:identifier="gst_video_vbi_encoder_free"
               version="1.16">
-        <doc xml:space="preserve">Frees the @encoder.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-anc.c"
+             line="595">Frees the @encoder.</doc>
+        <source-position filename="gst-libs/gst/video/video-anc.h" line="501"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="encoder" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoVBIEncoder</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-anc.c"
+                 line="597">a #GstVideoVBIEncoder</doc>
             <type name="VideoVBIEncoder" c:type="GstVideoVBIEncoder*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="write_line"
               c:identifier="gst_video_vbi_encoder_write_line">
+        <source-position filename="gst-libs/gst/video/video-anc.h" line="512"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
@@ -12551,24 +20743,36 @@ the parity check bits).</doc>
             glib:type-name="GstVideoVBIParser"
             glib:get-type="gst_video_vbi_parser_get_type"
             c:symbol-prefix="video_vbi_parser">
-      <doc xml:space="preserve">A parser for detecting and extracting @GstVideoAncillary data from
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-anc.h"
+           line="434">A parser for detecting and extracting @GstVideoAncillary data from
 Vertical Blanking Interval lines of component signals.</doc>
+      <source-position filename="gst-libs/gst/video/video-anc.h" line="443"/>
       <constructor name="new"
                    c:identifier="gst_video_vbi_parser_new"
                    version="1.16">
-        <doc xml:space="preserve">Create a new #GstVideoVBIParser for the specified @format and @pixel_width.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-anc.c"
+             line="331">Create a new #GstVideoVBIParser for the specified @format and @pixel_width.</doc>
+        <source-position filename="gst-libs/gst/video/video-anc.h" line="469"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">The new #GstVideoVBIParser or %NULL if the @format and/or @pixel_width
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-anc.c"
+               line="340">The new #GstVideoVBIParser or %NULL if the @format and/or @pixel_width
 is not supported.</doc>
           <type name="VideoVBIParser" c:type="GstVideoVBIParser*"/>
         </return-value>
         <parameters>
           <parameter name="format" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoFormat</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-anc.c"
+                 line="333">a #GstVideoFormat</doc>
             <type name="VideoFormat" c:type="GstVideoFormat"/>
           </parameter>
           <parameter name="pixel_width" transfer-ownership="none">
-            <doc xml:space="preserve">The width in pixel to use</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-anc.c"
+                 line="334">The width in pixel to use</doc>
             <type name="guint32" c:type="guint32"/>
           </parameter>
         </parameters>
@@ -12576,18 +20780,25 @@ is not supported.</doc>
       <method name="add_line"
               c:identifier="gst_video_vbi_parser_add_line"
               version="1.16">
-        <doc xml:space="preserve">Provide a new line of data to the @parser. Call gst_video_vbi_parser_get_ancillary()
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-anc.c"
+             line="534">Provide a new line of data to the @parser. Call gst_video_vbi_parser_get_ancillary()
 to get the Ancillary data that might be present on that line.</doc>
+        <source-position filename="gst-libs/gst/video/video-anc.h" line="478"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="parser" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoVBIParser</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-anc.c"
+                 line="536">a #GstVideoVBIParser</doc>
             <type name="VideoVBIParser" c:type="GstVideoVBIParser*"/>
           </instance-parameter>
           <parameter name="data" transfer-ownership="none">
-            <doc xml:space="preserve">The line of data to parse</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-anc.c"
+                 line="537">The line of data to parse</doc>
             <array zero-terminated="0" c:type="const guint8*">
               <type name="guint8" c:type="guint8"/>
             </array>
@@ -12595,6 +20806,7 @@ to get the Ancillary data that might be present on that line.</doc>
         </parameters>
       </method>
       <method name="copy" c:identifier="gst_video_vbi_parser_copy">
+        <source-position filename="gst-libs/gst/video/video-anc.h" line="472"/>
         <return-value transfer-ownership="full">
           <type name="VideoVBIParser" c:type="GstVideoVBIParser*"/>
         </return-value>
@@ -12607,13 +20819,18 @@ to get the Ancillary data that might be present on that line.</doc>
       <method name="free"
               c:identifier="gst_video_vbi_parser_free"
               version="1.16">
-        <doc xml:space="preserve">Frees the @parser.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-anc.c"
+             line="385">Frees the @parser.</doc>
+        <source-position filename="gst-libs/gst/video/video-anc.h" line="475"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="parser" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoVBIParser</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-anc.c"
+                 line="387">a #GstVideoVBIParser</doc>
             <type name="VideoVBIParser" c:type="GstVideoVBIParser*"/>
           </instance-parameter>
         </parameters>
@@ -12621,23 +20838,32 @@ to get the Ancillary data that might be present on that line.</doc>
       <method name="get_ancillary"
               c:identifier="gst_video_vbi_parser_get_ancillary"
               version="1.16">
-        <doc xml:space="preserve">Parse the line provided previously by gst_video_vbi_parser_add_line().</doc>
-        <return-value transfer-ownership="none">
-          <doc xml:space="preserve">%GST_VIDEO_VBI_PARSER_RESULT_OK if ancillary data was found and
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-anc.c"
+             line="305">Parse the line provided previously by gst_video_vbi_parser_add_line().</doc>
+        <source-position filename="gst-libs/gst/video/video-anc.h" line="465"/>
+        <return-value transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-anc.c"
+               line="314">%GST_VIDEO_VBI_PARSER_RESULT_OK if ancillary data was found and
 @anc was filled. %GST_VIDEO_VBI_PARSER_RESULT_DONE if there wasn't any
 data.</doc>
           <type name="VideoVBIParserResult" c:type="GstVideoVBIParserResult"/>
         </return-value>
         <parameters>
           <instance-parameter name="parser" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoVBIParser</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-anc.c"
+                 line="307">a #GstVideoVBIParser</doc>
             <type name="VideoVBIParser" c:type="GstVideoVBIParser*"/>
           </instance-parameter>
           <parameter name="anc"
                      direction="out"
                      caller-allocates="1"
                      transfer-ownership="none">
-            <doc xml:space="preserve">a #GstVideoAncillary to start the eventual ancillary data</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/video/video-anc.c"
+                 line="308">a #GstVideoAncillary to start the eventual ancillary data</doc>
             <type name="VideoAncillary" c:type="GstVideoAncillary*"/>
           </parameter>
         </parameters>
@@ -12648,202 +20874,399 @@ data.</doc>
                  glib:type-name="GstVideoVBIParserResult"
                  glib:get-type="gst_video_vbi_parser_result_get_type"
                  c:type="GstVideoVBIParserResult">
-      <doc xml:space="preserve">Return values for #GstVideoVBIParser</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-anc.h"
+           line="448">Return values for #GstVideoVBIParser</doc>
       <member name="done"
               value="0"
               c:identifier="GST_VIDEO_VBI_PARSER_RESULT_DONE"
               glib:nick="done">
-        <doc xml:space="preserve">No line were provided, or no more Ancillary data was found.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-anc.h"
+             line="450">No line were provided, or no more Ancillary data was found.</doc>
       </member>
       <member name="ok"
               value="1"
               c:identifier="GST_VIDEO_VBI_PARSER_RESULT_OK"
               glib:nick="ok">
-        <doc xml:space="preserve">A #GstVideoAncillary was found.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-anc.h"
+             line="451">A #GstVideoAncillary was found.</doc>
       </member>
       <member name="error"
               value="2"
               c:identifier="GST_VIDEO_VBI_PARSER_RESULT_ERROR"
               glib:nick="error">
-        <doc xml:space="preserve">An error occured</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-anc.h"
+             line="452">An error occurred</doc>
       </member>
     </enumeration>
+    <function name="buffer_add_video_afd_meta"
+              c:identifier="gst_buffer_add_video_afd_meta"
+              version="1.18">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-anc.c"
+           line="1182">Attaches #GstVideoAFDMeta metadata to @buffer with the given
+parameters.</doc>
+      <source-position filename="gst-libs/gst/video/video-anc.h" line="267"/>
+      <return-value transfer-ownership="none">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-anc.c"
+             line="1192">the #GstVideoAFDMeta on @buffer.</doc>
+        <type name="VideoAFDMeta" c:type="GstVideoAFDMeta*"/>
+      </return-value>
+      <parameters>
+        <parameter name="buffer" transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-anc.c"
+               line="1184">a #GstBuffer</doc>
+          <type name="Gst.Buffer" c:type="GstBuffer*"/>
+        </parameter>
+        <parameter name="field" transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-anc.c"
+               line="1185">0 for progressive or field 1 and 1 for field 2</doc>
+          <type name="guint8" c:type="guint8"/>
+        </parameter>
+        <parameter name="spec" transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-anc.c"
+               line="1186">#GstVideoAFDSpec that applies to AFD value</doc>
+          <type name="VideoAFDSpec" c:type="GstVideoAFDSpec"/>
+        </parameter>
+        <parameter name="afd" transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-anc.c"
+               line="1187">#GstVideoAFDValue AFD enumeration</doc>
+          <type name="VideoAFDValue" c:type="GstVideoAFDValue"/>
+        </parameter>
+      </parameters>
+    </function>
     <function name="buffer_add_video_affine_transformation_meta"
               c:identifier="gst_buffer_add_video_affine_transformation_meta"
               version="1.8">
-      <doc xml:space="preserve">Attaches GstVideoAffineTransformationMeta metadata to @buffer with
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/gstvideoaffinetransformationmeta.c"
+           line="110">Attaches GstVideoAffineTransformationMeta metadata to @buffer with
 the given parameters.</doc>
+      <source-position filename="gst-libs/gst/video/gstvideoaffinetransformationmeta.h"
+                       line="73"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">the #GstVideoAffineTransformationMeta on @buffer.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideoaffinetransformationmeta.c"
+             line="117">the #GstVideoAffineTransformationMeta on @buffer.</doc>
         <type name="VideoAffineTransformationMeta"
               c:type="GstVideoAffineTransformationMeta*"/>
       </return-value>
       <parameters>
         <parameter name="buffer" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstBuffer</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideoaffinetransformationmeta.c"
+               line="112">a #GstBuffer</doc>
+          <type name="Gst.Buffer" c:type="GstBuffer*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="buffer_add_video_bar_meta"
+              c:identifier="gst_buffer_add_video_bar_meta"
+              version="1.18">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-anc.c"
+           line="1276">Attaches #GstVideoBarMeta metadata to @buffer with the given
+parameters.</doc>
+      <source-position filename="gst-libs/gst/video/video-anc.h" line="338"/>
+      <return-value transfer-ownership="none">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-anc.c"
+             line="1293">the #GstVideoBarMeta on @buffer.
+
+See Table 6.11 Bar Data Syntax
+
+https://www.atsc.org/wp-content/uploads/2015/03/a_53-Part-4-2009.pdf</doc>
+        <type name="VideoBarMeta" c:type="GstVideoBarMeta*"/>
+      </return-value>
+      <parameters>
+        <parameter name="buffer" transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-anc.c"
+               line="1278">a #GstBuffer</doc>
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </parameter>
+        <parameter name="field" transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-anc.c"
+               line="1279">0 for progressive or field 1 and 1 for field 2</doc>
+          <type name="guint8" c:type="guint8"/>
+        </parameter>
+        <parameter name="is_letterbox" transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-anc.c"
+               line="1280">if true then bar data specifies letterbox, otherwise pillarbox</doc>
+          <type name="gboolean" c:type="gboolean"/>
+        </parameter>
+        <parameter name="bar_data1" transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-anc.c"
+               line="1281">If @is_letterbox is true, then the value specifies the
+     last line of a horizontal letterbox bar area at top of reconstructed frame.
+     Otherwise, it specifies the last horizontal luminance sample of a vertical pillarbox
+     bar area at the left side of the reconstructed frame</doc>
+          <type name="guint" c:type="guint"/>
+        </parameter>
+        <parameter name="bar_data2" transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-anc.c"
+               line="1285">If @is_letterbox is true, then the value specifies the
+     first line of a horizontal letterbox bar area at bottom of reconstructed frame.
+     Otherwise, it specifies the first horizontal
+     luminance sample of a vertical pillarbox bar area at the right side of the reconstructed frame.</doc>
+          <type name="guint" c:type="guint"/>
+        </parameter>
       </parameters>
     </function>
     <function name="buffer_add_video_caption_meta"
               c:identifier="gst_buffer_add_video_caption_meta"
               version="1.16">
-      <doc xml:space="preserve">Attaches #GstVideoCaptionMeta metadata to @buffer with the given
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-anc.c"
+           line="1004">Attaches #GstVideoCaptionMeta metadata to @buffer with the given
 parameters.</doc>
+      <source-position filename="gst-libs/gst/video/video-anc.h" line="429"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">the #GstVideoCaptionMeta on @buffer.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-anc.c"
+             line="1014">the #GstVideoCaptionMeta on @buffer.</doc>
         <type name="VideoCaptionMeta" c:type="GstVideoCaptionMeta*"/>
       </return-value>
       <parameters>
         <parameter name="buffer" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstBuffer</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-anc.c"
+               line="1006">a #GstBuffer</doc>
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </parameter>
         <parameter name="caption_type" transfer-ownership="none">
-          <doc xml:space="preserve">The type of Closed Caption to add</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-anc.c"
+               line="1007">The type of Closed Caption to add</doc>
           <type name="VideoCaptionType" c:type="GstVideoCaptionType"/>
         </parameter>
         <parameter name="data" transfer-ownership="none">
-          <doc xml:space="preserve">The Closed Caption data</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-anc.c"
+               line="1008">The Closed Caption data</doc>
           <array length="3" zero-terminated="0" c:type="const guint8*">
             <type name="guint8" c:type="guint8"/>
           </array>
         </parameter>
         <parameter name="size" transfer-ownership="none">
-          <doc xml:space="preserve">The size of @data in bytes</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-anc.c"
+               line="1009">The size of @data in bytes</doc>
           <type name="gsize" c:type="gsize"/>
         </parameter>
       </parameters>
     </function>
+    <function-macro name="buffer_add_video_crop_meta"
+                    c:identifier="gst_buffer_add_video_crop_meta"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/gstvideometa.h"
+                       line="164"/>
+      <parameters>
+        <parameter name="b">
+        </parameter>
+      </parameters>
+    </function-macro>
     <function name="buffer_add_video_gl_texture_upload_meta"
               c:identifier="gst_buffer_add_video_gl_texture_upload_meta">
-      <doc xml:space="preserve">Attaches GstVideoGLTextureUploadMeta metadata to @buffer with the given
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/gstvideometa.c"
+           line="738">Attaches GstVideoGLTextureUploadMeta metadata to @buffer with the given
 parameters.</doc>
+      <source-position filename="gst-libs/gst/video/gstvideometa.h"
+                       line="290"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">the #GstVideoGLTextureUploadMeta on @buffer.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideometa.c"
+             line="752">the #GstVideoGLTextureUploadMeta on @buffer.</doc>
         <type name="VideoGLTextureUploadMeta"
               c:type="GstVideoGLTextureUploadMeta*"/>
       </return-value>
       <parameters>
         <parameter name="buffer" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstBuffer</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideometa.c"
+               line="740">a #GstBuffer</doc>
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </parameter>
         <parameter name="texture_orientation" transfer-ownership="none">
-          <doc xml:space="preserve">the #GstVideoGLTextureOrientation</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideometa.c"
+               line="741">the #GstVideoGLTextureOrientation</doc>
           <type name="VideoGLTextureOrientation"
                 c:type="GstVideoGLTextureOrientation"/>
         </parameter>
         <parameter name="n_textures" transfer-ownership="none">
-          <doc xml:space="preserve">the number of textures</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideometa.c"
+               line="742">the number of textures</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
         <parameter name="texture_type" transfer-ownership="none">
-          <doc xml:space="preserve">array of #GstVideoGLTextureType</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideometa.c"
+               line="743">array of #GstVideoGLTextureType</doc>
           <type name="VideoGLTextureType" c:type="GstVideoGLTextureType*"/>
         </parameter>
         <parameter name="upload"
                    transfer-ownership="none"
                    scope="call"
                    closure="5">
-          <doc xml:space="preserve">the function to upload the buffer to a specific texture ID</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideometa.c"
+               line="744">the function to upload the buffer to a specific texture ID</doc>
           <type name="VideoGLTextureUpload" c:type="GstVideoGLTextureUpload"/>
         </parameter>
         <parameter name="user_data"
                    transfer-ownership="none"
                    nullable="1"
                    allow-none="1">
-          <doc xml:space="preserve">user data for the implementor of @upload</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideometa.c"
+               line="745">user data for the implementor of @upload</doc>
           <type name="gpointer" c:type="gpointer"/>
         </parameter>
         <parameter name="user_data_copy"
                    transfer-ownership="none"
                    scope="call">
-          <doc xml:space="preserve">function to copy @user_data</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideometa.c"
+               line="746">function to copy @user_data</doc>
           <type name="GObject.BoxedCopyFunc" c:type="GBoxedCopyFunc"/>
         </parameter>
         <parameter name="user_data_free"
                    transfer-ownership="none"
                    scope="call">
-          <doc xml:space="preserve">function to free @user_data</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideometa.c"
+               line="747">function to free @user_data</doc>
           <type name="GObject.BoxedFreeFunc" c:type="GBoxedFreeFunc"/>
         </parameter>
       </parameters>
     </function>
     <function name="buffer_add_video_meta"
               c:identifier="gst_buffer_add_video_meta">
-      <doc xml:space="preserve">Attaches GstVideoMeta metadata to @buffer with the given parameters and the
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/gstvideometa.c"
+           line="262">Attaches GstVideoMeta metadata to @buffer with the given parameters and the
 default offsets and strides for @format and @width x @height.
 
 This function calculates the default offsets and strides and then calls
 gst_buffer_add_video_meta_full() with them.</doc>
+      <source-position filename="gst-libs/gst/video/gstvideometa.h"
+                       line="113"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">the #GstVideoMeta on @buffer.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideometa.c"
+             line="276">the #GstVideoMeta on @buffer.</doc>
         <type name="VideoMeta" c:type="GstVideoMeta*"/>
       </return-value>
       <parameters>
         <parameter name="buffer" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstBuffer</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideometa.c"
+               line="264">a #GstBuffer</doc>
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </parameter>
         <parameter name="flags" transfer-ownership="none">
-          <doc xml:space="preserve">#GstVideoFrameFlags</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideometa.c"
+               line="265">#GstVideoFrameFlags</doc>
           <type name="VideoFrameFlags" c:type="GstVideoFrameFlags"/>
         </parameter>
         <parameter name="format" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstVideoFormat</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideometa.c"
+               line="266">a #GstVideoFormat</doc>
           <type name="VideoFormat" c:type="GstVideoFormat"/>
         </parameter>
         <parameter name="width" transfer-ownership="none">
-          <doc xml:space="preserve">the width</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideometa.c"
+               line="267">the width</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
         <parameter name="height" transfer-ownership="none">
-          <doc xml:space="preserve">the height</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideometa.c"
+               line="268">the height</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
       </parameters>
     </function>
     <function name="buffer_add_video_meta_full"
               c:identifier="gst_buffer_add_video_meta_full">
-      <doc xml:space="preserve">Attaches GstVideoMeta metadata to @buffer with the given parameters.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/gstvideometa.c"
+           line="295">Attaches GstVideoMeta metadata to @buffer with the given parameters.</doc>
+      <source-position filename="gst-libs/gst/video/gstvideometa.h"
+                       line="117"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">the #GstVideoMeta on @buffer.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideometa.c"
+             line="308">the #GstVideoMeta on @buffer.</doc>
         <type name="VideoMeta" c:type="GstVideoMeta*"/>
       </return-value>
       <parameters>
         <parameter name="buffer" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstBuffer</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideometa.c"
+               line="297">a #GstBuffer</doc>
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </parameter>
         <parameter name="flags" transfer-ownership="none">
-          <doc xml:space="preserve">#GstVideoFrameFlags</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideometa.c"
+               line="298">#GstVideoFrameFlags</doc>
           <type name="VideoFrameFlags" c:type="GstVideoFrameFlags"/>
         </parameter>
         <parameter name="format" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstVideoFormat</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideometa.c"
+               line="299">a #GstVideoFormat</doc>
           <type name="VideoFormat" c:type="GstVideoFormat"/>
         </parameter>
         <parameter name="width" transfer-ownership="none">
-          <doc xml:space="preserve">the width</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideometa.c"
+               line="300">the width</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
         <parameter name="height" transfer-ownership="none">
-          <doc xml:space="preserve">the height</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideometa.c"
+               line="301">the height</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
         <parameter name="n_planes" transfer-ownership="none">
-          <doc xml:space="preserve">number of planes</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideometa.c"
+               line="302">number of planes</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
         <parameter name="offset" transfer-ownership="none">
-          <doc xml:space="preserve">offset of each plane</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideometa.c"
+               line="303">offset of each plane</doc>
           <array zero-terminated="0" c:type="gsize*" fixed-size="4">
             <type name="gsize" c:type="gsize"/>
           </array>
         </parameter>
         <parameter name="stride" transfer-ownership="none">
-          <doc xml:space="preserve">stride of each plane</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideometa.c"
+               line="304">stride of each plane</doc>
           <array zero-terminated="0" c:type="gint*" fixed-size="4">
             <type name="gint" c:type="gint"/>
           </array>
@@ -12852,24 +21275,34 @@ gst_buffer_add_video_meta_full() with them.</doc>
     </function>
     <function name="buffer_add_video_overlay_composition_meta"
               c:identifier="gst_buffer_add_video_overlay_composition_meta">
-      <doc xml:space="preserve">Sets an overlay composition on a buffer. The buffer will obtain its own
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-overlay-composition.c"
+           line="272">Sets an overlay composition on a buffer. The buffer will obtain its own
 reference to the composition, meaning this function does not take ownership
 of @comp.</doc>
+      <source-position filename="gst-libs/gst/video/video-overlay-composition.h"
+                       line="296"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">a #GstVideoOverlayCompositionMeta</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-overlay-composition.c"
+             line="281">a #GstVideoOverlayCompositionMeta</doc>
         <type name="VideoOverlayCompositionMeta"
               c:type="GstVideoOverlayCompositionMeta*"/>
       </return-value>
       <parameters>
         <parameter name="buf" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstBuffer</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-overlay-composition.c"
+               line="274">a #GstBuffer</doc>
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </parameter>
         <parameter name="comp"
                    transfer-ownership="none"
                    nullable="1"
                    allow-none="1">
-          <doc xml:space="preserve">a #GstVideoOverlayComposition</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-overlay-composition.c"
+               line="275">a #GstVideoOverlayComposition</doc>
           <type name="VideoOverlayComposition"
                 c:type="GstVideoOverlayComposition*"/>
         </parameter>
@@ -12877,72 +21310,108 @@ of @comp.</doc>
     </function>
     <function name="buffer_add_video_region_of_interest_meta"
               c:identifier="gst_buffer_add_video_region_of_interest_meta">
-      <doc xml:space="preserve">Attaches #GstVideoRegionOfInterestMeta metadata to @buffer with the given
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/gstvideometa.c"
+           line="948">Attaches #GstVideoRegionOfInterestMeta metadata to @buffer with the given
 parameters.</doc>
+      <source-position filename="gst-libs/gst/video/gstvideometa.h"
+                       line="347"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">the #GstVideoRegionOfInterestMeta on @buffer.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideometa.c"
+             line="960">the #GstVideoRegionOfInterestMeta on @buffer.</doc>
         <type name="VideoRegionOfInterestMeta"
               c:type="GstVideoRegionOfInterestMeta*"/>
       </return-value>
       <parameters>
         <parameter name="buffer" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstBuffer</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideometa.c"
+               line="950">a #GstBuffer</doc>
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </parameter>
         <parameter name="roi_type" transfer-ownership="none">
-          <doc xml:space="preserve">Type of the region of interest (e.g. "face")</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideometa.c"
+               line="951">Type of the region of interest (e.g. "face")</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
         <parameter name="x" transfer-ownership="none">
-          <doc xml:space="preserve">X position</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideometa.c"
+               line="952">X position</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
         <parameter name="y" transfer-ownership="none">
-          <doc xml:space="preserve">Y position</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideometa.c"
+               line="953">Y position</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
         <parameter name="w" transfer-ownership="none">
-          <doc xml:space="preserve">width</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideometa.c"
+               line="954">width</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
         <parameter name="h" transfer-ownership="none">
-          <doc xml:space="preserve">height</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideometa.c"
+               line="955">height</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
       </parameters>
     </function>
     <function name="buffer_add_video_region_of_interest_meta_id"
               c:identifier="gst_buffer_add_video_region_of_interest_meta_id">
-      <doc xml:space="preserve">Attaches #GstVideoRegionOfInterestMeta metadata to @buffer with the given
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/gstvideometa.c"
+           line="970">Attaches #GstVideoRegionOfInterestMeta metadata to @buffer with the given
 parameters.</doc>
+      <source-position filename="gst-libs/gst/video/gstvideometa.h"
+                       line="355"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">the #GstVideoRegionOfInterestMeta on @buffer.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideometa.c"
+             line="982">the #GstVideoRegionOfInterestMeta on @buffer.</doc>
         <type name="VideoRegionOfInterestMeta"
               c:type="GstVideoRegionOfInterestMeta*"/>
       </return-value>
       <parameters>
         <parameter name="buffer" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstBuffer</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideometa.c"
+               line="972">a #GstBuffer</doc>
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </parameter>
         <parameter name="roi_type" transfer-ownership="none">
-          <doc xml:space="preserve">Type of the region of interest (e.g. "face")</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideometa.c"
+               line="973">Type of the region of interest (e.g. "face")</doc>
           <type name="GLib.Quark" c:type="GQuark"/>
         </parameter>
         <parameter name="x" transfer-ownership="none">
-          <doc xml:space="preserve">X position</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideometa.c"
+               line="974">X position</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
         <parameter name="y" transfer-ownership="none">
-          <doc xml:space="preserve">Y position</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideometa.c"
+               line="975">Y position</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
         <parameter name="w" transfer-ownership="none">
-          <doc xml:space="preserve">width</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideometa.c"
+               line="976">width</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
         <parameter name="h" transfer-ownership="none">
-          <doc xml:space="preserve">height</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideometa.c"
+               line="977">height</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
       </parameters>
@@ -12950,188 +21419,404 @@ parameters.</doc>
     <function name="buffer_add_video_time_code_meta"
               c:identifier="gst_buffer_add_video_time_code_meta"
               version="1.10">
-      <doc xml:space="preserve">Attaches #GstVideoTimeCodeMeta metadata to @buffer with the given
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/gstvideometa.c"
+           line="1140">Attaches #GstVideoTimeCodeMeta metadata to @buffer with the given
 parameters.</doc>
+      <source-position filename="gst-libs/gst/video/gstvideometa.h"
+                       line="399"/>
       <return-value transfer-ownership="none" nullable="1">
-        <doc xml:space="preserve">the #GstVideoTimeCodeMeta on @buffer, or
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideometa.c"
+             line="1148">the #GstVideoTimeCodeMeta on @buffer, or
 (since 1.16) %NULL if the timecode was invalid.</doc>
         <type name="VideoTimeCodeMeta" c:type="GstVideoTimeCodeMeta*"/>
       </return-value>
       <parameters>
         <parameter name="buffer" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstBuffer</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideometa.c"
+               line="1142">a #GstBuffer</doc>
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </parameter>
         <parameter name="tc" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstVideoTimeCode</doc>
-          <type name="VideoTimeCode" c:type="GstVideoTimeCode*"/>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideometa.c"
+               line="1143">a #GstVideoTimeCode</doc>
+          <type name="VideoTimeCode" c:type="const GstVideoTimeCode*"/>
         </parameter>
       </parameters>
     </function>
     <function name="buffer_add_video_time_code_meta_full"
               c:identifier="gst_buffer_add_video_time_code_meta_full"
               version="1.10">
-      <doc xml:space="preserve">Attaches #GstVideoTimeCodeMeta metadata to @buffer with the given
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/gstvideometa.c"
+           line="1165">Attaches #GstVideoTimeCodeMeta metadata to @buffer with the given
 parameters.</doc>
+      <source-position filename="gst-libs/gst/video/gstvideometa.h"
+                       line="404"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">the #GstVideoTimeCodeMeta on @buffer, or
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideometa.c"
+             line="1181">the #GstVideoTimeCodeMeta on @buffer, or
 (since 1.16) %NULL if the timecode was invalid.</doc>
         <type name="VideoTimeCodeMeta" c:type="GstVideoTimeCodeMeta*"/>
       </return-value>
       <parameters>
         <parameter name="buffer" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstBuffer</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideometa.c"
+               line="1167">a #GstBuffer</doc>
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </parameter>
         <parameter name="fps_n" transfer-ownership="none">
-          <doc xml:space="preserve">framerate numerator</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideometa.c"
+               line="1168">framerate numerator</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
         <parameter name="fps_d" transfer-ownership="none">
-          <doc xml:space="preserve">framerate denominator</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideometa.c"
+               line="1169">framerate denominator</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
         <parameter name="latest_daily_jam" transfer-ownership="none">
-          <doc xml:space="preserve">a #GDateTime for the latest daily jam</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideometa.c"
+               line="1170">a #GDateTime for the latest daily jam</doc>
           <type name="GLib.DateTime" c:type="GDateTime*"/>
         </parameter>
         <parameter name="flags" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstVideoTimeCodeFlags</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideometa.c"
+               line="1171">a #GstVideoTimeCodeFlags</doc>
           <type name="VideoTimeCodeFlags" c:type="GstVideoTimeCodeFlags"/>
         </parameter>
         <parameter name="hours" transfer-ownership="none">
-          <doc xml:space="preserve">hours since the daily jam</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideometa.c"
+               line="1172">hours since the daily jam</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
         <parameter name="minutes" transfer-ownership="none">
-          <doc xml:space="preserve">minutes since the daily jam</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideometa.c"
+               line="1173">minutes since the daily jam</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
         <parameter name="seconds" transfer-ownership="none">
-          <doc xml:space="preserve">seconds since the daily jam</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideometa.c"
+               line="1174">seconds since the daily jam</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
         <parameter name="frames" transfer-ownership="none">
-          <doc xml:space="preserve">frames since the daily jam</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideometa.c"
+               line="1175">frames since the daily jam</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
         <parameter name="field_count" transfer-ownership="none">
-          <doc xml:space="preserve">fields since the daily jam</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideometa.c"
+               line="1176">fields since the daily jam</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
       </parameters>
     </function>
+    <function-macro name="buffer_get_video_afd_meta"
+                    c:identifier="gst_buffer_get_video_afd_meta"
+                    version="1.18"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-anc.h"
+           line="248">Gets the #GstVideoAFDMeta that might be present on @b.
+Note: there may be two #GstVideoAFDMeta structs for interlaced video.</doc>
+      <source-position filename="gst-libs/gst/video/video-anc.h" line="263"/>
+      <parameters>
+        <parameter name="b">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-anc.h"
+               line="250">A #GstBuffer</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="buffer_get_video_affine_transformation_meta"
+                    c:identifier="gst_buffer_get_video_affine_transformation_meta"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/gstvideoaffinetransformationmeta.h"
+                       line="70"/>
+      <parameters>
+        <parameter name="b">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="buffer_get_video_bar_meta"
+                    c:identifier="gst_buffer_get_video_bar_meta"
+                    version="1.18"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-anc.h" line="314"/>
+      <parameters>
+        <parameter name="b">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-anc.h"
+               line="319">A #GstBuffer</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="buffer_get_video_caption_meta"
+                    c:identifier="gst_buffer_get_video_caption_meta"
+                    version="1.16"
+                    introspectable="0">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-anc.h"
+           line="414">Gets the #GstVideoCaptionMeta that might be present on @b.</doc>
+      <source-position filename="gst-libs/gst/video/video-anc.h" line="425"/>
+      <parameters>
+        <parameter name="b">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-anc.h"
+               line="416">A #GstBuffer</doc>
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="buffer_get_video_crop_meta"
+                    c:identifier="gst_buffer_get_video_crop_meta"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/gstvideometa.h"
+                       line="163"/>
+      <parameters>
+        <parameter name="b">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="buffer_get_video_gl_texture_upload_meta"
+                    c:identifier="gst_buffer_get_video_gl_texture_upload_meta"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/gstvideometa.h"
+                       line="286"/>
+      <parameters>
+        <parameter name="b">
+        </parameter>
+      </parameters>
+    </function-macro>
     <function name="buffer_get_video_meta"
               c:identifier="gst_buffer_get_video_meta">
-      <doc xml:space="preserve">Find the #GstVideoMeta on @buffer with the lowest @id.
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/gstvideometa.c"
+           line="154">Find the #GstVideoMeta on @buffer with the lowest @id.
 
 Buffers can contain multiple #GstVideoMeta metadata items when dealing with
 multiview buffers.</doc>
+      <source-position filename="gst-libs/gst/video/gstvideometa.h"
+                       line="107"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">the #GstVideoMeta with lowest id (usually 0) or %NULL when there
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideometa.c"
+             line="163">the #GstVideoMeta with lowest id (usually 0) or %NULL when there
 is no such metadata on @buffer.</doc>
         <type name="VideoMeta" c:type="GstVideoMeta*"/>
       </return-value>
       <parameters>
         <parameter name="buffer" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstBuffer</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideometa.c"
+               line="156">a #GstBuffer</doc>
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </parameter>
       </parameters>
     </function>
     <function name="buffer_get_video_meta_id"
               c:identifier="gst_buffer_get_video_meta_id">
-      <doc xml:space="preserve">Find the #GstVideoMeta on @buffer with the given @id.
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/gstvideometa.c"
+           line="186">Find the #GstVideoMeta on @buffer with the given @id.
 
 Buffers can contain multiple #GstVideoMeta metadata items when dealing with
 multiview buffers.</doc>
+      <source-position filename="gst-libs/gst/video/gstvideometa.h"
+                       line="110"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">the #GstVideoMeta with @id or %NULL when there is no such metadata
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideometa.c"
+             line="196">the #GstVideoMeta with @id or %NULL when there is no such metadata
 on @buffer.</doc>
         <type name="VideoMeta" c:type="GstVideoMeta*"/>
       </return-value>
       <parameters>
         <parameter name="buffer" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstBuffer</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideometa.c"
+               line="188">a #GstBuffer</doc>
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </parameter>
         <parameter name="id" transfer-ownership="none">
-          <doc xml:space="preserve">a metadata id</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideometa.c"
+               line="189">a metadata id</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
       </parameters>
     </function>
+    <function-macro name="buffer_get_video_multiview_meta"
+                    c:identifier="gst_buffer_get_video_multiview_meta"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-multiview.h"
+                       line="78"/>
+      <parameters>
+        <parameter name="b">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="buffer_get_video_overlay_composition_meta"
+                    c:identifier="gst_buffer_get_video_overlay_composition_meta"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-overlay-composition.h"
+                       line="295"/>
+      <parameters>
+        <parameter name="b">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="buffer_get_video_region_of_interest_meta"
+                    c:identifier="gst_buffer_get_video_region_of_interest_meta"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/gstvideometa.h"
+                       line="340"/>
+      <parameters>
+        <parameter name="b">
+        </parameter>
+      </parameters>
+    </function-macro>
     <function name="buffer_get_video_region_of_interest_meta_id"
               c:identifier="gst_buffer_get_video_region_of_interest_meta_id">
-      <doc xml:space="preserve">Find the #GstVideoRegionOfInterestMeta on @buffer with the given @id.
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/gstvideometa.c"
+           line="917">Find the #GstVideoRegionOfInterestMeta on @buffer with the given @id.
 
 Buffers can contain multiple #GstVideoRegionOfInterestMeta metadata items if
 multiple regions of interests are marked on a frame.</doc>
+      <source-position filename="gst-libs/gst/video/gstvideometa.h"
+                       line="343"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">the #GstVideoRegionOfInterestMeta with @id or %NULL when there is
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideometa.c"
+             line="927">the #GstVideoRegionOfInterestMeta with @id or %NULL when there is
 no such metadata on @buffer.</doc>
         <type name="VideoRegionOfInterestMeta"
               c:type="GstVideoRegionOfInterestMeta*"/>
       </return-value>
       <parameters>
         <parameter name="buffer" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstBuffer</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideometa.c"
+               line="919">a #GstBuffer</doc>
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </parameter>
         <parameter name="id" transfer-ownership="none">
-          <doc xml:space="preserve">a metadata id</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideometa.c"
+               line="920">a metadata id</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
       </parameters>
     </function>
+    <function-macro name="buffer_get_video_time_code_meta"
+                    c:identifier="gst_buffer_get_video_time_code_meta"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/gstvideometa.h"
+                       line="395"/>
+      <parameters>
+        <parameter name="b">
+        </parameter>
+      </parameters>
+    </function-macro>
     <function name="buffer_pool_config_get_video_alignment"
               c:identifier="gst_buffer_pool_config_get_video_alignment">
-      <doc xml:space="preserve">Get the video alignment from the bufferpool configuration @config in
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/gstvideopool.c"
+           line="69">Get the video alignment from the bufferpool configuration @config in
 in @align</doc>
+      <source-position filename="gst-libs/gst/video/gstvideopool.h" line="54"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE if @config could be parsed correctly.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideopool.c"
+             line="77">%TRUE if @config could be parsed correctly.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="config" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstStructure</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideopool.c"
+               line="71">a #GstStructure</doc>
           <type name="Gst.Structure" c:type="GstStructure*"/>
         </parameter>
         <parameter name="align" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstVideoAlignment</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideopool.c"
+               line="72">a #GstVideoAlignment</doc>
           <type name="VideoAlignment" c:type="GstVideoAlignment*"/>
         </parameter>
       </parameters>
     </function>
     <function name="buffer_pool_config_set_video_alignment"
               c:identifier="gst_buffer_pool_config_set_video_alignment">
-      <doc xml:space="preserve">Set the video alignment in @align to the bufferpool configuration
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/gstvideopool.c"
+           line="43">Set the video alignment in @align to the bufferpool configuration
 @config</doc>
+      <source-position filename="gst-libs/gst/video/gstvideopool.h" line="51"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="config" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstStructure</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideopool.c"
+               line="45">a #GstStructure</doc>
           <type name="Gst.Structure" c:type="GstStructure*"/>
         </parameter>
         <parameter name="align" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstVideoAlignment</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/gstvideopool.c"
+               line="46">a #GstVideoAlignment</doc>
           <type name="VideoAlignment" c:type="GstVideoAlignment*"/>
         </parameter>
       </parameters>
     </function>
+    <function-macro name="buffer_remove_video_overlay_composition_meta"
+                    c:identifier="gst_buffer_remove_video_overlay_composition_meta"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/video/video-overlay-composition.h"
+                       line="297"/>
+      <parameters>
+        <parameter name="b">
+        </parameter>
+        <parameter name="m">
+        </parameter>
+      </parameters>
+    </function-macro>
     <function name="is_video_overlay_prepare_window_handle_message"
               c:identifier="gst_is_video_overlay_prepare_window_handle_message">
-      <doc xml:space="preserve">Convenience function to check if the given message is a
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/videooverlay.c"
+           line="497">Convenience function to check if the given message is a
 "prepare-window-handle" message from a #GstVideoOverlay.</doc>
+      <source-position filename="gst-libs/gst/video/videooverlay.h"
+                       line="105"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">whether @msg is a "prepare-window-handle" message</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/videooverlay.c"
+             line="504">whether @msg is a "prepare-window-handle" message</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="msg" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstMessage</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/videooverlay.c"
+               line="499">a #GstMessage</doc>
           <type name="Gst.Message" c:type="GstMessage*"/>
         </parameter>
       </parameters>
@@ -13139,14 +21824,19 @@ in @align</doc>
     <function name="navigation_event_get_type"
               c:identifier="gst_navigation_event_get_type"
               moved-to="Navigation.event_get_type">
-      <doc xml:space="preserve">Inspect a #GstEvent and return the #GstNavigationEventType of the event, or
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/navigation.c"
+           line="706">Inspect a #GstEvent and return the #GstNavigationEventType of the event, or
 #GST_NAVIGATION_EVENT_INVALID if the event is not a #GstNavigation event.</doc>
+      <source-position filename="gst-libs/gst/video/navigation.h" line="282"/>
       <return-value transfer-ownership="none">
         <type name="NavigationEventType" c:type="GstNavigationEventType"/>
       </return-value>
       <parameters>
         <parameter name="event" transfer-ownership="none">
-          <doc xml:space="preserve">A #GstEvent to inspect.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/navigation.c"
+               line="708">A #GstEvent to inspect.</doc>
           <type name="Gst.Event" c:type="GstEvent*"/>
         </parameter>
       </parameters>
@@ -13154,15 +21844,22 @@ in @align</doc>
     <function name="navigation_event_parse_command"
               c:identifier="gst_navigation_event_parse_command"
               moved-to="Navigation.event_parse_command">
-      <doc xml:space="preserve">Inspect a #GstNavigation command event and retrieve the enum value of the
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/navigation.c"
+           line="895">Inspect a #GstNavigation command event and retrieve the enum value of the
 associated command.</doc>
+      <source-position filename="gst-libs/gst/video/navigation.h" line="302"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">TRUE if the navigation command could be extracted, otherwise FALSE.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/navigation.c"
+             line="904">TRUE if the navigation command could be extracted, otherwise FALSE.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="event" transfer-ownership="none">
-          <doc xml:space="preserve">A #GstEvent to inspect.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/navigation.c"
+               line="897">A #GstEvent to inspect.</doc>
           <type name="Gst.Event" c:type="GstEvent*"/>
         </parameter>
         <parameter name="command"
@@ -13171,7 +21868,9 @@ associated command.</doc>
                    transfer-ownership="full"
                    optional="1"
                    allow-none="1">
-          <doc xml:space="preserve">Pointer to GstNavigationCommand to receive the
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/navigation.c"
+               line="898">Pointer to GstNavigationCommand to receive the
     type of the navigation event.</doc>
           <type name="NavigationCommand" c:type="GstNavigationCommand*"/>
         </parameter>
@@ -13180,12 +21879,15 @@ associated command.</doc>
     <function name="navigation_event_parse_key_event"
               c:identifier="gst_navigation_event_parse_key_event"
               moved-to="Navigation.event_parse_key_event">
+      <source-position filename="gst-libs/gst/video/navigation.h" line="285"/>
       <return-value transfer-ownership="none">
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="event" transfer-ownership="none">
-          <doc xml:space="preserve">A #GstEvent to inspect.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/navigation.c"
+               line="750">A #GstEvent to inspect.</doc>
           <type name="Gst.Event" c:type="GstEvent*"/>
         </parameter>
         <parameter name="key"
@@ -13194,7 +21896,9 @@ associated command.</doc>
                    transfer-ownership="none"
                    optional="1"
                    allow-none="1">
-          <doc xml:space="preserve">A pointer to a location to receive
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/navigation.c"
+               line="751">A pointer to a location to receive
     the string identifying the key press. The returned string is owned by the
     event, and valid only until the event is unreffed.</doc>
           <type name="utf8" c:type="const gchar**"/>
@@ -13204,17 +21908,24 @@ associated command.</doc>
     <function name="navigation_event_parse_mouse_button_event"
               c:identifier="gst_navigation_event_parse_mouse_button_event"
               moved-to="Navigation.event_parse_mouse_button_event">
-      <doc xml:space="preserve">Retrieve the details of either a #GstNavigation mouse button press event or
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/navigation.c"
+           line="775">Retrieve the details of either a #GstNavigation mouse button press event or
 a mouse button release event. Determine which type the event is using
 gst_navigation_event_get_type() to retrieve the #GstNavigationEventType.</doc>
+      <source-position filename="gst-libs/gst/video/navigation.h" line="289"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">TRUE if the button number and both coordinates could be extracted,
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/navigation.c"
+             line="789">TRUE if the button number and both coordinates could be extracted,
     otherwise FALSE.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="event" transfer-ownership="none">
-          <doc xml:space="preserve">A #GstEvent to inspect.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/navigation.c"
+               line="777">A #GstEvent to inspect.</doc>
           <type name="Gst.Event" c:type="GstEvent*"/>
         </parameter>
         <parameter name="button"
@@ -13223,7 +21934,9 @@ gst_navigation_event_get_type() to retrieve the #GstNavigationEventType.</doc>
                    transfer-ownership="full"
                    optional="1"
                    allow-none="1">
-          <doc xml:space="preserve">Pointer to a gint that will receive the button
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/navigation.c"
+               line="778">Pointer to a gint that will receive the button
     number associated with the event.</doc>
           <type name="gint" c:type="gint*"/>
         </parameter>
@@ -13233,7 +21946,9 @@ gst_navigation_event_get_type() to retrieve the #GstNavigationEventType.</doc>
                    transfer-ownership="full"
                    optional="1"
                    allow-none="1">
-          <doc xml:space="preserve">Pointer to a gdouble to receive the x coordinate of the
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/navigation.c"
+               line="780">Pointer to a gdouble to receive the x coordinate of the
     mouse button event.</doc>
           <type name="gdouble" c:type="gdouble*"/>
         </parameter>
@@ -13243,7 +21958,9 @@ gst_navigation_event_get_type() to retrieve the #GstNavigationEventType.</doc>
                    transfer-ownership="full"
                    optional="1"
                    allow-none="1">
-          <doc xml:space="preserve">Pointer to a gdouble to receive the y coordinate of the
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/navigation.c"
+               line="782">Pointer to a gdouble to receive the y coordinate of the
     mouse button event.</doc>
           <type name="gdouble" c:type="gdouble*"/>
         </parameter>
@@ -13252,15 +21969,70 @@ gst_navigation_event_get_type() to retrieve the #GstNavigationEventType.</doc>
     <function name="navigation_event_parse_mouse_move_event"
               c:identifier="gst_navigation_event_parse_mouse_move_event"
               moved-to="Navigation.event_parse_mouse_move_event">
-      <doc xml:space="preserve">Inspect a #GstNavigation mouse movement event and extract the coordinates
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/navigation.c"
+           line="817">Inspect a #GstNavigation mouse movement event and extract the coordinates
+of the event.</doc>
+      <source-position filename="gst-libs/gst/video/navigation.h" line="293"/>
+      <return-value transfer-ownership="none">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/navigation.c"
+             line="828">TRUE if both coordinates could be extracted, otherwise FALSE.</doc>
+        <type name="gboolean" c:type="gboolean"/>
+      </return-value>
+      <parameters>
+        <parameter name="event" transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/navigation.c"
+               line="819">A #GstEvent to inspect.</doc>
+          <type name="Gst.Event" c:type="GstEvent*"/>
+        </parameter>
+        <parameter name="x"
+                   direction="out"
+                   caller-allocates="0"
+                   transfer-ownership="full"
+                   optional="1"
+                   allow-none="1">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/navigation.c"
+               line="820">Pointer to a gdouble to receive the x coordinate of the
+    mouse movement.</doc>
+          <type name="gdouble" c:type="gdouble*"/>
+        </parameter>
+        <parameter name="y"
+                   direction="out"
+                   caller-allocates="0"
+                   transfer-ownership="full"
+                   optional="1"
+                   allow-none="1">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/navigation.c"
+               line="822">Pointer to a gdouble to receive the y coordinate of the
+    mouse movement.</doc>
+          <type name="gdouble" c:type="gdouble*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="navigation_event_parse_mouse_scroll_event"
+              c:identifier="gst_navigation_event_parse_mouse_scroll_event"
+              moved-to="Navigation.event_parse_mouse_scroll_event"
+              version="1.18">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/navigation.c"
+           line="851">Inspect a #GstNavigation mouse scroll event and extract the coordinates
 of the event.</doc>
+      <source-position filename="gst-libs/gst/video/navigation.h" line="297"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">TRUE if both coordinates could be extracted, otherwise FALSE.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/navigation.c"
+             line="866">TRUE if all coordinates could be extracted, otherwise FALSE.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="event" transfer-ownership="none">
-          <doc xml:space="preserve">A #GstEvent to inspect.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/navigation.c"
+               line="853">A #GstEvent to inspect.</doc>
           <type name="Gst.Event" c:type="GstEvent*"/>
         </parameter>
         <parameter name="x"
@@ -13269,7 +22041,9 @@ of the event.</doc>
                    transfer-ownership="full"
                    optional="1"
                    allow-none="1">
-          <doc xml:space="preserve">Pointer to a gdouble to receive the x coordinate of the
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/navigation.c"
+               line="854">Pointer to a gdouble to receive the x coordinate of the
     mouse movement.</doc>
           <type name="gdouble" c:type="gdouble*"/>
         </parameter>
@@ -13279,7 +22053,33 @@ of the event.</doc>
                    transfer-ownership="full"
                    optional="1"
                    allow-none="1">
-          <doc xml:space="preserve">Pointer to a gdouble to receive the y coordinate of the
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/navigation.c"
+               line="856">Pointer to a gdouble to receive the y coordinate of the
+    mouse movement.</doc>
+          <type name="gdouble" c:type="gdouble*"/>
+        </parameter>
+        <parameter name="delta_x"
+                   direction="out"
+                   caller-allocates="0"
+                   transfer-ownership="full"
+                   optional="1"
+                   allow-none="1">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/navigation.c"
+               line="858">Pointer to a gdouble to receive the delta_x coordinate of the
+    mouse movement.</doc>
+          <type name="gdouble" c:type="gdouble*"/>
+        </parameter>
+        <parameter name="delta_y"
+                   direction="out"
+                   caller-allocates="0"
+                   transfer-ownership="full"
+                   optional="1"
+                   allow-none="1">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/navigation.c"
+               line="860">Pointer to a gdouble to receive the delta_y coordinate of the
     mouse movement.</doc>
           <type name="gdouble" c:type="gdouble*"/>
         </parameter>
@@ -13288,17 +22088,24 @@ of the event.</doc>
     <function name="navigation_message_get_type"
               c:identifier="gst_navigation_message_get_type"
               moved-to="Navigation.message_get_type">
-      <doc xml:space="preserve">Check a bus message to see if it is a #GstNavigation event, and return
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/navigation.c"
+           line="467">Check a bus message to see if it is a #GstNavigation event, and return
 the #GstNavigationMessageType identifying the type of the message if so.</doc>
+      <source-position filename="gst-libs/gst/video/navigation.h" line="213"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">The type of the #GstMessage, or
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/navigation.c"
+             line="474">The type of the #GstMessage, or
 #GST_NAVIGATION_MESSAGE_INVALID if the message is not a #GstNavigation
 notification.</doc>
         <type name="NavigationMessageType" c:type="GstNavigationMessageType"/>
       </return-value>
       <parameters>
         <parameter name="message" transfer-ownership="none">
-          <doc xml:space="preserve">A #GstMessage to inspect.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/navigation.c"
+               line="469">A #GstMessage to inspect.</doc>
           <type name="Gst.Message" c:type="GstMessage*"/>
         </parameter>
       </parameters>
@@ -13306,25 +22113,36 @@ notification.</doc>
     <function name="navigation_message_new_angles_changed"
               c:identifier="gst_navigation_message_new_angles_changed"
               moved-to="Navigation.message_new_angles_changed">
-      <doc xml:space="preserve">Creates a new #GstNavigation message with type
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/navigation.c"
+           line="639">Creates a new #GstNavigation message with type
 #GST_NAVIGATION_MESSAGE_ANGLES_CHANGED for notifying an application
 that the current angle, or current number of angles available in a
 multiangle video has changed.</doc>
+      <source-position filename="gst-libs/gst/video/navigation.h" line="227"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">The new #GstMessage.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/navigation.c"
+             line="650">The new #GstMessage.</doc>
         <type name="Gst.Message" c:type="GstMessage*"/>
       </return-value>
       <parameters>
         <parameter name="src" transfer-ownership="none">
-          <doc xml:space="preserve">A #GstObject to set as source of the new message.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/navigation.c"
+               line="641">A #GstObject to set as source of the new message.</doc>
           <type name="Gst.Object" c:type="GstObject*"/>
         </parameter>
         <parameter name="cur_angle" transfer-ownership="none">
-          <doc xml:space="preserve">The currently selected angle.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/navigation.c"
+               line="642">The currently selected angle.</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
         <parameter name="n_angles" transfer-ownership="none">
-          <doc xml:space="preserve">The number of viewing angles now available.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/navigation.c"
+               line="643">The number of viewing angles now available.</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
       </parameters>
@@ -13332,15 +22150,22 @@ multiangle video has changed.</doc>
     <function name="navigation_message_new_commands_changed"
               c:identifier="gst_navigation_message_new_commands_changed"
               moved-to="Navigation.message_new_commands_changed">
-      <doc xml:space="preserve">Creates a new #GstNavigation message with type
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/navigation.c"
+           line="616">Creates a new #GstNavigation message with type
 #GST_NAVIGATION_MESSAGE_COMMANDS_CHANGED</doc>
+      <source-position filename="gst-libs/gst/video/navigation.h" line="224"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">The new #GstMessage.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/navigation.c"
+             line="623">The new #GstMessage.</doc>
         <type name="Gst.Message" c:type="GstMessage*"/>
       </return-value>
       <parameters>
         <parameter name="src" transfer-ownership="none">
-          <doc xml:space="preserve">A #GstObject to set as source of the new message.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/navigation.c"
+               line="618">A #GstObject to set as source of the new message.</doc>
           <type name="Gst.Object" c:type="GstObject*"/>
         </parameter>
       </parameters>
@@ -13349,19 +22174,28 @@ multiangle video has changed.</doc>
               c:identifier="gst_navigation_message_new_event"
               moved-to="Navigation.message_new_event"
               version="1.6">
-      <doc xml:space="preserve">Creates a new #GstNavigation message with type
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/navigation.c"
+           line="561">Creates a new #GstNavigation message with type
 #GST_NAVIGATION_MESSAGE_EVENT.</doc>
+      <source-position filename="gst-libs/gst/video/navigation.h" line="237"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">The new #GstMessage.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/navigation.c"
+             line="569">The new #GstMessage.</doc>
         <type name="Gst.Message" c:type="GstMessage*"/>
       </return-value>
       <parameters>
         <parameter name="src" transfer-ownership="none">
-          <doc xml:space="preserve">A #GstObject to set as source of the new message.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/navigation.c"
+               line="563">A #GstObject to set as source of the new message.</doc>
           <type name="Gst.Object" c:type="GstObject*"/>
         </parameter>
         <parameter name="event" transfer-ownership="none">
-          <doc xml:space="preserve">A navigation #GstEvent</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/navigation.c"
+               line="564">A navigation #GstEvent</doc>
           <type name="Gst.Event" c:type="GstEvent*"/>
         </parameter>
       </parameters>
@@ -13369,19 +22203,28 @@ multiangle video has changed.</doc>
     <function name="navigation_message_new_mouse_over"
               c:identifier="gst_navigation_message_new_mouse_over"
               moved-to="Navigation.message_new_mouse_over">
-      <doc xml:space="preserve">Creates a new #GstNavigation message with type
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/navigation.c"
+           line="507">Creates a new #GstNavigation message with type
 #GST_NAVIGATION_MESSAGE_MOUSE_OVER.</doc>
+      <source-position filename="gst-libs/gst/video/navigation.h" line="216"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">The new #GstMessage.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/navigation.c"
+             line="516">The new #GstMessage.</doc>
         <type name="Gst.Message" c:type="GstMessage*"/>
       </return-value>
       <parameters>
         <parameter name="src" transfer-ownership="none">
-          <doc xml:space="preserve">A #GstObject to set as source of the new message.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/navigation.c"
+               line="509">A #GstObject to set as source of the new message.</doc>
           <type name="Gst.Object" c:type="GstObject*"/>
         </parameter>
         <parameter name="active" transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE if the mouse has entered a clickable area of the display.
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/navigation.c"
+               line="510">%TRUE if the mouse has entered a clickable area of the display.
 %FALSE if it over a non-clickable area.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </parameter>
@@ -13390,15 +22233,22 @@ multiangle video has changed.</doc>
     <function name="navigation_message_parse_angles_changed"
               c:identifier="gst_navigation_message_parse_angles_changed"
               moved-to="Navigation.message_parse_angles_changed">
-      <doc xml:space="preserve">Parse a #GstNavigation message of type GST_NAVIGATION_MESSAGE_ANGLES_CHANGED
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/navigation.c"
+           line="668">Parse a #GstNavigation message of type GST_NAVIGATION_MESSAGE_ANGLES_CHANGED
 and extract the @cur_angle and @n_angles parameters.</doc>
+      <source-position filename="gst-libs/gst/video/navigation.h" line="232"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE if the message could be successfully parsed. %FALSE if not.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/navigation.c"
+             line="679">%TRUE if the message could be successfully parsed. %FALSE if not.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="message" transfer-ownership="none">
-          <doc xml:space="preserve">A #GstMessage to inspect.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/navigation.c"
+               line="670">A #GstMessage to inspect.</doc>
           <type name="Gst.Message" c:type="GstMessage*"/>
         </parameter>
         <parameter name="cur_angle"
@@ -13407,7 +22257,9 @@ and extract the @cur_angle and @n_angles parameters.</doc>
                    transfer-ownership="full"
                    optional="1"
                    allow-none="1">
-          <doc xml:space="preserve">A pointer to a #guint to receive the new
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/navigation.c"
+               line="671">A pointer to a #guint to receive the new
     current angle number, or NULL</doc>
           <type name="guint" c:type="guint*"/>
         </parameter>
@@ -13417,7 +22269,9 @@ and extract the @cur_angle and @n_angles parameters.</doc>
                    transfer-ownership="full"
                    optional="1"
                    allow-none="1">
-          <doc xml:space="preserve">A pointer to a #guint to receive the new angle
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/navigation.c"
+               line="673">A pointer to a #guint to receive the new angle
     count, or NULL.</doc>
           <type name="guint" c:type="guint*"/>
         </parameter>
@@ -13427,16 +22281,23 @@ and extract the @cur_angle and @n_angles parameters.</doc>
               c:identifier="gst_navigation_message_parse_event"
               moved-to="Navigation.message_parse_event"
               version="1.6">
-      <doc xml:space="preserve">Parse a #GstNavigation message of type #GST_NAVIGATION_MESSAGE_EVENT
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/navigation.c"
+           line="587">Parse a #GstNavigation message of type #GST_NAVIGATION_MESSAGE_EVENT
 and extract contained #GstEvent. The caller must unref the @event when done
 with it.</doc>
+      <source-position filename="gst-libs/gst/video/navigation.h" line="241"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE if the message could be successfully parsed. %FALSE if not.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/navigation.c"
+             line="597">%TRUE if the message could be successfully parsed. %FALSE if not.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="message" transfer-ownership="none">
-          <doc xml:space="preserve">A #GstMessage to inspect.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/navigation.c"
+               line="589">A #GstMessage to inspect.</doc>
           <type name="Gst.Message" c:type="GstMessage*"/>
         </parameter>
         <parameter name="event"
@@ -13445,7 +22306,9 @@ with it.</doc>
                    transfer-ownership="full"
                    optional="1"
                    allow-none="1">
-          <doc xml:space="preserve">a pointer to a #GstEvent to receive
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/navigation.c"
+               line="590">a pointer to a #GstEvent to receive
     the contained navigation event.</doc>
           <type name="Gst.Event" c:type="GstEvent**"/>
         </parameter>
@@ -13454,16 +22317,23 @@ with it.</doc>
     <function name="navigation_message_parse_mouse_over"
               c:identifier="gst_navigation_message_parse_mouse_over"
               moved-to="Navigation.message_parse_mouse_over">
-      <doc xml:space="preserve">Parse a #GstNavigation message of type #GST_NAVIGATION_MESSAGE_MOUSE_OVER
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/navigation.c"
+           line="533">Parse a #GstNavigation message of type #GST_NAVIGATION_MESSAGE_MOUSE_OVER
 and extract the active/inactive flag. If the mouse over event is marked
 active, it indicates that the mouse is over a clickable area.</doc>
+      <source-position filename="gst-libs/gst/video/navigation.h" line="220"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE if the message could be successfully parsed. %FALSE if not.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/navigation.c"
+             line="543">%TRUE if the message could be successfully parsed. %FALSE if not.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="message" transfer-ownership="none">
-          <doc xml:space="preserve">A #GstMessage to inspect.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/navigation.c"
+               line="535">A #GstMessage to inspect.</doc>
           <type name="Gst.Message" c:type="GstMessage*"/>
         </parameter>
         <parameter name="active"
@@ -13472,7 +22342,9 @@ active, it indicates that the mouse is over a clickable area.</doc>
                    transfer-ownership="full"
                    optional="1"
                    allow-none="1">
-          <doc xml:space="preserve">A pointer to a gboolean to receive the
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/navigation.c"
+               line="536">A pointer to a gboolean to receive the
     active/inactive state, or NULL.</doc>
           <type name="gboolean" c:type="gboolean*"/>
         </parameter>
@@ -13481,16 +22353,23 @@ active, it indicates that the mouse is over a clickable area.</doc>
     <function name="navigation_query_get_type"
               c:identifier="gst_navigation_query_get_type"
               moved-to="Navigation.query_get_type">
-      <doc xml:space="preserve">Inspect a #GstQuery and return the #GstNavigationQueryType associated with
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/navigation.c"
+           line="187">Inspect a #GstQuery and return the #GstNavigationQueryType associated with
 it if it is a #GstNavigation query.</doc>
+      <source-position filename="gst-libs/gst/video/navigation.h" line="154"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">The #GstNavigationQueryType of the query, or
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/navigation.c"
+             line="194">The #GstNavigationQueryType of the query, or
 #GST_NAVIGATION_QUERY_INVALID</doc>
         <type name="NavigationQueryType" c:type="GstNavigationQueryType"/>
       </return-value>
       <parameters>
         <parameter name="query" transfer-ownership="none">
-          <doc xml:space="preserve">The query to inspect</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/navigation.c"
+               line="189">The query to inspect</doc>
           <type name="Gst.Query" c:type="GstQuery*"/>
         </parameter>
       </parameters>
@@ -13498,37 +22377,54 @@ it if it is a #GstNavigation query.</doc>
     <function name="navigation_query_new_angles"
               c:identifier="gst_navigation_query_new_angles"
               moved-to="Navigation.query_new_angles">
-      <doc xml:space="preserve">Create a new #GstNavigation angles query. When executed, it will
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/navigation.c"
+           line="383">Create a new #GstNavigation angles query. When executed, it will
 query the pipeline for the set of currently available angles, which may be
 greater than one in a multiangle video.</doc>
+      <source-position filename="gst-libs/gst/video/navigation.h" line="175"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">The new query.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/navigation.c"
+             line="390">The new query.</doc>
         <type name="Gst.Query" c:type="GstQuery*"/>
       </return-value>
     </function>
     <function name="navigation_query_new_commands"
               c:identifier="gst_navigation_query_new_commands"
               moved-to="Navigation.query_new_commands">
-      <doc xml:space="preserve">Create a new #GstNavigation commands query. When executed, it will
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/navigation.c"
+           line="222">Create a new #GstNavigation commands query. When executed, it will
 query the pipeline for the set of currently available commands.</doc>
+      <source-position filename="gst-libs/gst/video/navigation.h" line="157"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">The new query.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/navigation.c"
+             line="228">The new query.</doc>
         <type name="Gst.Query" c:type="GstQuery*"/>
       </return-value>
     </function>
     <function name="navigation_query_parse_angles"
               c:identifier="gst_navigation_query_parse_angles"
               moved-to="Navigation.query_parse_angles">
-      <doc xml:space="preserve">Parse the current angle number in the #GstNavigation angles @query into the
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/navigation.c"
+           line="426">Parse the current angle number in the #GstNavigation angles @query into the
 #guint pointed to by the @cur_angle variable, and the number of available
 angles into the #guint pointed to by the @n_angles variable.</doc>
+      <source-position filename="gst-libs/gst/video/navigation.h" line="182"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE if the query could be successfully parsed. %FALSE if not.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/navigation.c"
+             line="438">%TRUE if the query could be successfully parsed. %FALSE if not.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="query" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstQuery</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/navigation.c"
+               line="428">a #GstQuery</doc>
           <type name="Gst.Query" c:type="GstQuery*"/>
         </parameter>
         <parameter name="cur_angle"
@@ -13537,7 +22433,9 @@ angles into the #guint pointed to by the @n_angles variable.</doc>
                    transfer-ownership="full"
                    optional="1"
                    allow-none="1">
-          <doc xml:space="preserve">Pointer to a #guint into which to store the
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/navigation.c"
+               line="429">Pointer to a #guint into which to store the
     currently selected angle value from the query, or NULL</doc>
           <type name="guint" c:type="guint*"/>
         </parameter>
@@ -13547,7 +22445,9 @@ angles into the #guint pointed to by the @n_angles variable.</doc>
                    transfer-ownership="full"
                    optional="1"
                    allow-none="1">
-          <doc xml:space="preserve">Pointer to a #guint into which to store the
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/navigation.c"
+               line="431">Pointer to a #guint into which to store the
     number of angles value from the query, or NULL</doc>
           <type name="guint" c:type="guint*"/>
         </parameter>
@@ -13556,14 +22456,21 @@ angles into the #guint pointed to by the @n_angles variable.</doc>
     <function name="navigation_query_parse_commands_length"
               c:identifier="gst_navigation_query_parse_commands_length"
               moved-to="Navigation.query_parse_commands_length">
-      <doc xml:space="preserve">Parse the number of commands in the #GstNavigation commands @query.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/navigation.c"
+           line="314">Parse the number of commands in the #GstNavigation commands @query.</doc>
+      <source-position filename="gst-libs/gst/video/navigation.h" line="167"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE if the query could be successfully parsed. %FALSE if not.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/navigation.c"
+             line="321">%TRUE if the query could be successfully parsed. %FALSE if not.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="query" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstQuery</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/navigation.c"
+               line="316">a #GstQuery</doc>
           <type name="Gst.Query" c:type="GstQuery*"/>
         </parameter>
         <parameter name="n_cmds"
@@ -13572,7 +22479,9 @@ angles into the #guint pointed to by the @n_angles variable.</doc>
                    transfer-ownership="full"
                    optional="1"
                    allow-none="1">
-          <doc xml:space="preserve">the number of commands in this query.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/navigation.c"
+               line="317">the number of commands in this query.</doc>
           <type name="guint" c:type="guint*"/>
         </parameter>
       </parameters>
@@ -13580,20 +22489,29 @@ angles into the #guint pointed to by the @n_angles variable.</doc>
     <function name="navigation_query_parse_commands_nth"
               c:identifier="gst_navigation_query_parse_commands_nth"
               moved-to="Navigation.query_parse_commands_nth">
-      <doc xml:space="preserve">Parse the #GstNavigation command query and retrieve the @nth command from
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/navigation.c"
+           line="344">Parse the #GstNavigation command query and retrieve the @nth command from
 it into @cmd. If the list contains less elements than @nth, @cmd will be
 set to #GST_NAVIGATION_COMMAND_INVALID.</doc>
+      <source-position filename="gst-libs/gst/video/navigation.h" line="171"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE if the query could be successfully parsed. %FALSE if not.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/navigation.c"
+             line="354">%TRUE if the query could be successfully parsed. %FALSE if not.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="query" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstQuery</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/navigation.c"
+               line="346">a #GstQuery</doc>
           <type name="Gst.Query" c:type="GstQuery*"/>
         </parameter>
         <parameter name="nth" transfer-ownership="none">
-          <doc xml:space="preserve">the nth command to retrieve.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/navigation.c"
+               line="347">the nth command to retrieve.</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
         <parameter name="cmd"
@@ -13602,7 +22520,9 @@ set to #GST_NAVIGATION_COMMAND_INVALID.</doc>
                    transfer-ownership="full"
                    optional="1"
                    allow-none="1">
-          <doc xml:space="preserve">a pointer to store the nth command into.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/navigation.c"
+               line="348">a pointer to store the nth command into.</doc>
           <type name="NavigationCommand" c:type="GstNavigationCommand*"/>
         </parameter>
       </parameters>
@@ -13610,21 +22530,30 @@ set to #GST_NAVIGATION_COMMAND_INVALID.</doc>
     <function name="navigation_query_set_angles"
               c:identifier="gst_navigation_query_set_angles"
               moved-to="Navigation.query_set_angles">
-      <doc xml:space="preserve">Set the #GstNavigation angles query result field in @query.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/navigation.c"
+           line="405">Set the #GstNavigation angles query result field in @query.</doc>
+      <source-position filename="gst-libs/gst/video/navigation.h" line="178"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="query" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstQuery</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/navigation.c"
+               line="407">a #GstQuery</doc>
           <type name="Gst.Query" c:type="GstQuery*"/>
         </parameter>
         <parameter name="cur_angle" transfer-ownership="none">
-          <doc xml:space="preserve">the current viewing angle to set.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/navigation.c"
+               line="408">the current viewing angle to set.</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
         <parameter name="n_angles" transfer-ownership="none">
-          <doc xml:space="preserve">the number of viewing angles to set.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/navigation.c"
+               line="409">the number of viewing angles to set.</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
       </parameters>
@@ -13632,22 +22561,31 @@ set to #GST_NAVIGATION_COMMAND_INVALID.</doc>
     <function name="navigation_query_set_commandsv"
               c:identifier="gst_navigation_query_set_commandsv"
               moved-to="Navigation.query_set_commandsv">
-      <doc xml:space="preserve">Set the #GstNavigation command query result fields in @query. The number
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/navigation.c"
+           line="286">Set the #GstNavigation command query result fields in @query. The number
 of commands passed must be equal to @n_commands.</doc>
+      <source-position filename="gst-libs/gst/video/navigation.h" line="163"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="query" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstQuery</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/navigation.c"
+               line="288">a #GstQuery</doc>
           <type name="Gst.Query" c:type="GstQuery*"/>
         </parameter>
         <parameter name="n_cmds" transfer-ownership="none">
-          <doc xml:space="preserve">the number of commands to set.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/navigation.c"
+               line="289">the number of commands to set.</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
         <parameter name="cmds" transfer-ownership="none">
-          <doc xml:space="preserve">An array containing @n_cmds
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/navigation.c"
+               line="290">An array containing @n_cmds
     @GstNavigationCommand values.</doc>
           <array length="1" zero-terminated="0" c:type="GstNavigationCommand*">
             <type name="NavigationCommand" c:type="GstNavigationCommand"/>
@@ -13655,8 +22593,25 @@ of commands passed must be equal to @n_commands.</doc>
         </parameter>
       </parameters>
     </function>
+    <function name="video_afd_meta_api_get_type"
+              c:identifier="gst_video_afd_meta_api_get_type">
+      <source-position filename="gst-libs/gst/video/video-anc.h" line="242"/>
+      <return-value transfer-ownership="none">
+        <type name="GType" c:type="GType"/>
+      </return-value>
+    </function>
+    <function name="video_afd_meta_get_info"
+              c:identifier="gst_video_afd_meta_get_info"
+              moved-to="VideoAFDMeta.get_info">
+      <source-position filename="gst-libs/gst/video/video-anc.h" line="245"/>
+      <return-value transfer-ownership="none">
+        <type name="Gst.MetaInfo" c:type="const GstMetaInfo*"/>
+      </return-value>
+    </function>
     <function name="video_affine_transformation_meta_api_get_type"
               c:identifier="gst_video_affine_transformation_meta_api_get_type">
+      <source-position filename="gst-libs/gst/video/gstvideoaffinetransformationmeta.h"
+                       line="65"/>
       <return-value transfer-ownership="none">
         <type name="GType" c:type="GType"/>
       </return-value>
@@ -13664,34 +22619,64 @@ of commands passed must be equal to @n_commands.</doc>
     <function name="video_affine_transformation_meta_get_info"
               c:identifier="gst_video_affine_transformation_meta_get_info"
               moved-to="VideoAffineTransformationMeta.get_info">
+      <source-position filename="gst-libs/gst/video/gstvideoaffinetransformationmeta.h"
+                       line="68"/>
+      <return-value transfer-ownership="none">
+        <type name="Gst.MetaInfo" c:type="const GstMetaInfo*"/>
+      </return-value>
+    </function>
+    <function name="video_bar_meta_api_get_type"
+              c:identifier="gst_video_bar_meta_api_get_type">
+      <source-position filename="gst-libs/gst/video/video-anc.h" line="308"/>
+      <return-value transfer-ownership="none">
+        <type name="GType" c:type="GType"/>
+      </return-value>
+    </function>
+    <function name="video_bar_meta_get_info"
+              c:identifier="gst_video_bar_meta_get_info"
+              moved-to="VideoBarMeta.get_info">
+      <source-position filename="gst-libs/gst/video/video-anc.h" line="311"/>
       <return-value transfer-ownership="none">
         <type name="Gst.MetaInfo" c:type="const GstMetaInfo*"/>
       </return-value>
     </function>
     <function name="video_blend" c:identifier="gst_video_blend">
-      <doc xml:space="preserve">Lets you blend the @src image into the @dest image</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-blend.c"
+           line="279">Lets you blend the @src image into the @dest image</doc>
+      <source-position filename="gst-libs/gst/video/video-blend.h" line="36"/>
       <return-value transfer-ownership="none">
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="dest" transfer-ownership="none">
-          <doc xml:space="preserve">The #GstVideoFrame where to blend @src in</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-blend.c"
+               line="281">The #GstVideoFrame where to blend @src in</doc>
           <type name="VideoFrame" c:type="GstVideoFrame*"/>
         </parameter>
         <parameter name="src" transfer-ownership="none">
-          <doc xml:space="preserve">the #GstVideoFrame that we want to blend into</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-blend.c"
+               line="282">the #GstVideoFrame that we want to blend into</doc>
           <type name="VideoFrame" c:type="GstVideoFrame*"/>
         </parameter>
         <parameter name="x" transfer-ownership="none">
-          <doc xml:space="preserve">The x offset in pixel where the @src image should be blended</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-blend.c"
+               line="283">The x offset in pixel where the @src image should be blended</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
         <parameter name="y" transfer-ownership="none">
-          <doc xml:space="preserve">the y offset in pixel where the @src image should be blended</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-blend.c"
+               line="284">the y offset in pixel where the @src image should be blended</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
         <parameter name="global_alpha" transfer-ownership="none">
-          <doc xml:space="preserve">the global_alpha each per-pixel alpha value is multiplied
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-blend.c"
+               line="285">the global_alpha each per-pixel alpha value is multiplied
                with</doc>
           <type name="gfloat" c:type="gfloat"/>
         </parameter>
@@ -13699,35 +22684,48 @@ of commands passed must be equal to @n_commands.</doc>
     </function>
     <function name="video_blend_scale_linear_RGBA"
               c:identifier="gst_video_blend_scale_linear_RGBA">
-      <doc xml:space="preserve">Scales a buffer containing RGBA (or AYUV) video. This is an internal
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-blend.c"
+           line="139">Scales a buffer containing RGBA (or AYUV) video. This is an internal
 helper function which is used to scale subtitle overlays, and may be
 deprecated in the near future. Use #GstVideoScaler to scale video buffers
 instead.</doc>
+      <source-position filename="gst-libs/gst/video/video-blend.h" line="31"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="src" transfer-ownership="none">
-          <doc xml:space="preserve">the #GstVideoInfo describing the video data in @src_buffer</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-blend.c"
+               line="141">the #GstVideoInfo describing the video data in @src_buffer</doc>
           <type name="VideoInfo" c:type="GstVideoInfo*"/>
         </parameter>
         <parameter name="src_buffer" transfer-ownership="none">
-          <doc xml:space="preserve">the source buffer containing video pixels to scale</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-blend.c"
+               line="142">the source buffer containing video pixels to scale</doc>
           <type name="Gst.Buffer" c:type="GstBuffer*"/>
         </parameter>
         <parameter name="dest_height" transfer-ownership="none">
-          <doc xml:space="preserve">the height in pixels to scale the video data in @src_buffer to</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-blend.c"
+               line="143">the height in pixels to scale the video data in @src_buffer to</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
         <parameter name="dest_width" transfer-ownership="none">
-          <doc xml:space="preserve">the width in pixels to scale the video data in @src_buffer to</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-blend.c"
+               line="144">the width in pixels to scale the video data in @src_buffer to</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
         <parameter name="dest"
                    direction="out"
                    caller-allocates="1"
                    transfer-ownership="none">
-          <doc xml:space="preserve">pointer to a #GstVideoInfo structure that will be filled in
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-blend.c"
+               line="145">pointer to a #GstVideoInfo structure that will be filled in
     with the details for @dest_buffer</doc>
           <type name="VideoInfo" c:type="GstVideoInfo*"/>
         </parameter>
@@ -13735,7 +22733,9 @@ instead.</doc>
                    direction="out"
                    caller-allocates="0"
                    transfer-ownership="full">
-          <doc xml:space="preserve">a pointer to a #GstBuffer variable, which will be
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-blend.c"
+               line="147">a pointer to a #GstBuffer variable, which will be
     set to a newly-allocated buffer containing the scaled pixels.</doc>
           <type name="Gst.Buffer" c:type="GstBuffer**"/>
         </parameter>
@@ -13743,11 +22743,16 @@ instead.</doc>
     </function>
     <function name="video_calculate_display_ratio"
               c:identifier="gst_video_calculate_display_ratio">
-      <doc xml:space="preserve">Given the Pixel Aspect Ratio and size of an input video frame, and the
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video.c"
+           line="41">Given the Pixel Aspect Ratio and size of an input video frame, and the
 pixel aspect ratio of the intended display device, calculates the actual
 display ratio the video will be rendered with.</doc>
+      <source-position filename="gst-libs/gst/video/video.h" line="133"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">A boolean indicating success and a calculated Display Ratio in the
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video.c"
+             line="56">A boolean indicating success and a calculated Display Ratio in the
 dar_n and dar_d parameters.
 The return value is FALSE in the case of integer overflow or other error.</doc>
         <type name="gboolean" c:type="gboolean"/>
@@ -13757,44 +22762,61 @@ The return value is FALSE in the case of integer overflow or other error.</doc>
                    direction="out"
                    caller-allocates="0"
                    transfer-ownership="full">
-          <doc xml:space="preserve">Numerator of the calculated display_ratio</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video.c"
+               line="43">Numerator of the calculated display_ratio</doc>
           <type name="guint" c:type="guint*"/>
         </parameter>
         <parameter name="dar_d"
                    direction="out"
                    caller-allocates="0"
                    transfer-ownership="full">
-          <doc xml:space="preserve">Denominator of the calculated display_ratio</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video.c"
+               line="44">Denominator of the calculated display_ratio</doc>
           <type name="guint" c:type="guint*"/>
         </parameter>
         <parameter name="video_width" transfer-ownership="none">
-          <doc xml:space="preserve">Width of the video frame in pixels</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video.c"
+               line="45">Width of the video frame in pixels</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
         <parameter name="video_height" transfer-ownership="none">
-          <doc xml:space="preserve">Height of the video frame in pixels</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video.c"
+               line="46">Height of the video frame in pixels</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
         <parameter name="video_par_n" transfer-ownership="none">
-          <doc xml:space="preserve">Numerator of the pixel aspect ratio of the input video.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video.c"
+               line="47">Numerator of the pixel aspect ratio of the input video.</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
         <parameter name="video_par_d" transfer-ownership="none">
-          <doc xml:space="preserve">Denominator of the pixel aspect ratio of the input video.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video.c"
+               line="48">Denominator of the pixel aspect ratio of the input video.</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
         <parameter name="display_par_n" transfer-ownership="none">
-          <doc xml:space="preserve">Numerator of the pixel aspect ratio of the display device</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video.c"
+               line="49">Numerator of the pixel aspect ratio of the display device</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
         <parameter name="display_par_d" transfer-ownership="none">
-          <doc xml:space="preserve">Denominator of the pixel aspect ratio of the display device</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video.c"
+               line="50">Denominator of the pixel aspect ratio of the display device</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
       </parameters>
     </function>
     <function name="video_caption_meta_api_get_type"
               c:identifier="gst_video_caption_meta_api_get_type">
+      <source-position filename="gst-libs/gst/video/video-anc.h" line="407"/>
       <return-value transfer-ownership="none">
         <type name="GType" c:type="GType"/>
       </return-value>
@@ -13802,6 +22824,7 @@ The return value is FALSE in the case of integer overflow or other error.</doc>
     <function name="video_caption_meta_get_info"
               c:identifier="gst_video_caption_meta_get_info"
               moved-to="VideoCaptionMeta.get_info">
+      <source-position filename="gst-libs/gst/video/video-anc.h" line="411"/>
       <return-value transfer-ownership="none">
         <type name="Gst.MetaInfo" c:type="const GstMetaInfo*"/>
       </return-value>
@@ -13810,15 +22833,22 @@ The return value is FALSE in the case of integer overflow or other error.</doc>
               c:identifier="gst_video_caption_type_from_caps"
               moved-to="VideoCaptionType.from_caps"
               version="1.16">
-      <doc xml:space="preserve">Parses fixed Closed Caption #GstCaps and returns the corresponding caption
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-anc.c"
+           line="1051">Parses fixed Closed Caption #GstCaps and returns the corresponding caption
 type, or %GST_VIDEO_CAPTION_TYPE_UNKNOWN.</doc>
+      <source-position filename="gst-libs/gst/video/video-anc.h" line="381"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">#GstVideoCaptionType.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-anc.c"
+             line="1058">#GstVideoCaptionType.</doc>
         <type name="VideoCaptionType" c:type="GstVideoCaptionType"/>
       </return-value>
       <parameters>
         <parameter name="caps" transfer-ownership="none">
-          <doc xml:space="preserve">Fixed #GstCaps to parse</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-anc.c"
+               line="1053">Fixed #GstCaps to parse</doc>
           <type name="Gst.Caps" c:type="const GstCaps*"/>
         </parameter>
       </parameters>
@@ -13827,53 +22857,77 @@ type, or %GST_VIDEO_CAPTION_TYPE_UNKNOWN.</doc>
               c:identifier="gst_video_caption_type_to_caps"
               moved-to="VideoCaptionType.to_caps"
               version="1.16">
-      <doc xml:space="preserve">Creates new caps corresponding to @type.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-anc.c"
+           line="1091">Creates new caps corresponding to @type.</doc>
+      <source-position filename="gst-libs/gst/video/video-anc.h" line="385"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">new #GstCaps</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-anc.c"
+             line="1097">new #GstCaps</doc>
         <type name="Gst.Caps" c:type="GstCaps*"/>
       </return-value>
       <parameters>
         <parameter name="type" transfer-ownership="none">
-          <doc xml:space="preserve">#GstVideoCaptionType</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-anc.c"
+               line="1093">#GstVideoCaptionType</doc>
           <type name="VideoCaptionType" c:type="GstVideoCaptionType"/>
         </parameter>
       </parameters>
     </function>
     <function name="video_chroma_from_string"
               c:identifier="gst_video_chroma_from_string">
-      <doc xml:space="preserve">Convert @s to a #GstVideoChromaSite</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-chroma.c"
+           line="78">Convert @s to a #GstVideoChromaSite</doc>
+      <source-position filename="gst-libs/gst/video/video-chroma.h" line="56"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">a #GstVideoChromaSite or %GST_VIDEO_CHROMA_SITE_UNKNOWN when @s does
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-chroma.c"
+             line="84">a #GstVideoChromaSite or %GST_VIDEO_CHROMA_SITE_UNKNOWN when @s does
 not contain a valid chroma description.</doc>
         <type name="VideoChromaSite" c:type="GstVideoChromaSite"/>
       </return-value>
       <parameters>
         <parameter name="s" transfer-ownership="none">
-          <doc xml:space="preserve">a chromasite string</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-chroma.c"
+               line="80">a chromasite string</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
       </parameters>
     </function>
     <function name="video_chroma_resample"
               c:identifier="gst_video_chroma_resample">
-      <doc xml:space="preserve">Perform resampling of @width chroma pixels in @lines.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-chroma.c"
+           line="1040">Perform resampling of @width chroma pixels in @lines.</doc>
+      <source-position filename="gst-libs/gst/video/video-chroma.h"
+                       line="107"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="resample" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstVideoChromaResample</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-chroma.c"
+               line="1042">a #GstVideoChromaResample</doc>
           <type name="VideoChromaResample" c:type="GstVideoChromaResample*"/>
         </parameter>
         <parameter name="lines"
                    transfer-ownership="none"
                    nullable="1"
                    allow-none="1">
-          <doc xml:space="preserve">pixel lines</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-chroma.c"
+               line="1043">pixel lines</doc>
           <type name="gpointer" c:type="gpointer*"/>
         </parameter>
         <parameter name="width" transfer-ownership="none">
-          <doc xml:space="preserve">the number of pixels on one line</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-chroma.c"
+               line="1044">the number of pixels on one line</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
       </parameters>
@@ -13882,60 +22936,113 @@ not contain a valid chroma description.</doc>
               c:identifier="gst_video_chroma_resample_new"
               moved-to="VideoChromaResample.new"
               introspectable="0">
-      <doc xml:space="preserve">Create a new resampler object for the given parameters. When @h_factor or
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-chroma.c"
+           line="929">Create a new resampler object for the given parameters. When @h_factor or
 @v_factor is &gt; 0, upsampling will be used, otherwise subsampling is
 performed.</doc>
+      <source-position filename="gst-libs/gst/video/video-chroma.h" line="93"/>
       <return-value>
-        <doc xml:space="preserve">a new #GstVideoChromaResample that should be freed with
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-chroma.c"
+             line="942">a new #GstVideoChromaResample that should be freed with
     gst_video_chroma_resample_free() after usage.</doc>
         <type name="VideoChromaResample" c:type="GstVideoChromaResample*"/>
       </return-value>
       <parameters>
         <parameter name="method" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstVideoChromaMethod</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-chroma.c"
+               line="931">a #GstVideoChromaMethod</doc>
           <type name="VideoChromaMethod" c:type="GstVideoChromaMethod"/>
         </parameter>
         <parameter name="site" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstVideoChromaSite</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-chroma.c"
+               line="932">a #GstVideoChromaSite</doc>
           <type name="VideoChromaSite" c:type="GstVideoChromaSite"/>
         </parameter>
         <parameter name="flags" transfer-ownership="none">
-          <doc xml:space="preserve">#GstVideoChromaFlags</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-chroma.c"
+               line="933">#GstVideoChromaFlags</doc>
           <type name="VideoChromaFlags" c:type="GstVideoChromaFlags"/>
         </parameter>
         <parameter name="format" transfer-ownership="none">
-          <doc xml:space="preserve">the #GstVideoFormat</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-chroma.c"
+               line="934">the #GstVideoFormat</doc>
           <type name="VideoFormat" c:type="GstVideoFormat"/>
         </parameter>
         <parameter name="h_factor" transfer-ownership="none">
-          <doc xml:space="preserve">horizontal resampling factor</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-chroma.c"
+               line="935">horizontal resampling factor</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
         <parameter name="v_factor" transfer-ownership="none">
-          <doc xml:space="preserve">vertical resampling factor</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-chroma.c"
+               line="936">vertical resampling factor</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
       </parameters>
     </function>
     <function name="video_chroma_to_string"
               c:identifier="gst_video_chroma_to_string">
-      <doc xml:space="preserve">Converts @site to its string representation.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-chroma.c"
+           line="98">Converts @site to its string representation.</doc>
+      <source-position filename="gst-libs/gst/video/video-chroma.h" line="59"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">a string describing @site.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-chroma.c"
+             line="104">a string describing @site.</doc>
         <type name="utf8" c:type="const gchar*"/>
       </return-value>
       <parameters>
         <parameter name="site" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstVideoChromaSite</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-chroma.c"
+               line="100">a #GstVideoChromaSite</doc>
           <type name="VideoChromaSite" c:type="GstVideoChromaSite"/>
         </parameter>
       </parameters>
     </function>
+    <function name="video_color_matrix_from_iso"
+              c:identifier="gst_video_color_matrix_from_iso"
+              moved-to="VideoColorMatrix.from_iso"
+              version="1.18">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-color.c"
+           line="765">Converts the @value to the #GstVideoColorMatrix
+The matrix coefficients (MatrixCoefficients) value is
+defined by "ISO/IEC 23001-8 Section 7.3 Table 4"
+and "ITU-T H.273 Table 4".
+"H.264 Table E-5" and "H.265 Table E.5" share the identical values.</doc>
+      <source-position filename="gst-libs/gst/video/video-color.h" line="260"/>
+      <return-value transfer-ownership="none">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-color.c"
+             line="775">the matched #GstVideoColorMatrix</doc>
+        <type name="VideoColorMatrix" c:type="GstVideoColorMatrix"/>
+      </return-value>
+      <parameters>
+        <parameter name="value" transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-color.c"
+               line="767">a ITU-T H.273 matrix coefficients value</doc>
+          <type name="guint" c:type="guint"/>
+        </parameter>
+      </parameters>
+    </function>
     <function name="video_color_matrix_get_Kr_Kb"
               c:identifier="gst_video_color_matrix_get_Kr_Kb"
               moved-to="VideoColorMatrix.get_Kr_Kb"
               version="1.6">
-      <doc xml:space="preserve">Get the coefficients used to convert between Y'PbPr and R'G'B' using @matrix.
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-color.c"
+           line="322">Get the coefficients used to convert between Y'PbPr and R'G'B' using @matrix.
 
 When:
 
@@ -13959,45 +23066,139 @@ and the other way around:
   G' = Y' - Cb*2*(1-Kb)*Kb/(1-Kr-Kb) - Cr*2*(1-Kr)*Kr/(1-Kr-Kb)
   B' = Y' + Cb*2*(1-Kb)
 ]|</doc>
+      <source-position filename="gst-libs/gst/video/video-color.h" line="69"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">TRUE if @matrix was a YUV color format and @Kr and @Kb contain valid
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-color.c"
+             line="353">TRUE if @matrix was a YUV color format and @Kr and @Kb contain valid
    values.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="matrix" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstVideoColorMatrix</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-color.c"
+               line="324">a #GstVideoColorMatrix</doc>
           <type name="VideoColorMatrix" c:type="GstVideoColorMatrix"/>
         </parameter>
         <parameter name="Kr"
                    direction="out"
                    caller-allocates="0"
                    transfer-ownership="full">
-          <doc xml:space="preserve">result red channel coefficient</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-color.c"
+               line="325">result red channel coefficient</doc>
           <type name="gdouble" c:type="gdouble*"/>
         </parameter>
         <parameter name="Kb"
                    direction="out"
                    caller-allocates="0"
                    transfer-ownership="full">
-          <doc xml:space="preserve">result blue channel coefficient</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-color.c"
+               line="326">result blue channel coefficient</doc>
           <type name="gdouble" c:type="gdouble*"/>
         </parameter>
       </parameters>
     </function>
+    <function name="video_color_matrix_to_iso"
+              c:identifier="gst_video_color_matrix_to_iso"
+              moved-to="VideoColorMatrix.to_iso"
+              version="1.18">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-color.c"
+           line="634">Converts #GstVideoColorMatrix to the "matrix coefficients"
+(MatrixCoefficients) value defined by "ISO/IEC 23001-8 Section 7.3 Table 4"
+and "ITU-T H.273 Table 4".
+"H.264 Table E-5" and "H.265 Table E.5" share the identical values.</doc>
+      <source-position filename="gst-libs/gst/video/video-color.h" line="251"/>
+      <return-value transfer-ownership="none">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-color.c"
+             line="643">The value of ISO/IEC 23001-8 matrix coefficients.</doc>
+        <type name="guint" c:type="guint"/>
+      </return-value>
+      <parameters>
+        <parameter name="matrix" transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-color.c"
+               line="636">a #GstVideoColorMatrix</doc>
+          <type name="VideoColorMatrix" c:type="GstVideoColorMatrix"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="video_color_primaries_from_iso"
+              c:identifier="gst_video_color_primaries_from_iso"
+              moved-to="VideoColorPrimaries.from_iso"
+              version="1.18">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-color.c"
+           line="851">Converts the @value to the #GstVideoColorPrimaries
+The colour primaries (ColourPrimaries) value is
+defined by "ISO/IEC 23001-8 Section 7.1 Table 2" and "ITU-T H.273 Table 2".
+"H.264 Table E-3" and "H.265 Table E.3" share the identical values.</doc>
+      <source-position filename="gst-libs/gst/video/video-color.h" line="266"/>
+      <return-value transfer-ownership="none">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-color.c"
+             line="860">the matched #GstVideoColorPrimaries</doc>
+        <type name="VideoColorPrimaries" c:type="GstVideoColorPrimaries"/>
+      </return-value>
+      <parameters>
+        <parameter name="value" transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-color.c"
+               line="853">a ITU-T H.273 colour primaries value</doc>
+          <type name="guint" c:type="guint"/>
+        </parameter>
+      </parameters>
+    </function>
     <function name="video_color_primaries_get_info"
               c:identifier="gst_video_color_primaries_get_info"
               moved-to="VideoColorPrimaries.get_info"
               version="1.6">
-      <doc xml:space="preserve">Get information about the chromaticity coordinates of @primaries.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-color.c"
+           line="303">Get information about the chromaticity coordinates of @primaries.</doc>
+      <source-position filename="gst-libs/gst/video/video-color.h" line="195"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">a #GstVideoColorPrimariesInfo for @primaries.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-color.c"
+             line="309">a #GstVideoColorPrimariesInfo for @primaries.</doc>
         <type name="VideoColorPrimariesInfo"
               c:type="const GstVideoColorPrimariesInfo*"/>
       </return-value>
       <parameters>
         <parameter name="primaries" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstVideoColorPrimaries</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-color.c"
+               line="305">a #GstVideoColorPrimaries</doc>
+          <type name="VideoColorPrimaries" c:type="GstVideoColorPrimaries"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="video_color_primaries_to_iso"
+              c:identifier="gst_video_color_primaries_to_iso"
+              moved-to="VideoColorPrimaries.to_iso"
+              version="1.18">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-color.c"
+           line="719">Converts #GstVideoColorPrimaries to the "colour primaries" (ColourPrimaries)
+value defined by "ISO/IEC 23001-8 Section 7.1 Table 2"
+and "ITU-T H.273 Table 2".
+"H.264 Table E-3" and "H.265 Table E.3" share the identical values.</doc>
+      <source-position filename="gst-libs/gst/video/video-color.h" line="257"/>
+      <return-value transfer-ownership="none">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-color.c"
+             line="728">The value of ISO/IEC 23001-8 colour primaries.</doc>
+        <type name="guint" c:type="guint"/>
+      </return-value>
+      <parameters>
+        <parameter name="primaries" transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-color.c"
+               line="721">a #GstVideoColorPrimaries</doc>
           <type name="VideoColorPrimaries" c:type="GstVideoColorPrimaries"/>
         </parameter>
       </parameters>
@@ -14005,30 +23206,39 @@ and the other way around:
     <function name="video_color_range_offsets"
               c:identifier="gst_video_color_range_offsets"
               moved-to="VideoColorRange.offsets">
-      <doc xml:space="preserve">Compute the offset and scale values for each component of @info. For each
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-color.c"
+           line="188">Compute the offset and scale values for each component of @info. For each
 component, (c[i] - offset[i]) / scale[i] will scale the component c[i] to the
 range [0.0 .. 1.0].
 
 The reverse operation (c[i] * scale[i]) + offset[i] can be used to convert
 the component values in range [0.0 .. 1.0] back to their representation in
 @info and @range.</doc>
+      <source-position filename="gst-libs/gst/video/video-color.h" line="240"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="range" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstVideoColorRange</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-color.c"
+               line="190">a #GstVideoColorRange</doc>
           <type name="VideoColorRange" c:type="GstVideoColorRange"/>
         </parameter>
         <parameter name="info" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstVideoFormatInfo</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-color.c"
+               line="191">a #GstVideoFormatInfo</doc>
           <type name="VideoFormatInfo" c:type="const GstVideoFormatInfo*"/>
         </parameter>
         <parameter name="offset"
                    direction="out"
                    caller-allocates="1"
                    transfer-ownership="none">
-          <doc xml:space="preserve">output offsets</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-color.c"
+               line="192">output offsets</doc>
           <array zero-terminated="0" c:type="gint*" fixed-size="4">
             <type name="gint" c:type="gint"/>
           </array>
@@ -14037,7 +23247,9 @@ the component values in range [0.0 .. 1.0] back to their representation in
                    direction="out"
                    caller-allocates="1"
                    transfer-ownership="none">
-          <doc xml:space="preserve">output scale</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-color.c"
+               line="193">output scale</doc>
           <array zero-terminated="0" c:type="gint*" fixed-size="4">
             <type name="gint" c:type="gint"/>
           </array>
@@ -14047,7 +23259,9 @@ the component values in range [0.0 .. 1.0] back to their representation in
     <function name="video_color_transfer_decode"
               c:identifier="gst_video_color_transfer_decode"
               version="1.6">
-      <doc xml:space="preserve">Convert @val to its gamma decoded value. This is the inverse operation of
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-color.c"
+           line="513">Convert @val to its gamma decoded value. This is the inverse operation of
 @gst_video_color_transfer_encode().
 
 For a non-linear value L' in the range [0..1], conversion to the linear
@@ -14059,18 +23273,25 @@ L is in general performed with a power function like:
 
 Depending on @func, different formulas might be applied. Some formulas
 encode a linear segment in the lower range.</doc>
+      <source-position filename="gst-libs/gst/video/video-color.h" line="130"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">the gamme decoded value of @val</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-color.c"
+             line="531">the gamme decoded value of @val</doc>
         <type name="gdouble" c:type="gdouble"/>
       </return-value>
       <parameters>
         <parameter name="func" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstVideoTransferFunction</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-color.c"
+               line="515">a #GstVideoTransferFunction</doc>
           <type name="VideoTransferFunction"
                 c:type="GstVideoTransferFunction"/>
         </parameter>
         <parameter name="val" transfer-ownership="none">
-          <doc xml:space="preserve">a value</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-color.c"
+               line="516">a value</doc>
           <type name="gdouble" c:type="gdouble"/>
         </parameter>
       </parameters>
@@ -14078,7 +23299,9 @@ encode a linear segment in the lower range.</doc>
     <function name="video_color_transfer_encode"
               c:identifier="gst_video_color_transfer_encode"
               version="1.6">
-      <doc xml:space="preserve">Convert @val to its gamma encoded value.
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-color.c"
+           line="397">Convert @val to its gamma encoded value.
 
 For a linear value L in the range [0..1], conversion to the non-linear
 (gamma encoded) L' is in general performed with a power function like:
@@ -14089,79 +23312,158 @@ For a linear value L in the range [0..1], conversion to the non-linear
 
 Depending on @func, different formulas might be applied. Some formulas
 encode a linear segment in the lower range.</doc>
+      <source-position filename="gst-libs/gst/video/video-color.h" line="127"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">the gamme encoded value of @val</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-color.c"
+             line="414">the gamme encoded value of @val</doc>
         <type name="gdouble" c:type="gdouble"/>
       </return-value>
       <parameters>
         <parameter name="func" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstVideoTransferFunction</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-color.c"
+               line="399">a #GstVideoTransferFunction</doc>
           <type name="VideoTransferFunction"
                 c:type="GstVideoTransferFunction"/>
         </parameter>
         <parameter name="val" transfer-ownership="none">
-          <doc xml:space="preserve">a value</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-color.c"
+               line="400">a value</doc>
           <type name="gdouble" c:type="gdouble"/>
         </parameter>
       </parameters>
     </function>
+    <function name="video_color_transfer_from_iso"
+              c:identifier="gst_video_color_transfer_from_iso"
+              version="1.18">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-color.c"
+           line="802">Converts the @value to the #GstVideoTransferFunction
+The transfer characteristics (TransferCharacteristics) value is
+defined by "ISO/IEC 23001-8 Section 7.2 Table 3"
+and "ITU-T H.273 Table 3".
+"H.264 Table E-4" and "H.265 Table E.4" share the identical values.</doc>
+      <source-position filename="gst-libs/gst/video/video-color.h" line="263"/>
+      <return-value transfer-ownership="none">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-color.c"
+             line="812">the matched #GstVideoTransferFunction</doc>
+        <type name="VideoTransferFunction" c:type="GstVideoTransferFunction"/>
+      </return-value>
+      <parameters>
+        <parameter name="value" transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-color.c"
+               line="804">a ITU-T H.273 transfer characteristics value</doc>
+          <type name="guint" c:type="guint"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="video_color_transfer_to_iso"
+              c:identifier="gst_video_color_transfer_to_iso"
+              version="1.18">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-color.c"
+           line="669">Converts #GstVideoTransferFunction to the "transfer characteristics"
+(TransferCharacteristics) value defined by "ISO/IEC 23001-8 Section 7.2 Table 3"
+and "ITU-T H.273 Table 3".
+"H.264 Table E-4" and "H.265 Table E.4" share the identical values.</doc>
+      <source-position filename="gst-libs/gst/video/video-color.h" line="254"/>
+      <return-value transfer-ownership="none">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-color.c"
+             line="678">The value of ISO/IEC 23001-8 transfer characteristics.</doc>
+        <type name="guint" c:type="guint"/>
+      </return-value>
+      <parameters>
+        <parameter name="func" transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-color.c"
+               line="671">a #GstVideoTransferFunction</doc>
+          <type name="VideoTransferFunction"
+                c:type="GstVideoTransferFunction"/>
+        </parameter>
+      </parameters>
+    </function>
     <function name="video_convert_sample"
               c:identifier="gst_video_convert_sample"
               throws="1">
-      <doc xml:space="preserve">Converts a raw video buffer into the specified output caps.
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/convertframe.c"
+           line="284">Converts a raw video buffer into the specified output caps.
 
 The output caps can be any raw video formats or any image formats (jpeg, png, ...).
 
 The width, height and pixel-aspect-ratio can also be specified in the output caps.</doc>
+      <source-position filename="gst-libs/gst/video/video.h" line="159"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">The converted #GstSample, or %NULL if an error happened (in which case @err
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/convertframe.c"
+             line="297">The converted #GstSample, or %NULL if an error happened (in which case @err
 will point to the #GError).</doc>
         <type name="Gst.Sample" c:type="GstSample*"/>
       </return-value>
       <parameters>
         <parameter name="sample" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstSample</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/convertframe.c"
+               line="286">a #GstSample</doc>
           <type name="Gst.Sample" c:type="GstSample*"/>
         </parameter>
         <parameter name="to_caps" transfer-ownership="none">
-          <doc xml:space="preserve">the #GstCaps to convert to</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/convertframe.c"
+               line="287">the #GstCaps to convert to</doc>
           <type name="Gst.Caps" c:type="const GstCaps*"/>
         </parameter>
         <parameter name="timeout" transfer-ownership="none">
-          <doc xml:space="preserve">the maximum amount of time allowed for the processing.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/convertframe.c"
+               line="288">the maximum amount of time allowed for the processing.</doc>
           <type name="Gst.ClockTime" c:type="GstClockTime"/>
         </parameter>
       </parameters>
     </function>
     <function name="video_convert_sample_async"
               c:identifier="gst_video_convert_sample_async">
-      <doc xml:space="preserve">Converts a raw video buffer into the specified output caps.
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/convertframe.c"
+           line="659">Converts a raw video buffer into the specified output caps.
 
 The output caps can be any raw video formats or any image formats (jpeg, png, ...).
 
 The width, height and pixel-aspect-ratio can also be specified in the output caps.
 
-@callback will be called after conversion, when an error occured or if conversion didn't
+@callback will be called after conversion, when an error occurred or if conversion didn't
 finish after @timeout. @callback will always be called from the thread default
 %GMainContext, see g_main_context_get_thread_default(). If GLib before 2.22 is used,
 this will always be the global default main context.
 
 @destroy_notify will be called after the callback was called and @user_data is not needed
 anymore.</doc>
+      <source-position filename="gst-libs/gst/video/video.h" line="151"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="sample" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstSample</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/convertframe.c"
+               line="661">a #GstSample</doc>
           <type name="Gst.Sample" c:type="GstSample*"/>
         </parameter>
         <parameter name="to_caps" transfer-ownership="none">
-          <doc xml:space="preserve">the #GstCaps to convert to</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/convertframe.c"
+               line="662">the #GstCaps to convert to</doc>
           <type name="Gst.Caps" c:type="const GstCaps*"/>
         </parameter>
         <parameter name="timeout" transfer-ownership="none">
-          <doc xml:space="preserve">the maximum amount of time allowed for the processing.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/convertframe.c"
+               line="663">the maximum amount of time allowed for the processing.</doc>
           <type name="Gst.ClockTime" c:type="GstClockTime"/>
         </parameter>
         <parameter name="callback"
@@ -14169,7 +23471,9 @@ anymore.</doc>
                    scope="notified"
                    closure="4"
                    destroy="5">
-          <doc xml:space="preserve">%GstVideoConvertSampleCallback that will be called after conversion.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/convertframe.c"
+               line="664">%GstVideoConvertSampleCallback that will be called after conversion.</doc>
           <type name="VideoConvertSampleCallback"
                 c:type="GstVideoConvertSampleCallback"/>
         </parameter>
@@ -14177,13 +23481,17 @@ anymore.</doc>
                    transfer-ownership="none"
                    nullable="1"
                    allow-none="1">
-          <doc xml:space="preserve">extra data that will be passed to the @callback</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/convertframe.c"
+               line="665">extra data that will be passed to the @callback</doc>
           <type name="gpointer" c:type="gpointer"/>
         </parameter>
         <parameter name="destroy_notify"
                    transfer-ownership="none"
                    scope="async">
-          <doc xml:space="preserve">%GDestroyNotify to be called after @user_data is not needed anymore</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/convertframe.c"
+               line="666">%GDestroyNotify to be called after @user_data is not needed anymore</doc>
           <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
         </parameter>
       </parameters>
@@ -14193,29 +23501,43 @@ anymore.</doc>
               moved-to="VideoConverter.new"
               version="1.6"
               introspectable="0">
-      <doc xml:space="preserve">Create a new converter object to convert between @in_info and @out_info
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-converter.c"
+           line="2275">Create a new converter object to convert between @in_info and @out_info
 with @config.</doc>
+      <source-position filename="gst-libs/gst/video/video-converter.h"
+                       line="279"/>
       <return-value>
-        <doc xml:space="preserve">a #GstVideoConverter or %NULL if conversion is not possible.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-converter.c"
+             line="2284">a #GstVideoConverter or %NULL if conversion is not possible.</doc>
         <type name="VideoConverter" c:type="GstVideoConverter*"/>
       </return-value>
       <parameters>
         <parameter name="in_info" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstVideoInfo</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-converter.c"
+               line="2277">a #GstVideoInfo</doc>
           <type name="VideoInfo" c:type="GstVideoInfo*"/>
         </parameter>
         <parameter name="out_info" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstVideoInfo</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-converter.c"
+               line="2278">a #GstVideoInfo</doc>
           <type name="VideoInfo" c:type="GstVideoInfo*"/>
         </parameter>
         <parameter name="config" transfer-ownership="full">
-          <doc xml:space="preserve">a #GstStructure with configuration options</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-converter.c"
+               line="2279">a #GstStructure with configuration options</doc>
           <type name="Gst.Structure" c:type="GstStructure*"/>
         </parameter>
       </parameters>
     </function>
     <function name="video_crop_meta_api_get_type"
               c:identifier="gst_video_crop_meta_api_get_type">
+      <source-position filename="gst-libs/gst/video/gstvideometa.h"
+                       line="158"/>
       <return-value transfer-ownership="none">
         <type name="GType" c:type="GType"/>
       </return-value>
@@ -14223,6 +23545,8 @@ with @config.</doc>
     <function name="video_crop_meta_get_info"
               c:identifier="gst_video_crop_meta_get_info"
               moved-to="VideoCropMeta.get_info">
+      <source-position filename="gst-libs/gst/video/gstvideometa.h"
+                       line="161"/>
       <return-value transfer-ownership="none">
         <type name="Gst.MetaInfo" c:type="const GstMetaInfo*"/>
       </return-value>
@@ -14231,58 +23555,82 @@ with @config.</doc>
               c:identifier="gst_video_dither_new"
               moved-to="VideoDither.new"
               introspectable="0">
-      <doc xml:space="preserve">Make a new dither object for dithering lines of @format using the
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-dither.c"
+           line="357">Make a new dither object for dithering lines of @format using the
 algorithm described by @method.
 
 Each component will be quantized to a multiple of @quantizer. Better
-performance is achived when @quantizer is a power of 2.
+performance is achieved when @quantizer is a power of 2.
 
 @width is the width of the lines that this ditherer will handle.</doc>
+      <source-position filename="gst-libs/gst/video/video-dither.h" line="66"/>
       <return-value>
-        <doc xml:space="preserve">a new #GstVideoDither</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-dither.c"
+             line="373">a new #GstVideoDither</doc>
         <type name="VideoDither" c:type="GstVideoDither*"/>
       </return-value>
       <parameters>
         <parameter name="method" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstVideoDitherMethod</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-dither.c"
+               line="359">a #GstVideoDitherMethod</doc>
           <type name="VideoDitherMethod" c:type="GstVideoDitherMethod"/>
         </parameter>
         <parameter name="flags" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstVideoDitherFlags</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-dither.c"
+               line="360">a #GstVideoDitherFlags</doc>
           <type name="VideoDitherFlags" c:type="GstVideoDitherFlags"/>
         </parameter>
         <parameter name="format" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstVideoFormat</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-dither.c"
+               line="361">a #GstVideoFormat</doc>
           <type name="VideoFormat" c:type="GstVideoFormat"/>
         </parameter>
         <parameter name="quantizer" transfer-ownership="none">
-          <doc xml:space="preserve">quantizer</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-dither.c"
+               line="362">quantizer</doc>
           <type name="guint" c:type="guint*"/>
         </parameter>
         <parameter name="width" transfer-ownership="none">
-          <doc xml:space="preserve">the width of the lines</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-dither.c"
+               line="363">the width of the lines</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
       </parameters>
     </function>
     <function name="video_event_is_force_key_unit"
               c:identifier="gst_video_event_is_force_key_unit">
-      <doc xml:space="preserve">Checks if an event is a force key unit event. Returns true for both upstream
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-event.c"
+           line="168">Checks if an event is a force key unit event. Returns true for both upstream
 and downstream force key unit events.</doc>
+      <source-position filename="gst-libs/gst/video/video-event.h" line="65"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE if the event is a valid force key unit event</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-event.c"
+             line="175">%TRUE if the event is a valid force key unit event</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="event" transfer-ownership="none">
-          <doc xml:space="preserve">A #GstEvent to check</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-event.c"
+               line="170">A #GstEvent to check</doc>
           <type name="Gst.Event" c:type="GstEvent*"/>
         </parameter>
       </parameters>
     </function>
     <function name="video_event_new_downstream_force_key_unit"
               c:identifier="gst_video_event_new_downstream_force_key_unit">
-      <doc xml:space="preserve">Creates a new downstream force key unit event. A downstream force key unit
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-event.c"
+           line="96">Creates a new downstream force key unit event. A downstream force key unit
 event can be sent down the pipeline to request downstream elements to produce
 a key unit. A downstream force key unit event must also be sent when handling
 an upstream force key unit event to notify downstream that the latter has been
@@ -14290,55 +23638,77 @@ handled.
 
 To parse an event created by gst_video_event_new_downstream_force_key_unit() use
 gst_video_event_parse_downstream_force_key_unit().</doc>
+      <source-position filename="gst-libs/gst/video/video-event.h" line="39"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">The new GstEvent</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-event.c"
+             line="113">The new GstEvent</doc>
         <type name="Gst.Event" c:type="GstEvent*"/>
       </return-value>
       <parameters>
         <parameter name="timestamp" transfer-ownership="none">
-          <doc xml:space="preserve">the timestamp of the buffer that starts a new key unit</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-event.c"
+               line="98">the timestamp of the buffer that starts a new key unit</doc>
           <type name="Gst.ClockTime" c:type="GstClockTime"/>
         </parameter>
         <parameter name="stream_time" transfer-ownership="none">
-          <doc xml:space="preserve">the stream_time of the buffer that starts a new key unit</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-event.c"
+               line="99">the stream_time of the buffer that starts a new key unit</doc>
           <type name="Gst.ClockTime" c:type="GstClockTime"/>
         </parameter>
         <parameter name="running_time" transfer-ownership="none">
-          <doc xml:space="preserve">the running_time of the buffer that starts a new key unit</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-event.c"
+               line="100">the running_time of the buffer that starts a new key unit</doc>
           <type name="Gst.ClockTime" c:type="GstClockTime"/>
         </parameter>
         <parameter name="all_headers" transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE to produce headers when starting a new key unit</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-event.c"
+               line="101">%TRUE to produce headers when starting a new key unit</doc>
           <type name="gboolean" c:type="gboolean"/>
         </parameter>
         <parameter name="count" transfer-ownership="none">
-          <doc xml:space="preserve">integer that can be used to number key units</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-event.c"
+               line="102">integer that can be used to number key units</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
       </parameters>
     </function>
     <function name="video_event_new_still_frame"
               c:identifier="gst_video_event_new_still_frame">
-      <doc xml:space="preserve">Creates a new Still Frame event. If @in_still is %TRUE, then the event
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-event.c"
+           line="29">Creates a new Still Frame event. If @in_still is %TRUE, then the event
 represents the start of a still frame sequence. If it is %FALSE, then
 the event ends a still frame sequence.
 
 To parse an event created by gst_video_event_new_still_frame() use
 gst_video_event_parse_still_frame().</doc>
+      <source-position filename="gst-libs/gst/video/video-event.h" line="31"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">The new GstEvent</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-event.c"
+             line="40">The new GstEvent</doc>
         <type name="Gst.Event" c:type="GstEvent*"/>
       </return-value>
       <parameters>
         <parameter name="in_still" transfer-ownership="none">
-          <doc xml:space="preserve">boolean value for the still-frame state of the event.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-event.c"
+               line="31">boolean value for the still-frame state of the event.</doc>
           <type name="gboolean" c:type="gboolean"/>
         </parameter>
       </parameters>
     </function>
     <function name="video_event_new_upstream_force_key_unit"
               c:identifier="gst_video_event_new_upstream_force_key_unit">
-      <doc xml:space="preserve">Creates a new upstream force key unit event. An upstream force key unit event
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-event.c"
+           line="134">Creates a new upstream force key unit event. An upstream force key unit event
 can be sent to request upstream elements to produce a key unit.
 
 @running_time can be set to request a new key unit at a specific
@@ -14347,81 +23717,109 @@ new key unit as soon as possible.
 
 To parse an event created by gst_video_event_new_downstream_force_key_unit() use
 gst_video_event_parse_downstream_force_key_unit().</doc>
+      <source-position filename="gst-libs/gst/video/video-event.h" line="54"/>
       <return-value transfer-ownership="full">
-        <doc xml:space="preserve">The new GstEvent</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-event.c"
+             line="150">The new GstEvent</doc>
         <type name="Gst.Event" c:type="GstEvent*"/>
       </return-value>
       <parameters>
         <parameter name="running_time" transfer-ownership="none">
-          <doc xml:space="preserve">the running_time at which a new key unit should be produced</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-event.c"
+               line="136">the running_time at which a new key unit should be produced</doc>
           <type name="Gst.ClockTime" c:type="GstClockTime"/>
         </parameter>
         <parameter name="all_headers" transfer-ownership="none">
-          <doc xml:space="preserve">%TRUE to produce headers when starting a new key unit</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-event.c"
+               line="137">%TRUE to produce headers when starting a new key unit</doc>
           <type name="gboolean" c:type="gboolean"/>
         </parameter>
         <parameter name="count" transfer-ownership="none">
-          <doc xml:space="preserve">integer that can be used to number key units</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-event.c"
+               line="138">integer that can be used to number key units</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
       </parameters>
     </function>
     <function name="video_event_parse_downstream_force_key_unit"
               c:identifier="gst_video_event_parse_downstream_force_key_unit">
-      <doc xml:space="preserve">Get timestamp, stream-time, running-time, all-headers and count in the force
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-event.c"
+           line="196">Get timestamp, stream-time, running-time, all-headers and count in the force
 key unit event. See gst_video_event_new_downstream_force_key_unit() for a
 full description of the downstream force key unit event.
 
 @running_time will be adjusted for any pad offsets of pads it was passing through.</doc>
+      <source-position filename="gst-libs/gst/video/video-event.h" line="46"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE if the event is a valid downstream force key unit event.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-event.c"
+             line="211">%TRUE if the event is a valid downstream force key unit event.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="event" transfer-ownership="none">
-          <doc xml:space="preserve">A #GstEvent to parse</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-event.c"
+               line="198">A #GstEvent to parse</doc>
           <type name="Gst.Event" c:type="GstEvent*"/>
         </parameter>
         <parameter name="timestamp"
                    direction="out"
                    caller-allocates="0"
                    transfer-ownership="full">
-          <doc xml:space="preserve">A pointer to the timestamp in the event</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-event.c"
+               line="199">A pointer to the timestamp in the event</doc>
           <type name="Gst.ClockTime" c:type="GstClockTime*"/>
         </parameter>
         <parameter name="stream_time"
                    direction="out"
                    caller-allocates="0"
                    transfer-ownership="full">
-          <doc xml:space="preserve">A pointer to the stream-time in the event</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-event.c"
+               line="200">A pointer to the stream-time in the event</doc>
           <type name="Gst.ClockTime" c:type="GstClockTime*"/>
         </parameter>
         <parameter name="running_time"
                    direction="out"
                    caller-allocates="0"
                    transfer-ownership="full">
-          <doc xml:space="preserve">A pointer to the running-time in the event</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-event.c"
+               line="201">A pointer to the running-time in the event</doc>
           <type name="Gst.ClockTime" c:type="GstClockTime*"/>
         </parameter>
         <parameter name="all_headers"
                    direction="out"
                    caller-allocates="0"
                    transfer-ownership="full">
-          <doc xml:space="preserve">A pointer to the all_headers flag in the event</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-event.c"
+               line="202">A pointer to the all_headers flag in the event</doc>
           <type name="gboolean" c:type="gboolean*"/>
         </parameter>
         <parameter name="count"
                    direction="out"
                    caller-allocates="0"
                    transfer-ownership="full">
-          <doc xml:space="preserve">A pointer to the count field of the event</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-event.c"
+               line="203">A pointer to the count field of the event</doc>
           <type name="guint" c:type="guint*"/>
         </parameter>
       </parameters>
     </function>
     <function name="video_event_parse_still_frame"
               c:identifier="gst_video_event_parse_still_frame">
-      <doc xml:space="preserve">Parse a #GstEvent, identify if it is a Still Frame event, and
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-event.c"
+           line="55">Parse a #GstEvent, identify if it is a Still Frame event, and
 return the still-frame state from the event if it is.
 If the event represents the start of a still frame, the in_still
 variable will be set to TRUE, otherwise FALSE. It is OK to pass NULL for the
@@ -14429,20 +23827,27 @@ in_still variable order to just check whether the event is a valid still-frame
 event.
 
 Create a still frame event using gst_video_event_new_still_frame()</doc>
+      <source-position filename="gst-libs/gst/video/video-event.h" line="34"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE if the event is a valid still-frame event. %FALSE if not</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-event.c"
+             line="70">%TRUE if the event is a valid still-frame event. %FALSE if not</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="event" transfer-ownership="none">
-          <doc xml:space="preserve">A #GstEvent to parse</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-event.c"
+               line="57">A #GstEvent to parse</doc>
           <type name="Gst.Event" c:type="GstEvent*"/>
         </parameter>
         <parameter name="in_still"
                    direction="out"
                    caller-allocates="0"
                    transfer-ownership="full">
-          <doc xml:space="preserve">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-event.c"
+               line="58">
     A boolean to receive the still-frame status from the event, or NULL</doc>
           <type name="gboolean" c:type="gboolean*"/>
         </parameter>
@@ -14450,41 +23855,54 @@ Create a still frame event using gst_video_event_new_still_frame()</doc>
     </function>
     <function name="video_event_parse_upstream_force_key_unit"
               c:identifier="gst_video_event_parse_upstream_force_key_unit">
-      <doc xml:space="preserve">Get running-time, all-headers and count in the force key unit event. See
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-event.c"
+           line="270">Get running-time, all-headers and count in the force key unit event. See
 gst_video_event_new_upstream_force_key_unit() for a full description of the
 upstream force key unit event.
 
 Create an upstream force key unit event using  gst_video_event_new_upstream_force_key_unit()
 
 @running_time will be adjusted for any pad offsets of pads it was passing through.</doc>
+      <source-position filename="gst-libs/gst/video/video-event.h" line="59"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE if the event is a valid upstream force-key-unit event. %FALSE if not</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-event.c"
+             line="285">%TRUE if the event is a valid upstream force-key-unit event. %FALSE if not</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="event" transfer-ownership="none">
-          <doc xml:space="preserve">A #GstEvent to parse</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-event.c"
+               line="272">A #GstEvent to parse</doc>
           <type name="Gst.Event" c:type="GstEvent*"/>
         </parameter>
         <parameter name="running_time"
                    direction="out"
                    caller-allocates="0"
                    transfer-ownership="full">
-          <doc xml:space="preserve">A pointer to the running_time in the event</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-event.c"
+               line="273">A pointer to the running_time in the event</doc>
           <type name="Gst.ClockTime" c:type="GstClockTime*"/>
         </parameter>
         <parameter name="all_headers"
                    direction="out"
                    caller-allocates="0"
                    transfer-ownership="full">
-          <doc xml:space="preserve">A pointer to the all_headers flag in the event</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-event.c"
+               line="274">A pointer to the all_headers flag in the event</doc>
           <type name="gboolean" c:type="gboolean*"/>
         </parameter>
         <parameter name="count"
                    direction="out"
                    caller-allocates="0"
                    transfer-ownership="full">
-          <doc xml:space="preserve">A pointer to the count field in the event</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-event.c"
+               line="275">A pointer to the count field in the event</doc>
           <type name="guint" c:type="guint*"/>
         </parameter>
       </parameters>
@@ -14493,16 +23911,23 @@ Create an upstream force key unit event using  gst_video_event_new_upstream_forc
               c:identifier="gst_video_field_order_from_string"
               moved-to="VideoFieldOrder.from_string"
               version="1.12">
-      <doc xml:space="preserve">Convert @order to a #GstVideoFieldOrder</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-info.c"
+           line="363">Convert @order to a #GstVideoFieldOrder</doc>
+      <source-position filename="gst-libs/gst/video/video-info.h" line="284"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">the #GstVideoFieldOrder of @order or
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-info.c"
+             line="369">the #GstVideoFieldOrder of @order or
    #GST_VIDEO_FIELD_ORDER_UNKNOWN when @order is not a valid
    string representation for a #GstVideoFieldOrder.</doc>
         <type name="VideoFieldOrder" c:type="GstVideoFieldOrder"/>
       </return-value>
       <parameters>
         <parameter name="order" transfer-ownership="none">
-          <doc xml:space="preserve">a field order</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-info.c"
+               line="365">a field order</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
       </parameters>
@@ -14511,14 +23936,21 @@ Create an upstream force key unit event using  gst_video_event_new_upstream_forc
               c:identifier="gst_video_field_order_to_string"
               moved-to="VideoFieldOrder.to_string"
               version="1.12">
-      <doc xml:space="preserve">Convert @order to its string representation.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-info.c"
+           line="344">Convert @order to its string representation.</doc>
+      <source-position filename="gst-libs/gst/video/video-info.h" line="281"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">@order as a string or NULL if @order in invalid.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-info.c"
+             line="350">@order as a string or NULL if @order in invalid.</doc>
         <type name="utf8" c:type="const gchar*"/>
       </return-value>
       <parameters>
         <parameter name="order" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstVideoFieldOrder</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-info.c"
+               line="346">a #GstVideoFieldOrder</doc>
           <type name="VideoFieldOrder" c:type="GstVideoFieldOrder"/>
         </parameter>
       </parameters>
@@ -14526,16 +23958,24 @@ Create an upstream force key unit event using  gst_video_event_new_upstream_forc
     <function name="video_format_from_fourcc"
               c:identifier="gst_video_format_from_fourcc"
               moved-to="VideoFormat.from_fourcc">
-      <doc xml:space="preserve">Converts a FOURCC value into the corresponding #GstVideoFormat.
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-format.c"
+           line="6804">Converts a FOURCC value into the corresponding #GstVideoFormat.
 If the FOURCC cannot be represented by #GstVideoFormat,
 #GST_VIDEO_FORMAT_UNKNOWN is returned.</doc>
+      <source-position filename="gst-libs/gst/video/video-format.h"
+                       line="552"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">the #GstVideoFormat describing the FOURCC value</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.c"
+             line="6812">the #GstVideoFormat describing the FOURCC value</doc>
         <type name="VideoFormat" c:type="GstVideoFormat"/>
       </return-value>
       <parameters>
         <parameter name="fourcc" transfer-ownership="none">
-          <doc xml:space="preserve">a FOURCC value representing raw YUV video</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-format.c"
+               line="6806">a FOURCC value representing raw YUV video</doc>
           <type name="guint32" c:type="guint32"/>
         </parameter>
       </parameters>
@@ -14543,40 +23983,60 @@ If the FOURCC cannot be represented by #GstVideoFormat,
     <function name="video_format_from_masks"
               c:identifier="gst_video_format_from_masks"
               moved-to="VideoFormat.from_masks">
-      <doc xml:space="preserve">Find the #GstVideoFormat for the given parameters.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-format.c"
+           line="6730">Find the #GstVideoFormat for the given parameters.</doc>
+      <source-position filename="gst-libs/gst/video/video-format.h"
+                       line="547"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">a #GstVideoFormat or GST_VIDEO_FORMAT_UNKNOWN when the parameters to
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.c"
+             line="6743">a #GstVideoFormat or GST_VIDEO_FORMAT_UNKNOWN when the parameters to
 not specify a known format.</doc>
         <type name="VideoFormat" c:type="GstVideoFormat"/>
       </return-value>
       <parameters>
         <parameter name="depth" transfer-ownership="none">
-          <doc xml:space="preserve">the amount of bits used for a pixel</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-format.c"
+               line="6732">the amount of bits used for a pixel</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
         <parameter name="bpp" transfer-ownership="none">
-          <doc xml:space="preserve">the amount of bits used to store a pixel. This value is bigger than
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-format.c"
+               line="6733">the amount of bits used to store a pixel. This value is bigger than
   @depth</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
         <parameter name="endianness" transfer-ownership="none">
-          <doc xml:space="preserve">the endianness of the masks, #G_LITTLE_ENDIAN or #G_BIG_ENDIAN</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-format.c"
+               line="6735">the endianness of the masks, #G_LITTLE_ENDIAN or #G_BIG_ENDIAN</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
         <parameter name="red_mask" transfer-ownership="none">
-          <doc xml:space="preserve">the red mask</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-format.c"
+               line="6736">the red mask</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
         <parameter name="green_mask" transfer-ownership="none">
-          <doc xml:space="preserve">the green mask</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-format.c"
+               line="6737">the green mask</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
         <parameter name="blue_mask" transfer-ownership="none">
-          <doc xml:space="preserve">the blue mask</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-format.c"
+               line="6738">the blue mask</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
         <parameter name="alpha_mask" transfer-ownership="none">
-          <doc xml:space="preserve">the alpha mask, or 0 if no alpha mask</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-format.c"
+               line="6739">the alpha mask, or 0 if no alpha mask</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
       </parameters>
@@ -14584,15 +24044,23 @@ not specify a known format.</doc>
     <function name="video_format_from_string"
               c:identifier="gst_video_format_from_string"
               moved-to="VideoFormat.from_string">
-      <doc xml:space="preserve">Convert the @format string to its #GstVideoFormat.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-format.c"
+           line="6896">Convert the @format string to its #GstVideoFormat.</doc>
+      <source-position filename="gst-libs/gst/video/video-format.h"
+                       line="555"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">the #GstVideoFormat for @format or GST_VIDEO_FORMAT_UNKNOWN when the
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.c"
+             line="6902">the #GstVideoFormat for @format or GST_VIDEO_FORMAT_UNKNOWN when the
 string is not a known format.</doc>
         <type name="VideoFormat" c:type="GstVideoFormat"/>
       </return-value>
       <parameters>
         <parameter name="format" transfer-ownership="none">
-          <doc xml:space="preserve">a format string</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-format.c"
+               line="6898">a format string</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
       </parameters>
@@ -14600,14 +24068,22 @@ string is not a known format.</doc>
     <function name="video_format_get_info"
               c:identifier="gst_video_format_get_info"
               moved-to="VideoFormat.get_info">
-      <doc xml:space="preserve">Get the #GstVideoFormatInfo for @format</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-format.c"
+           line="6961">Get the #GstVideoFormatInfo for @format</doc>
+      <source-position filename="gst-libs/gst/video/video-format.h"
+                       line="565"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">The #GstVideoFormatInfo for @format.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.c"
+             line="6967">The #GstVideoFormatInfo for @format.</doc>
         <type name="VideoFormatInfo" c:type="const GstVideoFormatInfo*"/>
       </return-value>
       <parameters>
         <parameter name="format" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstVideoFormat</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-format.c"
+               line="6963">a #GstVideoFormat</doc>
           <type name="VideoFormat" c:type="GstVideoFormat"/>
         </parameter>
       </parameters>
@@ -14616,23 +24092,33 @@ string is not a known format.</doc>
               c:identifier="gst_video_format_get_palette"
               moved-to="VideoFormat.get_palette"
               version="1.2">
-      <doc xml:space="preserve">Get the default palette of @format. This the palette used in the pack
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-format.c"
+           line="6977">Get the default palette of @format. This the palette used in the pack
 function for paletted formats.</doc>
+      <source-position filename="gst-libs/gst/video/video-format.h"
+                       line="568"/>
       <return-value transfer-ownership="none" nullable="1">
-        <doc xml:space="preserve">the default palette of @format or %NULL when
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.c"
+             line="6985">the default palette of @format or %NULL when
 @format does not have a palette.</doc>
         <type name="gpointer" c:type="gconstpointer"/>
       </return-value>
       <parameters>
         <parameter name="format" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstVideoFormat</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-format.c"
+               line="6979">a #GstVideoFormat</doc>
           <type name="VideoFormat" c:type="GstVideoFormat"/>
         </parameter>
         <parameter name="size"
                    direction="out"
                    caller-allocates="0"
                    transfer-ownership="full">
-          <doc xml:space="preserve">size of the palette in bytes</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-format.c"
+               line="6980">size of the palette in bytes</doc>
           <type name="gsize" c:type="gsize*"/>
         </parameter>
       </parameters>
@@ -14640,16 +24126,24 @@ function for paletted formats.</doc>
     <function name="video_format_to_fourcc"
               c:identifier="gst_video_format_to_fourcc"
               moved-to="VideoFormat.to_fourcc">
-      <doc xml:space="preserve">Converts a #GstVideoFormat value into the corresponding FOURCC.  Only
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-format.c"
+           line="6920">Converts a #GstVideoFormat value into the corresponding FOURCC.  Only
 a few YUV formats have corresponding FOURCC values.  If @format has
 no corresponding FOURCC value, 0 is returned.</doc>
+      <source-position filename="gst-libs/gst/video/video-format.h"
+                       line="558"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">the FOURCC corresponding to @format</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.c"
+             line="6928">the FOURCC corresponding to @format</doc>
         <type name="guint32" c:type="guint32"/>
       </return-value>
       <parameters>
         <parameter name="format" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstVideoFormat video format</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-format.c"
+               line="6922">a #GstVideoFormat video format</doc>
           <type name="VideoFormat" c:type="GstVideoFormat"/>
         </parameter>
       </parameters>
@@ -14657,21 +24151,59 @@ no corresponding FOURCC value, 0 is returned.</doc>
     <function name="video_format_to_string"
               c:identifier="gst_video_format_to_string"
               moved-to="VideoFormat.to_string">
-      <doc xml:space="preserve">Returns a string containing a descriptive name for
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-format.c"
+           line="6941">Returns a string containing a descriptive name for
 the #GstVideoFormat if there is one, or NULL otherwise.</doc>
+      <source-position filename="gst-libs/gst/video/video-format.h"
+                       line="561"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">the name corresponding to @format</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.c"
+             line="6948">the name corresponding to @format</doc>
         <type name="utf8" c:type="const gchar*"/>
       </return-value>
       <parameters>
         <parameter name="format" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstVideoFormat video format</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-format.c"
+               line="6943">a #GstVideoFormat video format</doc>
+          <type name="VideoFormat" c:type="GstVideoFormat"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="video_formats_raw"
+              c:identifier="gst_video_formats_raw"
+              version="1.18">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-format.c"
+           line="7073">Return all the raw video formats supported by GStreamer.</doc>
+      <source-position filename="gst-libs/gst/video/video-format.h"
+                       line="627"/>
+      <return-value transfer-ownership="none">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.c"
+             line="7079">an array of #GstVideoFormat</doc>
+        <array length="0" zero-terminated="0" c:type="const GstVideoFormat*">
           <type name="VideoFormat" c:type="GstVideoFormat"/>
+        </array>
+      </return-value>
+      <parameters>
+        <parameter name="len"
+                   direction="out"
+                   caller-allocates="0"
+                   transfer-ownership="full">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-format.c"
+               line="7075">the number of elements in the returned array</doc>
+          <type name="guint" c:type="guint*"/>
         </parameter>
       </parameters>
     </function>
     <function name="video_gl_texture_upload_meta_api_get_type"
               c:identifier="gst_video_gl_texture_upload_meta_api_get_type">
+      <source-position filename="gst-libs/gst/video/gstvideometa.h"
+                       line="281"/>
       <return-value transfer-ownership="none">
         <type name="GType" c:type="GType"/>
       </return-value>
@@ -14679,6 +24211,8 @@ the #GstVideoFormat if there is one, or NULL otherwise.</doc>
     <function name="video_gl_texture_upload_meta_get_info"
               c:identifier="gst_video_gl_texture_upload_meta_get_info"
               moved-to="VideoGLTextureUploadMeta.get_info">
+      <source-position filename="gst-libs/gst/video/gstvideometa.h"
+                       line="284"/>
       <return-value transfer-ownership="none">
         <type name="Gst.MetaInfo" c:type="const GstMetaInfo*"/>
       </return-value>
@@ -14686,7 +24220,9 @@ the #GstVideoFormat if there is one, or NULL otherwise.</doc>
     <function name="video_guess_framerate"
               c:identifier="gst_video_guess_framerate"
               version="1.6">
-      <doc xml:space="preserve">Given the nominal duration of one video frame,
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video.c"
+           line="98">Given the nominal duration of one video frame,
 this function will check some standard framerates for
 a close match (within 0.1%) and return one if possible,
 
@@ -14694,14 +24230,19 @@ It will calculate an arbitrary framerate if no close
 match was found, and return %FALSE.
 
 It returns %FALSE if a duration of 0 is passed.</doc>
+      <source-position filename="gst-libs/gst/video/video.h" line="143"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE if a close "standard" framerate was
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video.c"
+             line="113">%TRUE if a close "standard" framerate was
 recognised, and %FALSE otherwise.</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="duration" transfer-ownership="none">
-          <doc xml:space="preserve">Nominal duration of one frame</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video.c"
+               line="100">Nominal duration of one frame</doc>
           <type name="Gst.ClockTime" c:type="GstClockTime"/>
         </parameter>
         <parameter name="dest_n"
@@ -14710,7 +24251,9 @@ recognised, and %FALSE otherwise.</doc>
                    transfer-ownership="full"
                    optional="1"
                    allow-none="1">
-          <doc xml:space="preserve">Numerator of the calculated framerate</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video.c"
+               line="101">Numerator of the calculated framerate</doc>
           <type name="gint" c:type="gint*"/>
         </parameter>
         <parameter name="dest_d"
@@ -14719,7 +24262,9 @@ recognised, and %FALSE otherwise.</doc>
                    transfer-ownership="full"
                    optional="1"
                    allow-none="1">
-          <doc xml:space="preserve">Denominator of the calculated framerate</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video.c"
+               line="102">Denominator of the calculated framerate</doc>
           <type name="gint" c:type="gint*"/>
         </parameter>
       </parameters>
@@ -14728,16 +24273,23 @@ recognised, and %FALSE otherwise.</doc>
               c:identifier="gst_video_interlace_mode_from_string"
               moved-to="VideoInterlaceMode.from_string"
               version="1.6">
-      <doc xml:space="preserve">Convert @mode to a #GstVideoInterlaceMode</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-info.c"
+           line="315">Convert @mode to a #GstVideoInterlaceMode</doc>
+      <source-position filename="gst-libs/gst/video/video-info.h" line="89"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">the #GstVideoInterlaceMode of @mode or
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-info.c"
+             line="321">the #GstVideoInterlaceMode of @mode or
    #GST_VIDEO_INTERLACE_MODE_PROGRESSIVE when @mode is not a valid
    string representation for a #GstVideoInterlaceMode.</doc>
         <type name="VideoInterlaceMode" c:type="GstVideoInterlaceMode"/>
       </return-value>
       <parameters>
         <parameter name="mode" transfer-ownership="none">
-          <doc xml:space="preserve">a mode</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-info.c"
+               line="317">a mode</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
       </parameters>
@@ -14746,20 +24298,144 @@ recognised, and %FALSE otherwise.</doc>
               c:identifier="gst_video_interlace_mode_to_string"
               moved-to="VideoInterlaceMode.to_string"
               version="1.6">
-      <doc xml:space="preserve">Convert @mode to its string representation.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-info.c"
+           line="296">Convert @mode to its string representation.</doc>
+      <source-position filename="gst-libs/gst/video/video-info.h" line="86"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">@mode as a string or NULL if @mode in invalid.</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-info.c"
+             line="302">@mode as a string or NULL if @mode in invalid.</doc>
         <type name="utf8" c:type="const gchar*"/>
       </return-value>
       <parameters>
         <parameter name="mode" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstVideoInterlaceMode</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-info.c"
+               line="298">a #GstVideoInterlaceMode</doc>
           <type name="VideoInterlaceMode" c:type="GstVideoInterlaceMode"/>
         </parameter>
       </parameters>
     </function>
+    <function name="video_make_raw_caps"
+              c:identifier="gst_video_make_raw_caps"
+              version="1.18">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-format.c"
+           line="7097">Return a generic raw video caps for formats defined in @formats.
+If @formats is %NULL returns a caps for all the supported raw video formats,
+see gst_video_formats_raw().</doc>
+      <source-position filename="gst-libs/gst/video/video-format.h"
+                       line="662"/>
+      <return-value transfer-ownership="full">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.c"
+             line="7106">a video @GstCaps</doc>
+        <type name="Gst.Caps" c:type="GstCaps*"/>
+      </return-value>
+      <parameters>
+        <parameter name="formats"
+                   transfer-ownership="none"
+                   nullable="1"
+                   allow-none="1">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-format.c"
+               line="7099">an array of raw #GstVideoFormat, or %NULL</doc>
+          <array length="1" zero-terminated="0" c:type="const GstVideoFormat*">
+            <type name="VideoFormat" c:type="GstVideoFormat"/>
+          </array>
+        </parameter>
+        <parameter name="len" transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-format.c"
+               line="7100">the size of @formats</doc>
+          <type name="guint" c:type="guint"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="video_make_raw_caps_with_features"
+              c:identifier="gst_video_make_raw_caps_with_features"
+              version="1.18">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-format.c"
+           line="7115">Return a generic raw video caps for formats defined in @formats with features
+@features.
+If @formats is %NULL returns a caps for all the supported video formats,
+see gst_video_formats_raw().</doc>
+      <source-position filename="gst-libs/gst/video/video-format.h"
+                       line="665"/>
+      <return-value transfer-ownership="full">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-format.c"
+             line="7126">a video @GstCaps</doc>
+        <type name="Gst.Caps" c:type="GstCaps*"/>
+      </return-value>
+      <parameters>
+        <parameter name="formats"
+                   transfer-ownership="none"
+                   nullable="1"
+                   allow-none="1">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-format.c"
+               line="7117">an array of raw #GstVideoFormat, or %NULL</doc>
+          <array length="1" zero-terminated="0" c:type="const GstVideoFormat*">
+            <type name="VideoFormat" c:type="GstVideoFormat"/>
+          </array>
+        </parameter>
+        <parameter name="len" transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-format.c"
+               line="7118">the size of @formats</doc>
+          <type name="guint" c:type="guint"/>
+        </parameter>
+        <parameter name="features"
+                   transfer-ownership="full"
+                   nullable="1"
+                   allow-none="1">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-format.c"
+               line="7119">the #GstCapsFeatures to set on the caps</doc>
+          <type name="Gst.CapsFeatures" c:type="GstCapsFeatures*"/>
+        </parameter>
+      </parameters>
+    </function>
+    <function name="video_mastering_display_info_from_string"
+              c:identifier="gst_video_mastering_display_info_from_string"
+              moved-to="VideoMasteringDisplayInfo.from_string"
+              version="1.18">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-hdr.c"
+           line="78">Extract #GstVideoMasteringDisplayInfo from @mastering</doc>
+      <source-position filename="gst-libs/gst/video/video-hdr.h" line="80"/>
+      <return-value transfer-ownership="none">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-hdr.c"
+             line="85">%TRUE if @minfo was filled with @mastering</doc>
+        <type name="gboolean" c:type="gboolean"/>
+      </return-value>
+      <parameters>
+        <parameter name="minfo"
+                   direction="out"
+                   caller-allocates="1"
+                   transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-hdr.c"
+               line="80">a #GstVideoMasteringDisplayInfo</doc>
+          <type name="VideoMasteringDisplayInfo"
+                c:type="GstVideoMasteringDisplayInfo*"/>
+        </parameter>
+        <parameter name="mastering" transfer-ownership="none">
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-hdr.c"
+               line="81">a #GstStructure representing #GstVideoMasteringDisplayInfo</doc>
+          <type name="utf8" c:type="const gchar*"/>
+        </parameter>
+      </parameters>
+    </function>
     <function name="video_meta_api_get_type"
               c:identifier="gst_video_meta_api_get_type">
+      <source-position filename="gst-libs/gst/video/gstvideometa.h"
+                       line="101"/>
       <return-value transfer-ownership="none">
         <type name="GType" c:type="GType"/>
       </return-value>
@@ -14767,6 +24443,8 @@ recognised, and %FALSE otherwise.</doc>
     <function name="video_meta_get_info"
               c:identifier="gst_video_meta_get_info"
               moved-to="VideoMeta.get_info">
+      <source-position filename="gst-libs/gst/video/gstvideometa.h"
+                       line="104"/>
       <return-value transfer-ownership="none">
         <type name="Gst.MetaInfo" c:type="const GstMetaInfo*"/>
       </return-value>
@@ -14774,17 +24452,27 @@ recognised, and %FALSE otherwise.</doc>
     <function name="video_meta_transform_scale_get_quark"
               c:identifier="gst_video_meta_transform_scale_get_quark"
               moved-to="VideoMetaTransform.scale_get_quark">
-      <doc xml:space="preserve">Get the #GQuark for the "gst-video-scale" metadata transform operation.</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/gstvideometa.c"
+           line="619">Get the #GQuark for the "gst-video-scale" metadata transform operation.</doc>
+      <source-position filename="gst-libs/gst/video/gstvideometa.h"
+                       line="169"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">a #GQuark</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/gstvideometa.c"
+             line="624">a #GQuark</doc>
         <type name="GLib.Quark" c:type="GQuark"/>
       </return-value>
     </function>
     <function name="video_multiview_get_doubled_height_modes"
               c:identifier="gst_video_multiview_get_doubled_height_modes"
               version="1.6">
+      <source-position filename="gst-libs/gst/video/video-multiview.h"
+                       line="50"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">A const #GValue containing a list of stereo video modes
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-multiview.c"
+             line="219">A const #GValue containing a list of stereo video modes
 
 Utility function that returns a #GValue with a GstList of packed stereo
 video modes with double the height of a single view for use in
@@ -14795,8 +24483,12 @@ caps negotiations. Currently this is top-bottom and row-interleaved.</doc>
     <function name="video_multiview_get_doubled_size_modes"
               c:identifier="gst_video_multiview_get_doubled_size_modes"
               version="1.6">
+      <source-position filename="gst-libs/gst/video/video-multiview.h"
+                       line="56"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">A const #GValue containing a list of stereo video modes
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-multiview.c"
+             line="256">A const #GValue containing a list of stereo video modes
 
 Utility function that returns a #GValue with a GstList of packed
 stereo video modes that have double the width/height of a single
@@ -14808,8 +24500,12 @@ view for use in caps negotiation. Currently this is just
     <function name="video_multiview_get_doubled_width_modes"
               c:identifier="gst_video_multiview_get_doubled_width_modes"
               version="1.6">
+      <source-position filename="gst-libs/gst/video/video-multiview.h"
+                       line="53"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">A const #GValue containing a list of stereo video modes
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-multiview.c"
+             line="237">A const #GValue containing a list of stereo video modes
 
 Utility function that returns a #GValue with a GstList of packed stereo
 video modes with double the width of a single view for use in
@@ -14821,8 +24517,12 @@ and column-interleaved.</doc>
     <function name="video_multiview_get_mono_modes"
               c:identifier="gst_video_multiview_get_mono_modes"
               version="1.6">
+      <source-position filename="gst-libs/gst/video/video-multiview.h"
+                       line="44"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">A const #GValue containing a list of mono video modes
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-multiview.c"
+             line="184">A const #GValue containing a list of mono video modes
 
 Utility function that returns a #GValue with a GstList of mono video
 modes (mono/left/right) for use in caps negotiations.</doc>
@@ -14832,8 +24532,12 @@ modes (mono/left/right) for use in caps negotiations.</doc>
     <function name="video_multiview_get_unpacked_modes"
               c:identifier="gst_video_multiview_get_unpacked_modes"
               version="1.6">
+      <source-position filename="gst-libs/gst/video/video-multiview.h"
+                       line="47"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">A const #GValue containing a list of 'unpacked' stereo video modes
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-multiview.c"
+             line="201">A const #GValue containing a list of 'unpacked' stereo video modes
 
 Utility function that returns a #GValue with a GstList of unpacked
 stereo video modes (separated/frame-by-frame/frame-by-frame-multiview)
@@ -14844,8 +24548,12 @@ for use in caps negotiations.</doc>
     <function name="video_multiview_guess_half_aspect"
               c:identifier="gst_video_multiview_guess_half_aspect"
               version="1.6">
+      <source-position filename="gst-libs/gst/video/video-multiview.h"
+                       line="63"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">A boolean indicating whether the
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-multiview.c"
+             line="370">A boolean indicating whether the
   #GST_VIDEO_MULTIVIEW_FLAGS_HALF_ASPECT flag should be set.
 
 Utility function that heuristically guess whether a
@@ -14856,23 +24564,33 @@ overall display aspect ratio.</doc>
       </return-value>
       <parameters>
         <parameter name="mv_mode" transfer-ownership="none">
-          <doc xml:space="preserve">A #GstVideoMultiviewMode</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-multiview.c"
+               line="364">A #GstVideoMultiviewMode</doc>
           <type name="VideoMultiviewMode" c:type="GstVideoMultiviewMode"/>
         </parameter>
         <parameter name="width" transfer-ownership="none">
-          <doc xml:space="preserve">Video frame width in pixels</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-multiview.c"
+               line="365">Video frame width in pixels</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
         <parameter name="height" transfer-ownership="none">
-          <doc xml:space="preserve">Video frame height in pixels</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-multiview.c"
+               line="366">Video frame height in pixels</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
         <parameter name="par_n" transfer-ownership="none">
-          <doc xml:space="preserve">Numerator of the video pixel-aspect-ratio</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-multiview.c"
+               line="367">Numerator of the video pixel-aspect-ratio</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
         <parameter name="par_d" transfer-ownership="none">
-          <doc xml:space="preserve">Denominator of the video pixel-aspect-ratio</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-multiview.c"
+               line="368">Denominator of the video pixel-aspect-ratio</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
       </parameters>
@@ -14881,8 +24599,12 @@ overall display aspect ratio.</doc>
               c:identifier="gst_video_multiview_mode_from_caps_string"
               moved-to="VideoMultiviewMode.from_caps_string"
               version="1.6">
+      <source-position filename="gst-libs/gst/video/video-multiview.h"
+                       line="41"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">The #GstVideoMultiviewMode value
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-multiview.c"
+             line="93">The #GstVideoMultiviewMode value
 
 Given a string from a caps multiview-mode field,
 output the corresponding #GstVideoMultiviewMode
@@ -14891,7 +24613,9 @@ or #GST_VIDEO_MULTIVIEW_MODE_NONE</doc>
       </return-value>
       <parameters>
         <parameter name="caps_mview_mode" transfer-ownership="none">
-          <doc xml:space="preserve">multiview-mode field string from caps</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-multiview.c"
+               line="91">multiview-mode field string from caps</doc>
           <type name="utf8" c:type="const gchar*"/>
         </parameter>
       </parameters>
@@ -14900,8 +24624,12 @@ or #GST_VIDEO_MULTIVIEW_MODE_NONE</doc>
               c:identifier="gst_video_multiview_mode_to_caps_string"
               moved-to="VideoMultiviewMode.to_caps_string"
               version="1.6">
+      <source-position filename="gst-libs/gst/video/video-multiview.h"
+                       line="38"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">The caps string representation of the mode, or NULL if invalid.
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-multiview.c"
+             line="68">The caps string representation of the mode, or NULL if invalid.
 
 Given a #GstVideoMultiviewMode returns the multiview-mode caps string
 for insertion into a caps structure</doc>
@@ -14909,7 +24637,9 @@ for insertion into a caps structure</doc>
       </return-value>
       <parameters>
         <parameter name="mview_mode" transfer-ownership="none">
-          <doc xml:space="preserve">A #GstVideoMultiviewMode value</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-multiview.c"
+               line="66">A #GstVideoMultiviewMode value</doc>
           <type name="VideoMultiviewMode" c:type="GstVideoMultiviewMode"/>
         </parameter>
       </parameters>
@@ -14917,29 +24647,41 @@ for insertion into a caps structure</doc>
     <function name="video_multiview_video_info_change_mode"
               c:identifier="gst_video_multiview_video_info_change_mode"
               version="1.6">
-      <doc xml:space="preserve">Utility function that transforms the width/height/PAR
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-multiview.c"
+           line="340">Utility function that transforms the width/height/PAR
 and multiview mode and flags of a #GstVideoInfo into
 the requested mode.</doc>
+      <source-position filename="gst-libs/gst/video/video-multiview.h"
+                       line="59"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="info" transfer-ownership="none">
-          <doc xml:space="preserve">A #GstVideoInfo structure to operate on</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-multiview.c"
+               line="342">A #GstVideoInfo structure to operate on</doc>
           <type name="VideoInfo" c:type="GstVideoInfo*"/>
         </parameter>
         <parameter name="out_mview_mode" transfer-ownership="none">
-          <doc xml:space="preserve">A #GstVideoMultiviewMode value</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-multiview.c"
+               line="343">A #GstVideoMultiviewMode value</doc>
           <type name="VideoMultiviewMode" c:type="GstVideoMultiviewMode"/>
         </parameter>
         <parameter name="out_mview_flags" transfer-ownership="none">
-          <doc xml:space="preserve">A set of #GstVideoMultiviewFlags</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-multiview.c"
+               line="344">A set of #GstVideoMultiviewFlags</doc>
           <type name="VideoMultiviewFlags" c:type="GstVideoMultiviewFlags"/>
         </parameter>
       </parameters>
     </function>
     <function name="video_overlay_composition_meta_api_get_type"
               c:identifier="gst_video_overlay_composition_meta_api_get_type">
+      <source-position filename="gst-libs/gst/video/video-overlay-composition.h"
+                       line="290"/>
       <return-value transfer-ownership="none">
         <type name="GType" c:type="GType"/>
       </return-value>
@@ -14947,67 +24689,91 @@ the requested mode.</doc>
     <function name="video_overlay_composition_meta_get_info"
               c:identifier="gst_video_overlay_composition_meta_get_info"
               moved-to="VideoOverlayCompositionMeta.get_info">
+      <source-position filename="gst-libs/gst/video/video-overlay-composition.h"
+                       line="293"/>
       <return-value transfer-ownership="none">
         <type name="Gst.MetaInfo" c:type="const GstMetaInfo*"/>
       </return-value>
     </function>
     <function name="video_overlay_install_properties"
               c:identifier="gst_video_overlay_install_properties"
-              moved-to="VideoOverlay.install_properties">
-      <doc xml:space="preserve">This helper shall be used by classes implementing the #GstVideoOverlay
+              moved-to="VideoOverlay.install_properties"
+              version="1.14">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/videooverlay.c"
+           line="518">This helper shall be used by classes implementing the #GstVideoOverlay
 interface that want the render rectangle to be controllable using
 properties. This helper will install "render-rectangle" property into the
-class.
-
-Since 1.14</doc>
+class.</doc>
+      <source-position filename="gst-libs/gst/video/videooverlay.h"
+                       line="108"/>
       <return-value transfer-ownership="none">
         <type name="none" c:type="void"/>
       </return-value>
       <parameters>
         <parameter name="oclass" transfer-ownership="none">
-          <doc xml:space="preserve">The class on which the properties will be installed</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/videooverlay.c"
+               line="520">The class on which the properties will be installed</doc>
           <type name="GObject.ObjectClass" c:type="GObjectClass*"/>
         </parameter>
         <parameter name="last_prop_id" transfer-ownership="none">
-          <doc xml:space="preserve">The first free property ID to use</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/videooverlay.c"
+               line="521">The first free property ID to use</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
       </parameters>
     </function>
     <function name="video_overlay_set_property"
               c:identifier="gst_video_overlay_set_property"
-              moved-to="VideoOverlay.set_property">
-      <doc xml:space="preserve">This helper shall be used by classes implementing the #GstVideoOverlay
+              moved-to="VideoOverlay.set_property"
+              version="1.14">
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/videooverlay.c"
+           line="542">This helper shall be used by classes implementing the #GstVideoOverlay
 interface that want the render rectangle to be controllable using
 properties. This helper will parse and set the render rectangle calling
 gst_video_overlay_set_render_rectangle().</doc>
+      <source-position filename="gst-libs/gst/video/videooverlay.h"
+                       line="112"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">%TRUE if the @property_id matches the GstVideoOverlay property
-
-Since 1.14</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/videooverlay.c"
+             line="554">%TRUE if the @property_id matches the GstVideoOverlay property</doc>
         <type name="gboolean" c:type="gboolean"/>
       </return-value>
       <parameters>
         <parameter name="object" transfer-ownership="none">
-          <doc xml:space="preserve">The instance on which the property is set</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/videooverlay.c"
+               line="544">The instance on which the property is set</doc>
           <type name="GObject.Object" c:type="GObject*"/>
         </parameter>
         <parameter name="last_prop_id" transfer-ownership="none">
-          <doc xml:space="preserve">The highest property ID.</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/videooverlay.c"
+               line="545">The highest property ID.</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
         <parameter name="property_id" transfer-ownership="none">
-          <doc xml:space="preserve">The property ID</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/videooverlay.c"
+               line="546">The property ID</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
         <parameter name="value" transfer-ownership="none">
-          <doc xml:space="preserve">The #GValue to be set</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/videooverlay.c"
+               line="547">The #GValue to be set</doc>
           <type name="GObject.Value" c:type="const GValue*"/>
         </parameter>
       </parameters>
     </function>
     <function name="video_region_of_interest_meta_api_get_type"
               c:identifier="gst_video_region_of_interest_meta_api_get_type">
+      <source-position filename="gst-libs/gst/video/gstvideometa.h"
+                       line="334"/>
       <return-value transfer-ownership="none">
         <type name="GType" c:type="GType"/>
       </return-value>
@@ -15015,6 +24781,8 @@ Since 1.14</doc>
     <function name="video_region_of_interest_meta_get_info"
               c:identifier="gst_video_region_of_interest_meta_get_info"
               moved-to="VideoRegionOfInterestMeta.get_info">
+      <source-position filename="gst-libs/gst/video/gstvideometa.h"
+                       line="337"/>
       <return-value transfer-ownership="none">
         <type name="Gst.MetaInfo" c:type="const GstMetaInfo*"/>
       </return-value>
@@ -15023,42 +24791,59 @@ Since 1.14</doc>
               c:identifier="gst_video_scaler_new"
               moved-to="VideoScaler.new"
               introspectable="0">
-      <doc xml:space="preserve">Make a new @method video scaler. @in_size source lines/pixels will
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-scaler.c"
+           line="195">Make a new @method video scaler. @in_size source lines/pixels will
 be scaled to @out_size destination lines/pixels.
 
 @n_taps specifies the amount of pixels to use from the source for one output
 pixel. If n_taps is 0, this function chooses a good value automatically based
 on the @method and @in_size/@out_size.</doc>
+      <source-position filename="gst-libs/gst/video/video-scaler.h" line="54"/>
       <return-value>
-        <doc xml:space="preserve">a #GstVideoScaler</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-scaler.c"
+             line="211">a #GstVideoScaler</doc>
         <type name="VideoScaler" c:type="GstVideoScaler*"/>
       </return-value>
       <parameters>
         <parameter name="method" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstVideoResamplerMethod</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-scaler.c"
+               line="197">a #GstVideoResamplerMethod</doc>
           <type name="VideoResamplerMethod" c:type="GstVideoResamplerMethod"/>
         </parameter>
         <parameter name="flags" transfer-ownership="none">
-          <doc xml:space="preserve">#GstVideoScalerFlags</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-scaler.c"
+               line="198">#GstVideoScalerFlags</doc>
           <type name="VideoScalerFlags" c:type="GstVideoScalerFlags"/>
         </parameter>
         <parameter name="n_taps" transfer-ownership="none">
-          <doc xml:space="preserve">number of taps to use</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-scaler.c"
+               line="199">number of taps to use</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
         <parameter name="in_size" transfer-ownership="none">
-          <doc xml:space="preserve">number of source elements</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-scaler.c"
+               line="200">number of source elements</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
         <parameter name="out_size" transfer-ownership="none">
-          <doc xml:space="preserve">number of destination elements</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-scaler.c"
+               line="201">number of destination elements</doc>
           <type name="guint" c:type="guint"/>
         </parameter>
         <parameter name="options"
                    transfer-ownership="none"
                    nullable="1"
                    allow-none="1">
-          <doc xml:space="preserve">extra options</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-scaler.c"
+               line="202">extra options</doc>
           <type name="Gst.Structure" c:type="GstStructure*"/>
         </parameter>
       </parameters>
@@ -15066,40 +24851,57 @@ on the @method and @in_size/@out_size.</doc>
     <function name="video_tile_get_index"
               c:identifier="gst_video_tile_get_index"
               version="1.4">
-      <doc xml:space="preserve">Get the tile index of the tile at coordinates @x and @y in the tiled
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/video/video-tile.c"
+           line="25">Get the tile index of the tile at coordinates @x and @y in the tiled
 image of @x_tiles by @y_tiles.
 
 Use this method when @mode is of type %GST_VIDEO_TILE_TYPE_INDEXED.</doc>
+      <source-position filename="gst-libs/gst/video/video-tile.h" line="125"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">the index of the tile at @x and @y in the tiled image of
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/video/video-tile.c"
+             line="38">the index of the tile at @x and @y in the tiled image of
   @x_tiles by @y_tiles.</doc>
         <type name="guint" c:type="guint"/>
       </return-value>
       <parameters>
         <parameter name="mode" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstVideoTileMode</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-tile.c"
+               line="27">a #GstVideoTileMode</doc>
           <type name="VideoTileMode" c:type="GstVideoTileMode"/>
         </parameter>
         <parameter name="x" transfer-ownership="none">
-          <doc xml:space="preserve">x coordinate</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-tile.c"
+               line="28">x coordinate</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
         <parameter name="y" transfer-ownership="none">
-          <doc xml:space="preserve">y coordinate</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-tile.c"
+               line="29">y coordinate</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
         <parameter name="x_tiles" transfer-ownership="none">
-          <doc xml:space="preserve">number of horizintal tiles</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-tile.c"
+               line="30">number of horizintal tiles</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
         <parameter name="y_tiles" transfer-ownership="none">
-          <doc xml:space="preserve">number of vertical tiles</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/video/video-tile.c"
+               line="31">number of vertical tiles</doc>
           <type name="gint" c:type="gint"/>
         </parameter>
       </parameters>
     </function>
     <function name="video_time_code_meta_api_get_type"
               c:identifier="gst_video_time_code_meta_api_get_type">
+      <source-position filename="gst-libs/gst/video/gstvideometa.h"
+                       line="388"/>
       <return-value transfer-ownership="none">
         <type name="GType" c:type="GType"/>
       </return-value>
@@ -15107,6 +24909,8 @@ Use this method when @mode is of type %GST_VIDEO_TILE_TYPE_INDEXED.</doc>
     <function name="video_time_code_meta_get_info"
               c:identifier="gst_video_time_code_meta_get_info"
               moved-to="VideoTimeCodeMeta.get_info">
+      <source-position filename="gst-libs/gst/video/gstvideometa.h"
+                       line="392"/>
       <return-value transfer-ownership="none">
         <type name="Gst.MetaInfo" c:type="const GstMetaInfo*"/>
       </return-value>
index fae95eb..08d03f6 100644 (file)
@@ -15,11 +15,317 @@ and/or use gtk-doc annotations.  -->
              shared-library="libgstwebrtc-1.0.so.0"
              c:identifier-prefixes="Gst"
              c:symbol-prefixes="gst">
+    <function-macro name="IS_WEBRTC_DATA_CHANNEL"
+                    c:identifier="GST_IS_WEBRTC_DATA_CHANNEL"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/webrtc/datachannel.h" line="34"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_WEBRTC_DATA_CHANNEL_CLASS"
+                    c:identifier="GST_IS_WEBRTC_DATA_CHANNEL_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/webrtc/datachannel.h" line="36"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_WEBRTC_DTLS_TRANSPORT"
+                    c:identifier="GST_IS_WEBRTC_DTLS_TRANSPORT"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/webrtc/dtlstransport.h"
+                       line="33"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_WEBRTC_DTLS_TRANSPORT_CLASS"
+                    c:identifier="GST_IS_WEBRTC_DTLS_TRANSPORT_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/webrtc/dtlstransport.h"
+                       line="35"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_WEBRTC_ICE_TRANSPORT"
+                    c:identifier="GST_IS_WEBRTC_ICE_TRANSPORT"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/webrtc/icetransport.h"
+                       line="32"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_WEBRTC_ICE_TRANSPORT_CLASS"
+                    c:identifier="GST_IS_WEBRTC_ICE_TRANSPORT_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/webrtc/icetransport.h"
+                       line="34"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_WEBRTC_RTP_RECEIVER"
+                    c:identifier="GST_IS_WEBRTC_RTP_RECEIVER"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/webrtc/rtpreceiver.h" line="33"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_WEBRTC_RTP_RECEIVER_CLASS"
+                    c:identifier="GST_IS_WEBRTC_RTP_RECEIVER_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/webrtc/rtpreceiver.h" line="35"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_WEBRTC_RTP_SENDER"
+                    c:identifier="GST_IS_WEBRTC_RTP_SENDER"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/webrtc/rtpsender.h" line="33"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_WEBRTC_RTP_SENDER_CLASS"
+                    c:identifier="GST_IS_WEBRTC_RTP_SENDER_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/webrtc/rtpsender.h" line="35"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_WEBRTC_RTP_TRANSCEIVER"
+                    c:identifier="GST_IS_WEBRTC_RTP_TRANSCEIVER"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/webrtc/rtptransceiver.h"
+                       line="34"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="IS_WEBRTC_RTP_TRANSCEIVER_CLASS"
+                    c:identifier="GST_IS_WEBRTC_RTP_TRANSCEIVER_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/webrtc/rtptransceiver.h"
+                       line="36"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="WEBRTC_DATA_CHANNEL"
+                    c:identifier="GST_WEBRTC_DATA_CHANNEL"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/webrtc/datachannel.h" line="33"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="WEBRTC_DATA_CHANNEL_CLASS"
+                    c:identifier="GST_WEBRTC_DATA_CHANNEL_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/webrtc/datachannel.h" line="35"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="WEBRTC_DATA_CHANNEL_GET_CLASS"
+                    c:identifier="GST_WEBRTC_DATA_CHANNEL_GET_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/webrtc/datachannel.h" line="37"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="WEBRTC_DATA_CHANNEL_LOCK"
+                    c:identifier="GST_WEBRTC_DATA_CHANNEL_LOCK"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/webrtc/datachannel.h" line="39"/>
+      <parameters>
+        <parameter name="channel">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="WEBRTC_DATA_CHANNEL_UNLOCK"
+                    c:identifier="GST_WEBRTC_DATA_CHANNEL_UNLOCK"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/webrtc/datachannel.h" line="40"/>
+      <parameters>
+        <parameter name="channel">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="WEBRTC_DTLS_TRANSPORT"
+                    c:identifier="GST_WEBRTC_DTLS_TRANSPORT"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/webrtc/dtlstransport.h"
+                       line="32"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="WEBRTC_DTLS_TRANSPORT_CLASS"
+                    c:identifier="GST_WEBRTC_DTLS_TRANSPORT_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/webrtc/dtlstransport.h"
+                       line="34"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="WEBRTC_DTLS_TRANSPORT_GET_CLASS"
+                    c:identifier="GST_WEBRTC_DTLS_TRANSPORT_GET_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/webrtc/dtlstransport.h"
+                       line="36"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="WEBRTC_ICE_TRANSPORT"
+                    c:identifier="GST_WEBRTC_ICE_TRANSPORT"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/webrtc/icetransport.h"
+                       line="31"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="WEBRTC_ICE_TRANSPORT_CLASS"
+                    c:identifier="GST_WEBRTC_ICE_TRANSPORT_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/webrtc/icetransport.h"
+                       line="33"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="WEBRTC_ICE_TRANSPORT_GET_CLASS"
+                    c:identifier="GST_WEBRTC_ICE_TRANSPORT_GET_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/webrtc/icetransport.h"
+                       line="35"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="WEBRTC_RTP_RECEIVER"
+                    c:identifier="GST_WEBRTC_RTP_RECEIVER"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/webrtc/rtpreceiver.h" line="32"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="WEBRTC_RTP_RECEIVER_CLASS"
+                    c:identifier="GST_WEBRTC_RTP_RECEIVER_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/webrtc/rtpreceiver.h" line="34"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="WEBRTC_RTP_RECEIVER_GET_CLASS"
+                    c:identifier="GST_WEBRTC_RTP_RECEIVER_GET_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/webrtc/rtpreceiver.h" line="36"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="WEBRTC_RTP_SENDER"
+                    c:identifier="GST_WEBRTC_RTP_SENDER"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/webrtc/rtpsender.h" line="32"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="WEBRTC_RTP_SENDER_CLASS"
+                    c:identifier="GST_WEBRTC_RTP_SENDER_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/webrtc/rtpsender.h" line="34"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="WEBRTC_RTP_SENDER_GET_CLASS"
+                    c:identifier="GST_WEBRTC_RTP_SENDER_GET_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/webrtc/rtpsender.h" line="36"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="WEBRTC_RTP_TRANSCEIVER"
+                    c:identifier="GST_WEBRTC_RTP_TRANSCEIVER"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/webrtc/rtptransceiver.h"
+                       line="33"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="WEBRTC_RTP_TRANSCEIVER_CLASS"
+                    c:identifier="GST_WEBRTC_RTP_TRANSCEIVER_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/webrtc/rtptransceiver.h"
+                       line="35"/>
+      <parameters>
+        <parameter name="klass">
+        </parameter>
+      </parameters>
+    </function-macro>
+    <function-macro name="WEBRTC_RTP_TRANSCEIVER_GET_CLASS"
+                    c:identifier="GST_WEBRTC_RTP_TRANSCEIVER_GET_CLASS"
+                    introspectable="0">
+      <source-position filename="gst-libs/gst/webrtc/rtptransceiver.h"
+                       line="37"/>
+      <parameters>
+        <parameter name="obj">
+        </parameter>
+      </parameters>
+    </function-macro>
     <enumeration name="WebRTCBundlePolicy"
+                 version="1.16"
                  glib:type-name="GstWebRTCBundlePolicy"
                  glib:get-type="gst_webrtc_bundle_policy_get_type"
                  c:type="GstWebRTCBundlePolicy">
-      <doc xml:space="preserve">GST_WEBRTC_BUNDLE_POLICY_NONE: none
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/webrtc/webrtc_fwd.h"
+           line="340">GST_WEBRTC_BUNDLE_POLICY_NONE: none
 GST_WEBRTC_BUNDLE_POLICY_BALANCED: balanced
 GST_WEBRTC_BUNDLE_POLICY_MAX_COMPAT: max-compat
 GST_WEBRTC_BUNDLE_POLICY_MAX_BUNDLE: max-bundle
@@ -50,29 +356,37 @@ for more information.</doc>
                  glib:type-name="GstWebRTCDTLSSetup"
                  glib:get-type="gst_webrtc_dtls_setup_get_type"
                  c:type="GstWebRTCDTLSSetup">
-      <doc xml:space="preserve">GST_WEBRTC_DTLS_SETUP_NONE: none
-GST_WEBRTC_DTLS_SETUP_ACTPASS: actpass
-GST_WEBRTC_DTLS_SETUP_ACTIVE: sendonly
-GST_WEBRTC_DTLS_SETUP_PASSIVE: recvonly</doc>
       <member name="none"
               value="0"
               c:identifier="GST_WEBRTC_DTLS_SETUP_NONE"
               glib:nick="none">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/webrtc/webrtc_fwd.h"
+             line="220">none</doc>
       </member>
       <member name="actpass"
               value="1"
               c:identifier="GST_WEBRTC_DTLS_SETUP_ACTPASS"
               glib:nick="actpass">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/webrtc/webrtc_fwd.h"
+             line="221">actpass</doc>
       </member>
       <member name="active"
               value="2"
               c:identifier="GST_WEBRTC_DTLS_SETUP_ACTIVE"
               glib:nick="active">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/webrtc/webrtc_fwd.h"
+             line="222">sendonly</doc>
       </member>
       <member name="passive"
               value="3"
               c:identifier="GST_WEBRTC_DTLS_SETUP_PASSIVE"
               glib:nick="passive">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/webrtc/webrtc_fwd.h"
+             line="223">recvonly</doc>
       </member>
     </enumeration>
     <class name="WebRTCDTLSTransport"
@@ -82,7 +396,11 @@ GST_WEBRTC_DTLS_SETUP_PASSIVE: recvonly</doc>
            glib:type-name="GstWebRTCDTLSTransport"
            glib:get-type="gst_webrtc_dtls_transport_get_type"
            glib:type-struct="WebRTCDTLSTransportClass">
+      <source-position filename="gst-libs/gst/webrtc/dtlstransport.h"
+                       line="62"/>
       <constructor name="new" c:identifier="gst_webrtc_dtls_transport_new">
+        <source-position filename="gst-libs/gst/webrtc/dtlstransport.h"
+                         line="65"/>
         <return-value transfer-ownership="none">
           <type name="WebRTCDTLSTransport" c:type="GstWebRTCDTLSTransport*"/>
         </return-value>
@@ -97,6 +415,8 @@ GST_WEBRTC_DTLS_SETUP_PASSIVE: recvonly</doc>
       </constructor>
       <method name="set_transport"
               c:identifier="gst_webrtc_dtls_transport_set_transport">
+        <source-position filename="gst-libs/gst/webrtc/dtlstransport.h"
+                         line="68"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
@@ -162,7 +482,7 @@ GST_WEBRTC_DTLS_SETUP_PASSIVE: recvonly</doc>
         <type name="Gst.Element" c:type="GstElement*"/>
       </field>
       <field name="_padding">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -170,11 +490,13 @@ GST_WEBRTC_DTLS_SETUP_PASSIVE: recvonly</doc>
     <record name="WebRTCDTLSTransportClass"
             c:type="GstWebRTCDTLSTransportClass"
             glib:is-gtype-struct-for="WebRTCDTLSTransport">
+      <source-position filename="gst-libs/gst/webrtc/dtlstransport.h"
+                       line="62"/>
       <field name="parent_class">
         <type name="Gst.ObjectClass" c:type="GstObjectClass"/>
       </field>
       <field name="_padding">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -183,47 +505,639 @@ GST_WEBRTC_DTLS_SETUP_PASSIVE: recvonly</doc>
                  glib:type-name="GstWebRTCDTLSTransportState"
                  glib:get-type="gst_webrtc_dtls_transport_state_get_type"
                  c:type="GstWebRTCDTLSTransportState">
-      <doc xml:space="preserve">GST_WEBRTC_DTLS_TRANSPORT_STATE_NEW: new
-GST_WEBRTC_DTLS_TRANSPORT_STATE_CLOSED: closed
-GST_WEBRTC_DTLS_TRANSPORT_STATE_FAILED: failed
-GST_WEBRTC_DTLS_TRANSPORT_STATE_CONNECTING: connecting
-GST_WEBRTC_DTLS_TRANSPORT_STATE_CONNECTED: connected</doc>
       <member name="new"
               value="0"
               c:identifier="GST_WEBRTC_DTLS_TRANSPORT_STATE_NEW"
               glib:nick="new">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/webrtc/webrtc_fwd.h"
+             line="67">new</doc>
       </member>
       <member name="closed"
               value="1"
               c:identifier="GST_WEBRTC_DTLS_TRANSPORT_STATE_CLOSED"
               glib:nick="closed">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/webrtc/webrtc_fwd.h"
+             line="68">closed</doc>
       </member>
       <member name="failed"
               value="2"
               c:identifier="GST_WEBRTC_DTLS_TRANSPORT_STATE_FAILED"
               glib:nick="failed">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/webrtc/webrtc_fwd.h"
+             line="69">failed</doc>
       </member>
       <member name="connecting"
               value="3"
               c:identifier="GST_WEBRTC_DTLS_TRANSPORT_STATE_CONNECTING"
               glib:nick="connecting">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/webrtc/webrtc_fwd.h"
+             line="70">connecting</doc>
       </member>
       <member name="connected"
               value="4"
               c:identifier="GST_WEBRTC_DTLS_TRANSPORT_STATE_CONNECTED"
               glib:nick="connected">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/webrtc/webrtc_fwd.h"
+             line="71">connected</doc>
       </member>
     </enumeration>
+    <class name="WebRTCDataChannel"
+           c:symbol-prefix="webrtc_data_channel"
+           c:type="GstWebRTCDataChannel"
+           version="1.18"
+           parent="GObject.Object"
+           abstract="1"
+           glib:type-name="GstWebRTCDataChannel"
+           glib:get-type="gst_webrtc_data_channel_get_type"
+           glib:type-struct="WebRTCDataChannelClass">
+      <source-position filename="gst-libs/gst/webrtc/datachannel.h" line="82"/>
+      <virtual-method name="close" invoker="close">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/webrtc/datachannel.c"
+             line="542">Close the @channel.</doc>
+        <source-position filename="gst-libs/gst/webrtc/datachannel.h"
+                         line="79"/>
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="channel" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/webrtc/datachannel.c"
+                 line="544">a #GstWebRTCDataChannel</doc>
+            <type name="WebRTCDataChannel" c:type="GstWebRTCDataChannel*"/>
+          </instance-parameter>
+        </parameters>
+      </virtual-method>
+      <virtual-method name="send_data" invoker="send_data">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/webrtc/datachannel.c"
+             line="504">Send @data as a data message over @channel.</doc>
+        <source-position filename="gst-libs/gst/webrtc/datachannel.h"
+                         line="77"/>
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="channel" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/webrtc/datachannel.c"
+                 line="506">a #GstWebRTCDataChannel</doc>
+            <type name="WebRTCDataChannel" c:type="GstWebRTCDataChannel*"/>
+          </instance-parameter>
+          <parameter name="data"
+                     transfer-ownership="none"
+                     nullable="1"
+                     allow-none="1">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/webrtc/datachannel.c"
+                 line="507">a #GBytes or %NULL</doc>
+            <type name="GLib.Bytes" c:type="GBytes*"/>
+          </parameter>
+        </parameters>
+      </virtual-method>
+      <virtual-method name="send_string" invoker="send_string">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/webrtc/datachannel.c"
+             line="523">Send @str as a string message over @channel.</doc>
+        <source-position filename="gst-libs/gst/webrtc/datachannel.h"
+                         line="78"/>
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="channel" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/webrtc/datachannel.c"
+                 line="525">a #GstWebRTCDataChannel</doc>
+            <type name="WebRTCDataChannel" c:type="GstWebRTCDataChannel*"/>
+          </instance-parameter>
+          <parameter name="str"
+                     transfer-ownership="none"
+                     nullable="1"
+                     allow-none="1">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/webrtc/datachannel.c"
+                 line="526">a string or %NULL</doc>
+            <type name="utf8" c:type="const gchar*"/>
+          </parameter>
+        </parameters>
+      </virtual-method>
+      <method name="close" c:identifier="gst_webrtc_data_channel_close">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/webrtc/datachannel.c"
+             line="542">Close the @channel.</doc>
+        <source-position filename="gst-libs/gst/webrtc/datachannel.h"
+                         line="109"/>
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="channel" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/webrtc/datachannel.c"
+                 line="544">a #GstWebRTCDataChannel</doc>
+            <type name="WebRTCDataChannel" c:type="GstWebRTCDataChannel*"/>
+          </instance-parameter>
+        </parameters>
+      </method>
+      <method name="on_buffered_amount_low"
+              c:identifier="gst_webrtc_data_channel_on_buffered_amount_low">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/webrtc/datachannel.c"
+             line="488">Signal that the data channel reached a low buffered amount. Should only be used by subclasses.</doc>
+        <source-position filename="gst-libs/gst/webrtc/datachannel.h"
+                         line="100"/>
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="channel" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/webrtc/datachannel.c"
+                 line="490">a #GstWebRTCDataChannel</doc>
+            <type name="WebRTCDataChannel" c:type="GstWebRTCDataChannel*"/>
+          </instance-parameter>
+        </parameters>
+      </method>
+      <method name="on_close" c:identifier="gst_webrtc_data_channel_on_close">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/webrtc/datachannel.c"
+             line="403">Signal that the data channel was closed. Should only be used by subclasses.</doc>
+        <source-position filename="gst-libs/gst/webrtc/datachannel.h"
+                         line="88"/>
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="channel" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/webrtc/datachannel.c"
+                 line="405">a #GstWebRTCDataChannel</doc>
+            <type name="WebRTCDataChannel" c:type="GstWebRTCDataChannel*"/>
+          </instance-parameter>
+        </parameters>
+      </method>
+      <method name="on_error" c:identifier="gst_webrtc_data_channel_on_error">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/webrtc/datachannel.c"
+             line="432">Signal that the data channel had an error. Should only be used by subclasses.</doc>
+        <source-position filename="gst-libs/gst/webrtc/datachannel.h"
+                         line="91"/>
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="channel" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/webrtc/datachannel.c"
+                 line="434">a #GstWebRTCDataChannel</doc>
+            <type name="WebRTCDataChannel" c:type="GstWebRTCDataChannel*"/>
+          </instance-parameter>
+          <parameter name="error" transfer-ownership="full">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/webrtc/datachannel.c"
+                 line="435">a #GError</doc>
+            <type name="GLib.Error" c:type="GError*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="on_message_data"
+              c:identifier="gst_webrtc_data_channel_on_message_data">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/webrtc/datachannel.c"
+             line="452">Signal that the data channel received a data message. Should only be used by subclasses.</doc>
+        <source-position filename="gst-libs/gst/webrtc/datachannel.h"
+                         line="94"/>
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="channel" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/webrtc/datachannel.c"
+                 line="454">a #GstWebRTCDataChannel</doc>
+            <type name="WebRTCDataChannel" c:type="GstWebRTCDataChannel*"/>
+          </instance-parameter>
+          <parameter name="data"
+                     transfer-ownership="none"
+                     nullable="1"
+                     allow-none="1">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/webrtc/datachannel.c"
+                 line="455">a #GBytes or %NULL</doc>
+            <type name="GLib.Bytes" c:type="GBytes*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="on_message_string"
+              c:identifier="gst_webrtc_data_channel_on_message_string">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/webrtc/datachannel.c"
+             line="470">Signal that the data channel received a string message. Should only be used by subclasses.</doc>
+        <source-position filename="gst-libs/gst/webrtc/datachannel.h"
+                         line="97"/>
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="channel" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/webrtc/datachannel.c"
+                 line="472">a #GstWebRTCDataChannel</doc>
+            <type name="WebRTCDataChannel" c:type="GstWebRTCDataChannel*"/>
+          </instance-parameter>
+          <parameter name="str"
+                     transfer-ownership="none"
+                     nullable="1"
+                     allow-none="1">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/webrtc/datachannel.c"
+                 line="473">a string or %NULL</doc>
+            <type name="utf8" c:type="const gchar*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="on_open" c:identifier="gst_webrtc_data_channel_on_open">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/webrtc/datachannel.c"
+             line="369">Signal that the data channel was opened. Should only be used by subclasses.</doc>
+        <source-position filename="gst-libs/gst/webrtc/datachannel.h"
+                         line="85"/>
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="channel" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/webrtc/datachannel.c"
+                 line="371">a #GstWebRTCDataChannel</doc>
+            <type name="WebRTCDataChannel" c:type="GstWebRTCDataChannel*"/>
+          </instance-parameter>
+        </parameters>
+      </method>
+      <method name="send_data"
+              c:identifier="gst_webrtc_data_channel_send_data">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/webrtc/datachannel.c"
+             line="504">Send @data as a data message over @channel.</doc>
+        <source-position filename="gst-libs/gst/webrtc/datachannel.h"
+                         line="103"/>
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="channel" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/webrtc/datachannel.c"
+                 line="506">a #GstWebRTCDataChannel</doc>
+            <type name="WebRTCDataChannel" c:type="GstWebRTCDataChannel*"/>
+          </instance-parameter>
+          <parameter name="data"
+                     transfer-ownership="none"
+                     nullable="1"
+                     allow-none="1">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/webrtc/datachannel.c"
+                 line="507">a #GBytes or %NULL</doc>
+            <type name="GLib.Bytes" c:type="GBytes*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="send_string"
+              c:identifier="gst_webrtc_data_channel_send_string">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/webrtc/datachannel.c"
+             line="523">Send @str as a string message over @channel.</doc>
+        <source-position filename="gst-libs/gst/webrtc/datachannel.h"
+                         line="106"/>
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <instance-parameter name="channel" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/webrtc/datachannel.c"
+                 line="525">a #GstWebRTCDataChannel</doc>
+            <type name="WebRTCDataChannel" c:type="GstWebRTCDataChannel*"/>
+          </instance-parameter>
+          <parameter name="str"
+                     transfer-ownership="none"
+                     nullable="1"
+                     allow-none="1">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/webrtc/datachannel.c"
+                 line="526">a string or %NULL</doc>
+            <type name="utf8" c:type="const gchar*"/>
+          </parameter>
+        </parameters>
+      </method>
+      <property name="buffered-amount" transfer-ownership="none">
+        <type name="guint64" c:type="guint64"/>
+      </property>
+      <property name="buffered-amount-low-threshold"
+                writable="1"
+                transfer-ownership="none">
+        <type name="guint64" c:type="guint64"/>
+      </property>
+      <property name="id"
+                writable="1"
+                construct-only="1"
+                transfer-ownership="none">
+        <type name="gint" c:type="gint"/>
+      </property>
+      <property name="label"
+                writable="1"
+                construct-only="1"
+                transfer-ownership="none">
+        <type name="utf8" c:type="gchar*"/>
+      </property>
+      <property name="max-packet-lifetime"
+                writable="1"
+                construct-only="1"
+                transfer-ownership="none">
+        <type name="gint" c:type="gint"/>
+      </property>
+      <property name="max-retransmits"
+                writable="1"
+                construct-only="1"
+                transfer-ownership="none">
+        <type name="gint" c:type="gint"/>
+      </property>
+      <property name="negotiated"
+                writable="1"
+                construct-only="1"
+                transfer-ownership="none">
+        <type name="gboolean" c:type="gboolean"/>
+      </property>
+      <property name="ordered"
+                writable="1"
+                construct-only="1"
+                transfer-ownership="none">
+        <type name="gboolean" c:type="gboolean"/>
+      </property>
+      <property name="priority"
+                writable="1"
+                construct-only="1"
+                transfer-ownership="none">
+        <type name="WebRTCPriorityType"/>
+      </property>
+      <property name="protocol"
+                writable="1"
+                construct-only="1"
+                transfer-ownership="none">
+        <type name="utf8" c:type="gchar*"/>
+      </property>
+      <property name="ready-state" transfer-ownership="none">
+        <type name="WebRTCDataChannelState"/>
+      </property>
+      <field name="parent">
+        <type name="GObject.Object" c:type="GObject"/>
+      </field>
+      <field name="lock">
+        <type name="GLib.Mutex" c:type="GMutex"/>
+      </field>
+      <field name="label">
+        <type name="utf8" c:type="gchar*"/>
+      </field>
+      <field name="ordered">
+        <type name="gboolean" c:type="gboolean"/>
+      </field>
+      <field name="max_packet_lifetime">
+        <type name="guint" c:type="guint"/>
+      </field>
+      <field name="max_retransmits">
+        <type name="guint" c:type="guint"/>
+      </field>
+      <field name="protocol">
+        <type name="utf8" c:type="gchar*"/>
+      </field>
+      <field name="negotiated">
+        <type name="gboolean" c:type="gboolean"/>
+      </field>
+      <field name="id">
+        <type name="gint" c:type="gint"/>
+      </field>
+      <field name="priority">
+        <type name="WebRTCPriorityType" c:type="GstWebRTCPriorityType"/>
+      </field>
+      <field name="ready_state">
+        <type name="WebRTCDataChannelState"
+              c:type="GstWebRTCDataChannelState"/>
+      </field>
+      <field name="buffered_amount">
+        <type name="guint64" c:type="guint64"/>
+      </field>
+      <field name="buffered_amount_low_threshold">
+        <type name="guint64" c:type="guint64"/>
+      </field>
+      <field name="_padding">
+        <array zero-terminated="0" fixed-size="4">
+          <type name="gpointer" c:type="gpointer"/>
+        </array>
+      </field>
+      <glib:signal name="close" when="last" action="1">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/webrtc/datachannel.c"
+             line="350">Close the data channel</doc>
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+      </glib:signal>
+      <glib:signal name="on-buffered-amount-low" when="last">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+      </glib:signal>
+      <glib:signal name="on-close" when="last">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+      </glib:signal>
+      <glib:signal name="on-error" when="last">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="error" transfer-ownership="none">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/webrtc/datachannel.c"
+                 line="296">the #GError thrown</doc>
+            <type name="GLib.Error"/>
+          </parameter>
+        </parameters>
+      </glib:signal>
+      <glib:signal name="on-message-data" when="last">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="data"
+                     transfer-ownership="none"
+                     nullable="1"
+                     allow-none="1">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/webrtc/datachannel.c"
+                 line="305">a #GBytes of the data received</doc>
+            <type name="GLib.Bytes"/>
+          </parameter>
+        </parameters>
+      </glib:signal>
+      <glib:signal name="on-message-string" when="last">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="data"
+                     transfer-ownership="none"
+                     nullable="1"
+                     allow-none="1">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/webrtc/datachannel.c"
+                 line="314">the data received as a string</doc>
+            <type name="utf8" c:type="gchar*"/>
+          </parameter>
+        </parameters>
+      </glib:signal>
+      <glib:signal name="on-open" when="last">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+      </glib:signal>
+      <glib:signal name="send-data" when="last" action="1">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="data"
+                     transfer-ownership="none"
+                     nullable="1"
+                     allow-none="1">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/webrtc/datachannel.c"
+                 line="331">a #GBytes with the data</doc>
+            <type name="GLib.Bytes"/>
+          </parameter>
+        </parameters>
+      </glib:signal>
+      <glib:signal name="send-string" when="last" action="1">
+        <return-value transfer-ownership="none">
+          <type name="none" c:type="void"/>
+        </return-value>
+        <parameters>
+          <parameter name="data"
+                     transfer-ownership="none"
+                     nullable="1"
+                     allow-none="1">
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/webrtc/datachannel.c"
+                 line="342">the data to send as a string</doc>
+            <type name="utf8" c:type="gchar*"/>
+          </parameter>
+        </parameters>
+      </glib:signal>
+    </class>
+    <record name="WebRTCDataChannelClass"
+            c:type="GstWebRTCDataChannelClass"
+            glib:is-gtype-struct-for="WebRTCDataChannel"
+            version="1.18">
+      <source-position filename="gst-libs/gst/webrtc/datachannel.h" line="82"/>
+      <field name="parent_class">
+        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
+      </field>
+      <field name="send_data">
+        <callback name="send_data">
+          <source-position filename="gst-libs/gst/webrtc/datachannel.h"
+                           line="77"/>
+          <return-value transfer-ownership="none">
+            <type name="none" c:type="void"/>
+          </return-value>
+          <parameters>
+            <parameter name="channel" transfer-ownership="none">
+              <doc xml:space="preserve"
+                   filename="gst-libs/gst/webrtc/datachannel.c"
+                   line="506">a #GstWebRTCDataChannel</doc>
+              <type name="WebRTCDataChannel" c:type="GstWebRTCDataChannel*"/>
+            </parameter>
+            <parameter name="data"
+                       transfer-ownership="none"
+                       nullable="1"
+                       allow-none="1">
+              <doc xml:space="preserve"
+                   filename="gst-libs/gst/webrtc/datachannel.c"
+                   line="507">a #GBytes or %NULL</doc>
+              <type name="GLib.Bytes" c:type="GBytes*"/>
+            </parameter>
+          </parameters>
+        </callback>
+      </field>
+      <field name="send_string">
+        <callback name="send_string">
+          <source-position filename="gst-libs/gst/webrtc/datachannel.h"
+                           line="78"/>
+          <return-value transfer-ownership="none">
+            <type name="none" c:type="void"/>
+          </return-value>
+          <parameters>
+            <parameter name="channel" transfer-ownership="none">
+              <doc xml:space="preserve"
+                   filename="gst-libs/gst/webrtc/datachannel.c"
+                   line="525">a #GstWebRTCDataChannel</doc>
+              <type name="WebRTCDataChannel" c:type="GstWebRTCDataChannel*"/>
+            </parameter>
+            <parameter name="str"
+                       transfer-ownership="none"
+                       nullable="1"
+                       allow-none="1">
+              <doc xml:space="preserve"
+                   filename="gst-libs/gst/webrtc/datachannel.c"
+                   line="526">a string or %NULL</doc>
+              <type name="utf8" c:type="const gchar*"/>
+            </parameter>
+          </parameters>
+        </callback>
+      </field>
+      <field name="close">
+        <callback name="close">
+          <source-position filename="gst-libs/gst/webrtc/datachannel.h"
+                           line="79"/>
+          <return-value transfer-ownership="none">
+            <type name="none" c:type="void"/>
+          </return-value>
+          <parameters>
+            <parameter name="channel" transfer-ownership="none">
+              <doc xml:space="preserve"
+                   filename="gst-libs/gst/webrtc/datachannel.c"
+                   line="544">a #GstWebRTCDataChannel</doc>
+              <type name="WebRTCDataChannel" c:type="GstWebRTCDataChannel*"/>
+            </parameter>
+          </parameters>
+        </callback>
+      </field>
+      <field name="_padding">
+        <array zero-terminated="0" fixed-size="4">
+          <type name="gpointer" c:type="gpointer"/>
+        </array>
+      </field>
+    </record>
     <enumeration name="WebRTCDataChannelState"
+                 version="1.16"
                  glib:type-name="GstWebRTCDataChannelState"
                  glib:get-type="gst_webrtc_data_channel_state_get_type"
                  c:type="GstWebRTCDataChannelState">
-      <doc xml:space="preserve">GST_WEBRTC_DATA_CHANNEL_STATE_NEW: new
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/webrtc/webrtc_fwd.h"
+           line="319">GST_WEBRTC_DATA_CHANNEL_STATE_NEW: new
 GST_WEBRTC_DATA_CHANNEL_STATE_CONNECTING: connection
 GST_WEBRTC_DATA_CHANNEL_STATE_OPEN: open
 GST_WEBRTC_DATA_CHANNEL_STATE_CLOSING: closing
 GST_WEBRTC_DATA_CHANNEL_STATE_CLOSED: closed
-See &lt;ulink url="http://w3c.github.io/webrtc-pc/#dom-rtcdatachannelstate"&gt;http://w3c.github.io/webrtc-pc/#dom-rtcdatachannelstate&lt;/ulink&gt;</doc>
+See &lt;http://w3c.github.io/webrtc-pc/#dom-rtcdatachannelstate&gt;</doc>
       <member name="new"
               value="0"
               c:identifier="GST_WEBRTC_DATA_CHANNEL_STATE_NEW"
@@ -251,126 +1165,163 @@ See &lt;ulink url="http://w3c.github.io/webrtc-pc/#dom-rtcdatachannelstate"&gt;h
       </member>
     </enumeration>
     <enumeration name="WebRTCFECType"
+                 version="1.14.1"
                  glib:type-name="GstWebRTCFECType"
                  glib:get-type="gst_webrtc_fec_type_get_type"
                  c:type="GstWebRTCFECType">
-      <doc xml:space="preserve">GST_WEBRTC_FEC_TYPE_NONE: none
-GST_WEBRTC_FEC_TYPE_ULP_RED: ulpfec + red</doc>
       <member name="none"
               value="0"
               c:identifier="GST_WEBRTC_FEC_TYPE_NONE"
               glib:nick="none">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/webrtc/webrtc_fwd.h"
+             line="270">none</doc>
       </member>
       <member name="ulp_red"
               value="1"
               c:identifier="GST_WEBRTC_FEC_TYPE_ULP_RED"
               glib:nick="ulp-red">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/webrtc/webrtc_fwd.h"
+             line="271">ulpfec + red</doc>
       </member>
     </enumeration>
     <enumeration name="WebRTCICEComponent"
                  glib:type-name="GstWebRTCICEComponent"
                  glib:get-type="gst_webrtc_ice_component_get_type"
                  c:type="GstWebRTCICEComponent">
-      <doc xml:space="preserve">GST_WEBRTC_ICE_COMPONENT_RTP,
-GST_WEBRTC_ICE_COMPONENT_RTCP,</doc>
       <member name="rtp"
               value="0"
               c:identifier="GST_WEBRTC_ICE_COMPONENT_RTP"
               glib:nick="rtp">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/webrtc/webrtc_fwd.h"
+             line="175">RTP component</doc>
       </member>
       <member name="rtcp"
               value="1"
               c:identifier="GST_WEBRTC_ICE_COMPONENT_RTCP"
               glib:nick="rtcp">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/webrtc/webrtc_fwd.h"
+             line="176">RTCP component</doc>
       </member>
     </enumeration>
     <enumeration name="WebRTCICEConnectionState"
                  glib:type-name="GstWebRTCICEConnectionState"
                  glib:get-type="gst_webrtc_ice_connection_state_get_type"
                  c:type="GstWebRTCICEConnectionState">
-      <doc xml:space="preserve">GST_WEBRTC_ICE_CONNECTION_STATE_NEW: new
-GST_WEBRTC_ICE_CONNECTION_STATE_CHECKING: checking
-GST_WEBRTC_ICE_CONNECTION_STATE_CONNECTED: connected
-GST_WEBRTC_ICE_CONNECTION_STATE_COMPLETED: completed
-GST_WEBRTC_ICE_CONNECTION_STATE_FAILED: failed
-GST_WEBRTC_ICE_CONNECTION_STATE_DISCONNECTED: disconnected
-GST_WEBRTC_ICE_CONNECTION_STATE_CLOSED: closed
-See &lt;ulink url="http://w3c.github.io/webrtc-pc/#dom-rtciceconnectionstate"&gt;http://w3c.github.io/webrtc-pc/#dom-rtciceconnectionstate&lt;/ulink&gt;</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/webrtc/webrtc_fwd.h"
+           line="97">See &lt;http://w3c.github.io/webrtc-pc/#dom-rtciceconnectionstate&gt;</doc>
       <member name="new"
               value="0"
               c:identifier="GST_WEBRTC_ICE_CONNECTION_STATE_NEW"
               glib:nick="new">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/webrtc/webrtc_fwd.h"
+             line="99">new</doc>
       </member>
       <member name="checking"
               value="1"
               c:identifier="GST_WEBRTC_ICE_CONNECTION_STATE_CHECKING"
               glib:nick="checking">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/webrtc/webrtc_fwd.h"
+             line="100">checking</doc>
       </member>
       <member name="connected"
               value="2"
               c:identifier="GST_WEBRTC_ICE_CONNECTION_STATE_CONNECTED"
               glib:nick="connected">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/webrtc/webrtc_fwd.h"
+             line="101">connected</doc>
       </member>
       <member name="completed"
               value="3"
               c:identifier="GST_WEBRTC_ICE_CONNECTION_STATE_COMPLETED"
               glib:nick="completed">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/webrtc/webrtc_fwd.h"
+             line="102">completed</doc>
       </member>
       <member name="failed"
               value="4"
               c:identifier="GST_WEBRTC_ICE_CONNECTION_STATE_FAILED"
               glib:nick="failed">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/webrtc/webrtc_fwd.h"
+             line="103">failed</doc>
       </member>
       <member name="disconnected"
               value="5"
               c:identifier="GST_WEBRTC_ICE_CONNECTION_STATE_DISCONNECTED"
               glib:nick="disconnected">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/webrtc/webrtc_fwd.h"
+             line="104">disconnected</doc>
       </member>
       <member name="closed"
               value="6"
               c:identifier="GST_WEBRTC_ICE_CONNECTION_STATE_CLOSED"
               glib:nick="closed">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/webrtc/webrtc_fwd.h"
+             line="105">closed</doc>
       </member>
     </enumeration>
     <enumeration name="WebRTCICEGatheringState"
                  glib:type-name="GstWebRTCICEGatheringState"
                  glib:get-type="gst_webrtc_ice_gathering_state_get_type"
                  c:type="GstWebRTCICEGatheringState">
-      <doc xml:space="preserve">GST_WEBRTC_ICE_GATHERING_STATE_NEW: new
-GST_WEBRTC_ICE_GATHERING_STATE_GATHERING: gathering
-GST_WEBRTC_ICE_GATHERING_STATE_COMPLETE: complete
-See &lt;ulink url="http://w3c.github.io/webrtc-pc/#dom-rtcicegatheringstate"&gt;http://w3c.github.io/webrtc-pc/#dom-rtcicegatheringstate&lt;/ulink&gt;</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/webrtc/webrtc_fwd.h"
+           line="82">See &lt;http://w3c.github.io/webrtc-pc/#dom-rtcicegatheringstate&gt;</doc>
       <member name="new"
               value="0"
               c:identifier="GST_WEBRTC_ICE_GATHERING_STATE_NEW"
               glib:nick="new">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/webrtc/webrtc_fwd.h"
+             line="84">new</doc>
       </member>
       <member name="gathering"
               value="1"
               c:identifier="GST_WEBRTC_ICE_GATHERING_STATE_GATHERING"
               glib:nick="gathering">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/webrtc/webrtc_fwd.h"
+             line="85">gathering</doc>
       </member>
       <member name="complete"
               value="2"
               c:identifier="GST_WEBRTC_ICE_GATHERING_STATE_COMPLETE"
               glib:nick="complete">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/webrtc/webrtc_fwd.h"
+             line="86">complete</doc>
       </member>
     </enumeration>
     <enumeration name="WebRTCICERole"
                  glib:type-name="GstWebRTCICERole"
                  glib:get-type="gst_webrtc_ice_role_get_type"
                  c:type="GstWebRTCICERole">
-      <doc xml:space="preserve">GST_WEBRTC_ICE_ROLE_CONTROLLED: controlled
-GST_WEBRTC_ICE_ROLE_CONTROLLING: controlling</doc>
       <member name="controlled"
               value="0"
               c:identifier="GST_WEBRTC_ICE_ROLE_CONTROLLED"
               glib:nick="controlled">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/webrtc/webrtc_fwd.h"
+             line="164">controlled</doc>
       </member>
       <member name="controlling"
               value="1"
               c:identifier="GST_WEBRTC_ICE_ROLE_CONTROLLING"
               glib:nick="controlling">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/webrtc/webrtc_fwd.h"
+             line="165">controlling</doc>
       </member>
     </enumeration>
     <class name="WebRTCICETransport"
@@ -381,7 +1332,11 @@ GST_WEBRTC_ICE_ROLE_CONTROLLING: controlling</doc>
            glib:type-name="GstWebRTCICETransport"
            glib:get-type="gst_webrtc_ice_transport_get_type"
            glib:type-struct="WebRTCICETransportClass">
+      <source-position filename="gst-libs/gst/webrtc/icetransport.h"
+                       line="64"/>
       <virtual-method name="gather_candidates">
+        <source-position filename="gst-libs/gst/webrtc/icetransport.h"
+                         line="61"/>
         <return-value transfer-ownership="none">
           <type name="gboolean" c:type="gboolean"/>
         </return-value>
@@ -393,6 +1348,8 @@ GST_WEBRTC_ICE_ROLE_CONTROLLING: controlling</doc>
       </virtual-method>
       <method name="connection_state_change"
               c:identifier="gst_webrtc_ice_transport_connection_state_change">
+        <source-position filename="gst-libs/gst/webrtc/icetransport.h"
+                         line="67"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
@@ -408,6 +1365,8 @@ GST_WEBRTC_ICE_ROLE_CONTROLLING: controlling</doc>
       </method>
       <method name="gathering_state_change"
               c:identifier="gst_webrtc_ice_transport_gathering_state_change">
+        <source-position filename="gst-libs/gst/webrtc/icetransport.h"
+                         line="70"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
@@ -423,6 +1382,8 @@ GST_WEBRTC_ICE_ROLE_CONTROLLING: controlling</doc>
       </method>
       <method name="new_candidate"
               c:identifier="gst_webrtc_ice_transport_new_candidate">
+        <source-position filename="gst-libs/gst/webrtc/icetransport.h"
+                         line="75"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
@@ -443,6 +1404,8 @@ GST_WEBRTC_ICE_ROLE_CONTROLLING: controlling</doc>
       </method>
       <method name="selected_pair_change"
               c:identifier="gst_webrtc_ice_transport_selected_pair_change">
+        <source-position filename="gst-libs/gst/webrtc/icetransport.h"
+                         line="73"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
@@ -488,7 +1451,7 @@ GST_WEBRTC_ICE_ROLE_CONTROLLING: controlling</doc>
         <type name="Gst.Element" c:type="GstElement*"/>
       </field>
       <field name="_padding">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -511,11 +1474,15 @@ GST_WEBRTC_ICE_ROLE_CONTROLLING: controlling</doc>
     <record name="WebRTCICETransportClass"
             c:type="GstWebRTCICETransportClass"
             glib:is-gtype-struct-for="WebRTCICETransport">
+      <source-position filename="gst-libs/gst/webrtc/icetransport.h"
+                       line="64"/>
       <field name="parent_class">
         <type name="Gst.ObjectClass" c:type="GstObjectClass"/>
       </field>
       <field name="gather_candidates">
         <callback name="gather_candidates">
+          <source-position filename="gst-libs/gst/webrtc/icetransport.h"
+                           line="61"/>
           <return-value transfer-ownership="none">
             <type name="gboolean" c:type="gboolean"/>
           </return-value>
@@ -527,16 +1494,19 @@ GST_WEBRTC_ICE_ROLE_CONTROLLING: controlling</doc>
         </callback>
       </field>
       <field name="_padding">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
     </record>
     <enumeration name="WebRTCICETransportPolicy"
+                 version="1.16"
                  glib:type-name="GstWebRTCICETransportPolicy"
                  glib:get-type="gst_webrtc_ice_transport_policy_get_type"
                  c:type="GstWebRTCICETransportPolicy">
-      <doc xml:space="preserve">GST_WEBRTC_ICE_TRANSPORT_POLICY_ALL: all
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/webrtc/webrtc_fwd.h"
+           line="360">GST_WEBRTC_ICE_TRANSPORT_POLICY_ALL: all
 GST_WEBRTC_ICE_TRANSPORT_POLICY_RELAY: relay
 See https://tools.ietf.org/html/draft-ietf-rtcweb-jsep-24#section-4.1.1
 for more information.</doc>
@@ -555,53 +1525,70 @@ for more information.</doc>
                  glib:type-name="GstWebRTCPeerConnectionState"
                  glib:get-type="gst_webrtc_peer_connection_state_get_type"
                  c:type="GstWebRTCPeerConnectionState">
-      <doc xml:space="preserve">GST_WEBRTC_PEER_CONNECTION_STATE_NEW: new
-GST_WEBRTC_PEER_CONNECTION_STATE_CONNECTING: connecting
-GST_WEBRTC_PEER_CONNECTION_STATE_CONNECTED: connected
-GST_WEBRTC_PEER_CONNECTION_STATE_DISCONNECTED: disconnected
-GST_WEBRTC_PEER_CONNECTION_STATE_FAILED: failed
-GST_WEBRTC_PEER_CONNECTION_STATE_CLOSED: closed
-See &lt;ulink url="http://w3c.github.io/webrtc-pc/#dom-rtcpeerconnectionstate"&gt;http://w3c.github.io/webrtc-pc/#dom-rtcpeerconnectionstate&lt;/ulink&gt;</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/webrtc/webrtc_fwd.h"
+           line="141">See &lt;http://w3c.github.io/webrtc-pc/#dom-rtcpeerconnectionstate&gt;</doc>
       <member name="new"
               value="0"
               c:identifier="GST_WEBRTC_PEER_CONNECTION_STATE_NEW"
               glib:nick="new">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/webrtc/webrtc_fwd.h"
+             line="143">new</doc>
       </member>
       <member name="connecting"
               value="1"
               c:identifier="GST_WEBRTC_PEER_CONNECTION_STATE_CONNECTING"
               glib:nick="connecting">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/webrtc/webrtc_fwd.h"
+             line="144">connecting</doc>
       </member>
       <member name="connected"
               value="2"
               c:identifier="GST_WEBRTC_PEER_CONNECTION_STATE_CONNECTED"
               glib:nick="connected">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/webrtc/webrtc_fwd.h"
+             line="145">connected</doc>
       </member>
       <member name="disconnected"
               value="3"
               c:identifier="GST_WEBRTC_PEER_CONNECTION_STATE_DISCONNECTED"
               glib:nick="disconnected">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/webrtc/webrtc_fwd.h"
+             line="146">disconnected</doc>
       </member>
       <member name="failed"
               value="4"
               c:identifier="GST_WEBRTC_PEER_CONNECTION_STATE_FAILED"
               glib:nick="failed">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/webrtc/webrtc_fwd.h"
+             line="147">failed</doc>
       </member>
       <member name="closed"
               value="5"
               c:identifier="GST_WEBRTC_PEER_CONNECTION_STATE_CLOSED"
               glib:nick="closed">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/webrtc/webrtc_fwd.h"
+             line="148">closed</doc>
       </member>
     </enumeration>
     <enumeration name="WebRTCPriorityType"
+                 version="1.16"
                  glib:type-name="GstWebRTCPriorityType"
                  glib:get-type="gst_webrtc_priority_type_get_type"
                  c:type="GstWebRTCPriorityType">
-      <doc xml:space="preserve">GST_WEBRTC_PRIORITY_TYPE_VERY_LOW: very-low
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/webrtc/webrtc_fwd.h"
+           line="300">GST_WEBRTC_PRIORITY_TYPE_VERY_LOW: very-low
 GST_WEBRTC_PRIORITY_TYPE_LOW: low
 GST_WEBRTC_PRIORITY_TYPE_MEDIUM: medium
 GST_WEBRTC_PRIORITY_TYPE_HIGH: high
-See &lt;ulink url="http://w3c.github.io/webrtc-pc/#dom-rtcprioritytype"&gt;http://w3c.github.io/webrtc-pc/#dom-rtcprioritytype&lt;/ulink&gt;</doc>
+See &lt;http://w3c.github.io/webrtc-pc/#dom-rtcprioritytype&gt;</doc>
       <member name="very_low"
               value="1"
               c:identifier="GST_WEBRTC_PRIORITY_TYPE_VERY_LOW"
@@ -630,13 +1617,18 @@ See &lt;ulink url="http://w3c.github.io/webrtc-pc/#dom-rtcprioritytype"&gt;http:
            glib:type-name="GstWebRTCRTPReceiver"
            glib:get-type="gst_webrtc_rtp_receiver_get_type"
            glib:type-struct="WebRTCRTPReceiverClass">
+      <source-position filename="gst-libs/gst/webrtc/rtpreceiver.h" line="57"/>
       <constructor name="new" c:identifier="gst_webrtc_rtp_receiver_new">
+        <source-position filename="gst-libs/gst/webrtc/rtpreceiver.h"
+                         line="60"/>
         <return-value transfer-ownership="none">
           <type name="WebRTCRTPReceiver" c:type="GstWebRTCRTPReceiver*"/>
         </return-value>
       </constructor>
       <method name="set_rtcp_transport"
               c:identifier="gst_webrtc_rtp_receiver_set_rtcp_transport">
+        <source-position filename="gst-libs/gst/webrtc/rtpreceiver.h"
+                         line="65"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
@@ -651,6 +1643,8 @@ See &lt;ulink url="http://w3c.github.io/webrtc-pc/#dom-rtcprioritytype"&gt;http:
       </method>
       <method name="set_transport"
               c:identifier="gst_webrtc_rtp_receiver_set_transport">
+        <source-position filename="gst-libs/gst/webrtc/rtpreceiver.h"
+                         line="62"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
@@ -673,7 +1667,7 @@ See &lt;ulink url="http://w3c.github.io/webrtc-pc/#dom-rtcprioritytype"&gt;http:
         <type name="WebRTCDTLSTransport" c:type="GstWebRTCDTLSTransport*"/>
       </field>
       <field name="_padding">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -681,11 +1675,12 @@ See &lt;ulink url="http://w3c.github.io/webrtc-pc/#dom-rtcprioritytype"&gt;http:
     <record name="WebRTCRTPReceiverClass"
             c:type="GstWebRTCRTPReceiverClass"
             glib:is-gtype-struct-for="WebRTCRTPReceiver">
+      <source-position filename="gst-libs/gst/webrtc/rtpreceiver.h" line="57"/>
       <field name="parent_class">
         <type name="Gst.ObjectClass" c:type="GstObjectClass"/>
       </field>
       <field name="_padding">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -697,13 +1692,16 @@ See &lt;ulink url="http://w3c.github.io/webrtc-pc/#dom-rtcprioritytype"&gt;http:
            glib:type-name="GstWebRTCRTPSender"
            glib:get-type="gst_webrtc_rtp_sender_get_type"
            glib:type-struct="WebRTCRTPSenderClass">
+      <source-position filename="gst-libs/gst/webrtc/rtpsender.h" line="59"/>
       <constructor name="new" c:identifier="gst_webrtc_rtp_sender_new">
+        <source-position filename="gst-libs/gst/webrtc/rtpsender.h" line="62"/>
         <return-value transfer-ownership="none">
           <type name="WebRTCRTPSender" c:type="GstWebRTCRTPSender*"/>
         </return-value>
       </constructor>
       <method name="set_rtcp_transport"
               c:identifier="gst_webrtc_rtp_sender_set_rtcp_transport">
+        <source-position filename="gst-libs/gst/webrtc/rtpsender.h" line="68"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
@@ -718,6 +1716,7 @@ See &lt;ulink url="http://w3c.github.io/webrtc-pc/#dom-rtcprioritytype"&gt;http:
       </method>
       <method name="set_transport"
               c:identifier="gst_webrtc_rtp_sender_set_transport">
+        <source-position filename="gst-libs/gst/webrtc/rtpsender.h" line="65"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
@@ -745,7 +1744,7 @@ See &lt;ulink url="http://w3c.github.io/webrtc-pc/#dom-rtcprioritytype"&gt;http:
         </array>
       </field>
       <field name="_padding">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -753,11 +1752,12 @@ See &lt;ulink url="http://w3c.github.io/webrtc-pc/#dom-rtcprioritytype"&gt;http:
     <record name="WebRTCRTPSenderClass"
             c:type="GstWebRTCRTPSenderClass"
             glib:is-gtype-struct-for="WebRTCRTPSender">
+      <source-position filename="gst-libs/gst/webrtc/rtpsender.h" line="59"/>
       <field name="parent_class">
         <type name="Gst.ObjectClass" c:type="GstObjectClass"/>
       </field>
       <field name="_padding">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -770,6 +1770,17 @@ See &lt;ulink url="http://w3c.github.io/webrtc-pc/#dom-rtcprioritytype"&gt;http:
            glib:type-name="GstWebRTCRTPTransceiver"
            glib:get-type="gst_webrtc_rtp_transceiver_get_type"
            glib:type-struct="WebRTCRTPTransceiverClass">
+      <source-position filename="gst-libs/gst/webrtc/rtptransceiver.h"
+                       line="66"/>
+      <property name="direction"
+                version="1.18"
+                writable="1"
+                transfer-ownership="none">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/webrtc/rtptransceiver.c"
+             line="188">Direction of the transceiver.</doc>
+        <type name="WebRTCRTPTransceiverDirection"/>
+      </property>
       <property name="mlineindex"
                 writable="1"
                 construct-only="1"
@@ -818,7 +1829,7 @@ See &lt;ulink url="http://w3c.github.io/webrtc-pc/#dom-rtcprioritytype"&gt;http:
         <type name="Gst.Caps" c:type="GstCaps*"/>
       </field>
       <field name="_padding">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -826,11 +1837,13 @@ See &lt;ulink url="http://w3c.github.io/webrtc-pc/#dom-rtcprioritytype"&gt;http:
     <record name="WebRTCRTPTransceiverClass"
             c:type="GstWebRTCRTPTransceiverClass"
             glib:is-gtype-struct-for="WebRTCRTPTransceiver">
+      <source-position filename="gst-libs/gst/webrtc/rtptransceiver.h"
+                       line="66"/>
       <field name="parent_class">
         <type name="Gst.ObjectClass" c:type="GstObjectClass"/>
       </field>
       <field name="_padding">
-        <array zero-terminated="0" c:type="gpointer" fixed-size="4">
+        <array zero-terminated="0" fixed-size="4">
           <type name="gpointer" c:type="gpointer"/>
         </array>
       </field>
@@ -843,37 +1856,55 @@ See &lt;ulink url="http://w3c.github.io/webrtc-pc/#dom-rtcprioritytype"&gt;http:
               value="0"
               c:identifier="GST_WEBRTC_RTP_TRANSCEIVER_DIRECTION_NONE"
               glib:nick="none">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/webrtc/webrtc_fwd.h"
+             line="203">none</doc>
       </member>
       <member name="inactive"
               value="1"
               c:identifier="GST_WEBRTC_RTP_TRANSCEIVER_DIRECTION_INACTIVE"
               glib:nick="inactive">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/webrtc/webrtc_fwd.h"
+             line="204">inactive</doc>
       </member>
       <member name="sendonly"
               value="2"
               c:identifier="GST_WEBRTC_RTP_TRANSCEIVER_DIRECTION_SENDONLY"
               glib:nick="sendonly">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/webrtc/webrtc_fwd.h"
+             line="205">sendonly</doc>
       </member>
       <member name="recvonly"
               value="3"
               c:identifier="GST_WEBRTC_RTP_TRANSCEIVER_DIRECTION_RECVONLY"
               glib:nick="recvonly">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/webrtc/webrtc_fwd.h"
+             line="206">recvonly</doc>
       </member>
       <member name="sendrecv"
               value="4"
               c:identifier="GST_WEBRTC_RTP_TRANSCEIVER_DIRECTION_SENDRECV"
               glib:nick="sendrecv">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/webrtc/webrtc_fwd.h"
+             line="207">sendrecv</doc>
       </member>
     </enumeration>
     <enumeration name="WebRTCSCTPTransportState"
+                 version="1.16"
                  glib:type-name="GstWebRTCSCTPTransportState"
                  glib:get-type="gst_webrtc_sctp_transport_state_get_type"
                  c:type="GstWebRTCSCTPTransportState">
-      <doc xml:space="preserve">GST_WEBRTC_SCTP_TRANSPORT_STATE_NEW: new
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/webrtc/webrtc_fwd.h"
+           line="281">GST_WEBRTC_SCTP_TRANSPORT_STATE_NEW: new
 GST_WEBRTC_SCTP_TRANSPORT_STATE_CONNECTING: connecting
 GST_WEBRTC_SCTP_TRANSPORT_STATE_CONNECTED: connected
 GST_WEBRTC_SCTP_TRANSPORT_STATE_CLOSED: closed
-See &lt;ulink url="http://w3c.github.io/webrtc-pc/#dom-rtcsctptransportstate"&gt;http://w3c.github.io/webrtc-pc/#dom-rtcsctptransportstate&lt;/ulink&gt;</doc>
+See &lt;http://w3c.github.io/webrtc-pc/#dom-rtcsctptransportstate&gt;</doc>
       <member name="new"
               value="0"
               c:identifier="GST_WEBRTC_SCTP_TRANSPORT_STATE_NEW"
@@ -899,40 +1930,56 @@ See &lt;ulink url="http://w3c.github.io/webrtc-pc/#dom-rtcsctptransportstate"&gt
                  glib:type-name="GstWebRTCSDPType"
                  glib:get-type="gst_webrtc_sdp_type_get_type"
                  c:type="GstWebRTCSDPType">
-      <doc xml:space="preserve">GST_WEBRTC_SDP_TYPE_OFFER: offer
-GST_WEBRTC_SDP_TYPE_PRANSWER: pranswer
-GST_WEBRTC_SDP_TYPE_ANSWER: answer
-GST_WEBRTC_SDP_TYPE_ROLLBACK: rollback
-See &lt;ulink url="http://w3c.github.io/webrtc-pc/#rtcsdptype"&gt;http://w3c.github.io/webrtc-pc/#rtcsdptype&lt;/ulink&gt;</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/webrtc/webrtc_fwd.h"
+           line="184">See &lt;http://w3c.github.io/webrtc-pc/#rtcsdptype&gt;</doc>
       <member name="offer"
               value="1"
               c:identifier="GST_WEBRTC_SDP_TYPE_OFFER"
               glib:nick="offer">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/webrtc/webrtc_fwd.h"
+             line="186">offer</doc>
       </member>
       <member name="pranswer"
               value="2"
               c:identifier="GST_WEBRTC_SDP_TYPE_PRANSWER"
               glib:nick="pranswer">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/webrtc/webrtc_fwd.h"
+             line="187">pranswer</doc>
       </member>
       <member name="answer"
               value="3"
               c:identifier="GST_WEBRTC_SDP_TYPE_ANSWER"
               glib:nick="answer">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/webrtc/webrtc_fwd.h"
+             line="188">answer</doc>
       </member>
       <member name="rollback"
               value="4"
               c:identifier="GST_WEBRTC_SDP_TYPE_ROLLBACK"
               glib:nick="rollback">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/webrtc/webrtc_fwd.h"
+             line="189">rollback</doc>
       </member>
       <function name="to_string" c:identifier="gst_webrtc_sdp_type_to_string">
+        <source-position filename="gst-libs/gst/webrtc/rtcsessiondescription.h"
+                         line="30"/>
         <return-value transfer-ownership="none">
-          <doc xml:space="preserve">the string representation of @type or "unknown" when @type is not
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/webrtc/rtcsessiondescription.c"
+               line="41">the string representation of @type or "unknown" when @type is not
      recognized.</doc>
           <type name="utf8" c:type="const gchar*"/>
         </return-value>
         <parameters>
           <parameter name="type" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstWebRTCSDPType</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/webrtc/rtcsessiondescription.c"
+                 line="39">a #GstWebRTCSDPType</doc>
             <type name="WebRTCSDPType" c:type="GstWebRTCSDPType"/>
           </parameter>
         </parameters>
@@ -943,56 +1990,84 @@ See &lt;ulink url="http://w3c.github.io/webrtc-pc/#rtcsdptype"&gt;http://w3c.git
             glib:type-name="GstWebRTCSessionDescription"
             glib:get-type="gst_webrtc_session_description_get_type"
             c:symbol-prefix="webrtc_session_description">
-      <doc xml:space="preserve">See &lt;ulink url="https://www.w3.org/TR/webrtc/#rtcsessiondescription-class"&gt;https://www.w3.org/TR/webrtc/#rtcsessiondescription-class&lt;/ulink&gt;</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/webrtc/rtcsessiondescription.h"
+           line="36">See &lt;https://www.w3.org/TR/webrtc/#rtcsessiondescription-class&gt;</doc>
+      <source-position filename="gst-libs/gst/webrtc/rtcsessiondescription.h"
+                       line="47"/>
       <field name="type" writable="1">
-        <doc xml:space="preserve">the #GstWebRTCSDPType of the description</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/webrtc/rtcsessiondescription.h"
+             line="38">the #GstWebRTCSDPType of the description</doc>
         <type name="WebRTCSDPType" c:type="GstWebRTCSDPType"/>
       </field>
       <field name="sdp" writable="1">
-        <doc xml:space="preserve">the #GstSDPMessage of the description</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/webrtc/rtcsessiondescription.h"
+             line="39">the #GstSDPMessage of the description</doc>
         <type name="GstSdp.SDPMessage" c:type="GstSDPMessage*"/>
       </field>
       <constructor name="new"
                    c:identifier="gst_webrtc_session_description_new">
+        <source-position filename="gst-libs/gst/webrtc/rtcsessiondescription.h"
+                         line="50"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new #GstWebRTCSessionDescription from @type
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/webrtc/rtcsessiondescription.c"
+               line="103">a new #GstWebRTCSessionDescription from @type
      and @sdp</doc>
           <type name="WebRTCSessionDescription"
                 c:type="GstWebRTCSessionDescription*"/>
         </return-value>
         <parameters>
           <parameter name="type" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstWebRTCSDPType</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/webrtc/rtcsessiondescription.c"
+                 line="100">a #GstWebRTCSDPType</doc>
             <type name="WebRTCSDPType" c:type="GstWebRTCSDPType"/>
           </parameter>
           <parameter name="sdp" transfer-ownership="full">
-            <doc xml:space="preserve">a #GstSDPMessage</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/webrtc/rtcsessiondescription.c"
+                 line="101">a #GstSDPMessage</doc>
             <type name="GstSdp.SDPMessage" c:type="GstSDPMessage*"/>
           </parameter>
         </parameters>
       </constructor>
       <method name="copy" c:identifier="gst_webrtc_session_description_copy">
+        <source-position filename="gst-libs/gst/webrtc/rtcsessiondescription.h"
+                         line="52"/>
         <return-value transfer-ownership="full">
-          <doc xml:space="preserve">a new copy of @src</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/webrtc/rtcsessiondescription.c"
+               line="65">a new copy of @src</doc>
           <type name="WebRTCSessionDescription"
                 c:type="GstWebRTCSessionDescription*"/>
         </return-value>
         <parameters>
           <instance-parameter name="src" transfer-ownership="none">
-            <doc xml:space="preserve">a #GstWebRTCSessionDescription</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/webrtc/rtcsessiondescription.c"
+                 line="63">a #GstWebRTCSessionDescription</doc>
             <type name="WebRTCSessionDescription"
                   c:type="const GstWebRTCSessionDescription*"/>
           </instance-parameter>
         </parameters>
       </method>
       <method name="free" c:identifier="gst_webrtc_session_description_free">
-        <doc xml:space="preserve">Free @desc and all associated resources</doc>
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/webrtc/rtcsessiondescription.c"
+             line="83">Free @desc and all associated resources</doc>
+        <source-position filename="gst-libs/gst/webrtc/rtcsessiondescription.h"
+                         line="54"/>
         <return-value transfer-ownership="none">
           <type name="none" c:type="void"/>
         </return-value>
         <parameters>
           <instance-parameter name="desc" transfer-ownership="full">
-            <doc xml:space="preserve">a #GstWebRTCSessionDescription</doc>
+            <doc xml:space="preserve"
+                 filename="gst-libs/gst/webrtc/rtcsessiondescription.c"
+                 line="85">a #GstWebRTCSessionDescription</doc>
             <type name="WebRTCSessionDescription"
                   c:type="GstWebRTCSessionDescription*"/>
           </instance-parameter>
@@ -1003,144 +2078,192 @@ See &lt;ulink url="http://w3c.github.io/webrtc-pc/#rtcsdptype"&gt;http://w3c.git
                  glib:type-name="GstWebRTCSignalingState"
                  glib:get-type="gst_webrtc_signaling_state_get_type"
                  c:type="GstWebRTCSignalingState">
-      <doc xml:space="preserve">GST_WEBRTC_SIGNALING_STATE_STABLE: stable
-GST_WEBRTC_SIGNALING_STATE_CLOSED: closed
-GST_WEBRTC_SIGNALING_STATE_HAVE_LOCAL_OFFER: have-local-offer
-GST_WEBRTC_SIGNALING_STATE_HAVE_REMOTE_OFFER: have-remote-offer
-GST_WEBRTC_SIGNALING_STATE_HAVE_LOCAL_PRANSWER: have-local-pranswer
-GST_WEBRTC_SIGNALING_STATE_HAVE_REMOTE_PRANSWER: have-remote-pranswer
-See &lt;ulink url="http://w3c.github.io/webrtc-pc/#dom-rtcsignalingstate"&gt;http://w3c.github.io/webrtc-pc/#dom-rtcsignalingstate&lt;/ulink&gt;</doc>
+      <doc xml:space="preserve"
+           filename="gst-libs/gst/webrtc/webrtc_fwd.h"
+           line="120">See &lt;http://w3c.github.io/webrtc-pc/#dom-rtcsignalingstate&gt;</doc>
       <member name="stable"
               value="0"
               c:identifier="GST_WEBRTC_SIGNALING_STATE_STABLE"
               glib:nick="stable">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/webrtc/webrtc_fwd.h"
+             line="122">stable</doc>
       </member>
       <member name="closed"
               value="1"
               c:identifier="GST_WEBRTC_SIGNALING_STATE_CLOSED"
               glib:nick="closed">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/webrtc/webrtc_fwd.h"
+             line="123">closed</doc>
       </member>
       <member name="have_local_offer"
               value="2"
               c:identifier="GST_WEBRTC_SIGNALING_STATE_HAVE_LOCAL_OFFER"
               glib:nick="have-local-offer">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/webrtc/webrtc_fwd.h"
+             line="124">have-local-offer</doc>
       </member>
       <member name="have_remote_offer"
               value="3"
               c:identifier="GST_WEBRTC_SIGNALING_STATE_HAVE_REMOTE_OFFER"
               glib:nick="have-remote-offer">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/webrtc/webrtc_fwd.h"
+             line="125">have-remote-offer</doc>
       </member>
       <member name="have_local_pranswer"
               value="4"
               c:identifier="GST_WEBRTC_SIGNALING_STATE_HAVE_LOCAL_PRANSWER"
               glib:nick="have-local-pranswer">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/webrtc/webrtc_fwd.h"
+             line="126">have-local-pranswer</doc>
       </member>
       <member name="have_remote_pranswer"
               value="5"
               c:identifier="GST_WEBRTC_SIGNALING_STATE_HAVE_REMOTE_PRANSWER"
               glib:nick="have-remote-pranswer">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/webrtc/webrtc_fwd.h"
+             line="127">have-remote-pranswer</doc>
       </member>
     </enumeration>
     <enumeration name="WebRTCStatsType"
                  glib:type-name="GstWebRTCStatsType"
                  glib:get-type="gst_webrtc_stats_type_get_type"
                  c:type="GstWebRTCStatsType">
-      <doc xml:space="preserve">GST_WEBRTC_STATS_CODEC: codec
-GST_WEBRTC_STATS_INBOUND_RTP: inbound-rtp
-GST_WEBRTC_STATS_OUTBOUND_RTP: outbound-rtp
-GST_WEBRTC_STATS_REMOTE_INBOUND_RTP: remote-inbound-rtp
-GST_WEBRTC_STATS_REMOTE_OUTBOUND_RTP: remote-outbound-rtp
-GST_WEBRTC_STATS_CSRC: csrc
-GST_WEBRTC_STATS_PEER_CONNECTION: peer-connectiion
-GST_WEBRTC_STATS_DATA_CHANNEL: data-channel
-GST_WEBRTC_STATS_STREAM: stream
-GST_WEBRTC_STATS_TRANSPORT: transport
-GST_WEBRTC_STATS_CANDIDATE_PAIR: candidate-pair
-GST_WEBRTC_STATS_LOCAL_CANDIDATE: local-candidate
-GST_WEBRTC_STATS_REMOTE_CANDIDATE: remote-candidate
-GST_WEBRTC_STATS_CERTIFICATE: certificate</doc>
       <member name="codec"
               value="1"
               c:identifier="GST_WEBRTC_STATS_CODEC"
               glib:nick="codec">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/webrtc/webrtc_fwd.h"
+             line="235">codec</doc>
       </member>
       <member name="inbound_rtp"
               value="2"
               c:identifier="GST_WEBRTC_STATS_INBOUND_RTP"
               glib:nick="inbound-rtp">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/webrtc/webrtc_fwd.h"
+             line="236">inbound-rtp</doc>
       </member>
       <member name="outbound_rtp"
               value="3"
               c:identifier="GST_WEBRTC_STATS_OUTBOUND_RTP"
               glib:nick="outbound-rtp">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/webrtc/webrtc_fwd.h"
+             line="237">outbound-rtp</doc>
       </member>
       <member name="remote_inbound_rtp"
               value="4"
               c:identifier="GST_WEBRTC_STATS_REMOTE_INBOUND_RTP"
               glib:nick="remote-inbound-rtp">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/webrtc/webrtc_fwd.h"
+             line="238">remote-inbound-rtp</doc>
       </member>
       <member name="remote_outbound_rtp"
               value="5"
               c:identifier="GST_WEBRTC_STATS_REMOTE_OUTBOUND_RTP"
               glib:nick="remote-outbound-rtp">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/webrtc/webrtc_fwd.h"
+             line="239">remote-outbound-rtp</doc>
       </member>
       <member name="csrc"
               value="6"
               c:identifier="GST_WEBRTC_STATS_CSRC"
               glib:nick="csrc">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/webrtc/webrtc_fwd.h"
+             line="240">csrc</doc>
       </member>
       <member name="peer_connection"
               value="7"
               c:identifier="GST_WEBRTC_STATS_PEER_CONNECTION"
               glib:nick="peer-connection">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/webrtc/webrtc_fwd.h"
+             line="241">peer-connectiion</doc>
       </member>
       <member name="data_channel"
               value="8"
               c:identifier="GST_WEBRTC_STATS_DATA_CHANNEL"
               glib:nick="data-channel">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/webrtc/webrtc_fwd.h"
+             line="242">data-channel</doc>
       </member>
       <member name="stream"
               value="9"
               c:identifier="GST_WEBRTC_STATS_STREAM"
               glib:nick="stream">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/webrtc/webrtc_fwd.h"
+             line="243">stream</doc>
       </member>
       <member name="transport"
               value="10"
               c:identifier="GST_WEBRTC_STATS_TRANSPORT"
               glib:nick="transport">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/webrtc/webrtc_fwd.h"
+             line="244">transport</doc>
       </member>
       <member name="candidate_pair"
               value="11"
               c:identifier="GST_WEBRTC_STATS_CANDIDATE_PAIR"
               glib:nick="candidate-pair">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/webrtc/webrtc_fwd.h"
+             line="245">candidate-pair</doc>
       </member>
       <member name="local_candidate"
               value="12"
               c:identifier="GST_WEBRTC_STATS_LOCAL_CANDIDATE"
               glib:nick="local-candidate">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/webrtc/webrtc_fwd.h"
+             line="246">local-candidate</doc>
       </member>
       <member name="remote_candidate"
               value="13"
               c:identifier="GST_WEBRTC_STATS_REMOTE_CANDIDATE"
               glib:nick="remote-candidate">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/webrtc/webrtc_fwd.h"
+             line="247">remote-candidate</doc>
       </member>
       <member name="certificate"
               value="14"
               c:identifier="GST_WEBRTC_STATS_CERTIFICATE"
               glib:nick="certificate">
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/webrtc/webrtc_fwd.h"
+             line="248">certificate</doc>
       </member>
     </enumeration>
     <function name="webrtc_sdp_type_to_string"
               c:identifier="gst_webrtc_sdp_type_to_string"
               moved-to="WebRTCSDPType.to_string">
+      <source-position filename="gst-libs/gst/webrtc/rtcsessiondescription.h"
+                       line="30"/>
       <return-value transfer-ownership="none">
-        <doc xml:space="preserve">the string representation of @type or "unknown" when @type is not
+        <doc xml:space="preserve"
+             filename="gst-libs/gst/webrtc/rtcsessiondescription.c"
+             line="41">the string representation of @type or "unknown" when @type is not
      recognized.</doc>
         <type name="utf8" c:type="const gchar*"/>
       </return-value>
       <parameters>
         <parameter name="type" transfer-ownership="none">
-          <doc xml:space="preserve">a #GstWebRTCSDPType</doc>
+          <doc xml:space="preserve"
+               filename="gst-libs/gst/webrtc/rtcsessiondescription.c"
+               line="39">a #GstWebRTCSDPType</doc>
           <type name="WebRTCSDPType" c:type="GstWebRTCSDPType"/>
         </parameter>
       </parameters>
index d6a328d..d05da73 100644 (file)
@@ -1350,20 +1350,30 @@ namespace Gst.Audio {
                static extern int gst_audio_decoder_finish_frame(IntPtr raw, IntPtr buf, int frames);
 
                public Gst.FlowReturn FinishFrame(Gst.Buffer buf, int frames) {
+                       buf.Owned = false;
                        int raw_ret = gst_audio_decoder_finish_frame(Handle, buf == null ? IntPtr.Zero : buf.Handle, frames);
                        Gst.FlowReturn ret = (Gst.FlowReturn) raw_ret;
                        return ret;
                }
 
+               public Gst.FlowReturn FinishFrame(int frames) {
+                       return FinishFrame (null, frames);
+               }
+
                [DllImport("gstaudio-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
                static extern int gst_audio_decoder_finish_subframe(IntPtr raw, IntPtr buf);
 
                public Gst.FlowReturn FinishSubframe(Gst.Buffer buf) {
+                       buf.Owned = false;
                        int raw_ret = gst_audio_decoder_finish_subframe(Handle, buf == null ? IntPtr.Zero : buf.Handle);
                        Gst.FlowReturn ret = (Gst.FlowReturn) raw_ret;
                        return ret;
                }
 
+               public Gst.FlowReturn FinishSubframe() {
+                       return FinishSubframe (null);
+               }
+
                [DllImport("gstaudio-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
                static extern void gst_audio_decoder_get_allocator(IntPtr raw, out IntPtr allocator, IntPtr parms);
 
index 44ff052..50bcea0 100644 (file)
@@ -1302,11 +1302,16 @@ namespace Gst.Audio {
                static extern int gst_audio_encoder_finish_frame(IntPtr raw, IntPtr buffer, int samples);
 
                public Gst.FlowReturn FinishFrame(Gst.Buffer buffer, int samples) {
+                       buffer.Owned = false;
                        int raw_ret = gst_audio_encoder_finish_frame(Handle, buffer == null ? IntPtr.Zero : buffer.Handle, samples);
                        Gst.FlowReturn ret = (Gst.FlowReturn) raw_ret;
                        return ret;
                }
 
+               public Gst.FlowReturn FinishFrame(int samples) {
+                       return FinishFrame (null, samples);
+               }
+
                [DllImport("gstaudio-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
                static extern void gst_audio_encoder_get_allocator(IntPtr raw, out IntPtr allocator, IntPtr parms);
 
index 0e02892..79d918e 100644 (file)
@@ -419,6 +419,165 @@ namespace Gst.Audio {
                        unmanaged (this.Handle);
                }
 
+               static PauseNativeDelegate Pause_cb_delegate;
+               static PauseNativeDelegate PauseVMCallback {
+                       get {
+                               if (Pause_cb_delegate == null)
+                                       Pause_cb_delegate = new PauseNativeDelegate (Pause_cb);
+                               return Pause_cb_delegate;
+                       }
+               }
+
+               static void OverridePause (GLib.GType gtype)
+               {
+                       OverridePause (gtype, PauseVMCallback);
+               }
+
+               static void OverridePause (GLib.GType gtype, PauseNativeDelegate callback)
+               {
+                       unsafe {
+                               IntPtr* raw_ptr = (IntPtr*)(((long) gtype.GetClassPtr()) + (long) class_abi.GetFieldOffset("pause"));
+                               *raw_ptr = Marshal.GetFunctionPointerForDelegate((Delegate) callback);
+                       }
+               }
+
+               [UnmanagedFunctionPointer (CallingConvention.Cdecl)]
+               delegate void PauseNativeDelegate (IntPtr inst);
+
+               static void Pause_cb (IntPtr inst)
+               {
+                       try {
+                               AudioSink __obj = GLib.Object.GetObject (inst, false) as AudioSink;
+                               __obj.OnPause ();
+                       } catch (Exception e) {
+                               GLib.ExceptionManager.RaiseUnhandledException (e, false);
+                       }
+               }
+
+               [GLib.DefaultSignalHandler(Type=typeof(Gst.Audio.AudioSink), ConnectionMethod="OverridePause")]
+               protected virtual void OnPause ()
+               {
+                       InternalPause ();
+               }
+
+               private void InternalPause ()
+               {
+                       PauseNativeDelegate unmanaged = null;
+                       unsafe {
+                               IntPtr* raw_ptr = (IntPtr*)(((long) this.LookupGType().GetThresholdType().GetClassPtr()) + (long) class_abi.GetFieldOffset("pause"));
+                               unmanaged = (PauseNativeDelegate) Marshal.GetDelegateForFunctionPointer(*raw_ptr, typeof(PauseNativeDelegate));
+                       }
+                       if (unmanaged == null) return;
+
+                       unmanaged (this.Handle);
+               }
+
+               static ResumeNativeDelegate Resume_cb_delegate;
+               static ResumeNativeDelegate ResumeVMCallback {
+                       get {
+                               if (Resume_cb_delegate == null)
+                                       Resume_cb_delegate = new ResumeNativeDelegate (Resume_cb);
+                               return Resume_cb_delegate;
+                       }
+               }
+
+               static void OverrideResume (GLib.GType gtype)
+               {
+                       OverrideResume (gtype, ResumeVMCallback);
+               }
+
+               static void OverrideResume (GLib.GType gtype, ResumeNativeDelegate callback)
+               {
+                       unsafe {
+                               IntPtr* raw_ptr = (IntPtr*)(((long) gtype.GetClassPtr()) + (long) class_abi.GetFieldOffset("resume"));
+                               *raw_ptr = Marshal.GetFunctionPointerForDelegate((Delegate) callback);
+                       }
+               }
+
+               [UnmanagedFunctionPointer (CallingConvention.Cdecl)]
+               delegate void ResumeNativeDelegate (IntPtr inst);
+
+               static void Resume_cb (IntPtr inst)
+               {
+                       try {
+                               AudioSink __obj = GLib.Object.GetObject (inst, false) as AudioSink;
+                               __obj.OnResume ();
+                       } catch (Exception e) {
+                               GLib.ExceptionManager.RaiseUnhandledException (e, false);
+                       }
+               }
+
+               [GLib.DefaultSignalHandler(Type=typeof(Gst.Audio.AudioSink), ConnectionMethod="OverrideResume")]
+               protected virtual void OnResume ()
+               {
+                       InternalResume ();
+               }
+
+               private void InternalResume ()
+               {
+                       ResumeNativeDelegate unmanaged = null;
+                       unsafe {
+                               IntPtr* raw_ptr = (IntPtr*)(((long) this.LookupGType().GetThresholdType().GetClassPtr()) + (long) class_abi.GetFieldOffset("resume"));
+                               unmanaged = (ResumeNativeDelegate) Marshal.GetDelegateForFunctionPointer(*raw_ptr, typeof(ResumeNativeDelegate));
+                       }
+                       if (unmanaged == null) return;
+
+                       unmanaged (this.Handle);
+               }
+
+               static StopNativeDelegate Stop_cb_delegate;
+               static StopNativeDelegate StopVMCallback {
+                       get {
+                               if (Stop_cb_delegate == null)
+                                       Stop_cb_delegate = new StopNativeDelegate (Stop_cb);
+                               return Stop_cb_delegate;
+                       }
+               }
+
+               static void OverrideStop (GLib.GType gtype)
+               {
+                       OverrideStop (gtype, StopVMCallback);
+               }
+
+               static void OverrideStop (GLib.GType gtype, StopNativeDelegate callback)
+               {
+                       unsafe {
+                               IntPtr* raw_ptr = (IntPtr*)(((long) gtype.GetClassPtr()) + (long) class_abi.GetFieldOffset("stop"));
+                               *raw_ptr = Marshal.GetFunctionPointerForDelegate((Delegate) callback);
+                       }
+               }
+
+               [UnmanagedFunctionPointer (CallingConvention.Cdecl)]
+               delegate void StopNativeDelegate (IntPtr inst);
+
+               static void Stop_cb (IntPtr inst)
+               {
+                       try {
+                               AudioSink __obj = GLib.Object.GetObject (inst, false) as AudioSink;
+                               __obj.OnStop ();
+                       } catch (Exception e) {
+                               GLib.ExceptionManager.RaiseUnhandledException (e, false);
+                       }
+               }
+
+               [GLib.DefaultSignalHandler(Type=typeof(Gst.Audio.AudioSink), ConnectionMethod="OverrideStop")]
+               protected virtual void OnStop ()
+               {
+                       InternalStop ();
+               }
+
+               private void InternalStop ()
+               {
+                       StopNativeDelegate unmanaged = null;
+                       unsafe {
+                               IntPtr* raw_ptr = (IntPtr*)(((long) this.LookupGType().GetThresholdType().GetClassPtr()) + (long) class_abi.GetFieldOffset("stop"));
+                               unmanaged = (StopNativeDelegate) Marshal.GetDelegateForFunctionPointer(*raw_ptr, typeof(StopNativeDelegate));
+                       }
+                       if (unmanaged == null) return;
+
+                       unmanaged (this.Handle);
+               }
+
 
                // Internal representation of the wrapped structure ABI.
                static GLib.AbiStruct _class_abi = null;
@@ -478,14 +637,38 @@ namespace Gst.Audio {
                                                        , -1
                                                        , (uint) Marshal.SizeOf(typeof(IntPtr)) // reset
                                                        , "delay"
-                                                       , "_gst_reserved"
+                                                       , "pause"
                                                        , (uint) Marshal.SizeOf(typeof(IntPtr))
                                                        , 0
                                                        ),
-                                               new GLib.AbiField("_gst_reserved"
+                                               new GLib.AbiField("pause"
                                                        , -1
-                                                       , (uint) Marshal.SizeOf(typeof(IntPtr)) * 4 // _gst_reserved
+                                                       , (uint) Marshal.SizeOf(typeof(IntPtr)) // pause
                                                        , "reset"
+                                                       , "resume"
+                                                       , (uint) Marshal.SizeOf(typeof(IntPtr))
+                                                       , 0
+                                                       ),
+                                               new GLib.AbiField("resume"
+                                                       , -1
+                                                       , (uint) Marshal.SizeOf(typeof(IntPtr)) // resume
+                                                       , "pause"
+                                                       , "stop"
+                                                       , (uint) Marshal.SizeOf(typeof(IntPtr))
+                                                       , 0
+                                                       ),
+                                               new GLib.AbiField("stop"
+                                                       , -1
+                                                       , (uint) Marshal.SizeOf(typeof(IntPtr)) // stop
+                                                       , "resume"
+                                                       , "extension"
+                                                       , (uint) Marshal.SizeOf(typeof(IntPtr))
+                                                       , 0
+                                                       ),
+                                               new GLib.AbiField("extension"
+                                                       , -1
+                                                       , (uint) Marshal.SizeOf(typeof(IntPtr)) // extension
+                                                       , "stop"
                                                        , null
                                                        , (uint) Marshal.SizeOf(typeof(IntPtr))
                                                        , 0
diff --git a/sources/generated/Gst.Audio/AudioSinkClassExtension.cs b/sources/generated/Gst.Audio/AudioSinkClassExtension.cs
new file mode 100644 (file)
index 0000000..3ef75bb
--- /dev/null
@@ -0,0 +1,45 @@
+// This file was generated by the Gtk# code generator.
+// Any changes made will be lost if regenerated.
+
+namespace Gst.Audio {
+
+       using System;
+       using System.Collections;
+       using System.Collections.Generic;
+       using System.Runtime.InteropServices;
+
+#region Autogenerated code
+       [StructLayout(LayoutKind.Sequential)]
+       public partial struct AudioSinkClassExtension : IEquatable<AudioSinkClassExtension> {
+
+               private IntPtr _clear_all;
+
+               public static Gst.Audio.AudioSinkClassExtension Zero = new Gst.Audio.AudioSinkClassExtension ();
+
+               public static Gst.Audio.AudioSinkClassExtension New(IntPtr raw) {
+                       if (raw == IntPtr.Zero)
+                               return Gst.Audio.AudioSinkClassExtension.Zero;
+                       return (Gst.Audio.AudioSinkClassExtension) Marshal.PtrToStructure (raw, typeof (Gst.Audio.AudioSinkClassExtension));
+               }
+
+               public bool Equals (AudioSinkClassExtension other)
+               {
+                       return true && _clear_all.Equals (other._clear_all);
+               }
+
+               public override bool Equals (object other)
+               {
+                       return other is AudioSinkClassExtension && Equals ((AudioSinkClassExtension) other);
+               }
+
+               public override int GetHashCode ()
+               {
+                       return this.GetType ().FullName.GetHashCode () ^ _clear_all.GetHashCode ();
+               }
+
+               private static GLib.GType GType {
+                       get { return GLib.GType.Pointer; }
+               }
+#endregion
+       }
+}
index edbe7d7..336ec58 100644 (file)
@@ -25,7 +25,7 @@ namespace Gst.Audio {
                public const int AUDIO_DEF_RATE = 44100;
                public const string AUDIO_ENCODER_SINK_NAME = @"sink";
                public const string AUDIO_ENCODER_SRC_NAME = @"src";
-               public const string AUDIO_FORMATS_ALL = @" { S8, U8, S16LE, S16BE, U16LE, U16BE, S24_32LE, S24_32BE, U24_32LE, U24_32BE, S32LE, S32BE, U32LE, U32BE, S24LE, S24BE, U24LE, U24BE, S20LE, S20BE, U20LE, U20BE, S18LE, S18BE, U18LE, U18BE, F32LE, F32BE, F64LE, F64BE }";
+               public const string AUDIO_FORMATS_ALL = @"{ F64BE, F64LE, F32BE, F32LE, S32BE, S32LE, U32BE, U32LE, S24_32BE, S24_32LE, U24_32BE, U24_32LE, S24BE, S24LE, U24BE, U24LE, S20BE, S20LE, U20BE, U20LE, S18BE, S18LE, U18BE, U18LE, S16BE, S16LE, U16BE, U16LE, S8, U8 }";
                public const string AUDIO_RATE_RANGE = @"(int) [ 1, max ]";
                public const string AUDIO_RESAMPLER_OPT_CUBIC_B = @"GstAudioResampler.cubic-b";
                public const string AUDIO_RESAMPLER_OPT_CUBIC_C = @"GstAudioResampler.cubic-c";
index 71ad7f2..f21e7ae 100644 (file)
@@ -252,6 +252,23 @@ namespace Gst.Audio {
                }
 
                [DllImport("gstaudio-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern IntPtr gst_audio_make_raw_caps(int[] formats, uint len, int layout);
+
+               public static Gst.Caps AudioMakeRawCaps(Gst.Audio.AudioFormat[] formats, uint len, Gst.Audio.AudioLayout layout) {
+                       int cnt_formats = formats == null ? 0 : formats.Length;
+                       int[] native_formats = new int [cnt_formats];
+                       for (int i = 0; i < cnt_formats; i++)
+                               native_formats [i] = (int) formats[i];
+                       IntPtr raw_ret = gst_audio_make_raw_caps(native_formats, len, (int) layout);
+                       Gst.Caps ret = raw_ret == IntPtr.Zero ? null : (Gst.Caps) GLib.Opaque.GetOpaque (raw_ret, typeof (Gst.Caps), true);
+                       return ret;
+               }
+
+               public static Gst.Caps AudioMakeRawCaps(uint len, Gst.Audio.AudioLayout layout) {
+                       return AudioMakeRawCaps (null, len, layout);
+               }
+
+               [DllImport("gstaudio-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
                static extern IntPtr gst_audio_meta_api_get_type();
 
                public static GLib.GType AudioMetaApiGetType() {
index 1443102..950ac5a 100644 (file)
@@ -65,6 +65,21 @@ namespace Gst.Base {
                        }
                }
 
+               [GLib.Property ("start-time-selection")]
+               public Gst.Base.AggregatorStartTimeSelection StartTimeSelection {
+                       get {
+                               GLib.Value val = GetProperty ("start-time-selection");
+                               Gst.Base.AggregatorStartTimeSelection ret = (Gst.Base.AggregatorStartTimeSelection) (Enum) val;
+                               val.Dispose ();
+                               return ret;
+                       }
+                       set {
+                               GLib.Value val = new GLib.Value((Enum) value);
+                               SetProperty("start-time-selection", val);
+                               val.Dispose ();
+                       }
+               }
+
                public Gst.Pad Srcpad {
                        get {
                                unsafe {
@@ -1065,6 +1080,180 @@ namespace Gst.Base {
                        return __result;
                }
 
+               static NegotiateNativeDelegate Negotiate_cb_delegate;
+               static NegotiateNativeDelegate NegotiateVMCallback {
+                       get {
+                               if (Negotiate_cb_delegate == null)
+                                       Negotiate_cb_delegate = new NegotiateNativeDelegate (Negotiate_cb);
+                               return Negotiate_cb_delegate;
+                       }
+               }
+
+               static void OverrideNegotiate (GLib.GType gtype)
+               {
+                       OverrideNegotiate (gtype, NegotiateVMCallback);
+               }
+
+               static void OverrideNegotiate (GLib.GType gtype, NegotiateNativeDelegate callback)
+               {
+                       unsafe {
+                               IntPtr* raw_ptr = (IntPtr*)(((long) gtype.GetClassPtr()) + (long) class_abi.GetFieldOffset("negotiate"));
+                               *raw_ptr = Marshal.GetFunctionPointerForDelegate((Delegate) callback);
+                       }
+               }
+
+               [UnmanagedFunctionPointer (CallingConvention.Cdecl)]
+               delegate bool NegotiateNativeDelegate (IntPtr inst);
+
+               static bool Negotiate_cb (IntPtr inst)
+               {
+                       try {
+                               Aggregator __obj = GLib.Object.GetObject (inst, false) as Aggregator;
+                               bool __result;
+                               __result = __obj.OnNegotiate ();
+                               return __result;
+                       } catch (Exception e) {
+                               GLib.ExceptionManager.RaiseUnhandledException (e, true);
+                               // NOTREACHED: above call does not return.
+                               throw e;
+                       }
+               }
+
+               [GLib.DefaultSignalHandler(Type=typeof(Gst.Base.Aggregator), ConnectionMethod="OverrideNegotiate")]
+               protected virtual bool OnNegotiate ()
+               {
+                       return InternalNegotiate ();
+               }
+
+               private bool InternalNegotiate ()
+               {
+                       NegotiateNativeDelegate unmanaged = null;
+                       unsafe {
+                               IntPtr* raw_ptr = (IntPtr*)(((long) this.LookupGType().GetThresholdType().GetClassPtr()) + (long) class_abi.GetFieldOffset("negotiate"));
+                               unmanaged = (NegotiateNativeDelegate) Marshal.GetDelegateForFunctionPointer(*raw_ptr, typeof(NegotiateNativeDelegate));
+                       }
+                       if (unmanaged == null) return false;
+
+                       bool __result = unmanaged (this.Handle);
+                       return __result;
+               }
+
+               static SinkEventPreQueueNativeDelegate SinkEventPreQueue_cb_delegate;
+               static SinkEventPreQueueNativeDelegate SinkEventPreQueueVMCallback {
+                       get {
+                               if (SinkEventPreQueue_cb_delegate == null)
+                                       SinkEventPreQueue_cb_delegate = new SinkEventPreQueueNativeDelegate (SinkEventPreQueue_cb);
+                               return SinkEventPreQueue_cb_delegate;
+                       }
+               }
+
+               static void OverrideSinkEventPreQueue (GLib.GType gtype)
+               {
+                       OverrideSinkEventPreQueue (gtype, SinkEventPreQueueVMCallback);
+               }
+
+               static void OverrideSinkEventPreQueue (GLib.GType gtype, SinkEventPreQueueNativeDelegate callback)
+               {
+                       unsafe {
+                               IntPtr* raw_ptr = (IntPtr*)(((long) gtype.GetClassPtr()) + (long) class_abi.GetFieldOffset("sink_event_pre_queue"));
+                               *raw_ptr = Marshal.GetFunctionPointerForDelegate((Delegate) callback);
+                       }
+               }
+
+               [UnmanagedFunctionPointer (CallingConvention.Cdecl)]
+               delegate int SinkEventPreQueueNativeDelegate (IntPtr inst, IntPtr aggregator_pad, IntPtr evnt);
+
+               static int SinkEventPreQueue_cb (IntPtr inst, IntPtr aggregator_pad, IntPtr evnt)
+               {
+                       try {
+                               Aggregator __obj = GLib.Object.GetObject (inst, false) as Aggregator;
+                               Gst.FlowReturn __result;
+                               __result = __obj.OnSinkEventPreQueue (GLib.Object.GetObject(aggregator_pad) as Gst.Base.AggregatorPad, evnt == IntPtr.Zero ? null : (Gst.Event) GLib.Opaque.GetOpaque (evnt, typeof (Gst.Event), false));
+                               return (int) __result;
+                       } catch (Exception e) {
+                               GLib.ExceptionManager.RaiseUnhandledException (e, true);
+                               // NOTREACHED: above call does not return.
+                               throw e;
+                       }
+               }
+
+               [GLib.DefaultSignalHandler(Type=typeof(Gst.Base.Aggregator), ConnectionMethod="OverrideSinkEventPreQueue")]
+               protected virtual Gst.FlowReturn OnSinkEventPreQueue (Gst.Base.AggregatorPad aggregator_pad, Gst.Event evnt)
+               {
+                       return InternalSinkEventPreQueue (aggregator_pad, evnt);
+               }
+
+               private Gst.FlowReturn InternalSinkEventPreQueue (Gst.Base.AggregatorPad aggregator_pad, Gst.Event evnt)
+               {
+                       SinkEventPreQueueNativeDelegate unmanaged = null;
+                       unsafe {
+                               IntPtr* raw_ptr = (IntPtr*)(((long) this.LookupGType().GetThresholdType().GetClassPtr()) + (long) class_abi.GetFieldOffset("sink_event_pre_queue"));
+                               unmanaged = (SinkEventPreQueueNativeDelegate) Marshal.GetDelegateForFunctionPointer(*raw_ptr, typeof(SinkEventPreQueueNativeDelegate));
+                       }
+                       if (unmanaged == null) return (Gst.FlowReturn) 0;
+
+                       int __result = unmanaged (this.Handle, aggregator_pad == null ? IntPtr.Zero : aggregator_pad.Handle, evnt == null ? IntPtr.Zero : evnt.Handle);
+                       return (Gst.FlowReturn) __result;
+               }
+
+               static SinkQueryPreQueueNativeDelegate SinkQueryPreQueue_cb_delegate;
+               static SinkQueryPreQueueNativeDelegate SinkQueryPreQueueVMCallback {
+                       get {
+                               if (SinkQueryPreQueue_cb_delegate == null)
+                                       SinkQueryPreQueue_cb_delegate = new SinkQueryPreQueueNativeDelegate (SinkQueryPreQueue_cb);
+                               return SinkQueryPreQueue_cb_delegate;
+                       }
+               }
+
+               static void OverrideSinkQueryPreQueue (GLib.GType gtype)
+               {
+                       OverrideSinkQueryPreQueue (gtype, SinkQueryPreQueueVMCallback);
+               }
+
+               static void OverrideSinkQueryPreQueue (GLib.GType gtype, SinkQueryPreQueueNativeDelegate callback)
+               {
+                       unsafe {
+                               IntPtr* raw_ptr = (IntPtr*)(((long) gtype.GetClassPtr()) + (long) class_abi.GetFieldOffset("sink_query_pre_queue"));
+                               *raw_ptr = Marshal.GetFunctionPointerForDelegate((Delegate) callback);
+                       }
+               }
+
+               [UnmanagedFunctionPointer (CallingConvention.Cdecl)]
+               delegate bool SinkQueryPreQueueNativeDelegate (IntPtr inst, IntPtr aggregator_pad, IntPtr query);
+
+               static bool SinkQueryPreQueue_cb (IntPtr inst, IntPtr aggregator_pad, IntPtr query)
+               {
+                       try {
+                               Aggregator __obj = GLib.Object.GetObject (inst, false) as Aggregator;
+                               bool __result;
+                               __result = __obj.OnSinkQueryPreQueue (GLib.Object.GetObject(aggregator_pad) as Gst.Base.AggregatorPad, query == IntPtr.Zero ? null : (Gst.Query) GLib.Opaque.GetOpaque (query, typeof (Gst.Query), false));
+                               return __result;
+                       } catch (Exception e) {
+                               GLib.ExceptionManager.RaiseUnhandledException (e, true);
+                               // NOTREACHED: above call does not return.
+                               throw e;
+                       }
+               }
+
+               [GLib.DefaultSignalHandler(Type=typeof(Gst.Base.Aggregator), ConnectionMethod="OverrideSinkQueryPreQueue")]
+               protected virtual bool OnSinkQueryPreQueue (Gst.Base.AggregatorPad aggregator_pad, Gst.Query query)
+               {
+                       return InternalSinkQueryPreQueue (aggregator_pad, query);
+               }
+
+               private bool InternalSinkQueryPreQueue (Gst.Base.AggregatorPad aggregator_pad, Gst.Query query)
+               {
+                       SinkQueryPreQueueNativeDelegate unmanaged = null;
+                       unsafe {
+                               IntPtr* raw_ptr = (IntPtr*)(((long) this.LookupGType().GetThresholdType().GetClassPtr()) + (long) class_abi.GetFieldOffset("sink_query_pre_queue"));
+                               unmanaged = (SinkQueryPreQueueNativeDelegate) Marshal.GetDelegateForFunctionPointer(*raw_ptr, typeof(SinkQueryPreQueueNativeDelegate));
+                       }
+                       if (unmanaged == null) return false;
+
+                       bool __result = unmanaged (this.Handle, aggregator_pad == null ? IntPtr.Zero : aggregator_pad.Handle, query == null ? IntPtr.Zero : query.Handle);
+                       return __result;
+               }
+
 
                // Internal representation of the wrapped structure ABI.
                static GLib.AbiStruct _class_abi = null;
@@ -1212,14 +1401,38 @@ namespace Gst.Base {
                                                        , -1
                                                        , (uint) Marshal.SizeOf(typeof(IntPtr)) // propose_allocation
                                                        , "decide_allocation"
+                                                       , "negotiate"
+                                                       , (uint) Marshal.SizeOf(typeof(IntPtr))
+                                                       , 0
+                                                       ),
+                                               new GLib.AbiField("negotiate"
+                                                       , -1
+                                                       , (uint) Marshal.SizeOf(typeof(IntPtr)) // negotiate
+                                                       , "propose_allocation"
+                                                       , "sink_event_pre_queue"
+                                                       , (uint) Marshal.SizeOf(typeof(IntPtr))
+                                                       , 0
+                                                       ),
+                                               new GLib.AbiField("sink_event_pre_queue"
+                                                       , -1
+                                                       , (uint) Marshal.SizeOf(typeof(IntPtr)) // sink_event_pre_queue
+                                                       , "negotiate"
+                                                       , "sink_query_pre_queue"
+                                                       , (uint) Marshal.SizeOf(typeof(IntPtr))
+                                                       , 0
+                                                       ),
+                                               new GLib.AbiField("sink_query_pre_queue"
+                                                       , -1
+                                                       , (uint) Marshal.SizeOf(typeof(IntPtr)) // sink_query_pre_queue
+                                                       , "sink_event_pre_queue"
                                                        , "_gst_reserved"
                                                        , (uint) Marshal.SizeOf(typeof(IntPtr))
                                                        , 0
                                                        ),
                                                new GLib.AbiField("_gst_reserved"
                                                        , -1
-                                                       , (uint) Marshal.SizeOf(typeof(IntPtr)) * 20 // _gst_reserved
-                                                       , "propose_allocation"
+                                                       , (uint) Marshal.SizeOf(typeof(IntPtr)) * 17 // _gst_reserved
+                                                       , "sink_query_pre_queue"
                                                        , null
                                                        , (uint) Marshal.SizeOf(typeof(IntPtr))
                                                        , 0
@@ -1278,6 +1491,15 @@ namespace Gst.Base {
                }
 
                [DllImport("gstbase-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern bool gst_aggregator_negotiate(IntPtr raw);
+
+               public bool Negotiate() {
+                       bool raw_ret = gst_aggregator_negotiate(Handle);
+                       bool ret = raw_ret;
+                       return ret;
+               }
+
+               [DllImport("gstbase-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
                static extern void gst_aggregator_set_latency(IntPtr raw, ulong min_latency, ulong max_latency);
 
                public void SetLatency(ulong min_latency, ulong max_latency) {
@@ -1302,6 +1524,15 @@ namespace Gst.Base {
                        return ret;
                }
 
+               [DllImport("gstbase-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern void gst_aggregator_update_segment(IntPtr raw, IntPtr segment);
+
+               public void UpdateSegment(Gst.Segment segment) {
+                       IntPtr native_segment = GLib.Marshaller.StructureToPtrAlloc (segment);
+                       gst_aggregator_update_segment(Handle, native_segment);
+                       Marshal.FreeHGlobal (native_segment);
+               }
+
 
                static Aggregator ()
                {
diff --git a/sources/generated/Gst.Base/AggregatorStartTimeSelection.cs b/sources/generated/Gst.Base/AggregatorStartTimeSelection.cs
new file mode 100644 (file)
index 0000000..df0d7ec
--- /dev/null
@@ -0,0 +1,29 @@
+// This file was generated by the Gtk# code generator.
+// Any changes made will be lost if regenerated.
+
+namespace Gst.Base {
+
+       using System;
+       using System.Runtime.InteropServices;
+
+#region Autogenerated code
+       [GLib.GType (typeof (Gst.Base.AggregatorStartTimeSelectionGType))]
+       public enum AggregatorStartTimeSelection {
+
+               Zero = 0,
+               First = 1,
+               Set = 2,
+       }
+
+       internal class AggregatorStartTimeSelectionGType {
+               [DllImport ("gstbase-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern IntPtr gst_aggregator_start_time_selection_get_type ();
+
+               public static GLib.GType GType {
+                       get {
+                               return new GLib.GType (gst_aggregator_start_time_selection_get_type ());
+                       }
+               }
+       }
+#endregion
+}
index 18461d5..0ebb01f 100644 (file)
@@ -166,6 +166,18 @@ namespace Gst.Base {
                }
 
                [DllImport("gstbase-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern IntPtr gst_base_sink_get_stats(IntPtr raw);
+
+               [GLib.Property ("stats")]
+               public Gst.Structure Stats {
+                       get  {
+                               IntPtr raw_ret = gst_base_sink_get_stats(Handle);
+                               Gst.Structure ret = raw_ret == IntPtr.Zero ? null : (Gst.Structure) GLib.Opaque.GetOpaque (raw_ret, typeof (Gst.Structure), true);
+                               return ret;
+                       }
+               }
+
+               [DllImport("gstbase-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
                static extern bool gst_base_sink_get_sync(IntPtr raw);
 
                [DllImport("gstbase-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
index da7db32..4edcc3b 100644 (file)
@@ -1568,6 +1568,15 @@ namespace Gst.Base {
                }
 
                [DllImport("gstbase-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern bool gst_base_src_negotiate(IntPtr raw);
+
+               public bool Negotiate() {
+                       bool raw_ret = gst_base_src_negotiate(Handle);
+                       bool ret = raw_ret;
+                       return ret;
+               }
+
+               [DllImport("gstbase-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
                static extern bool gst_base_src_new_seamless_segment(IntPtr raw, long start, long stop, long time);
 
                public bool NewSeamlessSegment(long start, long stop, long time) {
index 6a044bd..8b69ef4 100644 (file)
@@ -1665,6 +1665,15 @@ namespace Gst.Base {
                }
 
                [DllImport("gstbase-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern bool gst_base_transform_reconfigure(IntPtr raw);
+
+               public bool Reconfigure() {
+                       bool raw_ret = gst_base_transform_reconfigure(Handle);
+                       bool ret = raw_ret;
+                       return ret;
+               }
+
+               [DllImport("gstbase-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
                static extern void gst_base_transform_reconfigure_sink(IntPtr raw);
 
                public void ReconfigureSink() {
index a12d80d..07f1103 100644 (file)
@@ -35,6 +35,30 @@ namespace Gst.Controller {
                        GLib.Marshaller.Free (native_ref_property_name);
                }
 
+
+               // Internal representation of the wrapped structure ABI.
+               static GLib.AbiStruct _class_abi = null;
+               static public new GLib.AbiStruct class_abi {
+                       get {
+                               if (_class_abi == null)
+                                       _class_abi = new GLib.AbiStruct (new List<GLib.AbiField>{ 
+                                               new GLib.AbiField("_padding"
+                                                       , Gst.ControlBinding.class_abi.Fields
+                                                       , (uint) Marshal.SizeOf(typeof(IntPtr)) * 4 // _padding
+                                                       , null
+                                                       , null
+                                                       , (uint) Marshal.SizeOf(typeof(IntPtr))
+                                                       , 0
+                                                       ),
+                                       });
+
+                               return _class_abi;
+                       }
+               }
+
+
+               // End of the ABI representation.
+
                [DllImport("gstcontroller-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
                static extern IntPtr gst_proxy_control_binding_get_type();
 
@@ -51,6 +75,46 @@ namespace Gst.Controller {
                {
                        GtkSharp.GstreamerSharp.ObjectManager.Initialize ();
                }
+
+               // Internal representation of the wrapped structure ABI.
+               static GLib.AbiStruct _abi_info = null;
+               static public new GLib.AbiStruct abi_info {
+                       get {
+                               if (_abi_info == null)
+                                       _abi_info = new GLib.AbiStruct (new List<GLib.AbiField>{ 
+                                               new GLib.AbiField("ref_object"
+                                                       , Gst.ControlBinding.abi_info.Fields
+                                                       , (uint) Marshal.SizeOf(typeof(IntPtr)) // ref_object
+                                                       , null
+                                                       , "property_name"
+                                                       , (uint) Marshal.SizeOf(typeof(IntPtr))
+                                                       , 0
+                                                       ),
+                                               new GLib.AbiField("property_name"
+                                                       , -1
+                                                       , (uint) Marshal.SizeOf(typeof(IntPtr)) // property_name
+                                                       , "ref_object"
+                                                       , "_padding"
+                                                       , (uint) Marshal.SizeOf(typeof(IntPtr))
+                                                       , 0
+                                                       ),
+                                               new GLib.AbiField("_padding"
+                                                       , -1
+                                                       , (uint) Marshal.SizeOf(typeof(IntPtr)) * 4 // _padding
+                                                       , "property_name"
+                                                       , null
+                                                       , (uint) Marshal.SizeOf(typeof(IntPtr))
+                                                       , 0
+                                                       ),
+                                       });
+
+                               return _abi_info;
+                       }
+               }
+
+
+               // End of the ABI representation.
+
 #endregion
        }
 }
index 3ef6d3b..3bfa56b 100644 (file)
@@ -88,6 +88,15 @@ namespace Gst.Net {
                }
 
                [DllImport("gstnet-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern bool gst_net_utils_set_socket_tos(IntPtr socket, int qos_dscp);
+
+               public static bool NetUtilsSetSocketTos(GLib.Socket socket, int qos_dscp) {
+                       bool raw_ret = gst_net_utils_set_socket_tos(socket == null ? IntPtr.Zero : socket.Handle, qos_dscp);
+                       bool ret = raw_ret;
+                       return ret;
+               }
+
+               [DllImport("gstnet-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
                static extern void gst_ptp_deinit();
 
                public static void PtpDeinit() {
index 85419c5..f77ed36 100644 (file)
@@ -264,6 +264,23 @@ namespace Gst.PbUtils {
                }
 
                [DllImport("gstpbutils-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern bool gst_encoding_profile_get_single_segment(IntPtr raw);
+
+               [DllImport("gstpbutils-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern void gst_encoding_profile_set_single_segment(IntPtr raw, bool single_segment);
+
+               public bool SingleSegment { 
+                       get {
+                               bool raw_ret = gst_encoding_profile_get_single_segment(Handle);
+                               bool ret = raw_ret;
+                               return ret;
+                       }
+                       set {
+                               gst_encoding_profile_set_single_segment(Handle, value);
+                       }
+               }
+
+               [DllImport("gstpbutils-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
                static extern IntPtr gst_encoding_profile_get_type_nick(IntPtr raw);
 
                public string TypeNick { 
index 5b59630..0198459 100644 (file)
@@ -22,6 +22,7 @@ namespace Gst.Rtp {
                PsfbTypeTstr = 5,
                PsfbTypeTstn = 6,
                PsfbTypeVbcn = 7,
+               RtpfbTypeTwcc = 15,
                PsfbTypeAfb = 15,
        }
 
index e1ec311..c510fd2 100644 (file)
@@ -18,6 +18,21 @@ namespace Gst.Rtp {
                        CreateNativeObject (new string [0], new GLib.Value [0]);
                }
 
+               [GLib.Property ("max-reorder")]
+               public int MaxReorder {
+                       get {
+                               GLib.Value val = GetProperty ("max-reorder");
+                               int ret = (int) val;
+                               val.Dispose ();
+                               return ret;
+                       }
+                       set {
+                               GLib.Value val = new GLib.Value(value);
+                               SetProperty("max-reorder", val);
+                               val.Dispose ();
+                       }
+               }
+
                [GLib.Property ("source-info")]
                public bool SourceInfo {
                        get {
index f9163d7..0191b5a 100644 (file)
@@ -123,6 +123,21 @@ namespace Gst.Rtp {
                        }
                }
 
+               [GLib.Property ("scale-rtptime")]
+               public bool ScaleRtptime {
+                       get {
+                               GLib.Value val = GetProperty ("scale-rtptime");
+                               bool ret = (bool) val;
+                               val.Dispose ();
+                               return ret;
+                       }
+                       set {
+                               GLib.Value val = new GLib.Value(value);
+                               SetProperty("scale-rtptime", val);
+                               val.Dispose ();
+                       }
+               }
+
                [GLib.Property ("seqnum")]
                public uint Seqnum {
                        get {
@@ -213,6 +228,21 @@ namespace Gst.Rtp {
                        }
                }
 
+               [GLib.Property ("twcc-ext-id")]
+               public uint TwccExtId {
+                       get {
+                               GLib.Value val = GetProperty ("twcc-ext-id");
+                               uint ret = (uint) val;
+                               val.Dispose ();
+                               return ret;
+                       }
+                       set {
+                               GLib.Value val = new GLib.Value(value);
+                               SetProperty("twcc-ext-id", val);
+                               val.Dispose ();
+                       }
+               }
+
                static GetCapsNativeDelegate GetCaps_cb_delegate;
                static GetCapsNativeDelegate GetCapsVMCallback {
                        get {
index f22b593..b043dc5 100644 (file)
@@ -30,6 +30,7 @@ namespace Gst.Rtsp {
                [DllImport("gstrtsp-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
                static extern int gst_rtsp_connection_connect(IntPtr raw, IntPtr timeout);
 
+               [Obsolete]
                public Gst.Rtsp.RTSPResult Connect(IntPtr timeout) {
                        int raw_ret = gst_rtsp_connection_connect(Handle, timeout);
                        Gst.Rtsp.RTSPResult ret = (Gst.Rtsp.RTSPResult) raw_ret;
@@ -37,8 +38,18 @@ namespace Gst.Rtsp {
                }
 
                [DllImport("gstrtsp-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern int gst_rtsp_connection_connect_usec(IntPtr raw, long timeout);
+
+               public Gst.Rtsp.RTSPResult ConnectUsec(long timeout) {
+                       int raw_ret = gst_rtsp_connection_connect_usec(Handle, timeout);
+                       Gst.Rtsp.RTSPResult ret = (Gst.Rtsp.RTSPResult) raw_ret;
+                       return ret;
+               }
+
+               [DllImport("gstrtsp-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
                static extern int gst_rtsp_connection_connect_with_response(IntPtr raw, IntPtr timeout, IntPtr response);
 
+               [Obsolete]
                public Gst.Rtsp.RTSPResult ConnectWithResponse(IntPtr timeout, Gst.Rtsp.RTSPMessage response) {
                        IntPtr native_response = GLib.Marshaller.StructureToPtrAlloc (response);
                        int raw_ret = gst_rtsp_connection_connect_with_response(Handle, timeout, native_response);
@@ -48,6 +59,17 @@ namespace Gst.Rtsp {
                }
 
                [DllImport("gstrtsp-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern int gst_rtsp_connection_connect_with_response_usec(IntPtr raw, long timeout, IntPtr response);
+
+               public Gst.Rtsp.RTSPResult ConnectWithResponseUsec(long timeout, Gst.Rtsp.RTSPMessage response) {
+                       IntPtr native_response = GLib.Marshaller.StructureToPtrAlloc (response);
+                       int raw_ret = gst_rtsp_connection_connect_with_response_usec(Handle, timeout, native_response);
+                       Gst.Rtsp.RTSPResult ret = (Gst.Rtsp.RTSPResult) raw_ret;
+                       Marshal.FreeHGlobal (native_response);
+                       return ret;
+               }
+
+               [DllImport("gstrtsp-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
                static extern int gst_rtsp_connection_do_tunnel(IntPtr raw, IntPtr conn2);
 
                public Gst.Rtsp.RTSPResult DoTunnel(Gst.Rtsp.RTSPConnection conn2) {
@@ -224,6 +246,7 @@ namespace Gst.Rtsp {
                [DllImport("gstrtsp-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
                static extern int gst_rtsp_connection_next_timeout(IntPtr raw, IntPtr timeout);
 
+               [Obsolete]
                public Gst.Rtsp.RTSPResult NextTimeout(IntPtr timeout) {
                        int raw_ret = gst_rtsp_connection_next_timeout(Handle, timeout);
                        Gst.Rtsp.RTSPResult ret = (Gst.Rtsp.RTSPResult) raw_ret;
@@ -231,8 +254,18 @@ namespace Gst.Rtsp {
                }
 
                [DllImport("gstrtsp-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern long gst_rtsp_connection_next_timeout_usec(IntPtr raw);
+
+               public long NextTimeoutUsec() {
+                       long raw_ret = gst_rtsp_connection_next_timeout_usec(Handle);
+                       long ret = raw_ret;
+                       return ret;
+               }
+
+               [DllImport("gstrtsp-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
                static extern int gst_rtsp_connection_poll(IntPtr raw, int events, int revents, IntPtr timeout);
 
+               [Obsolete]
                public Gst.Rtsp.RTSPResult Poll(Gst.Rtsp.RTSPEvent events, Gst.Rtsp.RTSPEvent revents, IntPtr timeout) {
                        int raw_ret = gst_rtsp_connection_poll(Handle, (int) events, (int) revents, timeout);
                        Gst.Rtsp.RTSPResult ret = (Gst.Rtsp.RTSPResult) raw_ret;
@@ -240,8 +273,18 @@ namespace Gst.Rtsp {
                }
 
                [DllImport("gstrtsp-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern int gst_rtsp_connection_poll_usec(IntPtr raw, int events, int revents, long timeout);
+
+               public Gst.Rtsp.RTSPResult PollUsec(Gst.Rtsp.RTSPEvent events, Gst.Rtsp.RTSPEvent revents, long timeout) {
+                       int raw_ret = gst_rtsp_connection_poll_usec(Handle, (int) events, (int) revents, timeout);
+                       Gst.Rtsp.RTSPResult ret = (Gst.Rtsp.RTSPResult) raw_ret;
+                       return ret;
+               }
+
+               [DllImport("gstrtsp-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
                static extern int gst_rtsp_connection_read(IntPtr raw, byte data, uint size, IntPtr timeout);
 
+               [Obsolete]
                public Gst.Rtsp.RTSPResult Read(byte data, uint size, IntPtr timeout) {
                        int raw_ret = gst_rtsp_connection_read(Handle, data, size, timeout);
                        Gst.Rtsp.RTSPResult ret = (Gst.Rtsp.RTSPResult) raw_ret;
@@ -249,8 +292,18 @@ namespace Gst.Rtsp {
                }
 
                [DllImport("gstrtsp-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern int gst_rtsp_connection_read_usec(IntPtr raw, byte data, uint size, long timeout);
+
+               public Gst.Rtsp.RTSPResult ReadUsec(byte data, uint size, long timeout) {
+                       int raw_ret = gst_rtsp_connection_read_usec(Handle, data, size, timeout);
+                       Gst.Rtsp.RTSPResult ret = (Gst.Rtsp.RTSPResult) raw_ret;
+                       return ret;
+               }
+
+               [DllImport("gstrtsp-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
                static extern int gst_rtsp_connection_receive(IntPtr raw, IntPtr message, IntPtr timeout);
 
+               [Obsolete]
                public Gst.Rtsp.RTSPResult Receive(Gst.Rtsp.RTSPMessage message, IntPtr timeout) {
                        IntPtr native_message = GLib.Marshaller.StructureToPtrAlloc (message);
                        int raw_ret = gst_rtsp_connection_receive(Handle, native_message, timeout);
@@ -260,6 +313,17 @@ namespace Gst.Rtsp {
                }
 
                [DllImport("gstrtsp-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern int gst_rtsp_connection_receive_usec(IntPtr raw, IntPtr message, long timeout);
+
+               public Gst.Rtsp.RTSPResult ReceiveUsec(Gst.Rtsp.RTSPMessage message, long timeout) {
+                       IntPtr native_message = GLib.Marshaller.StructureToPtrAlloc (message);
+                       int raw_ret = gst_rtsp_connection_receive_usec(Handle, native_message, timeout);
+                       Gst.Rtsp.RTSPResult ret = (Gst.Rtsp.RTSPResult) raw_ret;
+                       Marshal.FreeHGlobal (native_message);
+                       return ret;
+               }
+
+               [DllImport("gstrtsp-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
                static extern int gst_rtsp_connection_reset_timeout(IntPtr raw);
 
                public Gst.Rtsp.RTSPResult ResetTimeout() {
@@ -271,6 +335,7 @@ namespace Gst.Rtsp {
                [DllImport("gstrtsp-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
                static extern int gst_rtsp_connection_send(IntPtr raw, IntPtr message, IntPtr timeout);
 
+               [Obsolete]
                public Gst.Rtsp.RTSPResult Send(Gst.Rtsp.RTSPMessage message, IntPtr timeout) {
                        IntPtr native_message = GLib.Marshaller.StructureToPtrAlloc (message);
                        int raw_ret = gst_rtsp_connection_send(Handle, native_message, timeout);
@@ -282,6 +347,7 @@ namespace Gst.Rtsp {
                [DllImport("gstrtsp-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
                static extern int gst_rtsp_connection_send_messages(IntPtr raw, Gst.Rtsp.RTSPMessage[] messages, uint n_messages, IntPtr timeout);
 
+               [Obsolete]
                public Gst.Rtsp.RTSPResult SendMessages(Gst.Rtsp.RTSPMessage[] messages, IntPtr timeout) {
                        int raw_ret = gst_rtsp_connection_send_messages(Handle, messages, (uint) (messages == null ? 0 : messages.Length), timeout);
                        Gst.Rtsp.RTSPResult ret = (Gst.Rtsp.RTSPResult) raw_ret;
@@ -289,6 +355,26 @@ namespace Gst.Rtsp {
                }
 
                [DllImport("gstrtsp-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern int gst_rtsp_connection_send_messages_usec(IntPtr raw, Gst.Rtsp.RTSPMessage[] messages, uint n_messages, long timeout);
+
+               public Gst.Rtsp.RTSPResult SendMessagesUsec(Gst.Rtsp.RTSPMessage[] messages, long timeout) {
+                       int raw_ret = gst_rtsp_connection_send_messages_usec(Handle, messages, (uint) (messages == null ? 0 : messages.Length), timeout);
+                       Gst.Rtsp.RTSPResult ret = (Gst.Rtsp.RTSPResult) raw_ret;
+                       return ret;
+               }
+
+               [DllImport("gstrtsp-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern int gst_rtsp_connection_send_usec(IntPtr raw, IntPtr message, long timeout);
+
+               public Gst.Rtsp.RTSPResult SendUsec(Gst.Rtsp.RTSPMessage message, long timeout) {
+                       IntPtr native_message = GLib.Marshaller.StructureToPtrAlloc (message);
+                       int raw_ret = gst_rtsp_connection_send_usec(Handle, native_message, timeout);
+                       Gst.Rtsp.RTSPResult ret = (Gst.Rtsp.RTSPResult) raw_ret;
+                       Marshal.FreeHGlobal (native_message);
+                       return ret;
+               }
+
+               [DllImport("gstrtsp-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
                static extern void gst_rtsp_connection_set_accept_certificate_func(IntPtr raw, Gst.RtspSharp.RTSPConnectionAcceptCertificateFuncNative func, IntPtr user_data, GLib.DestroyNotify destroy_notify);
 
                public Gst.Rtsp.RTSPConnectionAcceptCertificateFunc AcceptCertificateFunc { 
@@ -332,6 +418,15 @@ namespace Gst.Rtsp {
                }
 
                [DllImport("gstrtsp-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern void gst_rtsp_connection_set_content_length_limit(IntPtr raw, uint limit);
+
+               public uint ContentLengthLimit { 
+                       set {
+                               gst_rtsp_connection_set_content_length_limit(Handle, value);
+                       }
+               }
+
+               [DllImport("gstrtsp-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
                static extern void gst_rtsp_connection_set_http_mode(IntPtr raw, bool enable);
 
                public bool HttpMode { 
@@ -381,6 +476,7 @@ namespace Gst.Rtsp {
                [DllImport("gstrtsp-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
                static extern int gst_rtsp_connection_write(IntPtr raw, byte data, uint size, IntPtr timeout);
 
+               [Obsolete]
                public Gst.Rtsp.RTSPResult Write(byte data, uint size, IntPtr timeout) {
                        int raw_ret = gst_rtsp_connection_write(Handle, data, size, timeout);
                        Gst.Rtsp.RTSPResult ret = (Gst.Rtsp.RTSPResult) raw_ret;
@@ -388,6 +484,15 @@ namespace Gst.Rtsp {
                }
 
                [DllImport("gstrtsp-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern int gst_rtsp_connection_write_usec(IntPtr raw, byte data, uint size, long timeout);
+
+               public Gst.Rtsp.RTSPResult WriteUsec(byte data, uint size, long timeout) {
+                       int raw_ret = gst_rtsp_connection_write_usec(Handle, data, size, timeout);
+                       Gst.Rtsp.RTSPResult ret = (Gst.Rtsp.RTSPResult) raw_ret;
+                       return ret;
+               }
+
+               [DllImport("gstrtsp-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
                static extern int gst_rtsp_connection_accept(IntPtr socket, out IntPtr conn, IntPtr cancellable);
 
                public static Gst.Rtsp.RTSPResult Accept(GLib.Socket socket, out Gst.Rtsp.RTSPConnection conn, GLib.Cancellable cancellable) {
index ff94b1b..67519d0 100644 (file)
@@ -82,6 +82,21 @@ namespace Gst.Rtsp {
                }
 
                [DllImport("gstrtsp-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern IntPtr gst_rtsp_url_get_request_uri_with_control(IntPtr raw, IntPtr control_path);
+
+               public string GetRequestUriWithControl(string control_path) {
+                       IntPtr this_as_native = System.Runtime.InteropServices.Marshal.AllocHGlobal (System.Runtime.InteropServices.Marshal.SizeOf (this));
+                       System.Runtime.InteropServices.Marshal.StructureToPtr (this, this_as_native, false);
+                       IntPtr native_control_path = GLib.Marshaller.StringToPtrGStrdup (control_path);
+                       IntPtr raw_ret = gst_rtsp_url_get_request_uri_with_control(this_as_native, native_control_path);
+                       string ret = GLib.Marshaller.PtrToStringGFree(raw_ret);
+                       ReadNative (this_as_native, ref this);
+                       System.Runtime.InteropServices.Marshal.FreeHGlobal (this_as_native);
+                       GLib.Marshaller.Free (native_control_path);
+                       return ret;
+               }
+
+               [DllImport("gstrtsp-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
                static extern int gst_rtsp_url_set_port(IntPtr raw, ushort port);
 
                public Gst.Rtsp.RTSPResult SetPort(ushort port) {
index 92db499..e7fd163 100644 (file)
@@ -75,6 +75,7 @@ namespace Gst.Rtsp {
                [DllImport("gstrtsp-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
                static extern int gst_rtsp_watch_wait_backlog(IntPtr raw, IntPtr timeout);
 
+               [Obsolete]
                public Gst.Rtsp.RTSPResult WaitBacklog(IntPtr timeout) {
                        int raw_ret = gst_rtsp_watch_wait_backlog(Handle, timeout);
                        Gst.Rtsp.RTSPResult ret = (Gst.Rtsp.RTSPResult) raw_ret;
@@ -82,6 +83,15 @@ namespace Gst.Rtsp {
                }
 
                [DllImport("gstrtsp-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern int gst_rtsp_watch_wait_backlog_usec(IntPtr raw, long timeout);
+
+               public Gst.Rtsp.RTSPResult WaitBacklogUsec(long timeout) {
+                       int raw_ret = gst_rtsp_watch_wait_backlog_usec(Handle, timeout);
+                       Gst.Rtsp.RTSPResult ret = (Gst.Rtsp.RTSPResult) raw_ret;
+                       return ret;
+               }
+
+               [DllImport("gstrtsp-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
                static extern int gst_rtsp_watch_write_data(IntPtr raw, byte[] data, uint size, out uint id);
 
                public Gst.Rtsp.RTSPResult WriteData(byte[] data, uint size, out uint id) {
index 7833c2c..c57955e 100644 (file)
@@ -11,6 +11,8 @@ namespace Gst.Tags {
 #region Autogenerated code
        public partial class Constants {
 
+               public const string TAG_ACOUSTID_FINGERPRINT = @"chromaprint-fingerprint";
+               public const string TAG_ACOUSTID_ID = @"acoustid-id";
                public const string TAG_CAPTURING_CONTRAST = @"capturing-contrast";
                public const string TAG_CAPTURING_DIGITAL_ZOOM_RATIO = @"capturing-digital-zoom-ratio";
                public const string TAG_CAPTURING_EXPOSURE_COMPENSATION = @"capturing-exposure-compensation";
@@ -44,6 +46,8 @@ namespace Gst.Tags {
                public const string TAG_MUSICBRAINZ_ALBUMARTISTID = @"musicbrainz-albumartistid";
                public const string TAG_MUSICBRAINZ_ALBUMID = @"musicbrainz-albumid";
                public const string TAG_MUSICBRAINZ_ARTISTID = @"musicbrainz-artistid";
+               public const string TAG_MUSICBRAINZ_RELEASEGROUPID = @"musicbrainz-releasegroupid";
+               public const string TAG_MUSICBRAINZ_RELEASETRACKID = @"musicbrainz-releasetrackid";
                public const string TAG_MUSICBRAINZ_TRACKID = @"musicbrainz-trackid";
                public const string TAG_MUSICBRAINZ_TRMID = @"musicbrainz-trmid";
 #endregion
index e9e9459..457db9e 100644 (file)
@@ -25,6 +25,9 @@ namespace Gst.Video {
                public const string META_TAG_VIDEO_SIZE_STR = @"size";
                public const string META_TAG_VIDEO_STR = @"video";
                public const string VIDEO_COLORIMETRY_BT2020 = @"bt2020";
+               public const string VIDEO_COLORIMETRY_BT2020_10 = @"bt2020-10";
+               public const string VIDEO_COLORIMETRY_BT2100_HLG = @"bt2100-hlg";
+               public const string VIDEO_COLORIMETRY_BT2100_PQ = @"bt2100-pq";
                public const string VIDEO_COLORIMETRY_BT601 = @"bt601";
                public const string VIDEO_COLORIMETRY_BT709 = @"bt709";
                public const string VIDEO_COLORIMETRY_SMPTE240M = @"smpte240m";
@@ -65,11 +68,10 @@ namespace Gst.Video {
                public const string VIDEO_DECODER_SRC_NAME = @"src";
                public const string VIDEO_ENCODER_SINK_NAME = @"sink";
                public const string VIDEO_ENCODER_SRC_NAME = @"src";
-               public const string VIDEO_FORMATS_ALL = @"{ I420, YV12, YUY2, UYVY, AYUV, VUYA, RGBx, BGRx, xRGB, xBGR, RGBA, BGRA, ARGB, ABGR, RGB, BGR, Y41B, Y42B, YVYU, Y444, v210, v216, Y210, Y410, NV12, NV21, GRAY8, GRAY16_BE, GRAY16_LE, v308, RGB16, BGR16, RGB15, BGR15, UYVP, A420, RGB8P, YUV9, YVU9, IYU1, ARGB64, AYUV64, r210, I420_10BE, I420_10LE, I422_10BE, I422_10LE, Y444_10BE, Y444_10LE, GBR, GBR_10BE, GBR_10LE, NV16, NV24, NV12_64Z32, A420_10BE, A420_10LE, A422_10BE, A422_10LE, A444_10BE, A444_10LE, NV61, P010_10BE, P010_10LE, IYU2, VYUY, GBRA, GBRA_10BE, GBRA_10LE, BGR10A2_LE, GBR_12BE, GBR_12LE, GBRA_12BE, GBRA_12LE, I420_12BE, I420_12LE, I422_12BE, I422_12LE, Y444_12BE, Y444_12LE, GRAY10_LE32, NV12_10LE32, NV16_10LE32, NV12_10LE40 }";
+               public const string VIDEO_FORMATS_ALL = @"{ AYUV64, ARGB64, GBRA_12BE, GBRA_12LE, Y412_BE, Y412_LE, A444_10BE, GBRA_10BE, A444_10LE, GBRA_10LE, A422_10BE, A422_10LE, A420_10BE, A420_10LE, Y410, RGB10A2_LE, BGR10A2_LE, GBRA, ABGR, VUYA, BGRA, AYUV, ARGB, RGBA, A420, Y444_16BE, Y444_16LE, v216, P016_BE, P016_LE, Y444_12BE, GBR_12BE, Y444_12LE, GBR_12LE, I422_12BE, I422_12LE, Y212_BE, Y212_LE, I420_12BE, I420_12LE, P012_BE, P012_LE, Y444_10BE, GBR_10BE, Y444_10LE, GBR_10LE, r210, I422_10BE, I422_10LE, NV16_10LE32, Y210, v210, UYVP, I420_10BE, I420_10LE, P010_10BE, P010_10LE, NV12_10LE32, NV12_10LE40, Y444, GBR, NV24, xBGR, BGRx, xRGB, RGBx, BGR, IYU2, v308, RGB, Y42B, NV61, NV16, VYUY, UYVY, YVYU, YUY2, I420, YV12, NV21, NV12, NV12_64Z32, Y41B, IYU1, YVU9, YUV9, RGB16, BGR16, RGB15, BGR15, RGB8P, GRAY16_BE, GRAY16_LE, GRAY10_LE32, GRAY8 }";
                public const string VIDEO_FPS_RANGE = @"(fraction) [ 0, max ]";
                public const int VIDEO_MAX_COMPONENTS = 4;
                public const int VIDEO_MAX_PLANES = 4;
-               public const string VIDEO_OVERLAY_COMPOSITION_BLEND_FORMATS = @"{ BGRx, RGBx, xRGB, xBGR, RGBA, BGRA, ARGB, ABGR, RGB, BGR, I420, YV12, AYUV, YUY2, UYVY, v308, Y41B, Y42B, Y444, NV12, NV21, A420, YUV9, YVU9, IYU1, GRAY8 }";
                public const string VIDEO_RESAMPLER_OPT_CUBIC_B = @"GstVideoResampler.cubic-b";
                public const string VIDEO_RESAMPLER_OPT_CUBIC_C = @"GstVideoResampler.cubic-c";
                public const string VIDEO_RESAMPLER_OPT_ENVELOPE = @"GstVideoResampler.envelope";
index 240b9c5..6c00ad3 100644 (file)
@@ -12,6 +12,15 @@ namespace Gst.Video {
        public partial class Global {
 
                [DllImport("gstvideo-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern IntPtr gst_buffer_add_video_afd_meta(IntPtr buffer, byte field, int spec, int afd);
+
+               public static Gst.Video.VideoAFDMeta BufferAddVideoAfdMeta(Gst.Buffer buffer, byte field, Gst.Video.VideoAFDSpec spec, Gst.Video.VideoAFDValue afd) {
+                       IntPtr raw_ret = gst_buffer_add_video_afd_meta(buffer == null ? IntPtr.Zero : buffer.Handle, field, (int) spec, (int) afd);
+                       Gst.Video.VideoAFDMeta ret = Gst.Video.VideoAFDMeta.New (raw_ret);
+                       return ret;
+               }
+
+               [DllImport("gstvideo-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
                static extern IntPtr gst_buffer_add_video_affine_transformation_meta(IntPtr buffer);
 
                public static Gst.Video.VideoAffineTransformationMeta BufferAddVideoAffineTransformationMeta(Gst.Buffer buffer) {
@@ -21,6 +30,15 @@ namespace Gst.Video {
                }
 
                [DllImport("gstvideo-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern IntPtr gst_buffer_add_video_bar_meta(IntPtr buffer, byte field, bool is_letterbox, uint bar_data1, uint bar_data2);
+
+               public static Gst.Video.VideoBarMeta BufferAddVideoBarMeta(Gst.Buffer buffer, byte field, bool is_letterbox, uint bar_data1, uint bar_data2) {
+                       IntPtr raw_ret = gst_buffer_add_video_bar_meta(buffer == null ? IntPtr.Zero : buffer.Handle, field, is_letterbox, bar_data1, bar_data2);
+                       Gst.Video.VideoBarMeta ret = Gst.Video.VideoBarMeta.New (raw_ret);
+                       return ret;
+               }
+
+               [DllImport("gstvideo-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
                static extern IntPtr gst_buffer_add_video_caption_meta(IntPtr buffer, int caption_type, byte[] data, UIntPtr size);
 
                public static Gst.Video.VideoCaptionMeta BufferAddVideoCaptionMeta(Gst.Buffer buffer, Gst.Video.VideoCaptionType caption_type, byte[] data, ulong size) {
@@ -207,6 +225,15 @@ namespace Gst.Video {
                }
 
                [DllImport("gstvideo-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern bool gst_navigation_event_parse_mouse_scroll_event(IntPtr evnt, out double x, out double y, out double delta_x, out double delta_y);
+
+               public static bool NavigationEventParseMouseScrollEvent(Gst.Event evnt, out double x, out double y, out double delta_x, out double delta_y) {
+                       bool raw_ret = gst_navigation_event_parse_mouse_scroll_event(evnt == null ? IntPtr.Zero : evnt.Handle, out x, out y, out delta_x, out delta_y);
+                       bool ret = raw_ret;
+                       return ret;
+               }
+
+               [DllImport("gstvideo-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
                static extern int gst_navigation_message_get_type(IntPtr message);
 
                public static Gst.Video.NavigationMessageType NavigationMessageGetType(Gst.Message message) {
@@ -355,6 +382,24 @@ namespace Gst.Video {
                }
 
                [DllImport("gstvideo-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern IntPtr gst_video_afd_meta_api_get_type();
+
+               public static GLib.GType VideoAfdMetaApiGetType() {
+                       IntPtr raw_ret = gst_video_afd_meta_api_get_type();
+                       GLib.GType ret = new GLib.GType(raw_ret);
+                       return ret;
+               }
+
+               [DllImport("gstvideo-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern IntPtr gst_video_afd_meta_get_info();
+
+               public static Gst.MetaInfo VideoAfdMetaGetInfo() {
+                       IntPtr raw_ret = gst_video_afd_meta_get_info();
+                       Gst.MetaInfo ret = Gst.MetaInfo.New (raw_ret);
+                       return ret;
+               }
+
+               [DllImport("gstvideo-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
                static extern IntPtr gst_video_affine_transformation_meta_api_get_type();
 
                public static GLib.GType VideoAffineTransformationMetaApiGetType() {
@@ -373,6 +418,24 @@ namespace Gst.Video {
                }
 
                [DllImport("gstvideo-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern IntPtr gst_video_bar_meta_api_get_type();
+
+               public static GLib.GType VideoBarMetaApiGetType() {
+                       IntPtr raw_ret = gst_video_bar_meta_api_get_type();
+                       GLib.GType ret = new GLib.GType(raw_ret);
+                       return ret;
+               }
+
+               [DllImport("gstvideo-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern IntPtr gst_video_bar_meta_get_info();
+
+               public static Gst.MetaInfo VideoBarMetaGetInfo() {
+                       IntPtr raw_ret = gst_video_bar_meta_get_info();
+                       Gst.MetaInfo ret = Gst.MetaInfo.New (raw_ret);
+                       return ret;
+               }
+
+               [DllImport("gstvideo-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
                static extern bool gst_video_blend(IntPtr dest, IntPtr src, int x, int y, float global_alpha);
 
                public static bool VideoBlend(Gst.Video.VideoFrame dest, Gst.Video.VideoFrame src, int x, int y, float global_alpha) {
@@ -473,6 +536,15 @@ namespace Gst.Video {
                }
 
                [DllImport("gstvideo-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern int gst_video_color_matrix_from_iso(uint value);
+
+               public static Gst.Video.VideoColorMatrix VideoColorMatrixFromIso(uint value) {
+                       int raw_ret = gst_video_color_matrix_from_iso(value);
+                       Gst.Video.VideoColorMatrix ret = (Gst.Video.VideoColorMatrix) raw_ret;
+                       return ret;
+               }
+
+               [DllImport("gstvideo-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
                static extern bool gst_video_color_matrix_get_Kr_Kb(int matrix, out double Kr, out double Kb);
 
                public static bool VideoColorMatrixGetKrKb(Gst.Video.VideoColorMatrix matrix, out double Kr, out double Kb) {
@@ -482,6 +554,24 @@ namespace Gst.Video {
                }
 
                [DllImport("gstvideo-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern uint gst_video_color_matrix_to_iso(int matrix);
+
+               public static uint VideoColorMatrixToIso(Gst.Video.VideoColorMatrix matrix) {
+                       uint raw_ret = gst_video_color_matrix_to_iso((int) matrix);
+                       uint ret = raw_ret;
+                       return ret;
+               }
+
+               [DllImport("gstvideo-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern int gst_video_color_primaries_from_iso(uint value);
+
+               public static Gst.Video.VideoColorPrimaries VideoColorPrimariesFromIso(uint value) {
+                       int raw_ret = gst_video_color_primaries_from_iso(value);
+                       Gst.Video.VideoColorPrimaries ret = (Gst.Video.VideoColorPrimaries) raw_ret;
+                       return ret;
+               }
+
+               [DllImport("gstvideo-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
                static extern IntPtr gst_video_color_primaries_get_info(int primaries);
 
                public static Gst.Video.VideoColorPrimariesInfo VideoColorPrimariesGetInfo(Gst.Video.VideoColorPrimaries primaries) {
@@ -491,6 +581,15 @@ namespace Gst.Video {
                }
 
                [DllImport("gstvideo-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern uint gst_video_color_primaries_to_iso(int primaries);
+
+               public static uint VideoColorPrimariesToIso(Gst.Video.VideoColorPrimaries primaries) {
+                       uint raw_ret = gst_video_color_primaries_to_iso((int) primaries);
+                       uint ret = raw_ret;
+                       return ret;
+               }
+
+               [DllImport("gstvideo-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
                static extern void gst_video_color_range_offsets(int range, IntPtr info, out int[] offset, out int[] scale);
 
                public static void VideoColorRangeOffsets(Gst.Video.VideoColorRange range, Gst.Video.VideoFormatInfo info, out int[] offset, out int[] scale) {
@@ -520,6 +619,24 @@ namespace Gst.Video {
                }
 
                [DllImport("gstvideo-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern int gst_video_color_transfer_from_iso(uint value);
+
+               public static Gst.Video.VideoTransferFunction VideoColorTransferFromIso(uint value) {
+                       int raw_ret = gst_video_color_transfer_from_iso(value);
+                       Gst.Video.VideoTransferFunction ret = (Gst.Video.VideoTransferFunction) raw_ret;
+                       return ret;
+               }
+
+               [DllImport("gstvideo-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern uint gst_video_color_transfer_to_iso(int func);
+
+               public static uint VideoColorTransferToIso(Gst.Video.VideoTransferFunction func) {
+                       uint raw_ret = gst_video_color_transfer_to_iso((int) func);
+                       uint ret = raw_ret;
+                       return ret;
+               }
+
+               [DllImport("gstvideo-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
                static extern unsafe IntPtr gst_video_convert_sample(IntPtr sample, IntPtr to_caps, ulong timeout, out IntPtr error);
 
                public static unsafe Gst.Sample VideoConvertSample(Gst.Sample sample, Gst.Caps to_caps, ulong timeout) {
@@ -763,6 +880,56 @@ namespace Gst.Video {
                }
 
                [DllImport("gstvideo-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern IntPtr gst_video_make_raw_caps(int[] formats, uint len);
+
+               public static Gst.Caps VideoMakeRawCaps(Gst.Video.VideoFormat[] formats, uint len) {
+                       int cnt_formats = formats == null ? 0 : formats.Length;
+                       int[] native_formats = new int [cnt_formats];
+                       for (int i = 0; i < cnt_formats; i++)
+                               native_formats [i] = (int) formats[i];
+                       IntPtr raw_ret = gst_video_make_raw_caps(native_formats, len);
+                       Gst.Caps ret = raw_ret == IntPtr.Zero ? null : (Gst.Caps) GLib.Opaque.GetOpaque (raw_ret, typeof (Gst.Caps), true);
+                       return ret;
+               }
+
+               public static Gst.Caps VideoMakeRawCaps(uint len) {
+                       return VideoMakeRawCaps (null, len);
+               }
+
+               [DllImport("gstvideo-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern IntPtr gst_video_make_raw_caps_with_features(int[] formats, uint len, IntPtr features);
+
+               public static Gst.Caps VideoMakeRawCapsWithFeatures(Gst.Video.VideoFormat[] formats, uint len, Gst.CapsFeatures features) {
+                       int cnt_formats = formats == null ? 0 : formats.Length;
+                       int[] native_formats = new int [cnt_formats];
+                       for (int i = 0; i < cnt_formats; i++)
+                               native_formats [i] = (int) formats[i];
+                       IntPtr native_features = GLib.Marshaller.StructureToPtrAlloc (features);
+                       IntPtr raw_ret = gst_video_make_raw_caps_with_features(native_formats, len, native_features);
+                       Gst.Caps ret = raw_ret == IntPtr.Zero ? null : (Gst.Caps) GLib.Opaque.GetOpaque (raw_ret, typeof (Gst.Caps), true);
+                       Marshal.FreeHGlobal (native_features);
+                       return ret;
+               }
+
+               public static Gst.Caps VideoMakeRawCapsWithFeatures(uint len) {
+                       return VideoMakeRawCapsWithFeatures (null, len, Gst.CapsFeatures.Zero);
+               }
+
+               [DllImport("gstvideo-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern bool gst_video_mastering_display_info_from_string(IntPtr minfo, IntPtr mastering);
+
+               public static bool VideoMasteringDisplayInfoFromString(out Gst.Video.VideoMasteringDisplayInfo minfo, string mastering) {
+                       IntPtr native_minfo = Marshal.AllocHGlobal (Marshal.SizeOf (typeof (Gst.Video.VideoMasteringDisplayInfo)));
+                       IntPtr native_mastering = GLib.Marshaller.StringToPtrGStrdup (mastering);
+                       bool raw_ret = gst_video_mastering_display_info_from_string(native_minfo, native_mastering);
+                       bool ret = raw_ret;
+                       minfo = Gst.Video.VideoMasteringDisplayInfo.New (native_minfo);
+                       Marshal.FreeHGlobal (native_minfo);
+                       GLib.Marshaller.Free (native_mastering);
+                       return ret;
+               }
+
+               [DllImport("gstvideo-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
                static extern IntPtr gst_video_meta_api_get_type();
 
                public static GLib.GType VideoMetaApiGetType() {
index 94fc1b6..8616d47 100644 (file)
@@ -12,6 +12,7 @@ namespace Gst.Video {
                void SendEvent(Gst.Structure structure);
                void SendKeyEvent(string evnt, string key);
                void SendMouseEvent(string evnt, int button, double x, double y);
+               void SendMouseScrollEvent(double x, double y, double delta_x, double delta_y);
        }
 
        [GLib.GInterface (typeof (NavigationAdapter))]
index ffd3f4b..5dee4be 100644 (file)
@@ -171,6 +171,15 @@ namespace Gst.Video {
                }
 
                [DllImport("gstvideo-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern bool gst_navigation_event_parse_mouse_scroll_event(IntPtr evnt, out double x, out double y, out double delta_x, out double delta_y);
+
+               public static bool EventParseMouseScrollEvent(Gst.Event evnt, out double x, out double y, out double delta_x, out double delta_y) {
+                       bool raw_ret = gst_navigation_event_parse_mouse_scroll_event(evnt == null ? IntPtr.Zero : evnt.Handle, out x, out y, out delta_x, out delta_y);
+                       bool ret = raw_ret;
+                       return ret;
+               }
+
+               [DllImport("gstvideo-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
                static extern int gst_navigation_message_get_type(IntPtr message);
 
                public static Gst.Video.NavigationMessageType MessageGetType(Gst.Message message) {
@@ -352,6 +361,13 @@ namespace Gst.Video {
                        GLib.Marshaller.Free (native_evnt);
                }
 
+               [DllImport("gstvideo-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern void gst_navigation_send_mouse_scroll_event(IntPtr raw, double x, double y, double delta_x, double delta_y);
+
+               public void SendMouseScrollEvent(double x, double y, double delta_x, double delta_y) {
+                       gst_navigation_send_mouse_scroll_event(Handle, x, y, delta_x, delta_y);
+               }
+
 #endregion
        }
 }
index aab9963..2047aaa 100644 (file)
@@ -17,6 +17,7 @@ namespace Gst.Video {
                MouseButtonRelease = 4,
                MouseMove = 5,
                Command = 6,
+               MouseScroll = 7,
        }
 
        internal class NavigationEventTypeGType {
diff --git a/sources/generated/Gst.Video/VideoAFDMeta.cs b/sources/generated/Gst.Video/VideoAFDMeta.cs
new file mode 100644 (file)
index 0000000..3f6eeea
--- /dev/null
@@ -0,0 +1,59 @@
+// This file was generated by the Gtk# code generator.
+// Any changes made will be lost if regenerated.
+
+namespace Gst.Video {
+
+       using System;
+       using System.Collections;
+       using System.Collections.Generic;
+       using System.Runtime.InteropServices;
+
+#region Autogenerated code
+       [StructLayout(LayoutKind.Sequential)]
+       public partial struct VideoAFDMeta : IEquatable<VideoAFDMeta> {
+
+               public Gst.Meta Meta;
+               public byte Field;
+               public Gst.Video.VideoAFDSpec Spec;
+               public Gst.Video.VideoAFDValue Afd;
+
+               public static Gst.Video.VideoAFDMeta Zero = new Gst.Video.VideoAFDMeta ();
+
+               public static Gst.Video.VideoAFDMeta New(IntPtr raw) {
+                       if (raw == IntPtr.Zero)
+                               return Gst.Video.VideoAFDMeta.Zero;
+                       return (Gst.Video.VideoAFDMeta) Marshal.PtrToStructure (raw, typeof (Gst.Video.VideoAFDMeta));
+               }
+
+               [DllImport("gstvideo-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern IntPtr gst_video_afd_meta_get_info();
+
+               public static Gst.MetaInfo Info { 
+                       get {
+                               IntPtr raw_ret = gst_video_afd_meta_get_info();
+                               Gst.MetaInfo ret = Gst.MetaInfo.New (raw_ret);
+                               return ret;
+                       }
+               }
+
+               public bool Equals (VideoAFDMeta other)
+               {
+                       return true && Meta.Equals (other.Meta) && Field.Equals (other.Field) && Spec.Equals (other.Spec) && Afd.Equals (other.Afd);
+               }
+
+               public override bool Equals (object other)
+               {
+                       return other is VideoAFDMeta && Equals ((VideoAFDMeta) other);
+               }
+
+               public override int GetHashCode ()
+               {
+                       return this.GetType ().FullName.GetHashCode () ^ Meta.GetHashCode () ^ Field.GetHashCode () ^ Spec.GetHashCode () ^ Afd.GetHashCode ();
+               }
+
+               private static GLib.GType GType {
+                       get { return GLib.GType.Pointer; }
+               }
+#endregion
+       }
+}
diff --git a/sources/generated/Gst.Video/VideoAFDSpec.cs b/sources/generated/Gst.Video/VideoAFDSpec.cs
new file mode 100644 (file)
index 0000000..7815162
--- /dev/null
@@ -0,0 +1,29 @@
+// This file was generated by the Gtk# code generator.
+// Any changes made will be lost if regenerated.
+
+namespace Gst.Video {
+
+       using System;
+       using System.Runtime.InteropServices;
+
+#region Autogenerated code
+       [GLib.GType (typeof (Gst.Video.VideoAFDSpecGType))]
+       public enum VideoAFDSpec {
+
+               DvbEtsi = 0,
+               AtscA53 = 1,
+               SmpteSt20161 = 2,
+       }
+
+       internal class VideoAFDSpecGType {
+               [DllImport ("gstvideo-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern IntPtr gst_video_afd_spec_get_type ();
+
+               public static GLib.GType GType {
+                       get {
+                               return new GLib.GType (gst_video_afd_spec_get_type ());
+                       }
+               }
+       }
+#endregion
+}
diff --git a/sources/generated/Gst.Video/VideoAFDValue.cs b/sources/generated/Gst.Video/VideoAFDValue.cs
new file mode 100644 (file)
index 0000000..6a1a388
--- /dev/null
@@ -0,0 +1,37 @@
+// This file was generated by the Gtk# code generator.
+// Any changes made will be lost if regenerated.
+
+namespace Gst.Video {
+
+       using System;
+       using System.Runtime.InteropServices;
+
+#region Autogenerated code
+       [GLib.GType (typeof (Gst.Video.VideoAFDValueGType))]
+       public enum VideoAFDValue {
+
+               Unavailable = 0,
+               _16169TopAligned = 2,
+               _14149TopAligned = 3,
+               GreaterThan169 = 4,
+               _443Full169Full = 8,
+               _443Full43Pillar = 9,
+               _16169Letter169Full = 10,
+               _14149Letter149Pillar = 11,
+               _443Full149Center = 13,
+               _16169Letter149Center = 14,
+               _16169Letter43Center = 15,
+       }
+
+       internal class VideoAFDValueGType {
+               [DllImport ("gstvideo-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern IntPtr gst_video_afd_value_get_type ();
+
+               public static GLib.GType GType {
+                       get {
+                               return new GLib.GType (gst_video_afd_value_get_type ());
+                       }
+               }
+       }
+#endregion
+}
index a93b524..001fd0f 100644 (file)
@@ -25,11 +25,12 @@ namespace Gst.Video {
                }
 
                [DllImport("gstvideo-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
-               static extern void gst_video_affine_transformation_meta_apply_matrix(IntPtr raw, float matrix);
+               static extern void gst_video_affine_transformation_meta_apply_matrix(IntPtr raw, float[] matrix);
 
-               public void ApplyMatrix(float matrix) {
+               public void ApplyMatrix(float[] matrix) {
                        IntPtr this_as_native = System.Runtime.InteropServices.Marshal.AllocHGlobal (System.Runtime.InteropServices.Marshal.SizeOf (this));
                        System.Runtime.InteropServices.Marshal.StructureToPtr (this, this_as_native, false);
+                       matrix = new float[16];
                        gst_video_affine_transformation_meta_apply_matrix(this_as_native, matrix);
                        ReadNative (this_as_native, ref this);
                        System.Runtime.InteropServices.Marshal.FreeHGlobal (this_as_native);
index b0a706d..10e9ed2 100644 (file)
@@ -18,6 +18,21 @@ namespace Gst.Video {
                        CreateNativeObject (new string [0], new GLib.Value [0]);
                }
 
+               [GLib.Property ("max-last-buffer-repeat")]
+               public ulong MaxLastBufferRepeat {
+                       get {
+                               GLib.Value val = GetProperty ("max-last-buffer-repeat");
+                               ulong ret = (ulong) val;
+                               val.Dispose ();
+                               return ret;
+                       }
+                       set {
+                               GLib.Value val = new GLib.Value(value);
+                               SetProperty("max-last-buffer-repeat", val);
+                               val.Dispose ();
+                       }
+               }
+
                [GLib.Property ("repeat-after-eos")]
                public bool RepeatAfterEos {
                        get {
index 85bd086..7dcecec 100644 (file)
@@ -10,8 +10,9 @@ namespace Gst.Video {
        [GLib.GType (typeof (Gst.Video.VideoAncillaryDID16GType))]
        public enum VideoAncillaryDID16 {
 
-               _708 = 24833,
-               _608 = 24834,
+               S20163AfdBar = 16645,
+               S334Eia708 = 24833,
+               S334Eia608 = 24834,
        }
 
        internal class VideoAncillaryDID16GType {
diff --git a/sources/generated/Gst.Video/VideoBarMeta.cs b/sources/generated/Gst.Video/VideoBarMeta.cs
new file mode 100644 (file)
index 0000000..dee24ff
--- /dev/null
@@ -0,0 +1,60 @@
+// This file was generated by the Gtk# code generator.
+// Any changes made will be lost if regenerated.
+
+namespace Gst.Video {
+
+       using System;
+       using System.Collections;
+       using System.Collections.Generic;
+       using System.Runtime.InteropServices;
+
+#region Autogenerated code
+       [StructLayout(LayoutKind.Sequential)]
+       public partial struct VideoBarMeta : IEquatable<VideoBarMeta> {
+
+               public Gst.Meta Meta;
+               public byte Field;
+               public bool IsLetterbox;
+               public uint BarData1;
+               public uint BarData2;
+
+               public static Gst.Video.VideoBarMeta Zero = new Gst.Video.VideoBarMeta ();
+
+               public static Gst.Video.VideoBarMeta New(IntPtr raw) {
+                       if (raw == IntPtr.Zero)
+                               return Gst.Video.VideoBarMeta.Zero;
+                       return (Gst.Video.VideoBarMeta) Marshal.PtrToStructure (raw, typeof (Gst.Video.VideoBarMeta));
+               }
+
+               [DllImport("gstvideo-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern IntPtr gst_video_bar_meta_get_info();
+
+               public static Gst.MetaInfo Info { 
+                       get {
+                               IntPtr raw_ret = gst_video_bar_meta_get_info();
+                               Gst.MetaInfo ret = Gst.MetaInfo.New (raw_ret);
+                               return ret;
+                       }
+               }
+
+               public bool Equals (VideoBarMeta other)
+               {
+                       return true && Meta.Equals (other.Meta) && Field.Equals (other.Field) && IsLetterbox.Equals (other.IsLetterbox) && BarData1.Equals (other.BarData1) && BarData2.Equals (other.BarData2);
+               }
+
+               public override bool Equals (object other)
+               {
+                       return other is VideoBarMeta && Equals ((VideoBarMeta) other);
+               }
+
+               public override int GetHashCode ()
+               {
+                       return this.GetType ().FullName.GetHashCode () ^ Meta.GetHashCode () ^ Field.GetHashCode () ^ IsLetterbox.GetHashCode () ^ BarData1.GetHashCode () ^ BarData2.GetHashCode ();
+               }
+
+               private static GLib.GType GType {
+                       get { return GLib.GType.Pointer; }
+               }
+#endregion
+       }
+}
index 677a9b8..7805031 100644 (file)
@@ -11,6 +11,7 @@ namespace Gst.Video {
        [GLib.GType (typeof (Gst.Video.VideoBufferFlagsGType))]
        public enum VideoBufferFlags {
 
+               Marker = 512,
                Interlaced = 1048576,
                Tff = 2097152,
                Rff = 4194304,
diff --git a/sources/generated/Gst.Video/VideoContentLightLevel.cs b/sources/generated/Gst.Video/VideoContentLightLevel.cs
new file mode 100644 (file)
index 0000000..4ddaf1f
--- /dev/null
@@ -0,0 +1,118 @@
+// This file was generated by the Gtk# code generator.
+// Any changes made will be lost if regenerated.
+
+namespace Gst.Video {
+
+       using System;
+       using System.Collections;
+       using System.Collections.Generic;
+       using System.Runtime.InteropServices;
+
+#region Autogenerated code
+       [StructLayout(LayoutKind.Sequential)]
+       public partial struct VideoContentLightLevel : IEquatable<VideoContentLightLevel> {
+
+               public ushort MaxContentLightLevel;
+               public ushort MaxFrameAverageLightLevel;
+               [MarshalAs (UnmanagedType.ByValArray, SizeConst=4)]
+               private IntPtr[] _gstGstReserved;
+
+               public static Gst.Video.VideoContentLightLevel Zero = new Gst.Video.VideoContentLightLevel ();
+
+               public static Gst.Video.VideoContentLightLevel New(IntPtr raw) {
+                       if (raw == IntPtr.Zero)
+                               return Gst.Video.VideoContentLightLevel.Zero;
+                       return (Gst.Video.VideoContentLightLevel) Marshal.PtrToStructure (raw, typeof (Gst.Video.VideoContentLightLevel));
+               }
+
+               [DllImport("gstvideo-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern bool gst_video_content_light_level_add_to_caps(IntPtr raw, IntPtr caps);
+
+               public bool AddToCaps(Gst.Caps caps) {
+                       IntPtr this_as_native = System.Runtime.InteropServices.Marshal.AllocHGlobal (System.Runtime.InteropServices.Marshal.SizeOf (this));
+                       System.Runtime.InteropServices.Marshal.StructureToPtr (this, this_as_native, false);
+                       bool raw_ret = gst_video_content_light_level_add_to_caps(this_as_native, caps == null ? IntPtr.Zero : caps.Handle);
+                       bool ret = raw_ret;
+                       ReadNative (this_as_native, ref this);
+                       System.Runtime.InteropServices.Marshal.FreeHGlobal (this_as_native);
+                       return ret;
+               }
+
+               [DllImport("gstvideo-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern bool gst_video_content_light_level_from_caps(IntPtr raw, IntPtr caps);
+
+               public bool FromCaps(Gst.Caps caps) {
+                       IntPtr this_as_native = System.Runtime.InteropServices.Marshal.AllocHGlobal (System.Runtime.InteropServices.Marshal.SizeOf (this));
+                       System.Runtime.InteropServices.Marshal.StructureToPtr (this, this_as_native, false);
+                       bool raw_ret = gst_video_content_light_level_from_caps(this_as_native, caps == null ? IntPtr.Zero : caps.Handle);
+                       bool ret = raw_ret;
+                       ReadNative (this_as_native, ref this);
+                       System.Runtime.InteropServices.Marshal.FreeHGlobal (this_as_native);
+                       return ret;
+               }
+
+               [DllImport("gstvideo-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern bool gst_video_content_light_level_from_string(IntPtr raw, IntPtr level);
+
+               public bool FromString(string level) {
+                       IntPtr this_as_native = System.Runtime.InteropServices.Marshal.AllocHGlobal (System.Runtime.InteropServices.Marshal.SizeOf (this));
+                       System.Runtime.InteropServices.Marshal.StructureToPtr (this, this_as_native, false);
+                       IntPtr native_level = GLib.Marshaller.StringToPtrGStrdup (level);
+                       bool raw_ret = gst_video_content_light_level_from_string(this_as_native, native_level);
+                       bool ret = raw_ret;
+                       ReadNative (this_as_native, ref this);
+                       System.Runtime.InteropServices.Marshal.FreeHGlobal (this_as_native);
+                       GLib.Marshaller.Free (native_level);
+                       return ret;
+               }
+
+               [DllImport("gstvideo-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern void gst_video_content_light_level_init(IntPtr raw);
+
+               public void Init() {
+                       IntPtr this_as_native = System.Runtime.InteropServices.Marshal.AllocHGlobal (System.Runtime.InteropServices.Marshal.SizeOf (this));
+                       System.Runtime.InteropServices.Marshal.StructureToPtr (this, this_as_native, false);
+                       gst_video_content_light_level_init(this_as_native);
+                       ReadNative (this_as_native, ref this);
+                       System.Runtime.InteropServices.Marshal.FreeHGlobal (this_as_native);
+               }
+
+               [DllImport("gstvideo-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern IntPtr gst_video_content_light_level_to_string(IntPtr raw);
+
+               public override string ToString() {
+                       IntPtr this_as_native = System.Runtime.InteropServices.Marshal.AllocHGlobal (System.Runtime.InteropServices.Marshal.SizeOf (this));
+                       System.Runtime.InteropServices.Marshal.StructureToPtr (this, this_as_native, false);
+                       IntPtr raw_ret = gst_video_content_light_level_to_string(this_as_native);
+                       string ret = GLib.Marshaller.PtrToStringGFree(raw_ret);
+                       ReadNative (this_as_native, ref this);
+                       System.Runtime.InteropServices.Marshal.FreeHGlobal (this_as_native);
+                       return ret;
+               }
+
+               static void ReadNative (IntPtr native, ref Gst.Video.VideoContentLightLevel target)
+               {
+                       target = New (native);
+               }
+
+               public bool Equals (VideoContentLightLevel other)
+               {
+                       return true && MaxContentLightLevel.Equals (other.MaxContentLightLevel) && MaxFrameAverageLightLevel.Equals (other.MaxFrameAverageLightLevel);
+               }
+
+               public override bool Equals (object other)
+               {
+                       return other is VideoContentLightLevel && Equals ((VideoContentLightLevel) other);
+               }
+
+               public override int GetHashCode ()
+               {
+                       return this.GetType ().FullName.GetHashCode () ^ MaxContentLightLevel.GetHashCode () ^ MaxFrameAverageLightLevel.GetHashCode ();
+               }
+
+               private static GLib.GType GType {
+                       get { return GLib.GType.Pointer; }
+               }
+#endregion
+       }
+}
index 3021ac0..b3598ac 100644 (file)
@@ -18,6 +18,21 @@ namespace Gst.Video {
                        CreateNativeObject (new string [0], new GLib.Value [0]);
                }
 
+               [GLib.Property ("qos")]
+               public bool Qos {
+                       get {
+                               GLib.Value val = GetProperty ("qos");
+                               bool ret = (bool) val;
+                               val.Dispose ();
+                               return ret;
+                       }
+                       set {
+                               GLib.Value val = new GLib.Value(value);
+                               SetProperty("qos", val);
+                               val.Dispose ();
+                       }
+               }
+
                static OpenNativeDelegate Open_cb_delegate;
                static OpenNativeDelegate OpenVMCallback {
                        get {
index 931e701..72f8991 100644 (file)
@@ -18,6 +18,24 @@ namespace Gst.Video {
                        CreateNativeObject (new string [0], new GLib.Value [0]);
                }
 
+               [DllImport("gstvideo-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern ulong gst_video_encoder_get_min_force_key_unit_interval(IntPtr raw);
+
+               [DllImport("gstvideo-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern void gst_video_encoder_set_min_force_key_unit_interval(IntPtr raw, ulong interval);
+
+               [GLib.Property ("min-force-key-unit-interval")]
+               public ulong MinForceKeyUnitInterval {
+                       get  {
+                               ulong raw_ret = gst_video_encoder_get_min_force_key_unit_interval(Handle);
+                               ulong ret = raw_ret;
+                               return ret;
+                       }
+                       set  {
+                               gst_video_encoder_set_min_force_key_unit_interval(Handle, value);
+                       }
+               }
+
                [GLib.Property ("qos")]
                public bool Qos {
                        get {
@@ -1364,6 +1382,17 @@ namespace Gst.Video {
                }
 
                [DllImport("gstvideo-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern int gst_video_encoder_finish_subframe(IntPtr raw, IntPtr frame);
+
+               public Gst.FlowReturn FinishSubframe(Gst.Video.VideoCodecFrame frame) {
+                       IntPtr native_frame = GLib.Marshaller.StructureToPtrAlloc (frame);
+                       int raw_ret = gst_video_encoder_finish_subframe(Handle, native_frame);
+                       Gst.FlowReturn ret = (Gst.FlowReturn) raw_ret;
+                       Marshal.FreeHGlobal (native_frame);
+                       return ret;
+               }
+
+               [DllImport("gstvideo-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
                static extern void gst_video_encoder_get_allocator(IntPtr raw, out IntPtr allocator, IntPtr parms);
 
                public void GetAllocator(out Gst.Allocator allocator, out Gst.AllocationParams parms) {
index 08b64d5..373684b 100644 (file)
@@ -96,6 +96,17 @@ namespace Gst.Video {
                Y410 = 83,
                Vuya = 84,
                Bgr10a2Le = 85,
+               Rgb10a2Le = 86,
+               Y44416be = 87,
+               Y44416le = 88,
+               P016Be = 89,
+               P016Le = 90,
+               P012Be = 91,
+               P012Le = 92,
+               Y212Be = 93,
+               Y212Le = 94,
+               Y412Be = 95,
+               Y412Le = 96,
        }
 
        internal class VideoFormatGType {
index 1bda79f..dccdedc 100644 (file)
@@ -61,6 +61,24 @@ namespace Gst.Video {
                        return (Gst.Video.VideoFormatInfo) Marshal.PtrToStructure (raw, typeof (Gst.Video.VideoFormatInfo));
                }
 
+               [DllImport("gstvideo-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern void gst_video_format_info_component(IntPtr raw, uint plane, out int components);
+
+               public int Component(uint plane) {
+                       IntPtr this_as_native = System.Runtime.InteropServices.Marshal.AllocHGlobal (System.Runtime.InteropServices.Marshal.SizeOf (this));
+                       System.Runtime.InteropServices.Marshal.StructureToPtr (this, this_as_native, false);
+                       int components;
+                       gst_video_format_info_component(this_as_native, plane, out components);
+                       ReadNative (this_as_native, ref this);
+                       System.Runtime.InteropServices.Marshal.FreeHGlobal (this_as_native);
+                       return components;
+               }
+
+               static void ReadNative (IntPtr native, ref Gst.Video.VideoFormatInfo target)
+               {
+                       target = New (native);
+               }
+
                public bool Equals (VideoFormatInfo other)
                {
                        return true && Format.Equals (other.Format) && Name.Equals (other.Name) && Description.Equals (other.Description) && Flags.Equals (other.Flags) && Bits.Equals (other.Bits) && NComponents.Equals (other.NComponents) && Shift.Equals (other.Shift) && Depth.Equals (other.Depth) && PixelStride.Equals (other.PixelStride) && NPlanes.Equals (other.NPlanes) && Plane.Equals (other.Plane) && Poffset.Equals (other.Poffset) && WSub.Equals (other.WSub) && HSub.Equals (other.HSub) && UnpackFormat.Equals (other.UnpackFormat) && UnpackFunc.Equals (other.UnpackFunc) && PackLines.Equals (other.PackLines) && PackFunc.Equals (other.PackFunc) && TileMode.Equals (other.TileMode) && TileWs.Equals (other.TileWs) && TileHs.Equals (other.TileHs);
index 1f617cc..528825f 100644 (file)
@@ -63,6 +63,11 @@ namespace Gst.Video {
                        return other is VideoGLTextureUploadMeta && Equals ((VideoGLTextureUploadMeta) other);
                }
 
+               public override int GetHashCode ()
+               {
+                       return this.GetType ().FullName.GetHashCode () ^ Meta.GetHashCode () ^ TextureOrientation.GetHashCode () ^ NTextures.GetHashCode () ^ TextureType.GetHashCode () ^ _buffer.GetHashCode () ^ _upload.GetHashCode () ^ _user_data.GetHashCode ();
+               }
+
                private static GLib.GType GType {
                        get { return GLib.GType.Pointer; }
                }
index a86b6a1..2380d1d 100644 (file)
@@ -229,6 +229,19 @@ namespace Gst.Video {
                }
 
                [DllImport("gstvideo-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern bool gst_video_info_align_full(IntPtr raw, IntPtr align, out UIntPtr plane_size);
+
+               public bool AlignFull(Gst.Video.VideoAlignment align, out ulong plane_size) {
+                       IntPtr native_align = GLib.Marshaller.StructureToPtrAlloc (align);
+                       UIntPtr native_plane_size;
+                       bool raw_ret = gst_video_info_align_full(Handle, native_align, out native_plane_size);
+                       bool ret = raw_ret;
+                       Marshal.FreeHGlobal (native_align);
+                       plane_size = (ulong) native_plane_size;
+                       return ret;
+               }
+
+               [DllImport("gstvideo-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
                static extern bool gst_video_info_convert(IntPtr raw, int src_format, long src_value, int dest_format, out long dest_value);
 
                public bool Convert(Gst.Format src_format, long src_value, Gst.Format dest_format, out long dest_value) {
diff --git a/sources/generated/Gst.Video/VideoMasteringDisplayInfo.cs b/sources/generated/Gst.Video/VideoMasteringDisplayInfo.cs
new file mode 100644 (file)
index 0000000..3349fe8
--- /dev/null
@@ -0,0 +1,135 @@
+// This file was generated by the Gtk# code generator.
+// Any changes made will be lost if regenerated.
+
+namespace Gst.Video {
+
+       using System;
+       using System.Collections;
+       using System.Collections.Generic;
+       using System.Runtime.InteropServices;
+
+#region Autogenerated code
+       [StructLayout(LayoutKind.Sequential)]
+       public partial struct VideoMasteringDisplayInfo : IEquatable<VideoMasteringDisplayInfo> {
+
+               [MarshalAs (UnmanagedType.ByValArray, SizeConst=3)]
+               public Gst.Video.VideoMasteringDisplayInfoCoordinates[] DisplayPrimaries;
+               public Gst.Video.VideoMasteringDisplayInfoCoordinates WhitePoint;
+               public uint MaxDisplayMasteringLuminance;
+               public uint MinDisplayMasteringLuminance;
+               [MarshalAs (UnmanagedType.ByValArray, SizeConst=4)]
+               private IntPtr[] _gstGstReserved;
+
+               public static Gst.Video.VideoMasteringDisplayInfo Zero = new Gst.Video.VideoMasteringDisplayInfo ();
+
+               public static Gst.Video.VideoMasteringDisplayInfo New(IntPtr raw) {
+                       if (raw == IntPtr.Zero)
+                               return Gst.Video.VideoMasteringDisplayInfo.Zero;
+                       return (Gst.Video.VideoMasteringDisplayInfo) Marshal.PtrToStructure (raw, typeof (Gst.Video.VideoMasteringDisplayInfo));
+               }
+
+               [DllImport("gstvideo-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern bool gst_video_mastering_display_info_add_to_caps(IntPtr raw, IntPtr caps);
+
+               public bool AddToCaps(Gst.Caps caps) {
+                       IntPtr this_as_native = System.Runtime.InteropServices.Marshal.AllocHGlobal (System.Runtime.InteropServices.Marshal.SizeOf (this));
+                       System.Runtime.InteropServices.Marshal.StructureToPtr (this, this_as_native, false);
+                       bool raw_ret = gst_video_mastering_display_info_add_to_caps(this_as_native, caps == null ? IntPtr.Zero : caps.Handle);
+                       bool ret = raw_ret;
+                       ReadNative (this_as_native, ref this);
+                       System.Runtime.InteropServices.Marshal.FreeHGlobal (this_as_native);
+                       return ret;
+               }
+
+               [DllImport("gstvideo-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern bool gst_video_mastering_display_info_from_caps(IntPtr raw, IntPtr caps);
+
+               public bool FromCaps(Gst.Caps caps) {
+                       IntPtr this_as_native = System.Runtime.InteropServices.Marshal.AllocHGlobal (System.Runtime.InteropServices.Marshal.SizeOf (this));
+                       System.Runtime.InteropServices.Marshal.StructureToPtr (this, this_as_native, false);
+                       bool raw_ret = gst_video_mastering_display_info_from_caps(this_as_native, caps == null ? IntPtr.Zero : caps.Handle);
+                       bool ret = raw_ret;
+                       ReadNative (this_as_native, ref this);
+                       System.Runtime.InteropServices.Marshal.FreeHGlobal (this_as_native);
+                       return ret;
+               }
+
+               [DllImport("gstvideo-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern void gst_video_mastering_display_info_init(IntPtr raw);
+
+               public void Init() {
+                       IntPtr this_as_native = System.Runtime.InteropServices.Marshal.AllocHGlobal (System.Runtime.InteropServices.Marshal.SizeOf (this));
+                       System.Runtime.InteropServices.Marshal.StructureToPtr (this, this_as_native, false);
+                       gst_video_mastering_display_info_init(this_as_native);
+                       ReadNative (this_as_native, ref this);
+                       System.Runtime.InteropServices.Marshal.FreeHGlobal (this_as_native);
+               }
+
+               [DllImport("gstvideo-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern bool gst_video_mastering_display_info_is_equal(IntPtr raw, IntPtr other);
+
+               public bool IsEqual(Gst.Video.VideoMasteringDisplayInfo other) {
+                       IntPtr this_as_native = System.Runtime.InteropServices.Marshal.AllocHGlobal (System.Runtime.InteropServices.Marshal.SizeOf (this));
+                       System.Runtime.InteropServices.Marshal.StructureToPtr (this, this_as_native, false);
+                       IntPtr native_other = GLib.Marshaller.StructureToPtrAlloc (other);
+                       bool raw_ret = gst_video_mastering_display_info_is_equal(this_as_native, native_other);
+                       bool ret = raw_ret;
+                       ReadNative (this_as_native, ref this);
+                       System.Runtime.InteropServices.Marshal.FreeHGlobal (this_as_native);
+                       Marshal.FreeHGlobal (native_other);
+                       return ret;
+               }
+
+               [DllImport("gstvideo-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern IntPtr gst_video_mastering_display_info_to_string(IntPtr raw);
+
+               public override string ToString() {
+                       IntPtr this_as_native = System.Runtime.InteropServices.Marshal.AllocHGlobal (System.Runtime.InteropServices.Marshal.SizeOf (this));
+                       System.Runtime.InteropServices.Marshal.StructureToPtr (this, this_as_native, false);
+                       IntPtr raw_ret = gst_video_mastering_display_info_to_string(this_as_native);
+                       string ret = GLib.Marshaller.PtrToStringGFree(raw_ret);
+                       ReadNative (this_as_native, ref this);
+                       System.Runtime.InteropServices.Marshal.FreeHGlobal (this_as_native);
+                       return ret;
+               }
+
+               [DllImport("gstvideo-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern bool gst_video_mastering_display_info_from_string(IntPtr minfo, IntPtr mastering);
+
+               public static bool FromString(out Gst.Video.VideoMasteringDisplayInfo minfo, string mastering) {
+                       IntPtr native_minfo = Marshal.AllocHGlobal (Marshal.SizeOf (typeof (Gst.Video.VideoMasteringDisplayInfo)));
+                       IntPtr native_mastering = GLib.Marshaller.StringToPtrGStrdup (mastering);
+                       bool raw_ret = gst_video_mastering_display_info_from_string(native_minfo, native_mastering);
+                       bool ret = raw_ret;
+                       minfo = Gst.Video.VideoMasteringDisplayInfo.New (native_minfo);
+                       Marshal.FreeHGlobal (native_minfo);
+                       GLib.Marshaller.Free (native_mastering);
+                       return ret;
+               }
+
+               static void ReadNative (IntPtr native, ref Gst.Video.VideoMasteringDisplayInfo target)
+               {
+                       target = New (native);
+               }
+
+               public bool Equals (VideoMasteringDisplayInfo other)
+               {
+                       return true && DisplayPrimaries.Equals (other.DisplayPrimaries) && WhitePoint.Equals (other.WhitePoint) && MaxDisplayMasteringLuminance.Equals (other.MaxDisplayMasteringLuminance) && MinDisplayMasteringLuminance.Equals (other.MinDisplayMasteringLuminance);
+               }
+
+               public override bool Equals (object other)
+               {
+                       return other is VideoMasteringDisplayInfo && Equals ((VideoMasteringDisplayInfo) other);
+               }
+
+               public override int GetHashCode ()
+               {
+                       return this.GetType ().FullName.GetHashCode () ^ DisplayPrimaries.GetHashCode () ^ WhitePoint.GetHashCode () ^ MaxDisplayMasteringLuminance.GetHashCode () ^ MinDisplayMasteringLuminance.GetHashCode ();
+               }
+
+               private static GLib.GType GType {
+                       get { return GLib.GType.Pointer; }
+               }
+#endregion
+       }
+}
diff --git a/sources/generated/Gst.Video/VideoMasteringDisplayInfoCoordinates.cs b/sources/generated/Gst.Video/VideoMasteringDisplayInfoCoordinates.cs
new file mode 100644 (file)
index 0000000..8df0c8f
--- /dev/null
@@ -0,0 +1,46 @@
+// This file was generated by the Gtk# code generator.
+// Any changes made will be lost if regenerated.
+
+namespace Gst.Video {
+
+       using System;
+       using System.Collections;
+       using System.Collections.Generic;
+       using System.Runtime.InteropServices;
+
+#region Autogenerated code
+       [StructLayout(LayoutKind.Sequential)]
+       public partial struct VideoMasteringDisplayInfoCoordinates : IEquatable<VideoMasteringDisplayInfoCoordinates> {
+
+               public ushort X;
+               public ushort Y;
+
+               public static Gst.Video.VideoMasteringDisplayInfoCoordinates Zero = new Gst.Video.VideoMasteringDisplayInfoCoordinates ();
+
+               public static Gst.Video.VideoMasteringDisplayInfoCoordinates New(IntPtr raw) {
+                       if (raw == IntPtr.Zero)
+                               return Gst.Video.VideoMasteringDisplayInfoCoordinates.Zero;
+                       return (Gst.Video.VideoMasteringDisplayInfoCoordinates) Marshal.PtrToStructure (raw, typeof (Gst.Video.VideoMasteringDisplayInfoCoordinates));
+               }
+
+               public bool Equals (VideoMasteringDisplayInfoCoordinates other)
+               {
+                       return true && X.Equals (other.X) && Y.Equals (other.Y);
+               }
+
+               public override bool Equals (object other)
+               {
+                       return other is VideoMasteringDisplayInfoCoordinates && Equals ((VideoMasteringDisplayInfoCoordinates) other);
+               }
+
+               public override int GetHashCode ()
+               {
+                       return this.GetType ().FullName.GetHashCode () ^ X.GetHashCode () ^ Y.GetHashCode ();
+               }
+
+               private static GLib.GType GType {
+                       get { return GLib.GType.Pointer; }
+               }
+#endregion
+       }
+}
index 6ceefc6..5c058e7 100644 (file)
@@ -34,6 +34,7 @@ namespace Gst.Video {
                public int[] Stride;
                private IntPtr _map;
                private IntPtr _unmap;
+               public Gst.Video.VideoAlignment Alignment;
 
                public static Gst.Video.VideoMeta Zero = new Gst.Video.VideoMeta ();
 
@@ -44,6 +45,34 @@ namespace Gst.Video {
                }
 
                [DllImport("gstvideo-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern bool gst_video_meta_get_plane_height(IntPtr raw, out uint plane_height);
+
+               public bool GetPlaneHeight(out uint plane_height) {
+                       IntPtr this_as_native = System.Runtime.InteropServices.Marshal.AllocHGlobal (System.Runtime.InteropServices.Marshal.SizeOf (this));
+                       System.Runtime.InteropServices.Marshal.StructureToPtr (this, this_as_native, false);
+                       bool raw_ret = gst_video_meta_get_plane_height(this_as_native, out plane_height);
+                       bool ret = raw_ret;
+                       ReadNative (this_as_native, ref this);
+                       System.Runtime.InteropServices.Marshal.FreeHGlobal (this_as_native);
+                       return ret;
+               }
+
+               [DllImport("gstvideo-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern bool gst_video_meta_get_plane_size(IntPtr raw, out UIntPtr plane_size);
+
+               public bool GetPlaneSize(out ulong plane_size) {
+                       IntPtr this_as_native = System.Runtime.InteropServices.Marshal.AllocHGlobal (System.Runtime.InteropServices.Marshal.SizeOf (this));
+                       System.Runtime.InteropServices.Marshal.StructureToPtr (this, this_as_native, false);
+                       UIntPtr native_plane_size;
+                       bool raw_ret = gst_video_meta_get_plane_size(this_as_native, out native_plane_size);
+                       bool ret = raw_ret;
+                       ReadNative (this_as_native, ref this);
+                       System.Runtime.InteropServices.Marshal.FreeHGlobal (this_as_native);
+                       plane_size = (ulong) native_plane_size;
+                       return ret;
+               }
+
+               [DllImport("gstvideo-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
                static extern bool gst_video_meta_map(IntPtr raw, uint plane, IntPtr info, out IntPtr data, out int stride, int flags);
 
                public bool Map(uint plane, Gst.MapInfo info, out IntPtr data, out int stride, Gst.MapFlags flags) {
@@ -59,6 +88,21 @@ namespace Gst.Video {
                }
 
                [DllImport("gstvideo-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern bool gst_video_meta_set_alignment(IntPtr raw, IntPtr alignment);
+
+               public bool SetAlignment(Gst.Video.VideoAlignment alignment) {
+                       IntPtr this_as_native = System.Runtime.InteropServices.Marshal.AllocHGlobal (System.Runtime.InteropServices.Marshal.SizeOf (this));
+                       System.Runtime.InteropServices.Marshal.StructureToPtr (this, this_as_native, false);
+                       IntPtr native_alignment = GLib.Marshaller.StructureToPtrAlloc (alignment);
+                       bool raw_ret = gst_video_meta_set_alignment(this_as_native, native_alignment);
+                       bool ret = raw_ret;
+                       ReadNative (this_as_native, ref this);
+                       System.Runtime.InteropServices.Marshal.FreeHGlobal (this_as_native);
+                       Marshal.FreeHGlobal (native_alignment);
+                       return ret;
+               }
+
+               [DllImport("gstvideo-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
                static extern bool gst_video_meta_unmap(IntPtr raw, uint plane, IntPtr info);
 
                public bool Unmap(uint plane, Gst.MapInfo info) {
@@ -91,7 +135,7 @@ namespace Gst.Video {
 
                public bool Equals (VideoMeta other)
                {
-                       return true && Meta.Equals (other.Meta) && Buffer.Equals (other.Buffer) && Flags.Equals (other.Flags) && Format.Equals (other.Format) && Id.Equals (other.Id) && Width.Equals (other.Width) && Height.Equals (other.Height) && NPlanes.Equals (other.NPlanes) && Offset.Equals (other.Offset) && Stride.Equals (other.Stride) && _map.Equals (other._map) && _unmap.Equals (other._unmap);
+                       return true && Meta.Equals (other.Meta) && Buffer.Equals (other.Buffer) && Flags.Equals (other.Flags) && Format.Equals (other.Format) && Id.Equals (other.Id) && Width.Equals (other.Width) && Height.Equals (other.Height) && NPlanes.Equals (other.NPlanes) && Offset.Equals (other.Offset) && Stride.Equals (other.Stride) && _map.Equals (other._map) && _unmap.Equals (other._unmap) && Alignment.Equals (other.Alignment);
                }
 
                public override bool Equals (object other)
@@ -101,7 +145,7 @@ namespace Gst.Video {
 
                public override int GetHashCode ()
                {
-                       return this.GetType ().FullName.GetHashCode () ^ Meta.GetHashCode () ^ Buffer.GetHashCode () ^ Flags.GetHashCode () ^ Format.GetHashCode () ^ Id.GetHashCode () ^ Width.GetHashCode () ^ Height.GetHashCode () ^ NPlanes.GetHashCode () ^ Offset.GetHashCode () ^ Stride.GetHashCode () ^ _map.GetHashCode () ^ _unmap.GetHashCode ();
+                       return this.GetType ().FullName.GetHashCode () ^ Meta.GetHashCode () ^ Buffer.GetHashCode () ^ Flags.GetHashCode () ^ Format.GetHashCode () ^ Id.GetHashCode () ^ Width.GetHashCode () ^ Height.GetHashCode () ^ NPlanes.GetHashCode () ^ Offset.GetHashCode () ^ Stride.GetHashCode () ^ _map.GetHashCode () ^ _unmap.GetHashCode () ^ Alignment.GetHashCode ();
                }
 
                private static GLib.GType GType {
index 139516a..6751bb0 100644 (file)
@@ -172,6 +172,10 @@ namespace Gst.Video {
                        System.Runtime.InteropServices.Marshal.FreeHGlobal (this_as_native);
                }
 
+               public void Init(uint fps_n, uint fps_d, Gst.Video.VideoTimeCodeFlags flags, uint hours, uint minutes, uint seconds, uint frames, uint field_count) {
+                       Init (fps_n, fps_d, null, flags, hours, minutes, seconds, frames, field_count);
+               }
+
                [DllImport("gstvideo-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
                static extern void gst_video_time_code_init_from_date_time(IntPtr raw, uint fps_n, uint fps_d, IntPtr dt, int flags, uint field_count);
 
index d127c46..e6dbe1f 100644 (file)
@@ -8,11 +8,23 @@ namespace Gst.Video {
 
 #region Autogenerated code
        [Flags]
+       [GLib.GType (typeof (Gst.Video.VideoTimeCodeFlagsGType))]
        public enum VideoTimeCodeFlags {
 
                None = 0,
                DropFrame = 1,
                Interlaced = 2,
        }
+
+       internal class VideoTimeCodeFlagsGType {
+               [DllImport ("gstvideo-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern IntPtr gst_video_time_code_flags_get_type ();
+
+               public static GLib.GType GType {
+                       get {
+                               return new GLib.GType (gst_video_time_code_flags_get_type ());
+                       }
+               }
+       }
 #endregion
 }
index 19e83bd..6addc95 100644 (file)
@@ -23,6 +23,9 @@ namespace Gst.Video {
                Log316 = 10,
                Bt202012 = 11,
                Adobergb = 12,
+               Bt202010 = 13,
+               Smpte2084 = 14,
+               AribStdB67 = 15,
        }
 
        internal class VideoTransferFunctionGType {
diff --git a/sources/generated/Gst.WebRTC/OnErrorEventHandler.cs b/sources/generated/Gst.WebRTC/OnErrorEventHandler.cs
new file mode 100644 (file)
index 0000000..908402d
--- /dev/null
@@ -0,0 +1,18 @@
+// This file was generated by the Gtk# code generator.
+// Any changes made will be lost if regenerated.
+
+namespace Gst.WebRTC {
+
+       using System;
+
+       public delegate void OnErrorEventHandler(object o, OnErrorEventArgs args);
+
+       public class OnErrorEventArgs : GLib.SignalArgs {
+               public IntPtr Error{
+                       get {
+                               return (IntPtr) Args [0];
+                       }
+               }
+
+       }
+}
diff --git a/sources/generated/Gst.WebRTC/OnMessageDataEventHandler.cs b/sources/generated/Gst.WebRTC/OnMessageDataEventHandler.cs
new file mode 100644 (file)
index 0000000..9a76d7d
--- /dev/null
@@ -0,0 +1,18 @@
+// This file was generated by the Gtk# code generator.
+// Any changes made will be lost if regenerated.
+
+namespace Gst.WebRTC {
+
+       using System;
+
+       public delegate void OnMessageDataEventHandler(object o, OnMessageDataEventArgs args);
+
+       public class OnMessageDataEventArgs : GLib.SignalArgs {
+               public GLib.Bytes Data{
+                       get {
+                               return (GLib.Bytes) Args [0];
+                       }
+               }
+
+       }
+}
diff --git a/sources/generated/Gst.WebRTC/OnMessageStringEventHandler.cs b/sources/generated/Gst.WebRTC/OnMessageStringEventHandler.cs
new file mode 100644 (file)
index 0000000..6f950c1
--- /dev/null
@@ -0,0 +1,18 @@
+// This file was generated by the Gtk# code generator.
+// Any changes made will be lost if regenerated.
+
+namespace Gst.WebRTC {
+
+       using System;
+
+       public delegate void OnMessageStringEventHandler(object o, OnMessageStringEventArgs args);
+
+       public class OnMessageStringEventArgs : GLib.SignalArgs {
+               public string Data{
+                       get {
+                               return (string) Args [0];
+                       }
+               }
+
+       }
+}
diff --git a/sources/generated/Gst.WebRTC/SendDataEventHandler.cs b/sources/generated/Gst.WebRTC/SendDataEventHandler.cs
new file mode 100644 (file)
index 0000000..ee4af2b
--- /dev/null
@@ -0,0 +1,18 @@
+// This file was generated by the Gtk# code generator.
+// Any changes made will be lost if regenerated.
+
+namespace Gst.WebRTC {
+
+       using System;
+
+       public delegate void SendDataEventHandler(object o, SendDataEventArgs args);
+
+       public class SendDataEventArgs : GLib.SignalArgs {
+               public GLib.Bytes Data{
+                       get {
+                               return (GLib.Bytes) Args [0];
+                       }
+               }
+
+       }
+}
diff --git a/sources/generated/Gst.WebRTC/SendStringEventHandler.cs b/sources/generated/Gst.WebRTC/SendStringEventHandler.cs
new file mode 100644 (file)
index 0000000..0513169
--- /dev/null
@@ -0,0 +1,18 @@
+// This file was generated by the Gtk# code generator.
+// Any changes made will be lost if regenerated.
+
+namespace Gst.WebRTC {
+
+       using System;
+
+       public delegate void SendStringEventHandler(object o, SendStringEventArgs args);
+
+       public class SendStringEventArgs : GLib.SignalArgs {
+               public string Data{
+                       get {
+                               return (string) Args [0];
+                       }
+               }
+
+       }
+}
diff --git a/sources/generated/Gst.WebRTC/WebRTCDataChannel.cs b/sources/generated/Gst.WebRTC/WebRTCDataChannel.cs
new file mode 100644 (file)
index 0000000..24b29d1
--- /dev/null
@@ -0,0 +1,1068 @@
+// This file was generated by the Gtk# code generator.
+// Any changes made will be lost if regenerated.
+
+namespace Gst.WebRTC {
+
+       using System;
+       using System.Collections;
+       using System.Collections.Generic;
+       using System.Runtime.InteropServices;
+
+#region Autogenerated code
+       public partial class WebRTCDataChannel : GLib.Object {
+
+               protected WebRTCDataChannel (IntPtr raw) : base(raw) {}
+
+               protected WebRTCDataChannel() : base(IntPtr.Zero)
+               {
+                       CreateNativeObject (new string [0], new GLib.Value [0]);
+               }
+
+               [GLib.Property ("buffered-amount")]
+               public ulong BufferedAmount {
+                       get {
+                               GLib.Value val = GetProperty ("buffered-amount");
+                               ulong ret = (ulong) val;
+                               val.Dispose ();
+                               return ret;
+                       }
+               }
+
+               [GLib.Property ("buffered-amount-low-threshold")]
+               public ulong BufferedAmountLowThreshold {
+                       get {
+                               GLib.Value val = GetProperty ("buffered-amount-low-threshold");
+                               ulong ret = (ulong) val;
+                               val.Dispose ();
+                               return ret;
+                       }
+                       set {
+                               GLib.Value val = new GLib.Value(value);
+                               SetProperty("buffered-amount-low-threshold", val);
+                               val.Dispose ();
+                       }
+               }
+
+               [GLib.Property ("id")]
+               public int Id {
+                       get {
+                               GLib.Value val = GetProperty ("id");
+                               int ret = (int) val;
+                               val.Dispose ();
+                               return ret;
+                       }
+               }
+
+               [GLib.Property ("label")]
+               public string Label {
+                       get {
+                               GLib.Value val = GetProperty ("label");
+                               string ret = (string) val;
+                               val.Dispose ();
+                               return ret;
+                       }
+               }
+
+               [GLib.Property ("max-packet-lifetime")]
+               public int MaxPacketLifetime {
+                       get {
+                               GLib.Value val = GetProperty ("max-packet-lifetime");
+                               int ret = (int) val;
+                               val.Dispose ();
+                               return ret;
+                       }
+               }
+
+               [GLib.Property ("max-retransmits")]
+               public int MaxRetransmits {
+                       get {
+                               GLib.Value val = GetProperty ("max-retransmits");
+                               int ret = (int) val;
+                               val.Dispose ();
+                               return ret;
+                       }
+               }
+
+               [GLib.Property ("negotiated")]
+               public bool Negotiated {
+                       get {
+                               GLib.Value val = GetProperty ("negotiated");
+                               bool ret = (bool) val;
+                               val.Dispose ();
+                               return ret;
+                       }
+               }
+
+               [GLib.Property ("ordered")]
+               public bool Ordered {
+                       get {
+                               GLib.Value val = GetProperty ("ordered");
+                               bool ret = (bool) val;
+                               val.Dispose ();
+                               return ret;
+                       }
+               }
+
+               [GLib.Property ("priority")]
+               public Gst.WebRTC.WebRTCPriorityType Priority {
+                       get {
+                               GLib.Value val = GetProperty ("priority");
+                               Gst.WebRTC.WebRTCPriorityType ret = (Gst.WebRTC.WebRTCPriorityType) (Enum) val;
+                               val.Dispose ();
+                               return ret;
+                       }
+               }
+
+               [GLib.Property ("protocol")]
+               public string Protocol {
+                       get {
+                               GLib.Value val = GetProperty ("protocol");
+                               string ret = (string) val;
+                               val.Dispose ();
+                               return ret;
+                       }
+               }
+
+               [GLib.Property ("ready-state")]
+               public Gst.WebRTC.WebRTCDataChannelState ReadyState {
+                       get {
+                               GLib.Value val = GetProperty ("ready-state");
+                               Gst.WebRTC.WebRTCDataChannelState ret = (Gst.WebRTC.WebRTCDataChannelState) (Enum) val;
+                               val.Dispose ();
+                               return ret;
+                       }
+               }
+
+               public GLib.Mutex Lock {
+                       get {
+                               unsafe {
+                                       IntPtr* raw_ptr = (IntPtr*)(((byte*)Handle) + abi_info.GetFieldOffset("lock"));
+                                       return new GLib.Mutex((*raw_ptr));
+                               }
+                       }
+               }
+
+               public string LabelField {
+                       get {
+                               unsafe {
+                                       IntPtr* raw_ptr = (IntPtr*)(((byte*)Handle) + abi_info.GetFieldOffset("label"));
+                                       return GLib.Marshaller.Utf8PtrToString ((*raw_ptr));
+                               }
+                       }
+               }
+
+               public bool OrderedField {
+                       get {
+                               unsafe {
+                                       bool* raw_ptr = (bool*)(((byte*)Handle) + abi_info.GetFieldOffset("ordered"));
+                                       return (*raw_ptr);
+                               }
+                       }
+               }
+
+               public uint MaxPacketLifetimeField {
+                       get {
+                               unsafe {
+                                       uint* raw_ptr = (uint*)(((byte*)Handle) + abi_info.GetFieldOffset("max_packet_lifetime"));
+                                       return (*raw_ptr);
+                               }
+                       }
+               }
+
+               public uint MaxRetransmitsField {
+                       get {
+                               unsafe {
+                                       uint* raw_ptr = (uint*)(((byte*)Handle) + abi_info.GetFieldOffset("max_retransmits"));
+                                       return (*raw_ptr);
+                               }
+                       }
+               }
+
+               public string ProtocolField {
+                       get {
+                               unsafe {
+                                       IntPtr* raw_ptr = (IntPtr*)(((byte*)Handle) + abi_info.GetFieldOffset("protocol"));
+                                       return GLib.Marshaller.Utf8PtrToString ((*raw_ptr));
+                               }
+                       }
+               }
+
+               public bool NegotiatedField {
+                       get {
+                               unsafe {
+                                       bool* raw_ptr = (bool*)(((byte*)Handle) + abi_info.GetFieldOffset("negotiated"));
+                                       return (*raw_ptr);
+                               }
+                       }
+               }
+
+               public int IdField {
+                       get {
+                               unsafe {
+                                       int* raw_ptr = (int*)(((byte*)Handle) + abi_info.GetFieldOffset("id"));
+                                       return (*raw_ptr);
+                               }
+                       }
+               }
+
+               public Gst.WebRTC.WebRTCPriorityType PriorityField {
+                       get {
+                               unsafe {
+                                       int* raw_ptr = (int*)(((byte*)Handle) + abi_info.GetFieldOffset("priority"));
+                                       return (Gst.WebRTC.WebRTCPriorityType) (*raw_ptr);
+                               }
+                       }
+               }
+
+               public Gst.WebRTC.WebRTCDataChannelState ReadyStateField {
+                       get {
+                               unsafe {
+                                       int* raw_ptr = (int*)(((byte*)Handle) + abi_info.GetFieldOffset("ready_state"));
+                                       return (Gst.WebRTC.WebRTCDataChannelState) (*raw_ptr);
+                               }
+                       }
+               }
+
+               public ulong BufferedAmountField {
+                       get {
+                               unsafe {
+                                       ulong* raw_ptr = (ulong*)(((byte*)Handle) + abi_info.GetFieldOffset("buffered_amount"));
+                                       return (*raw_ptr);
+                               }
+                       }
+               }
+
+               public ulong BufferedAmountLowThresholdField {
+                       get {
+                               unsafe {
+                                       ulong* raw_ptr = (ulong*)(((byte*)Handle) + abi_info.GetFieldOffset("buffered_amount_low_threshold"));
+                                       return (*raw_ptr);
+                               }
+                       }
+               }
+
+               [GLib.Signal("on-buffered-amount-low")]
+               public event System.EventHandler OnBufferedAmountLowEvent {
+                       add {
+                               this.AddSignalHandler ("on-buffered-amount-low", value);
+                       }
+                       remove {
+                               this.RemoveSignalHandler ("on-buffered-amount-low", value);
+                       }
+               }
+
+               [GLib.Signal("send-data")]
+               public event Gst.WebRTC.SendDataEventHandler SendDataEvent {
+                       add {
+                               this.AddSignalHandler ("send-data", value, typeof (Gst.WebRTC.SendDataEventArgs));
+                       }
+                       remove {
+                               this.RemoveSignalHandler ("send-data", value);
+                       }
+               }
+
+               [GLib.Signal("on-message-string")]
+               public event Gst.WebRTC.OnMessageStringEventHandler OnMessageStringEvent {
+                       add {
+                               this.AddSignalHandler ("on-message-string", value, typeof (Gst.WebRTC.OnMessageStringEventArgs));
+                       }
+                       remove {
+                               this.RemoveSignalHandler ("on-message-string", value);
+                       }
+               }
+
+               [GLib.Signal("on-open")]
+               public event System.EventHandler OnOpenEvent {
+                       add {
+                               this.AddSignalHandler ("on-open", value);
+                       }
+                       remove {
+                               this.RemoveSignalHandler ("on-open", value);
+                       }
+               }
+
+               [GLib.Signal("close")]
+               public event System.EventHandler CloseEvent {
+                       add {
+                               this.AddSignalHandler ("close", value);
+                       }
+                       remove {
+                               this.RemoveSignalHandler ("close", value);
+                       }
+               }
+
+               [GLib.Signal("on-message-data")]
+               public event Gst.WebRTC.OnMessageDataEventHandler OnMessageDataEvent {
+                       add {
+                               this.AddSignalHandler ("on-message-data", value, typeof (Gst.WebRTC.OnMessageDataEventArgs));
+                       }
+                       remove {
+                               this.RemoveSignalHandler ("on-message-data", value);
+                       }
+               }
+
+               [GLib.Signal("send-string")]
+               public event Gst.WebRTC.SendStringEventHandler SendStringEvent {
+                       add {
+                               this.AddSignalHandler ("send-string", value, typeof (Gst.WebRTC.SendStringEventArgs));
+                       }
+                       remove {
+                               this.RemoveSignalHandler ("send-string", value);
+                       }
+               }
+
+               [GLib.Signal("on-error")]
+               public event Gst.WebRTC.OnErrorEventHandler OnErrorEvent {
+                       add {
+                               this.AddSignalHandler ("on-error", value, typeof (Gst.WebRTC.OnErrorEventArgs));
+                       }
+                       remove {
+                               this.RemoveSignalHandler ("on-error", value);
+                       }
+               }
+
+               static OnBufferedAmountLowEventNativeDelegate OnBufferedAmountLowEvent_cb_delegate;
+               static OnBufferedAmountLowEventNativeDelegate OnBufferedAmountLowEventVMCallback {
+                       get {
+                               if (OnBufferedAmountLowEvent_cb_delegate == null)
+                                       OnBufferedAmountLowEvent_cb_delegate = new OnBufferedAmountLowEventNativeDelegate (OnBufferedAmountLowEvent_cb);
+                               return OnBufferedAmountLowEvent_cb_delegate;
+                       }
+               }
+
+               static void OverrideOnBufferedAmountLowEvent (GLib.GType gtype)
+               {
+                       OverrideOnBufferedAmountLowEvent (gtype, OnBufferedAmountLowEventVMCallback);
+               }
+
+               static void OverrideOnBufferedAmountLowEvent (GLib.GType gtype, OnBufferedAmountLowEventNativeDelegate callback)
+               {
+                       OverrideVirtualMethod (gtype, "on-buffered-amount-low", callback);
+               }
+               [UnmanagedFunctionPointer (CallingConvention.Cdecl)]
+               delegate void OnBufferedAmountLowEventNativeDelegate (IntPtr inst);
+
+               static void OnBufferedAmountLowEvent_cb (IntPtr inst)
+               {
+                       try {
+                               WebRTCDataChannel __obj = GLib.Object.GetObject (inst, false) as WebRTCDataChannel;
+                               __obj.OnOnBufferedAmountLowEvent ();
+                       } catch (Exception e) {
+                               GLib.ExceptionManager.RaiseUnhandledException (e, false);
+                       }
+               }
+
+               [GLib.DefaultSignalHandler(Type=typeof(Gst.WebRTC.WebRTCDataChannel), ConnectionMethod="OverrideOnBufferedAmountLowEvent")]
+               protected virtual void OnOnBufferedAmountLowEvent ()
+               {
+                       InternalOnBufferedAmountLowEvent ();
+               }
+
+               private void InternalOnBufferedAmountLowEvent ()
+               {
+                       GLib.Value ret = GLib.Value.Empty;
+                       GLib.ValueArray inst_and_params = new GLib.ValueArray (1);
+                       GLib.Value[] vals = new GLib.Value [1];
+                       vals [0] = new GLib.Value (this);
+                       inst_and_params.Append (vals [0]);
+                       g_signal_chain_from_overridden (inst_and_params.ArrayPtr, ref ret);
+                       foreach (GLib.Value v in vals)
+                               v.Dispose ();
+               }
+
+               static OnErrorEventNativeDelegate OnErrorEvent_cb_delegate;
+               static OnErrorEventNativeDelegate OnErrorEventVMCallback {
+                       get {
+                               if (OnErrorEvent_cb_delegate == null)
+                                       OnErrorEvent_cb_delegate = new OnErrorEventNativeDelegate (OnErrorEvent_cb);
+                               return OnErrorEvent_cb_delegate;
+                       }
+               }
+
+               static void OverrideOnErrorEvent (GLib.GType gtype)
+               {
+                       OverrideOnErrorEvent (gtype, OnErrorEventVMCallback);
+               }
+
+               static void OverrideOnErrorEvent (GLib.GType gtype, OnErrorEventNativeDelegate callback)
+               {
+                       OverrideVirtualMethod (gtype, "on-error", callback);
+               }
+               [UnmanagedFunctionPointer (CallingConvention.Cdecl)]
+               delegate void OnErrorEventNativeDelegate (IntPtr inst, IntPtr error);
+
+               static void OnErrorEvent_cb (IntPtr inst, IntPtr error)
+               {
+                       try {
+                               WebRTCDataChannel __obj = GLib.Object.GetObject (inst, false) as WebRTCDataChannel;
+                               __obj.OnOnErrorEvent (error);
+                       } catch (Exception e) {
+                               GLib.ExceptionManager.RaiseUnhandledException (e, false);
+                       }
+               }
+
+               [GLib.DefaultSignalHandler(Type=typeof(Gst.WebRTC.WebRTCDataChannel), ConnectionMethod="OverrideOnErrorEvent")]
+               protected virtual void OnOnErrorEvent (IntPtr error)
+               {
+                       InternalOnErrorEvent (error);
+               }
+
+               private void InternalOnErrorEvent (IntPtr error)
+               {
+                       GLib.Value ret = GLib.Value.Empty;
+                       GLib.ValueArray inst_and_params = new GLib.ValueArray (2);
+                       GLib.Value[] vals = new GLib.Value [2];
+                       vals [0] = new GLib.Value (this);
+                       inst_and_params.Append (vals [0]);
+                       vals [1] = new GLib.Value (error);
+                       inst_and_params.Append (vals [1]);
+                       g_signal_chain_from_overridden (inst_and_params.ArrayPtr, ref ret);
+                       foreach (GLib.Value v in vals)
+                               v.Dispose ();
+               }
+
+               static OnMessageDataEventNativeDelegate OnMessageDataEvent_cb_delegate;
+               static OnMessageDataEventNativeDelegate OnMessageDataEventVMCallback {
+                       get {
+                               if (OnMessageDataEvent_cb_delegate == null)
+                                       OnMessageDataEvent_cb_delegate = new OnMessageDataEventNativeDelegate (OnMessageDataEvent_cb);
+                               return OnMessageDataEvent_cb_delegate;
+                       }
+               }
+
+               static void OverrideOnMessageDataEvent (GLib.GType gtype)
+               {
+                       OverrideOnMessageDataEvent (gtype, OnMessageDataEventVMCallback);
+               }
+
+               static void OverrideOnMessageDataEvent (GLib.GType gtype, OnMessageDataEventNativeDelegate callback)
+               {
+                       OverrideVirtualMethod (gtype, "on-message-data", callback);
+               }
+               [UnmanagedFunctionPointer (CallingConvention.Cdecl)]
+               delegate void OnMessageDataEventNativeDelegate (IntPtr inst, IntPtr data);
+
+               static void OnMessageDataEvent_cb (IntPtr inst, IntPtr data)
+               {
+                       try {
+                               WebRTCDataChannel __obj = GLib.Object.GetObject (inst, false) as WebRTCDataChannel;
+                               __obj.OnOnMessageDataEvent (new GLib.Bytes(data));
+                       } catch (Exception e) {
+                               GLib.ExceptionManager.RaiseUnhandledException (e, false);
+                       }
+               }
+
+               [GLib.DefaultSignalHandler(Type=typeof(Gst.WebRTC.WebRTCDataChannel), ConnectionMethod="OverrideOnMessageDataEvent")]
+               protected virtual void OnOnMessageDataEvent (GLib.Bytes data)
+               {
+                       InternalOnMessageDataEvent (data);
+               }
+
+               private void InternalOnMessageDataEvent (GLib.Bytes data)
+               {
+                       GLib.Value ret = GLib.Value.Empty;
+                       GLib.ValueArray inst_and_params = new GLib.ValueArray (2);
+                       GLib.Value[] vals = new GLib.Value [2];
+                       vals [0] = new GLib.Value (this);
+                       inst_and_params.Append (vals [0]);
+                       vals [1] = new GLib.Value (data);
+                       inst_and_params.Append (vals [1]);
+                       g_signal_chain_from_overridden (inst_and_params.ArrayPtr, ref ret);
+                       foreach (GLib.Value v in vals)
+                               v.Dispose ();
+               }
+
+               static OnMessageStringEventNativeDelegate OnMessageStringEvent_cb_delegate;
+               static OnMessageStringEventNativeDelegate OnMessageStringEventVMCallback {
+                       get {
+                               if (OnMessageStringEvent_cb_delegate == null)
+                                       OnMessageStringEvent_cb_delegate = new OnMessageStringEventNativeDelegate (OnMessageStringEvent_cb);
+                               return OnMessageStringEvent_cb_delegate;
+                       }
+               }
+
+               static void OverrideOnMessageStringEvent (GLib.GType gtype)
+               {
+                       OverrideOnMessageStringEvent (gtype, OnMessageStringEventVMCallback);
+               }
+
+               static void OverrideOnMessageStringEvent (GLib.GType gtype, OnMessageStringEventNativeDelegate callback)
+               {
+                       OverrideVirtualMethod (gtype, "on-message-string", callback);
+               }
+               [UnmanagedFunctionPointer (CallingConvention.Cdecl)]
+               delegate void OnMessageStringEventNativeDelegate (IntPtr inst, IntPtr data);
+
+               static void OnMessageStringEvent_cb (IntPtr inst, IntPtr data)
+               {
+                       try {
+                               WebRTCDataChannel __obj = GLib.Object.GetObject (inst, false) as WebRTCDataChannel;
+                               __obj.OnOnMessageStringEvent (GLib.Marshaller.Utf8PtrToString (data));
+                       } catch (Exception e) {
+                               GLib.ExceptionManager.RaiseUnhandledException (e, false);
+                       }
+               }
+
+               [GLib.DefaultSignalHandler(Type=typeof(Gst.WebRTC.WebRTCDataChannel), ConnectionMethod="OverrideOnMessageStringEvent")]
+               protected virtual void OnOnMessageStringEvent (string data)
+               {
+                       InternalOnMessageStringEvent (data);
+               }
+
+               private void InternalOnMessageStringEvent (string data)
+               {
+                       GLib.Value ret = GLib.Value.Empty;
+                       GLib.ValueArray inst_and_params = new GLib.ValueArray (2);
+                       GLib.Value[] vals = new GLib.Value [2];
+                       vals [0] = new GLib.Value (this);
+                       inst_and_params.Append (vals [0]);
+                       vals [1] = new GLib.Value (data);
+                       inst_and_params.Append (vals [1]);
+                       g_signal_chain_from_overridden (inst_and_params.ArrayPtr, ref ret);
+                       foreach (GLib.Value v in vals)
+                               v.Dispose ();
+               }
+
+               static OnOpenEventNativeDelegate OnOpenEvent_cb_delegate;
+               static OnOpenEventNativeDelegate OnOpenEventVMCallback {
+                       get {
+                               if (OnOpenEvent_cb_delegate == null)
+                                       OnOpenEvent_cb_delegate = new OnOpenEventNativeDelegate (OnOpenEvent_cb);
+                               return OnOpenEvent_cb_delegate;
+                       }
+               }
+
+               static void OverrideOnOpenEvent (GLib.GType gtype)
+               {
+                       OverrideOnOpenEvent (gtype, OnOpenEventVMCallback);
+               }
+
+               static void OverrideOnOpenEvent (GLib.GType gtype, OnOpenEventNativeDelegate callback)
+               {
+                       OverrideVirtualMethod (gtype, "on-open", callback);
+               }
+               [UnmanagedFunctionPointer (CallingConvention.Cdecl)]
+               delegate void OnOpenEventNativeDelegate (IntPtr inst);
+
+               static void OnOpenEvent_cb (IntPtr inst)
+               {
+                       try {
+                               WebRTCDataChannel __obj = GLib.Object.GetObject (inst, false) as WebRTCDataChannel;
+                               __obj.OnOnOpenEvent ();
+                       } catch (Exception e) {
+                               GLib.ExceptionManager.RaiseUnhandledException (e, false);
+                       }
+               }
+
+               [GLib.DefaultSignalHandler(Type=typeof(Gst.WebRTC.WebRTCDataChannel), ConnectionMethod="OverrideOnOpenEvent")]
+               protected virtual void OnOnOpenEvent ()
+               {
+                       InternalOnOpenEvent ();
+               }
+
+               private void InternalOnOpenEvent ()
+               {
+                       GLib.Value ret = GLib.Value.Empty;
+                       GLib.ValueArray inst_and_params = new GLib.ValueArray (1);
+                       GLib.Value[] vals = new GLib.Value [1];
+                       vals [0] = new GLib.Value (this);
+                       inst_and_params.Append (vals [0]);
+                       g_signal_chain_from_overridden (inst_and_params.ArrayPtr, ref ret);
+                       foreach (GLib.Value v in vals)
+                               v.Dispose ();
+               }
+
+               static SendDataEventNativeDelegate SendDataEvent_cb_delegate;
+               static SendDataEventNativeDelegate SendDataEventVMCallback {
+                       get {
+                               if (SendDataEvent_cb_delegate == null)
+                                       SendDataEvent_cb_delegate = new SendDataEventNativeDelegate (SendDataEvent_cb);
+                               return SendDataEvent_cb_delegate;
+                       }
+               }
+
+               static void OverrideSendDataEvent (GLib.GType gtype)
+               {
+                       OverrideSendDataEvent (gtype, SendDataEventVMCallback);
+               }
+
+               static void OverrideSendDataEvent (GLib.GType gtype, SendDataEventNativeDelegate callback)
+               {
+                       unsafe {
+                               IntPtr* raw_ptr = (IntPtr*)(((long) gtype.GetClassPtr()) + (long) class_abi.GetFieldOffset("send_data"));
+                               *raw_ptr = Marshal.GetFunctionPointerForDelegate((Delegate) callback);
+                       }
+               }
+
+               [UnmanagedFunctionPointer (CallingConvention.Cdecl)]
+               delegate void SendDataEventNativeDelegate (IntPtr inst, IntPtr data);
+
+               static void SendDataEvent_cb (IntPtr inst, IntPtr data)
+               {
+                       try {
+                               WebRTCDataChannel __obj = GLib.Object.GetObject (inst, false) as WebRTCDataChannel;
+                               __obj.OnSendDataEvent (new GLib.Bytes(data));
+                       } catch (Exception e) {
+                               GLib.ExceptionManager.RaiseUnhandledException (e, false);
+                       }
+               }
+
+               [GLib.DefaultSignalHandler(Type=typeof(Gst.WebRTC.WebRTCDataChannel), ConnectionMethod="OverrideSendDataEvent")]
+               protected virtual void OnSendDataEvent (GLib.Bytes data)
+               {
+                       InternalSendDataEvent (data);
+               }
+
+               private void InternalSendDataEvent (GLib.Bytes data)
+               {
+                       SendDataEventNativeDelegate unmanaged = null;
+                       unsafe {
+                               IntPtr* raw_ptr = (IntPtr*)(((long) this.LookupGType().GetThresholdType().GetClassPtr()) + (long) class_abi.GetFieldOffset("send_data"));
+                               unmanaged = (SendDataEventNativeDelegate) Marshal.GetDelegateForFunctionPointer(*raw_ptr, typeof(SendDataEventNativeDelegate));
+                       }
+                       if (unmanaged == null) return;
+
+                       unmanaged (this.Handle, data == null ? IntPtr.Zero : data.Handle);
+               }
+
+               static SendStringEventNativeDelegate SendStringEvent_cb_delegate;
+               static SendStringEventNativeDelegate SendStringEventVMCallback {
+                       get {
+                               if (SendStringEvent_cb_delegate == null)
+                                       SendStringEvent_cb_delegate = new SendStringEventNativeDelegate (SendStringEvent_cb);
+                               return SendStringEvent_cb_delegate;
+                       }
+               }
+
+               static void OverrideSendStringEvent (GLib.GType gtype)
+               {
+                       OverrideSendStringEvent (gtype, SendStringEventVMCallback);
+               }
+
+               static void OverrideSendStringEvent (GLib.GType gtype, SendStringEventNativeDelegate callback)
+               {
+                       unsafe {
+                               IntPtr* raw_ptr = (IntPtr*)(((long) gtype.GetClassPtr()) + (long) class_abi.GetFieldOffset("send_string"));
+                               *raw_ptr = Marshal.GetFunctionPointerForDelegate((Delegate) callback);
+                       }
+               }
+
+               [UnmanagedFunctionPointer (CallingConvention.Cdecl)]
+               delegate void SendStringEventNativeDelegate (IntPtr inst, IntPtr data);
+
+               static void SendStringEvent_cb (IntPtr inst, IntPtr data)
+               {
+                       try {
+                               WebRTCDataChannel __obj = GLib.Object.GetObject (inst, false) as WebRTCDataChannel;
+                               __obj.OnSendStringEvent (GLib.Marshaller.Utf8PtrToString (data));
+                       } catch (Exception e) {
+                               GLib.ExceptionManager.RaiseUnhandledException (e, false);
+                       }
+               }
+
+               [GLib.DefaultSignalHandler(Type=typeof(Gst.WebRTC.WebRTCDataChannel), ConnectionMethod="OverrideSendStringEvent")]
+               protected virtual void OnSendStringEvent (string data)
+               {
+                       InternalSendStringEvent (data);
+               }
+
+               private void InternalSendStringEvent (string data)
+               {
+                       SendStringEventNativeDelegate unmanaged = null;
+                       unsafe {
+                               IntPtr* raw_ptr = (IntPtr*)(((long) this.LookupGType().GetThresholdType().GetClassPtr()) + (long) class_abi.GetFieldOffset("send_string"));
+                               unmanaged = (SendStringEventNativeDelegate) Marshal.GetDelegateForFunctionPointer(*raw_ptr, typeof(SendStringEventNativeDelegate));
+                       }
+                       if (unmanaged == null) return;
+
+                       IntPtr native_data = GLib.Marshaller.StringToPtrGStrdup (data);
+                       unmanaged (this.Handle, native_data);
+                       GLib.Marshaller.Free (native_data);
+               }
+
+               static CloseEventNativeDelegate CloseEvent_cb_delegate;
+               static CloseEventNativeDelegate CloseEventVMCallback {
+                       get {
+                               if (CloseEvent_cb_delegate == null)
+                                       CloseEvent_cb_delegate = new CloseEventNativeDelegate (CloseEvent_cb);
+                               return CloseEvent_cb_delegate;
+                       }
+               }
+
+               static void OverrideCloseEvent (GLib.GType gtype)
+               {
+                       OverrideCloseEvent (gtype, CloseEventVMCallback);
+               }
+
+               static void OverrideCloseEvent (GLib.GType gtype, CloseEventNativeDelegate callback)
+               {
+                       unsafe {
+                               IntPtr* raw_ptr = (IntPtr*)(((long) gtype.GetClassPtr()) + (long) class_abi.GetFieldOffset("close"));
+                               *raw_ptr = Marshal.GetFunctionPointerForDelegate((Delegate) callback);
+                       }
+               }
+
+               [UnmanagedFunctionPointer (CallingConvention.Cdecl)]
+               delegate void CloseEventNativeDelegate (IntPtr inst);
+
+               static void CloseEvent_cb (IntPtr inst)
+               {
+                       try {
+                               WebRTCDataChannel __obj = GLib.Object.GetObject (inst, false) as WebRTCDataChannel;
+                               __obj.OnCloseEvent ();
+                       } catch (Exception e) {
+                               GLib.ExceptionManager.RaiseUnhandledException (e, false);
+                       }
+               }
+
+               [GLib.DefaultSignalHandler(Type=typeof(Gst.WebRTC.WebRTCDataChannel), ConnectionMethod="OverrideCloseEvent")]
+               protected virtual void OnCloseEvent ()
+               {
+                       InternalCloseEvent ();
+               }
+
+               private void InternalCloseEvent ()
+               {
+                       CloseEventNativeDelegate unmanaged = null;
+                       unsafe {
+                               IntPtr* raw_ptr = (IntPtr*)(((long) this.LookupGType().GetThresholdType().GetClassPtr()) + (long) class_abi.GetFieldOffset("close"));
+                               unmanaged = (CloseEventNativeDelegate) Marshal.GetDelegateForFunctionPointer(*raw_ptr, typeof(CloseEventNativeDelegate));
+                       }
+                       if (unmanaged == null) return;
+
+                       unmanaged (this.Handle);
+               }
+
+
+               // Internal representation of the wrapped structure ABI.
+               static GLib.AbiStruct _class_abi = null;
+               static public new GLib.AbiStruct class_abi {
+                       get {
+                               if (_class_abi == null)
+                                       _class_abi = new GLib.AbiStruct (new List<GLib.AbiField>{ 
+                                               new GLib.AbiField("send_data"
+                                                       , GLib.Object.class_abi.Fields
+                                                       , (uint) Marshal.SizeOf(typeof(IntPtr)) // send_data
+                                                       , null
+                                                       , "send_string"
+                                                       , (uint) Marshal.SizeOf(typeof(IntPtr))
+                                                       , 0
+                                                       ),
+                                               new GLib.AbiField("send_string"
+                                                       , -1
+                                                       , (uint) Marshal.SizeOf(typeof(IntPtr)) // send_string
+                                                       , "send_data"
+                                                       , "close"
+                                                       , (uint) Marshal.SizeOf(typeof(IntPtr))
+                                                       , 0
+                                                       ),
+                                               new GLib.AbiField("close"
+                                                       , -1
+                                                       , (uint) Marshal.SizeOf(typeof(IntPtr)) // close
+                                                       , "send_string"
+                                                       , "_padding"
+                                                       , (uint) Marshal.SizeOf(typeof(IntPtr))
+                                                       , 0
+                                                       ),
+                                               new GLib.AbiField("_padding"
+                                                       , -1
+                                                       , (uint) Marshal.SizeOf(typeof(IntPtr)) * 4 // _padding
+                                                       , "close"
+                                                       , null
+                                                       , (uint) Marshal.SizeOf(typeof(IntPtr))
+                                                       , 0
+                                                       ),
+                                       });
+
+                               return _class_abi;
+                       }
+               }
+
+
+               // End of the ABI representation.
+
+               [DllImport("gstwebrtc-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern IntPtr gst_webrtc_data_channel_get_type();
+
+               public static new GLib.GType GType { 
+                       get {
+                               IntPtr raw_ret = gst_webrtc_data_channel_get_type();
+                               GLib.GType ret = new GLib.GType(raw_ret);
+                               return ret;
+                       }
+               }
+
+               [DllImport("gstwebrtc-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern void gst_webrtc_data_channel_close(IntPtr raw);
+
+               public void Close() {
+                       gst_webrtc_data_channel_close(Handle);
+               }
+
+               [DllImport("gstwebrtc-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern void gst_webrtc_data_channel_on_buffered_amount_low(IntPtr raw);
+
+               public void OnBufferedAmountLow() {
+                       gst_webrtc_data_channel_on_buffered_amount_low(Handle);
+               }
+
+               [DllImport("gstwebrtc-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern void gst_webrtc_data_channel_on_close(IntPtr raw);
+
+               public void OnClose() {
+                       gst_webrtc_data_channel_on_close(Handle);
+               }
+
+               [DllImport("gstwebrtc-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern void gst_webrtc_data_channel_on_error(IntPtr raw, IntPtr error);
+
+               public void OnError(IntPtr error) {
+                       gst_webrtc_data_channel_on_error(Handle, error);
+               }
+
+               [DllImport("gstwebrtc-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern void gst_webrtc_data_channel_on_message_data(IntPtr raw, IntPtr data);
+
+               public void OnMessageData(GLib.Bytes data) {
+                       gst_webrtc_data_channel_on_message_data(Handle, data == null ? IntPtr.Zero : data.Handle);
+               }
+
+               public void OnMessageData() {
+                       OnMessageData (null);
+               }
+
+               [DllImport("gstwebrtc-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern void gst_webrtc_data_channel_on_message_string(IntPtr raw, IntPtr str);
+
+               public void OnMessageString(string str) {
+                       IntPtr native_str = GLib.Marshaller.StringToPtrGStrdup (str);
+                       gst_webrtc_data_channel_on_message_string(Handle, native_str);
+                       GLib.Marshaller.Free (native_str);
+               }
+
+               public void OnMessageString() {
+                       OnMessageString (null);
+               }
+
+               [DllImport("gstwebrtc-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern void gst_webrtc_data_channel_on_open(IntPtr raw);
+
+               public void OnOpen() {
+                       gst_webrtc_data_channel_on_open(Handle);
+               }
+
+               [DllImport("gstwebrtc-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern void gst_webrtc_data_channel_send_data(IntPtr raw, IntPtr data);
+
+               public void SendData(GLib.Bytes data) {
+                       gst_webrtc_data_channel_send_data(Handle, data == null ? IntPtr.Zero : data.Handle);
+               }
+
+               public void SendData() {
+                       SendData (null);
+               }
+
+               [DllImport("gstwebrtc-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern void gst_webrtc_data_channel_send_string(IntPtr raw, IntPtr str);
+
+               public void SendString(string str) {
+                       IntPtr native_str = GLib.Marshaller.StringToPtrGStrdup (str);
+                       gst_webrtc_data_channel_send_string(Handle, native_str);
+                       GLib.Marshaller.Free (native_str);
+               }
+
+               public void SendString() {
+                       SendString (null);
+               }
+
+
+               static WebRTCDataChannel ()
+               {
+                       GtkSharp.GstreamerSharp.ObjectManager.Initialize ();
+               }
+
+               // Internal representation of the wrapped structure ABI.
+               static GLib.AbiStruct _abi_info = null;
+               static public new GLib.AbiStruct abi_info {
+                       get {
+                               if (_abi_info == null)
+                                       _abi_info = new GLib.AbiStruct (new List<GLib.AbiField>{ 
+                                               new GLib.AbiField("lock"
+                                                       , GLib.Object.abi_info.Fields
+                                                       , (uint) Marshal.SizeOf(typeof(IntPtr)) // lock
+                                                       , null
+                                                       , "label"
+                                                       , (uint) Marshal.SizeOf(typeof(IntPtr))
+                                                       , 0
+                                                       ),
+                                               new GLib.AbiField("label"
+                                                       , -1
+                                                       , (uint) Marshal.SizeOf(typeof(IntPtr)) // label
+                                                       , "lock"
+                                                       , "ordered"
+                                                       , (uint) Marshal.SizeOf(typeof(IntPtr))
+                                                       , 0
+                                                       ),
+                                               new GLib.AbiField("ordered"
+                                                       , -1
+                                                       , (uint) Marshal.SizeOf(typeof(bool)) // ordered
+                                                       , "label"
+                                                       , "max_packet_lifetime"
+                                                       , (long) Marshal.OffsetOf(typeof(GstWebRTCDataChannel_orderedAlign), "ordered")
+                                                       , 0
+                                                       ),
+                                               new GLib.AbiField("max_packet_lifetime"
+                                                       , -1
+                                                       , (uint) Marshal.SizeOf(typeof(uint)) // max_packet_lifetime
+                                                       , "ordered"
+                                                       , "max_retransmits"
+                                                       , (long) Marshal.OffsetOf(typeof(GstWebRTCDataChannel_max_packet_lifetimeAlign), "max_packet_lifetime")
+                                                       , 0
+                                                       ),
+                                               new GLib.AbiField("max_retransmits"
+                                                       , -1
+                                                       , (uint) Marshal.SizeOf(typeof(uint)) // max_retransmits
+                                                       , "max_packet_lifetime"
+                                                       , "protocol"
+                                                       , (long) Marshal.OffsetOf(typeof(GstWebRTCDataChannel_max_retransmitsAlign), "max_retransmits")
+                                                       , 0
+                                                       ),
+                                               new GLib.AbiField("protocol"
+                                                       , -1
+                                                       , (uint) Marshal.SizeOf(typeof(IntPtr)) // protocol
+                                                       , "max_retransmits"
+                                                       , "negotiated"
+                                                       , (uint) Marshal.SizeOf(typeof(IntPtr))
+                                                       , 0
+                                                       ),
+                                               new GLib.AbiField("negotiated"
+                                                       , -1
+                                                       , (uint) Marshal.SizeOf(typeof(bool)) // negotiated
+                                                       , "protocol"
+                                                       , "id"
+                                                       , (long) Marshal.OffsetOf(typeof(GstWebRTCDataChannel_negotiatedAlign), "negotiated")
+                                                       , 0
+                                                       ),
+                                               new GLib.AbiField("id"
+                                                       , -1
+                                                       , (uint) Marshal.SizeOf(typeof(int)) // id
+                                                       , "negotiated"
+                                                       , "priority"
+                                                       , (long) Marshal.OffsetOf(typeof(GstWebRTCDataChannel_idAlign), "id")
+                                                       , 0
+                                                       ),
+                                               new GLib.AbiField("priority"
+                                                       , -1
+                                                       , (uint) Marshal.SizeOf(System.Enum.GetUnderlyingType(typeof(Gst.WebRTC.WebRTCPriorityType))) // priority
+                                                       , "id"
+                                                       , "ready_state"
+                                                       , (long) Marshal.OffsetOf(typeof(GstWebRTCDataChannel_priorityAlign), "priority")
+                                                       , 0
+                                                       ),
+                                               new GLib.AbiField("ready_state"
+                                                       , -1
+                                                       , (uint) Marshal.SizeOf(System.Enum.GetUnderlyingType(typeof(Gst.WebRTC.WebRTCDataChannelState))) // ready_state
+                                                       , "priority"
+                                                       , "buffered_amount"
+                                                       , (long) Marshal.OffsetOf(typeof(GstWebRTCDataChannel_ready_stateAlign), "ready_state")
+                                                       , 0
+                                                       ),
+                                               new GLib.AbiField("buffered_amount"
+                                                       , -1
+                                                       , (uint) Marshal.SizeOf(typeof(ulong)) // buffered_amount
+                                                       , "ready_state"
+                                                       , "buffered_amount_low_threshold"
+                                                       , (long) Marshal.OffsetOf(typeof(GstWebRTCDataChannel_buffered_amountAlign), "buffered_amount")
+                                                       , 0
+                                                       ),
+                                               new GLib.AbiField("buffered_amount_low_threshold"
+                                                       , -1
+                                                       , (uint) Marshal.SizeOf(typeof(ulong)) // buffered_amount_low_threshold
+                                                       , "buffered_amount"
+                                                       , "_padding"
+                                                       , (long) Marshal.OffsetOf(typeof(GstWebRTCDataChannel_buffered_amount_low_thresholdAlign), "buffered_amount_low_threshold")
+                                                       , 0
+                                                       ),
+                                               new GLib.AbiField("_padding"
+                                                       , -1
+                                                       , (uint) Marshal.SizeOf(typeof(IntPtr)) * 4 // _padding
+                                                       , "buffered_amount_low_threshold"
+                                                       , null
+                                                       , (uint) Marshal.SizeOf(typeof(IntPtr))
+                                                       , 0
+                                                       ),
+                                       });
+
+                               return _abi_info;
+                       }
+               }
+
+               [StructLayout(LayoutKind.Sequential)]
+               public struct GstWebRTCDataChannel_orderedAlign
+               {
+                       sbyte f1;
+                       private bool ordered;
+               }
+
+               [StructLayout(LayoutKind.Sequential)]
+               public struct GstWebRTCDataChannel_max_packet_lifetimeAlign
+               {
+                       sbyte f1;
+                       private uint max_packet_lifetime;
+               }
+
+               [StructLayout(LayoutKind.Sequential)]
+               public struct GstWebRTCDataChannel_max_retransmitsAlign
+               {
+                       sbyte f1;
+                       private uint max_retransmits;
+               }
+
+               [StructLayout(LayoutKind.Sequential)]
+               public struct GstWebRTCDataChannel_negotiatedAlign
+               {
+                       sbyte f1;
+                       private bool negotiated;
+               }
+
+               [StructLayout(LayoutKind.Sequential)]
+               public struct GstWebRTCDataChannel_idAlign
+               {
+                       sbyte f1;
+                       private int id;
+               }
+
+               [StructLayout(LayoutKind.Sequential)]
+               public struct GstWebRTCDataChannel_priorityAlign
+               {
+                       sbyte f1;
+                       private Gst.WebRTC.WebRTCPriorityType priority;
+               }
+
+               [StructLayout(LayoutKind.Sequential)]
+               public struct GstWebRTCDataChannel_ready_stateAlign
+               {
+                       sbyte f1;
+                       private Gst.WebRTC.WebRTCDataChannelState ready_state;
+               }
+
+               [StructLayout(LayoutKind.Sequential)]
+               public struct GstWebRTCDataChannel_buffered_amountAlign
+               {
+                       sbyte f1;
+                       private ulong buffered_amount;
+               }
+
+               [StructLayout(LayoutKind.Sequential)]
+               public struct GstWebRTCDataChannel_buffered_amount_low_thresholdAlign
+               {
+                       sbyte f1;
+                       private ulong buffered_amount_low_threshold;
+               }
+
+
+               // End of the ABI representation.
+
+#endregion
+       }
+}
index bd7d50d..29779e5 100644 (file)
@@ -18,6 +18,21 @@ namespace Gst.WebRTC {
                        CreateNativeObject (new string [0], new GLib.Value [0]);
                }
 
+               [GLib.Property ("direction")]
+               public Gst.WebRTC.WebRTCRTPTransceiverDirection Direction {
+                       get {
+                               GLib.Value val = GetProperty ("direction");
+                               Gst.WebRTC.WebRTCRTPTransceiverDirection ret = (Gst.WebRTC.WebRTCRTPTransceiverDirection) (Enum) val;
+                               val.Dispose ();
+                               return ret;
+                       }
+                       set {
+                               GLib.Value val = new GLib.Value((Enum) value);
+                               SetProperty("direction", val);
+                               val.Dispose ();
+                       }
+               }
+
                [GLib.Property ("mlineindex")]
                public uint Mlineindex {
                        get {
@@ -93,7 +108,7 @@ namespace Gst.WebRTC {
                        }
                }
 
-               public Gst.WebRTC.WebRTCRTPTransceiverDirection Direction {
+               public Gst.WebRTC.WebRTCRTPTransceiverDirection DirectionField {
                        get {
                                unsafe {
                                        int* raw_ptr = (int*)(((byte*)Handle) + abi_info.GetFieldOffset("direction"));
index e4f6a2b..e320cd2 100644 (file)
@@ -814,6 +814,17 @@ namespace Gst {
                }
 
                [DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern IntPtr gst_bin_iterate_all_by_element_factory_name(IntPtr raw, IntPtr factory_name);
+
+               public Gst.Iterator IterateAllByElementFactoryName(string factory_name) {
+                       IntPtr native_factory_name = GLib.Marshaller.StringToPtrGStrdup (factory_name);
+                       IntPtr raw_ret = gst_bin_iterate_all_by_element_factory_name(Handle, native_factory_name);
+                       Gst.Iterator ret = raw_ret == IntPtr.Zero ? null : (Gst.Iterator) GLib.Opaque.GetOpaque (raw_ret, typeof (Gst.Iterator), true);
+                       GLib.Marshaller.Free (native_factory_name);
+                       return ret;
+               }
+
+               [DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
                static extern IntPtr gst_bin_iterate_all_by_interface(IntPtr raw, IntPtr iface);
 
                public Gst.Iterator IterateAllByInterface(GLib.GType iface) {
index cc3e305..b795d55 100644 (file)
@@ -596,6 +596,51 @@ namespace Gst {
                        Raw = gst_buffer_new_wrapped_full((int) flags, data, new UIntPtr (maxsize), new UIntPtr (offset), new UIntPtr (size), user_data, notify);
                }
 
+               [DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern IntPtr gst_buffer_ref(IntPtr raw);
+
+               protected override void Ref (IntPtr raw)
+               {
+                       if (!Owned) {
+                               gst_buffer_ref (raw);
+                               Owned = true;
+                       }
+               }
+
+               [DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern void gst_buffer_unref(IntPtr raw);
+
+               protected override void Unref (IntPtr raw)
+               {
+                       if (Owned) {
+                               gst_buffer_unref (raw);
+                               Owned = false;
+                       }
+               }
+
+               class FinalizerInfo {
+                       IntPtr handle;
+
+                       public FinalizerInfo (IntPtr handle)
+                       {
+                               this.handle = handle;
+                       }
+
+                       public bool Handler ()
+                       {
+                               gst_buffer_unref (handle);
+                               return false;
+                       }
+               }
+
+               ~Buffer ()
+               {
+                       if (!Owned)
+                               return;
+                       FinalizerInfo info = new FinalizerInfo (Handle);
+                       GLib.Timeout.Add (50, new GLib.TimeoutHandler (info.Handler));
+               }
+
 
                // Internal representation of the wrapped structure ABI.
                static GLib.AbiStruct _abi_info = null;
index 524b47e..77b2448 100644 (file)
@@ -110,6 +110,51 @@ namespace Gst {
                        Raw = gst_buffer_list_new_sized(size);
                }
 
+               [DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern IntPtr gst_buffer_list_ref(IntPtr raw);
+
+               protected override void Ref (IntPtr raw)
+               {
+                       if (!Owned) {
+                               gst_buffer_list_ref (raw);
+                               Owned = true;
+                       }
+               }
+
+               [DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern void gst_buffer_list_unref(IntPtr raw);
+
+               protected override void Unref (IntPtr raw)
+               {
+                       if (Owned) {
+                               gst_buffer_list_unref (raw);
+                               Owned = false;
+                       }
+               }
+
+               class FinalizerInfo {
+                       IntPtr handle;
+
+                       public FinalizerInfo (IntPtr handle)
+                       {
+                               this.handle = handle;
+                       }
+
+                       public bool Handler ()
+                       {
+                               gst_buffer_list_unref (handle);
+                               return false;
+                       }
+               }
+
+               ~BufferList ()
+               {
+                       if (!Owned)
+                               return;
+                       FinalizerInfo info = new FinalizerInfo (Handle);
+                       GLib.Timeout.Add (50, new GLib.TimeoutHandler (info.Handler));
+               }
+
 
                // Internal representation of the wrapped structure ABI.
                static GLib.AbiStruct _abi_info = null;
index 6b378f5..4037187 100644 (file)
@@ -437,6 +437,51 @@ namespace Gst {
                        return result;
                }
 
+               [DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern IntPtr gst_caps_ref(IntPtr raw);
+
+               protected override void Ref (IntPtr raw)
+               {
+                       if (!Owned) {
+                               gst_caps_ref (raw);
+                               Owned = true;
+                       }
+               }
+
+               [DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern void gst_caps_unref(IntPtr raw);
+
+               protected override void Unref (IntPtr raw)
+               {
+                       if (Owned) {
+                               gst_caps_unref (raw);
+                               Owned = false;
+                       }
+               }
+
+               class FinalizerInfo {
+                       IntPtr handle;
+
+                       public FinalizerInfo (IntPtr handle)
+                       {
+                               this.handle = handle;
+                       }
+
+                       public bool Handler ()
+                       {
+                               gst_caps_unref (handle);
+                               return false;
+                       }
+               }
+
+               ~Caps ()
+               {
+                       if (!Owned)
+                               return;
+                       FinalizerInfo info = new FinalizerInfo (Handle);
+                       GLib.Timeout.Add (50, new GLib.TimeoutHandler (info.Handler));
+               }
+
 
                // Internal representation of the wrapped structure ABI.
                static GLib.AbiStruct _abi_info = null;
index b3ecacd..4a3505f 100644 (file)
@@ -13,6 +13,7 @@ namespace Gst {
                Realtime = 0,
                Monotonic = 1,
                Other = 2,
+               Tai = 3,
        }
 
        internal class ClockTypeGType {
index f9c3fe9..e885197 100644 (file)
@@ -58,7 +58,9 @@ namespace Gst {
                public const int MAP_READWRITE = 3;
                public const string META_TAG_MEMORY_STR = @"memory";
                public const long MSECOND = 1000000;
+               public const int PARAM_CONDITIONALLY_AVAILABLE = 16384;
                public const int PARAM_CONTROLLABLE = 512;
+               public const int PARAM_DOC_SHOW_DEFAULT = 8192;
                public const int PARAM_MUTABLE_PAUSED = 2048;
                public const int PARAM_MUTABLE_PLAYING = 4096;
                public const int PARAM_MUTABLE_READY = 1024;
@@ -70,6 +72,7 @@ namespace Gst {
                public const int QUERY_TYPE_BOTH = 3;
                public const long SECOND = 1000000000;
                public const string SEGMENT_FORMAT = @"paB";
+               public const int SEGMENT_INSTANT_FLAGS = 912;
                public const int SEQNUM_INVALID = 0;
                public const string STIME_FORMAT = @"c%";
                public const string TAG_ALBUM = @"album";
index 56639cc..b40feba 100644 (file)
@@ -220,6 +220,15 @@ namespace Gst {
                }
 
                [DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern IntPtr gst_date_time_new_from_unix_epoch_local_time_usecs(long usecs);
+
+               public static DateTime NewFromUnixEpochLocalTimeUsecs(long usecs)
+               {
+                       DateTime result = new DateTime (gst_date_time_new_from_unix_epoch_local_time_usecs(usecs));
+                       return result;
+               }
+
+               [DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
                static extern IntPtr gst_date_time_new_from_unix_epoch_utc(long secs);
 
                public static DateTime NewFromUnixEpochUtc(long secs)
@@ -229,6 +238,15 @@ namespace Gst {
                }
 
                [DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern IntPtr gst_date_time_new_from_unix_epoch_utc_usecs(long usecs);
+
+               public static DateTime NewFromUnixEpochUtcUsecs(long usecs)
+               {
+                       DateTime result = new DateTime (gst_date_time_new_from_unix_epoch_utc_usecs(usecs));
+                       return result;
+               }
+
+               [DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
                static extern IntPtr gst_date_time_new_local_time(int year, int month, int day, int hour, int minute, double seconds);
 
                public DateTime (int year, int month, int day, int hour, int minute, double seconds) 
index f27e9bc..4b34e0c 100644 (file)
@@ -159,6 +159,25 @@ namespace Gst {
                }
 
                [DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern IntPtr gst_debug_log_get_line(IntPtr category, int level, IntPtr file, IntPtr function, int line, IntPtr _object, IntPtr message);
+
+               public static string LogGetLine(Gst.DebugCategory category, Gst.DebugLevel level, string file, string function, int line, GLib.Object _object, Gst.DebugMessage message) {
+                       IntPtr native_category = GLib.Marshaller.StructureToPtrAlloc (category);
+                       IntPtr native_file = GLib.Marshaller.StringToPtrGStrdup (file);
+                       IntPtr native_function = GLib.Marshaller.StringToPtrGStrdup (function);
+                       IntPtr raw_ret = gst_debug_log_get_line(native_category, (int) level, native_file, native_function, line, _object == null ? IntPtr.Zero : _object.Handle, message == null ? IntPtr.Zero : message.Handle);
+                       string ret = GLib.Marshaller.PtrToStringGFree(raw_ret);
+                       Marshal.FreeHGlobal (native_category);
+                       GLib.Marshaller.Free (native_file);
+                       GLib.Marshaller.Free (native_function);
+                       return ret;
+               }
+
+               public static string LogGetLine(Gst.DebugCategory category, Gst.DebugLevel level, string file, string function, int line, Gst.DebugMessage message) {
+                       return LogGetLine (category, level, file, function, line, null, message);
+               }
+
+               [DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
                static extern void gst_debug_print_stack_trace();
 
                public static void PrintStackTrace() {
index c267441..fc17e30 100644 (file)
@@ -28,6 +28,7 @@ namespace Gst {
                [DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
                static extern void gst_debug_category_free(IntPtr raw);
 
+               [Obsolete]
                public void Free() {
                        IntPtr this_as_native = System.Runtime.InteropServices.Marshal.AllocHGlobal (System.Runtime.InteropServices.Marshal.SizeOf (this));
                        System.Runtime.InteropServices.Marshal.StructureToPtr (this, this_as_native, false);
index d56e128..daeaa7f 100644 (file)
@@ -156,7 +156,7 @@ namespace Gst {
                                Device __obj = GLib.Object.GetObject (inst, false) as Device;
                                Gst.Element __result;
                                __result = __obj.OnCreateElement (GLib.Marshaller.Utf8PtrToString (name));
-                               return __result == null ? IntPtr.Zero : __result.OwnedHandle;
+                               return __result == null ? IntPtr.Zero : __result.Handle;
                        } catch (Exception e) {
                                GLib.ExceptionManager.RaiseUnhandledException (e, true);
                                // NOTREACHED: above call does not return.
@@ -182,7 +182,7 @@ namespace Gst {
                        IntPtr native_name = GLib.Marshaller.StringToPtrGStrdup (name);
                        IntPtr __result = unmanaged (this.Handle, native_name);
                        GLib.Marshaller.Free (native_name);
-                       return GLib.Object.GetObject(__result, true) as Gst.Element;
+                       return GLib.Object.GetObject(__result) as Gst.Element;
                }
 
                static ReconfigureElementNativeDelegate ReconfigureElement_cb_delegate;
@@ -300,7 +300,7 @@ namespace Gst {
                public Gst.Element CreateElement(string name) {
                        IntPtr native_name = GLib.Marshaller.StringToPtrGStrdup (name);
                        IntPtr raw_ret = gst_device_create_element(Handle, native_name);
-                       Gst.Element ret = GLib.Object.GetObject(raw_ret, true) as Gst.Element;
+                       Gst.Element ret = GLib.Object.GetObject(raw_ret) as Gst.Element;
                        GLib.Marshaller.Free (native_name);
                        return ret;
                }
index 8b63dca..507f032 100644 (file)
@@ -1595,6 +1595,28 @@ namespace Gst {
                }
 
                [DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern ulong gst_element_get_current_clock_time(IntPtr raw);
+
+               public ulong CurrentClockTime { 
+                       get {
+                               ulong raw_ret = gst_element_get_current_clock_time(Handle);
+                               ulong ret = raw_ret;
+                               return ret;
+                       }
+               }
+
+               [DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern ulong gst_element_get_current_running_time(IntPtr raw);
+
+               public ulong CurrentRunningTime { 
+                       get {
+                               ulong raw_ret = gst_element_get_current_running_time(Handle);
+                               ulong ret = raw_ret;
+                               return ret;
+                       }
+               }
+
+               [DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
                static extern IntPtr gst_element_get_factory(IntPtr raw);
 
                public Gst.ElementFactory Factory { 
index 9cce178..dad280d 100644 (file)
@@ -118,6 +118,15 @@ namespace Gst {
                }
 
                [DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern bool gst_event_has_name_id(IntPtr raw, uint name);
+
+               public bool HasNameId(uint name) {
+                       bool raw_ret = gst_event_has_name_id(Handle, name);
+                       bool ret = raw_ret;
+                       return ret;
+               }
+
+               [DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
                static extern void gst_event_parse_buffer_size(IntPtr raw, out int format, out long minsize, out long maxsize, out bool async);
 
                public void ParseBufferSize(out Gst.Format format, out long minsize, out long maxsize, out bool async) {
@@ -163,6 +172,22 @@ namespace Gst {
                }
 
                [DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern void gst_event_parse_instant_rate_change(IntPtr raw, out double rate_multiplier, out int new_flags);
+
+               public void ParseInstantRateChange(out double rate_multiplier, out Gst.SegmentFlags new_flags) {
+                       int native_new_flags;
+                       gst_event_parse_instant_rate_change(Handle, out rate_multiplier, out native_new_flags);
+                       new_flags = (Gst.SegmentFlags) native_new_flags;
+               }
+
+               [DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern void gst_event_parse_instant_rate_sync_time(IntPtr raw, out double rate_multiplier, out ulong running_time, out ulong upstream_running_time);
+
+               public void ParseInstantRateSyncTime(out double rate_multiplier, out ulong running_time, out ulong upstream_running_time) {
+                       gst_event_parse_instant_rate_sync_time(Handle, out rate_multiplier, out running_time, out upstream_running_time);
+               }
+
+               [DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
                static extern void gst_event_parse_latency(IntPtr raw, out ulong latency);
 
                public ulong ParseLatency() {
@@ -466,6 +491,24 @@ namespace Gst {
                }
 
                [DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern IntPtr gst_event_new_instant_rate_change(double rate_multiplier, int new_flags);
+
+               public static Event NewInstantRateChange(double rate_multiplier, Gst.SegmentFlags new_flags)
+               {
+                       Event result = new Event (gst_event_new_instant_rate_change(rate_multiplier, (int) new_flags));
+                       return result;
+               }
+
+               [DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern IntPtr gst_event_new_instant_rate_sync_time(double rate_multiplier, ulong running_time, ulong upstream_running_time);
+
+               public static Event NewInstantRateSyncTime(double rate_multiplier, ulong running_time, ulong upstream_running_time)
+               {
+                       Event result = new Event (gst_event_new_instant_rate_sync_time(rate_multiplier, running_time, upstream_running_time));
+                       return result;
+               }
+
+               [DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
                static extern IntPtr gst_event_new_latency(ulong latency);
 
                public static Event NewLatency(ulong latency)
@@ -634,6 +677,51 @@ namespace Gst {
                        return result;
                }
 
+               [DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern IntPtr gst_event_ref(IntPtr raw);
+
+               protected override void Ref (IntPtr raw)
+               {
+                       if (!Owned) {
+                               gst_event_ref (raw);
+                               Owned = true;
+                       }
+               }
+
+               [DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern void gst_event_unref(IntPtr raw);
+
+               protected override void Unref (IntPtr raw)
+               {
+                       if (Owned) {
+                               gst_event_unref (raw);
+                               Owned = false;
+                       }
+               }
+
+               class FinalizerInfo {
+                       IntPtr handle;
+
+                       public FinalizerInfo (IntPtr handle)
+                       {
+                               this.handle = handle;
+                       }
+
+                       public bool Handler ()
+                       {
+                               gst_event_unref (handle);
+                               return false;
+                       }
+               }
+
+               ~Event ()
+               {
+                       if (!Owned)
+                               return;
+                       FinalizerInfo info = new FinalizerInfo (Handle);
+                       GLib.Timeout.Add (50, new GLib.TimeoutHandler (info.Handler));
+               }
+
 
                // Internal representation of the wrapped structure ABI.
                static GLib.AbiStruct _abi_info = null;
index 88d450d..60b8535 100644 (file)
@@ -26,6 +26,7 @@ namespace Gst {
                Protection = 33310,
                SegmentDone = 38406,
                Gap = 40966,
+               InstantRateChange = 46090,
                Qos = 48641,
                Seek = 51201,
                Navigation = 53761,
@@ -34,6 +35,7 @@ namespace Gst {
                Reconfigure = 61441,
                TocSelect = 64001,
                SelectStreams = 66561,
+               InstantRateSyncTime = 66817,
                CustomUpstream = 69121,
                CustomDownstream = 71686,
                CustomDownstreamOob = 74242,
index 854cbe1..6468502 100644 (file)
@@ -445,24 +445,20 @@ namespace Gst {
                }
 
                [DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
-               static extern IntPtr gst_structure_from_string(IntPtr str1ng, out IntPtr end);
+               static extern IntPtr gst_toc_entry_type_get_nick(int type);
 
-               public static Gst.Structure StructureFromString(string str1ng, out string end) {
-                       IntPtr native_str1ng = GLib.Marshaller.StringToPtrGStrdup (str1ng);
-                       IntPtr native_end;
-                       IntPtr raw_ret = gst_structure_from_string(native_str1ng, out native_end);
-                       Gst.Structure ret = raw_ret == IntPtr.Zero ? null : (Gst.Structure) GLib.Opaque.GetOpaque (raw_ret, typeof (Gst.Structure), true);
-                       GLib.Marshaller.Free (native_str1ng);
-                       end = GLib.Marshaller.Utf8PtrToString (native_end);
+               public static string TocEntryTypeGetNick(Gst.TocEntryType type) {
+                       IntPtr raw_ret = gst_toc_entry_type_get_nick((int) type);
+                       string ret = GLib.Marshaller.Utf8PtrToString (raw_ret);
                        return ret;
                }
 
                [DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
-               static extern IntPtr gst_toc_entry_type_get_nick(int type);
+               static extern IntPtr gst_tracing_get_active_tracers();
 
-               public static string TocEntryTypeGetNick(Gst.TocEntryType type) {
-                       IntPtr raw_ret = gst_toc_entry_type_get_nick((int) type);
-                       string ret = GLib.Marshaller.Utf8PtrToString (raw_ret);
+               public static Gst.Tracer[] TracingGetActiveTracers() {
+                       IntPtr raw_ret = gst_tracing_get_active_tracers();
+                       Gst.Tracer[] ret = (Gst.Tracer[]) GLib.Marshaller.ListPtrToArray (raw_ret, typeof(GLib.List), true, true, typeof(Gst.Tracer));
                        return ret;
                }
 
@@ -502,6 +498,24 @@ namespace Gst {
                        return TypeFindRegister (null, name, rank, func, null, possible_caps);
                }
 
+               [DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern bool gst_type_is_plugin_api(IntPtr type, out int flags);
+
+               public static bool TypeIsPluginApi(GLib.GType type, out Gst.PluginAPIFlags flags) {
+                       int native_flags;
+                       bool raw_ret = gst_type_is_plugin_api(type.Val, out native_flags);
+                       bool ret = raw_ret;
+                       flags = (Gst.PluginAPIFlags) native_flags;
+                       return ret;
+               }
+
+               [DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern void gst_type_mark_as_plugin_api(IntPtr type, int flags);
+
+               public static void TypeMarkAsPluginApi(GLib.GType type, Gst.PluginAPIFlags flags) {
+                       gst_type_mark_as_plugin_api(type.Val, (int) flags);
+               }
+
 #endregion
        }
 }
index 6257562..c0c9a78 100644 (file)
@@ -215,6 +215,51 @@ namespace Gst {
                        Raw = gst_memory_new_wrapped((int) flags, data, new UIntPtr (maxsize), new UIntPtr (offset), new UIntPtr (size), user_data, notify);
                }
 
+               [DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern IntPtr gst_memory_ref(IntPtr raw);
+
+               protected override void Ref (IntPtr raw)
+               {
+                       if (!Owned) {
+                               gst_memory_ref (raw);
+                               Owned = true;
+                       }
+               }
+
+               [DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern void gst_memory_unref(IntPtr raw);
+
+               protected override void Unref (IntPtr raw)
+               {
+                       if (Owned) {
+                               gst_memory_unref (raw);
+                               Owned = false;
+                       }
+               }
+
+               class FinalizerInfo {
+                       IntPtr handle;
+
+                       public FinalizerInfo (IntPtr handle)
+                       {
+                               this.handle = handle;
+                       }
+
+                       public bool Handler ()
+                       {
+                               gst_memory_unref (handle);
+                               return false;
+                       }
+               }
+
+               ~Memory ()
+               {
+                       if (!Owned)
+                               return;
+                       FinalizerInfo info = new FinalizerInfo (Handle);
+                       GLib.Timeout.Add (50, new GLib.TimeoutHandler (info.Handler));
+               }
+
 
                // Internal representation of the wrapped structure ABI.
                static GLib.AbiStruct _abi_info = null;
index cafcd3d..b526ea2 100644 (file)
@@ -276,6 +276,15 @@ namespace Gst {
                }
 
                [DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern void gst_message_parse_instant_rate_request(IntPtr raw, out double rate_multiplier);
+
+               public double ParseInstantRateRequest() {
+                       double rate_multiplier;
+                       gst_message_parse_instant_rate_request(Handle, out rate_multiplier);
+                       return rate_multiplier;
+               }
+
+               [DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
                static extern void gst_message_parse_new_clock(IntPtr raw, out IntPtr clock);
 
                public Gst.Clock ParseNewClock() {
@@ -747,6 +756,15 @@ namespace Gst {
                }
 
                [DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern IntPtr gst_message_new_instant_rate_request(IntPtr src, double rate_multiplier);
+
+               public static Message NewInstantRateRequest(Gst.Object src, double rate_multiplier)
+               {
+                       Message result = new Message (gst_message_new_instant_rate_request(src == null ? IntPtr.Zero : src.Handle, rate_multiplier));
+                       return result;
+               }
+
+               [DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
                static extern IntPtr gst_message_new_latency(IntPtr src);
 
                public static Message NewLatency(Gst.Object src)
@@ -984,6 +1002,51 @@ namespace Gst {
                        return result;
                }
 
+               [DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern IntPtr gst_message_ref(IntPtr raw);
+
+               protected override void Ref (IntPtr raw)
+               {
+                       if (!Owned) {
+                               gst_message_ref (raw);
+                               Owned = true;
+                       }
+               }
+
+               [DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern void gst_message_unref(IntPtr raw);
+
+               protected override void Unref (IntPtr raw)
+               {
+                       if (Owned) {
+                               gst_message_unref (raw);
+                               Owned = false;
+                       }
+               }
+
+               class FinalizerInfo {
+                       IntPtr handle;
+
+                       public FinalizerInfo (IntPtr handle)
+                       {
+                               this.handle = handle;
+                       }
+
+                       public bool Handler ()
+                       {
+                               gst_message_unref (handle);
+                               return false;
+                       }
+               }
+
+               ~Message ()
+               {
+                       if (!Owned)
+                               return;
+                       FinalizerInfo info = new FinalizerInfo (Handle);
+                       GLib.Timeout.Add (50, new GLib.TimeoutHandler (info.Handler));
+               }
+
 
                // Internal representation of the wrapped structure ABI.
                static GLib.AbiStruct _abi_info = null;
index 98457d4..01395b0 100644 (file)
@@ -50,7 +50,8 @@ namespace Gst {
                StreamCollection = 2147483652,
                StreamsSelected = 2147483653,
                Redirect = 2147483654,
-               DeviceChanged = 2147483654,
+               DeviceChanged = 2147483655,
+               InstantRateRequest = 2147483656,
                Any = 4294967295,
        }
 
index a32be64..64a2f22 100644 (file)
@@ -533,6 +533,17 @@ namespace Gst {
                }
 
                [DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern IntPtr gst_pad_get_single_internal_link(IntPtr raw);
+
+               public Gst.Pad SingleInternalLink { 
+                       get {
+                               IntPtr raw_ret = gst_pad_get_single_internal_link(Handle);
+                               Gst.Pad ret = GLib.Object.GetObject(raw_ret, true) as Gst.Pad;
+                               return ret;
+                       }
+               }
+
+               [DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
                static extern IntPtr gst_pad_get_sticky_event(IntPtr raw, int event_type, uint idx);
 
                public Gst.Event GetStickyEvent(Gst.EventType event_type, uint idx) {
index eadd0ce..2e87944 100644 (file)
@@ -276,6 +276,23 @@ namespace Gst {
                }
 
                [DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern IntPtr gst_pad_template_get_documentation_caps(IntPtr raw);
+
+               [DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern void gst_pad_template_set_documentation_caps(IntPtr raw, IntPtr caps);
+
+               public Gst.Caps DocumentationCaps { 
+                       get {
+                               IntPtr raw_ret = gst_pad_template_get_documentation_caps(Handle);
+                               Gst.Caps ret = raw_ret == IntPtr.Zero ? null : (Gst.Caps) GLib.Opaque.GetOpaque (raw_ret, typeof (Gst.Caps), true);
+                               return ret;
+                       }
+                       set {
+                               gst_pad_template_set_documentation_caps(Handle, value == null ? IntPtr.Zero : value.Handle);
+                       }
+               }
+
+               [DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
                static extern void gst_pad_template_pad_created(IntPtr raw, IntPtr pad);
 
                public void PadCreated(Gst.Pad pad) {
@@ -337,17 +354,25 @@ namespace Gst {
                                                                , -1
                                                                , (uint) Marshal.SizeOf(typeof(GLib.GType)) // ABI.abi.gtype
                                                                , "caps"
-                                                               , null
+                                                               , "ABI.abi.documentation_caps"
                                                                , (long) Marshal.OffsetOf(typeof(GstPadTemplate_ABI_abi_gtypeAlign), "ABI_abi_gtype")
                                                                , 0
                                                                ),
+                                                       new GLib.AbiField("ABI.abi.documentation_caps"
+                                                               , -1
+                                                               , (uint) Marshal.SizeOf(typeof(IntPtr)) // ABI.abi.documentation_caps
+                                                               , "ABI.abi.gtype"
+                                                               , null
+                                                               , (uint) Marshal.SizeOf(typeof(IntPtr))
+                                                               , 0
+                                                               ),
                                                // End ABI.abi
 
                                                new GLib.AbiField("ABI"
                                                        , -1
                                                        , new List<List<string>>() {  // union ABI
                                                new List<string>() {"ABI._gst_reserved"},
-                                               new List<string>() {"ABI.abi.gtype"}
+                                               new List<string>() {"ABI.abi.gtype","ABI.abi.documentation_caps"}
                                          }
                                                        , "caps"
                                                        , null
diff --git a/sources/generated/Gst/PluginAPIFlags.cs b/sources/generated/Gst/PluginAPIFlags.cs
new file mode 100644 (file)
index 0000000..57d5176
--- /dev/null
@@ -0,0 +1,28 @@
+// This file was generated by the Gtk# code generator.
+// Any changes made will be lost if regenerated.
+
+namespace Gst {
+
+       using System;
+       using System.Runtime.InteropServices;
+
+#region Autogenerated code
+       [Flags]
+       [GLib.GType (typeof (Gst.PluginAPIFlagsGType))]
+       public enum PluginAPIFlags {
+
+               Members = 1,
+       }
+
+       internal class PluginAPIFlagsGType {
+               [DllImport ("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern IntPtr gst_plugin_api_flags_get_type ();
+
+               public static GLib.GType GType {
+                       get {
+                               return new GLib.GType (gst_plugin_api_flags_get_type ());
+                       }
+               }
+       }
+#endregion
+}
index 857402a..f659dc3 100644 (file)
@@ -53,6 +53,10 @@ namespace Gst {
                        gst_promise_reply(Handle, s == null ? IntPtr.Zero : s.Handle);
                }
 
+               public void Reply() {
+                       Reply (null);
+               }
+
                [DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
                static extern int gst_promise_wait(IntPtr raw);
 
index 69fc329..01bfb39 100644 (file)
@@ -810,6 +810,40 @@ namespace Gst {
                        return result;
                }
 
+               [DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern void gst_query_unref(IntPtr raw);
+
+               protected override void Unref (IntPtr raw)
+               {
+                       if (Owned) {
+                               gst_query_unref (raw);
+                               Owned = false;
+                       }
+               }
+
+               class FinalizerInfo {
+                       IntPtr handle;
+
+                       public FinalizerInfo (IntPtr handle)
+                       {
+                               this.handle = handle;
+                       }
+
+                       public bool Handler ()
+                       {
+                               gst_query_unref (handle);
+                               return false;
+                       }
+               }
+
+               ~Query ()
+               {
+                       if (!Owned)
+                               return;
+                       FinalizerInfo info = new FinalizerInfo (Handle);
+                       GLib.Timeout.Add (50, new GLib.TimeoutHandler (info.Handler));
+               }
+
 
                // Internal representation of the wrapped structure ABI.
                static GLib.AbiStruct _abi_info = null;
index 8695748..0a462af 100644 (file)
@@ -126,6 +126,51 @@ namespace Gst {
                        Marshal.FreeHGlobal (native_segment);
                }
 
+               [DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern IntPtr gst_sample_ref(IntPtr raw);
+
+               protected override void Ref (IntPtr raw)
+               {
+                       if (!Owned) {
+                               gst_sample_ref (raw);
+                               Owned = true;
+                       }
+               }
+
+               [DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern void gst_sample_unref(IntPtr raw);
+
+               protected override void Unref (IntPtr raw)
+               {
+                       if (Owned) {
+                               gst_sample_unref (raw);
+                               Owned = false;
+                       }
+               }
+
+               class FinalizerInfo {
+                       IntPtr handle;
+
+                       public FinalizerInfo (IntPtr handle)
+                       {
+                               this.handle = handle;
+                       }
+
+                       public bool Handler ()
+                       {
+                               gst_sample_unref (handle);
+                               return false;
+                       }
+               }
+
+               ~Sample ()
+               {
+                       if (!Owned)
+                               return;
+                       FinalizerInfo info = new FinalizerInfo (Handle);
+                       GLib.Timeout.Add (50, new GLib.TimeoutHandler (info.Handler));
+               }
+
 
                // Internal representation of the wrapped structure ABI.
                static GLib.AbiStruct _abi_info = null;
index d2f5f9b..6008650 100644 (file)
@@ -23,6 +23,8 @@ namespace Gst {
                SnapNearest = 96,
                TrickmodeKeyUnits = 128,
                TrickmodeNoAudio = 256,
+               TrickmodeForwardPredicted = 512,
+               InstantRateChange = 1024,
        }
 
        internal class SeekFlagsGType {
index a88af4c..ec5f290 100644 (file)
@@ -18,6 +18,7 @@ namespace Gst {
                Skip = 16,
                TrickmodeKeyUnits = 128,
                TrickmodeNoAudio = 256,
+               TrickmodeForwardPredicted = 512,
        }
 
        internal class SegmentFlagsGType {
index 1bcb47b..869bbf8 100644 (file)
@@ -11,6 +11,7 @@ namespace Gst {
        [GLib.GType (typeof (Gst.StackTraceFlagsGType))]
        public enum StackTraceFlags {
 
+               None = 0,
                Full = 1,
        }
 
index be3495c..77f1efc 100644 (file)
@@ -580,21 +580,20 @@ namespace Gst {
                        return ret;
                }
 
+               public Structure(IntPtr raw) : base(raw) {}
+
                [DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
                static extern IntPtr gst_structure_from_string(IntPtr str1ng, out IntPtr end);
 
-               public static Gst.Structure FromString(string str1ng, out string end) {
+               public Structure (string str1ng, out string end) 
+               {
                        IntPtr native_str1ng = GLib.Marshaller.StringToPtrGStrdup (str1ng);
                        IntPtr native_end;
-                       IntPtr raw_ret = gst_structure_from_string(native_str1ng, out native_end);
-                       Gst.Structure ret = raw_ret == IntPtr.Zero ? null : (Gst.Structure) GLib.Opaque.GetOpaque (raw_ret, typeof (Gst.Structure), true);
+                       Raw = gst_structure_from_string(native_str1ng, out native_end);
                        GLib.Marshaller.Free (native_str1ng);
                        end = GLib.Marshaller.Utf8PtrToString (native_end);
-                       return ret;
                }
 
-               public Structure(IntPtr raw) : base(raw) {}
-
                [DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
                static extern IntPtr gst_structure_new_empty(IntPtr name);
 
index db42883..3a7ecf9 100644 (file)
@@ -483,6 +483,51 @@ namespace Gst {
                        GLib.Marshaller.Free (native_str);
                }
 
+               [DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern IntPtr gst_tag_list_ref(IntPtr raw);
+
+               protected override void Ref (IntPtr raw)
+               {
+                       if (!Owned) {
+                               gst_tag_list_ref (raw);
+                               Owned = true;
+                       }
+               }
+
+               [DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern void gst_tag_list_unref(IntPtr raw);
+
+               protected override void Unref (IntPtr raw)
+               {
+                       if (Owned) {
+                               gst_tag_list_unref (raw);
+                               Owned = false;
+                       }
+               }
+
+               class FinalizerInfo {
+                       IntPtr handle;
+
+                       public FinalizerInfo (IntPtr handle)
+                       {
+                               this.handle = handle;
+                       }
+
+                       public bool Handler ()
+                       {
+                               gst_tag_list_unref (handle);
+                               return false;
+                       }
+               }
+
+               ~TagList ()
+               {
+                       if (!Owned)
+                               return;
+                       FinalizerInfo info = new FinalizerInfo (Handle);
+                       GLib.Timeout.Add (50, new GLib.TimeoutHandler (info.Handler));
+               }
+
 
                // Internal representation of the wrapped structure ABI.
                static GLib.AbiStruct _abi_info = null;
index 638e242..f8cbed0 100644 (file)
@@ -177,6 +177,15 @@ namespace Gst {
                }
 
                [DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern bool gst_task_resume(IntPtr raw);
+
+               public bool Resume() {
+                       bool raw_ret = gst_task_resume(Handle);
+                       bool ret = raw_ret;
+                       return ret;
+               }
+
+               [DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
                static extern void gst_task_set_enter_callback(IntPtr raw, GstSharp.TaskThreadFuncNative enter_func, IntPtr user_data, GLib.DestroyNotify notify);
 
                public Gst.TaskThreadFunc EnterCallback { 
index 3c7dc66..d36dd43 100644 (file)
@@ -68,6 +68,21 @@ namespace Gst {
                        }
                }
 
+               [DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern bool gst_tracer_register(IntPtr plugin, IntPtr name, IntPtr type);
+
+               public static bool Register(Gst.Plugin plugin, string name, GLib.GType type) {
+                       IntPtr native_name = GLib.Marshaller.StringToPtrGStrdup (name);
+                       bool raw_ret = gst_tracer_register(plugin == null ? IntPtr.Zero : plugin.Handle, native_name, type.Val);
+                       bool ret = raw_ret;
+                       GLib.Marshaller.Free (native_name);
+                       return ret;
+               }
+
+               public static bool Register(string name, GLib.GType type) {
+                       return Register (null, name, type);
+               }
+
 
                // Internal representation of the wrapped structure ABI.
                static GLib.AbiStruct _abi_info = null;
index 18dc149..f210e76 100644 (file)
@@ -67,6 +67,17 @@ namespace Gst {
                }
 
                [DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern IntPtr gst_value_array_init(IntPtr value, uint prealloc);
+
+               public static GLib.Value Init(GLib.Value value, uint prealloc) {
+                       IntPtr native_value = GLib.Marshaller.StructureToPtrAlloc (value);
+                       IntPtr raw_ret = gst_value_array_init(native_value, prealloc);
+                       GLib.Value ret = (GLib.Value) Marshal.PtrToStructure (raw_ret, typeof (GLib.Value));
+                       Marshal.FreeHGlobal (native_value);
+                       return ret;
+               }
+
+               [DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
                static extern void gst_value_array_prepend_value(IntPtr value, IntPtr prepend_value);
 
                public static void PrependValue(GLib.Value value, GLib.Value prepend_value) {
index 68f0a55..d586e96 100644 (file)
@@ -83,6 +83,17 @@ namespace Gst {
                }
 
                [DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
+               static extern IntPtr gst_value_list_init(IntPtr value, uint prealloc);
+
+               public static GLib.Value Init(GLib.Value value, uint prealloc) {
+                       IntPtr native_value = GLib.Marshaller.StructureToPtrAlloc (value);
+                       IntPtr raw_ret = gst_value_list_init(native_value, prealloc);
+                       GLib.Value ret = (GLib.Value) Marshal.PtrToStructure (raw_ret, typeof (GLib.Value));
+                       Marshal.FreeHGlobal (native_value);
+                       return ret;
+               }
+
+               [DllImport("gstreamer-1.0-0.dll", CallingConvention = CallingConvention.Cdecl)]
                static extern void gst_value_list_merge(IntPtr dest, IntPtr value1, IntPtr value2);
 
                public static GLib.Value Merge(GLib.Value value1, GLib.Value value2) {
index 377ec31..beada7d 100644 (file)
@@ -73,6 +73,7 @@ namespace GtkSharp.GstreamerSharp {
                        GLib.GType.Register (Gst.Video.VideoFilter.GType, typeof (Gst.Video.VideoFilter));
                        GLib.GType.Register (Gst.Video.VideoSink.GType, typeof (Gst.Video.VideoSink));
                        GLib.GType.Register (Gst.WebRTC.WebRTCDTLSTransport.GType, typeof (Gst.WebRTC.WebRTCDTLSTransport));
+                       GLib.GType.Register (Gst.WebRTC.WebRTCDataChannel.GType, typeof (Gst.WebRTC.WebRTCDataChannel));
                        GLib.GType.Register (Gst.WebRTC.WebRTCICETransport.GType, typeof (Gst.WebRTC.WebRTCICETransport));
                        GLib.GType.Register (Gst.WebRTC.WebRTCRTPReceiver.GType, typeof (Gst.WebRTC.WebRTCRTPReceiver));
                        GLib.GType.Register (Gst.WebRTC.WebRTCRTPSender.GType, typeof (Gst.WebRTC.WebRTCRTPSender));
index ece780f..93df32b 100644 (file)
@@ -496,6 +496,10 @@ int main (int argc, char *argv[]) {
        g_print("\"GstAudioSinkClass.write\": \"%" G_GUINT64_FORMAT "\"\n", (guint64) G_STRUCT_OFFSET(GstAudioSinkClass, write));
        g_print("\"GstAudioSinkClass.delay\": \"%" G_GUINT64_FORMAT "\"\n", (guint64) G_STRUCT_OFFSET(GstAudioSinkClass, delay));
        g_print("\"GstAudioSinkClass.reset\": \"%" G_GUINT64_FORMAT "\"\n", (guint64) G_STRUCT_OFFSET(GstAudioSinkClass, reset));
+       g_print("\"GstAudioSinkClass.pause\": \"%" G_GUINT64_FORMAT "\"\n", (guint64) G_STRUCT_OFFSET(GstAudioSinkClass, pause));
+       g_print("\"GstAudioSinkClass.resume\": \"%" G_GUINT64_FORMAT "\"\n", (guint64) G_STRUCT_OFFSET(GstAudioSinkClass, resume));
+       g_print("\"GstAudioSinkClass.stop\": \"%" G_GUINT64_FORMAT "\"\n", (guint64) G_STRUCT_OFFSET(GstAudioSinkClass, stop));
+       g_print("\"GstAudioSinkClass.extension\": \"%" G_GUINT64_FORMAT "\"\n", (guint64) G_STRUCT_OFFSET(GstAudioSinkClass, extension));
        g_print("\"sizeof(GstAudioSink)\": \"%" G_GUINT64_FORMAT "\"\n", (guint64) sizeof(GstAudioSink));
        g_print("\"GstAudioSink.thread\": \"%" G_GUINT64_FORMAT "\"\n", (guint64) G_STRUCT_OFFSET(GstAudioSink, thread));
        g_print("\"sizeof(GstAudioSrcClass)\": \"%" G_GUINT64_FORMAT "\"\n", (guint64) sizeof(GstAudioSrcClass));
@@ -544,6 +548,9 @@ int main (int argc, char *argv[]) {
        g_print("\"GstAggregatorClass.negotiated_src_caps\": \"%" G_GUINT64_FORMAT "\"\n", (guint64) G_STRUCT_OFFSET(GstAggregatorClass, negotiated_src_caps));
        g_print("\"GstAggregatorClass.decide_allocation\": \"%" G_GUINT64_FORMAT "\"\n", (guint64) G_STRUCT_OFFSET(GstAggregatorClass, decide_allocation));
        g_print("\"GstAggregatorClass.propose_allocation\": \"%" G_GUINT64_FORMAT "\"\n", (guint64) G_STRUCT_OFFSET(GstAggregatorClass, propose_allocation));
+       g_print("\"GstAggregatorClass.negotiate\": \"%" G_GUINT64_FORMAT "\"\n", (guint64) G_STRUCT_OFFSET(GstAggregatorClass, negotiate));
+       g_print("\"GstAggregatorClass.sink_event_pre_queue\": \"%" G_GUINT64_FORMAT "\"\n", (guint64) G_STRUCT_OFFSET(GstAggregatorClass, sink_event_pre_queue));
+       g_print("\"GstAggregatorClass.sink_query_pre_queue\": \"%" G_GUINT64_FORMAT "\"\n", (guint64) G_STRUCT_OFFSET(GstAggregatorClass, sink_query_pre_queue));
        g_print("\"sizeof(GstAggregator)\": \"%" G_GUINT64_FORMAT "\"\n", (guint64) sizeof(GstAggregator));
        g_print("\"GstAggregator.srcpad\": \"%" G_GUINT64_FORMAT "\"\n", (guint64) G_STRUCT_OFFSET(GstAggregator, srcpad));
        g_print("\"GstAggregator.priv\": \"%" G_GUINT64_FORMAT "\"\n", (guint64) G_STRUCT_OFFSET(GstAggregator, priv));
@@ -723,6 +730,10 @@ int main (int argc, char *argv[]) {
        g_print("\"sizeof(GstLFOControlSource)\": \"%" G_GUINT64_FORMAT "\"\n", (guint64) sizeof(GstLFOControlSource));
        g_print("\"GstLFOControlSource.priv\": \"%" G_GUINT64_FORMAT "\"\n", (guint64) G_STRUCT_OFFSET(GstLFOControlSource, priv));
        g_print("\"GstLFOControlSource.lock\": \"%" G_GUINT64_FORMAT "\"\n", (guint64) G_STRUCT_OFFSET(GstLFOControlSource, lock));
+       g_print("\"sizeof(GstProxyControlBindingClass)\": \"%" G_GUINT64_FORMAT "\"\n", (guint64) sizeof(GstProxyControlBindingClass));
+       g_print("\"sizeof(GstProxyControlBinding)\": \"%" G_GUINT64_FORMAT "\"\n", (guint64) sizeof(GstProxyControlBinding));
+       g_print("\"GstProxyControlBinding.ref_object\": \"%" G_GUINT64_FORMAT "\"\n", (guint64) G_STRUCT_OFFSET(GstProxyControlBinding, ref_object));
+       g_print("\"GstProxyControlBinding.property_name\": \"%" G_GUINT64_FORMAT "\"\n", (guint64) G_STRUCT_OFFSET(GstProxyControlBinding, property_name));
        g_print("\"sizeof(GstTimedValueControlSourceClass)\": \"%" G_GUINT64_FORMAT "\"\n", (guint64) sizeof(GstTimedValueControlSourceClass));
        g_print("\"sizeof(GstTimedValueControlSource)\": \"%" G_GUINT64_FORMAT "\"\n", (guint64) sizeof(GstTimedValueControlSource));
        g_print("\"GstTimedValueControlSource.lock\": \"%" G_GUINT64_FORMAT "\"\n", (guint64) G_STRUCT_OFFSET(GstTimedValueControlSource, lock));
@@ -973,6 +984,23 @@ int main (int argc, char *argv[]) {
        g_print("\"GstWebRTCDTLSTransport.session_id\": \"%" G_GUINT64_FORMAT "\"\n", (guint64) G_STRUCT_OFFSET(GstWebRTCDTLSTransport, session_id));
        g_print("\"GstWebRTCDTLSTransport.dtlssrtpenc\": \"%" G_GUINT64_FORMAT "\"\n", (guint64) G_STRUCT_OFFSET(GstWebRTCDTLSTransport, dtlssrtpenc));
        g_print("\"GstWebRTCDTLSTransport.dtlssrtpdec\": \"%" G_GUINT64_FORMAT "\"\n", (guint64) G_STRUCT_OFFSET(GstWebRTCDTLSTransport, dtlssrtpdec));
+       g_print("\"sizeof(GstWebRTCDataChannelClass)\": \"%" G_GUINT64_FORMAT "\"\n", (guint64) sizeof(GstWebRTCDataChannelClass));
+       g_print("\"GstWebRTCDataChannelClass.send_data\": \"%" G_GUINT64_FORMAT "\"\n", (guint64) G_STRUCT_OFFSET(GstWebRTCDataChannelClass, send_data));
+       g_print("\"GstWebRTCDataChannelClass.send_string\": \"%" G_GUINT64_FORMAT "\"\n", (guint64) G_STRUCT_OFFSET(GstWebRTCDataChannelClass, send_string));
+       g_print("\"GstWebRTCDataChannelClass.close\": \"%" G_GUINT64_FORMAT "\"\n", (guint64) G_STRUCT_OFFSET(GstWebRTCDataChannelClass, close));
+       g_print("\"sizeof(GstWebRTCDataChannel)\": \"%" G_GUINT64_FORMAT "\"\n", (guint64) sizeof(GstWebRTCDataChannel));
+       g_print("\"GstWebRTCDataChannel.lock\": \"%" G_GUINT64_FORMAT "\"\n", (guint64) G_STRUCT_OFFSET(GstWebRTCDataChannel, lock));
+       g_print("\"GstWebRTCDataChannel.label\": \"%" G_GUINT64_FORMAT "\"\n", (guint64) G_STRUCT_OFFSET(GstWebRTCDataChannel, label));
+       g_print("\"GstWebRTCDataChannel.ordered\": \"%" G_GUINT64_FORMAT "\"\n", (guint64) G_STRUCT_OFFSET(GstWebRTCDataChannel, ordered));
+       g_print("\"GstWebRTCDataChannel.max_packet_lifetime\": \"%" G_GUINT64_FORMAT "\"\n", (guint64) G_STRUCT_OFFSET(GstWebRTCDataChannel, max_packet_lifetime));
+       g_print("\"GstWebRTCDataChannel.max_retransmits\": \"%" G_GUINT64_FORMAT "\"\n", (guint64) G_STRUCT_OFFSET(GstWebRTCDataChannel, max_retransmits));
+       g_print("\"GstWebRTCDataChannel.protocol\": \"%" G_GUINT64_FORMAT "\"\n", (guint64) G_STRUCT_OFFSET(GstWebRTCDataChannel, protocol));
+       g_print("\"GstWebRTCDataChannel.negotiated\": \"%" G_GUINT64_FORMAT "\"\n", (guint64) G_STRUCT_OFFSET(GstWebRTCDataChannel, negotiated));
+       g_print("\"GstWebRTCDataChannel.id\": \"%" G_GUINT64_FORMAT "\"\n", (guint64) G_STRUCT_OFFSET(GstWebRTCDataChannel, id));
+       g_print("\"GstWebRTCDataChannel.priority\": \"%" G_GUINT64_FORMAT "\"\n", (guint64) G_STRUCT_OFFSET(GstWebRTCDataChannel, priority));
+       g_print("\"GstWebRTCDataChannel.ready_state\": \"%" G_GUINT64_FORMAT "\"\n", (guint64) G_STRUCT_OFFSET(GstWebRTCDataChannel, ready_state));
+       g_print("\"GstWebRTCDataChannel.buffered_amount\": \"%" G_GUINT64_FORMAT "\"\n", (guint64) G_STRUCT_OFFSET(GstWebRTCDataChannel, buffered_amount));
+       g_print("\"GstWebRTCDataChannel.buffered_amount_low_threshold\": \"%" G_GUINT64_FORMAT "\"\n", (guint64) G_STRUCT_OFFSET(GstWebRTCDataChannel, buffered_amount_low_threshold));
        g_print("\"sizeof(GstWebRTCICETransportClass)\": \"%" G_GUINT64_FORMAT "\"\n", (guint64) sizeof(GstWebRTCICETransportClass));
        g_print("\"GstWebRTCICETransportClass.gather_candidates\": \"%" G_GUINT64_FORMAT "\"\n", (guint64) G_STRUCT_OFFSET(GstWebRTCICETransportClass, gather_candidates));
        g_print("\"sizeof(GstWebRTCICETransport)\": \"%" G_GUINT64_FORMAT "\"\n", (guint64) sizeof(GstWebRTCICETransport));
index 6c2b73c..b5e2cba 100644 (file)
@@ -490,6 +490,10 @@ namespace AbiTester {
                        Console.WriteLine("\"GstAudioSinkClass.write\": \"" + Gst.Audio.AudioSink.class_abi.GetFieldOffset("write") + "\"");
                        Console.WriteLine("\"GstAudioSinkClass.delay\": \"" + Gst.Audio.AudioSink.class_abi.GetFieldOffset("delay") + "\"");
                        Console.WriteLine("\"GstAudioSinkClass.reset\": \"" + Gst.Audio.AudioSink.class_abi.GetFieldOffset("reset") + "\"");
+                       Console.WriteLine("\"GstAudioSinkClass.pause\": \"" + Gst.Audio.AudioSink.class_abi.GetFieldOffset("pause") + "\"");
+                       Console.WriteLine("\"GstAudioSinkClass.resume\": \"" + Gst.Audio.AudioSink.class_abi.GetFieldOffset("resume") + "\"");
+                       Console.WriteLine("\"GstAudioSinkClass.stop\": \"" + Gst.Audio.AudioSink.class_abi.GetFieldOffset("stop") + "\"");
+                       Console.WriteLine("\"GstAudioSinkClass.extension\": \"" + Gst.Audio.AudioSink.class_abi.GetFieldOffset("extension") + "\"");
                        Console.WriteLine("\"sizeof(GstAudioSink)\": \"" + Gst.Audio.AudioSink.abi_info.Size + "\"");
                        Console.WriteLine("\"GstAudioSink.thread\": \"" + Gst.Audio.AudioSink.abi_info.GetFieldOffset("thread") + "\"");
                        Console.WriteLine("\"sizeof(GstAudioSrcClass)\": \"" + Gst.Audio.AudioSrc.class_abi.Size + "\"");
@@ -538,6 +542,9 @@ namespace AbiTester {
                        Console.WriteLine("\"GstAggregatorClass.negotiated_src_caps\": \"" + Gst.Base.Aggregator.class_abi.GetFieldOffset("negotiated_src_caps") + "\"");
                        Console.WriteLine("\"GstAggregatorClass.decide_allocation\": \"" + Gst.Base.Aggregator.class_abi.GetFieldOffset("decide_allocation") + "\"");
                        Console.WriteLine("\"GstAggregatorClass.propose_allocation\": \"" + Gst.Base.Aggregator.class_abi.GetFieldOffset("propose_allocation") + "\"");
+                       Console.WriteLine("\"GstAggregatorClass.negotiate\": \"" + Gst.Base.Aggregator.class_abi.GetFieldOffset("negotiate") + "\"");
+                       Console.WriteLine("\"GstAggregatorClass.sink_event_pre_queue\": \"" + Gst.Base.Aggregator.class_abi.GetFieldOffset("sink_event_pre_queue") + "\"");
+                       Console.WriteLine("\"GstAggregatorClass.sink_query_pre_queue\": \"" + Gst.Base.Aggregator.class_abi.GetFieldOffset("sink_query_pre_queue") + "\"");
                        Console.WriteLine("\"sizeof(GstAggregator)\": \"" + Gst.Base.Aggregator.abi_info.Size + "\"");
                        Console.WriteLine("\"GstAggregator.srcpad\": \"" + Gst.Base.Aggregator.abi_info.GetFieldOffset("srcpad") + "\"");
                        Console.WriteLine("\"GstAggregator.priv\": \"" + Gst.Base.Aggregator.abi_info.GetFieldOffset("priv") + "\"");
@@ -717,6 +724,10 @@ namespace AbiTester {
                        Console.WriteLine("\"sizeof(GstLFOControlSource)\": \"" + Gst.Controller.LFOControlSource.abi_info.Size + "\"");
                        Console.WriteLine("\"GstLFOControlSource.priv\": \"" + Gst.Controller.LFOControlSource.abi_info.GetFieldOffset("priv") + "\"");
                        Console.WriteLine("\"GstLFOControlSource.lock\": \"" + Gst.Controller.LFOControlSource.abi_info.GetFieldOffset("lock") + "\"");
+                       Console.WriteLine("\"sizeof(GstProxyControlBindingClass)\": \"" + Gst.Controller.ProxyControlBinding.class_abi.Size + "\"");
+                       Console.WriteLine("\"sizeof(GstProxyControlBinding)\": \"" + Gst.Controller.ProxyControlBinding.abi_info.Size + "\"");
+                       Console.WriteLine("\"GstProxyControlBinding.ref_object\": \"" + Gst.Controller.ProxyControlBinding.abi_info.GetFieldOffset("ref_object") + "\"");
+                       Console.WriteLine("\"GstProxyControlBinding.property_name\": \"" + Gst.Controller.ProxyControlBinding.abi_info.GetFieldOffset("property_name") + "\"");
                        Console.WriteLine("\"sizeof(GstTimedValueControlSourceClass)\": \"" + Gst.Controller.TimedValueControlSource.class_abi.Size + "\"");
                        Console.WriteLine("\"sizeof(GstTimedValueControlSource)\": \"" + Gst.Controller.TimedValueControlSource.abi_info.Size + "\"");
                        Console.WriteLine("\"GstTimedValueControlSource.lock\": \"" + Gst.Controller.TimedValueControlSource.abi_info.GetFieldOffset("lock") + "\"");
@@ -967,6 +978,23 @@ namespace AbiTester {
                        Console.WriteLine("\"GstWebRTCDTLSTransport.session_id\": \"" + Gst.WebRTC.WebRTCDTLSTransport.abi_info.GetFieldOffset("session_id") + "\"");
                        Console.WriteLine("\"GstWebRTCDTLSTransport.dtlssrtpenc\": \"" + Gst.WebRTC.WebRTCDTLSTransport.abi_info.GetFieldOffset("dtlssrtpenc") + "\"");
                        Console.WriteLine("\"GstWebRTCDTLSTransport.dtlssrtpdec\": \"" + Gst.WebRTC.WebRTCDTLSTransport.abi_info.GetFieldOffset("dtlssrtpdec") + "\"");
+                       Console.WriteLine("\"sizeof(GstWebRTCDataChannelClass)\": \"" + Gst.WebRTC.WebRTCDataChannel.class_abi.Size + "\"");
+                       Console.WriteLine("\"GstWebRTCDataChannelClass.send_data\": \"" + Gst.WebRTC.WebRTCDataChannel.class_abi.GetFieldOffset("send_data") + "\"");
+                       Console.WriteLine("\"GstWebRTCDataChannelClass.send_string\": \"" + Gst.WebRTC.WebRTCDataChannel.class_abi.GetFieldOffset("send_string") + "\"");
+                       Console.WriteLine("\"GstWebRTCDataChannelClass.close\": \"" + Gst.WebRTC.WebRTCDataChannel.class_abi.GetFieldOffset("close") + "\"");
+                       Console.WriteLine("\"sizeof(GstWebRTCDataChannel)\": \"" + Gst.WebRTC.WebRTCDataChannel.abi_info.Size + "\"");
+                       Console.WriteLine("\"GstWebRTCDataChannel.lock\": \"" + Gst.WebRTC.WebRTCDataChannel.abi_info.GetFieldOffset("lock") + "\"");
+                       Console.WriteLine("\"GstWebRTCDataChannel.label\": \"" + Gst.WebRTC.WebRTCDataChannel.abi_info.GetFieldOffset("label") + "\"");
+                       Console.WriteLine("\"GstWebRTCDataChannel.ordered\": \"" + Gst.WebRTC.WebRTCDataChannel.abi_info.GetFieldOffset("ordered") + "\"");
+                       Console.WriteLine("\"GstWebRTCDataChannel.max_packet_lifetime\": \"" + Gst.WebRTC.WebRTCDataChannel.abi_info.GetFieldOffset("max_packet_lifetime") + "\"");
+                       Console.WriteLine("\"GstWebRTCDataChannel.max_retransmits\": \"" + Gst.WebRTC.WebRTCDataChannel.abi_info.GetFieldOffset("max_retransmits") + "\"");
+                       Console.WriteLine("\"GstWebRTCDataChannel.protocol\": \"" + Gst.WebRTC.WebRTCDataChannel.abi_info.GetFieldOffset("protocol") + "\"");
+                       Console.WriteLine("\"GstWebRTCDataChannel.negotiated\": \"" + Gst.WebRTC.WebRTCDataChannel.abi_info.GetFieldOffset("negotiated") + "\"");
+                       Console.WriteLine("\"GstWebRTCDataChannel.id\": \"" + Gst.WebRTC.WebRTCDataChannel.abi_info.GetFieldOffset("id") + "\"");
+                       Console.WriteLine("\"GstWebRTCDataChannel.priority\": \"" + Gst.WebRTC.WebRTCDataChannel.abi_info.GetFieldOffset("priority") + "\"");
+                       Console.WriteLine("\"GstWebRTCDataChannel.ready_state\": \"" + Gst.WebRTC.WebRTCDataChannel.abi_info.GetFieldOffset("ready_state") + "\"");
+                       Console.WriteLine("\"GstWebRTCDataChannel.buffered_amount\": \"" + Gst.WebRTC.WebRTCDataChannel.abi_info.GetFieldOffset("buffered_amount") + "\"");
+                       Console.WriteLine("\"GstWebRTCDataChannel.buffered_amount_low_threshold\": \"" + Gst.WebRTC.WebRTCDataChannel.abi_info.GetFieldOffset("buffered_amount_low_threshold") + "\"");
                        Console.WriteLine("\"sizeof(GstWebRTCICETransportClass)\": \"" + Gst.WebRTC.WebRTCICETransport.class_abi.Size + "\"");
                        Console.WriteLine("\"GstWebRTCICETransportClass.gather_candidates\": \"" + Gst.WebRTC.WebRTCICETransport.class_abi.GetFieldOffset("gather_candidates") + "\"");
                        Console.WriteLine("\"sizeof(GstWebRTCICETransport)\": \"" + Gst.WebRTC.WebRTCICETransport.abi_info.Size + "\"");
index bc0cd66..496ae27 100644 (file)
@@ -34,6 +34,7 @@
       <member cname="GST_CLOCK_TYPE_REALTIME" name="Realtime" value="0" />
       <member cname="GST_CLOCK_TYPE_MONOTONIC" name="Monotonic" value="1" />
       <member cname="GST_CLOCK_TYPE_OTHER" name="Other" value="2" />
+      <member cname="GST_CLOCK_TYPE_TAI" name="Tai" value="3" />
     </enum>
     <enum name="CoreError" cname="GstCoreError" type="enum" gtype="gst_core_error_get_type">
       <member cname="GST_CORE_ERROR_FAILED" name="Failed" value="1" />
@@ -86,6 +87,7 @@
       <member cname="GST_EVENT_PROTECTION" name="Protection" value="33310" />
       <member cname="GST_EVENT_SEGMENT_DONE" name="SegmentDone" value="38406" />
       <member cname="GST_EVENT_GAP" name="Gap" value="40966" />
+      <member cname="GST_EVENT_INSTANT_RATE_CHANGE" name="InstantRateChange" value="46090" />
       <member cname="GST_EVENT_QOS" name="Qos" value="48641" />
       <member cname="GST_EVENT_SEEK" name="Seek" value="51201" />
       <member cname="GST_EVENT_NAVIGATION" name="Navigation" value="53761" />
@@ -94,6 +96,7 @@
       <member cname="GST_EVENT_RECONFIGURE" name="Reconfigure" value="61441" />
       <member cname="GST_EVENT_TOC_SELECT" name="TocSelect" value="64001" />
       <member cname="GST_EVENT_SELECT_STREAMS" name="SelectStreams" value="66561" />
+      <member cname="GST_EVENT_INSTANT_RATE_SYNC_TIME" name="InstantRateSyncTime" value="66817" />
       <member cname="GST_EVENT_CUSTOM_UPSTREAM" name="CustomUpstream" value="69121" />
       <member cname="GST_EVENT_CUSTOM_DOWNSTREAM" name="CustomDownstream" value="71686" />
       <member cname="GST_EVENT_CUSTOM_DOWNSTREAM_OOB" name="CustomDownstreamOob" value="74242" />
       <member cname="GST_MESSAGE_STREAM_COLLECTION" name="StreamCollection" value="2147483652" />
       <member cname="GST_MESSAGE_STREAMS_SELECTED" name="StreamsSelected" value="2147483653" />
       <member cname="GST_MESSAGE_REDIRECT" name="Redirect" value="2147483654" />
-      <member cname="GST_MESSAGE_DEVICE_CHANGED" name="DeviceChanged" value="2147483654" />
+      <member cname="GST_MESSAGE_DEVICE_CHANGED" name="DeviceChanged" value="2147483655" />
+      <member cname="GST_MESSAGE_INSTANT_RATE_REQUEST" name="InstantRateRequest" value="2147483656" />
       <member cname="GST_MESSAGE_ANY" name="Any" value="4294967295" />
     </enum>
     <enum name="MetaFlags" cname="GstMetaFlags" type="flags" gtype="gst_meta_flags_get_type">
       <member cname="GST_PIPELINE_FLAG_FIXED_CLOCK" name="FixedClock" value="524288" />
       <member cname="GST_PIPELINE_FLAG_LAST" name="Last" value="8388608" />
     </enum>
+    <enum name="PluginAPIFlags" cname="GstPluginAPIFlags" type="flags" gtype="gst_plugin_api_flags_get_type" version="1.18">
+      <member cname="GST_PLUGIN_API_FLAG_IGNORE_ENUM_MEMBERS" name="Members" value="1" />
+    </enum>
     <enum name="PluginDependencyFlags" cname="GstPluginDependencyFlags" type="flags" gtype="gst_plugin_dependency_flags_get_type">
       <member cname="GST_PLUGIN_DEPENDENCY_FLAG_NONE" name="None" value="0" />
       <member cname="GST_PLUGIN_DEPENDENCY_FLAG_RECURSE" name="Recurse" value="1" />
       <member cname="GST_SEEK_FLAG_SNAP_NEAREST" name="SnapNearest" value="96" />
       <member cname="GST_SEEK_FLAG_TRICKMODE_KEY_UNITS" name="TrickmodeKeyUnits" value="128" />
       <member cname="GST_SEEK_FLAG_TRICKMODE_NO_AUDIO" name="TrickmodeNoAudio" value="256" />
+      <member cname="GST_SEEK_FLAG_TRICKMODE_FORWARD_PREDICTED" name="TrickmodeForwardPredicted" value="512" />
+      <member cname="GST_SEEK_FLAG_INSTANT_RATE_CHANGE" name="InstantRateChange" value="1024" />
     </enum>
     <enum name="SegmentFlags" cname="GstSegmentFlags" type="flags" gtype="gst_segment_flags_get_type">
       <member cname="GST_SEGMENT_FLAG_NONE" name="None" value="0" />
       <member cname="GST_SEGMENT_FLAG_SKIP" name="Skip" value="16" />
       <member cname="GST_SEGMENT_FLAG_TRICKMODE_KEY_UNITS" name="TrickmodeKeyUnits" value="128" />
       <member cname="GST_SEGMENT_FLAG_TRICKMODE_NO_AUDIO" name="TrickmodeNoAudio" value="256" />
+      <member cname="GST_SEGMENT_FLAG_TRICKMODE_FORWARD_PREDICTED" name="TrickmodeForwardPredicted" value="512" />
     </enum>
     <enum name="StackTraceFlags" cname="GstStackTraceFlags" type="flags" gtype="gst_stack_trace_flags_get_type" version="1.12">
+      <member cname="GST_STACK_TRACE_SHOW_NONE" name="None" value="0" />
       <member cname="GST_STACK_TRACE_SHOW_FULL" name="Full" value="1" />
     </enum>
     <enum name="StreamFlags" cname="GstStreamFlags" type="flags" gtype="gst_stream_flags_get_type" version="1.2">
         <return-type type="GstElementFlags" />
         <parameters />
       </method>
+      <method name="IterateAllByElementFactoryName" cname="gst_bin_iterate_all_by_element_factory_name" version="1.18">
+        <return-type type="GstIterator*" owned="true">
+          <warning>missing glib:type-name</warning>
+        </return-type>
+        <parameters>
+          <parameter name="factory_name" type="const-gchar*" />
+        </parameters>
+      </method>
       <method name="IterateAllByInterface" cname="gst_bin_iterate_all_by_interface">
         <return-type type="GstIterator*" owned="true">
           <warning>missing glib:type-name</warning>
         <return-type type="GType" />
       </method>
       <virtual_method name="CreateElement" cname="create_element" version="1.4">
-        <return-type type="GstElement*" owned="true" />
+        <return-type type="GstElement*" />
         <parameters>
           <parameter allow-none="1" name="name" type="const-gchar*" />
         </parameters>
         </parameters>
       </virtual_method>
       <method name="CreateElement" cname="gst_device_create_element" version="1.4">
-        <return-type type="GstElement*" owned="true" />
+        <return-type type="GstElement*" />
         <parameters>
           <parameter allow-none="1" name="name" type="const-gchar*" />
         </parameters>
         </return-type>
         <parameters />
       </method>
+      <method name="GetCurrentClockTime" cname="gst_element_get_current_clock_time" version="1.18">
+        <return-type type="guint64" />
+        <parameters />
+      </method>
+      <method name="GetCurrentRunningTime" cname="gst_element_get_current_running_time" version="1.18">
+        <return-type type="guint64" />
+        <parameters />
+      </method>
       <method name="GetFactory" cname="gst_element_get_factory">
         <return-type type="GstElementFactory*" />
         <parameters />
           </parameter>
         </parameters>
       </method>
+      <method name="GetSingleInternalLink" cname="gst_pad_get_single_internal_link" version="1.18">
+        <return-type type="GstPad*" owned="true" />
+        <parameters />
+      </method>
       <method name="GetStickyEvent" cname="gst_pad_get_sticky_event">
         <return-type type="GstEvent*" owned="true">
           <warning>missing glib:type-name</warning>
         </return-type>
         <parameters />
       </method>
+      <method name="GetDocumentationCaps" cname="gst_pad_template_get_documentation_caps" version="1.18">
+        <return-type type="GstCaps*" owned="true">
+          <warning>missing glib:type-name</warning>
+        </return-type>
+        <parameters />
+      </method>
       <method name="PadCreated" cname="gst_pad_template_pad_created">
         <return-type type="void" />
         <parameters>
           <parameter name="pad" type="GstPad*" />
         </parameters>
       </method>
+      <method name="SetDocumentationCaps" cname="gst_pad_template_set_documentation_caps" version="1.18">
+        <return-type type="void" />
+        <parameters>
+          <parameter name="caps" type="GstCaps*">
+            <warning>missing glib:type-name</warning>
+          </parameter>
+        </parameters>
+      </method>
       <property name="Caps" cname="caps" type="GstCaps*" readable="true" writeable="true" construct="false" construct-only="true" />
       <property name="Direction" cname="direction" type="GstPadDirection" readable="true" writeable="true" construct="false" construct-only="true" />
       <property name="Gtype" cname="gtype" type="GType" readable="true" writeable="true" construct="false" construct-only="true" version="1.14" />
         <field cname="_gst_reserved" access="public" writeable="true" readable="true" is_callback="false" name="_gstGstReserved" type="gpointer" array="true" array_len="4" padding="true" />
         <struct name="abi" cname="abi" opaque="false" hidden="false">
           <field cname="gtype" access="public" writeable="true" readable="true" is_callback="false" name="Gtype" type="GType" />
+          <field cname="documentation_caps" access="public" writeable="true" readable="true" is_callback="false" name="DocumentationCaps" type="GstCaps*">
+            <warning>missing glib:type-name</warning>
+          </field>
         </struct>
       </union>
       <signal name="PadCreatedEvent" cname="pad-created" when="last" field_name="pad_created">
         <return-type type="gboolean" />
         <parameters />
       </method>
+      <method name="Resume" cname="gst_task_resume" version="1.18">
+        <return-type type="gboolean" />
+        <parameters />
+      </method>
       <method name="SetEnterCallback" cname="gst_task_set_enter_callback">
         <return-type type="void" />
         <parameters>
       </field>
       <field cname="_gst_reserved" access="private" writeable="false" readable="false" is_callback="false" name="_gstGstReserved" type="gpointer" array="true" array_len="4" padding="true" />
     </object>
-    <object name="Tracer" cname="GstTracer" defaultconstructoraccess="protected" opaque="false" hidden="false" parent="GstObject">
+    <object name="Tracer" cname="GstTracer" defaultconstructoraccess="protected" opaque="false" hidden="false" parent="GstObject" version="1.8">
       <class_struct cname="GstTracerClass">
         <field cname="parent_class" access="public" writeable="false" readable="true" is_callback="false" name="ParentClass" type="GstObjectClass">
           <warning>missing glib:type-name</warning>
       <method name="GetType" cname="gst_tracer_get_type" shared="true">
         <return-type type="GType" />
       </method>
+      <method name="Register" cname="gst_tracer_register" shared="true">
+        <return-type type="gboolean" />
+        <parameters>
+          <parameter allow-none="1" name="plugin" type="GstPlugin*" />
+          <parameter name="name" type="const-gchar*" />
+          <parameter name="type" type="GType" />
+        </parameters>
+      </method>
       <property name="Params" cname="params" type="gchar*" readable="true" writeable="true" construct="true" construct-only="false" />
       <field cname="parent" access="public" writeable="false" readable="true" is_callback="false" name="Parent" type="GstObject*" hidden="true" />
       <field cname="priv" access="private" writeable="false" readable="false" is_callback="false" name="Priv" type="GstTracerPrivate*">
         <parameters />
       </method>
     </object>
-    <object name="TracerRecord" cname="GstTracerRecord" opaque="false" hidden="false" parent="GstObject">
+    <object name="TracerRecord" cname="GstTracerRecord" opaque="false" hidden="false" parent="GstObject" version="1.8">
       <class_struct cname="GstTracerRecordClass" />
       <method name="GetType" cname="gst_tracer_record_get_type" shared="true">
         <return-type type="GType" />
           <parameter name="index" type="guint" />
         </parameters>
       </method>
+      <method name="Init" cname="gst_value_array_init" shared="true" version="1.18">
+        <return-type type="GValue*">
+          <warning>missing glib:type-name</warning>
+        </return-type>
+        <parameters>
+          <parameter name="value" type="GValue*">
+            <warning>missing glib:type-name</warning>
+          </parameter>
+          <parameter name="prealloc" type="guint" />
+        </parameters>
+      </method>
       <method name="PrependValue" cname="gst_value_array_prepend_value" shared="true">
         <return-type type="void" />
         <parameters>
           <parameter name="index" type="guint" />
         </parameters>
       </method>
+      <method name="Init" cname="gst_value_list_init" shared="true" version="1.18">
+        <return-type type="GValue*">
+          <warning>missing glib:type-name</warning>
+        </return-type>
+        <parameters>
+          <parameter name="value" type="GValue*">
+            <warning>missing glib:type-name</warning>
+          </parameter>
+          <parameter name="prealloc" type="guint" />
+        </parameters>
+      </method>
       <method name="Merge" cname="gst_value_list_merge" shared="true">
         <return-type type="void" />
         <parameters>
       <method name="GetType" cname="gst_buffer_get_type" shared="true">
         <return-type type="GType" />
       </method>
-      <field cname="mini_object" access="public" writeable="true" readable="true" is_callback="false" name="MiniObject" type="GstMiniObject" hidden="true">
+      <field cname="mini_object" access="public" writeable="true" readable="true" is_callback="false" name="MiniObject" type="GstMiniObject" array_index="3" hidden="true">
         <warning>missing glib:type-name</warning>
       </field>
-      <field cname="pool" access="public" writeable="true" readable="true" is_callback="false" name="Pool" type="GstBufferPool*" array_index="3" />
-      <field cname="pts" access="public" writeable="true" readable="true" is_callback="false" name="Pts" type="guint64" array_index="2" />
-      <field cname="dts" access="public" writeable="true" readable="true" is_callback="false" name="Dts" type="guint64" array_index="1" />
+      <field cname="pool" access="public" writeable="true" readable="true" is_callback="false" name="Pool" type="GstBufferPool*" array_index="2" />
+      <field cname="pts" access="public" writeable="true" readable="true" is_callback="false" name="Pts" type="guint64" array_index="1" />
+      <field cname="dts" access="public" writeable="true" readable="true" is_callback="false" name="Dts" type="guint64" />
       <field cname="duration" access="public" writeable="true" readable="true" is_callback="false" name="Duration" type="guint64" />
       <field cname="offset" access="public" writeable="true" readable="true" is_callback="false" name="Offset" type="guint64" />
       <field cname="offset_end" access="public" writeable="true" readable="true" is_callback="false" name="OffsetEnd" type="guint64" />
           </parameter>
         </parameters>
       </method>
+      <method name="Ref" cname="gst_buffer_ref">
+        <return-type type="GstBuffer*" owned="true">
+          <warning>missing glib:type-name</warning>
+        </return-type>
+        <parameters />
+      </method>
       <method name="RemoveAllMemory" cname="gst_buffer_remove_all_memory">
         <return-type type="void" />
         <parameters />
           </parameter>
         </parameters>
       </method>
+      <method name="Unref" cname="gst_buffer_unref">
+        <return-type type="void" />
+        <parameters />
+      </method>
       <method name="UnsetFlags" cname="gst_buffer_unset_flags" version="1.10">
         <return-type type="gboolean" />
         <parameters>
         <return-type type="guint" />
         <parameters />
       </method>
+      <method name="Ref" cname="gst_buffer_list_ref">
+        <return-type type="GstBufferList*" owned="true">
+          <warning>missing glib:type-name</warning>
+        </return-type>
+        <parameters />
+      </method>
       <method name="Remove" cname="gst_buffer_list_remove">
         <return-type type="void" />
         <parameters>
           <parameter name="length" type="guint" />
         </parameters>
       </method>
+      <method name="Unref" cname="gst_buffer_list_unref">
+        <return-type type="void" />
+        <parameters />
+      </method>
     </boxed>
     <struct name="BufferPoolAcquireParams" cname="GstBufferPoolAcquireParams" opaque="false" hidden="false">
       <field cname="format" access="public" writeable="true" readable="true" is_callback="false" name="Format" type="GstFormat" />
         </return-type>
         <parameters />
       </method>
-      <method name="CopyNth" cname="gst_caps_copy_nth">
+      <method name="CopyNth" cname="gst_caps_copy_nth" version="1.16">
         <return-type type="GstCaps*" owned="true">
           <warning>missing glib:type-name</warning>
         </return-type>
         </return-type>
         <parameters />
       </method>
+      <method name="Ref" cname="gst_caps_ref">
+        <return-type type="GstCaps*" owned="true">
+          <warning>missing glib:type-name</warning>
+        </return-type>
+        <parameters />
+      </method>
       <method name="RemoveStructure" cname="gst_caps_remove_structure">
         <return-type type="void" />
         <parameters>
         </return-type>
         <parameters />
       </method>
+      <method name="Unref" cname="gst_caps_unref">
+        <return-type type="void" />
+        <parameters />
+      </method>
       <method name="FromString" cname="gst_caps_from_string" shared="true">
         <return-type type="GstCaps*" owned="true">
           <warning>missing glib:type-name</warning>
       </method>
       <constructor cname="gst_caps_new_any" disable_void_ctor="" />
     </boxed>
-    <boxed name="CapsFeatures" cname="GstCapsFeatures" opaque="false" hidden="false">
+    <boxed name="CapsFeatures" cname="GstCapsFeatures" opaque="false" hidden="false" version="1.2">
       <method name="GetType" cname="gst_caps_features_get_type" shared="true">
         <return-type type="GType" />
       </method>
       <field cname="_gst_reserved" access="private" writeable="false" readable="false" is_callback="false" name="_gstGstReserved" type="gpointer" array="true" array_len="4" padding="true" />
     </struct>
     <struct name="ClockPrivate" cname="GstClockPrivate" opaque="true" hidden="true" />
-    <boxed name="Context" cname="GstContext" opaque="false" hidden="false">
+    <boxed name="Context" cname="GstContext" opaque="false" hidden="false" version="1.2">
       <method name="GetType" cname="gst_context_get_type" shared="true">
         <return-type type="GType" />
       </method>
           <parameter name="secs" type="gint64" />
         </parameters>
       </constructor>
+      <constructor cname="gst_date_time_new_from_unix_epoch_local_time_usecs" version="1.18">
+        <parameters>
+          <parameter name="usecs" type="gint64" />
+        </parameters>
+      </constructor>
       <constructor cname="gst_date_time_new_from_unix_epoch_utc">
         <parameters>
           <parameter name="secs" type="gint64" />
         </parameters>
       </constructor>
+      <constructor cname="gst_date_time_new_from_unix_epoch_utc_usecs" version="1.18">
+        <parameters>
+          <parameter name="usecs" type="gint64" />
+        </parameters>
+      </constructor>
       <constructor cname="gst_date_time_new_local_time">
         <parameters>
           <parameter name="year" type="gint" />
       <field cname="color" access="private" writeable="false" readable="false" is_callback="false" name="Color" type="guint" />
       <field cname="name" access="private" writeable="false" readable="false" is_callback="false" name="Name" type="gchar*" />
       <field cname="description" access="private" writeable="false" readable="false" is_callback="false" name="Description" type="gchar*" />
-      <method name="Free" cname="gst_debug_category_free">
+      <method name="Free" cname="gst_debug_category_free" deprecated="true">
         <return-type type="void" />
         <parameters />
       </method>
           <parameter name="duration" type="guint64" />
         </parameters>
       </constructor>
+      <constructor cname="gst_event_new_instant_rate_change" version="1.18">
+        <parameters>
+          <parameter name="rate_multiplier" type="gdouble" />
+          <parameter name="new_flags" type="GstSegmentFlags" />
+        </parameters>
+      </constructor>
+      <constructor cname="gst_event_new_instant_rate_sync_time" version="1.18">
+        <parameters>
+          <parameter name="rate_multiplier" type="gdouble" />
+          <parameter name="running_time" type="guint64" />
+          <parameter name="upstream_running_time" type="guint64" />
+        </parameters>
+      </constructor>
       <constructor cname="gst_event_new_latency">
         <parameters>
           <parameter name="latency" type="guint64" />
           <parameter name="name" type="const-gchar*" />
         </parameters>
       </method>
+      <method name="HasNameId" cname="gst_event_has_name_id" version="1.18">
+        <return-type type="gboolean" />
+        <parameters>
+          <parameter name="name" type="guint32" />
+        </parameters>
+      </method>
       <method name="ParseBufferSize" cname="gst_event_parse_buffer_size">
         <return-type type="void" />
         <parameters>
           <parameter name="group_id" type="guint*" owned="true" pass_as="out" />
         </parameters>
       </method>
+      <method name="ParseInstantRateChange" cname="gst_event_parse_instant_rate_change" version="1.18">
+        <return-type type="void" />
+        <parameters>
+          <parameter allow-none="1" name="rate_multiplier" type="gdouble*" owned="true" pass_as="out" />
+          <parameter allow-none="1" name="new_flags" type="GstSegmentFlags" owned="true" pass_as="out" />
+        </parameters>
+      </method>
+      <method name="ParseInstantRateSyncTime" cname="gst_event_parse_instant_rate_sync_time" version="1.18">
+        <return-type type="void" />
+        <parameters>
+          <parameter allow-none="1" name="rate_multiplier" type="gdouble*" owned="true" pass_as="out" />
+          <parameter allow-none="1" name="running_time" type="guint64" owned="true" pass_as="out" />
+          <parameter allow-none="1" name="upstream_running_time" type="guint64" owned="true" pass_as="out" />
+        </parameters>
+      </method>
       <method name="ParseLatency" cname="gst_event_parse_latency">
         <return-type type="void" />
         <parameters>
           <parameter allow-none="1" name="uid" type="gchar*" owned="true" pass_as="out" />
         </parameters>
       </method>
+      <method name="Ref" cname="gst_event_ref">
+        <return-type type="GstEvent*" owned="true">
+          <warning>missing glib:type-name</warning>
+        </return-type>
+        <parameters />
+      </method>
       <method name="SetGroupId" cname="gst_event_set_group_id" version="1.2">
         <return-type type="void" />
         <parameters>
           <parameter name="flags" type="GstStreamFlags" />
         </parameters>
       </method>
+      <method name="Unref" cname="gst_event_unref">
+        <return-type type="void" />
+        <parameters />
+      </method>
       <method name="WritableStructure" cname="gst_event_writable_structure">
         <return-type type="GstStructure*">
           <warning>missing glib:type-name</warning>
         <warning>missing glib:type-name</warning>
       </field>
       <field cname="allocator" access="public" writeable="true" readable="true" is_callback="false" name="Allocator" type="GstAllocator*" />
-      <field cname="parent" access="public" writeable="true" readable="true" is_callback="false" name="Parent" type="GstMemory*">
+      <field cname="parent" access="public" writeable="true" readable="true" is_callback="false" name="Parent" type="GstMemory*" array_index="1">
         <warning>missing glib:type-name</warning>
       </field>
-      <field cname="maxsize" access="public" writeable="true" readable="true" is_callback="false" name="Maxsize" type="gsize" array_index="1" />
+      <field cname="maxsize" access="public" writeable="true" readable="true" is_callback="false" name="Maxsize" type="gsize" />
       <field cname="align" access="public" writeable="true" readable="true" is_callback="false" name="Align" type="gsize" />
       <field cname="offset" access="public" writeable="true" readable="true" is_callback="false" name="Offset" type="gsize" />
       <field cname="size" access="public" writeable="true" readable="true" is_callback="false" name="Size" type="gsize" />
           <parameter name="flags" type="GstMapFlags" />
         </parameters>
       </method>
+      <method name="Ref" cname="gst_memory_ref">
+        <return-type type="GstMemory*" owned="true">
+          <warning>missing glib:type-name</warning>
+        </return-type>
+        <parameters />
+      </method>
       <method name="Resize" cname="gst_memory_resize">
         <return-type type="void" />
         <parameters>
           </parameter>
         </parameters>
       </method>
+      <method name="Unref" cname="gst_memory_unref">
+        <return-type type="void" />
+        <parameters />
+      </method>
     </boxed>
     <boxed name="Message" cname="GstMessage" opaque="true" hidden="false" name_constructors="true" parent="GstMiniObject">
       <method name="GetType" cname="gst_message_get_type" shared="true">
           </parameter>
         </parameters>
       </constructor>
+      <constructor cname="gst_message_new_instant_rate_request" version="1.18">
+        <parameters>
+          <parameter name="src" type="GstObject*" />
+          <parameter name="rate_multiplier" type="gdouble" />
+        </parameters>
+      </constructor>
       <constructor cname="gst_message_new_latency">
         <parameters>
           <parameter name="src" type="GstObject*" />
           </parameter>
         </parameters>
       </method>
+      <method name="ParseInstantRateRequest" cname="gst_message_parse_instant_rate_request" version="1.18">
+        <return-type type="void" />
+        <parameters>
+          <parameter allow-none="1" name="rate_multiplier" type="gdouble*" owned="true" pass_as="out" />
+        </parameters>
+      </method>
       <method name="ParseNewClock" cname="gst_message_parse_new_clock">
         <return-type type="void" />
         <parameters>
           </parameter>
         </parameters>
       </method>
+      <method name="Ref" cname="gst_message_ref">
+        <return-type type="GstMessage*" owned="true">
+          <warning>missing glib:type-name</warning>
+        </return-type>
+        <parameters />
+      </method>
       <method name="SetBufferingStats" cname="gst_message_set_buffering_stats">
         <return-type type="void" />
         <parameters>
           <parameter name="idx" type="guint" />
         </parameters>
       </method>
+      <method name="Unref" cname="gst_message_unref">
+        <return-type type="void" />
+        <parameters />
+      </method>
       <method name="WritableStructure" cname="gst_message_writable_structure" version="1.14">
         <return-type type="GstStructure*">
           <warning>missing glib:type-name</warning>
       <method name="Reply" cname="gst_promise_reply" version="1.14">
         <return-type type="void" />
         <parameters>
-          <parameter name="s" type="GstStructure*" owned="true">
+          <parameter allow-none="1" name="s" type="GstStructure*" owned="true">
             <warning>missing glib:type-name</warning>
           </parameter>
         </parameters>
           <parameter name="permanent" type="gboolean" />
         </parameters>
       </method>
+      <method name="Unref" cname="gst_query_unref">
+        <return-type type="void" />
+        <parameters />
+      </method>
       <method name="WritableStructure" cname="gst_query_writable_structure">
         <return-type type="GstStructure*">
           <warning>missing glib:type-name</warning>
         </return-type>
         <parameters />
       </method>
+      <method name="Ref" cname="gst_sample_ref">
+        <return-type type="GstSample*" owned="true">
+          <warning>missing glib:type-name</warning>
+        </return-type>
+        <parameters />
+      </method>
       <method name="SetBuffer" cname="gst_sample_set_buffer" version="1.16">
         <return-type type="void" />
         <parameters>
           </parameter>
         </parameters>
       </method>
+      <method name="Unref" cname="gst_sample_unref">
+        <return-type type="void" />
+        <parameters />
+      </method>
     </boxed>
     <boxed name="Segment" cname="GstSegment" opaque="false" hidden="false">
       <method name="GetType" cname="gst_segment_get_type" shared="true">
       </method>
       <field cname="type" access="public" writeable="true" readable="true" is_callback="false" name="Type" type="GType" />
       <field cname="name" access="private" writeable="false" readable="false" is_callback="false" name="Name" type="guint32" />
+      <constructor cname="gst_structure_from_string">
+        <parameters>
+          <parameter name="string" type="const-gchar*" />
+          <parameter name="end" type="const-gchar*" pass_as="out" />
+        </parameters>
+      </constructor>
       <constructor cname="gst_structure_new_empty">
         <parameters>
           <parameter name="name" type="const-gchar*" />
           <parameter name="value" type="gint64*" owned="true" pass_as="out" />
         </parameters>
       </method>
-      <method name="GetList" cname="gst_structure_get_list">
+      <method name="GetList" cname="gst_structure_get_list" version="1.12">
         <return-type type="gboolean" />
         <parameters>
           <parameter name="fieldname" type="const-gchar*" />
           <parameter name="fieldname" type="const-gchar*" />
         </parameters>
       </method>
-      <method name="SetArray" cname="gst_structure_set_array">
+      <method name="SetArray" cname="gst_structure_set_array" version="1.12">
         <return-type type="void" />
         <parameters>
           <parameter name="fieldname" type="const-gchar*" />
           </parameter>
         </parameters>
       </method>
-      <method name="SetList" cname="gst_structure_set_list">
+      <method name="SetList" cname="gst_structure_set_list" version="1.12">
         <return-type type="void" />
         <parameters>
           <parameter name="fieldname" type="const-gchar*" />
         <return-type type="gchar*" owned="true" />
         <parameters />
       </method>
-      <method name="FromString" cname="gst_structure_from_string" shared="true">
-        <return-type type="GstStructure*" owned="true">
-          <warning>missing glib:type-name</warning>
-        </return-type>
+      <method name="Take" cname="gst_structure_take" shared="true" version="1.18" hidden="true">
+        <return-type type="gboolean" />
         <parameters>
-          <parameter name="string" type="const-gchar*" />
-          <parameter allow-none="1" name="end" type="const-gchar*" pass_as="out" />
+          <parameter allow-none="1" name="oldstr_ptr" type="GstStructure**" owned="true" pass_as="ref">
+            <warning>missing glib:type-name</warning>
+          </parameter>
+          <parameter allow-none="1" name="newstr" type="GstStructure*" owned="true">
+            <warning>missing glib:type-name</warning>
+          </parameter>
         </parameters>
       </method>
     </boxed>
           <parameter name="value" type="const-gchar*" pass_as="out" />
         </parameters>
       </method>
+      <method name="Ref" cname="gst_tag_list_ref">
+        <return-type type="GstTagList*" owned="true">
+          <warning>missing glib:type-name</warning>
+        </return-type>
+        <parameters />
+      </method>
       <method name="RemoveTag" cname="gst_tag_list_remove_tag">
         <return-type type="void" />
         <parameters>
         <return-type type="gchar*" owned="true" />
         <parameters />
       </method>
+      <method name="Unref" cname="gst_tag_list_unref">
+        <return-type type="void" />
+        <parameters />
+      </method>
       <method name="CopyValue" cname="gst_tag_list_copy_value" shared="true">
         <return-type type="gboolean" />
         <parameters>
           <parameter name="stype" type="GstStreamType" />
         </parameters>
       </method>
-      <method name="StructureFromString" cname="gst_structure_from_string" shared="true">
-        <return-type type="GstStructure*" owned="true">
-          <warning>missing glib:type-name</warning>
-        </return-type>
+      <method name="StructureTake" cname="gst_structure_take" shared="true" version="1.18" hidden="true">
+        <return-type type="gboolean" />
         <parameters>
-          <parameter name="string" type="const-gchar*" />
-          <parameter allow-none="1" name="end" type="const-gchar*" pass_as="out" />
+          <parameter allow-none="1" name="oldstr_ptr" type="GstStructure**" owned="true" pass_as="ref">
+            <warning>missing glib:type-name</warning>
+          </parameter>
+          <parameter allow-none="1" name="newstr" type="GstStructure*" owned="true">
+            <warning>missing glib:type-name</warning>
+          </parameter>
         </parameters>
       </method>
       <method name="TocEntryTypeGetNick" cname="gst_toc_entry_type_get_nick" shared="true">
           <parameter name="type" type="GstTocEntryType" />
         </parameters>
       </method>
+      <method name="TracingGetActiveTracers" cname="gst_tracing_get_active_tracers" shared="true" version="1.18">
+        <return-type type="GList*" element_type="GstTracer*" elements_owned="true" owned="true" />
+      </method>
+      <method name="TracingRegisterHook" cname="gst_tracing_register_hook" shared="true">
+        <return-type type="void" />
+        <parameters>
+          <parameter name="tracer" type="GstTracer*" />
+          <parameter name="detail" type="const-gchar*" />
+          <parameter scope="async" name="func" type="GCallback" />
+        </parameters>
+      </method>
       <method name="TypeFindGetType" cname="gst_type_find_get_type" shared="true">
         <return-type type="GType" />
       </method>
           <parameter scope="async" name="data_notify" type="GDestroyNotify" />
         </parameters>
       </method>
+      <method name="TypeIsPluginApi" cname="gst_type_is_plugin_api" shared="true" version="1.18">
+        <return-type type="gboolean" />
+        <parameters>
+          <parameter name="type" type="GType" />
+          <parameter name="flags" type="GstPluginAPIFlags" owned="true" pass_as="out" />
+        </parameters>
+      </method>
+      <method name="TypeMarkAsPluginApi" cname="gst_type_mark_as_plugin_api" shared="true" version="1.18">
+        <return-type type="void" />
+        <parameters>
+          <parameter name="type" type="GType" />
+          <parameter name="flags" type="GstPluginAPIFlags" />
+        </parameters>
+      </method>
     </object>
     <object name="Constants" cname="GstConstants" opaque="true">
       <constant value="SystemMemory" ctype="gchar*" gtype="gchar*" name="ALLOCATOR_SYSMEM" />
       <constant value="2" ctype="GstElementFactoryListType" gtype="GstElementFactoryListType" name="ELEMENT_FACTORY_TYPE_ENCODER" />
       <constant value="2048" ctype="GstElementFactoryListType" gtype="GstElementFactoryListType" name="ELEMENT_FACTORY_TYPE_ENCRYPTOR" />
       <constant value="512" ctype="GstElementFactoryListType" gtype="GstElementFactoryListType" name="ELEMENT_FACTORY_TYPE_FORMATTER" />
+      <constant value="4096" ctype="GstElementFactoryListType" gtype="GstElementFactoryListType" name="ELEMENT_FACTORY_TYPE_HARDWARE" />
       <constant value="281474976710656" ctype="GstElementFactoryListType" gtype="GstElementFactoryListType" name="ELEMENT_FACTORY_TYPE_MAX_ELEMENTS" />
       <constant value="18446462598732840960" ctype="GstElementFactoryListType" gtype="GstElementFactoryListType" name="ELEMENT_FACTORY_TYPE_MEDIA_ANY" />
       <constant value="1125899906842624" ctype="GstElementFactoryListType" gtype="GstElementFactoryListType" name="ELEMENT_FACTORY_TYPE_MEDIA_AUDIO" />
       <constant value="memory" ctype="gchar*" gtype="gchar*" name="META_TAG_MEMORY_STR" version="1.2" />
       <constant value="1000000" ctype="gint64" gtype="GstClockTimeDiff" name="MSECOND" />
       <constant value="1" ctype="GstClockTimeDiff" gtype="GstClockTimeDiff" name="NSECOND" />
+      <constant value="16384" ctype="gint" gtype="gint" name="PARAM_CONDITIONALLY_AVAILABLE" version="1.18" />
       <constant value="512" ctype="gint" gtype="gint" name="PARAM_CONTROLLABLE" />
+      <constant value="8192" ctype="gint" gtype="gint" name="PARAM_DOC_SHOW_DEFAULT" version="1.18" />
       <constant value="2048" ctype="gint" gtype="gint" name="PARAM_MUTABLE_PAUSED" />
       <constant value="4096" ctype="gint" gtype="gint" name="PARAM_MUTABLE_PLAYING" />
       <constant value="1024" ctype="gint" gtype="gint" name="PARAM_MUTABLE_READY" />
       <constant value="3" ctype="GstQueryTypeFlags" gtype="GstQueryTypeFlags" name="QUERY_TYPE_BOTH" />
       <constant value="1000000000" ctype="gint64" gtype="GstClockTimeDiff" name="SECOND" />
       <constant value="paB" ctype="gchar*" gtype="gchar*" name="SEGMENT_FORMAT" />
+      <constant value="912" ctype="gint" gtype="gint" name="SEGMENT_INSTANT_FLAGS" />
       <constant value="0" ctype="gint" gtype="gint" name="SEQNUM_INVALID" version="1.14" />
       <constant value="c%" ctype="gchar*" gtype="gchar*" name="STIME_FORMAT" version="1.6" />
       <constant value="album" ctype="gchar*" gtype="gchar*" name="TAG_ALBUM" />
           <parameter allow-none="1" name="user_data" type="gpointer" />
         </parameters>
       </method>
+      <method name="DebugLogGetLine" cname="gst_debug_log_get_line" shared="true" version="1.18">
+        <return-type type="gchar*" owned="true" />
+        <parameters>
+          <parameter name="category" type="GstDebugCategory*">
+            <warning>missing glib:type-name</warning>
+          </parameter>
+          <parameter name="level" type="GstDebugLevel" />
+          <parameter name="file" type="const-gchar*" />
+          <parameter name="function" type="const-gchar*" />
+          <parameter name="line" type="gint" />
+          <parameter allow-none="1" name="_object" type="GObject*" />
+          <parameter name="message" type="GstDebugMessage*">
+            <warning>missing glib:type-name</warning>
+          </parameter>
+        </parameters>
+      </method>
       <method name="DebugPrintStackTrace" cname="gst_debug_print_stack_trace" shared="true">
         <return-type type="void" />
       </method>
       <property name="Mute" cname="mute" type="gboolean" readable="true" writeable="true" construct="false" construct-only="false" />
       <property name="Volume" cname="volume" type="gdouble" readable="true" writeable="true" construct="false" construct-only="false" hidden="1" />
     </interface>
-    <object name="AudioAggregator" cname="GstAudioAggregator" defaultconstructoraccess="protected" opaque="false" hidden="true" parent="GstAggregator">
-      <class_struct cname="GstAudioAggregatorClass">
+    <object name="AudioAggregator" cname="GstAudioAggregator" defaultconstructoraccess="protected" opaque="false" hidden="true" parent="GstAggregator" version="1.14">
+      <class_struct cname="GstAudioAggregatorClass" version="1.14">
         <field cname="parent_class" access="public" writeable="false" readable="true" is_callback="false" name="ParentClass" type="GstAggregatorClass">
           <warning>missing glib:type-name</warning>
         </field>
       <property name="AlignmentThreshold" cname="alignment-threshold" type="guint64" readable="true" writeable="true" construct="false" construct-only="false" />
       <property name="DiscontWait" cname="discont-wait" type="guint64" readable="true" writeable="true" construct="false" construct-only="false" />
       <property name="OutputBufferDuration" cname="output-buffer-duration" type="guint64" readable="true" writeable="true" construct="false" construct-only="false" />
+      <property name="OutputBufferDurationFraction" cname="output-buffer-duration-fraction" type="*" readable="true" writeable="true" construct="false" construct-only="false" version="1.18" />
       <field cname="parent" access="public" writeable="false" readable="true" is_callback="false" name="Parent" type="GstAggregator*" hidden="true" />
       <field cname="current_caps" access="public" writeable="false" readable="true" is_callback="false" name="CurrentCaps" type="GstCaps*">
         <warning>missing glib:type-name</warning>
       </field>
       <field cname="_gst_reserved" access="private" writeable="false" readable="false" is_callback="false" name="_gstGstReserved" type="gpointer" array="true" array_len="4" padding="true" />
     </object>
-    <object name="AudioAggregatorConvertPad" cname="GstAudioAggregatorConvertPad" opaque="false" hidden="true" parent="GstAudioAggregatorPad">
-      <class_struct cname="GstAudioAggregatorConvertPadClass">
+    <object name="AudioAggregatorConvertPad" cname="GstAudioAggregatorConvertPad" opaque="false" hidden="true" parent="GstAudioAggregatorPad" version="1.14">
+      <class_struct cname="GstAudioAggregatorConvertPadClass" version="1.14">
         <field cname="parent_class" access="public" writeable="false" readable="true" is_callback="false" name="ParentClass" type="GstAudioAggregatorPadClass">
           <warning>missing glib:type-name</warning>
         </field>
       </field>
       <field cname="_gst_reserved" access="private" writeable="false" readable="false" is_callback="false" name="_gstGstReserved" type="gpointer" array="true" array_len="4" padding="true" />
     </object>
-    <object name="AudioAggregatorPad" cname="GstAudioAggregatorPad" opaque="false" hidden="true" parent="GstAggregatorPad">
-      <class_struct cname="GstAudioAggregatorPadClass">
+    <object name="AudioAggregatorPad" cname="GstAudioAggregatorPad" opaque="false" hidden="true" parent="GstAggregatorPad" version="1.14">
+      <class_struct cname="GstAudioAggregatorPadClass" version="1.14">
         <field cname="parent_class" access="public" writeable="false" readable="true" is_callback="false" name="ParentClass" type="GstAggregatorPadClass">
           <warning>missing glib:type-name</warning>
         </field>
       <method name="FinishFrame" cname="gst_audio_decoder_finish_frame">
         <return-type type="GstFlowReturn" />
         <parameters>
-          <parameter name="buf" type="GstBuffer*">
+          <parameter allow-none="1" name="buf" type="GstBuffer*" owned="true">
             <warning>missing glib:type-name</warning>
           </parameter>
           <parameter name="frames" type="gint" />
       <method name="FinishSubframe" cname="gst_audio_decoder_finish_subframe" version="1.16">
         <return-type type="GstFlowReturn" />
         <parameters>
-          <parameter name="buf" type="GstBuffer*">
+          <parameter allow-none="1" name="buf" type="GstBuffer*" owned="true">
             <warning>missing glib:type-name</warning>
           </parameter>
         </parameters>
       <method name="FinishFrame" cname="gst_audio_encoder_finish_frame">
         <return-type type="GstFlowReturn" />
         <parameters>
-          <parameter name="buffer" type="GstBuffer*">
+          <parameter allow-none="1" name="buffer" type="GstBuffer*" owned="true">
             <warning>missing glib:type-name</warning>
           </parameter>
           <parameter name="samples" type="gint" />
         <method vm="write" />
         <method vm="delay" />
         <method vm="reset" />
-        <field cname="_gst_reserved" access="private" writeable="false" readable="false" is_callback="false" name="_gstGstReserved" type="gpointer" array="true" array_len="4" padding="true" />
+        <method vm="pause" />
+        <method vm="resume" />
+        <method vm="stop" />
+        <field cname="extension" access="public" writeable="false" readable="true" is_callback="false" name="Extension" type="GstAudioSinkClassExtension*">
+          <warning>missing glib:type-name</warning>
+        </field>
       </class_struct>
       <method name="GetType" cname="gst_audio_sink_get_type" shared="true">
         <return-type type="GType" />
         <return-type type="gboolean" />
         <parameters />
       </virtual_method>
+      <virtual_method name="Pause" cname="pause">
+        <return-type type="void" />
+        <parameters />
+      </virtual_method>
       <virtual_method name="Prepare" cname="prepare">
         <return-type type="gboolean" />
         <parameters>
         <return-type type="void" />
         <parameters />
       </virtual_method>
+      <virtual_method name="Resume" cname="resume">
+        <return-type type="void" />
+        <parameters />
+      </virtual_method>
+      <virtual_method name="Stop" cname="stop">
+        <return-type type="void" />
+        <parameters />
+      </virtual_method>
       <virtual_method name="Unprepare" cname="unprepare">
         <return-type type="gboolean" />
         <parameters />
     <struct name="AudioBaseSinkPrivate" cname="GstAudioBaseSinkPrivate" opaque="true" hidden="true" />
     <struct name="AudioBaseSrcPrivate" cname="GstAudioBaseSrcPrivate" opaque="true" hidden="true" />
     <struct name="AudioBuffer" cname="GstAudioBuffer" opaque="false" hidden="false" version="1.16">
-      <field cname="info" access="public" writeable="true" readable="true" is_callback="false" name="Info" type="GstAudioInfo">
+      <field cname="info" access="public" writeable="true" readable="true" is_callback="false" name="Info" type="GstAudioInfo" array_index="4">
         <warning>missing glib:type-name</warning>
       </field>
-      <field cname="n_samples" access="public" writeable="true" readable="true" is_callback="false" name="NSamples" type="gsize" array_index="4" />
+      <field cname="n_samples" access="public" writeable="true" readable="true" is_callback="false" name="NSamples" type="gsize" />
       <field cname="n_planes" access="public" writeable="true" readable="true" is_callback="false" name="NPlanes" type="gint" />
       <field cname="planes" access="public" writeable="true" readable="true" is_callback="false" name="Planes" type="gpointer" />
       <field cname="buffer" access="public" writeable="true" readable="true" is_callback="false" name="Buffer" type="GstBuffer*">
       <field cname="seglatency" access="public" writeable="true" readable="true" is_callback="false" name="Seglatency" type="gint" />
       <field cname="_gst_reserved" access="private" writeable="false" readable="false" is_callback="false" name="_gstGstReserved" type="gpointer" array="true" array_len="4" padding="true" />
     </struct>
+    <struct name="AudioSinkClassExtension" cname="GstAudioSinkClassExtension" opaque="false" hidden="false">
+      <field cname="clear_all" access="public" writeable="false" readable="true" is_callback="true" name="ClearAll" type="GstAudioClearAllFunc" />
+    </struct>
     <boxed name="AudioStreamAlign" cname="GstAudioStreamAlign" opaque="false" hidden="false" version="1.14">
       <method name="GetType" cname="gst_audio_stream_align_get_type" shared="true">
         <return-type type="GType" />
           <parameter name="channel_mask" type="guint64*" owned="true" pass_as="out" />
         </parameters>
       </method>
-      <method name="AudioChannelPositionsToString" cname="gst_audio_channel_positions_to_string" shared="true">
+      <method name="AudioChannelPositionsToString" cname="gst_audio_channel_positions_to_string" shared="true" version="1.10">
         <return-type type="gchar*" owned="true" />
         <parameters>
           <parameter name="position" type="const GstAudioChannelPosition*" array="true" array_length_param_index="1" />
           <parameter name="format" type="GstAudioFormat" />
         </parameters>
       </method>
+      <method name="AudioFormatsRaw" cname="gst_audio_formats_raw" shared="true" version="1.18">
+        <return-type type="const GstAudioFormat*" array="true" array_length_param_index="0" />
+        <parameters>
+          <parameter name="len" type="guint*" owned="true" pass_as="out" />
+        </parameters>
+      </method>
       <method name="AudioGetChannelReorderMap" cname="gst_audio_get_channel_reorder_map" shared="true">
         <return-type type="gboolean" array_index="3" />
         <parameters>
           <parameter name="endianness" type="gint" />
         </parameters>
       </method>
+      <method name="AudioMakeRawCaps" cname="gst_audio_make_raw_caps" shared="true" version="1.18">
+        <return-type type="GstCaps*" owned="true">
+          <warning>missing glib:type-name</warning>
+        </return-type>
+        <parameters>
+          <parameter allow-none="1" name="formats" type="const GstAudioFormat*" array="true" array_length_param_index="1" />
+          <parameter name="len" type="guint" />
+          <parameter name="layout" type="GstAudioLayout" />
+        </parameters>
+      </method>
       <method name="AudioMetaApiGetType" cname="gst_audio_meta_api_get_type" shared="true">
         <return-type type="GType" />
       </method>
       <constant value="44100" ctype="gint" gtype="gint" name="AUDIO_DEF_RATE" />
       <constant value="sink" ctype="gchar*" gtype="gchar*" name="AUDIO_ENCODER_SINK_NAME" />
       <constant value="src" ctype="gchar*" gtype="gchar*" name="AUDIO_ENCODER_SRC_NAME" />
-      <constant value=" { S8, U8, S16LE, S16BE, U16LE, U16BE, S24_32LE, S24_32BE, U24_32LE, U24_32BE, S32LE, S32BE, U32LE, U32BE, S24LE, S24BE, U24LE, U24BE, S20LE, S20BE, U20LE, U20BE, S18LE, S18BE, U18LE, U18BE, F32LE, F32BE, F64LE, F64BE }" ctype="gchar*" gtype="gchar*" name="AUDIO_FORMATS_ALL" />
+      <constant value="{ F64BE, F64LE, F32BE, F32LE, S32BE, S32LE, U32BE, U32LE, S24_32BE, S24_32LE, U24_32BE, U24_32LE, S24BE, S24LE, U24BE, U24LE, S20BE, S20LE, U20BE, U20LE, S18BE, S18LE, U18BE, U18LE, S16BE, S16LE, U16BE, U16LE, S8, U8 }" ctype="gchar*" gtype="gchar*" name="AUDIO_FORMATS_ALL" />
       <constant value="(int) [ 1, max ]" ctype="gchar*" gtype="gchar*" name="AUDIO_RATE_RANGE" />
       <constant value="GstAudioResampler.cubic-b" ctype="gchar*" gtype="gchar*" name="AUDIO_RESAMPLER_OPT_CUBIC_B" />
       <constant value="GstAudioResampler.cubic-c" ctype="gchar*" gtype="gchar*" name="AUDIO_RESAMPLER_OPT_CUBIC_C" />
     </object>
   </namespace>
   <namespace name="Gst.Base" library="gstbase-1.0-0.dll">
+    <enum name="AggregatorStartTimeSelection" cname="GstAggregatorStartTimeSelection" type="enum" gtype="gst_aggregator_start_time_selection_get_type" version="1.14">
+      <member cname="GST_AGGREGATOR_START_TIME_SELECTION_ZERO" name="Zero" value="0" />
+      <member cname="GST_AGGREGATOR_START_TIME_SELECTION_FIRST" name="First" value="1" />
+      <member cname="GST_AGGREGATOR_START_TIME_SELECTION_SET" name="Set" value="2" />
+    </enum>
     <enum name="BaseParseFrameFlags" cname="GstBaseParseFrameFlags" type="flags">
       <member cname="GST_BASE_PARSE_FRAME_FLAG_NONE" name="None" value="0" />
       <member cname="GST_BASE_PARSE_FRAME_FLAG_NEW_FRAME" name="NewFrame" value="1" />
         <parameters />
       </method>
     </object>
-    <object name="Aggregator" cname="GstAggregator" defaultconstructoraccess="protected" opaque="false" hidden="false" parent="GstElement">
-      <class_struct cname="GstAggregatorClass">
+    <object name="Aggregator" cname="GstAggregator" defaultconstructoraccess="protected" opaque="false" hidden="false" parent="GstElement" version="1.14">
+      <class_struct cname="GstAggregatorClass" version="1.14">
         <field cname="parent_class" access="public" writeable="false" readable="true" is_callback="false" name="ParentClass" type="GstElementClass">
           <warning>missing glib:type-name</warning>
         </field>
         <method vm="negotiated_src_caps" />
         <method vm="decide_allocation" />
         <method vm="propose_allocation" />
-        <field cname="_gst_reserved" access="private" writeable="false" readable="false" is_callback="false" name="_gstGstReserved" type="gpointer" array="true" array_len="20" padding="true" />
+        <method vm="negotiate" />
+        <method vm="sink_event_pre_queue" />
+        <method vm="sink_query_pre_queue" />
+        <field cname="_gst_reserved" access="private" writeable="false" readable="false" is_callback="false" name="_gstGstReserved" type="gpointer" array="true" array_len="17" padding="true" />
       </class_struct>
       <method name="GetType" cname="gst_aggregator_get_type" shared="true">
         <return-type type="GType" />
         <return-type type="guint64" />
         <parameters />
       </virtual_method>
+      <virtual_method name="Negotiate" cname="negotiate" version="1.18">
+        <return-type type="gboolean" />
+        <parameters />
+      </virtual_method>
       <virtual_method name="NegotiatedSrcCaps" cname="negotiated_src_caps">
         <return-type type="gboolean" />
         <parameters>
           </parameter>
         </parameters>
       </virtual_method>
+      <virtual_method name="SinkEventPreQueue" cname="sink_event_pre_queue">
+        <return-type type="GstFlowReturn" />
+        <parameters>
+          <parameter name="aggregator_pad" type="GstAggregatorPad*" />
+          <parameter name="event" type="GstEvent*">
+            <warning>missing glib:type-name</warning>
+          </parameter>
+        </parameters>
+      </virtual_method>
       <virtual_method name="SinkQuery" cname="sink_query">
         <return-type type="gboolean" />
         <parameters>
           </parameter>
         </parameters>
       </virtual_method>
+      <virtual_method name="SinkQueryPreQueue" cname="sink_query_pre_queue">
+        <return-type type="gboolean" />
+        <parameters>
+          <parameter name="aggregator_pad" type="GstAggregatorPad*" />
+          <parameter name="query" type="GstQuery*">
+            <warning>missing glib:type-name</warning>
+          </parameter>
+        </parameters>
+      </virtual_method>
       <virtual_method name="SrcActivate" cname="src_activate">
         <return-type type="gboolean" />
         <parameters>
         <return-type type="guint64" />
         <parameters />
       </method>
+      <method name="Negotiate" cname="gst_aggregator_negotiate" version="1.18">
+        <return-type type="gboolean" />
+        <parameters />
+      </method>
       <method name="SetLatency" cname="gst_aggregator_set_latency">
         <return-type type="void" />
         <parameters>
         <return-type type="guint64" />
         <parameters />
       </method>
+      <method name="UpdateSegment" cname="gst_aggregator_update_segment" version="1.18">
+        <return-type type="void" />
+        <parameters>
+          <parameter name="segment" type="GstSegment*">
+            <warning>missing glib:type-name</warning>
+          </parameter>
+        </parameters>
+      </method>
       <property name="Latency" cname="latency" type="guint64" readable="true" writeable="true" construct="false" construct-only="false" />
       <property name="MinUpstreamLatency" cname="min-upstream-latency" type="guint64" readable="true" writeable="true" construct="false" construct-only="false" version="1.16" />
       <property name="StartTime" cname="start-time" type="guint64" readable="true" writeable="true" construct="false" construct-only="false" />
+      <property name="StartTimeSelection" cname="start-time-selection" type="GstAggregatorStartTimeSelection" readable="true" writeable="true" construct="false" construct-only="false" />
       <field cname="parent" access="public" writeable="false" readable="true" is_callback="false" name="Parent" type="GstElement*" hidden="true" />
       <field cname="srcpad" access="public" writeable="false" readable="true" is_callback="false" name="Srcpad" type="GstPad*" />
       <field cname="priv" access="private" writeable="false" readable="false" is_callback="false" name="Priv" type="GstAggregatorPrivate*">
       </field>
       <field cname="_gst_reserved" access="private" writeable="false" readable="false" is_callback="false" name="_gstGstReserved" type="gpointer" array="true" array_len="20" padding="true" />
     </object>
-    <object name="AggregatorPad" cname="GstAggregatorPad" opaque="false" hidden="false" parent="GstPad">
-      <class_struct cname="GstAggregatorPadClass">
+    <object name="AggregatorPad" cname="GstAggregatorPad" opaque="false" hidden="false" parent="GstPad" version="1.14">
+      <class_struct cname="GstAggregatorPadClass" version="1.14">
         <field cname="parent_class" access="public" writeable="false" readable="true" is_callback="false" name="ParentClass" type="GstPadClass">
           <warning>missing glib:type-name</warning>
         </field>
         <return-type type="guint64" />
         <parameters />
       </method>
+      <method name="GetStats" cname="gst_base_sink_get_stats" version="1.18">
+        <return-type type="GstStructure*" owned="true">
+          <warning>missing glib:type-name</warning>
+        </return-type>
+        <parameters />
+      </method>
       <method name="GetSync" cname="gst_base_sink_get_sync">
         <return-type type="gboolean" />
         <parameters />
       <property name="ProcessingDeadline" cname="processing-deadline" type="guint64" readable="true" writeable="true" construct="false" construct-only="false" version="1.16" />
       <property name="Qos" cname="qos" type="gboolean" readable="true" writeable="true" construct="false" construct-only="false" />
       <property name="RenderDelay" cname="render-delay" type="guint64" readable="true" writeable="true" construct="false" construct-only="false" />
+      <property name="Stats" cname="stats" type="GstStructure*" readable="true" writeable="false" construct="false" construct-only="false" version="1.18" />
       <property name="Sync" cname="sync" type="gboolean" readable="true" writeable="true" construct="false" construct-only="false" />
       <property name="ThrottleTime" cname="throttle-time" type="guint64" readable="true" writeable="true" construct="false" construct-only="false" />
       <property name="TsOffset" cname="ts-offset" type="gint64" readable="true" writeable="true" construct="false" construct-only="false" />
           <warning>missing glib:type-name</warning>
         </return-type>
         <parameters>
-          <parameter name="filter" type="GstCaps*">
+          <parameter allow-none="1" name="filter" type="GstCaps*">
             <warning>missing glib:type-name</warning>
           </parameter>
         </parameters>
         <return-type type="gboolean" />
         <parameters />
       </virtual_method>
-      <virtual_method name="Negotiate" cname="negotiate">
+      <virtual_method name="Negotiate" cname="negotiate" version="1.18">
         <return-type type="gboolean" />
         <parameters />
       </virtual_method>
         <return-type type="gboolean" />
         <parameters />
       </method>
+      <method name="Negotiate" cname="gst_base_src_negotiate" version="1.18">
+        <return-type type="gboolean" />
+        <parameters />
+      </method>
       <method name="NewSeamlessSegment" cname="gst_base_src_new_seamless_segment">
         <return-type type="gboolean" />
         <parameters>
         <return-type type="gboolean" />
         <parameters />
       </method>
+      <method name="Reconfigure" cname="gst_base_transform_reconfigure" version="1.18">
+        <return-type type="gboolean" />
+        <parameters />
+      </method>
       <method name="ReconfigureSink" cname="gst_base_transform_reconfigure_sink">
         <return-type type="void" />
         <parameters />
         <parameters />
       </method>
     </struct>
-    <struct name="BitWriter" cname="GstBitWriter" opaque="false" hidden="false">
+    <struct name="BitWriter" cname="GstBitWriter" opaque="false" hidden="false" version="1.16">
       <field cname="data" access="public" writeable="true" readable="true" is_callback="false" name="Data" type="guint8" />
       <field cname="bit_size" access="public" writeable="true" readable="true" is_callback="false" name="BitSize" type="guint" />
       <field cname="bit_capacity" access="private" writeable="false" readable="false" is_callback="false" name="BitCapacity" type="guint" />
         </parameters>
       </constructor>
       <field cname="parent" access="private" writeable="false" readable="false" is_callback="false" name="Parent" type="GstControlBinding*" hidden="true" />
-      <field cname="ref_object" access="private" writeable="false" readable="false" is_callback="false" name="RefObject" type="GWeakRef">
+      <field cname="ref_object" access="private" writeable="false" readable="false" is_callback="false" name="RefObject" type="gpointer">
         <warning>missing glib:type-name</warning>
       </field>
       <field cname="property_name" access="private" writeable="false" readable="false" is_callback="false" name="PropertyName" type="gchar*" />
       </field>
       <field cname="_gst_reserved" access="private" writeable="false" readable="false" is_callback="false" name="_gstGstReserved" type="gpointer" array="true" array_len="4" padding="true" />
     </object>
-    <object name="PtpClock" cname="GstPtpClock" opaque="false" hidden="false" parent="GstSystemClock">
+    <object name="PtpClock" cname="GstPtpClock" opaque="false" hidden="false" parent="GstSystemClock" version="1.6">
       <class_struct cname="GstPtpClockClass">
         <field cname="parent_class" access="public" writeable="false" readable="true" is_callback="false" name="ParentClass" type="GstSystemClockClass">
           <warning>missing glib:type-name</warning>
           <parameter name="error" type="GError**" />
         </parameters>
       </method>
+      <method name="NetUtilsSetSocketTos" cname="gst_net_utils_set_socket_tos" shared="true" version="1.18">
+        <return-type type="gboolean" />
+        <parameters>
+          <parameter name="socket" type="GSocket*" />
+          <parameter name="qos_dscp" type="gint" />
+        </parameters>
+      </method>
       <method name="PtpDeinit" cname="gst_ptp_deinit" shared="true" version="1.6">
         <return-type type="void" />
       </method>
           <parameter name="info" type="GstDiscovererInfo*" />
         </parameters>
       </method>
-      <method name="Copy" cname="gst_encoding_profile_copy">
+      <method name="Copy" cname="gst_encoding_profile_copy" version="1.12">
         <return-type type="GstEncodingProfile*" owned="true" />
         <parameters />
       </method>
         </return-type>
         <parameters />
       </method>
+      <method name="GetSingleSegment" cname="gst_encoding_profile_get_single_segment" version="1.18">
+        <return-type type="gboolean" />
+        <parameters />
+      </method>
       <method name="GetTypeNick" cname="gst_encoding_profile_get_type_nick">
         <return-type type="const-gchar*" />
         <parameters />
           <parameter allow-none="1" name="description" type="const-gchar*" />
         </parameters>
       </method>
-      <method name="SetEnabled" cname="gst_encoding_profile_set_enabled">
+      <method name="SetEnabled" cname="gst_encoding_profile_set_enabled" version="1.6">
         <return-type type="void" />
         <parameters>
           <parameter name="enabled" type="gboolean" />
           </parameter>
         </parameters>
       </method>
+      <method name="SetSingleSegment" cname="gst_encoding_profile_set_single_segment" version="1.18">
+        <return-type type="void" />
+        <parameters>
+          <parameter name="single_segment" type="gboolean" />
+        </parameters>
+      </method>
       <property name="RestrictionCaps" cname="restriction-caps" type="GstCaps*" readable="true" writeable="true" construct="false" construct-only="false" />
     </object>
     <object name="EncodingTarget" cname="GstEncodingTarget" opaque="false" hidden="false" parent="GObject">
           <parameter name="len" type="guint" array_index="1" />
         </parameters>
       </method>
-      <method name="CodecUtilsAacGetChannels" cname="gst_codec_utils_aac_get_channels" shared="true">
+      <method name="CodecUtilsAacGetChannels" cname="gst_codec_utils_aac_get_channels" shared="true" version="1.10">
         <return-type type="guint" />
         <parameters>
           <parameter name="audio_config" type="const guint8*" array="true" array_length_param_index="1" />
           <parameter name="len" type="guint" />
         </parameters>
       </method>
-      <method name="CodecUtilsAacGetSampleRate" cname="gst_codec_utils_aac_get_sample_rate" shared="true">
+      <method name="CodecUtilsAacGetSampleRate" cname="gst_codec_utils_aac_get_sample_rate" shared="true" version="1.10">
         <return-type type="guint" />
         <parameters>
           <parameter name="audio_config" type="const guint8*" array="true" array_length_param_index="1" />
           <parameter name="len" type="guint" />
         </parameters>
       </method>
-      <method name="CodecUtilsH265CapsSetLevelTierAndProfile" cname="gst_codec_utils_h265_caps_set_level_tier_and_profile" shared="true">
+      <method name="CodecUtilsH265CapsSetLevelTierAndProfile" cname="gst_codec_utils_h265_caps_set_level_tier_and_profile" shared="true" version="1.4">
         <return-type type="gboolean" />
         <parameters>
           <parameter name="caps" type="GstCaps*">
           <parameter name="len" type="guint" array_index="1" />
         </parameters>
       </method>
-      <method name="CodecUtilsH265GetLevel" cname="gst_codec_utils_h265_get_level" shared="true">
+      <method name="CodecUtilsH265GetLevel" cname="gst_codec_utils_h265_get_level" shared="true" version="1.4">
         <return-type type="const-gchar*" />
         <parameters>
           <parameter name="profile_tier_level" type="const guint8*" array="true" array_length_param_index="1" />
           <parameter name="len" type="guint" />
         </parameters>
       </method>
-      <method name="CodecUtilsH265GetLevelIdc" cname="gst_codec_utils_h265_get_level_idc" shared="true">
+      <method name="CodecUtilsH265GetLevelIdc" cname="gst_codec_utils_h265_get_level_idc" shared="true" version="1.4">
         <return-type type="guint8" />
         <parameters>
           <parameter name="level" type="const-gchar*" />
         </parameters>
       </method>
-      <method name="CodecUtilsH265GetProfile" cname="gst_codec_utils_h265_get_profile" shared="true">
+      <method name="CodecUtilsH265GetProfile" cname="gst_codec_utils_h265_get_profile" shared="true" version="1.4">
         <return-type type="const-gchar*" />
         <parameters>
           <parameter name="profile_tier_level" type="const guint8*" array="true" array_length_param_index="1" />
           <parameter name="len" type="guint" />
         </parameters>
       </method>
-      <method name="CodecUtilsH265GetTier" cname="gst_codec_utils_h265_get_tier" shared="true">
+      <method name="CodecUtilsH265GetTier" cname="gst_codec_utils_h265_get_tier" shared="true" version="1.4">
         <return-type type="const-gchar*" />
         <parameters>
           <parameter name="profile_tier_level" type="const guint8*" array="true" array_length_param_index="1" />
       <member cname="GST_RTCP_PSFB_TYPE_TSTR" name="PsfbTypeTstr" value="5" />
       <member cname="GST_RTCP_PSFB_TYPE_TSTN" name="PsfbTypeTstn" value="6" />
       <member cname="GST_RTCP_PSFB_TYPE_VBCN" name="PsfbTypeVbcn" value="7" />
+      <member cname="GST_RTCP_RTPFB_TYPE_TWCC" name="RtpfbTypeTwcc" value="15" />
       <member cname="GST_RTCP_PSFB_TYPE_AFB" name="PsfbTypeAfb" value="15" />
     </enum>
     <enum name="RTCPSDESType" cname="GstRTCPSDESType" type="enum" gtype="gst_rtcpsdes_type_get_type">
           <parameter name="enable" type="gboolean" />
         </parameters>
       </method>
+      <property name="MaxReorder" cname="max-reorder" type="gint" readable="true" writeable="true" construct="false" construct-only="false" version="1.18" />
       <property name="SourceInfo" cname="source-info" type="gboolean" readable="true" writeable="true" construct="false" construct-only="false" version="1.16" />
       <property name="Stats" cname="stats" type="GstStructure*" readable="true" writeable="false" construct="false" construct-only="false" />
       <field cname="parent" access="public" writeable="false" readable="true" is_callback="false" name="Parent" type="GstElement*" hidden="true" />
       <property name="PerfectRtptime" cname="perfect-rtptime" type="gboolean" readable="true" writeable="true" construct="false" construct-only="false" />
       <property name="Pt" cname="pt" type="guint" readable="true" writeable="true" construct="false" construct-only="false" />
       <property name="PtimeMultiple" cname="ptime-multiple" type="gint64" readable="true" writeable="true" construct="false" construct-only="false" />
+      <property name="ScaleRtptime" cname="scale-rtptime" type="gboolean" readable="true" writeable="true" construct="false" construct-only="false" version="1.18" />
       <property name="Seqnum" cname="seqnum" type="guint" readable="true" writeable="false" construct="false" construct-only="false" />
       <property name="SeqnumOffset" cname="seqnum-offset" type="gint" readable="true" writeable="true" construct="false" construct-only="false" />
       <property name="SourceInfo" cname="source-info" type="gboolean" readable="true" writeable="true" construct="false" construct-only="false" version="1.16" />
       <property name="Stats" cname="stats" type="GstStructure*" readable="true" writeable="false" construct="false" construct-only="false" />
       <property name="Timestamp" cname="timestamp" type="guint" readable="true" writeable="false" construct="false" construct-only="false" />
       <property name="TimestampOffset" cname="timestamp-offset" type="guint" readable="true" writeable="true" construct="false" construct-only="false" />
+      <property name="TwccExtId" cname="twcc-ext-id" type="guint" readable="true" writeable="true" construct="false" construct-only="false" version="1.18" />
       <field cname="element" access="public" writeable="false" readable="true" is_callback="false" name="Element" type="GstElement*" />
       <field cname="sinkpad" access="private" writeable="false" readable="false" is_callback="false" name="Sinkpad" type="GstPad*" />
       <field cname="srcpad" access="private" writeable="false" readable="false" is_callback="false" name="Srcpad" type="GstPad*" />
       </method>
     </struct>
     <struct name="RTCPPacket" cname="GstRTCPPacket" opaque="false" hidden="false">
-      <field cname="rtcp" access="public" writeable="true" readable="true" is_callback="false" name="Rtcp" type="GstRTCPBuffer*" array_index="6">
+      <field cname="rtcp" access="public" writeable="true" readable="true" is_callback="false" name="Rtcp" type="GstRTCPBuffer*">
         <warning>missing glib:type-name</warning>
       </field>
       <field cname="offset" access="public" writeable="true" readable="true" is_callback="false" name="Offset" type="guint" />
     <struct name="RTPBaseDepayloadPrivate" cname="GstRTPBaseDepayloadPrivate" opaque="true" hidden="true" />
     <struct name="RTPBasePayloadPrivate" cname="GstRTPBasePayloadPrivate" opaque="true" hidden="true" />
     <struct name="RTPBuffer" cname="GstRTPBuffer" opaque="false" hidden="false">
-      <field cname="buffer" access="public" writeable="true" readable="true" is_callback="false" name="Buffer" type="GstBuffer*">
+      <field cname="buffer" access="public" writeable="true" readable="true" is_callback="false" name="Buffer" type="GstBuffer*" array_index="1">
         <warning>missing glib:type-name</warning>
       </field>
-      <field cname="state" access="public" writeable="true" readable="true" is_callback="false" name="State" type="guint" array_index="1" />
-      <field cname="data" access="public" writeable="true" readable="true" is_callback="false" name="Data" type="gpointer" array_index="4" array="true" array_len="4" />
-      <field cname="size" access="public" writeable="true" readable="true" is_callback="false" name="Size" type="gsize" array_index="3" array="true" array_len="4" />
+      <field cname="state" access="public" writeable="true" readable="true" is_callback="false" name="State" type="guint" array_index="4" />
+      <field cname="data" access="public" writeable="true" readable="true" is_callback="false" name="Data" type="gpointer" array_index="3" array="true" array_len="4" />
+      <field cname="size" access="public" writeable="true" readable="true" is_callback="false" name="Size" type="gsize" array_index="4" array="true" array_len="4" />
       <field cname="map" access="public" writeable="true" readable="true" is_callback="false" name="MapInfo" type="GstMapInfo" array="true" array_len="4" />
       <method name="AddExtensionOnebyteHeader" cname="gst_rtp_buffer_add_extension_onebyte_header">
         <return-type type="gboolean" />
           <parameter name="timestamp" type="guint32" />
         </parameters>
       </method>
+      <method name="GetExtensionOnebyteHeaderFromBytes" cname="gst_rtp_buffer_get_extension_onebyte_header_from_bytes" shared="true" version="1.18" hidden="true">
+        <return-type type="gboolean" />
+        <parameters>
+          <parameter name="bytes" type="GBytes*">
+            <warning>missing glib:type-name</warning>
+          </parameter>
+          <parameter name="bit_pattern" type="guint16" />
+          <parameter name="id" type="guint8" />
+          <parameter name="nth" type="guint" />
+          <parameter name="data" type="gpointer*" pass_as="out" array="true" array_length_param_index="5" />
+          <parameter name="size" type="guint*" owned="true" pass_as="out" array_index="4" />
+        </parameters>
+      </method>
       <method name="Map" cname="gst_rtp_buffer_map" shared="true">
         <return-type type="gboolean" />
         <parameters>
           <parameter name="timestamp" type="guint32" />
         </parameters>
       </method>
+      <method name="RtpBufferGetExtensionOnebyteHeaderFromBytes" cname="gst_rtp_buffer_get_extension_onebyte_header_from_bytes" shared="true" version="1.18" hidden="true">
+        <return-type type="gboolean" />
+        <parameters>
+          <parameter name="bytes" type="GBytes*">
+            <warning>missing glib:type-name</warning>
+          </parameter>
+          <parameter name="bit_pattern" type="guint16" />
+          <parameter name="id" type="guint8" />
+          <parameter name="nth" type="guint" />
+          <parameter name="data" type="gpointer*" pass_as="out" array="true" array_length_param_index="5" />
+          <parameter name="size" type="guint*" owned="true" pass_as="out" array_index="4" />
+        </parameters>
+      </method>
       <method name="RtpBufferMap" cname="gst_rtp_buffer_map" shared="true">
         <return-type type="gboolean" />
         <parameters>
         <return-type type="GstRTSPResult" />
         <parameters />
       </method>
-      <method name="Connect" cname="gst_rtsp_connection_connect">
+      <method name="Connect" cname="gst_rtsp_connection_connect" deprecated="true" deprecated-version="1.18">
         <return-type type="GstRTSPResult" />
         <parameters>
           <parameter name="timeout" type="GTimeVal*">
           </parameter>
         </parameters>
       </method>
-      <method name="ConnectWithResponse" cname="gst_rtsp_connection_connect_with_response">
+      <method name="ConnectUsec" cname="gst_rtsp_connection_connect_usec" version="1.18">
+        <return-type type="GstRTSPResult" />
+        <parameters>
+          <parameter name="timeout" type="gint64" />
+        </parameters>
+      </method>
+      <method name="ConnectWithResponse" cname="gst_rtsp_connection_connect_with_response" version="1.8" deprecated="true" deprecated-version="1.18">
         <return-type type="GstRTSPResult" />
         <parameters>
           <parameter name="timeout" type="GTimeVal*">
           </parameter>
         </parameters>
       </method>
+      <method name="ConnectWithResponseUsec" cname="gst_rtsp_connection_connect_with_response_usec" version="1.18">
+        <return-type type="GstRTSPResult" />
+        <parameters>
+          <parameter name="timeout" type="gint64" />
+          <parameter name="response" type="GstRTSPMessage*">
+            <warning>missing glib:type-name</warning>
+          </parameter>
+        </parameters>
+      </method>
       <method name="DoTunnel" cname="gst_rtsp_connection_do_tunnel">
         <return-type type="GstRTSPResult" />
         <parameters>
         <return-type type="gboolean" />
         <parameters />
       </method>
-      <method name="NextTimeout" cname="gst_rtsp_connection_next_timeout">
+      <method name="NextTimeout" cname="gst_rtsp_connection_next_timeout" deprecated="true" deprecated-version="1.18">
         <return-type type="GstRTSPResult" />
         <parameters>
           <parameter name="timeout" type="GTimeVal*">
           </parameter>
         </parameters>
       </method>
-      <method name="Poll" cname="gst_rtsp_connection_poll">
+      <method name="NextTimeoutUsec" cname="gst_rtsp_connection_next_timeout_usec" version="1.18">
+        <return-type type="gint64" />
+        <parameters />
+      </method>
+      <method name="Poll" cname="gst_rtsp_connection_poll" deprecated="true" deprecated-version="1.18">
         <return-type type="GstRTSPResult" />
         <parameters>
           <parameter name="events" type="GstRTSPEvent" />
           </parameter>
         </parameters>
       </method>
-      <method name="Read" cname="gst_rtsp_connection_read">
+      <method name="PollUsec" cname="gst_rtsp_connection_poll_usec" version="1.18">
+        <return-type type="GstRTSPResult" />
+        <parameters>
+          <parameter name="events" type="GstRTSPEvent" />
+          <parameter name="revents" type="GstRTSPEvent" />
+          <parameter name="timeout" type="gint64" />
+        </parameters>
+      </method>
+      <method name="Read" cname="gst_rtsp_connection_read" deprecated="true" deprecated-version="1.18">
         <return-type type="GstRTSPResult" />
         <parameters>
           <parameter name="data" type="guint8" />
           </parameter>
         </parameters>
       </method>
-      <method name="Receive" cname="gst_rtsp_connection_receive">
+      <method name="ReadUsec" cname="gst_rtsp_connection_read_usec" version="1.18">
+        <return-type type="GstRTSPResult" />
+        <parameters>
+          <parameter name="data" type="guint8" />
+          <parameter name="size" type="guint" />
+          <parameter name="timeout" type="gint64" />
+        </parameters>
+      </method>
+      <method name="Receive" cname="gst_rtsp_connection_receive" deprecated="true" deprecated-version="1.18">
         <return-type type="GstRTSPResult" />
         <parameters>
           <parameter name="message" type="GstRTSPMessage*">
           </parameter>
         </parameters>
       </method>
+      <method name="ReceiveUsec" cname="gst_rtsp_connection_receive_usec" version="1.18">
+        <return-type type="GstRTSPResult" />
+        <parameters>
+          <parameter name="message" type="GstRTSPMessage*">
+            <warning>missing glib:type-name</warning>
+          </parameter>
+          <parameter name="timeout" type="gint64" />
+        </parameters>
+      </method>
       <method name="ResetTimeout" cname="gst_rtsp_connection_reset_timeout">
         <return-type type="GstRTSPResult" />
         <parameters />
       </method>
-      <method name="Send" cname="gst_rtsp_connection_send">
+      <method name="Send" cname="gst_rtsp_connection_send" deprecated="true" deprecated-version="1.18">
         <return-type type="GstRTSPResult" />
         <parameters>
           <parameter name="message" type="GstRTSPMessage*">
           </parameter>
         </parameters>
       </method>
-      <method name="SendMessages" cname="gst_rtsp_connection_send_messages" version="1.16">
+      <method name="SendMessages" cname="gst_rtsp_connection_send_messages" version="1.16" deprecated="true" deprecated-version="1.18">
         <return-type type="GstRTSPResult" />
         <parameters>
           <parameter name="messages" type="GstRTSPMessage*" array="true" array_length_param_index="1" />
           </parameter>
         </parameters>
       </method>
+      <method name="SendMessagesUsec" cname="gst_rtsp_connection_send_messages_usec" version="1.18">
+        <return-type type="GstRTSPResult" />
+        <parameters>
+          <parameter name="messages" type="GstRTSPMessage*" array="true" array_length_param_index="1" />
+          <parameter name="n_messages" type="guint" />
+          <parameter name="timeout" type="gint64" />
+        </parameters>
+      </method>
+      <method name="SendUsec" cname="gst_rtsp_connection_send_usec" version="1.18">
+        <return-type type="GstRTSPResult" />
+        <parameters>
+          <parameter name="message" type="GstRTSPMessage*">
+            <warning>missing glib:type-name</warning>
+          </parameter>
+          <parameter name="timeout" type="gint64" />
+        </parameters>
+      </method>
       <method name="SetAcceptCertificateFunc" cname="gst_rtsp_connection_set_accept_certificate_func" version="1.14">
         <return-type type="void" />
         <parameters>
           <parameter name="value" type="const-gchar*" />
         </parameters>
       </method>
+      <method name="SetContentLengthLimit" cname="gst_rtsp_connection_set_content_length_limit" version="1.18">
+        <return-type type="void" />
+        <parameters>
+          <parameter name="limit" type="guint" />
+        </parameters>
+      </method>
       <method name="SetHttpMode" cname="gst_rtsp_connection_set_http_mode">
         <return-type type="void" />
         <parameters>
           <parameter name="tunneled" type="gboolean" />
         </parameters>
       </method>
-      <method name="Write" cname="gst_rtsp_connection_write">
+      <method name="Write" cname="gst_rtsp_connection_write" deprecated="true" deprecated-version="1.18">
         <return-type type="GstRTSPResult" />
         <parameters>
           <parameter name="data" type="guint8" />
           </parameter>
         </parameters>
       </method>
+      <method name="WriteUsec" cname="gst_rtsp_connection_write_usec" version="1.18">
+        <return-type type="GstRTSPResult" />
+        <parameters>
+          <parameter name="data" type="guint8" />
+          <parameter name="size" type="guint" />
+          <parameter name="timeout" type="gint64" />
+        </parameters>
+      </method>
       <method name="Accept" cname="gst_rtsp_connection_accept" shared="true">
         <return-type type="GstRTSPResult" />
         <parameters>
         <return-type type="gchar*" owned="true" />
         <parameters />
       </method>
+      <method name="GetRequestUriWithControl" cname="gst_rtsp_url_get_request_uri_with_control" version="1.18">
+        <return-type type="gchar*" owned="true" />
+        <parameters>
+          <parameter name="control_path" type="const-gchar*" />
+        </parameters>
+      </method>
       <method name="SetPort" cname="gst_rtsp_url_set_port">
         <return-type type="GstRTSPResult" />
         <parameters>
         <return-type type="void" />
         <parameters />
       </method>
-      <method name="WaitBacklog" cname="gst_rtsp_watch_wait_backlog" version="1.4">
+      <method name="WaitBacklog" cname="gst_rtsp_watch_wait_backlog" version="1.4" deprecated="true" deprecated-version="1.18">
         <return-type type="GstRTSPResult" />
         <parameters>
           <parameter name="timeout" type="GTimeVal*">
           </parameter>
         </parameters>
       </method>
+      <method name="WaitBacklogUsec" cname="gst_rtsp_watch_wait_backlog_usec" version="1.18">
+        <return-type type="GstRTSPResult" />
+        <parameters>
+          <parameter name="timeout" type="gint64" />
+        </parameters>
+      </method>
       <method name="WriteData" cname="gst_rtsp_watch_write_data">
         <return-type type="GstRTSPResult" />
         <parameters>
       <method name="GetType" cname="gst_mikey_message_get_type" shared="true">
         <return-type type="GType" />
       </method>
-      <field cname="mini_object" access="private" writeable="false" readable="false" is_callback="false" name="MiniObject" type="GstMiniObject" array_index="2" hidden="true">
+      <field cname="mini_object" access="private" writeable="false" readable="false" is_callback="false" name="MiniObject" type="GstMiniObject" hidden="true">
         <warning>missing glib:type-name</warning>
       </field>
       <field cname="version" access="public" writeable="true" readable="true" is_callback="false" name="Version" type="guint8" />
       <method name="GetType" cname="gst_mikey_payload_get_type" shared="true">
         <return-type type="GType" />
       </method>
-      <field cname="mini_object" access="private" writeable="false" readable="false" is_callback="false" name="MiniObject" type="GstMiniObject" array_index="7" hidden="true">
+      <field cname="mini_object" access="private" writeable="false" readable="false" is_callback="false" name="MiniObject" type="GstMiniObject" array_index="3" hidden="true">
         <warning>missing glib:type-name</warning>
       </field>
-      <field cname="type" access="public" writeable="true" readable="true" is_callback="false" name="Type" type="GstMIKEYPayloadType" array_index="3" />
+      <field cname="type" access="public" writeable="true" readable="true" is_callback="false" name="Type" type="GstMIKEYPayloadType" />
       <field cname="len" access="public" writeable="true" readable="true" is_callback="false" name="Len" type="guint" />
       <constructor cname="gst_mikey_payload_new" version="1.4">
         <parameters>
       </method>
     </object>
     <object name="Constants" cname="GstTagConstants" opaque="true">
+      <constant value="chromaprint-fingerprint" ctype="gchar*" gtype="gchar*" name="TAG_ACOUSTID_FINGERPRINT" version="1.18" />
+      <constant value="acoustid-id" ctype="gchar*" gtype="gchar*" name="TAG_ACOUSTID_ID" version="1.18" />
       <constant value="capturing-contrast" ctype="gchar*" gtype="gchar*" name="TAG_CAPTURING_CONTRAST" />
       <constant value="capturing-digital-zoom-ratio" ctype="gchar*" gtype="gchar*" name="TAG_CAPTURING_DIGITAL_ZOOM_RATIO" />
       <constant value="capturing-exposure-compensation" ctype="gchar*" gtype="gchar*" name="TAG_CAPTURING_EXPOSURE_COMPENSATION" />
       <constant value="musicbrainz-albumartistid" ctype="gchar*" gtype="gchar*" name="TAG_MUSICBRAINZ_ALBUMARTISTID" />
       <constant value="musicbrainz-albumid" ctype="gchar*" gtype="gchar*" name="TAG_MUSICBRAINZ_ALBUMID" />
       <constant value="musicbrainz-artistid" ctype="gchar*" gtype="gchar*" name="TAG_MUSICBRAINZ_ARTISTID" />
+      <constant value="musicbrainz-releasegroupid" ctype="gchar*" gtype="gchar*" name="TAG_MUSICBRAINZ_RELEASEGROUPID" version="1.18" />
+      <constant value="musicbrainz-releasetrackid" ctype="gchar*" gtype="gchar*" name="TAG_MUSICBRAINZ_RELEASETRACKID" version="1.18" />
       <constant value="musicbrainz-trackid" ctype="gchar*" gtype="gchar*" name="TAG_MUSICBRAINZ_TRACKID" />
       <constant value="musicbrainz-trmid" ctype="gchar*" gtype="gchar*" name="TAG_MUSICBRAINZ_TRMID" />
     </object>
       <member cname="GST_NAVIGATION_EVENT_MOUSE_BUTTON_RELEASE" name="MouseButtonRelease" value="4" />
       <member cname="GST_NAVIGATION_EVENT_MOUSE_MOVE" name="MouseMove" value="5" />
       <member cname="GST_NAVIGATION_EVENT_COMMAND" name="Command" value="6" />
+      <member cname="GST_NAVIGATION_EVENT_MOUSE_SCROLL" name="MouseScroll" value="7" />
     </enum>
     <enum name="NavigationMessageType" cname="GstNavigationMessageType" type="enum" gtype="gst_navigation_message_type_get_type">
       <member cname="GST_NAVIGATION_MESSAGE_INVALID" name="Invalid" value="0" />
       <member cname="GST_NAVIGATION_QUERY_COMMANDS" name="Commands" value="1" />
       <member cname="GST_NAVIGATION_QUERY_ANGLES" name="Angles" value="2" />
     </enum>
+    <enum name="VideoAFDSpec" cname="GstVideoAFDSpec" type="enum" gtype="gst_video_afd_spec_get_type" version="1.18">
+      <member cname="GST_VIDEO_AFD_SPEC_DVB_ETSI" name="DvbEtsi" value="0" />
+      <member cname="GST_VIDEO_AFD_SPEC_ATSC_A53" name="AtscA53" value="1" />
+      <member cname="GST_VIDEO_AFD_SPEC_SMPTE_ST2016_1" name="SmpteSt20161" value="2" />
+    </enum>
+    <enum name="VideoAFDValue" cname="GstVideoAFDValue" type="enum" gtype="gst_video_afd_value_get_type" version="1.18">
+      <member cname="GST_VIDEO_AFD_UNAVAILABLE" name="Unavailable" value="0" />
+      <member cname="GST_VIDEO_AFD_16_9_TOP_ALIGNED" name="_16169TopAligned" value="2" />
+      <member cname="GST_VIDEO_AFD_14_9_TOP_ALIGNED" name="_14149TopAligned" value="3" />
+      <member cname="GST_VIDEO_AFD_GREATER_THAN_16_9" name="GreaterThan169" value="4" />
+      <member cname="GST_VIDEO_AFD_4_3_FULL_16_9_FULL" name="_443Full169Full" value="8" />
+      <member cname="GST_VIDEO_AFD_4_3_FULL_4_3_PILLAR" name="_443Full43Pillar" value="9" />
+      <member cname="GST_VIDEO_AFD_16_9_LETTER_16_9_FULL" name="_16169Letter169Full" value="10" />
+      <member cname="GST_VIDEO_AFD_14_9_LETTER_14_9_PILLAR" name="_14149Letter149Pillar" value="11" />
+      <member cname="GST_VIDEO_AFD_4_3_FULL_14_9_CENTER" name="_443Full149Center" value="13" />
+      <member cname="GST_VIDEO_AFD_16_9_LETTER_14_9_CENTER" name="_16169Letter149Center" value="14" />
+      <member cname="GST_VIDEO_AFD_16_9_LETTER_4_3_CENTER" name="_16169Letter43Center" value="15" />
+    </enum>
     <enum name="VideoAlphaMode" cname="GstVideoAlphaMode" type="enum" gtype="gst_video_alpha_mode_get_type" version="1.6">
       <member cname="GST_VIDEO_ALPHA_MODE_COPY" name="Copy" value="0" />
       <member cname="GST_VIDEO_ALPHA_MODE_SET" name="Set" value="1" />
       <member cname="GST_VIDEO_ALPHA_MODE_MULT" name="Mult" value="2" />
     </enum>
-    <enum name="VideoAncillaryDID" cname="GstVideoAncillaryDID" type="enum" gtype="gst_video_ancillary_did_get_type">
+    <enum name="VideoAncillaryDID" cname="GstVideoAncillaryDID" type="enum" gtype="gst_video_ancillary_did_get_type" version="1.16">
       <member cname="GST_VIDEO_ANCILLARY_DID_UNDEFINED" name="Undefined" value="0" />
       <member cname="GST_VIDEO_ANCILLARY_DID_DELETION" name="Deletion" value="128" />
       <member cname="GST_VIDEO_ANCILLARY_DID_HANC_3G_AUDIO_DATA_FIRST" name="Hanc3gAudioDataFirst" value="160" />
       <member cname="GST_VIDEO_ANCILLARY_DID_HANC_SDTV_AUDIO_DATA_2_LAST" name="HancSdtvAudioData2Last" value="255" />
     </enum>
     <enum name="VideoAncillaryDID16" cname="GstVideoAncillaryDID16" type="enum" gtype="gst_video_ancillary_di_d16_get_type" version="1.16">
-      <member cname="GST_VIDEO_ANCILLARY_DID16_S334_EIA_708" name="_708" value="24833" />
-      <member cname="GST_VIDEO_ANCILLARY_DID16_S334_EIA_608" name="_608" value="24834" />
+      <member cname="GST_VIDEO_ANCILLARY_DID16_S2016_3_AFD_BAR" name="S20163AfdBar" value="16645" />
+      <member cname="GST_VIDEO_ANCILLARY_DID16_S334_EIA_708" name="S334Eia708" value="24833" />
+      <member cname="GST_VIDEO_ANCILLARY_DID16_S334_EIA_608" name="S334Eia608" value="24834" />
     </enum>
     <enum name="VideoCaptionType" cname="GstVideoCaptionType" type="enum" gtype="gst_video_caption_type_get_type" version="1.16">
       <member cname="GST_VIDEO_CAPTION_TYPE_UNKNOWN" name="Unknown" value="0" />
       <member cname="GST_VIDEO_FORMAT_Y410" name="Y410" value="83" />
       <member cname="GST_VIDEO_FORMAT_VUYA" name="Vuya" value="84" />
       <member cname="GST_VIDEO_FORMAT_BGR10A2_LE" name="Bgr10a2Le" value="85" />
+      <member cname="GST_VIDEO_FORMAT_RGB10A2_LE" name="Rgb10a2Le" value="86" />
+      <member cname="GST_VIDEO_FORMAT_Y444_16BE" name="Y44416be" value="87" />
+      <member cname="GST_VIDEO_FORMAT_Y444_16LE" name="Y44416le" value="88" />
+      <member cname="GST_VIDEO_FORMAT_P016_BE" name="P016Be" value="89" />
+      <member cname="GST_VIDEO_FORMAT_P016_LE" name="P016Le" value="90" />
+      <member cname="GST_VIDEO_FORMAT_P012_BE" name="P012Be" value="91" />
+      <member cname="GST_VIDEO_FORMAT_P012_LE" name="P012Le" value="92" />
+      <member cname="GST_VIDEO_FORMAT_Y212_BE" name="Y212Be" value="93" />
+      <member cname="GST_VIDEO_FORMAT_Y212_LE" name="Y212Le" value="94" />
+      <member cname="GST_VIDEO_FORMAT_Y412_BE" name="Y412Be" value="95" />
+      <member cname="GST_VIDEO_FORMAT_Y412_LE" name="Y412Le" value="96" />
     </enum>
     <enum name="VideoGLTextureOrientation" cname="GstVideoGLTextureOrientation" type="enum">
       <member cname="GST_VIDEO_GL_TEXTURE_ORIENTATION_X_NORMAL_Y_NORMAL" name="NormalYNormal" value="0" />
       <member cname="GST_VIDEO_TRANSFER_LOG316" name="Log316" value="10" />
       <member cname="GST_VIDEO_TRANSFER_BT2020_12" name="Bt202012" value="11" />
       <member cname="GST_VIDEO_TRANSFER_ADOBERGB" name="Adobergb" value="12" />
+      <member cname="GST_VIDEO_TRANSFER_BT2020_10" name="Bt202010" value="13" />
+      <member cname="GST_VIDEO_TRANSFER_SMPTE2084" name="Smpte2084" value="14" />
+      <member cname="GST_VIDEO_TRANSFER_ARIB_STD_B67" name="AribStdB67" value="15" />
     </enum>
     <enum name="VideoVBIParserResult" cname="GstVideoVBIParserResult" type="enum" gtype="gst_video_vbi_parser_result_get_type" version="1.16">
       <member cname="GST_VIDEO_VBI_PARSER_RESULT_DONE" name="Done" value="0" />
       <member cname="GST_VIDEO_VBI_PARSER_RESULT_ERROR" name="Error" value="2" />
     </enum>
     <enum name="VideoBufferFlags" cname="GstVideoBufferFlags" type="flags" gtype="gst_video_buffer_flags_get_type">
+      <member cname="GST_VIDEO_BUFFER_FLAG_MARKER" name="Marker" value="512" />
       <member cname="GST_VIDEO_BUFFER_FLAG_INTERLACED" name="Interlaced" value="1048576" />
       <member cname="GST_VIDEO_BUFFER_FLAG_TFF" name="Tff" value="2097152" />
       <member cname="GST_VIDEO_BUFFER_FLAG_RFF" name="Rff" value="4194304" />
       <member cname="GST_VIDEO_SCALER_FLAG_NONE" name="None" value="0" />
       <member cname="GST_VIDEO_SCALER_FLAG_INTERLACED" name="Interlaced" value="1" />
     </enum>
-    <enum name="VideoTimeCodeFlags" cname="GstVideoTimeCodeFlags" type="flags" version="1.10">
+    <enum name="VideoTimeCodeFlags" cname="GstVideoTimeCodeFlags" type="flags" gtype="gst_video_time_code_flags_get_type" version="1.10">
       <member cname="GST_VIDEO_TIME_CODE_FLAGS_NONE" name="None" value="0" />
       <member cname="GST_VIDEO_TIME_CODE_FLAGS_DROP_FRAME" name="DropFrame" value="1" />
       <member cname="GST_VIDEO_TIME_CODE_FLAGS_INTERLACED" name="Interlaced" value="2" />
           <parameter allow-none="1" name="y" type="gdouble*" owned="true" pass_as="out" />
         </parameters>
       </method>
+      <method name="EventParseMouseScrollEvent" cname="gst_navigation_event_parse_mouse_scroll_event" shared="true" version="1.18">
+        <return-type type="gboolean" />
+        <parameters>
+          <parameter name="event" type="GstEvent*">
+            <warning>missing glib:type-name</warning>
+          </parameter>
+          <parameter allow-none="1" name="x" type="gdouble*" owned="true" pass_as="out" />
+          <parameter allow-none="1" name="y" type="gdouble*" owned="true" pass_as="out" />
+          <parameter allow-none="1" name="delta_x" type="gdouble*" owned="true" pass_as="out" />
+          <parameter allow-none="1" name="delta_y" type="gdouble*" owned="true" pass_as="out" />
+        </parameters>
+      </method>
       <method name="MessageGetType" cname="gst_navigation_message_get_type" shared="true">
         <return-type type="GstNavigationMessageType" />
         <parameters>
           <parameter name="y" type="gdouble" />
         </parameters>
       </method>
+      <method name="SendMouseScrollEvent" cname="gst_navigation_send_mouse_scroll_event" version="1.18">
+        <return-type type="void" />
+        <parameters>
+          <parameter name="x" type="gdouble" />
+          <parameter name="y" type="gdouble" />
+          <parameter name="delta_x" type="gdouble" />
+          <parameter name="delta_y" type="gdouble" />
+        </parameters>
+      </method>
     </interface>
     <interface name="VideoDirection" cname="GstVideoDirection" opaque="false" hidden="false" version="1.10">
       <class_struct cname="GstVideoDirectionInterface" version="1.10">
       <method name="GetType" cname="gst_video_overlay_get_type" shared="true">
         <return-type type="GType" />
       </method>
-      <method name="InstallProperties" cname="gst_video_overlay_install_properties" shared="true" hidden="true">
+      <method name="InstallProperties" cname="gst_video_overlay_install_properties" shared="true" version="1.14" hidden="true">
         <return-type type="void" />
         <parameters>
           <parameter name="oclass" type="GObjectClass*">
           <parameter name="last_prop_id" type="gint" />
         </parameters>
       </method>
-      <method name="SetProperty" cname="gst_video_overlay_set_property" shared="true">
+      <method name="SetProperty" cname="gst_video_overlay_set_property" shared="true" version="1.14">
         <return-type type="gboolean" />
         <parameters>
           <parameter name="_object" type="GObject*" />
         </parameters>
       </signal>
     </object>
-    <object name="VideoAggregator" cname="GstVideoAggregator" defaultconstructoraccess="protected" opaque="false" hidden="false" parent="GstAggregator">
-      <class_struct cname="GstVideoAggregatorClass">
+    <object name="VideoAggregator" cname="GstVideoAggregator" defaultconstructoraccess="protected" opaque="false" hidden="false" parent="GstAggregator" version="1.16">
+      <class_struct cname="GstVideoAggregatorClass" version="1.16">
         <field cname="parent_class" access="private" writeable="false" readable="false" is_callback="false" name="ParentClass" type="GstAggregatorClass">
           <warning>missing glib:type-name</warning>
         </field>
       </field>
       <field cname="_gst_reserved" access="private" writeable="false" readable="false" is_callback="false" name="_gstGstReserved" type="gpointer" array="true" array_len="20" padding="true" />
     </object>
-    <object name="VideoAggregatorConvertPad" cname="GstVideoAggregatorConvertPad" opaque="false" hidden="false" parent="GstVideoAggregatorPad">
-      <class_struct cname="GstVideoAggregatorConvertPadClass">
+    <object name="VideoAggregatorConvertPad" cname="GstVideoAggregatorConvertPad" opaque="false" hidden="false" parent="GstVideoAggregatorPad" version="1.16">
+      <class_struct cname="GstVideoAggregatorConvertPadClass" version="1.16">
         <field cname="parent_class" access="public" writeable="false" readable="true" is_callback="false" name="ParentClass" type="GstVideoAggregatorPadClass">
           <warning>missing glib:type-name</warning>
         </field>
       </field>
       <field cname="_gst_reserved" access="private" writeable="false" readable="false" is_callback="false" name="_gstGstReserved" type="gpointer" array="true" array_len="4" padding="true" />
     </object>
-    <object name="VideoAggregatorPad" cname="GstVideoAggregatorPad" opaque="false" hidden="false" parent="GstAggregatorPad">
-      <class_struct cname="GstVideoAggregatorPadClass">
+    <object name="VideoAggregatorPad" cname="GstVideoAggregatorPad" opaque="false" hidden="false" parent="GstAggregatorPad" version="1.16">
+      <class_struct cname="GstVideoAggregatorPadClass" version="1.16">
         <field cname="parent_class" access="public" writeable="false" readable="true" is_callback="false" name="ParentClass" type="GstAggregatorPadClass">
           <warning>missing glib:type-name</warning>
         </field>
           <parameter name="needs_alpha" type="gboolean" />
         </parameters>
       </method>
+      <property name="MaxLastBufferRepeat" cname="max-last-buffer-repeat" type="guint64" readable="true" writeable="true" construct="false" construct-only="false" />
       <property name="RepeatAfterEos" cname="repeat-after-eos" type="gboolean" readable="true" writeable="true" construct="false" construct-only="false" />
       <property name="Zorder" cname="zorder" type="guint" readable="true" writeable="true" construct="false" construct-only="false" />
       <field cname="parent" access="public" writeable="false" readable="true" is_callback="false" name="Parent" type="GstAggregatorPad*" hidden="true" />
           <parameter name="use" type="gboolean" />
         </parameters>
       </method>
+      <property name="Qos" cname="qos" type="gboolean" readable="true" writeable="true" construct="false" construct-only="false" version="1.18" />
       <field cname="element" access="private" writeable="false" readable="false" is_callback="false" name="Element" type="GstElement*" />
       <field cname="sinkpad" access="private" writeable="false" readable="false" is_callback="false" name="Sinkpad" type="GstPad*" />
       <field cname="srcpad" access="private" writeable="false" readable="false" is_callback="false" name="Srcpad" type="GstPad*" />
           </parameter>
         </parameters>
       </method>
+      <method name="FinishSubframe" cname="gst_video_encoder_finish_subframe" version="1.18">
+        <return-type type="GstFlowReturn" />
+        <parameters>
+          <parameter name="frame" type="GstVideoCodecFrame*">
+            <warning>missing glib:type-name</warning>
+          </parameter>
+        </parameters>
+      </method>
       <method name="GetAllocator" cname="gst_video_encoder_get_allocator">
         <return-type type="void" />
         <parameters>
           </parameter>
         </parameters>
       </method>
+      <method name="GetMinForceKeyUnitInterval" cname="gst_video_encoder_get_min_force_key_unit_interval" version="1.18">
+        <return-type type="guint64" />
+        <parameters />
+      </method>
       <method name="GetOldestFrame" cname="gst_video_encoder_get_oldest_frame">
         <return-type type="GstVideoCodecFrame*" owned="true">
           <warning>missing glib:type-name</warning>
           <parameter name="max_latency" type="guint64" />
         </parameters>
       </method>
-      <method name="SetMinPts" cname="gst_video_encoder_set_min_pts">
+      <method name="SetMinForceKeyUnitInterval" cname="gst_video_encoder_set_min_force_key_unit_interval" version="1.18">
+        <return-type type="void" />
+        <parameters>
+          <parameter name="interval" type="guint64" />
+        </parameters>
+      </method>
+      <method name="SetMinPts" cname="gst_video_encoder_set_min_pts" version="1.6">
         <return-type type="void" />
         <parameters>
           <parameter name="min_pts" type="guint64" />
           <parameter name="enabled" type="gboolean" />
         </parameters>
       </method>
+      <property name="MinForceKeyUnitInterval" cname="min-force-key-unit-interval" type="guint64" readable="true" writeable="true" construct="false" construct-only="false" version="1.18" />
       <property name="Qos" cname="qos" type="gboolean" readable="true" writeable="true" construct="false" construct-only="false" />
       <field cname="element" access="private" writeable="false" readable="false" is_callback="false" name="Element" type="GstElement*" />
       <field cname="sinkpad" access="private" writeable="false" readable="false" is_callback="false" name="Sinkpad" type="GstPad*" />
       </field>
       <field cname="_gst_reserved" access="private" writeable="false" readable="false" is_callback="false" name="_gstGstReserved" type="gpointer" array="true" array_len="4" padding="true" />
     </object>
+    <struct name="VideoAFDMeta" cname="GstVideoAFDMeta" opaque="false" hidden="false" version="1.18">
+      <field cname="meta" access="public" writeable="true" readable="true" is_callback="false" name="Meta" type="GstMeta">
+        <warning>missing glib:type-name</warning>
+      </field>
+      <field cname="field" access="public" writeable="true" readable="true" is_callback="false" name="Field" type="guint8" />
+      <field cname="spec" access="public" writeable="true" readable="true" is_callback="false" name="Spec" type="GstVideoAFDSpec" />
+      <field cname="afd" access="public" writeable="true" readable="true" is_callback="false" name="Afd" type="GstVideoAFDValue" />
+      <method name="GetInfo" cname="gst_video_afd_meta_get_info" shared="true">
+        <return-type type="GstMetaInfo*">
+          <warning>missing glib:type-name</warning>
+        </return-type>
+      </method>
+    </struct>
     <struct name="VideoAffineTransformationMeta" cname="GstVideoAffineTransformationMeta" opaque="false" hidden="false" version="1.8">
       <field cname="meta" access="public" writeable="true" readable="true" is_callback="false" name="Meta" type="GstMeta">
         <warning>missing glib:type-name</warning>
       <method name="ApplyMatrix" cname="gst_video_affine_transformation_meta_apply_matrix" version="1.8">
         <return-type type="void" />
         <parameters>
-          <parameter name="matrix" type="gfloat" />
+          <parameter name="matrix" type="const gfloat*" array="true" array_len="16" />
         </parameters>
       </method>
       <method name="GetInfo" cname="gst_video_affine_transformation_meta_get_info" shared="true">
       <field cname="data" access="public" writeable="true" readable="true" is_callback="false" name="Data" type="guint8" array="true" array_length_param_index="2" />
       <field cname="_gst_reserved" access="private" writeable="false" readable="false" is_callback="false" name="_gstGstReserved" type="gpointer" array="true" array_len="4" padding="true" />
     </struct>
+    <struct name="VideoBarMeta" cname="GstVideoBarMeta" opaque="false" hidden="false" version="1.18">
+      <field cname="meta" access="public" writeable="true" readable="true" is_callback="false" name="Meta" type="GstMeta">
+        <warning>missing glib:type-name</warning>
+      </field>
+      <field cname="field" access="public" writeable="true" readable="true" is_callback="false" name="Field" type="guint8" />
+      <field cname="is_letterbox" access="public" writeable="true" readable="true" is_callback="false" name="IsLetterbox" type="gboolean" />
+      <field cname="bar_data1" access="public" writeable="true" readable="true" is_callback="false" name="BarData1" type="guint" />
+      <field cname="bar_data2" access="public" writeable="true" readable="true" is_callback="false" name="BarData2" type="guint" />
+      <method name="GetInfo" cname="gst_video_bar_meta_get_info" shared="true">
+        <return-type type="GstMetaInfo*">
+          <warning>missing glib:type-name</warning>
+        </return-type>
+      </method>
+    </struct>
     <struct name="VideoBufferPoolPrivate" cname="GstVideoBufferPoolPrivate" opaque="true" hidden="true" />
     <struct name="VideoCaptionMeta" cname="GstVideoCaptionMeta" opaque="false" hidden="false" version="1.16">
       <field cname="meta" access="public" writeable="true" readable="true" is_callback="false" name="Meta" type="GstMeta">
         <struct name="ABI" cname="ABI" opaque="false" hidden="false">
           <field cname="ts" access="public" writeable="true" readable="true" is_callback="false" name="Ts" type="guint64" />
           <field cname="ts2" access="public" writeable="true" readable="true" is_callback="false" name="Ts2" type="guint64" />
+          <field cname="num_subframes" access="public" writeable="true" readable="true" is_callback="false" name="NumSubframes" type="guint" />
         </struct>
         <field cname="padding" access="public" writeable="true" readable="true" is_callback="false" name="Padding" type="gpointer" array="true" array_len="20" />
       </union>
         <parameters />
       </method>
     </struct>
+    <struct name="VideoContentLightLevel" cname="GstVideoContentLightLevel" opaque="false" hidden="false" version="1.18">
+      <field cname="max_content_light_level" access="public" writeable="true" readable="true" is_callback="false" name="MaxContentLightLevel" type="guint16" />
+      <field cname="max_frame_average_light_level" access="public" writeable="true" readable="true" is_callback="false" name="MaxFrameAverageLightLevel" type="guint16" />
+      <field cname="_gst_reserved" access="private" writeable="false" readable="false" is_callback="false" name="_gstGstReserved" type="gpointer" array="true" array_len="4" padding="true" />
+      <method name="AddToCaps" cname="gst_video_content_light_level_add_to_caps" version="1.18">
+        <return-type type="gboolean" />
+        <parameters>
+          <parameter name="caps" type="GstCaps*">
+            <warning>missing glib:type-name</warning>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="FromCaps" cname="gst_video_content_light_level_from_caps" version="1.18">
+        <return-type type="gboolean" />
+        <parameters>
+          <parameter name="caps" type="GstCaps*">
+            <warning>missing glib:type-name</warning>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="FromString" cname="gst_video_content_light_level_from_string" version="1.18">
+        <return-type type="gboolean" />
+        <parameters>
+          <parameter name="level" type="const-gchar*" />
+        </parameters>
+      </method>
+      <method name="Init" cname="gst_video_content_light_level_init" version="1.18">
+        <return-type type="void" />
+        <parameters />
+      </method>
+      <method name="ToString" cname="gst_video_content_light_level_to_string" version="1.18">
+        <return-type type="gchar*" owned="true" />
+        <parameters />
+      </method>
+    </struct>
     <struct name="VideoConverter" cname="GstVideoConverter" opaque="true" hidden="false">
       <method name="Frame" cname="gst_video_converter_frame" version="1.6">
         <return-type type="void" />
       <field cname="tile_ws" access="public" writeable="true" readable="true" is_callback="false" name="TileWs" type="guint" />
       <field cname="tile_hs" access="public" writeable="true" readable="true" is_callback="false" name="TileHs" type="guint" />
       <field cname="_gst_reserved" access="private" writeable="false" readable="false" is_callback="false" name="_gstGstReserved" type="gpointer" array="true" array_len="4" padding="true" />
+      <method name="Component" cname="gst_video_format_info_component" version="1.18">
+        <return-type type="void" />
+        <parameters>
+          <parameter name="plane" type="guint" />
+          <parameter name="components" type="gint*" owned="true" pass_as="out" />
+        </parameters>
+      </method>
     </struct>
     <struct name="VideoFrame" cname="GstVideoFrame" opaque="false" hidden="false">
       <field cname="info" access="public" writeable="true" readable="true" is_callback="false" name="Info" type="GstVideoInfo">
         <parameters />
       </method>
     </struct>
-    <struct name="VideoGLTextureUploadMeta" cname="GstVideoGLTextureUploadMeta" opaque="false" hidden="false" nohash="true" noequals="true">
+    <struct name="VideoGLTextureUploadMeta" cname="GstVideoGLTextureUploadMeta" opaque="false" hidden="false" noequals="true">
       <field cname="meta" access="public" writeable="true" readable="true" is_callback="false" name="Meta" type="GstMeta">
         <warning>missing glib:type-name</warning>
       </field>
           </parameter>
         </parameters>
       </method>
+      <method name="AlignFull" cname="gst_video_info_align_full" version="1.18">
+        <return-type type="gboolean" />
+        <parameters>
+          <parameter name="align" type="GstVideoAlignment*">
+            <warning>missing glib:type-name</warning>
+          </parameter>
+          <parameter allow-none="1" name="plane_size" type="gsize*" owned="true" pass_as="out" />
+        </parameters>
+      </method>
       <method name="Convert" cname="gst_video_info_convert">
         <return-type type="gboolean" />
         <parameters>
         <parameters />
       </method>
     </boxed>
+    <struct name="VideoMasteringDisplayInfo" cname="GstVideoMasteringDisplayInfo" opaque="false" hidden="false" version="1.18">
+      <field cname="display_primaries" access="public" writeable="true" readable="true" is_callback="false" name="DisplayPrimaries" type="GstVideoMasteringDisplayInfoCoordinates" array="true" array_len="3" />
+      <field cname="white_point" access="public" writeable="true" readable="true" is_callback="false" name="WhitePoint" type="GstVideoMasteringDisplayInfoCoordinates">
+        <warning>missing glib:type-name</warning>
+      </field>
+      <field cname="max_display_mastering_luminance" access="public" writeable="true" readable="true" is_callback="false" name="MaxDisplayMasteringLuminance" type="guint32" />
+      <field cname="min_display_mastering_luminance" access="public" writeable="true" readable="true" is_callback="false" name="MinDisplayMasteringLuminance" type="guint32" />
+      <field cname="_gst_reserved" access="private" writeable="false" readable="false" is_callback="false" name="_gstGstReserved" type="gpointer" array="true" array_len="4" padding="true" />
+      <method name="AddToCaps" cname="gst_video_mastering_display_info_add_to_caps" version="1.18">
+        <return-type type="gboolean" />
+        <parameters>
+          <parameter name="caps" type="GstCaps*">
+            <warning>missing glib:type-name</warning>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="FromCaps" cname="gst_video_mastering_display_info_from_caps" version="1.18">
+        <return-type type="gboolean" />
+        <parameters>
+          <parameter name="caps" type="GstCaps*">
+            <warning>missing glib:type-name</warning>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="Init" cname="gst_video_mastering_display_info_init" version="1.18">
+        <return-type type="void" />
+        <parameters />
+      </method>
+      <method name="IsEqual" cname="gst_video_mastering_display_info_is_equal" version="1.18">
+        <return-type type="gboolean" />
+        <parameters>
+          <parameter name="other" type="GstVideoMasteringDisplayInfo*">
+            <warning>missing glib:type-name</warning>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="ToString" cname="gst_video_mastering_display_info_to_string" version="1.18">
+        <return-type type="gchar*" owned="true" />
+        <parameters />
+      </method>
+      <method name="FromString" cname="gst_video_mastering_display_info_from_string" shared="true" version="1.18">
+        <return-type type="gboolean" />
+        <parameters>
+          <parameter name="minfo" type="GstVideoMasteringDisplayInfo*" pass_as="out">
+            <warning>missing glib:type-name</warning>
+          </parameter>
+          <parameter name="mastering" type="const-gchar*" />
+        </parameters>
+      </method>
+    </struct>
+    <struct name="VideoMasteringDisplayInfoCoordinates" cname="GstVideoMasteringDisplayInfoCoordinates" opaque="false" hidden="false" version="1.18">
+      <field cname="x" access="public" writeable="true" readable="true" is_callback="false" name="X" type="guint16" />
+      <field cname="y" access="public" writeable="true" readable="true" is_callback="false" name="Y" type="guint16" />
+    </struct>
     <struct name="VideoMeta" cname="GstVideoMeta" opaque="false" hidden="false">
       <field cname="meta" access="public" writeable="true" readable="true" is_callback="false" name="Meta" type="GstMeta">
         <warning>missing glib:type-name</warning>
       <field cname="stride" access="public" writeable="true" readable="true" is_callback="false" name="Stride" type="gint" array="true" array_len="4" />
       <field cname="map" access="public" writeable="false" readable="true" is_callback="true" name="MapField" type="GstVideoMapFieldFunc" />
       <field cname="unmap" access="public" writeable="false" readable="true" is_callback="true" name="UnmapField" type="GstVideoUnmapFieldFunc" />
+      <field cname="alignment" access="public" writeable="true" readable="true" is_callback="false" name="Alignment" type="GstVideoAlignment">
+        <warning>missing glib:type-name</warning>
+      </field>
+      <method name="GetPlaneHeight" cname="gst_video_meta_get_plane_height" version="1.18">
+        <return-type type="gboolean" />
+        <parameters>
+          <parameter name="plane_height" type="guint*" owned="true" pass_as="out" />
+        </parameters>
+      </method>
+      <method name="GetPlaneSize" cname="gst_video_meta_get_plane_size" version="1.18">
+        <return-type type="gboolean" />
+        <parameters>
+          <parameter name="plane_size" type="gsize*" owned="true" pass_as="out" />
+        </parameters>
+      </method>
       <method name="Map" cname="gst_video_meta_map">
         <return-type type="gboolean" />
         <parameters>
           <parameter name="flags" type="GstMapFlags" />
         </parameters>
       </method>
+      <method name="SetAlignment" cname="gst_video_meta_set_alignment" version="1.18">
+        <return-type type="gboolean" />
+        <parameters>
+          <parameter name="alignment" type="GstVideoAlignment">
+            <warning>missing glib:type-name</warning>
+          </parameter>
+        </parameters>
+      </method>
       <method name="Unmap" cname="gst_video_meta_unmap">
         <return-type type="gboolean" />
         <parameters>
         <parameters>
           <parameter name="fps_n" type="guint" />
           <parameter name="fps_d" type="guint" />
-          <parameter name="latest_daily_jam" type="GDateTime*">
+          <parameter allow-none="1" name="latest_daily_jam" type="GDateTime*">
             <warning>missing glib:type-name</warning>
           </parameter>
           <parameter name="flags" type="GstVideoTimeCodeFlags" />
       </method>
     </boxed>
     <object name="Global" cname="GstVideoGlobal" opaque="true">
+      <method name="BufferAddVideoAfdMeta" cname="gst_buffer_add_video_afd_meta" shared="true" version="1.18">
+        <return-type type="GstVideoAFDMeta*">
+          <warning>missing glib:type-name</warning>
+        </return-type>
+        <parameters>
+          <parameter name="buffer" type="GstBuffer*">
+            <warning>missing glib:type-name</warning>
+          </parameter>
+          <parameter name="field" type="guint8" />
+          <parameter name="spec" type="GstVideoAFDSpec" />
+          <parameter name="afd" type="GstVideoAFDValue" />
+        </parameters>
+      </method>
       <method name="BufferAddVideoAffineTransformationMeta" cname="gst_buffer_add_video_affine_transformation_meta" shared="true" version="1.8">
         <return-type type="GstVideoAffineTransformationMeta*">
           <warning>missing glib:type-name</warning>
           </parameter>
         </parameters>
       </method>
+      <method name="BufferAddVideoBarMeta" cname="gst_buffer_add_video_bar_meta" shared="true" version="1.18">
+        <return-type type="GstVideoBarMeta*">
+          <warning>missing glib:type-name</warning>
+        </return-type>
+        <parameters>
+          <parameter name="buffer" type="GstBuffer*">
+            <warning>missing glib:type-name</warning>
+          </parameter>
+          <parameter name="field" type="guint8" />
+          <parameter name="is_letterbox" type="gboolean" />
+          <parameter name="bar_data1" type="guint" />
+          <parameter name="bar_data2" type="guint" />
+        </parameters>
+      </method>
       <method name="BufferAddVideoCaptionMeta" cname="gst_buffer_add_video_caption_meta" shared="true" version="1.16">
         <return-type type="GstVideoCaptionMeta*">
           <warning>missing glib:type-name</warning>
           <parameter allow-none="1" name="y" type="gdouble*" owned="true" pass_as="out" />
         </parameters>
       </method>
+      <method name="NavigationEventParseMouseScrollEvent" cname="gst_navigation_event_parse_mouse_scroll_event" shared="true" version="1.18">
+        <return-type type="gboolean" />
+        <parameters>
+          <parameter name="event" type="GstEvent*">
+            <warning>missing glib:type-name</warning>
+          </parameter>
+          <parameter allow-none="1" name="x" type="gdouble*" owned="true" pass_as="out" />
+          <parameter allow-none="1" name="y" type="gdouble*" owned="true" pass_as="out" />
+          <parameter allow-none="1" name="delta_x" type="gdouble*" owned="true" pass_as="out" />
+          <parameter allow-none="1" name="delta_y" type="gdouble*" owned="true" pass_as="out" />
+        </parameters>
+      </method>
       <method name="NavigationMessageGetType" cname="gst_navigation_message_get_type" shared="true">
         <return-type type="GstNavigationMessageType" />
         <parameters>
           <parameter name="cmds" type="GstNavigationCommand*" array="true" array_length_param_index="1" />
         </parameters>
       </method>
+      <method name="VideoAfdMetaApiGetType" cname="gst_video_afd_meta_api_get_type" shared="true">
+        <return-type type="GType" />
+      </method>
+      <method name="VideoAfdMetaGetInfo" cname="gst_video_afd_meta_get_info" shared="true">
+        <return-type type="GstMetaInfo*">
+          <warning>missing glib:type-name</warning>
+        </return-type>
+      </method>
       <method name="VideoAffineTransformationMetaApiGetType" cname="gst_video_affine_transformation_meta_api_get_type" shared="true">
         <return-type type="GType" />
       </method>
           <warning>missing glib:type-name</warning>
         </return-type>
       </method>
+      <method name="VideoBarMetaApiGetType" cname="gst_video_bar_meta_api_get_type" shared="true">
+        <return-type type="GType" />
+      </method>
+      <method name="VideoBarMetaGetInfo" cname="gst_video_bar_meta_get_info" shared="true">
+        <return-type type="GstMetaInfo*">
+          <warning>missing glib:type-name</warning>
+        </return-type>
+      </method>
       <method name="VideoBlend" cname="gst_video_blend" shared="true">
         <return-type type="gboolean" />
         <parameters>
           <parameter name="site" type="GstVideoChromaSite" />
         </parameters>
       </method>
+      <method name="VideoColorMatrixFromIso" cname="gst_video_color_matrix_from_iso" shared="true" version="1.18">
+        <return-type type="GstVideoColorMatrix" />
+        <parameters>
+          <parameter name="value" type="guint" />
+        </parameters>
+      </method>
       <method name="VideoColorMatrixGetKrKb" cname="gst_video_color_matrix_get_Kr_Kb" shared="true" version="1.6">
         <return-type type="gboolean" />
         <parameters>
           <parameter name="Kb" type="gdouble*" owned="true" pass_as="out" />
         </parameters>
       </method>
+      <method name="VideoColorMatrixToIso" cname="gst_video_color_matrix_to_iso" shared="true" version="1.18">
+        <return-type type="guint" />
+        <parameters>
+          <parameter name="matrix" type="GstVideoColorMatrix" />
+        </parameters>
+      </method>
+      <method name="VideoColorPrimariesFromIso" cname="gst_video_color_primaries_from_iso" shared="true" version="1.18">
+        <return-type type="GstVideoColorPrimaries" />
+        <parameters>
+          <parameter name="value" type="guint" />
+        </parameters>
+      </method>
       <method name="VideoColorPrimariesGetInfo" cname="gst_video_color_primaries_get_info" shared="true" version="1.6">
         <return-type type="GstVideoColorPrimariesInfo*">
           <warning>missing glib:type-name</warning>
           <parameter name="primaries" type="GstVideoColorPrimaries" />
         </parameters>
       </method>
+      <method name="VideoColorPrimariesToIso" cname="gst_video_color_primaries_to_iso" shared="true" version="1.18">
+        <return-type type="guint" />
+        <parameters>
+          <parameter name="primaries" type="GstVideoColorPrimaries" />
+        </parameters>
+      </method>
       <method name="VideoColorRangeOffsets" cname="gst_video_color_range_offsets" shared="true">
         <return-type type="void" />
         <parameters>
           <parameter name="val" type="gdouble" />
         </parameters>
       </method>
+      <method name="VideoColorTransferFromIso" cname="gst_video_color_transfer_from_iso" shared="true" version="1.18">
+        <return-type type="GstVideoTransferFunction" />
+        <parameters>
+          <parameter name="value" type="guint" />
+        </parameters>
+      </method>
+      <method name="VideoColorTransferToIso" cname="gst_video_color_transfer_to_iso" shared="true" version="1.18">
+        <return-type type="guint" />
+        <parameters>
+          <parameter name="func" type="GstVideoTransferFunction" />
+        </parameters>
+      </method>
       <method name="VideoConvertSample" cname="gst_video_convert_sample" shared="true">
         <return-type type="GstSample*" owned="true">
           <warning>missing glib:type-name</warning>
           <parameter name="format" type="GstVideoFormat" />
         </parameters>
       </method>
+      <method name="VideoFormatsRaw" cname="gst_video_formats_raw" shared="true" version="1.18">
+        <return-type type="const GstVideoFormat*" array="true" array_length_param_index="0" />
+        <parameters>
+          <parameter name="len" type="guint*" owned="true" pass_as="out" />
+        </parameters>
+      </method>
       <method name="VideoGlTextureUploadMetaApiGetType" cname="gst_video_gl_texture_upload_meta_api_get_type" shared="true">
         <return-type type="GType" />
       </method>
           <parameter name="mode" type="GstVideoInterlaceMode" />
         </parameters>
       </method>
+      <method name="VideoMakeRawCaps" cname="gst_video_make_raw_caps" shared="true" version="1.18">
+        <return-type type="GstCaps*" owned="true">
+          <warning>missing glib:type-name</warning>
+        </return-type>
+        <parameters>
+          <parameter allow-none="1" name="formats" type="const GstVideoFormat*" array="true" array_length_param_index="1" />
+          <parameter name="len" type="guint" />
+        </parameters>
+      </method>
+      <method name="VideoMakeRawCapsWithFeatures" cname="gst_video_make_raw_caps_with_features" shared="true" version="1.18">
+        <return-type type="GstCaps*" owned="true">
+          <warning>missing glib:type-name</warning>
+        </return-type>
+        <parameters>
+          <parameter allow-none="1" name="formats" type="const GstVideoFormat*" array="true" array_length_param_index="1" />
+          <parameter name="len" type="guint" />
+          <parameter allow-none="1" name="features" type="GstCapsFeatures*" owned="true">
+            <warning>missing glib:type-name</warning>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="VideoMasteringDisplayInfoFromString" cname="gst_video_mastering_display_info_from_string" shared="true" version="1.18">
+        <return-type type="gboolean" />
+        <parameters>
+          <parameter name="minfo" type="GstVideoMasteringDisplayInfo*" pass_as="out">
+            <warning>missing glib:type-name</warning>
+          </parameter>
+          <parameter name="mastering" type="const-gchar*" />
+        </parameters>
+      </method>
       <method name="VideoMetaApiGetType" cname="gst_video_meta_api_get_type" shared="true">
         <return-type type="GType" />
       </method>
           <warning>missing glib:type-name</warning>
         </return-type>
       </method>
-      <method name="VideoOverlayInstallProperties" cname="gst_video_overlay_install_properties" shared="true" hidden="true">
+      <method name="VideoOverlayInstallProperties" cname="gst_video_overlay_install_properties" shared="true" version="1.14" hidden="true">
         <return-type type="void" />
         <parameters>
           <parameter name="oclass" type="GObjectClass*">
           <parameter name="last_prop_id" type="gint" />
         </parameters>
       </method>
-      <method name="VideoOverlaySetProperty" cname="gst_video_overlay_set_property" shared="true">
+      <method name="VideoOverlaySetProperty" cname="gst_video_overlay_set_property" shared="true" version="1.14">
         <return-type type="gboolean" />
         <parameters>
           <parameter name="_object" type="GObject*" />
       <constant value="size" ctype="gchar*" gtype="gchar*" name="META_TAG_VIDEO_SIZE_STR" version="1.2" />
       <constant value="video" ctype="gchar*" gtype="gchar*" name="META_TAG_VIDEO_STR" version="1.2" />
       <constant value="bt2020" ctype="gchar*" gtype="gchar*" name="VIDEO_COLORIMETRY_BT2020" />
+      <constant value="bt2020-10" ctype="gchar*" gtype="gchar*" name="VIDEO_COLORIMETRY_BT2020_10" />
+      <constant value="bt2100-hlg" ctype="gchar*" gtype="gchar*" name="VIDEO_COLORIMETRY_BT2100_HLG" />
+      <constant value="bt2100-pq" ctype="gchar*" gtype="gchar*" name="VIDEO_COLORIMETRY_BT2100_PQ" />
       <constant value="bt601" ctype="gchar*" gtype="gchar*" name="VIDEO_COLORIMETRY_BT601" />
       <constant value="bt709" ctype="gchar*" gtype="gchar*" name="VIDEO_COLORIMETRY_BT709" />
       <constant value="smpte240m" ctype="gchar*" gtype="gchar*" name="VIDEO_COLORIMETRY_SMPTE240M" />
       <constant value="src" ctype="gchar*" gtype="gchar*" name="VIDEO_DECODER_SRC_NAME" />
       <constant value="sink" ctype="gchar*" gtype="gchar*" name="VIDEO_ENCODER_SINK_NAME" />
       <constant value="src" ctype="gchar*" gtype="gchar*" name="VIDEO_ENCODER_SRC_NAME" />
-      <constant value="{ I420, YV12, YUY2, UYVY, AYUV, VUYA, RGBx, BGRx, xRGB, xBGR, RGBA, BGRA, ARGB, ABGR, RGB, BGR, Y41B, Y42B, YVYU, Y444, v210, v216, Y210, Y410, NV12, NV21, GRAY8, GRAY16_BE, GRAY16_LE, v308, RGB16, BGR16, RGB15, BGR15, UYVP, A420, RGB8P, YUV9, YVU9, IYU1, ARGB64, AYUV64, r210, I420_10BE, I420_10LE, I422_10BE, I422_10LE, Y444_10BE, Y444_10LE, GBR, GBR_10BE, GBR_10LE, NV16, NV24, NV12_64Z32, A420_10BE, A420_10LE, A422_10BE, A422_10LE, A444_10BE, A444_10LE, NV61, P010_10BE, P010_10LE, IYU2, VYUY, GBRA, GBRA_10BE, GBRA_10LE, BGR10A2_LE, GBR_12BE, GBR_12LE, GBRA_12BE, GBRA_12LE, I420_12BE, I420_12LE, I422_12BE, I422_12LE, Y444_12BE, Y444_12LE, GRAY10_LE32, NV12_10LE32, NV16_10LE32, NV12_10LE40 }" ctype="gchar*" gtype="gchar*" name="VIDEO_FORMATS_ALL" />
+      <constant value="{ AYUV64, ARGB64, GBRA_12BE, GBRA_12LE, Y412_BE, Y412_LE, A444_10BE, GBRA_10BE, A444_10LE, GBRA_10LE, A422_10BE, A422_10LE, A420_10BE, A420_10LE, Y410, RGB10A2_LE, BGR10A2_LE, GBRA, ABGR, VUYA, BGRA, AYUV, ARGB, RGBA, A420, Y444_16BE, Y444_16LE, v216, P016_BE, P016_LE, Y444_12BE, GBR_12BE, Y444_12LE, GBR_12LE, I422_12BE, I422_12LE, Y212_BE, Y212_LE, I420_12BE, I420_12LE, P012_BE, P012_LE, Y444_10BE, GBR_10BE, Y444_10LE, GBR_10LE, r210, I422_10BE, I422_10LE, NV16_10LE32, Y210, v210, UYVP, I420_10BE, I420_10LE, P010_10BE, P010_10LE, NV12_10LE32, NV12_10LE40, Y444, GBR, NV24, xBGR, BGRx, xRGB, RGBx, BGR, IYU2, v308, RGB, Y42B, NV61, NV16, VYUY, UYVY, YVYU, YUY2, I420, YV12, NV21, NV12, NV12_64Z32, Y41B, IYU1, YVU9, YUV9, RGB16, BGR16, RGB15, BGR15, RGB8P, GRAY16_BE, GRAY16_LE, GRAY10_LE32, GRAY8 }" ctype="gchar*" gtype="gchar*" name="VIDEO_FORMATS_ALL" />
       <constant value="(fraction) [ 0, max ]" ctype="gchar*" gtype="gchar*" name="VIDEO_FPS_RANGE" />
       <constant value="4" ctype="gint" gtype="gint" name="VIDEO_MAX_COMPONENTS" />
       <constant value="4" ctype="gint" gtype="gint" name="VIDEO_MAX_PLANES" />
-      <constant value="{ BGRx, RGBx, xRGB, xBGR, RGBA, BGRA, ARGB, ABGR, RGB, BGR, I420, YV12, AYUV, YUY2, UYVY, v308, Y41B, Y42B, Y444, NV12, NV21, A420, YUV9, YVU9, IYU1, GRAY8 }" ctype="gchar*" gtype="gchar*" name="VIDEO_OVERLAY_COMPOSITION_BLEND_FORMATS" version="1.2" />
       <constant value="GstVideoResampler.cubic-b" ctype="gchar*" gtype="gchar*" name="VIDEO_RESAMPLER_OPT_CUBIC_B" />
       <constant value="GstVideoResampler.cubic-c" ctype="gchar*" gtype="gchar*" name="VIDEO_RESAMPLER_OPT_CUBIC_C" />
       <constant value="GstVideoResampler.envelope" ctype="gchar*" gtype="gchar*" name="VIDEO_RESAMPLER_OPT_ENVELOPE" />
     </object>
   </namespace>
   <namespace name="Gst.WebRTC" library="gstwebrtc-1.0-0.dll">
-    <enum name="WebRTCBundlePolicy" cname="GstWebRTCBundlePolicy" type="enum" gtype="gst_webrtc_bundle_policy_get_type">
+    <enum name="WebRTCBundlePolicy" cname="GstWebRTCBundlePolicy" type="enum" gtype="gst_webrtc_bundle_policy_get_type" version="1.16">
       <member cname="GST_WEBRTC_BUNDLE_POLICY_NONE" name="None" value="0" />
       <member cname="GST_WEBRTC_BUNDLE_POLICY_BALANCED" name="Balanced" value="1" />
       <member cname="GST_WEBRTC_BUNDLE_POLICY_MAX_COMPAT" name="MaxCompat" value="2" />
       <member cname="GST_WEBRTC_DTLS_TRANSPORT_STATE_CONNECTING" name="Connecting" value="3" />
       <member cname="GST_WEBRTC_DTLS_TRANSPORT_STATE_CONNECTED" name="Connected" value="4" />
     </enum>
-    <enum name="WebRTCDataChannelState" cname="GstWebRTCDataChannelState" type="enum" gtype="gst_webrtc_data_channel_state_get_type">
+    <enum name="WebRTCDataChannelState" cname="GstWebRTCDataChannelState" type="enum" gtype="gst_webrtc_data_channel_state_get_type" version="1.16">
       <member cname="GST_WEBRTC_DATA_CHANNEL_STATE_NEW" name="New" value="0" />
       <member cname="GST_WEBRTC_DATA_CHANNEL_STATE_CONNECTING" name="Connecting" value="1" />
       <member cname="GST_WEBRTC_DATA_CHANNEL_STATE_OPEN" name="Open" value="2" />
       <member cname="GST_WEBRTC_DATA_CHANNEL_STATE_CLOSING" name="Closing" value="3" />
       <member cname="GST_WEBRTC_DATA_CHANNEL_STATE_CLOSED" name="Closed" value="4" />
     </enum>
-    <enum name="WebRTCFECType" cname="GstWebRTCFECType" type="enum" gtype="gst_webrtc_fec_type_get_type">
+    <enum name="WebRTCFECType" cname="GstWebRTCFECType" type="enum" gtype="gst_webrtc_fec_type_get_type" version="1.14.1">
       <member cname="GST_WEBRTC_FEC_TYPE_NONE" name="None" value="0" />
       <member cname="GST_WEBRTC_FEC_TYPE_ULP_RED" name="UlpRed" value="1" />
     </enum>
       <member cname="GST_WEBRTC_ICE_ROLE_CONTROLLED" name="Controlled" value="0" />
       <member cname="GST_WEBRTC_ICE_ROLE_CONTROLLING" name="Controlling" value="1" />
     </enum>
-    <enum name="WebRTCICETransportPolicy" cname="GstWebRTCICETransportPolicy" type="enum" gtype="gst_webrtc_ice_transport_policy_get_type">
+    <enum name="WebRTCICETransportPolicy" cname="GstWebRTCICETransportPolicy" type="enum" gtype="gst_webrtc_ice_transport_policy_get_type" version="1.16">
       <member cname="GST_WEBRTC_ICE_TRANSPORT_POLICY_ALL" name="All" value="0" />
       <member cname="GST_WEBRTC_ICE_TRANSPORT_POLICY_RELAY" name="Relay" value="1" />
     </enum>
       <member cname="GST_WEBRTC_PEER_CONNECTION_STATE_FAILED" name="Failed" value="4" />
       <member cname="GST_WEBRTC_PEER_CONNECTION_STATE_CLOSED" name="Closed" value="5" />
     </enum>
-    <enum name="WebRTCPriorityType" cname="GstWebRTCPriorityType" type="enum" gtype="gst_webrtc_priority_type_get_type">
+    <enum name="WebRTCPriorityType" cname="GstWebRTCPriorityType" type="enum" gtype="gst_webrtc_priority_type_get_type" version="1.16">
       <member cname="GST_WEBRTC_PRIORITY_TYPE_VERY_LOW" name="VeryLow" value="1" />
       <member cname="GST_WEBRTC_PRIORITY_TYPE_LOW" name="Low" value="2" />
       <member cname="GST_WEBRTC_PRIORITY_TYPE_MEDIUM" name="Medium" value="3" />
       <member cname="GST_WEBRTC_RTP_TRANSCEIVER_DIRECTION_RECVONLY" name="Recvonly" value="3" />
       <member cname="GST_WEBRTC_RTP_TRANSCEIVER_DIRECTION_SENDRECV" name="Sendrecv" value="4" />
     </enum>
-    <enum name="WebRTCSCTPTransportState" cname="GstWebRTCSCTPTransportState" type="enum" gtype="gst_webrtc_sctp_transport_state_get_type">
+    <enum name="WebRTCSCTPTransportState" cname="GstWebRTCSCTPTransportState" type="enum" gtype="gst_webrtc_sctp_transport_state_get_type" version="1.16">
       <member cname="GST_WEBRTC_SCTP_TRANSPORT_STATE_NEW" name="New" value="0" />
       <member cname="GST_WEBRTC_SCTP_TRANSPORT_STATE_CONNECTING" name="Connecting" value="1" />
       <member cname="GST_WEBRTC_SCTP_TRANSPORT_STATE_CONNECTED" name="Connected" value="2" />
       <field cname="dtlssrtpdec" access="public" writeable="false" readable="true" is_callback="false" name="Dtlssrtpdec" type="GstElement*" />
       <field cname="_padding" access="public" writeable="false" readable="true" is_callback="false" name="_Padding" type="gpointer" array="true" array_len="4" padding="true" />
     </object>
+    <object name="WebRTCDataChannel" cname="GstWebRTCDataChannel" defaultconstructoraccess="protected" opaque="false" hidden="false" parent="GObject" version="1.18">
+      <class_struct cname="GstWebRTCDataChannelClass" version="1.18">
+        <field cname="parent_class" access="public" writeable="false" readable="true" is_callback="false" name="ParentClass" type="GObjectClass">
+          <warning>missing glib:type-name</warning>
+        </field>
+        <method signal_vm="send_data" />
+        <method signal_vm="send_string" />
+        <method signal_vm="close" />
+        <field cname="_padding" access="public" writeable="false" readable="true" is_callback="false" name="_Padding" type="gpointer" array="true" array_len="4" padding="true" />
+      </class_struct>
+      <method name="GetType" cname="gst_webrtc_data_channel_get_type" shared="true">
+        <return-type type="GType" />
+      </method>
+      <method name="Close" cname="gst_webrtc_data_channel_close">
+        <return-type type="void" />
+        <parameters />
+      </method>
+      <method name="OnBufferedAmountLow" cname="gst_webrtc_data_channel_on_buffered_amount_low">
+        <return-type type="void" />
+        <parameters />
+      </method>
+      <method name="OnClose" cname="gst_webrtc_data_channel_on_close">
+        <return-type type="void" />
+        <parameters />
+      </method>
+      <method name="OnError" cname="gst_webrtc_data_channel_on_error">
+        <return-type type="void" />
+        <parameters>
+          <parameter name="error" type="GError*" owned="true">
+            <warning>missing glib:type-name</warning>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="OnMessageData" cname="gst_webrtc_data_channel_on_message_data">
+        <return-type type="void" />
+        <parameters>
+          <parameter allow-none="1" name="data" type="GBytes*">
+            <warning>missing glib:type-name</warning>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="OnMessageString" cname="gst_webrtc_data_channel_on_message_string">
+        <return-type type="void" />
+        <parameters>
+          <parameter allow-none="1" name="str" type="const-gchar*" />
+        </parameters>
+      </method>
+      <method name="OnOpen" cname="gst_webrtc_data_channel_on_open">
+        <return-type type="void" />
+        <parameters />
+      </method>
+      <method name="SendData" cname="gst_webrtc_data_channel_send_data">
+        <return-type type="void" />
+        <parameters>
+          <parameter allow-none="1" name="data" type="GBytes*">
+            <warning>missing glib:type-name</warning>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="SendString" cname="gst_webrtc_data_channel_send_string">
+        <return-type type="void" />
+        <parameters>
+          <parameter allow-none="1" name="str" type="const-gchar*" />
+        </parameters>
+      </method>
+      <property name="BufferedAmount" cname="buffered-amount" type="guint64" readable="true" writeable="false" construct="false" construct-only="false" />
+      <property name="BufferedAmountLowThreshold" cname="buffered-amount-low-threshold" type="guint64" readable="true" writeable="true" construct="false" construct-only="false" />
+      <property name="Id" cname="id" type="gint" readable="true" writeable="true" construct="false" construct-only="true" />
+      <property name="Label" cname="label" type="gchar*" readable="true" writeable="true" construct="false" construct-only="true" />
+      <property name="MaxPacketLifetime" cname="max-packet-lifetime" type="gint" readable="true" writeable="true" construct="false" construct-only="true" />
+      <property name="MaxRetransmits" cname="max-retransmits" type="gint" readable="true" writeable="true" construct="false" construct-only="true" />
+      <property name="Negotiated" cname="negotiated" type="gboolean" readable="true" writeable="true" construct="false" construct-only="true" />
+      <property name="Ordered" cname="ordered" type="gboolean" readable="true" writeable="true" construct="false" construct-only="true" />
+      <property name="Priority" cname="priority" type="GstWebRTCPriorityType" readable="true" writeable="true" construct="false" construct-only="true" />
+      <property name="Protocol" cname="protocol" type="gchar*" readable="true" writeable="true" construct="false" construct-only="true" />
+      <property name="ReadyState" cname="ready-state" type="GstWebRTCDataChannelState" readable="true" writeable="false" construct="false" construct-only="false" />
+      <field cname="parent" access="public" writeable="false" readable="true" is_callback="false" name="Parent" type="GObject*" hidden="true" />
+      <field cname="lock" access="public" writeable="false" readable="true" is_callback="false" name="Lock" type="GMutex*" />
+      <field cname="label" access="public" writeable="false" readable="true" is_callback="false" name="LabelField" type="gchar*" />
+      <field cname="ordered" access="public" writeable="false" readable="true" is_callback="false" name="OrderedField" type="gboolean" />
+      <field cname="max_packet_lifetime" access="public" writeable="false" readable="true" is_callback="false" name="MaxPacketLifetimeField" type="guint" />
+      <field cname="max_retransmits" access="public" writeable="false" readable="true" is_callback="false" name="MaxRetransmitsField" type="guint" />
+      <field cname="protocol" access="public" writeable="false" readable="true" is_callback="false" name="ProtocolField" type="gchar*" />
+      <field cname="negotiated" access="public" writeable="false" readable="true" is_callback="false" name="NegotiatedField" type="gboolean" />
+      <field cname="id" access="public" writeable="false" readable="true" is_callback="false" name="IdField" type="gint" />
+      <field cname="priority" access="public" writeable="false" readable="true" is_callback="false" name="PriorityField" type="GstWebRTCPriorityType" />
+      <field cname="ready_state" access="public" writeable="false" readable="true" is_callback="false" name="ReadyStateField" type="GstWebRTCDataChannelState" />
+      <field cname="buffered_amount" access="public" writeable="false" readable="true" is_callback="false" name="BufferedAmountField" type="guint64" />
+      <field cname="buffered_amount_low_threshold" access="public" writeable="false" readable="true" is_callback="false" name="BufferedAmountLowThresholdField" type="guint64" />
+      <field cname="_padding" access="public" writeable="false" readable="true" is_callback="false" name="_Padding" type="gpointer" array="true" array_len="4" padding="true" />
+      <signal name="CloseEvent" cname="close" when="last" field_name="close">
+        <return-type type="void" />
+        <parameters />
+        <warning>Signal renamed because of existing method with same name</warning>
+      </signal>
+      <signal name="OnBufferedAmountLowEvent" cname="on-buffered-amount-low" when="last">
+        <return-type type="void" />
+        <parameters />
+        <warning>Signal renamed because of existing method with same name</warning>
+      </signal>
+      <signal name="OnCloseEvent" cname="on-close" when="last" hidden="true">
+        <return-type type="void" />
+        <parameters />
+        <warning>Signal renamed because of existing method with same name</warning>
+      </signal>
+      <signal name="OnErrorEvent" cname="on-error" when="last">
+        <return-type type="void" />
+        <parameters>
+          <parameter name="error" type="GError*">
+            <warning>missing glib:type-name</warning>
+          </parameter>
+        </parameters>
+        <warning>Signal renamed because of existing method with same name</warning>
+      </signal>
+      <signal name="OnMessageDataEvent" cname="on-message-data" when="last">
+        <return-type type="void" />
+        <parameters>
+          <parameter allow-none="1" name="data" type="GBytes*">
+            <warning>missing glib:type-name</warning>
+          </parameter>
+        </parameters>
+        <warning>Signal renamed because of existing method with same name</warning>
+      </signal>
+      <signal name="OnMessageStringEvent" cname="on-message-string" when="last">
+        <return-type type="void" />
+        <parameters>
+          <parameter allow-none="1" name="data" type="const-gchar*" />
+        </parameters>
+        <warning>Signal renamed because of existing method with same name</warning>
+      </signal>
+      <signal name="OnOpenEvent" cname="on-open" when="last">
+        <return-type type="void" />
+        <parameters />
+        <warning>Signal renamed because of existing method with same name</warning>
+      </signal>
+      <signal name="SendDataEvent" cname="send-data" when="last" field_name="send_data">
+        <return-type type="void" />
+        <parameters>
+          <parameter allow-none="1" name="data" type="GBytes*">
+            <warning>missing glib:type-name</warning>
+          </parameter>
+        </parameters>
+        <warning>Signal renamed because of existing method with same name</warning>
+      </signal>
+      <signal name="SendStringEvent" cname="send-string" when="last" field_name="send_string">
+        <return-type type="void" />
+        <parameters>
+          <parameter allow-none="1" name="data" type="const-gchar*" />
+        </parameters>
+        <warning>Signal renamed because of existing method with same name</warning>
+      </signal>
+    </object>
     <object name="WebRTCICETransport" cname="GstWebRTCICETransport" defaultconstructoraccess="protected" opaque="false" hidden="false" parent="GstObject">
       <class_struct cname="GstWebRTCICETransportClass">
         <field cname="parent_class" access="public" writeable="false" readable="true" is_callback="false" name="ParentClass" type="GstObjectClass">
       <method name="GetType" cname="gst_webrtc_rtp_transceiver_get_type" shared="true">
         <return-type type="GType" />
       </method>
+      <property name="Direction" cname="direction" type="GstWebRTCRTPTransceiverDirection" readable="true" writeable="true" construct="false" construct-only="false" version="1.18" />
       <property name="Mlineindex" cname="mlineindex" type="guint" readable="true" writeable="true" construct="false" construct-only="true" />
       <property name="Receiver" cname="receiver" type="GstWebRTCRTPReceiver*" readable="true" writeable="true" construct="false" construct-only="true" />
       <property name="Sender" cname="sender" type="GstWebRTCRTPSender*" readable="true" writeable="true" construct="false" construct-only="true" />
       <field cname="stopped" access="public" writeable="false" readable="true" is_callback="false" name="Stopped" type="gboolean" />
       <field cname="sender" access="public" writeable="false" readable="true" is_callback="false" name="SenderField" type="GstWebRTCRTPSender*" />
       <field cname="receiver" access="public" writeable="false" readable="true" is_callback="false" name="ReceiverField" type="GstWebRTCRTPReceiver*" />
-      <field cname="direction" access="public" writeable="false" readable="true" is_callback="false" name="Direction" type="GstWebRTCRTPTransceiverDirection" />
+      <field cname="direction" access="public" writeable="false" readable="true" is_callback="false" name="DirectionField" type="GstWebRTCRTPTransceiverDirection" />
       <field cname="current_direction" access="public" writeable="false" readable="true" is_callback="false" name="CurrentDirection" type="GstWebRTCRTPTransceiverDirection" />
       <field cname="codec_preferences" access="public" writeable="false" readable="true" is_callback="false" name="CodecPreferences" type="GstCaps*">
         <warning>missing glib:type-name</warning>
index 59cd3f8..496d85d 100644 (file)
@@ -63,6 +63,7 @@ generated_sources = [
     'Gst.Audio/AudioRingBufferSpec.cs',
     'Gst.Audio/AudioRingBufferState.cs',
     'Gst.Audio/AudioSink.cs',
+    'Gst.Audio/AudioSinkClassExtension.cs',
     'Gst.Audio/AudioSrc.cs',
     'Gst.Audio/AudioStreamAlign.cs',
     'Gst.Audio/Constants.cs',
@@ -78,6 +79,7 @@ generated_sources = [
     'Gst.Base/Adapter.cs',
     'Gst.Base/Aggregator.cs',
     'Gst.Base/AggregatorPad.cs',
+    'Gst.Base/AggregatorStartTimeSelection.cs',
     'Gst.Base/BaseParse.cs',
     'Gst.Base/BaseParseFrame.cs',
     'Gst.Base/BaseParseFrameFlags.cs',
@@ -310,6 +312,9 @@ generated_sources = [
     'Gst.Video/NavigationQueryType.cs',
     'Gst.Video/ValueChangedEventHandler.cs',
     'Gst.Video/ValueChangedHandler.cs',
+    'Gst.Video/VideoAFDMeta.cs',
+    'Gst.Video/VideoAFDSpec.cs',
+    'Gst.Video/VideoAFDValue.cs',
     'Gst.Video/VideoAffineTransformationGetMatrix.cs',
     'Gst.Video/VideoAffineTransformationMeta.cs',
     'Gst.Video/VideoAggregator.cs',
@@ -320,6 +325,7 @@ generated_sources = [
     'Gst.Video/VideoAncillary.cs',
     'Gst.Video/VideoAncillaryDID.cs',
     'Gst.Video/VideoAncillaryDID16.cs',
+    'Gst.Video/VideoBarMeta.cs',
     'Gst.Video/VideoBufferFlags.cs',
     'Gst.Video/VideoBufferPool.cs',
     'Gst.Video/VideoCaptionMeta.cs',
@@ -337,6 +343,7 @@ generated_sources = [
     'Gst.Video/VideoColorPrimariesInfo.cs',
     'Gst.Video/VideoColorRange.cs',
     'Gst.Video/VideoColorimetry.cs',
+    'Gst.Video/VideoContentLightLevel.cs',
     'Gst.Video/VideoConvertSampleCallback.cs',
     'Gst.Video/VideoConverter.cs',
     'Gst.Video/VideoCropMeta.cs',
@@ -364,6 +371,8 @@ generated_sources = [
     'Gst.Video/VideoGammaMode.cs',
     'Gst.Video/VideoInfo.cs',
     'Gst.Video/VideoInterlaceMode.cs',
+    'Gst.Video/VideoMasteringDisplayInfo.cs',
+    'Gst.Video/VideoMasteringDisplayInfoCoordinates.cs',
     'Gst.Video/VideoMatrixMode.cs',
     'Gst.Video/VideoMeta.cs',
     'Gst.Video/VideoMetaTransform.cs',
@@ -402,11 +411,17 @@ generated_sources = [
     'Gst.Video/VideoVBIParserResult.cs',
     'Gst.WebRTC/Constants.cs',
     'Gst.WebRTC/Global.cs',
+    'Gst.WebRTC/OnErrorEventHandler.cs',
+    'Gst.WebRTC/OnMessageDataEventHandler.cs',
+    'Gst.WebRTC/OnMessageStringEventHandler.cs',
     'Gst.WebRTC/OnNewCandidateHandler.cs',
+    'Gst.WebRTC/SendDataEventHandler.cs',
+    'Gst.WebRTC/SendStringEventHandler.cs',
     'Gst.WebRTC/WebRTCBundlePolicy.cs',
     'Gst.WebRTC/WebRTCDTLSSetup.cs',
     'Gst.WebRTC/WebRTCDTLSTransport.cs',
     'Gst.WebRTC/WebRTCDTLSTransportState.cs',
+    'Gst.WebRTC/WebRTCDataChannel.cs',
     'Gst.WebRTC/WebRTCDataChannelState.cs',
     'Gst.WebRTC/WebRTCFECType.cs',
     'Gst.WebRTC/WebRTCICEComponent.cs',
@@ -664,6 +679,7 @@ generated_sources = [
     'Gst/Pipeline.cs',
     'Gst/PipelineFlags.cs',
     'Gst/Plugin.cs',
+    'Gst/PluginAPIFlags.cs',
     'Gst/PluginAddedHandler.cs',
     'Gst/PluginDependencyFlags.cs',
     'Gst/PluginDesc.cs',
index 4e14d48..fdc47a9 100644 (file)
@@ -34,6 +34,7 @@
       <member cname="GST_CLOCK_TYPE_REALTIME" name="Realtime" value="0"/>
       <member cname="GST_CLOCK_TYPE_MONOTONIC" name="Monotonic" value="1"/>
       <member cname="GST_CLOCK_TYPE_OTHER" name="Other" value="2"/>
+      <member cname="GST_CLOCK_TYPE_TAI" name="Tai" value="3"/>
     </enum>
     <enum name="CoreError" cname="GstCoreError" type="enum" gtype="gst_core_error_get_type">
       <member cname="GST_CORE_ERROR_FAILED" name="Failed" value="1"/>
@@ -86,6 +87,7 @@
       <member cname="GST_EVENT_PROTECTION" name="Protection" value="33310"/>
       <member cname="GST_EVENT_SEGMENT_DONE" name="SegmentDone" value="38406"/>
       <member cname="GST_EVENT_GAP" name="Gap" value="40966"/>
+      <member cname="GST_EVENT_INSTANT_RATE_CHANGE" name="InstantRateChange" value="46090"/>
       <member cname="GST_EVENT_QOS" name="Qos" value="48641"/>
       <member cname="GST_EVENT_SEEK" name="Seek" value="51201"/>
       <member cname="GST_EVENT_NAVIGATION" name="Navigation" value="53761"/>
@@ -94,6 +96,7 @@
       <member cname="GST_EVENT_RECONFIGURE" name="Reconfigure" value="61441"/>
       <member cname="GST_EVENT_TOC_SELECT" name="TocSelect" value="64001"/>
       <member cname="GST_EVENT_SELECT_STREAMS" name="SelectStreams" value="66561"/>
+      <member cname="GST_EVENT_INSTANT_RATE_SYNC_TIME" name="InstantRateSyncTime" value="66817"/>
       <member cname="GST_EVENT_CUSTOM_UPSTREAM" name="CustomUpstream" value="69121"/>
       <member cname="GST_EVENT_CUSTOM_DOWNSTREAM" name="CustomDownstream" value="71686"/>
       <member cname="GST_EVENT_CUSTOM_DOWNSTREAM_OOB" name="CustomDownstreamOob" value="74242"/>
       <member cname="GST_MESSAGE_STREAM_COLLECTION" name="StreamCollection" value="2147483652"/>
       <member cname="GST_MESSAGE_STREAMS_SELECTED" name="StreamsSelected" value="2147483653"/>
       <member cname="GST_MESSAGE_REDIRECT" name="Redirect" value="2147483654"/>
-      <member cname="GST_MESSAGE_DEVICE_CHANGED" name="DeviceChanged" value="2147483654"/>
+      <member cname="GST_MESSAGE_DEVICE_CHANGED" name="DeviceChanged" value="2147483655"/>
+      <member cname="GST_MESSAGE_INSTANT_RATE_REQUEST" name="InstantRateRequest" value="2147483656"/>
       <member cname="GST_MESSAGE_ANY" name="Any" value="4294967295"/>
     </enum>
     <enum name="MetaFlags" cname="GstMetaFlags" type="flags" gtype="gst_meta_flags_get_type">
       <member cname="GST_PIPELINE_FLAG_FIXED_CLOCK" name="FixedClock" value="524288"/>
       <member cname="GST_PIPELINE_FLAG_LAST" name="Last" value="8388608"/>
     </enum>
+    <enum name="PluginAPIFlags" cname="GstPluginAPIFlags" type="flags" gtype="gst_plugin_api_flags_get_type" version="1.18">
+      <member cname="GST_PLUGIN_API_FLAG_IGNORE_ENUM_MEMBERS" name="Members" value="1"/>
+    </enum>
     <enum name="PluginDependencyFlags" cname="GstPluginDependencyFlags" type="flags" gtype="gst_plugin_dependency_flags_get_type">
       <member cname="GST_PLUGIN_DEPENDENCY_FLAG_NONE" name="None" value="0"/>
       <member cname="GST_PLUGIN_DEPENDENCY_FLAG_RECURSE" name="Recurse" value="1"/>
       <member cname="GST_SEEK_FLAG_SNAP_NEAREST" name="SnapNearest" value="96"/>
       <member cname="GST_SEEK_FLAG_TRICKMODE_KEY_UNITS" name="TrickmodeKeyUnits" value="128"/>
       <member cname="GST_SEEK_FLAG_TRICKMODE_NO_AUDIO" name="TrickmodeNoAudio" value="256"/>
+      <member cname="GST_SEEK_FLAG_TRICKMODE_FORWARD_PREDICTED" name="TrickmodeForwardPredicted" value="512"/>
+      <member cname="GST_SEEK_FLAG_INSTANT_RATE_CHANGE" name="InstantRateChange" value="1024"/>
     </enum>
     <enum name="SegmentFlags" cname="GstSegmentFlags" type="flags" gtype="gst_segment_flags_get_type">
       <member cname="GST_SEGMENT_FLAG_NONE" name="None" value="0"/>
       <member cname="GST_SEGMENT_FLAG_SKIP" name="Skip" value="16"/>
       <member cname="GST_SEGMENT_FLAG_TRICKMODE_KEY_UNITS" name="TrickmodeKeyUnits" value="128"/>
       <member cname="GST_SEGMENT_FLAG_TRICKMODE_NO_AUDIO" name="TrickmodeNoAudio" value="256"/>
+      <member cname="GST_SEGMENT_FLAG_TRICKMODE_FORWARD_PREDICTED" name="TrickmodeForwardPredicted" value="512"/>
     </enum>
     <enum name="StackTraceFlags" cname="GstStackTraceFlags" type="flags" gtype="gst_stack_trace_flags_get_type" version="1.12">
+      <member cname="GST_STACK_TRACE_SHOW_NONE" name="None" value="0"/>
       <member cname="GST_STACK_TRACE_SHOW_FULL" name="Full" value="1"/>
     </enum>
     <enum name="StreamFlags" cname="GstStreamFlags" type="flags" gtype="gst_stream_flags_get_type" version="1.2">
         <return-type type="GstElementFlags"/>
         <parameters/>
       </method>
+      <method name="IterateAllByElementFactoryName" cname="gst_bin_iterate_all_by_element_factory_name" version="1.18">
+        <return-type type="GstIterator*" owned="true">
+          <warning>missing glib:type-name</warning>
+        </return-type>
+        <parameters>
+          <parameter name="factory_name" type="const-gchar*"/>
+        </parameters>
+      </method>
       <method name="IterateAllByInterface" cname="gst_bin_iterate_all_by_interface">
         <return-type type="GstIterator*" owned="true">
           <warning>missing glib:type-name</warning>
         <return-type type="GType"/>
       </method>
       <virtual_method name="CreateElement" cname="create_element" version="1.4">
-        <return-type type="GstElement*" owned="true"/>
+        <return-type type="GstElement*"/>
         <parameters>
           <parameter allow-none="1" name="name" type="const-gchar*"/>
         </parameters>
         </parameters>
       </virtual_method>
       <method name="CreateElement" cname="gst_device_create_element" version="1.4">
-        <return-type type="GstElement*" owned="true"/>
+        <return-type type="GstElement*"/>
         <parameters>
           <parameter allow-none="1" name="name" type="const-gchar*"/>
         </parameters>
         </return-type>
         <parameters/>
       </method>
+      <method name="GetCurrentClockTime" cname="gst_element_get_current_clock_time" version="1.18">
+        <return-type type="guint64"/>
+        <parameters/>
+      </method>
+      <method name="GetCurrentRunningTime" cname="gst_element_get_current_running_time" version="1.18">
+        <return-type type="guint64"/>
+        <parameters/>
+      </method>
       <method name="GetFactory" cname="gst_element_get_factory">
         <return-type type="GstElementFactory*"/>
         <parameters/>
           </parameter>
         </parameters>
       </method>
+      <method name="GetSingleInternalLink" cname="gst_pad_get_single_internal_link" version="1.18">
+        <return-type type="GstPad*" owned="true"/>
+        <parameters/>
+      </method>
       <method name="GetStickyEvent" cname="gst_pad_get_sticky_event">
         <return-type type="GstEvent*" owned="true">
           <warning>missing glib:type-name</warning>
         </return-type>
         <parameters/>
       </method>
+      <method name="GetDocumentationCaps" cname="gst_pad_template_get_documentation_caps" version="1.18">
+        <return-type type="GstCaps*" owned="true">
+          <warning>missing glib:type-name</warning>
+        </return-type>
+        <parameters/>
+      </method>
       <method name="PadCreated" cname="gst_pad_template_pad_created">
         <return-type type="void"/>
         <parameters>
           <parameter name="pad" type="GstPad*"/>
         </parameters>
       </method>
+      <method name="SetDocumentationCaps" cname="gst_pad_template_set_documentation_caps" version="1.18">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="caps" type="GstCaps*">
+            <warning>missing glib:type-name</warning>
+          </parameter>
+        </parameters>
+      </method>
       <property name="Caps" cname="caps" type="GstCaps*" readable="true" writeable="true" construct="false" construct-only="true"/>
       <property name="Direction" cname="direction" type="GstPadDirection" readable="true" writeable="true" construct="false" construct-only="true"/>
       <property name="Gtype" cname="gtype" type="GType" readable="true" writeable="true" construct="false" construct-only="true" version="1.14"/>
         <field cname="_gst_reserved" access="public" writeable="true" readable="true" is_callback="false" name="_gstGstReserved" type="gpointer" array="true" array_len="4"/>
         <struct name="abi" cname="abi" opaque="false" hidden="false">
           <field cname="gtype" access="public" writeable="true" readable="true" is_callback="false" name="Gtype" type="GType"/>
+          <field cname="documentation_caps" access="public" writeable="true" readable="true" is_callback="false" name="DocumentationCaps" type="GstCaps*">
+            <warning>missing glib:type-name</warning>
+          </field>
         </struct>
       </union>
       <signal name="PadCreatedEvent" cname="pad-created" when="last" field_name="pad_created">
         <return-type type="gboolean"/>
         <parameters/>
       </method>
+      <method name="Resume" cname="gst_task_resume" version="1.18">
+        <return-type type="gboolean"/>
+        <parameters/>
+      </method>
       <method name="SetEnterCallback" cname="gst_task_set_enter_callback">
         <return-type type="void"/>
         <parameters>
       </field>
       <field cname="_gst_reserved" access="private" writeable="false" readable="false" is_callback="false" name="_gstGstReserved" type="gpointer" array="true" array_len="4"/>
     </object>
-    <object name="Tracer" cname="GstTracer" defaultconstructoraccess="protected" opaque="false" hidden="false" parent="GstObject">
+    <object name="Tracer" cname="GstTracer" defaultconstructoraccess="protected" opaque="false" hidden="false" parent="GstObject" version="1.8">
       <class_struct cname="GstTracerClass">
         <field cname="parent_class" access="public" writeable="false" readable="true" is_callback="false" name="ParentClass" type="GstObjectClass">
           <warning>missing glib:type-name</warning>
       <method name="GetType" cname="gst_tracer_get_type" shared="true">
         <return-type type="GType"/>
       </method>
+      <method name="Register" cname="gst_tracer_register" shared="true">
+        <return-type type="gboolean"/>
+        <parameters>
+          <parameter allow-none="1" name="plugin" type="GstPlugin*"/>
+          <parameter name="name" type="const-gchar*"/>
+          <parameter name="type" type="GType"/>
+        </parameters>
+      </method>
       <property name="Params" cname="params" type="gchar*" readable="true" writeable="true" construct="true" construct-only="false"/>
       <field cname="parent" access="public" writeable="false" readable="true" is_callback="false" name="Parent" type="GstObject*"/>
       <field cname="priv" access="private" writeable="false" readable="false" is_callback="false" name="Priv" type="GstTracerPrivate*">
         <parameters/>
       </method>
     </object>
-    <object name="TracerRecord" cname="GstTracerRecord" opaque="false" hidden="false" parent="GstObject">
+    <object name="TracerRecord" cname="GstTracerRecord" opaque="false" hidden="false" parent="GstObject" version="1.8">
       <class_struct cname="GstTracerRecordClass"/>
       <method name="GetType" cname="gst_tracer_record_get_type" shared="true">
         <return-type type="GType"/>
           <parameter name="index" type="guint"/>
         </parameters>
       </method>
+      <method name="Init" cname="gst_value_array_init" shared="true" version="1.18">
+        <return-type type="GValue*">
+          <warning>missing glib:type-name</warning>
+        </return-type>
+        <parameters>
+          <parameter name="value" type="GValue*">
+            <warning>missing glib:type-name</warning>
+          </parameter>
+          <parameter name="prealloc" type="guint"/>
+        </parameters>
+      </method>
       <method name="PrependValue" cname="gst_value_array_prepend_value" shared="true">
         <return-type type="void"/>
         <parameters>
           <parameter name="index" type="guint"/>
         </parameters>
       </method>
+      <method name="Init" cname="gst_value_list_init" shared="true" version="1.18">
+        <return-type type="GValue*">
+          <warning>missing glib:type-name</warning>
+        </return-type>
+        <parameters>
+          <parameter name="value" type="GValue*">
+            <warning>missing glib:type-name</warning>
+          </parameter>
+          <parameter name="prealloc" type="guint"/>
+        </parameters>
+      </method>
       <method name="Merge" cname="gst_value_list_merge" shared="true">
         <return-type type="void"/>
         <parameters>
       <method name="GetType" cname="gst_buffer_get_type" shared="true">
         <return-type type="GType"/>
       </method>
-      <field cname="mini_object" access="public" writeable="true" readable="true" is_callback="false" name="MiniObject" type="GstMiniObject">
+      <field cname="mini_object" access="public" writeable="true" readable="true" is_callback="false" name="MiniObject" type="GstMiniObject" array_index="3">
         <warning>missing glib:type-name</warning>
       </field>
-      <field cname="pool" access="public" writeable="true" readable="true" is_callback="false" name="Pool" type="GstBufferPool*" array_index="3"/>
-      <field cname="pts" access="public" writeable="true" readable="true" is_callback="false" name="Pts" type="guint64" array_index="2"/>
-      <field cname="dts" access="public" writeable="true" readable="true" is_callback="false" name="Dts" type="guint64" array_index="1"/>
+      <field cname="pool" access="public" writeable="true" readable="true" is_callback="false" name="Pool" type="GstBufferPool*" array_index="2"/>
+      <field cname="pts" access="public" writeable="true" readable="true" is_callback="false" name="Pts" type="guint64" array_index="1"/>
+      <field cname="dts" access="public" writeable="true" readable="true" is_callback="false" name="Dts" type="guint64"/>
       <field cname="duration" access="public" writeable="true" readable="true" is_callback="false" name="Duration" type="guint64"/>
       <field cname="offset" access="public" writeable="true" readable="true" is_callback="false" name="Offset" type="guint64"/>
       <field cname="offset_end" access="public" writeable="true" readable="true" is_callback="false" name="OffsetEnd" type="guint64"/>
           </parameter>
         </parameters>
       </method>
+      <method name="Ref" cname="gst_buffer_ref">
+        <return-type type="GstBuffer*" owned="true">
+          <warning>missing glib:type-name</warning>
+        </return-type>
+        <parameters/>
+      </method>
       <method name="RemoveAllMemory" cname="gst_buffer_remove_all_memory">
         <return-type type="void"/>
         <parameters/>
           </parameter>
         </parameters>
       </method>
+      <method name="Unref" cname="gst_buffer_unref">
+        <return-type type="void"/>
+        <parameters/>
+      </method>
       <method name="UnsetFlags" cname="gst_buffer_unset_flags" version="1.10">
         <return-type type="gboolean"/>
         <parameters>
         <return-type type="guint"/>
         <parameters/>
       </method>
+      <method name="Ref" cname="gst_buffer_list_ref">
+        <return-type type="GstBufferList*" owned="true">
+          <warning>missing glib:type-name</warning>
+        </return-type>
+        <parameters/>
+      </method>
       <method name="Remove" cname="gst_buffer_list_remove">
         <return-type type="void"/>
         <parameters>
           <parameter name="length" type="guint"/>
         </parameters>
       </method>
+      <method name="Unref" cname="gst_buffer_list_unref">
+        <return-type type="void"/>
+        <parameters/>
+      </method>
     </boxed>
     <struct name="BufferPoolAcquireParams" cname="GstBufferPoolAcquireParams" opaque="false" hidden="false">
       <field cname="format" access="public" writeable="true" readable="true" is_callback="false" name="Format" type="GstFormat"/>
         </return-type>
         <parameters/>
       </method>
-      <method name="CopyNth" cname="gst_caps_copy_nth">
+      <method name="CopyNth" cname="gst_caps_copy_nth" version="1.16">
         <return-type type="GstCaps*" owned="true">
           <warning>missing glib:type-name</warning>
         </return-type>
         </return-type>
         <parameters/>
       </method>
+      <method name="Ref" cname="gst_caps_ref">
+        <return-type type="GstCaps*" owned="true">
+          <warning>missing glib:type-name</warning>
+        </return-type>
+        <parameters/>
+      </method>
       <method name="RemoveStructure" cname="gst_caps_remove_structure">
         <return-type type="void"/>
         <parameters>
         </return-type>
         <parameters/>
       </method>
+      <method name="Unref" cname="gst_caps_unref">
+        <return-type type="void"/>
+        <parameters/>
+      </method>
       <method name="FromString" cname="gst_caps_from_string" shared="true">
         <return-type type="GstCaps*" owned="true">
           <warning>missing glib:type-name</warning>
         </parameters>
       </method>
     </boxed>
-    <boxed name="CapsFeatures" cname="GstCapsFeatures" opaque="false" hidden="false">
+    <boxed name="CapsFeatures" cname="GstCapsFeatures" opaque="false" hidden="false" version="1.2">
       <method name="GetType" cname="gst_caps_features_get_type" shared="true">
         <return-type type="GType"/>
       </method>
       <field cname="_gst_reserved" access="private" writeable="false" readable="false" is_callback="false" name="_gstGstReserved" type="gpointer" array="true" array_len="4"/>
     </struct>
     <struct name="ClockPrivate" cname="GstClockPrivate" opaque="true" hidden="true"/>
-    <boxed name="Context" cname="GstContext" opaque="false" hidden="false">
+    <boxed name="Context" cname="GstContext" opaque="false" hidden="false" version="1.2">
       <method name="GetType" cname="gst_context_get_type" shared="true">
         <return-type type="GType"/>
       </method>
           <parameter name="secs" type="gint64"/>
         </parameters>
       </constructor>
+      <constructor cname="gst_date_time_new_from_unix_epoch_local_time_usecs" version="1.18">
+        <parameters>
+          <parameter name="usecs" type="gint64"/>
+        </parameters>
+      </constructor>
       <constructor cname="gst_date_time_new_from_unix_epoch_utc">
         <parameters>
           <parameter name="secs" type="gint64"/>
         </parameters>
       </constructor>
+      <constructor cname="gst_date_time_new_from_unix_epoch_utc_usecs" version="1.18">
+        <parameters>
+          <parameter name="usecs" type="gint64"/>
+        </parameters>
+      </constructor>
       <constructor cname="gst_date_time_new_local_time">
         <parameters>
           <parameter name="year" type="gint"/>
       <field cname="color" access="private" writeable="false" readable="false" is_callback="false" name="Color" type="guint"/>
       <field cname="name" access="private" writeable="false" readable="false" is_callback="false" name="Name" type="gchar*"/>
       <field cname="description" access="private" writeable="false" readable="false" is_callback="false" name="Description" type="gchar*"/>
-      <method name="Free" cname="gst_debug_category_free">
+      <method name="Free" cname="gst_debug_category_free" deprecated="true">
         <return-type type="void"/>
         <parameters/>
       </method>
           <parameter name="duration" type="guint64"/>
         </parameters>
       </constructor>
+      <constructor cname="gst_event_new_instant_rate_change" version="1.18">
+        <parameters>
+          <parameter name="rate_multiplier" type="gdouble"/>
+          <parameter name="new_flags" type="GstSegmentFlags"/>
+        </parameters>
+      </constructor>
+      <constructor cname="gst_event_new_instant_rate_sync_time" version="1.18">
+        <parameters>
+          <parameter name="rate_multiplier" type="gdouble"/>
+          <parameter name="running_time" type="guint64"/>
+          <parameter name="upstream_running_time" type="guint64"/>
+        </parameters>
+      </constructor>
       <constructor cname="gst_event_new_latency">
         <parameters>
           <parameter name="latency" type="guint64"/>
           <parameter name="name" type="const-gchar*"/>
         </parameters>
       </method>
+      <method name="HasNameId" cname="gst_event_has_name_id" version="1.18">
+        <return-type type="gboolean"/>
+        <parameters>
+          <parameter name="name" type="guint32"/>
+        </parameters>
+      </method>
       <method name="ParseBufferSize" cname="gst_event_parse_buffer_size">
         <return-type type="void"/>
         <parameters>
           <parameter name="group_id" type="guint*" owned="true" pass_as="out"/>
         </parameters>
       </method>
+      <method name="ParseInstantRateChange" cname="gst_event_parse_instant_rate_change" version="1.18">
+        <return-type type="void"/>
+        <parameters>
+          <parameter allow-none="1" name="rate_multiplier" type="gdouble*" owned="true" pass_as="out"/>
+          <parameter allow-none="1" name="new_flags" type="GstSegmentFlags" owned="true" pass_as="out"/>
+        </parameters>
+      </method>
+      <method name="ParseInstantRateSyncTime" cname="gst_event_parse_instant_rate_sync_time" version="1.18">
+        <return-type type="void"/>
+        <parameters>
+          <parameter allow-none="1" name="rate_multiplier" type="gdouble*" owned="true" pass_as="out"/>
+          <parameter allow-none="1" name="running_time" type="guint64" owned="true" pass_as="out"/>
+          <parameter allow-none="1" name="upstream_running_time" type="guint64" owned="true" pass_as="out"/>
+        </parameters>
+      </method>
       <method name="ParseLatency" cname="gst_event_parse_latency">
         <return-type type="void"/>
         <parameters>
           <parameter allow-none="1" name="uid" type="gchar*" owned="true" pass_as="out"/>
         </parameters>
       </method>
+      <method name="Ref" cname="gst_event_ref">
+        <return-type type="GstEvent*" owned="true">
+          <warning>missing glib:type-name</warning>
+        </return-type>
+        <parameters/>
+      </method>
       <method name="SetGroupId" cname="gst_event_set_group_id" version="1.2">
         <return-type type="void"/>
         <parameters>
           <parameter name="flags" type="GstStreamFlags"/>
         </parameters>
       </method>
+      <method name="Unref" cname="gst_event_unref">
+        <return-type type="void"/>
+        <parameters/>
+      </method>
       <method name="WritableStructure" cname="gst_event_writable_structure">
         <return-type type="GstStructure*">
           <warning>missing glib:type-name</warning>
         <warning>missing glib:type-name</warning>
       </field>
       <field cname="allocator" access="public" writeable="true" readable="true" is_callback="false" name="Allocator" type="GstAllocator*"/>
-      <field cname="parent" access="public" writeable="true" readable="true" is_callback="false" name="Parent" type="GstMemory*">
+      <field cname="parent" access="public" writeable="true" readable="true" is_callback="false" name="Parent" type="GstMemory*" array_index="1">
         <warning>missing glib:type-name</warning>
       </field>
-      <field cname="maxsize" access="public" writeable="true" readable="true" is_callback="false" name="Maxsize" type="gsize" array_index="1"/>
+      <field cname="maxsize" access="public" writeable="true" readable="true" is_callback="false" name="Maxsize" type="gsize"/>
       <field cname="align" access="public" writeable="true" readable="true" is_callback="false" name="Align" type="gsize"/>
       <field cname="offset" access="public" writeable="true" readable="true" is_callback="false" name="Offset" type="gsize"/>
       <field cname="size" access="public" writeable="true" readable="true" is_callback="false" name="Size" type="gsize"/>
           <parameter name="flags" type="GstMapFlags"/>
         </parameters>
       </method>
+      <method name="Ref" cname="gst_memory_ref">
+        <return-type type="GstMemory*" owned="true">
+          <warning>missing glib:type-name</warning>
+        </return-type>
+        <parameters/>
+      </method>
       <method name="Resize" cname="gst_memory_resize">
         <return-type type="void"/>
         <parameters>
           </parameter>
         </parameters>
       </method>
+      <method name="Unref" cname="gst_memory_unref">
+        <return-type type="void"/>
+        <parameters/>
+      </method>
     </boxed>
     <boxed name="Message" cname="GstMessage" opaque="false" hidden="false">
       <method name="GetType" cname="gst_message_get_type" shared="true">
           </parameter>
         </parameters>
       </constructor>
+      <constructor cname="gst_message_new_instant_rate_request" version="1.18">
+        <parameters>
+          <parameter name="src" type="GstObject*"/>
+          <parameter name="rate_multiplier" type="gdouble"/>
+        </parameters>
+      </constructor>
       <constructor cname="gst_message_new_latency">
         <parameters>
           <parameter name="src" type="GstObject*"/>
           </parameter>
         </parameters>
       </method>
+      <method name="ParseInstantRateRequest" cname="gst_message_parse_instant_rate_request" version="1.18">
+        <return-type type="void"/>
+        <parameters>
+          <parameter allow-none="1" name="rate_multiplier" type="gdouble*" owned="true" pass_as="out"/>
+        </parameters>
+      </method>
       <method name="ParseNewClock" cname="gst_message_parse_new_clock">
         <return-type type="void"/>
         <parameters>
           </parameter>
         </parameters>
       </method>
+      <method name="Ref" cname="gst_message_ref">
+        <return-type type="GstMessage*" owned="true">
+          <warning>missing glib:type-name</warning>
+        </return-type>
+        <parameters/>
+      </method>
       <method name="SetBufferingStats" cname="gst_message_set_buffering_stats">
         <return-type type="void"/>
         <parameters>
           <parameter name="idx" type="guint"/>
         </parameters>
       </method>
+      <method name="Unref" cname="gst_message_unref">
+        <return-type type="void"/>
+        <parameters/>
+      </method>
       <method name="WritableStructure" cname="gst_message_writable_structure" version="1.14">
         <return-type type="GstStructure*">
           <warning>missing glib:type-name</warning>
       <method name="Reply" cname="gst_promise_reply" version="1.14">
         <return-type type="void"/>
         <parameters>
-          <parameter name="s" type="GstStructure*" owned="true">
+          <parameter allow-none="1" name="s" type="GstStructure*" owned="true">
             <warning>missing glib:type-name</warning>
           </parameter>
         </parameters>
           <parameter name="permanent" type="gboolean"/>
         </parameters>
       </method>
+      <method name="Unref" cname="gst_query_unref">
+        <return-type type="void"/>
+        <parameters/>
+      </method>
       <method name="WritableStructure" cname="gst_query_writable_structure">
         <return-type type="GstStructure*">
           <warning>missing glib:type-name</warning>
         </return-type>
         <parameters/>
       </method>
+      <method name="Ref" cname="gst_sample_ref">
+        <return-type type="GstSample*" owned="true">
+          <warning>missing glib:type-name</warning>
+        </return-type>
+        <parameters/>
+      </method>
       <method name="SetBuffer" cname="gst_sample_set_buffer" version="1.16">
         <return-type type="void"/>
         <parameters>
           </parameter>
         </parameters>
       </method>
+      <method name="Unref" cname="gst_sample_unref">
+        <return-type type="void"/>
+        <parameters/>
+      </method>
     </boxed>
     <boxed name="Segment" cname="GstSegment" opaque="false" hidden="false">
       <method name="GetType" cname="gst_segment_get_type" shared="true">
       </method>
       <field cname="type" access="public" writeable="true" readable="true" is_callback="false" name="Type" type="GType"/>
       <field cname="name" access="private" writeable="false" readable="false" is_callback="false" name="Name" type="guint32"/>
+      <constructor cname="gst_structure_from_string">
+        <parameters>
+          <parameter name="string" type="const-gchar*"/>
+          <parameter name="end" type="const-gchar*" pass_as="out"/>
+        </parameters>
+      </constructor>
       <constructor cname="gst_structure_new_empty">
         <parameters>
           <parameter name="name" type="const-gchar*"/>
           <parameter name="value" type="gint64*" owned="true" pass_as="out"/>
         </parameters>
       </method>
-      <method name="GetList" cname="gst_structure_get_list">
+      <method name="GetList" cname="gst_structure_get_list" version="1.12">
         <return-type type="gboolean"/>
         <parameters>
           <parameter name="fieldname" type="const-gchar*"/>
           <parameter name="fieldname" type="const-gchar*"/>
         </parameters>
       </method>
-      <method name="SetArray" cname="gst_structure_set_array">
+      <method name="SetArray" cname="gst_structure_set_array" version="1.12">
         <return-type type="void"/>
         <parameters>
           <parameter name="fieldname" type="const-gchar*"/>
           </parameter>
         </parameters>
       </method>
-      <method name="SetList" cname="gst_structure_set_list">
+      <method name="SetList" cname="gst_structure_set_list" version="1.12">
         <return-type type="void"/>
         <parameters>
           <parameter name="fieldname" type="const-gchar*"/>
         <return-type type="gchar*" owned="true"/>
         <parameters/>
       </method>
-      <method name="FromString" cname="gst_structure_from_string" shared="true">
-        <return-type type="GstStructure*" owned="true">
-          <warning>missing glib:type-name</warning>
-        </return-type>
+      <method name="Take" cname="gst_structure_take" shared="true" version="1.18">
+        <return-type type="gboolean"/>
         <parameters>
-          <parameter name="string" type="const-gchar*"/>
-          <parameter allow-none="1" name="end" type="const-gchar*" pass_as="out"/>
+          <parameter allow-none="1" name="oldstr_ptr" type="GstStructure**" owned="true" pass_as="ref">
+            <warning>missing glib:type-name</warning>
+          </parameter>
+          <parameter allow-none="1" name="newstr" type="GstStructure*" owned="true">
+            <warning>missing glib:type-name</warning>
+          </parameter>
         </parameters>
       </method>
     </boxed>
           <parameter name="value" type="const-gchar*" pass_as="out"/>
         </parameters>
       </method>
+      <method name="Ref" cname="gst_tag_list_ref">
+        <return-type type="GstTagList*" owned="true">
+          <warning>missing glib:type-name</warning>
+        </return-type>
+        <parameters/>
+      </method>
       <method name="RemoveTag" cname="gst_tag_list_remove_tag">
         <return-type type="void"/>
         <parameters>
         <return-type type="gchar*" owned="true"/>
         <parameters/>
       </method>
+      <method name="Unref" cname="gst_tag_list_unref">
+        <return-type type="void"/>
+        <parameters/>
+      </method>
       <method name="CopyValue" cname="gst_tag_list_copy_value" shared="true">
         <return-type type="gboolean"/>
         <parameters>
           <parameter allow-none="1" name="user_data" type="gpointer"/>
         </parameters>
       </method>
+      <method name="DebugLogGetLine" cname="gst_debug_log_get_line" shared="true" version="1.18">
+        <return-type type="gchar*" owned="true"/>
+        <parameters>
+          <parameter name="category" type="GstDebugCategory*">
+            <warning>missing glib:type-name</warning>
+          </parameter>
+          <parameter name="level" type="GstDebugLevel"/>
+          <parameter name="file" type="const-gchar*"/>
+          <parameter name="function" type="const-gchar*"/>
+          <parameter name="line" type="gint"/>
+          <parameter allow-none="1" name="_object" type="GObject*"/>
+          <parameter name="message" type="GstDebugMessage*">
+            <warning>missing glib:type-name</warning>
+          </parameter>
+        </parameters>
+      </method>
       <method name="DebugPrintStackTrace" cname="gst_debug_print_stack_trace" shared="true">
         <return-type type="void"/>
       </method>
           <parameter name="stype" type="GstStreamType"/>
         </parameters>
       </method>
-      <method name="StructureFromString" cname="gst_structure_from_string" shared="true">
-        <return-type type="GstStructure*" owned="true">
-          <warning>missing glib:type-name</warning>
-        </return-type>
+      <method name="StructureTake" cname="gst_structure_take" shared="true" version="1.18">
+        <return-type type="gboolean"/>
         <parameters>
-          <parameter name="string" type="const-gchar*"/>
-          <parameter allow-none="1" name="end" type="const-gchar*" pass_as="out"/>
+          <parameter allow-none="1" name="oldstr_ptr" type="GstStructure**" owned="true" pass_as="ref">
+            <warning>missing glib:type-name</warning>
+          </parameter>
+          <parameter allow-none="1" name="newstr" type="GstStructure*" owned="true">
+            <warning>missing glib:type-name</warning>
+          </parameter>
         </parameters>
       </method>
       <method name="TagExists" cname="gst_tag_exists" shared="true">
           <parameter name="type" type="GstTocEntryType"/>
         </parameters>
       </method>
+      <method name="TracingGetActiveTracers" cname="gst_tracing_get_active_tracers" shared="true" version="1.18">
+        <return-type type="GList*" element_type="GstTracer*" elements_owned="true" owned="true"/>
+      </method>
+      <method name="TracingRegisterHook" cname="gst_tracing_register_hook" shared="true">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="tracer" type="GstTracer*"/>
+          <parameter name="detail" type="const-gchar*"/>
+          <parameter scope="async" name="func" type="GCallback"/>
+        </parameters>
+      </method>
       <method name="TypeFindGetType" cname="gst_type_find_get_type" shared="true">
         <return-type type="GType"/>
       </method>
           <parameter scope="async" name="data_notify" type="GDestroyNotify"/>
         </parameters>
       </method>
+      <method name="TypeIsPluginApi" cname="gst_type_is_plugin_api" shared="true" version="1.18">
+        <return-type type="gboolean"/>
+        <parameters>
+          <parameter name="type" type="GType"/>
+          <parameter name="flags" type="GstPluginAPIFlags" owned="true" pass_as="out"/>
+        </parameters>
+      </method>
+      <method name="TypeMarkAsPluginApi" cname="gst_type_mark_as_plugin_api" shared="true" version="1.18">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="type" type="GType"/>
+          <parameter name="flags" type="GstPluginAPIFlags"/>
+        </parameters>
+      </method>
       <method name="UpdateRegistry" cname="gst_update_registry" shared="true">
         <return-type type="gboolean"/>
       </method>
       <constant value="2" ctype="GstElementFactoryListType" gtype="GstElementFactoryListType" name="ELEMENT_FACTORY_TYPE_ENCODER"/>
       <constant value="2048" ctype="GstElementFactoryListType" gtype="GstElementFactoryListType" name="ELEMENT_FACTORY_TYPE_ENCRYPTOR"/>
       <constant value="512" ctype="GstElementFactoryListType" gtype="GstElementFactoryListType" name="ELEMENT_FACTORY_TYPE_FORMATTER"/>
+      <constant value="4096" ctype="GstElementFactoryListType" gtype="GstElementFactoryListType" name="ELEMENT_FACTORY_TYPE_HARDWARE"/>
       <constant value="281474976710656" ctype="GstElementFactoryListType" gtype="GstElementFactoryListType" name="ELEMENT_FACTORY_TYPE_MAX_ELEMENTS"/>
       <constant value="18446462598732840960" ctype="GstElementFactoryListType" gtype="GstElementFactoryListType" name="ELEMENT_FACTORY_TYPE_MEDIA_ANY"/>
       <constant value="1125899906842624" ctype="GstElementFactoryListType" gtype="GstElementFactoryListType" name="ELEMENT_FACTORY_TYPE_MEDIA_AUDIO"/>
       <constant value="memory" ctype="gchar*" gtype="gchar*" name="META_TAG_MEMORY_STR" version="1.2"/>
       <constant value="1000000" ctype="GstClockTimeDiff" gtype="GstClockTimeDiff" name="MSECOND"/>
       <constant value="1" ctype="GstClockTimeDiff" gtype="GstClockTimeDiff" name="NSECOND"/>
+      <constant value="16384" ctype="gint" gtype="gint" name="PARAM_CONDITIONALLY_AVAILABLE" version="1.18"/>
       <constant value="512" ctype="gint" gtype="gint" name="PARAM_CONTROLLABLE"/>
+      <constant value="8192" ctype="gint" gtype="gint" name="PARAM_DOC_SHOW_DEFAULT" version="1.18"/>
       <constant value="2048" ctype="gint" gtype="gint" name="PARAM_MUTABLE_PAUSED"/>
       <constant value="4096" ctype="gint" gtype="gint" name="PARAM_MUTABLE_PLAYING"/>
       <constant value="1024" ctype="gint" gtype="gint" name="PARAM_MUTABLE_READY"/>
       <constant value="3" ctype="GstQueryTypeFlags" gtype="GstQueryTypeFlags" name="QUERY_TYPE_BOTH"/>
       <constant value="1000000000" ctype="GstClockTimeDiff" gtype="GstClockTimeDiff" name="SECOND"/>
       <constant value="paB" ctype="gchar*" gtype="gchar*" name="SEGMENT_FORMAT"/>
+      <constant value="912" ctype="gint" gtype="gint" name="SEGMENT_INSTANT_FLAGS"/>
       <constant value="0" ctype="gint" gtype="gint" name="SEQNUM_INVALID" version="1.14"/>
       <constant value="c%" ctype="gchar*" gtype="gchar*" name="STIME_FORMAT" version="1.6"/>
       <constant value="album" ctype="gchar*" gtype="gchar*" name="TAG_ALBUM"/>
       <property name="Mute" cname="mute" type="gboolean" readable="true" writeable="true" construct="false" construct-only="false"/>
       <property name="Volume" cname="volume" type="gdouble" readable="true" writeable="true" construct="false" construct-only="false"/>
     </interface>
-    <object name="AudioAggregator" cname="GstAudioAggregator" defaultconstructoraccess="protected" opaque="false" hidden="false" parent="GstAggregator">
-      <class_struct cname="GstAudioAggregatorClass">
+    <object name="AudioAggregator" cname="GstAudioAggregator" defaultconstructoraccess="protected" opaque="false" hidden="false" parent="GstAggregator" version="1.14">
+      <class_struct cname="GstAudioAggregatorClass" version="1.14">
         <field cname="parent_class" access="public" writeable="false" readable="true" is_callback="false" name="ParentClass" type="GstAggregatorClass">
           <warning>missing glib:type-name</warning>
         </field>
       <property name="AlignmentThreshold" cname="alignment-threshold" type="guint64" readable="true" writeable="true" construct="false" construct-only="false"/>
       <property name="DiscontWait" cname="discont-wait" type="guint64" readable="true" writeable="true" construct="false" construct-only="false"/>
       <property name="OutputBufferDuration" cname="output-buffer-duration" type="guint64" readable="true" writeable="true" construct="false" construct-only="false"/>
+      <property name="OutputBufferDurationFraction" cname="output-buffer-duration-fraction" type="*" readable="true" writeable="true" construct="false" construct-only="false" version="1.18"/>
       <field cname="parent" access="public" writeable="false" readable="true" is_callback="false" name="Parent" type="GstAggregator*"/>
       <field cname="current_caps" access="public" writeable="false" readable="true" is_callback="false" name="CurrentCaps" type="GstCaps*">
         <warning>missing glib:type-name</warning>
       </field>
       <field cname="_gst_reserved" access="private" writeable="false" readable="false" is_callback="false" name="_gstGstReserved" type="gpointer" array="true" array_len="4"/>
     </object>
-    <object name="AudioAggregatorConvertPad" cname="GstAudioAggregatorConvertPad" opaque="false" hidden="false" parent="GstAudioAggregatorPad">
-      <class_struct cname="GstAudioAggregatorConvertPadClass">
+    <object name="AudioAggregatorConvertPad" cname="GstAudioAggregatorConvertPad" opaque="false" hidden="false" parent="GstAudioAggregatorPad" version="1.14">
+      <class_struct cname="GstAudioAggregatorConvertPadClass" version="1.14">
         <field cname="parent_class" access="public" writeable="false" readable="true" is_callback="false" name="ParentClass" type="GstAudioAggregatorPadClass">
           <warning>missing glib:type-name</warning>
         </field>
       </field>
       <field cname="_gst_reserved" access="private" writeable="false" readable="false" is_callback="false" name="_gstGstReserved" type="gpointer" array="true" array_len="4"/>
     </object>
-    <object name="AudioAggregatorPad" cname="GstAudioAggregatorPad" opaque="false" hidden="false" parent="GstAggregatorPad">
-      <class_struct cname="GstAudioAggregatorPadClass">
+    <object name="AudioAggregatorPad" cname="GstAudioAggregatorPad" opaque="false" hidden="false" parent="GstAggregatorPad" version="1.14">
+      <class_struct cname="GstAudioAggregatorPadClass" version="1.14">
         <field cname="parent_class" access="public" writeable="false" readable="true" is_callback="false" name="ParentClass" type="GstAggregatorPadClass">
           <warning>missing glib:type-name</warning>
         </field>
       <method name="FinishFrame" cname="gst_audio_decoder_finish_frame">
         <return-type type="GstFlowReturn"/>
         <parameters>
-          <parameter name="buf" type="GstBuffer*">
+          <parameter allow-none="1" name="buf" type="GstBuffer*" owned="true">
             <warning>missing glib:type-name</warning>
           </parameter>
           <parameter name="frames" type="gint"/>
       <method name="FinishSubframe" cname="gst_audio_decoder_finish_subframe" version="1.16">
         <return-type type="GstFlowReturn"/>
         <parameters>
-          <parameter name="buf" type="GstBuffer*">
+          <parameter allow-none="1" name="buf" type="GstBuffer*" owned="true">
             <warning>missing glib:type-name</warning>
           </parameter>
         </parameters>
       <method name="FinishFrame" cname="gst_audio_encoder_finish_frame">
         <return-type type="GstFlowReturn"/>
         <parameters>
-          <parameter name="buffer" type="GstBuffer*">
+          <parameter allow-none="1" name="buffer" type="GstBuffer*" owned="true">
             <warning>missing glib:type-name</warning>
           </parameter>
           <parameter name="samples" type="gint"/>
         <method vm="write"/>
         <method vm="delay"/>
         <method vm="reset"/>
-        <field cname="_gst_reserved" access="private" writeable="false" readable="false" is_callback="false" name="_gstGstReserved" type="gpointer" array="true" array_len="4"/>
+        <method vm="pause"/>
+        <method vm="resume"/>
+        <method vm="stop"/>
+        <field cname="extension" access="public" writeable="false" readable="true" is_callback="false" name="Extension" type="GstAudioSinkClassExtension*">
+          <warning>missing glib:type-name</warning>
+        </field>
       </class_struct>
       <method name="GetType" cname="gst_audio_sink_get_type" shared="true">
         <return-type type="GType"/>
         <return-type type="gboolean"/>
         <parameters/>
       </virtual_method>
+      <virtual_method name="Pause" cname="pause">
+        <return-type type="void"/>
+        <parameters/>
+      </virtual_method>
       <virtual_method name="Prepare" cname="prepare">
         <return-type type="gboolean"/>
         <parameters>
         <return-type type="void"/>
         <parameters/>
       </virtual_method>
+      <virtual_method name="Resume" cname="resume">
+        <return-type type="void"/>
+        <parameters/>
+      </virtual_method>
+      <virtual_method name="Stop" cname="stop">
+        <return-type type="void"/>
+        <parameters/>
+      </virtual_method>
       <virtual_method name="Unprepare" cname="unprepare">
         <return-type type="gboolean"/>
         <parameters/>
     <struct name="AudioBaseSinkPrivate" cname="GstAudioBaseSinkPrivate" opaque="true" hidden="true"/>
     <struct name="AudioBaseSrcPrivate" cname="GstAudioBaseSrcPrivate" opaque="true" hidden="true"/>
     <struct name="AudioBuffer" cname="GstAudioBuffer" opaque="false" hidden="false" version="1.16">
-      <field cname="info" access="public" writeable="true" readable="true" is_callback="false" name="Info" type="GstAudioInfo">
+      <field cname="info" access="public" writeable="true" readable="true" is_callback="false" name="Info" type="GstAudioInfo" array_index="4">
         <warning>missing glib:type-name</warning>
       </field>
-      <field cname="n_samples" access="public" writeable="true" readable="true" is_callback="false" name="NSamples" type="gsize" array_index="4"/>
+      <field cname="n_samples" access="public" writeable="true" readable="true" is_callback="false" name="NSamples" type="gsize"/>
       <field cname="n_planes" access="public" writeable="true" readable="true" is_callback="false" name="NPlanes" type="gint"/>
       <field cname="planes" access="public" writeable="true" readable="true" is_callback="false" name="Planes" type="gpointer"/>
       <field cname="buffer" access="public" writeable="true" readable="true" is_callback="false" name="Buffer" type="GstBuffer*">
       <field cname="seglatency" access="public" writeable="true" readable="true" is_callback="false" name="Seglatency" type="gint"/>
       <field cname="_gst_reserved" access="private" writeable="false" readable="false" is_callback="false" name="_gstGstReserved" type="gpointer" array="true" array_len="4"/>
     </struct>
+    <struct name="AudioSinkClassExtension" cname="GstAudioSinkClassExtension" opaque="false" hidden="false">
+      <field cname="clear_all" access="public" writeable="false" readable="true" is_callback="true" name="ClearAll" type="GstAudioClearAllFunc"/>
+    </struct>
     <boxed name="AudioStreamAlign" cname="GstAudioStreamAlign" opaque="false" hidden="false" version="1.14">
       <method name="GetType" cname="gst_audio_stream_align_get_type" shared="true">
         <return-type type="GType"/>
           <parameter name="channel_mask" type="guint64*" owned="true" pass_as="out"/>
         </parameters>
       </method>
-      <method name="AudioChannelPositionsToString" cname="gst_audio_channel_positions_to_string" shared="true">
+      <method name="AudioChannelPositionsToString" cname="gst_audio_channel_positions_to_string" shared="true" version="1.10">
         <return-type type="gchar*" owned="true"/>
         <parameters>
           <parameter name="position" type="const GstAudioChannelPosition*" array="true" array_length_param_index="1"/>
           <parameter name="format" type="GstAudioFormat"/>
         </parameters>
       </method>
+      <method name="AudioFormatsRaw" cname="gst_audio_formats_raw" shared="true" version="1.18">
+        <return-type type="const GstAudioFormat*" array="true" array_length_param_index="0"/>
+        <parameters>
+          <parameter name="len" type="guint*" owned="true" pass_as="out"/>
+        </parameters>
+      </method>
       <method name="AudioGetChannelReorderMap" cname="gst_audio_get_channel_reorder_map" shared="true">
         <return-type type="gboolean" array_index="3"/>
         <parameters>
           <parameter name="endianness" type="gint"/>
         </parameters>
       </method>
+      <method name="AudioMakeRawCaps" cname="gst_audio_make_raw_caps" shared="true" version="1.18">
+        <return-type type="GstCaps*" owned="true">
+          <warning>missing glib:type-name</warning>
+        </return-type>
+        <parameters>
+          <parameter allow-none="1" name="formats" type="const GstAudioFormat*" array="true" array_length_param_index="1"/>
+          <parameter name="len" type="guint"/>
+          <parameter name="layout" type="GstAudioLayout"/>
+        </parameters>
+      </method>
       <method name="AudioMetaApiGetType" cname="gst_audio_meta_api_get_type" shared="true">
         <return-type type="GType"/>
       </method>
       <constant value="44100" ctype="gint" gtype="gint" name="AUDIO_DEF_RATE"/>
       <constant value="sink" ctype="gchar*" gtype="gchar*" name="AUDIO_ENCODER_SINK_NAME"/>
       <constant value="src" ctype="gchar*" gtype="gchar*" name="AUDIO_ENCODER_SRC_NAME"/>
-      <constant value=" { S8, U8, S16LE, S16BE, U16LE, U16BE, S24_32LE, S24_32BE, U24_32LE, U24_32BE, S32LE, S32BE, U32LE, U32BE, S24LE, S24BE, U24LE, U24BE, S20LE, S20BE, U20LE, U20BE, S18LE, S18BE, U18LE, U18BE, F32LE, F32BE, F64LE, F64BE }" ctype="gchar*" gtype="gchar*" name="AUDIO_FORMATS_ALL"/>
+      <constant value="{ F64BE, F64LE, F32BE, F32LE, S32BE, S32LE, U32BE, U32LE, S24_32BE, S24_32LE, U24_32BE, U24_32LE, S24BE, S24LE, U24BE, U24LE, S20BE, S20LE, U20BE, U20LE, S18BE, S18LE, U18BE, U18LE, S16BE, S16LE, U16BE, U16LE, S8, U8 }" ctype="gchar*" gtype="gchar*" name="AUDIO_FORMATS_ALL"/>
       <constant value="(int) [ 1, max ]" ctype="gchar*" gtype="gchar*" name="AUDIO_RATE_RANGE"/>
       <constant value="GstAudioResampler.cubic-b" ctype="gchar*" gtype="gchar*" name="AUDIO_RESAMPLER_OPT_CUBIC_B"/>
       <constant value="GstAudioResampler.cubic-c" ctype="gchar*" gtype="gchar*" name="AUDIO_RESAMPLER_OPT_CUBIC_C"/>
     </object>
   </namespace>
   <namespace name="GstBase" library="gstbase-1.0">
+    <enum name="AggregatorStartTimeSelection" cname="GstAggregatorStartTimeSelection" type="enum" gtype="gst_aggregator_start_time_selection_get_type" version="1.14">
+      <member cname="GST_AGGREGATOR_START_TIME_SELECTION_ZERO" name="Zero" value="0"/>
+      <member cname="GST_AGGREGATOR_START_TIME_SELECTION_FIRST" name="First" value="1"/>
+      <member cname="GST_AGGREGATOR_START_TIME_SELECTION_SET" name="Set" value="2"/>
+    </enum>
     <enum name="BaseParseFrameFlags" cname="GstBaseParseFrameFlags" type="flags">
       <member cname="GST_BASE_PARSE_FRAME_FLAG_NONE" name="None" value="0"/>
       <member cname="GST_BASE_PARSE_FRAME_FLAG_NEW_FRAME" name="NewFrame" value="1"/>
         <parameters/>
       </method>
     </object>
-    <object name="Aggregator" cname="GstAggregator" defaultconstructoraccess="protected" opaque="false" hidden="false" parent="GstElement">
-      <class_struct cname="GstAggregatorClass">
+    <object name="Aggregator" cname="GstAggregator" defaultconstructoraccess="protected" opaque="false" hidden="false" parent="GstElement" version="1.14">
+      <class_struct cname="GstAggregatorClass" version="1.14">
         <field cname="parent_class" access="public" writeable="false" readable="true" is_callback="false" name="ParentClass" type="GstElementClass">
           <warning>missing glib:type-name</warning>
         </field>
         <method vm="negotiated_src_caps"/>
         <method vm="decide_allocation"/>
         <method vm="propose_allocation"/>
-        <field cname="_gst_reserved" access="private" writeable="false" readable="false" is_callback="false" name="_gstGstReserved" type="gpointer" array="true" array_len="20"/>
+        <method vm="negotiate"/>
+        <method vm="sink_event_pre_queue"/>
+        <method vm="sink_query_pre_queue"/>
+        <field cname="_gst_reserved" access="private" writeable="false" readable="false" is_callback="false" name="_gstGstReserved" type="gpointer" array="true" array_len="17"/>
       </class_struct>
       <method name="GetType" cname="gst_aggregator_get_type" shared="true">
         <return-type type="GType"/>
         <return-type type="guint64"/>
         <parameters/>
       </virtual_method>
+      <virtual_method name="Negotiate" cname="negotiate" version="1.18">
+        <return-type type="gboolean"/>
+        <parameters/>
+      </virtual_method>
       <virtual_method name="NegotiatedSrcCaps" cname="negotiated_src_caps">
         <return-type type="gboolean"/>
         <parameters>
           </parameter>
         </parameters>
       </virtual_method>
+      <virtual_method name="SinkEventPreQueue" cname="sink_event_pre_queue">
+        <return-type type="GstFlowReturn"/>
+        <parameters>
+          <parameter name="aggregator_pad" type="GstAggregatorPad*"/>
+          <parameter name="event" type="GstEvent*">
+            <warning>missing glib:type-name</warning>
+          </parameter>
+        </parameters>
+      </virtual_method>
       <virtual_method name="SinkQuery" cname="sink_query">
         <return-type type="gboolean"/>
         <parameters>
           </parameter>
         </parameters>
       </virtual_method>
+      <virtual_method name="SinkQueryPreQueue" cname="sink_query_pre_queue">
+        <return-type type="gboolean"/>
+        <parameters>
+          <parameter name="aggregator_pad" type="GstAggregatorPad*"/>
+          <parameter name="query" type="GstQuery*">
+            <warning>missing glib:type-name</warning>
+          </parameter>
+        </parameters>
+      </virtual_method>
       <virtual_method name="SrcActivate" cname="src_activate">
         <return-type type="gboolean"/>
         <parameters>
         <return-type type="guint64"/>
         <parameters/>
       </method>
+      <method name="Negotiate" cname="gst_aggregator_negotiate" version="1.18">
+        <return-type type="gboolean"/>
+        <parameters/>
+      </method>
       <method name="SetLatency" cname="gst_aggregator_set_latency">
         <return-type type="void"/>
         <parameters>
         <return-type type="guint64"/>
         <parameters/>
       </method>
+      <method name="UpdateSegment" cname="gst_aggregator_update_segment" version="1.18">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="segment" type="GstSegment*">
+            <warning>missing glib:type-name</warning>
+          </parameter>
+        </parameters>
+      </method>
       <property name="Latency" cname="latency" type="guint64" readable="true" writeable="true" construct="false" construct-only="false"/>
       <property name="MinUpstreamLatency" cname="min-upstream-latency" type="guint64" readable="true" writeable="true" construct="false" construct-only="false" version="1.16"/>
       <property name="StartTime" cname="start-time" type="guint64" readable="true" writeable="true" construct="false" construct-only="false"/>
+      <property name="StartTimeSelection" cname="start-time-selection" type="GstAggregatorStartTimeSelection" readable="true" writeable="true" construct="false" construct-only="false"/>
       <field cname="parent" access="public" writeable="false" readable="true" is_callback="false" name="Parent" type="GstElement*"/>
       <field cname="srcpad" access="public" writeable="false" readable="true" is_callback="false" name="Srcpad" type="GstPad*"/>
       <field cname="priv" access="private" writeable="false" readable="false" is_callback="false" name="Priv" type="GstAggregatorPrivate*">
       </field>
       <field cname="_gst_reserved" access="private" writeable="false" readable="false" is_callback="false" name="_gstGstReserved" type="gpointer" array="true" array_len="20"/>
     </object>
-    <object name="AggregatorPad" cname="GstAggregatorPad" opaque="false" hidden="false" parent="GstPad">
-      <class_struct cname="GstAggregatorPadClass">
+    <object name="AggregatorPad" cname="GstAggregatorPad" opaque="false" hidden="false" parent="GstPad" version="1.14">
+      <class_struct cname="GstAggregatorPadClass" version="1.14">
         <field cname="parent_class" access="public" writeable="false" readable="true" is_callback="false" name="ParentClass" type="GstPadClass">
           <warning>missing glib:type-name</warning>
         </field>
         <return-type type="guint64"/>
         <parameters/>
       </method>
+      <method name="GetStats" cname="gst_base_sink_get_stats" version="1.18">
+        <return-type type="GstStructure*" owned="true">
+          <warning>missing glib:type-name</warning>
+        </return-type>
+        <parameters/>
+      </method>
       <method name="GetSync" cname="gst_base_sink_get_sync">
         <return-type type="gboolean"/>
         <parameters/>
       <property name="ProcessingDeadline" cname="processing-deadline" type="guint64" readable="true" writeable="true" construct="false" construct-only="false" version="1.16"/>
       <property name="Qos" cname="qos" type="gboolean" readable="true" writeable="true" construct="false" construct-only="false"/>
       <property name="RenderDelay" cname="render-delay" type="guint64" readable="true" writeable="true" construct="false" construct-only="false"/>
+      <property name="Stats" cname="stats" type="GstStructure*" readable="true" writeable="false" construct="false" construct-only="false" version="1.18"/>
       <property name="Sync" cname="sync" type="gboolean" readable="true" writeable="true" construct="false" construct-only="false"/>
       <property name="ThrottleTime" cname="throttle-time" type="guint64" readable="true" writeable="true" construct="false" construct-only="false"/>
       <property name="TsOffset" cname="ts-offset" type="gint64" readable="true" writeable="true" construct="false" construct-only="false"/>
           <warning>missing glib:type-name</warning>
         </return-type>
         <parameters>
-          <parameter name="filter" type="GstCaps*">
+          <parameter allow-none="1" name="filter" type="GstCaps*">
             <warning>missing glib:type-name</warning>
           </parameter>
         </parameters>
         <return-type type="gboolean"/>
         <parameters/>
       </virtual_method>
-      <virtual_method name="Negotiate" cname="negotiate">
+      <virtual_method name="Negotiate" cname="negotiate" version="1.18">
         <return-type type="gboolean"/>
         <parameters/>
       </virtual_method>
         <return-type type="gboolean"/>
         <parameters/>
       </method>
+      <method name="Negotiate" cname="gst_base_src_negotiate" version="1.18">
+        <return-type type="gboolean"/>
+        <parameters/>
+      </method>
       <method name="NewSeamlessSegment" cname="gst_base_src_new_seamless_segment">
         <return-type type="gboolean"/>
         <parameters>
         <return-type type="gboolean"/>
         <parameters/>
       </method>
+      <method name="Reconfigure" cname="gst_base_transform_reconfigure" version="1.18">
+        <return-type type="gboolean"/>
+        <parameters/>
+      </method>
       <method name="ReconfigureSink" cname="gst_base_transform_reconfigure_sink">
         <return-type type="void"/>
         <parameters/>
         <parameters/>
       </method>
     </struct>
-    <struct name="BitWriter" cname="GstBitWriter" opaque="false" hidden="false">
+    <struct name="BitWriter" cname="GstBitWriter" opaque="false" hidden="false" version="1.16">
       <field cname="data" access="public" writeable="true" readable="true" is_callback="false" name="Data" type="guint8"/>
       <field cname="bit_size" access="public" writeable="true" readable="true" is_callback="false" name="BitSize" type="guint"/>
       <field cname="bit_capacity" access="private" writeable="false" readable="false" is_callback="false" name="BitCapacity" type="guint"/>
       </field>
       <field cname="_gst_reserved" access="private" writeable="false" readable="false" is_callback="false" name="_gstGstReserved" type="gpointer" array="true" array_len="4"/>
     </object>
-    <object name="PtpClock" cname="GstPtpClock" opaque="false" hidden="false" parent="GstSystemClock">
+    <object name="PtpClock" cname="GstPtpClock" opaque="false" hidden="false" parent="GstSystemClock" version="1.6">
       <class_struct cname="GstPtpClockClass">
         <field cname="parent_class" access="public" writeable="false" readable="true" is_callback="false" name="ParentClass" type="GstSystemClockClass">
           <warning>missing glib:type-name</warning>
           <parameter name="error" type="GError**"/>
         </parameters>
       </method>
+      <method name="NetUtilsSetSocketTos" cname="gst_net_utils_set_socket_tos" shared="true" version="1.18">
+        <return-type type="gboolean"/>
+        <parameters>
+          <parameter name="socket" type="GSocket*"/>
+          <parameter name="qos_dscp" type="gint"/>
+        </parameters>
+      </method>
       <method name="PtpDeinit" cname="gst_ptp_deinit" shared="true" version="1.6">
         <return-type type="void"/>
       </method>
           <parameter name="info" type="GstDiscovererInfo*"/>
         </parameters>
       </method>
-      <method name="Copy" cname="gst_encoding_profile_copy">
+      <method name="Copy" cname="gst_encoding_profile_copy" version="1.12">
         <return-type type="GstEncodingProfile*" owned="true"/>
         <parameters/>
       </method>
         </return-type>
         <parameters/>
       </method>
+      <method name="GetSingleSegment" cname="gst_encoding_profile_get_single_segment" version="1.18">
+        <return-type type="gboolean"/>
+        <parameters/>
+      </method>
       <method name="GetTypeNick" cname="gst_encoding_profile_get_type_nick">
         <return-type type="const-gchar*"/>
         <parameters/>
           <parameter allow-none="1" name="description" type="const-gchar*"/>
         </parameters>
       </method>
-      <method name="SetEnabled" cname="gst_encoding_profile_set_enabled">
+      <method name="SetEnabled" cname="gst_encoding_profile_set_enabled" version="1.6">
         <return-type type="void"/>
         <parameters>
           <parameter name="enabled" type="gboolean"/>
           </parameter>
         </parameters>
       </method>
+      <method name="SetSingleSegment" cname="gst_encoding_profile_set_single_segment" version="1.18">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="single_segment" type="gboolean"/>
+        </parameters>
+      </method>
       <property name="RestrictionCaps" cname="restriction-caps" type="GstCaps*" readable="true" writeable="true" construct="false" construct-only="false"/>
     </object>
     <object name="EncodingTarget" cname="GstEncodingTarget" opaque="false" hidden="false" parent="GObject">
           <parameter name="len" type="guint" array_index="1"/>
         </parameters>
       </method>
-      <method name="CodecUtilsAacGetChannels" cname="gst_codec_utils_aac_get_channels" shared="true">
+      <method name="CodecUtilsAacGetChannels" cname="gst_codec_utils_aac_get_channels" shared="true" version="1.10">
         <return-type type="guint"/>
         <parameters>
           <parameter name="audio_config" type="const guint8*" array="true" array_length_param_index="1"/>
           <parameter name="len" type="guint"/>
         </parameters>
       </method>
-      <method name="CodecUtilsAacGetSampleRate" cname="gst_codec_utils_aac_get_sample_rate" shared="true">
+      <method name="CodecUtilsAacGetSampleRate" cname="gst_codec_utils_aac_get_sample_rate" shared="true" version="1.10">
         <return-type type="guint"/>
         <parameters>
           <parameter name="audio_config" type="const guint8*" array="true" array_length_param_index="1"/>
           <parameter name="len" type="guint"/>
         </parameters>
       </method>
-      <method name="CodecUtilsH265CapsSetLevelTierAndProfile" cname="gst_codec_utils_h265_caps_set_level_tier_and_profile" shared="true">
+      <method name="CodecUtilsH265CapsSetLevelTierAndProfile" cname="gst_codec_utils_h265_caps_set_level_tier_and_profile" shared="true" version="1.4">
         <return-type type="gboolean"/>
         <parameters>
           <parameter name="caps" type="GstCaps*">
           <parameter name="len" type="guint" array_index="1"/>
         </parameters>
       </method>
-      <method name="CodecUtilsH265GetLevel" cname="gst_codec_utils_h265_get_level" shared="true">
+      <method name="CodecUtilsH265GetLevel" cname="gst_codec_utils_h265_get_level" shared="true" version="1.4">
         <return-type type="const-gchar*"/>
         <parameters>
           <parameter name="profile_tier_level" type="const guint8*" array="true" array_length_param_index="1"/>
           <parameter name="len" type="guint"/>
         </parameters>
       </method>
-      <method name="CodecUtilsH265GetLevelIdc" cname="gst_codec_utils_h265_get_level_idc" shared="true">
+      <method name="CodecUtilsH265GetLevelIdc" cname="gst_codec_utils_h265_get_level_idc" shared="true" version="1.4">
         <return-type type="guint8"/>
         <parameters>
           <parameter name="level" type="const-gchar*"/>
         </parameters>
       </method>
-      <method name="CodecUtilsH265GetProfile" cname="gst_codec_utils_h265_get_profile" shared="true">
+      <method name="CodecUtilsH265GetProfile" cname="gst_codec_utils_h265_get_profile" shared="true" version="1.4">
         <return-type type="const-gchar*"/>
         <parameters>
           <parameter name="profile_tier_level" type="const guint8*" array="true" array_length_param_index="1"/>
           <parameter name="len" type="guint"/>
         </parameters>
       </method>
-      <method name="CodecUtilsH265GetTier" cname="gst_codec_utils_h265_get_tier" shared="true">
+      <method name="CodecUtilsH265GetTier" cname="gst_codec_utils_h265_get_tier" shared="true" version="1.4">
         <return-type type="const-gchar*"/>
         <parameters>
           <parameter name="profile_tier_level" type="const guint8*" array="true" array_length_param_index="1"/>
       <member cname="GST_RTCP_PSFB_TYPE_TSTR" name="PsfbTypeTstr" value="5"/>
       <member cname="GST_RTCP_PSFB_TYPE_TSTN" name="PsfbTypeTstn" value="6"/>
       <member cname="GST_RTCP_PSFB_TYPE_VBCN" name="PsfbTypeVbcn" value="7"/>
+      <member cname="GST_RTCP_RTPFB_TYPE_TWCC" name="RtpfbTypeTwcc" value="15"/>
       <member cname="GST_RTCP_PSFB_TYPE_AFB" name="PsfbTypeAfb" value="15"/>
     </enum>
     <enum name="RTCPSDESType" cname="GstRTCPSDESType" type="enum" gtype="gst_rtcpsdes_type_get_type">
           <parameter name="enable" type="gboolean"/>
         </parameters>
       </method>
+      <property name="MaxReorder" cname="max-reorder" type="gint" readable="true" writeable="true" construct="false" construct-only="false" version="1.18"/>
       <property name="SourceInfo" cname="source-info" type="gboolean" readable="true" writeable="true" construct="false" construct-only="false" version="1.16"/>
       <property name="Stats" cname="stats" type="GstStructure*" readable="true" writeable="false" construct="false" construct-only="false"/>
       <field cname="parent" access="public" writeable="false" readable="true" is_callback="false" name="Parent" type="GstElement*"/>
       <property name="PerfectRtptime" cname="perfect-rtptime" type="gboolean" readable="true" writeable="true" construct="false" construct-only="false"/>
       <property name="Pt" cname="pt" type="guint" readable="true" writeable="true" construct="false" construct-only="false"/>
       <property name="PtimeMultiple" cname="ptime-multiple" type="gint64" readable="true" writeable="true" construct="false" construct-only="false"/>
+      <property name="ScaleRtptime" cname="scale-rtptime" type="gboolean" readable="true" writeable="true" construct="false" construct-only="false" version="1.18"/>
       <property name="Seqnum" cname="seqnum" type="guint" readable="true" writeable="false" construct="false" construct-only="false"/>
       <property name="SeqnumOffset" cname="seqnum-offset" type="gint" readable="true" writeable="true" construct="false" construct-only="false"/>
       <property name="SourceInfo" cname="source-info" type="gboolean" readable="true" writeable="true" construct="false" construct-only="false" version="1.16"/>
       <property name="Stats" cname="stats" type="GstStructure*" readable="true" writeable="false" construct="false" construct-only="false"/>
       <property name="Timestamp" cname="timestamp" type="guint" readable="true" writeable="false" construct="false" construct-only="false"/>
       <property name="TimestampOffset" cname="timestamp-offset" type="guint" readable="true" writeable="true" construct="false" construct-only="false"/>
+      <property name="TwccExtId" cname="twcc-ext-id" type="guint" readable="true" writeable="true" construct="false" construct-only="false" version="1.18"/>
       <field cname="element" access="public" writeable="false" readable="true" is_callback="false" name="Element" type="GstElement*"/>
       <field cname="sinkpad" access="private" writeable="false" readable="false" is_callback="false" name="Sinkpad" type="GstPad*"/>
       <field cname="srcpad" access="private" writeable="false" readable="false" is_callback="false" name="Srcpad" type="GstPad*"/>
       </method>
     </struct>
     <struct name="RTCPPacket" cname="GstRTCPPacket" opaque="false" hidden="false">
-      <field cname="rtcp" access="public" writeable="true" readable="true" is_callback="false" name="Rtcp" type="GstRTCPBuffer*" array_index="6">
+      <field cname="rtcp" access="public" writeable="true" readable="true" is_callback="false" name="Rtcp" type="GstRTCPBuffer*">
         <warning>missing glib:type-name</warning>
       </field>
       <field cname="offset" access="public" writeable="true" readable="true" is_callback="false" name="Offset" type="guint"/>
     <struct name="RTPBaseDepayloadPrivate" cname="GstRTPBaseDepayloadPrivate" opaque="true" hidden="true"/>
     <struct name="RTPBasePayloadPrivate" cname="GstRTPBasePayloadPrivate" opaque="true" hidden="true"/>
     <struct name="RTPBuffer" cname="GstRTPBuffer" opaque="false" hidden="false">
-      <field cname="buffer" access="public" writeable="true" readable="true" is_callback="false" name="Buffer" type="GstBuffer*">
+      <field cname="buffer" access="public" writeable="true" readable="true" is_callback="false" name="Buffer" type="GstBuffer*" array_index="1">
         <warning>missing glib:type-name</warning>
       </field>
-      <field cname="state" access="public" writeable="true" readable="true" is_callback="false" name="State" type="guint" array_index="1"/>
-      <field cname="data" access="public" writeable="true" readable="true" is_callback="false" name="Data" type="gpointer" array_index="4" array="true" array_len="4"/>
-      <field cname="size" access="public" writeable="true" readable="true" is_callback="false" name="Size" type="gsize" array_index="3" array="true" array_len="4"/>
+      <field cname="state" access="public" writeable="true" readable="true" is_callback="false" name="State" type="guint" array_index="4"/>
+      <field cname="data" access="public" writeable="true" readable="true" is_callback="false" name="Data" type="gpointer" array_index="3" array="true" array_len="4"/>
+      <field cname="size" access="public" writeable="true" readable="true" is_callback="false" name="Size" type="gsize" array_index="4" array="true" array_len="4"/>
       <field cname="map" access="public" writeable="true" readable="true" is_callback="false" name="Map" type="GstMapInfo" array="true" array_len="4"/>
       <method name="AddExtensionOnebyteHeader" cname="gst_rtp_buffer_add_extension_onebyte_header">
         <return-type type="gboolean"/>
           <parameter name="timestamp" type="guint32"/>
         </parameters>
       </method>
+      <method name="GetExtensionOnebyteHeaderFromBytes" cname="gst_rtp_buffer_get_extension_onebyte_header_from_bytes" shared="true" version="1.18">
+        <return-type type="gboolean"/>
+        <parameters>
+          <parameter name="bytes" type="GBytes*">
+            <warning>missing glib:type-name</warning>
+          </parameter>
+          <parameter name="bit_pattern" type="guint16"/>
+          <parameter name="id" type="guint8"/>
+          <parameter name="nth" type="guint"/>
+          <parameter name="data" type="gpointer*" pass_as="out" array="true" array_length_param_index="5"/>
+          <parameter name="size" type="guint*" owned="true" pass_as="out" array_index="4"/>
+        </parameters>
+      </method>
       <method name="Map" cname="gst_rtp_buffer_map" shared="true">
         <return-type type="gboolean"/>
         <parameters>
           <parameter name="timestamp" type="guint32"/>
         </parameters>
       </method>
+      <method name="RtpBufferGetExtensionOnebyteHeaderFromBytes" cname="gst_rtp_buffer_get_extension_onebyte_header_from_bytes" shared="true" version="1.18">
+        <return-type type="gboolean"/>
+        <parameters>
+          <parameter name="bytes" type="GBytes*">
+            <warning>missing glib:type-name</warning>
+          </parameter>
+          <parameter name="bit_pattern" type="guint16"/>
+          <parameter name="id" type="guint8"/>
+          <parameter name="nth" type="guint"/>
+          <parameter name="data" type="gpointer*" pass_as="out" array="true" array_length_param_index="5"/>
+          <parameter name="size" type="guint*" owned="true" pass_as="out" array_index="4"/>
+        </parameters>
+      </method>
       <method name="RtpBufferMap" cname="gst_rtp_buffer_map" shared="true">
         <return-type type="gboolean"/>
         <parameters>
         <return-type type="GstRTSPResult"/>
         <parameters/>
       </method>
-      <method name="Connect" cname="gst_rtsp_connection_connect">
+      <method name="Connect" cname="gst_rtsp_connection_connect" deprecated="true" deprecated-version="1.18">
         <return-type type="GstRTSPResult"/>
         <parameters>
           <parameter name="timeout" type="GTimeVal*">
           </parameter>
         </parameters>
       </method>
-      <method name="ConnectWithResponse" cname="gst_rtsp_connection_connect_with_response">
+      <method name="ConnectUsec" cname="gst_rtsp_connection_connect_usec" version="1.18">
+        <return-type type="GstRTSPResult"/>
+        <parameters>
+          <parameter name="timeout" type="gint64"/>
+        </parameters>
+      </method>
+      <method name="ConnectWithResponse" cname="gst_rtsp_connection_connect_with_response" version="1.8" deprecated="true" deprecated-version="1.18">
         <return-type type="GstRTSPResult"/>
         <parameters>
           <parameter name="timeout" type="GTimeVal*">
           </parameter>
         </parameters>
       </method>
+      <method name="ConnectWithResponseUsec" cname="gst_rtsp_connection_connect_with_response_usec" version="1.18">
+        <return-type type="GstRTSPResult"/>
+        <parameters>
+          <parameter name="timeout" type="gint64"/>
+          <parameter name="response" type="GstRTSPMessage*">
+            <warning>missing glib:type-name</warning>
+          </parameter>
+        </parameters>
+      </method>
       <method name="DoTunnel" cname="gst_rtsp_connection_do_tunnel">
         <return-type type="GstRTSPResult"/>
         <parameters>
         <return-type type="gboolean"/>
         <parameters/>
       </method>
-      <method name="NextTimeout" cname="gst_rtsp_connection_next_timeout">
+      <method name="NextTimeout" cname="gst_rtsp_connection_next_timeout" deprecated="true" deprecated-version="1.18">
         <return-type type="GstRTSPResult"/>
         <parameters>
           <parameter name="timeout" type="GTimeVal*">
           </parameter>
         </parameters>
       </method>
-      <method name="Poll" cname="gst_rtsp_connection_poll">
+      <method name="NextTimeoutUsec" cname="gst_rtsp_connection_next_timeout_usec" version="1.18">
+        <return-type type="gint64"/>
+        <parameters/>
+      </method>
+      <method name="Poll" cname="gst_rtsp_connection_poll" deprecated="true" deprecated-version="1.18">
         <return-type type="GstRTSPResult"/>
         <parameters>
           <parameter name="events" type="GstRTSPEvent"/>
           </parameter>
         </parameters>
       </method>
-      <method name="Read" cname="gst_rtsp_connection_read">
+      <method name="PollUsec" cname="gst_rtsp_connection_poll_usec" version="1.18">
+        <return-type type="GstRTSPResult"/>
+        <parameters>
+          <parameter name="events" type="GstRTSPEvent"/>
+          <parameter name="revents" type="GstRTSPEvent"/>
+          <parameter name="timeout" type="gint64"/>
+        </parameters>
+      </method>
+      <method name="Read" cname="gst_rtsp_connection_read" deprecated="true" deprecated-version="1.18">
         <return-type type="GstRTSPResult"/>
         <parameters>
           <parameter name="data" type="guint8"/>
           </parameter>
         </parameters>
       </method>
-      <method name="Receive" cname="gst_rtsp_connection_receive">
+      <method name="ReadUsec" cname="gst_rtsp_connection_read_usec" version="1.18">
+        <return-type type="GstRTSPResult"/>
+        <parameters>
+          <parameter name="data" type="guint8"/>
+          <parameter name="size" type="guint"/>
+          <parameter name="timeout" type="gint64"/>
+        </parameters>
+      </method>
+      <method name="Receive" cname="gst_rtsp_connection_receive" deprecated="true" deprecated-version="1.18">
         <return-type type="GstRTSPResult"/>
         <parameters>
           <parameter name="message" type="GstRTSPMessage*">
           </parameter>
         </parameters>
       </method>
+      <method name="ReceiveUsec" cname="gst_rtsp_connection_receive_usec" version="1.18">
+        <return-type type="GstRTSPResult"/>
+        <parameters>
+          <parameter name="message" type="GstRTSPMessage*">
+            <warning>missing glib:type-name</warning>
+          </parameter>
+          <parameter name="timeout" type="gint64"/>
+        </parameters>
+      </method>
       <method name="ResetTimeout" cname="gst_rtsp_connection_reset_timeout">
         <return-type type="GstRTSPResult"/>
         <parameters/>
       </method>
-      <method name="Send" cname="gst_rtsp_connection_send">
+      <method name="Send" cname="gst_rtsp_connection_send" deprecated="true" deprecated-version="1.18">
         <return-type type="GstRTSPResult"/>
         <parameters>
           <parameter name="message" type="GstRTSPMessage*">
           </parameter>
         </parameters>
       </method>
-      <method name="SendMessages" cname="gst_rtsp_connection_send_messages" version="1.16">
+      <method name="SendMessages" cname="gst_rtsp_connection_send_messages" version="1.16" deprecated="true" deprecated-version="1.18">
         <return-type type="GstRTSPResult"/>
         <parameters>
           <parameter name="messages" type="GstRTSPMessage*" array="true" array_length_param_index="1"/>
           </parameter>
         </parameters>
       </method>
+      <method name="SendMessagesUsec" cname="gst_rtsp_connection_send_messages_usec" version="1.18">
+        <return-type type="GstRTSPResult"/>
+        <parameters>
+          <parameter name="messages" type="GstRTSPMessage*" array="true" array_length_param_index="1"/>
+          <parameter name="n_messages" type="guint"/>
+          <parameter name="timeout" type="gint64"/>
+        </parameters>
+      </method>
+      <method name="SendUsec" cname="gst_rtsp_connection_send_usec" version="1.18">
+        <return-type type="GstRTSPResult"/>
+        <parameters>
+          <parameter name="message" type="GstRTSPMessage*">
+            <warning>missing glib:type-name</warning>
+          </parameter>
+          <parameter name="timeout" type="gint64"/>
+        </parameters>
+      </method>
       <method name="SetAcceptCertificateFunc" cname="gst_rtsp_connection_set_accept_certificate_func" version="1.14">
         <return-type type="void"/>
         <parameters>
           <parameter name="value" type="const-gchar*"/>
         </parameters>
       </method>
+      <method name="SetContentLengthLimit" cname="gst_rtsp_connection_set_content_length_limit" version="1.18">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="limit" type="guint"/>
+        </parameters>
+      </method>
       <method name="SetHttpMode" cname="gst_rtsp_connection_set_http_mode">
         <return-type type="void"/>
         <parameters>
           <parameter name="tunneled" type="gboolean"/>
         </parameters>
       </method>
-      <method name="Write" cname="gst_rtsp_connection_write">
+      <method name="Write" cname="gst_rtsp_connection_write" deprecated="true" deprecated-version="1.18">
         <return-type type="GstRTSPResult"/>
         <parameters>
           <parameter name="data" type="guint8"/>
           </parameter>
         </parameters>
       </method>
+      <method name="WriteUsec" cname="gst_rtsp_connection_write_usec" version="1.18">
+        <return-type type="GstRTSPResult"/>
+        <parameters>
+          <parameter name="data" type="guint8"/>
+          <parameter name="size" type="guint"/>
+          <parameter name="timeout" type="gint64"/>
+        </parameters>
+      </method>
       <method name="Accept" cname="gst_rtsp_connection_accept" shared="true">
         <return-type type="GstRTSPResult"/>
         <parameters>
         <return-type type="gchar*" owned="true"/>
         <parameters/>
       </method>
+      <method name="GetRequestUriWithControl" cname="gst_rtsp_url_get_request_uri_with_control" version="1.18">
+        <return-type type="gchar*" owned="true"/>
+        <parameters>
+          <parameter name="control_path" type="const-gchar*"/>
+        </parameters>
+      </method>
       <method name="SetPort" cname="gst_rtsp_url_set_port">
         <return-type type="GstRTSPResult"/>
         <parameters>
         <return-type type="void"/>
         <parameters/>
       </method>
-      <method name="WaitBacklog" cname="gst_rtsp_watch_wait_backlog" version="1.4">
+      <method name="WaitBacklog" cname="gst_rtsp_watch_wait_backlog" version="1.4" deprecated="true" deprecated-version="1.18">
         <return-type type="GstRTSPResult"/>
         <parameters>
           <parameter name="timeout" type="GTimeVal*">
           </parameter>
         </parameters>
       </method>
+      <method name="WaitBacklogUsec" cname="gst_rtsp_watch_wait_backlog_usec" version="1.18">
+        <return-type type="GstRTSPResult"/>
+        <parameters>
+          <parameter name="timeout" type="gint64"/>
+        </parameters>
+      </method>
       <method name="WriteData" cname="gst_rtsp_watch_write_data">
         <return-type type="GstRTSPResult"/>
         <parameters>
       <method name="GetType" cname="gst_mikey_message_get_type" shared="true">
         <return-type type="GType"/>
       </method>
-      <field cname="mini_object" access="private" writeable="false" readable="false" is_callback="false" name="MiniObject" type="GstMiniObject" array_index="2">
+      <field cname="mini_object" access="private" writeable="false" readable="false" is_callback="false" name="MiniObject" type="GstMiniObject">
         <warning>missing glib:type-name</warning>
       </field>
       <field cname="version" access="public" writeable="true" readable="true" is_callback="false" name="Version" type="guint8"/>
       <method name="GetType" cname="gst_mikey_payload_get_type" shared="true">
         <return-type type="GType"/>
       </method>
-      <field cname="mini_object" access="private" writeable="false" readable="false" is_callback="false" name="MiniObject" type="GstMiniObject" array_index="7">
+      <field cname="mini_object" access="private" writeable="false" readable="false" is_callback="false" name="MiniObject" type="GstMiniObject" array_index="3">
         <warning>missing glib:type-name</warning>
       </field>
-      <field cname="type" access="public" writeable="true" readable="true" is_callback="false" name="Type" type="GstMIKEYPayloadType" array_index="3"/>
+      <field cname="type" access="public" writeable="true" readable="true" is_callback="false" name="Type" type="GstMIKEYPayloadType"/>
       <field cname="len" access="public" writeable="true" readable="true" is_callback="false" name="Len" type="guint"/>
       <constructor cname="gst_mikey_payload_new" version="1.4">
         <parameters>
       <field cname="salt_data" access="public" writeable="true" readable="true" is_callback="false" name="SaltData" type="guint8"/>
       <field cname="kv_type" access="public" writeable="true" readable="true" is_callback="false" name="KvType" type="GstMIKEYKVType"/>
       <field cname="kv_len" access="public" writeable="true" readable="true" is_callback="false" name="KvLen" type="guint8" array="true" array_len="2"/>
-      <field cname="kv_data" access="public" writeable="true" readable="true" is_callback="false" name="KvData" type="guint8" array="true" array_len="2"/>
+      <field cname="kv_data" access="public" writeable="true" readable="true" is_callback="false" name="KvData" type="guint8*" array="true" array_len="2"/>
     </struct>
     <struct name="MIKEYPayloadPKE" cname="GstMIKEYPayloadPKE" opaque="false" hidden="false">
       <field cname="pt" access="public" writeable="true" readable="true" is_callback="false" name="Pt" type="GstMIKEYPayload">
       </method>
     </object>
     <object name="Constants" cname="GstTagConstants" opaque="true">
+      <constant value="chromaprint-fingerprint" ctype="gchar*" gtype="gchar*" name="TAG_ACOUSTID_FINGERPRINT" version="1.18"/>
+      <constant value="acoustid-id" ctype="gchar*" gtype="gchar*" name="TAG_ACOUSTID_ID" version="1.18"/>
       <constant value="capturing-contrast" ctype="gchar*" gtype="gchar*" name="TAG_CAPTURING_CONTRAST"/>
       <constant value="capturing-digital-zoom-ratio" ctype="gchar*" gtype="gchar*" name="TAG_CAPTURING_DIGITAL_ZOOM_RATIO"/>
       <constant value="capturing-exposure-compensation" ctype="gchar*" gtype="gchar*" name="TAG_CAPTURING_EXPOSURE_COMPENSATION"/>
       <constant value="musicbrainz-albumartistid" ctype="gchar*" gtype="gchar*" name="TAG_MUSICBRAINZ_ALBUMARTISTID"/>
       <constant value="musicbrainz-albumid" ctype="gchar*" gtype="gchar*" name="TAG_MUSICBRAINZ_ALBUMID"/>
       <constant value="musicbrainz-artistid" ctype="gchar*" gtype="gchar*" name="TAG_MUSICBRAINZ_ARTISTID"/>
+      <constant value="musicbrainz-releasegroupid" ctype="gchar*" gtype="gchar*" name="TAG_MUSICBRAINZ_RELEASEGROUPID" version="1.18"/>
+      <constant value="musicbrainz-releasetrackid" ctype="gchar*" gtype="gchar*" name="TAG_MUSICBRAINZ_RELEASETRACKID" version="1.18"/>
       <constant value="musicbrainz-trackid" ctype="gchar*" gtype="gchar*" name="TAG_MUSICBRAINZ_TRACKID"/>
       <constant value="musicbrainz-trmid" ctype="gchar*" gtype="gchar*" name="TAG_MUSICBRAINZ_TRMID"/>
     </object>
       <member cname="GST_NAVIGATION_EVENT_MOUSE_BUTTON_RELEASE" name="MouseButtonRelease" value="4"/>
       <member cname="GST_NAVIGATION_EVENT_MOUSE_MOVE" name="MouseMove" value="5"/>
       <member cname="GST_NAVIGATION_EVENT_COMMAND" name="Command" value="6"/>
+      <member cname="GST_NAVIGATION_EVENT_MOUSE_SCROLL" name="MouseScroll" value="7"/>
     </enum>
     <enum name="NavigationMessageType" cname="GstNavigationMessageType" type="enum" gtype="gst_navigation_message_type_get_type">
       <member cname="GST_NAVIGATION_MESSAGE_INVALID" name="Invalid" value="0"/>
       <member cname="GST_NAVIGATION_QUERY_COMMANDS" name="Commands" value="1"/>
       <member cname="GST_NAVIGATION_QUERY_ANGLES" name="Angles" value="2"/>
     </enum>
+    <enum name="VideoAFDSpec" cname="GstVideoAFDSpec" type="enum" gtype="gst_video_afd_spec_get_type" version="1.18">
+      <member cname="GST_VIDEO_AFD_SPEC_DVB_ETSI" name="DvbEtsi" value="0"/>
+      <member cname="GST_VIDEO_AFD_SPEC_ATSC_A53" name="AtscA53" value="1"/>
+      <member cname="GST_VIDEO_AFD_SPEC_SMPTE_ST2016_1" name="SmpteSt20161" value="2"/>
+    </enum>
+    <enum name="VideoAFDValue" cname="GstVideoAFDValue" type="enum" gtype="gst_video_afd_value_get_type" version="1.18">
+      <member cname="GST_VIDEO_AFD_UNAVAILABLE" name="Unavailable" value="0"/>
+      <member cname="GST_VIDEO_AFD_16_9_TOP_ALIGNED" name="_16169TopAligned" value="2"/>
+      <member cname="GST_VIDEO_AFD_14_9_TOP_ALIGNED" name="_14149TopAligned" value="3"/>
+      <member cname="GST_VIDEO_AFD_GREATER_THAN_16_9" name="GreaterThan169" value="4"/>
+      <member cname="GST_VIDEO_AFD_4_3_FULL_16_9_FULL" name="_443Full169Full" value="8"/>
+      <member cname="GST_VIDEO_AFD_4_3_FULL_4_3_PILLAR" name="_443Full43Pillar" value="9"/>
+      <member cname="GST_VIDEO_AFD_16_9_LETTER_16_9_FULL" name="_16169Letter169Full" value="10"/>
+      <member cname="GST_VIDEO_AFD_14_9_LETTER_14_9_PILLAR" name="_14149Letter149Pillar" value="11"/>
+      <member cname="GST_VIDEO_AFD_4_3_FULL_14_9_CENTER" name="_443Full149Center" value="13"/>
+      <member cname="GST_VIDEO_AFD_16_9_LETTER_14_9_CENTER" name="_16169Letter149Center" value="14"/>
+      <member cname="GST_VIDEO_AFD_16_9_LETTER_4_3_CENTER" name="_16169Letter43Center" value="15"/>
+    </enum>
     <enum name="VideoAlphaMode" cname="GstVideoAlphaMode" type="enum" gtype="gst_video_alpha_mode_get_type" version="1.6">
       <member cname="GST_VIDEO_ALPHA_MODE_COPY" name="Copy" value="0"/>
       <member cname="GST_VIDEO_ALPHA_MODE_SET" name="Set" value="1"/>
       <member cname="GST_VIDEO_ALPHA_MODE_MULT" name="Mult" value="2"/>
     </enum>
-    <enum name="VideoAncillaryDID" cname="GstVideoAncillaryDID" type="enum" gtype="gst_video_ancillary_did_get_type">
+    <enum name="VideoAncillaryDID" cname="GstVideoAncillaryDID" type="enum" gtype="gst_video_ancillary_did_get_type" version="1.16">
       <member cname="GST_VIDEO_ANCILLARY_DID_UNDEFINED" name="Undefined" value="0"/>
       <member cname="GST_VIDEO_ANCILLARY_DID_DELETION" name="Deletion" value="128"/>
       <member cname="GST_VIDEO_ANCILLARY_DID_HANC_3G_AUDIO_DATA_FIRST" name="Hanc3gAudioDataFirst" value="160"/>
       <member cname="GST_VIDEO_ANCILLARY_DID_HANC_SDTV_AUDIO_DATA_2_LAST" name="HancSdtvAudioData2Last" value="255"/>
     </enum>
     <enum name="VideoAncillaryDID16" cname="GstVideoAncillaryDID16" type="enum" gtype="gst_video_ancillary_di_d16_get_type" version="1.16">
-      <member cname="GST_VIDEO_ANCILLARY_DID16_S334_EIA_708" name="_708" value="24833"/>
-      <member cname="GST_VIDEO_ANCILLARY_DID16_S334_EIA_608" name="_608" value="24834"/>
+      <member cname="GST_VIDEO_ANCILLARY_DID16_S2016_3_AFD_BAR" name="S20163AfdBar" value="16645"/>
+      <member cname="GST_VIDEO_ANCILLARY_DID16_S334_EIA_708" name="S334Eia708" value="24833"/>
+      <member cname="GST_VIDEO_ANCILLARY_DID16_S334_EIA_608" name="S334Eia608" value="24834"/>
     </enum>
     <enum name="VideoCaptionType" cname="GstVideoCaptionType" type="enum" gtype="gst_video_caption_type_get_type" version="1.16">
       <member cname="GST_VIDEO_CAPTION_TYPE_UNKNOWN" name="Unknown" value="0"/>
       <member cname="GST_VIDEO_FORMAT_Y410" name="Y410" value="83"/>
       <member cname="GST_VIDEO_FORMAT_VUYA" name="Vuya" value="84"/>
       <member cname="GST_VIDEO_FORMAT_BGR10A2_LE" name="Bgr10a2Le" value="85"/>
+      <member cname="GST_VIDEO_FORMAT_RGB10A2_LE" name="Rgb10a2Le" value="86"/>
+      <member cname="GST_VIDEO_FORMAT_Y444_16BE" name="Y44416be" value="87"/>
+      <member cname="GST_VIDEO_FORMAT_Y444_16LE" name="Y44416le" value="88"/>
+      <member cname="GST_VIDEO_FORMAT_P016_BE" name="P016Be" value="89"/>
+      <member cname="GST_VIDEO_FORMAT_P016_LE" name="P016Le" value="90"/>
+      <member cname="GST_VIDEO_FORMAT_P012_BE" name="P012Be" value="91"/>
+      <member cname="GST_VIDEO_FORMAT_P012_LE" name="P012Le" value="92"/>
+      <member cname="GST_VIDEO_FORMAT_Y212_BE" name="Y212Be" value="93"/>
+      <member cname="GST_VIDEO_FORMAT_Y212_LE" name="Y212Le" value="94"/>
+      <member cname="GST_VIDEO_FORMAT_Y412_BE" name="Y412Be" value="95"/>
+      <member cname="GST_VIDEO_FORMAT_Y412_LE" name="Y412Le" value="96"/>
     </enum>
     <enum name="VideoGLTextureOrientation" cname="GstVideoGLTextureOrientation" type="enum">
       <member cname="GST_VIDEO_GL_TEXTURE_ORIENTATION_X_NORMAL_Y_NORMAL" name="NormalYNormal" value="0"/>
       <member cname="GST_VIDEO_TRANSFER_LOG316" name="Log316" value="10"/>
       <member cname="GST_VIDEO_TRANSFER_BT2020_12" name="Bt202012" value="11"/>
       <member cname="GST_VIDEO_TRANSFER_ADOBERGB" name="Adobergb" value="12"/>
+      <member cname="GST_VIDEO_TRANSFER_BT2020_10" name="Bt202010" value="13"/>
+      <member cname="GST_VIDEO_TRANSFER_SMPTE2084" name="Smpte2084" value="14"/>
+      <member cname="GST_VIDEO_TRANSFER_ARIB_STD_B67" name="AribStdB67" value="15"/>
     </enum>
     <enum name="VideoVBIParserResult" cname="GstVideoVBIParserResult" type="enum" gtype="gst_video_vbi_parser_result_get_type" version="1.16">
       <member cname="GST_VIDEO_VBI_PARSER_RESULT_DONE" name="Done" value="0"/>
       <member cname="GST_VIDEO_VBI_PARSER_RESULT_ERROR" name="Error" value="2"/>
     </enum>
     <enum name="VideoBufferFlags" cname="GstVideoBufferFlags" type="flags" gtype="gst_video_buffer_flags_get_type">
+      <member cname="GST_VIDEO_BUFFER_FLAG_MARKER" name="Marker" value="512"/>
       <member cname="GST_VIDEO_BUFFER_FLAG_INTERLACED" name="Interlaced" value="1048576"/>
       <member cname="GST_VIDEO_BUFFER_FLAG_TFF" name="Tff" value="2097152"/>
       <member cname="GST_VIDEO_BUFFER_FLAG_RFF" name="Rff" value="4194304"/>
       <member cname="GST_VIDEO_SCALER_FLAG_NONE" name="None" value="0"/>
       <member cname="GST_VIDEO_SCALER_FLAG_INTERLACED" name="Interlaced" value="1"/>
     </enum>
-    <enum name="VideoTimeCodeFlags" cname="GstVideoTimeCodeFlags" type="flags" version="1.10">
+    <enum name="VideoTimeCodeFlags" cname="GstVideoTimeCodeFlags" type="flags" gtype="gst_video_time_code_flags_get_type" version="1.10">
       <member cname="GST_VIDEO_TIME_CODE_FLAGS_NONE" name="None" value="0"/>
       <member cname="GST_VIDEO_TIME_CODE_FLAGS_DROP_FRAME" name="DropFrame" value="1"/>
       <member cname="GST_VIDEO_TIME_CODE_FLAGS_INTERLACED" name="Interlaced" value="2"/>
           <parameter allow-none="1" name="y" type="gdouble*" owned="true" pass_as="out"/>
         </parameters>
       </method>
+      <method name="EventParseMouseScrollEvent" cname="gst_navigation_event_parse_mouse_scroll_event" shared="true" version="1.18">
+        <return-type type="gboolean"/>
+        <parameters>
+          <parameter name="event" type="GstEvent*">
+            <warning>missing glib:type-name</warning>
+          </parameter>
+          <parameter allow-none="1" name="x" type="gdouble*" owned="true" pass_as="out"/>
+          <parameter allow-none="1" name="y" type="gdouble*" owned="true" pass_as="out"/>
+          <parameter allow-none="1" name="delta_x" type="gdouble*" owned="true" pass_as="out"/>
+          <parameter allow-none="1" name="delta_y" type="gdouble*" owned="true" pass_as="out"/>
+        </parameters>
+      </method>
       <method name="MessageGetType" cname="gst_navigation_message_get_type" shared="true">
         <return-type type="GstNavigationMessageType"/>
         <parameters>
           <parameter name="y" type="gdouble"/>
         </parameters>
       </method>
+      <method name="SendMouseScrollEvent" cname="gst_navigation_send_mouse_scroll_event" version="1.18">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="x" type="gdouble"/>
+          <parameter name="y" type="gdouble"/>
+          <parameter name="delta_x" type="gdouble"/>
+          <parameter name="delta_y" type="gdouble"/>
+        </parameters>
+      </method>
     </interface>
     <interface name="VideoDirection" cname="GstVideoDirection" opaque="false" hidden="false" version="1.10">
       <class_struct cname="GstVideoDirectionInterface" version="1.10">
       <method name="GetType" cname="gst_video_overlay_get_type" shared="true">
         <return-type type="GType"/>
       </method>
-      <method name="InstallProperties" cname="gst_video_overlay_install_properties" shared="true">
+      <method name="InstallProperties" cname="gst_video_overlay_install_properties" shared="true" version="1.14">
         <return-type type="void"/>
         <parameters>
           <parameter name="oclass" type="GObjectClass*">
           <parameter name="last_prop_id" type="gint"/>
         </parameters>
       </method>
-      <method name="SetProperty" cname="gst_video_overlay_set_property" shared="true">
+      <method name="SetProperty" cname="gst_video_overlay_set_property" shared="true" version="1.14">
         <return-type type="gboolean"/>
         <parameters>
           <parameter name="_object" type="GObject*"/>
         </parameters>
       </signal>
     </object>
-    <object name="VideoAggregator" cname="GstVideoAggregator" defaultconstructoraccess="protected" opaque="false" hidden="false" parent="GstAggregator">
-      <class_struct cname="GstVideoAggregatorClass">
+    <object name="VideoAggregator" cname="GstVideoAggregator" defaultconstructoraccess="protected" opaque="false" hidden="false" parent="GstAggregator" version="1.16">
+      <class_struct cname="GstVideoAggregatorClass" version="1.16">
         <field cname="parent_class" access="private" writeable="false" readable="false" is_callback="false" name="ParentClass" type="GstAggregatorClass">
           <warning>missing glib:type-name</warning>
         </field>
       </field>
       <field cname="_gst_reserved" access="private" writeable="false" readable="false" is_callback="false" name="_gstGstReserved" type="gpointer" array="true" array_len="20"/>
     </object>
-    <object name="VideoAggregatorConvertPad" cname="GstVideoAggregatorConvertPad" opaque="false" hidden="false" parent="GstVideoAggregatorPad">
-      <class_struct cname="GstVideoAggregatorConvertPadClass">
+    <object name="VideoAggregatorConvertPad" cname="GstVideoAggregatorConvertPad" opaque="false" hidden="false" parent="GstVideoAggregatorPad" version="1.16">
+      <class_struct cname="GstVideoAggregatorConvertPadClass" version="1.16">
         <field cname="parent_class" access="public" writeable="false" readable="true" is_callback="false" name="ParentClass" type="GstVideoAggregatorPadClass">
           <warning>missing glib:type-name</warning>
         </field>
       </field>
       <field cname="_gst_reserved" access="private" writeable="false" readable="false" is_callback="false" name="_gstGstReserved" type="gpointer" array="true" array_len="4"/>
     </object>
-    <object name="VideoAggregatorPad" cname="GstVideoAggregatorPad" opaque="false" hidden="false" parent="GstAggregatorPad">
-      <class_struct cname="GstVideoAggregatorPadClass">
+    <object name="VideoAggregatorPad" cname="GstVideoAggregatorPad" opaque="false" hidden="false" parent="GstAggregatorPad" version="1.16">
+      <class_struct cname="GstVideoAggregatorPadClass" version="1.16">
         <field cname="parent_class" access="public" writeable="false" readable="true" is_callback="false" name="ParentClass" type="GstAggregatorPadClass">
           <warning>missing glib:type-name</warning>
         </field>
           <parameter name="needs_alpha" type="gboolean"/>
         </parameters>
       </method>
+      <property name="MaxLastBufferRepeat" cname="max-last-buffer-repeat" type="guint64" readable="true" writeable="true" construct="false" construct-only="false"/>
       <property name="RepeatAfterEos" cname="repeat-after-eos" type="gboolean" readable="true" writeable="true" construct="false" construct-only="false"/>
       <property name="Zorder" cname="zorder" type="guint" readable="true" writeable="true" construct="false" construct-only="false"/>
       <field cname="parent" access="public" writeable="false" readable="true" is_callback="false" name="Parent" type="GstAggregatorPad*"/>
           <parameter name="use" type="gboolean"/>
         </parameters>
       </method>
+      <property name="Qos" cname="qos" type="gboolean" readable="true" writeable="true" construct="false" construct-only="false" version="1.18"/>
       <field cname="element" access="private" writeable="false" readable="false" is_callback="false" name="Element" type="GstElement*"/>
       <field cname="sinkpad" access="private" writeable="false" readable="false" is_callback="false" name="Sinkpad" type="GstPad*"/>
       <field cname="srcpad" access="private" writeable="false" readable="false" is_callback="false" name="Srcpad" type="GstPad*"/>
           </parameter>
         </parameters>
       </method>
+      <method name="FinishSubframe" cname="gst_video_encoder_finish_subframe" version="1.18">
+        <return-type type="GstFlowReturn"/>
+        <parameters>
+          <parameter name="frame" type="GstVideoCodecFrame*">
+            <warning>missing glib:type-name</warning>
+          </parameter>
+        </parameters>
+      </method>
       <method name="GetAllocator" cname="gst_video_encoder_get_allocator">
         <return-type type="void"/>
         <parameters>
           </parameter>
         </parameters>
       </method>
+      <method name="GetMinForceKeyUnitInterval" cname="gst_video_encoder_get_min_force_key_unit_interval" version="1.18">
+        <return-type type="guint64"/>
+        <parameters/>
+      </method>
       <method name="GetOldestFrame" cname="gst_video_encoder_get_oldest_frame">
         <return-type type="GstVideoCodecFrame*" owned="true">
           <warning>missing glib:type-name</warning>
           <parameter name="max_latency" type="guint64"/>
         </parameters>
       </method>
-      <method name="SetMinPts" cname="gst_video_encoder_set_min_pts">
+      <method name="SetMinForceKeyUnitInterval" cname="gst_video_encoder_set_min_force_key_unit_interval" version="1.18">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="interval" type="guint64"/>
+        </parameters>
+      </method>
+      <method name="SetMinPts" cname="gst_video_encoder_set_min_pts" version="1.6">
         <return-type type="void"/>
         <parameters>
           <parameter name="min_pts" type="guint64"/>
           <parameter name="enabled" type="gboolean"/>
         </parameters>
       </method>
+      <property name="MinForceKeyUnitInterval" cname="min-force-key-unit-interval" type="guint64" readable="true" writeable="true" construct="false" construct-only="false" version="1.18"/>
       <property name="Qos" cname="qos" type="gboolean" readable="true" writeable="true" construct="false" construct-only="false"/>
       <field cname="element" access="private" writeable="false" readable="false" is_callback="false" name="Element" type="GstElement*"/>
       <field cname="sinkpad" access="private" writeable="false" readable="false" is_callback="false" name="Sinkpad" type="GstPad*"/>
       </field>
       <field cname="_gst_reserved" access="private" writeable="false" readable="false" is_callback="false" name="_gstGstReserved" type="gpointer" array="true" array_len="4"/>
     </object>
+    <struct name="VideoAFDMeta" cname="GstVideoAFDMeta" opaque="false" hidden="false" version="1.18">
+      <field cname="meta" access="public" writeable="true" readable="true" is_callback="false" name="Meta" type="GstMeta">
+        <warning>missing glib:type-name</warning>
+      </field>
+      <field cname="field" access="public" writeable="true" readable="true" is_callback="false" name="Field" type="guint8"/>
+      <field cname="spec" access="public" writeable="true" readable="true" is_callback="false" name="Spec" type="GstVideoAFDSpec"/>
+      <field cname="afd" access="public" writeable="true" readable="true" is_callback="false" name="Afd" type="GstVideoAFDValue"/>
+      <method name="GetInfo" cname="gst_video_afd_meta_get_info" shared="true">
+        <return-type type="GstMetaInfo*">
+          <warning>missing glib:type-name</warning>
+        </return-type>
+      </method>
+    </struct>
     <struct name="VideoAffineTransformationMeta" cname="GstVideoAffineTransformationMeta" opaque="false" hidden="false" version="1.8">
       <field cname="meta" access="public" writeable="true" readable="true" is_callback="false" name="Meta" type="GstMeta">
         <warning>missing glib:type-name</warning>
       <method name="ApplyMatrix" cname="gst_video_affine_transformation_meta_apply_matrix" version="1.8">
         <return-type type="void"/>
         <parameters>
-          <parameter name="matrix" type="gfloat"/>
+          <parameter name="matrix" type="const gfloat*" array="true" array_len="16"/>
         </parameters>
       </method>
       <method name="GetInfo" cname="gst_video_affine_transformation_meta_get_info" shared="true">
       <field cname="data" access="public" writeable="true" readable="true" is_callback="false" name="Data" type="guint8" array="true" array_length_param_index="2"/>
       <field cname="_gst_reserved" access="private" writeable="false" readable="false" is_callback="false" name="_gstGstReserved" type="gpointer" array="true" array_len="4"/>
     </struct>
+    <struct name="VideoBarMeta" cname="GstVideoBarMeta" opaque="false" hidden="false" version="1.18">
+      <field cname="meta" access="public" writeable="true" readable="true" is_callback="false" name="Meta" type="GstMeta">
+        <warning>missing glib:type-name</warning>
+      </field>
+      <field cname="field" access="public" writeable="true" readable="true" is_callback="false" name="Field" type="guint8"/>
+      <field cname="is_letterbox" access="public" writeable="true" readable="true" is_callback="false" name="IsLetterbox" type="gboolean"/>
+      <field cname="bar_data1" access="public" writeable="true" readable="true" is_callback="false" name="BarData1" type="guint"/>
+      <field cname="bar_data2" access="public" writeable="true" readable="true" is_callback="false" name="BarData2" type="guint"/>
+      <method name="GetInfo" cname="gst_video_bar_meta_get_info" shared="true">
+        <return-type type="GstMetaInfo*">
+          <warning>missing glib:type-name</warning>
+        </return-type>
+      </method>
+    </struct>
     <struct name="VideoBufferPoolPrivate" cname="GstVideoBufferPoolPrivate" opaque="true" hidden="true"/>
     <struct name="VideoCaptionMeta" cname="GstVideoCaptionMeta" opaque="false" hidden="false" version="1.16">
       <field cname="meta" access="public" writeable="true" readable="true" is_callback="false" name="Meta" type="GstMeta">
         <struct name="ABI" cname="ABI" opaque="false" hidden="false">
           <field cname="ts" access="public" writeable="true" readable="true" is_callback="false" name="Ts" type="guint64"/>
           <field cname="ts2" access="public" writeable="true" readable="true" is_callback="false" name="Ts2" type="guint64"/>
+          <field cname="num_subframes" access="public" writeable="true" readable="true" is_callback="false" name="NumSubframes" type="guint"/>
         </struct>
         <field cname="padding" access="public" writeable="true" readable="true" is_callback="false" name="Padding" type="gpointer" array="true" array_len="20"/>
       </union>
         <parameters/>
       </method>
     </struct>
+    <struct name="VideoContentLightLevel" cname="GstVideoContentLightLevel" opaque="false" hidden="false" version="1.18">
+      <field cname="max_content_light_level" access="public" writeable="true" readable="true" is_callback="false" name="MaxContentLightLevel" type="guint16"/>
+      <field cname="max_frame_average_light_level" access="public" writeable="true" readable="true" is_callback="false" name="MaxFrameAverageLightLevel" type="guint16"/>
+      <field cname="_gst_reserved" access="private" writeable="false" readable="false" is_callback="false" name="_gstGstReserved" type="gpointer" array="true" array_len="4"/>
+      <method name="AddToCaps" cname="gst_video_content_light_level_add_to_caps" version="1.18">
+        <return-type type="gboolean"/>
+        <parameters>
+          <parameter name="caps" type="GstCaps*">
+            <warning>missing glib:type-name</warning>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="FromCaps" cname="gst_video_content_light_level_from_caps" version="1.18">
+        <return-type type="gboolean"/>
+        <parameters>
+          <parameter name="caps" type="GstCaps*">
+            <warning>missing glib:type-name</warning>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="FromString" cname="gst_video_content_light_level_from_string" version="1.18">
+        <return-type type="gboolean"/>
+        <parameters>
+          <parameter name="level" type="const-gchar*"/>
+        </parameters>
+      </method>
+      <method name="Init" cname="gst_video_content_light_level_init" version="1.18">
+        <return-type type="void"/>
+        <parameters/>
+      </method>
+      <method name="ToString" cname="gst_video_content_light_level_to_string" version="1.18">
+        <return-type type="gchar*" owned="true"/>
+        <parameters/>
+      </method>
+    </struct>
     <struct name="VideoConverter" cname="GstVideoConverter" opaque="true" hidden="false">
       <method name="Frame" cname="gst_video_converter_frame" version="1.6">
         <return-type type="void"/>
       <field cname="tile_ws" access="public" writeable="true" readable="true" is_callback="false" name="TileWs" type="guint"/>
       <field cname="tile_hs" access="public" writeable="true" readable="true" is_callback="false" name="TileHs" type="guint"/>
       <field cname="_gst_reserved" access="private" writeable="false" readable="false" is_callback="false" name="_gstGstReserved" type="gpointer" array="true" array_len="4"/>
+      <method name="Component" cname="gst_video_format_info_component" version="1.18">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="plane" type="guint"/>
+          <parameter name="components" type="gint*" owned="true" pass_as="out"/>
+        </parameters>
+      </method>
     </struct>
     <struct name="VideoFrame" cname="GstVideoFrame" opaque="false" hidden="false">
       <field cname="info" access="public" writeable="true" readable="true" is_callback="false" name="Info" type="GstVideoInfo">
           </parameter>
         </parameters>
       </method>
+      <method name="AlignFull" cname="gst_video_info_align_full" version="1.18">
+        <return-type type="gboolean"/>
+        <parameters>
+          <parameter name="align" type="GstVideoAlignment*">
+            <warning>missing glib:type-name</warning>
+          </parameter>
+          <parameter allow-none="1" name="plane_size" type="gsize*" owned="true" pass_as="out"/>
+        </parameters>
+      </method>
       <method name="Convert" cname="gst_video_info_convert">
         <return-type type="gboolean"/>
         <parameters>
         <parameters/>
       </method>
     </boxed>
+    <struct name="VideoMasteringDisplayInfo" cname="GstVideoMasteringDisplayInfo" opaque="false" hidden="false" version="1.18">
+      <field cname="display_primaries" access="public" writeable="true" readable="true" is_callback="false" name="DisplayPrimaries" type="GstVideoMasteringDisplayInfoCoordinates" array="true" array_len="3"/>
+      <field cname="white_point" access="public" writeable="true" readable="true" is_callback="false" name="WhitePoint" type="GstVideoMasteringDisplayInfoCoordinates">
+        <warning>missing glib:type-name</warning>
+      </field>
+      <field cname="max_display_mastering_luminance" access="public" writeable="true" readable="true" is_callback="false" name="MaxDisplayMasteringLuminance" type="guint32"/>
+      <field cname="min_display_mastering_luminance" access="public" writeable="true" readable="true" is_callback="false" name="MinDisplayMasteringLuminance" type="guint32"/>
+      <field cname="_gst_reserved" access="private" writeable="false" readable="false" is_callback="false" name="_gstGstReserved" type="gpointer" array="true" array_len="4"/>
+      <method name="AddToCaps" cname="gst_video_mastering_display_info_add_to_caps" version="1.18">
+        <return-type type="gboolean"/>
+        <parameters>
+          <parameter name="caps" type="GstCaps*">
+            <warning>missing glib:type-name</warning>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="FromCaps" cname="gst_video_mastering_display_info_from_caps" version="1.18">
+        <return-type type="gboolean"/>
+        <parameters>
+          <parameter name="caps" type="GstCaps*">
+            <warning>missing glib:type-name</warning>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="Init" cname="gst_video_mastering_display_info_init" version="1.18">
+        <return-type type="void"/>
+        <parameters/>
+      </method>
+      <method name="IsEqual" cname="gst_video_mastering_display_info_is_equal" version="1.18">
+        <return-type type="gboolean"/>
+        <parameters>
+          <parameter name="other" type="GstVideoMasteringDisplayInfo*">
+            <warning>missing glib:type-name</warning>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="ToString" cname="gst_video_mastering_display_info_to_string" version="1.18">
+        <return-type type="gchar*" owned="true"/>
+        <parameters/>
+      </method>
+      <method name="FromString" cname="gst_video_mastering_display_info_from_string" shared="true" version="1.18">
+        <return-type type="gboolean"/>
+        <parameters>
+          <parameter name="minfo" type="GstVideoMasteringDisplayInfo*" pass_as="out">
+            <warning>missing glib:type-name</warning>
+          </parameter>
+          <parameter name="mastering" type="const-gchar*"/>
+        </parameters>
+      </method>
+    </struct>
+    <struct name="VideoMasteringDisplayInfoCoordinates" cname="GstVideoMasteringDisplayInfoCoordinates" opaque="false" hidden="false" version="1.18">
+      <field cname="x" access="public" writeable="true" readable="true" is_callback="false" name="X" type="guint16"/>
+      <field cname="y" access="public" writeable="true" readable="true" is_callback="false" name="Y" type="guint16"/>
+    </struct>
     <struct name="VideoMeta" cname="GstVideoMeta" opaque="false" hidden="false">
       <field cname="meta" access="public" writeable="true" readable="true" is_callback="false" name="Meta" type="GstMeta">
         <warning>missing glib:type-name</warning>
       <field cname="stride" access="public" writeable="true" readable="true" is_callback="false" name="Stride" type="gint" array="true" array_len="4"/>
       <field cname="map" access="public" writeable="false" readable="true" is_callback="true" name="MapField" type="GstVideoMapFieldFunc"/>
       <field cname="unmap" access="public" writeable="false" readable="true" is_callback="true" name="UnmapField" type="GstVideoUnmapFieldFunc"/>
+      <field cname="alignment" access="public" writeable="true" readable="true" is_callback="false" name="Alignment" type="GstVideoAlignment">
+        <warning>missing glib:type-name</warning>
+      </field>
+      <method name="GetPlaneHeight" cname="gst_video_meta_get_plane_height" version="1.18">
+        <return-type type="gboolean"/>
+        <parameters>
+          <parameter name="plane_height" type="guint*" owned="true" pass_as="out"/>
+        </parameters>
+      </method>
+      <method name="GetPlaneSize" cname="gst_video_meta_get_plane_size" version="1.18">
+        <return-type type="gboolean"/>
+        <parameters>
+          <parameter name="plane_size" type="gsize*" owned="true" pass_as="out"/>
+        </parameters>
+      </method>
       <method name="Map" cname="gst_video_meta_map">
         <return-type type="gboolean"/>
         <parameters>
           <parameter name="flags" type="GstMapFlags"/>
         </parameters>
       </method>
+      <method name="SetAlignment" cname="gst_video_meta_set_alignment" version="1.18">
+        <return-type type="gboolean"/>
+        <parameters>
+          <parameter name="alignment" type="GstVideoAlignment">
+            <warning>missing glib:type-name</warning>
+          </parameter>
+        </parameters>
+      </method>
       <method name="Unmap" cname="gst_video_meta_unmap">
         <return-type type="gboolean"/>
         <parameters>
         <parameters>
           <parameter name="fps_n" type="guint"/>
           <parameter name="fps_d" type="guint"/>
-          <parameter name="latest_daily_jam" type="GDateTime*">
+          <parameter allow-none="1" name="latest_daily_jam" type="GDateTime*">
             <warning>missing glib:type-name</warning>
           </parameter>
           <parameter name="flags" type="GstVideoTimeCodeFlags"/>
       </method>
     </boxed>
     <object name="Global" cname="GstVideoGlobal" opaque="true">
+      <method name="BufferAddVideoAfdMeta" cname="gst_buffer_add_video_afd_meta" shared="true" version="1.18">
+        <return-type type="GstVideoAFDMeta*">
+          <warning>missing glib:type-name</warning>
+        </return-type>
+        <parameters>
+          <parameter name="buffer" type="GstBuffer*">
+            <warning>missing glib:type-name</warning>
+          </parameter>
+          <parameter name="field" type="guint8"/>
+          <parameter name="spec" type="GstVideoAFDSpec"/>
+          <parameter name="afd" type="GstVideoAFDValue"/>
+        </parameters>
+      </method>
       <method name="BufferAddVideoAffineTransformationMeta" cname="gst_buffer_add_video_affine_transformation_meta" shared="true" version="1.8">
         <return-type type="GstVideoAffineTransformationMeta*">
           <warning>missing glib:type-name</warning>
           </parameter>
         </parameters>
       </method>
+      <method name="BufferAddVideoBarMeta" cname="gst_buffer_add_video_bar_meta" shared="true" version="1.18">
+        <return-type type="GstVideoBarMeta*">
+          <warning>missing glib:type-name</warning>
+        </return-type>
+        <parameters>
+          <parameter name="buffer" type="GstBuffer*">
+            <warning>missing glib:type-name</warning>
+          </parameter>
+          <parameter name="field" type="guint8"/>
+          <parameter name="is_letterbox" type="gboolean"/>
+          <parameter name="bar_data1" type="guint"/>
+          <parameter name="bar_data2" type="guint"/>
+        </parameters>
+      </method>
       <method name="BufferAddVideoCaptionMeta" cname="gst_buffer_add_video_caption_meta" shared="true" version="1.16">
         <return-type type="GstVideoCaptionMeta*">
           <warning>missing glib:type-name</warning>
           <parameter allow-none="1" name="y" type="gdouble*" owned="true" pass_as="out"/>
         </parameters>
       </method>
+      <method name="NavigationEventParseMouseScrollEvent" cname="gst_navigation_event_parse_mouse_scroll_event" shared="true" version="1.18">
+        <return-type type="gboolean"/>
+        <parameters>
+          <parameter name="event" type="GstEvent*">
+            <warning>missing glib:type-name</warning>
+          </parameter>
+          <parameter allow-none="1" name="x" type="gdouble*" owned="true" pass_as="out"/>
+          <parameter allow-none="1" name="y" type="gdouble*" owned="true" pass_as="out"/>
+          <parameter allow-none="1" name="delta_x" type="gdouble*" owned="true" pass_as="out"/>
+          <parameter allow-none="1" name="delta_y" type="gdouble*" owned="true" pass_as="out"/>
+        </parameters>
+      </method>
       <method name="NavigationMessageGetType" cname="gst_navigation_message_get_type" shared="true">
         <return-type type="GstNavigationMessageType"/>
         <parameters>
           <parameter name="cmds" type="GstNavigationCommand*" array="true" array_length_param_index="1"/>
         </parameters>
       </method>
+      <method name="VideoAfdMetaApiGetType" cname="gst_video_afd_meta_api_get_type" shared="true">
+        <return-type type="GType"/>
+      </method>
+      <method name="VideoAfdMetaGetInfo" cname="gst_video_afd_meta_get_info" shared="true">
+        <return-type type="GstMetaInfo*">
+          <warning>missing glib:type-name</warning>
+        </return-type>
+      </method>
       <method name="VideoAffineTransformationMetaApiGetType" cname="gst_video_affine_transformation_meta_api_get_type" shared="true">
         <return-type type="GType"/>
       </method>
           <warning>missing glib:type-name</warning>
         </return-type>
       </method>
+      <method name="VideoBarMetaApiGetType" cname="gst_video_bar_meta_api_get_type" shared="true">
+        <return-type type="GType"/>
+      </method>
+      <method name="VideoBarMetaGetInfo" cname="gst_video_bar_meta_get_info" shared="true">
+        <return-type type="GstMetaInfo*">
+          <warning>missing glib:type-name</warning>
+        </return-type>
+      </method>
       <method name="VideoBlend" cname="gst_video_blend" shared="true">
         <return-type type="gboolean"/>
         <parameters>
           <parameter name="site" type="GstVideoChromaSite"/>
         </parameters>
       </method>
+      <method name="VideoColorMatrixFromIso" cname="gst_video_color_matrix_from_iso" shared="true" version="1.18">
+        <return-type type="GstVideoColorMatrix"/>
+        <parameters>
+          <parameter name="value" type="guint"/>
+        </parameters>
+      </method>
       <method name="VideoColorMatrixGetKrKb" cname="gst_video_color_matrix_get_Kr_Kb" shared="true" version="1.6">
         <return-type type="gboolean"/>
         <parameters>
           <parameter name="Kb" type="gdouble*" owned="true" pass_as="out"/>
         </parameters>
       </method>
+      <method name="VideoColorMatrixToIso" cname="gst_video_color_matrix_to_iso" shared="true" version="1.18">
+        <return-type type="guint"/>
+        <parameters>
+          <parameter name="matrix" type="GstVideoColorMatrix"/>
+        </parameters>
+      </method>
+      <method name="VideoColorPrimariesFromIso" cname="gst_video_color_primaries_from_iso" shared="true" version="1.18">
+        <return-type type="GstVideoColorPrimaries"/>
+        <parameters>
+          <parameter name="value" type="guint"/>
+        </parameters>
+      </method>
       <method name="VideoColorPrimariesGetInfo" cname="gst_video_color_primaries_get_info" shared="true" version="1.6">
         <return-type type="GstVideoColorPrimariesInfo*">
           <warning>missing glib:type-name</warning>
           <parameter name="primaries" type="GstVideoColorPrimaries"/>
         </parameters>
       </method>
+      <method name="VideoColorPrimariesToIso" cname="gst_video_color_primaries_to_iso" shared="true" version="1.18">
+        <return-type type="guint"/>
+        <parameters>
+          <parameter name="primaries" type="GstVideoColorPrimaries"/>
+        </parameters>
+      </method>
       <method name="VideoColorRangeOffsets" cname="gst_video_color_range_offsets" shared="true">
         <return-type type="void"/>
         <parameters>
           <parameter name="val" type="gdouble"/>
         </parameters>
       </method>
+      <method name="VideoColorTransferFromIso" cname="gst_video_color_transfer_from_iso" shared="true" version="1.18">
+        <return-type type="GstVideoTransferFunction"/>
+        <parameters>
+          <parameter name="value" type="guint"/>
+        </parameters>
+      </method>
+      <method name="VideoColorTransferToIso" cname="gst_video_color_transfer_to_iso" shared="true" version="1.18">
+        <return-type type="guint"/>
+        <parameters>
+          <parameter name="func" type="GstVideoTransferFunction"/>
+        </parameters>
+      </method>
       <method name="VideoConvertSample" cname="gst_video_convert_sample" shared="true">
         <return-type type="GstSample*" owned="true">
           <warning>missing glib:type-name</warning>
           <parameter name="format" type="GstVideoFormat"/>
         </parameters>
       </method>
+      <method name="VideoFormatsRaw" cname="gst_video_formats_raw" shared="true" version="1.18">
+        <return-type type="const GstVideoFormat*" array="true" array_length_param_index="0"/>
+        <parameters>
+          <parameter name="len" type="guint*" owned="true" pass_as="out"/>
+        </parameters>
+      </method>
       <method name="VideoGlTextureUploadMetaApiGetType" cname="gst_video_gl_texture_upload_meta_api_get_type" shared="true">
         <return-type type="GType"/>
       </method>
           <parameter name="mode" type="GstVideoInterlaceMode"/>
         </parameters>
       </method>
+      <method name="VideoMakeRawCaps" cname="gst_video_make_raw_caps" shared="true" version="1.18">
+        <return-type type="GstCaps*" owned="true">
+          <warning>missing glib:type-name</warning>
+        </return-type>
+        <parameters>
+          <parameter allow-none="1" name="formats" type="const GstVideoFormat*" array="true" array_length_param_index="1"/>
+          <parameter name="len" type="guint"/>
+        </parameters>
+      </method>
+      <method name="VideoMakeRawCapsWithFeatures" cname="gst_video_make_raw_caps_with_features" shared="true" version="1.18">
+        <return-type type="GstCaps*" owned="true">
+          <warning>missing glib:type-name</warning>
+        </return-type>
+        <parameters>
+          <parameter allow-none="1" name="formats" type="const GstVideoFormat*" array="true" array_length_param_index="1"/>
+          <parameter name="len" type="guint"/>
+          <parameter allow-none="1" name="features" type="GstCapsFeatures*" owned="true">
+            <warning>missing glib:type-name</warning>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="VideoMasteringDisplayInfoFromString" cname="gst_video_mastering_display_info_from_string" shared="true" version="1.18">
+        <return-type type="gboolean"/>
+        <parameters>
+          <parameter name="minfo" type="GstVideoMasteringDisplayInfo*" pass_as="out">
+            <warning>missing glib:type-name</warning>
+          </parameter>
+          <parameter name="mastering" type="const-gchar*"/>
+        </parameters>
+      </method>
       <method name="VideoMetaApiGetType" cname="gst_video_meta_api_get_type" shared="true">
         <return-type type="GType"/>
       </method>
           <warning>missing glib:type-name</warning>
         </return-type>
       </method>
-      <method name="VideoOverlayInstallProperties" cname="gst_video_overlay_install_properties" shared="true">
+      <method name="VideoOverlayInstallProperties" cname="gst_video_overlay_install_properties" shared="true" version="1.14">
         <return-type type="void"/>
         <parameters>
           <parameter name="oclass" type="GObjectClass*">
           <parameter name="last_prop_id" type="gint"/>
         </parameters>
       </method>
-      <method name="VideoOverlaySetProperty" cname="gst_video_overlay_set_property" shared="true">
+      <method name="VideoOverlaySetProperty" cname="gst_video_overlay_set_property" shared="true" version="1.14">
         <return-type type="gboolean"/>
         <parameters>
           <parameter name="_object" type="GObject*"/>
       <constant value="size" ctype="gchar*" gtype="gchar*" name="META_TAG_VIDEO_SIZE_STR" version="1.2"/>
       <constant value="video" ctype="gchar*" gtype="gchar*" name="META_TAG_VIDEO_STR" version="1.2"/>
       <constant value="bt2020" ctype="gchar*" gtype="gchar*" name="VIDEO_COLORIMETRY_BT2020"/>
+      <constant value="bt2020-10" ctype="gchar*" gtype="gchar*" name="VIDEO_COLORIMETRY_BT2020_10"/>
+      <constant value="bt2100-hlg" ctype="gchar*" gtype="gchar*" name="VIDEO_COLORIMETRY_BT2100_HLG"/>
+      <constant value="bt2100-pq" ctype="gchar*" gtype="gchar*" name="VIDEO_COLORIMETRY_BT2100_PQ"/>
       <constant value="bt601" ctype="gchar*" gtype="gchar*" name="VIDEO_COLORIMETRY_BT601"/>
       <constant value="bt709" ctype="gchar*" gtype="gchar*" name="VIDEO_COLORIMETRY_BT709"/>
       <constant value="smpte240m" ctype="gchar*" gtype="gchar*" name="VIDEO_COLORIMETRY_SMPTE240M"/>
       <constant value="src" ctype="gchar*" gtype="gchar*" name="VIDEO_DECODER_SRC_NAME"/>
       <constant value="sink" ctype="gchar*" gtype="gchar*" name="VIDEO_ENCODER_SINK_NAME"/>
       <constant value="src" ctype="gchar*" gtype="gchar*" name="VIDEO_ENCODER_SRC_NAME"/>
-      <constant value="{ I420, YV12, YUY2, UYVY, AYUV, VUYA, RGBx, BGRx, xRGB, xBGR, RGBA, BGRA, ARGB, ABGR, RGB, BGR, Y41B, Y42B, YVYU, Y444, v210, v216, Y210, Y410, NV12, NV21, GRAY8, GRAY16_BE, GRAY16_LE, v308, RGB16, BGR16, RGB15, BGR15, UYVP, A420, RGB8P, YUV9, YVU9, IYU1, ARGB64, AYUV64, r210, I420_10BE, I420_10LE, I422_10BE, I422_10LE, Y444_10BE, Y444_10LE, GBR, GBR_10BE, GBR_10LE, NV16, NV24, NV12_64Z32, A420_10BE, A420_10LE, A422_10BE, A422_10LE, A444_10BE, A444_10LE, NV61, P010_10BE, P010_10LE, IYU2, VYUY, GBRA, GBRA_10BE, GBRA_10LE, BGR10A2_LE, GBR_12BE, GBR_12LE, GBRA_12BE, GBRA_12LE, I420_12BE, I420_12LE, I422_12BE, I422_12LE, Y444_12BE, Y444_12LE, GRAY10_LE32, NV12_10LE32, NV16_10LE32, NV12_10LE40 }" ctype="gchar*" gtype="gchar*" name="VIDEO_FORMATS_ALL"/>
+      <constant value="{ AYUV64, ARGB64, GBRA_12BE, GBRA_12LE, Y412_BE, Y412_LE, A444_10BE, GBRA_10BE, A444_10LE, GBRA_10LE, A422_10BE, A422_10LE, A420_10BE, A420_10LE, Y410, RGB10A2_LE, BGR10A2_LE, GBRA, ABGR, VUYA, BGRA, AYUV, ARGB, RGBA, A420, Y444_16BE, Y444_16LE, v216, P016_BE, P016_LE, Y444_12BE, GBR_12BE, Y444_12LE, GBR_12LE, I422_12BE, I422_12LE, Y212_BE, Y212_LE, I420_12BE, I420_12LE, P012_BE, P012_LE, Y444_10BE, GBR_10BE, Y444_10LE, GBR_10LE, r210, I422_10BE, I422_10LE, NV16_10LE32, Y210, v210, UYVP, I420_10BE, I420_10LE, P010_10BE, P010_10LE, NV12_10LE32, NV12_10LE40, Y444, GBR, NV24, xBGR, BGRx, xRGB, RGBx, BGR, IYU2, v308, RGB, Y42B, NV61, NV16, VYUY, UYVY, YVYU, YUY2, I420, YV12, NV21, NV12, NV12_64Z32, Y41B, IYU1, YVU9, YUV9, RGB16, BGR16, RGB15, BGR15, RGB8P, GRAY16_BE, GRAY16_LE, GRAY10_LE32, GRAY8 }" ctype="gchar*" gtype="gchar*" name="VIDEO_FORMATS_ALL"/>
       <constant value="(fraction) [ 0, max ]" ctype="gchar*" gtype="gchar*" name="VIDEO_FPS_RANGE"/>
       <constant value="4" ctype="gint" gtype="gint" name="VIDEO_MAX_COMPONENTS"/>
       <constant value="4" ctype="gint" gtype="gint" name="VIDEO_MAX_PLANES"/>
-      <constant value="{ BGRx, RGBx, xRGB, xBGR, RGBA, BGRA, ARGB, ABGR, RGB, BGR, I420, YV12, AYUV, YUY2, UYVY, v308, Y41B, Y42B, Y444, NV12, NV21, A420, YUV9, YVU9, IYU1, GRAY8 }" ctype="gchar*" gtype="gchar*" name="VIDEO_OVERLAY_COMPOSITION_BLEND_FORMATS" version="1.2"/>
       <constant value="GstVideoResampler.cubic-b" ctype="gchar*" gtype="gchar*" name="VIDEO_RESAMPLER_OPT_CUBIC_B"/>
       <constant value="GstVideoResampler.cubic-c" ctype="gchar*" gtype="gchar*" name="VIDEO_RESAMPLER_OPT_CUBIC_C"/>
       <constant value="GstVideoResampler.envelope" ctype="gchar*" gtype="gchar*" name="VIDEO_RESAMPLER_OPT_ENVELOPE"/>
     </object>
   </namespace>
   <namespace name="GstWebRTC" library="gstwebrtc-1.0">
-    <enum name="WebRTCBundlePolicy" cname="GstWebRTCBundlePolicy" type="enum" gtype="gst_webrtc_bundle_policy_get_type">
+    <enum name="WebRTCBundlePolicy" cname="GstWebRTCBundlePolicy" type="enum" gtype="gst_webrtc_bundle_policy_get_type" version="1.16">
       <member cname="GST_WEBRTC_BUNDLE_POLICY_NONE" name="None" value="0"/>
       <member cname="GST_WEBRTC_BUNDLE_POLICY_BALANCED" name="Balanced" value="1"/>
       <member cname="GST_WEBRTC_BUNDLE_POLICY_MAX_COMPAT" name="MaxCompat" value="2"/>
       <member cname="GST_WEBRTC_DTLS_TRANSPORT_STATE_CONNECTING" name="Connecting" value="3"/>
       <member cname="GST_WEBRTC_DTLS_TRANSPORT_STATE_CONNECTED" name="Connected" value="4"/>
     </enum>
-    <enum name="WebRTCDataChannelState" cname="GstWebRTCDataChannelState" type="enum" gtype="gst_webrtc_data_channel_state_get_type">
+    <enum name="WebRTCDataChannelState" cname="GstWebRTCDataChannelState" type="enum" gtype="gst_webrtc_data_channel_state_get_type" version="1.16">
       <member cname="GST_WEBRTC_DATA_CHANNEL_STATE_NEW" name="New" value="0"/>
       <member cname="GST_WEBRTC_DATA_CHANNEL_STATE_CONNECTING" name="Connecting" value="1"/>
       <member cname="GST_WEBRTC_DATA_CHANNEL_STATE_OPEN" name="Open" value="2"/>
       <member cname="GST_WEBRTC_DATA_CHANNEL_STATE_CLOSING" name="Closing" value="3"/>
       <member cname="GST_WEBRTC_DATA_CHANNEL_STATE_CLOSED" name="Closed" value="4"/>
     </enum>
-    <enum name="WebRTCFECType" cname="GstWebRTCFECType" type="enum" gtype="gst_webrtc_fec_type_get_type">
+    <enum name="WebRTCFECType" cname="GstWebRTCFECType" type="enum" gtype="gst_webrtc_fec_type_get_type" version="1.14.1">
       <member cname="GST_WEBRTC_FEC_TYPE_NONE" name="None" value="0"/>
       <member cname="GST_WEBRTC_FEC_TYPE_ULP_RED" name="UlpRed" value="1"/>
     </enum>
       <member cname="GST_WEBRTC_ICE_ROLE_CONTROLLED" name="Controlled" value="0"/>
       <member cname="GST_WEBRTC_ICE_ROLE_CONTROLLING" name="Controlling" value="1"/>
     </enum>
-    <enum name="WebRTCICETransportPolicy" cname="GstWebRTCICETransportPolicy" type="enum" gtype="gst_webrtc_ice_transport_policy_get_type">
+    <enum name="WebRTCICETransportPolicy" cname="GstWebRTCICETransportPolicy" type="enum" gtype="gst_webrtc_ice_transport_policy_get_type" version="1.16">
       <member cname="GST_WEBRTC_ICE_TRANSPORT_POLICY_ALL" name="All" value="0"/>
       <member cname="GST_WEBRTC_ICE_TRANSPORT_POLICY_RELAY" name="Relay" value="1"/>
     </enum>
       <member cname="GST_WEBRTC_PEER_CONNECTION_STATE_FAILED" name="Failed" value="4"/>
       <member cname="GST_WEBRTC_PEER_CONNECTION_STATE_CLOSED" name="Closed" value="5"/>
     </enum>
-    <enum name="WebRTCPriorityType" cname="GstWebRTCPriorityType" type="enum" gtype="gst_webrtc_priority_type_get_type">
+    <enum name="WebRTCPriorityType" cname="GstWebRTCPriorityType" type="enum" gtype="gst_webrtc_priority_type_get_type" version="1.16">
       <member cname="GST_WEBRTC_PRIORITY_TYPE_VERY_LOW" name="VeryLow" value="1"/>
       <member cname="GST_WEBRTC_PRIORITY_TYPE_LOW" name="Low" value="2"/>
       <member cname="GST_WEBRTC_PRIORITY_TYPE_MEDIUM" name="Medium" value="3"/>
       <member cname="GST_WEBRTC_RTP_TRANSCEIVER_DIRECTION_RECVONLY" name="Recvonly" value="3"/>
       <member cname="GST_WEBRTC_RTP_TRANSCEIVER_DIRECTION_SENDRECV" name="Sendrecv" value="4"/>
     </enum>
-    <enum name="WebRTCSCTPTransportState" cname="GstWebRTCSCTPTransportState" type="enum" gtype="gst_webrtc_sctp_transport_state_get_type">
+    <enum name="WebRTCSCTPTransportState" cname="GstWebRTCSCTPTransportState" type="enum" gtype="gst_webrtc_sctp_transport_state_get_type" version="1.16">
       <member cname="GST_WEBRTC_SCTP_TRANSPORT_STATE_NEW" name="New" value="0"/>
       <member cname="GST_WEBRTC_SCTP_TRANSPORT_STATE_CONNECTING" name="Connecting" value="1"/>
       <member cname="GST_WEBRTC_SCTP_TRANSPORT_STATE_CONNECTED" name="Connected" value="2"/>
       <field cname="dtlssrtpdec" access="public" writeable="false" readable="true" is_callback="false" name="Dtlssrtpdec" type="GstElement*"/>
       <field cname="_padding" access="public" writeable="false" readable="true" is_callback="false" name="_Padding" type="gpointer" array="true" array_len="4"/>
     </object>
+    <object name="WebRTCDataChannel" cname="GstWebRTCDataChannel" defaultconstructoraccess="protected" opaque="false" hidden="false" parent="GObject" version="1.18">
+      <class_struct cname="GstWebRTCDataChannelClass" version="1.18">
+        <field cname="parent_class" access="public" writeable="false" readable="true" is_callback="false" name="ParentClass" type="GObjectClass">
+          <warning>missing glib:type-name</warning>
+        </field>
+        <method signal_vm="send_data"/>
+        <method signal_vm="send_string"/>
+        <method signal_vm="close"/>
+        <field cname="_padding" access="public" writeable="false" readable="true" is_callback="false" name="_Padding" type="gpointer" array="true" array_len="4"/>
+      </class_struct>
+      <method name="GetType" cname="gst_webrtc_data_channel_get_type" shared="true">
+        <return-type type="GType"/>
+      </method>
+      <method name="Close" cname="gst_webrtc_data_channel_close">
+        <return-type type="void"/>
+        <parameters/>
+      </method>
+      <method name="OnBufferedAmountLow" cname="gst_webrtc_data_channel_on_buffered_amount_low">
+        <return-type type="void"/>
+        <parameters/>
+      </method>
+      <method name="OnClose" cname="gst_webrtc_data_channel_on_close">
+        <return-type type="void"/>
+        <parameters/>
+      </method>
+      <method name="OnError" cname="gst_webrtc_data_channel_on_error">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="error" type="GError*" owned="true">
+            <warning>missing glib:type-name</warning>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="OnMessageData" cname="gst_webrtc_data_channel_on_message_data">
+        <return-type type="void"/>
+        <parameters>
+          <parameter allow-none="1" name="data" type="GBytes*">
+            <warning>missing glib:type-name</warning>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="OnMessageString" cname="gst_webrtc_data_channel_on_message_string">
+        <return-type type="void"/>
+        <parameters>
+          <parameter allow-none="1" name="str" type="const-gchar*"/>
+        </parameters>
+      </method>
+      <method name="OnOpen" cname="gst_webrtc_data_channel_on_open">
+        <return-type type="void"/>
+        <parameters/>
+      </method>
+      <method name="SendData" cname="gst_webrtc_data_channel_send_data">
+        <return-type type="void"/>
+        <parameters>
+          <parameter allow-none="1" name="data" type="GBytes*">
+            <warning>missing glib:type-name</warning>
+          </parameter>
+        </parameters>
+      </method>
+      <method name="SendString" cname="gst_webrtc_data_channel_send_string">
+        <return-type type="void"/>
+        <parameters>
+          <parameter allow-none="1" name="str" type="const-gchar*"/>
+        </parameters>
+      </method>
+      <property name="BufferedAmount" cname="buffered-amount" type="guint64" readable="true" writeable="false" construct="false" construct-only="false"/>
+      <property name="BufferedAmountLowThreshold" cname="buffered-amount-low-threshold" type="guint64" readable="true" writeable="true" construct="false" construct-only="false"/>
+      <property name="Id" cname="id" type="gint" readable="true" writeable="true" construct="false" construct-only="true"/>
+      <property name="Label" cname="label" type="gchar*" readable="true" writeable="true" construct="false" construct-only="true"/>
+      <property name="MaxPacketLifetime" cname="max-packet-lifetime" type="gint" readable="true" writeable="true" construct="false" construct-only="true"/>
+      <property name="MaxRetransmits" cname="max-retransmits" type="gint" readable="true" writeable="true" construct="false" construct-only="true"/>
+      <property name="Negotiated" cname="negotiated" type="gboolean" readable="true" writeable="true" construct="false" construct-only="true"/>
+      <property name="Ordered" cname="ordered" type="gboolean" readable="true" writeable="true" construct="false" construct-only="true"/>
+      <property name="Priority" cname="priority" type="GstWebRTCPriorityType" readable="true" writeable="true" construct="false" construct-only="true"/>
+      <property name="Protocol" cname="protocol" type="gchar*" readable="true" writeable="true" construct="false" construct-only="true"/>
+      <property name="ReadyState" cname="ready-state" type="GstWebRTCDataChannelState" readable="true" writeable="false" construct="false" construct-only="false"/>
+      <field cname="parent" access="public" writeable="false" readable="true" is_callback="false" name="Parent" type="GObject*"/>
+      <field cname="lock" access="public" writeable="false" readable="true" is_callback="false" name="Lock" type="GMutex*"/>
+      <field cname="label" access="public" writeable="false" readable="true" is_callback="false" name="LabelField" type="gchar*"/>
+      <field cname="ordered" access="public" writeable="false" readable="true" is_callback="false" name="OrderedField" type="gboolean"/>
+      <field cname="max_packet_lifetime" access="public" writeable="false" readable="true" is_callback="false" name="MaxPacketLifetimeField" type="guint"/>
+      <field cname="max_retransmits" access="public" writeable="false" readable="true" is_callback="false" name="MaxRetransmitsField" type="guint"/>
+      <field cname="protocol" access="public" writeable="false" readable="true" is_callback="false" name="ProtocolField" type="gchar*"/>
+      <field cname="negotiated" access="public" writeable="false" readable="true" is_callback="false" name="NegotiatedField" type="gboolean"/>
+      <field cname="id" access="public" writeable="false" readable="true" is_callback="false" name="IdField" type="gint"/>
+      <field cname="priority" access="public" writeable="false" readable="true" is_callback="false" name="PriorityField" type="GstWebRTCPriorityType"/>
+      <field cname="ready_state" access="public" writeable="false" readable="true" is_callback="false" name="ReadyStateField" type="GstWebRTCDataChannelState"/>
+      <field cname="buffered_amount" access="public" writeable="false" readable="true" is_callback="false" name="BufferedAmountField" type="guint64"/>
+      <field cname="buffered_amount_low_threshold" access="public" writeable="false" readable="true" is_callback="false" name="BufferedAmountLowThresholdField" type="guint64"/>
+      <field cname="_padding" access="public" writeable="false" readable="true" is_callback="false" name="_Padding" type="gpointer" array="true" array_len="4"/>
+      <signal name="CloseEvent" cname="close" when="last" field_name="close">
+        <return-type type="void"/>
+        <parameters/>
+        <warning>Signal renamed because of existing method with same name</warning>
+      </signal>
+      <signal name="OnBufferedAmountLowEvent" cname="on-buffered-amount-low" when="last">
+        <return-type type="void"/>
+        <parameters/>
+        <warning>Signal renamed because of existing method with same name</warning>
+      </signal>
+      <signal name="OnCloseEvent" cname="on-close" when="last">
+        <return-type type="void"/>
+        <parameters/>
+        <warning>Signal renamed because of existing method with same name</warning>
+      </signal>
+      <signal name="OnErrorEvent" cname="on-error" when="last">
+        <return-type type="void"/>
+        <parameters>
+          <parameter name="error" type="GError*">
+            <warning>missing glib:type-name</warning>
+          </parameter>
+        </parameters>
+        <warning>Signal renamed because of existing method with same name</warning>
+      </signal>
+      <signal name="OnMessageDataEvent" cname="on-message-data" when="last">
+        <return-type type="void"/>
+        <parameters>
+          <parameter allow-none="1" name="data" type="GBytes*">
+            <warning>missing glib:type-name</warning>
+          </parameter>
+        </parameters>
+        <warning>Signal renamed because of existing method with same name</warning>
+      </signal>
+      <signal name="OnMessageStringEvent" cname="on-message-string" when="last">
+        <return-type type="void"/>
+        <parameters>
+          <parameter allow-none="1" name="data" type="const-gchar*"/>
+        </parameters>
+        <warning>Signal renamed because of existing method with same name</warning>
+      </signal>
+      <signal name="OnOpenEvent" cname="on-open" when="last">
+        <return-type type="void"/>
+        <parameters/>
+        <warning>Signal renamed because of existing method with same name</warning>
+      </signal>
+      <signal name="SendDataEvent" cname="send-data" when="last" field_name="send_data">
+        <return-type type="void"/>
+        <parameters>
+          <parameter allow-none="1" name="data" type="GBytes*">
+            <warning>missing glib:type-name</warning>
+          </parameter>
+        </parameters>
+        <warning>Signal renamed because of existing method with same name</warning>
+      </signal>
+      <signal name="SendStringEvent" cname="send-string" when="last" field_name="send_string">
+        <return-type type="void"/>
+        <parameters>
+          <parameter allow-none="1" name="data" type="const-gchar*"/>
+        </parameters>
+        <warning>Signal renamed because of existing method with same name</warning>
+      </signal>
+    </object>
     <object name="WebRTCICETransport" cname="GstWebRTCICETransport" defaultconstructoraccess="protected" opaque="false" hidden="false" parent="GstObject">
       <class_struct cname="GstWebRTCICETransportClass">
         <field cname="parent_class" access="public" writeable="false" readable="true" is_callback="false" name="ParentClass" type="GstObjectClass">
       <method name="GetType" cname="gst_webrtc_rtp_transceiver_get_type" shared="true">
         <return-type type="GType"/>
       </method>
+      <property name="Direction" cname="direction" type="GstWebRTCRTPTransceiverDirection" readable="true" writeable="true" construct="false" construct-only="false" version="1.18"/>
       <property name="Mlineindex" cname="mlineindex" type="guint" readable="true" writeable="true" construct="false" construct-only="true"/>
       <property name="Receiver" cname="receiver" type="GstWebRTCRTPReceiver*" readable="true" writeable="true" construct="false" construct-only="true"/>
       <property name="Sender" cname="sender" type="GstWebRTCRTPSender*" readable="true" writeable="true" construct="false" construct-only="true"/>
       <field cname="stopped" access="public" writeable="false" readable="true" is_callback="false" name="Stopped" type="gboolean"/>
       <field cname="sender" access="public" writeable="false" readable="true" is_callback="false" name="SenderField" type="GstWebRTCRTPSender*"/>
       <field cname="receiver" access="public" writeable="false" readable="true" is_callback="false" name="ReceiverField" type="GstWebRTCRTPReceiver*"/>
-      <field cname="direction" access="public" writeable="false" readable="true" is_callback="false" name="Direction" type="GstWebRTCRTPTransceiverDirection"/>
+      <field cname="direction" access="public" writeable="false" readable="true" is_callback="false" name="DirectionField" type="GstWebRTCRTPTransceiverDirection"/>
       <field cname="current_direction" access="public" writeable="false" readable="true" is_callback="false" name="CurrentDirection" type="GstWebRTCRTPTransceiverDirection"/>
       <field cname="codec_preferences" access="public" writeable="false" readable="true" is_callback="false" name="CodecPreferences" type="GstCaps*">
         <warning>missing glib:type-name</warning>
index 73fa0a1..5f85b7f 100644 (file)
@@ -98,6 +98,8 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
        <attr path="/api/namespace//boxed[field[@type='GstMiniObject']]" name="parent">GstMiniObject</attr>
        <attr path="/api/namespace//boxed/field[@type='GstMiniObject']" name="hidden">true</attr>
        <attr path="/api/namespace/boxed[@cname='GstStructure']" name="opaque">true</attr>
+       <attr path="/api/namespace/boxed[@cname='GstStructure']/method[@cname='gst_structure_take']" name="hidden">true</attr>
+       <attr path="/api/namespace/object[@cname='GstGlobal']/method[@cname='gst_structure_take']" name="hidden">true</attr>
 
        <attr path="/api/namespace/struct[@cname='GstTypeFind']" name="opaque">true</attr>
        <attr path="/api/namespace/boxed[@cname='GstIterator']" name="opaque">true</attr>
@@ -293,6 +295,9 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
 
        <!-- Introspection fails -->
        <attr path="//object[@cname='GstBufferPool']/field[@cname='flushing']" name="type">gboolean</attr>
+
+       <!-- GWeakRef is unknown at this point.. we can make it a gpointer for now.  -->
+       <attr path="//object[@cname='GstProxyControlBinding']/field[@cname='ref_object']" name="type">gpointer</attr>
        <!-- FIXME Reactivate GstMpegTS when stablized
                <remove-attr path="//boxed[@cname='GstMpegtsSection']//method//return-type[@type='GPtrArray']" name="array"/>
                <remove-attr path="//boxed[@cname='GstMpegtsSection']//method//return-type[@type='GPtrArray']" name="null_term_array"/>
@@ -303,7 +308,6 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
        -->
        <attr path="//method[@cname='gst_mini_object_replace']" name="hidden">true</attr>
        <attr path="//method[@cname='gst_mini_object_take']" name="hidden">true</attr>
-       <attr path="//struct[@cname='GstVideoGLTextureUploadMeta']" name="nohash">true</attr>
        <attr path="//struct[@cname='GstVideoGLTextureUploadMeta']" name="noequals">true</attr>
        <attr path="//object[@cname='GstPad']//union" name="hidden">true</attr>
        <attr path="//struct[@cname='GstControlPoint']" name="hidden">true</attr>
@@ -370,6 +374,9 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
        <attr path="/api/namespace/struct[@cname='GstVideoResampler']/field[@cname='n_taps']" name="type">guint32*</attr>
        <attr path="/api/namespace/struct[@cname='GstVideoResampler']/field[@cname='taps']" name="type">gdouble*</attr>
 
+       <!-- Webrtc fixes -->
+       <attr path="/api/namespace/object[@cname='GstWebRTCDataChannel']/signal[@cname='on-close']" name="hidden">true</attr>
+
        <!-- No way to correctly generate these without the element type -->
        <attr path="//boxed[@cname='GstMpegtsDescriptor']//method[parameters/parameter[@type='GArray***']]" name="hidden">true</attr>
 
@@ -395,4 +402,8 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
        <attr path="//*[@cname='_padding']" name="padding">true</attr>
 
        <attr path="/api/namespace/boxed[@cname='GstSDPMessage']" name="opaque">true</attr>
+
+
+       <!-- New APIs in 1.18 that need need some fixing -->
+       <attr path="/api/namespace//method[@cname='gst_rtp_buffer_get_extension_onebyte_header_from_bytes']" name="hidden">true</attr>
 </metadata>